From 0b2c4118a0894f722318ae4d861baddb8f66fd4d Mon Sep 17 00:00:00 2001
From: Marius Burkard <m.burkard@pixcept.de>
Date: Wed, 20 Apr 2016 04:38:54 -0400
Subject: [PATCH] Merge branch 'stable-3.1'

---
 interface/web/vm/lib/lang/cz_openvz_ip.lng                              |    1 
 interface/web/dns/lib/lang/cz_dns_ds.lng                                |   30 
 interface/web/login/lib/lang/en.lng                                     |    2 
 interface/web/admin/lib/lang/cz_language_edit.lng                       |    3 
 interface/web/sites/lib/lang/cz_database_quota_stats_list.lng           |   11 
 interface/web/admin/lib/lang/cz_firewall.lng                            |    1 
 interface/web/mail/lib/lang/cz_mail_backup_list.lng                     |   15 
 interface/web/help/lib/lang/cz_faq_manage_questions_list.lng            |    3 
 interface/web/admin/lib/lang/cz_language_add.lng                        |    5 
 interface/web/vm/lib/lang/cz_openvz_ip_list.lng                         |    1 
 interface/web/admin/lib/lang/cz.lng                                     |    7 
 interface/web/mail/lib/lang/cz_mail_whitelist.lng                       |    1 
 interface/web/sites/lib/lang/cz_web_directive_snippets.lng              |    3 
 interface/web/help/lib/lang/cz_faq_form.lng                             |    1 
 interface/web/admin/lib/lang/cz_language_import.lng                     |    3 
 interface/web/help/lib/lang/cz.lng                                      |    3 
 interface/web/login/lib/lang/de.lng                                     |    2 
 interface/web/mailuser/lib/lang/cz_index.lng                            |    1 
 interface/web/monitor/lib/lang/cz_syslog_list.lng                       |    1 
 interface/web/mail/lib/lang/cz_mail_relay_recipient_list.lng            |    3 
 interface/web/dashboard/lib/lang/cz_dashlet_modules.lng                 |    1 
 interface/web/mail/lib/lang/cz_mail_forward_list.lng                    |    3 
 interface/web/vm/lib/lang/cz_openvz_ostemplate_list.lng                 |    1 
 interface/web/admin/lib/lang/cz_software_repo.lng                       |    1 
 interface/web/mail/lib/lang/cz_mail_domain_catchall_list.lng            |    3 
 interface/web/client/lib/lang/cz_domain_list.lng                        |    3 
 interface/web/dns/lib/lang/cz_dns_slave_admin_list.lng                  |    3 
 interface/web/admin/lib/lang/cz_software_package_install.lng            |    1 
 interface/web/sites/templates/web_vhost_domain_advanced.htm             |    8 
 interface/web/dns/lib/lang/cz_dns_slave_list.lng                        |    3 
 interface/web/sites/lib/lang/en_web_domain.lng                          |    4 
 interface/web/mail/lib/lang/cz_xmpp_domain_list.lng                     |   13 
 interface/web/client/lib/lang/cz_client_message_template_list.lng       |    1 
 interface/web/login/lib/lang/ar.lng                                     |    2 
 interface/web/client/lib/lang/cz_domain.lng                             |    1 
 interface/web/admin/lib/lang/cz_software_repo_list.lng                  |    1 
 interface/web/dns/lib/lang/cz_dns_template.lng                          |    1 
 interface/web/dns/lib/lang/cz.lng                                       |    3 
 interface/web/mail/lib/lang/cz_mail_mailinglist.lng                     |    1 
 interface/web/mail/lib/lang/cz_xmpp_domain_admin_list.lng               |   15 
 interface/web/sites/lib/lang/cz_web_domain_list.lng                     |    3 
 install/tpl/debian_postfix.conf.master                                  |    9 
 interface/web/admin/lib/lang/cz_server_ip_map.lng                       |    3 
 interface/web/sites/lib/lang/cz_web_childdomain.lng                     |   21 
 interface/web/client/lib/lang/cz_client_template.lng                    |   19 
 install/tpl/opensuse_postfix.conf.master                                |    9 
 interface/web/dashboard/lib/lang/cz_dashlet_customer.lng                |    3 
 interface/web/dns/lib/lang/cz_dns_cname.lng                             |   11 
 interface/web/monitor/lib/lang/cz.lng                                   |    9 
 interface/web/mail/lib/lang/cz_spamfilter_users.lng                     |    1 
 interface/web/sites/lib/lang/cz_web_folder_list.lng                     |    3 
 interface/web/sites/lib/lang/cz_backup_stats_list.lng                   |   11 
 interface/web/dns/lib/lang/cz_dns_aaaa.lng                              |    7 
 interface/web/help/lib/lang/cz_help_faq_list.lng                        |    1 
 interface/web/mail/lib/lang/cz_mail_domain_admin_list.lng               |    3 
 interface/web/mail/lib/lang/cz_xmpp_user_list.lng                       |   15 
 interface/web/mail/templates/mail_forward_edit.htm                      |    2 
 interface/web/client/lib/lang/cz_client_message_template.lng            |    1 
 interface/web/admin/lib/lang/cz_server_list.lng                         |    3 
 interface/web/admin/lib/lang/cz_language_list.lng                       |    1 
 interface/web/sites/lib/lang/cz_web_childdomain_list.lng                |    7 
 interface/web/dns/lib/lang/cz_dns_soa_list.lng                          |    5 
 interface/web/dashboard/lib/lang/cz_dashlet_invoices.lng                |    3 
 interface/web/client/lib/lang/cz_clients_list.lng                       |    3 
 interface/web/sites/lib/lang/cz_web_vhost_domain_list.lng               |    3 
 interface/web/login/lib/lang/cz_login_as.lng                            |    1 
 install/install.php                                                     |    7 
 interface/web/admin/lib/lang/cz_server_php_list.lng                     |    3 
 interface/web/dns/lib/lang/cz_dns_dkim.lng                              |   17 
 interface/web/sites/lib/lang/cz_user_quota_stats_list.lng               |    1 
 interface/web/tools/lib/lang/cz_interface.lng                           |    1 
 interface/web/client/lib/lang/cz.lng                                    |    7 
 interface/web/mail/lib/lang/cz_mail_whitelist_list.lng                  |    3 
 interface/web/vm/lib/lang/cz_openvz_vm.lng                              |    5 
 interface/web/dns/lib/lang/cz_dns_import.lng                            |    1 
 interface/web/mail/lib/lang/cz_mail_domain_list.lng                     |    3 
 interface/web/mail/lib/lang/cz_mail_get.lng                             |    1 
 interface/web/admin/lib/lang/cz_directive_snippets_list.lng             |    1 
 interface/web/strengthmeter/lib/lang/cz_strengthmeter.lng               |    1 
 interface/web/sites/lib/lang/cz_web_vhost_subdomain.lng                 |   19 
 interface/web/dashboard/lib/lang/cz_dashlet_invoice_client_settings.lng |    3 
 interface/web/dns/lib/lang/cz_dns_mx.lng                                |   11 
 install/tpl/pureftpd_mysql.conf.master                                  |   20 
 interface/web/mail/lib/lang/cz_mail_get_list.lng                        |    3 
 interface/web/dashboard/lib/lang/cz_dashlet_shop.lng                    |    1 
 interface/web/help/lib/lang/cz_support_message.lng                      |    1 
 interface/web/mail/lib/lang/cz_mail_transport.lng                       |    1 
 interface/web/admin/lib/lang/cz_firewall_list.lng                       |    3 
 interface/web/dns/form/dns_template.tform.php                           |    2 
 interface/web/dns/lib/lang/cz_dns_tlsa.lng                              |   29 
 interface/web/admin/lib/lang/cz_software_package_list.lng               |    1 
 interface/web/sites/lib/lang/cz_web_folder_user_list.lng                |    3 
 install/sql/ispconfig3.sql                                              |   24 
 interface/web/mail/lib/lang/cz_mail_alias_list.lng                      |    5 
 interface/web/login/lib/lang/sk.lng                                     |    2 
 interface/web/dns/dns_wizard.php                                        |    4 
 interface/web/sites/lib/lang/cz_web_subdomain_list.lng                  |    3 
 interface/web/dns/lib/lang/cz_dns_alias.lng                             |   11 
 interface/web/dashboard/lib/lang/cz_dashlet_databasequota.lng           |   11 
 interface/web/sites/lib/lang/cz_database_admin_list.lng                 |    5 
 interface/web/client/lib/lang/cz_client_template_list.lng               |    1 
 interface/web/client/lib/lang/cz_resellers_list.lng                     |    3 
 interface/web/vm/lib/lang/cz_openvz_template.lng                        |    3 
 interface/web/mail/lib/lang/cz_mail_content_filter_list.lng             |    3 
 interface/web/mailuser/templates/mail_user_password_edit.htm            |   14 
 interface/web/mail/lib/lang/cz_xmpp_user.lng                            |   21 
 interface/web/tools/templates/user_settings.htm                         |    6 
 interface/web/mailuser/lib/lang/de_mail_user_filter.lng                 |    1 
 interface/web/mail/lib/lang/cz_mail_mailinglist_list.lng                |    1 
 interface/web/sites/lib/lang/en_web_subdomain.lng                       |    4 
 interface/web/mail/lib/lang/cz_mail_forward.lng                         |    7 
 interface/web/sites/lib/lang/cz_shell_user_list.lng                     |    3 
 interface/web/mail/lib/lang/cz_mail_blacklist_list.lng                  |    3 
 interface/web/mail/lib/lang/cz_spamfilter_config_list.lng               |    1 
 interface/web/mailuser/templates/mail_user_filter_list.htm              |    2 
 interface/web/dashboard/lib/lang/cz_dashlet_limits.lng                  |    9 
 interface/web/mail/lib/lang/cz_spamfilter_policy_list.lng               |    3 
 interface/web/mail/lib/lang/cz_mail_blacklist.lng                       |    1 
 interface/web/vm/lib/lang/cz_openvz_template_list.lng                   |    1 
 interface/lib/classes/tform_tpl_generator.inc.php                       |    4 
 interface/web/admin/lib/lang/cz_tpl_default_admin.lng                   |    1 
 interface/web/dns/lib/lang/cz_dns_a.lng                                 |    7 
 interface/web/admin/lib/lang/cz_server_php.lng                          |    1 
 interface/web/sites/lib/lang/cz_web_vhost_domain_admin_list.lng         |   17 
 interface/web/tools/lib/lang/cz_usersettings.lng                        |    1 
 interface/web/mailuser/lib/lang/cz.lng                                  |    1 
 interface/web/help/lib/lang/cz_faq_sections_form.lng                    |    1 
 interface/web/dns/lib/lang/cz_dns_txt.lng                               |    1 
 interface/web/themes/default/assets/stylesheets/fonts.css               |    2 
 interface/web/admin/lib/lang/cz_server_ip.lng                           |    1 
 interface/web/mailuser/templates/mail_user_autoresponder_edit.htm       |   13 
 interface/web/client/client_edit.php                                    |    2 
 interface/web/themes/default/assets/stylesheets/fonts.min.css           |    2 
 interface/web/index.php                                                 |    1 
 interface/web/login/lib/lang/nl.lng                                     |    2 
 interface/web/admin/lib/lang/cz_system_config.lng                       |   41 
 interface/web/sites/shell_user_edit.php                                 |   23 
 interface/web/sites/lib/lang/cz_ftp_sites_stats_list.lng                |   19 
 server/plugins-available/maildrop_plugin.inc.php                        |    2 
 interface/web/vm/lib/lang/cz_openvz_vm_list.lng                         |    3 
 interface/web/admin/lib/lang/cz_language_complete.lng                   |    3 
 server/lib/classes/cron.d/550-bind_dnssec.inc.php                       |   57 -
 interface/web/tools/lib/lang/cz.lng                                     |    1 
 interface/web/admin/lib/lang/cz_directive_snippets.lng                  |    1 
 interface/web/themes/default/templates/main.tpl.htm                     |    2 
 interface/web/sites/lib/lang/cz.lng                                     |    3 
 interface/web/sites/lib/lang/cz_web_domain_admin_list.lng               |    3 
 interface/web/client/lib/lang/cz_client_del.lng                         |    1 
 interface/web/mailuser/lib/lang/en_mail_user_filter.lng                 |    1 
 interface/web/login/lib/lang/ro.lng                                     |    2 
 interface/web/mail/lib/lang/cz_mail_spamfilter_list.lng                 |    3 
 install/tpl/gentoo_postfix.conf.master                                  |    9 
 interface/web/sites/lib/lang/cz_shell_user.lng                          |    1 
 interface/web/admin/lib/lang/cz_groups_list.lng                         |    3 
 interface/web/sites/lib/lang/cz_ftp_user_list.lng                       |    3 
 server/plugins-available/shelluser_base_plugin.inc.php                  |   34 
 interface/web/admin/lib/lang/cz_server_ip_list.lng                      |    3 
 interface/web/sites/lib/lang/cz_web_aliasdomain.lng                     |   21 
 interface/web/sites/lib/lang/cz_web_vhost_domain.lng                    |   36 
 interface/web/login/lib/lang/id.lng                                     |    2 
 interface/web/mail/lib/lang/cz_spamfilter_whitelist.lng                 |    1 
 interface/web/mailuser/lib/lang/cz_mail_user_autoresponder.lng          |    1 
 interface/web/sites/lib/lang/cz_webdav_user_list.lng                    |    3 
 interface/web/dns/lib/lang/de_dns_wizard.lng                            |    1 
 interface/web/sites/lib/lang/cz_web_subdomain.lng                       |    9 
 interface/web/mail/lib/lang/cz_mail_user_list.lng                       |    7 
 interface/web/sites/lib/lang/en_web_vhost_domain.lng                    |    4 
 interface/web/mail/lib/lang/cz_mail_user.lng                            |   25 
 interface/web/tools/lib/lang/cz_import_ispconfig.lng                    |    1 
 interface/lib/classes/validate_domain.inc.php                           |    7 
 interface/web/client/lib/lang/cz_reseller.lng                           |   23 
 interface/web/mail/lib/lang/cz_mail_user_filter_list.lng                |    3 
 interface/web/mail/lib/lang/cz_spamfilter_users_list.lng                |    3 
 interface/web/tools/lib/lang/cz_resync.lng                              |   39 
 interface/web/login/lib/lang/bg.lng                                     |    2 
 interface/web/sites/lib/lang/cz_database_user_admin_list.lng            |    3 
 interface/web/dns/templates/dns_wizard.htm                              |   12 
 interface/web/mail/lib/lang/cz_mail_user_stats_list.lng                 |    1 
 interface/web/dns/lib/lang/cz_dns_hinfo.lng                             |    5 
 interface/web/client/lib/lang/cz_client_circle_list.lng                 |    3 
 interface/web/admin/lib/lang/cz_server_ip_map_list.lng                  |    3 
 interface/web/client/lib/lang/cz_client_message.lng                     |    1 
 interface/web/mail/lib/lang/cz_mail_aliasdomain_list.lng                |    5 
 interface/web/client/lib/lang/cz_client_circle.lng                      |    1 
 interface/web/sites/lib/lang/cz_aps.lng                                 |    1 
 interface/web/mailuser/lib/lang/cz_mail_user_filter_list.lng            |    3 
 interface/web/login/lib/lang/pl.lng                                     |    2 
 interface/lib/classes/tform_base.inc.php                                |   12 
 interface/web/admin/lib/lang/cz_iptables_list.lng                       |    1 
 interface/web/mail/lib/lang/cz.lng                                      |    7 
 interface/web/sites/lib/lang/cz_web_domain.lng                          |   19 
 interface/web/admin/lib/lang/cz_remote_user_list.lng                    |    3 
 interface/web/mail/lib/lang/cz_spamfilter_config.lng                    |    3 
 interface/web/tools/lib/lang/cz_import_vpopmail.lng                     |    4 
 interface/web/mail/lib/lang/cz_spamfilter_blacklist.lng                 |    1 
 interface/web/tools/import_vpopmail.php                                 |    4 
 interface/web/dashboard/lib/lang/cz_dashlet_quota.lng                   |    1 
 interface/web/mailuser/templates/mail_user_spamfilter_edit.htm          |    4 
 interface/web/mail/lib/lang/cz_mail_content_filter.lng                  |    1 
 interface/web/sites/lib/lang/cz_database_user.lng                       |    1 
 interface/web/sites/lib/lang/cz_database_user_list.lng                  |    3 
 interface/web/vm/lib/lang/cz_openvz_action.lng                          |    1 
 interface/web/help/lib/lang/cz_support_message_list.lng                 |    1 
 interface/web/dns/lib/lang/cz_dns_soa_admin_list.lng                    |    5 
 interface/web/dns/lib/lang/cz_dns_dmarc.lng                             |   73 +-
 interface/web/sites/lib/lang/cz_database.lng                            |    7 
 interface/web/mail/lib/lang/cz_mail_domain_catchall.lng                 |    1 
 interface/web/mail/lib/lang/cz_mail_transport_list.lng                  |    5 
 interface/web/mailuser/list/mail_user_filter.list.php                   |    2 
 interface/web/admin/lib/lang/cz_users.lng                               |    1 
 interface/web/dns/lib/lang/cz_dns_ns.lng                                |    3 
 server/lib/classes/cron.d/400-openvz.inc.php                            |    2 
 interface/web/admin/lib/lang/cz_language_export.lng                     |    3 
 interface/web/mail/lib/lang/cz_mail_relay_recipient.lng                 |    1 
 interface/web/admin/lib/lang/cz_server_config.lng                       |   33 
 interface/web/mailuser/templates/mail_user_filter_edit.htm              |   12 
 interface/web/login/lib/lang/hr.lng                                     |    2 
 interface/web/mailuser/templates/index.htm                              |   10 
 interface/web/sites/lib/lang/cz_ftp_user.lng                            |    1 
 interface/web/dashboard/lib/lang/cz.lng                                 |    1 
 interface/web/dashboard/lib/lang/cz_dashlet_mailquota.lng               |    1 
 interface/web/sites/lib/lang/cz_web_backup_list.lng                     |    9 
 interface/web/sites/lib/lang/cz_web_folder_user.lng                     |    1 
 interface/web/mailuser/lib/lang/cz_mail_user_password.lng               |    1 
 interface/web/mail/lib/lang/cz_mail_domain.lng                          |    1 
 interface/web/login/index.php                                           |    8 
 interface/web/dns/lib/lang/cz_dns_rp.lng                                |    5 
 interface/web/admin/lib/lang/cz_software_update_list.lng                |    1 
 interface/web/sites/lib/lang/cz_web_vhost_subdomain_list.lng            |    3 
 interface/web/mail/lib/lang/cz_spamfilter_whitelist_list.lng            |    3 
 install/lib/installer_base.lib.php                                      |    9 
 interface/web/dashboard/lib/lang/cz_dashlet_products.lng                |    3 
 interface/web/dns/lib/lang/cz_dns_loc.lng                               |   29 
 install/sql/incremental/upd_dev_collection.sql                          |   27 
 interface/web/mailuser/lib/lang/cz_mail_user_filter.lng                 |    1 
 interface/web/sites/lib/lang/cz_web_sites_stats_list.lng                |    1 
 interface/web/themes/default/assets/javascripts/ispconfig.min.js        |    2 
 interface/web/admin/lib/lang/cz_groups.lng                              |    1 
 interface/web/sites/lib/lang/cz_web_aliasdomain_list.lng                |    5 
 interface/web/themes/default/assets/javascripts/ispconfig.js            |    4 
 server/plugins-available/bind_plugin.inc.php                            |   10 
 interface/web/mailuser/templates/mail_user_cc_edit.htm                  |    2 
 interface/web/sites/form/web_vhost_domain.tform.php                     |   24 
 interface/web/admin/lib/lang/cz_users_list.lng                          |    3 
 interface/web/client/lib/lang/cz_client.lng                             |   23 
 interface/web/client/client_del.php                                     |    2 
 interface/web/tools/lib/lang/cz_tpl_default.lng                         |    3 
 interface/web/sites/lib/lang/cz_cron_list.lng                           |    3 
 interface/web/dns/lib/lang/cz_dns_a_list.lng                            |    3 
 interface/web/sites/lib/lang/cz_cron.lng                                |    1 
 interface/web/dns/lib/lang/cz_dns_template_list.lng                     |    3 
 interface/web/admin/lib/lang/cz_iptables.lng                            |    1 
 interface/web/dns/lib/lang/cz_dns_spf.lng                               |   41 
 interface/lib/lang/cz.lng                                               |    7 
 interface/web/dns/lib/lang/cz_dns_ptr.lng                               |    1 
 interface/web/mail/lib/lang/cz_spamfilter_blacklist_list.lng            |    3 
 interface/web/admin/lib/lang/cz_server_config_list.lng                  |    1 
 interface/lib/classes/remote.d/openvz.inc.php                           |    2 
 interface/web/mail/lib/lang/cz_mail_spamfilter.lng                      |    1 
 interface/web/mailuser/lib/lang/cz_mail_user_spamfilter.lng             |    1 
 interface/web/sites/lib/lang/en_web_vhost_subdomain.lng                 |    4 
 interface/web/mail/lib/lang/cz_spamfilter_policy.lng                    |    1 
 interface/web/sites/lib/lang/cz_web_folder.lng                          |    1 
 interface/web/tools/lib/lang/cz_index.lng                               |    1 
 interface/web/login/lib/lang/se.lng                                     |    2 
 interface/web/sites/templates/web_vhost_domain_stats.htm                |    2 
 interface/web/dns/lib/lang/cz_dns_srv.lng                               |    5 
 interface/web/sites/lib/lang/cz_webdav_user.lng                         |    1 
 interface/web/vm/lib/lang/cz.lng                                        |    5 
 interface/web/mail/lib/lang/cz_mail_alias.lng                           |    5 
 interface/web/help/lib/lang/cz_help_faq_sections_list.lng               |    3 
 interface/web/dns/lib/lang/cz_dns_slave.lng                             |    1 
 interface/lib/classes/listform.inc.php                                  |    2 
 interface/web/mail/lib/lang/cz_mail_user_filter.lng                     |    3 
 interface/web/sites/lib/lang/cz_aps_update_packagelist.lng              |    1 
 interface/web/js/select2/select2.min.js                                 |    2 
 interface/web/vm/lib/lang/cz_openvz_ostemplate.lng                      |    1 
 interface/web/admin/lib/lang/cz_package_install.lng                     |    1 
 interface/web/admin/lib/lang/cz_software_package.lng                    |    1 
 interface/web/mail/lib/lang/cz_user_quota_stats_list.lng                |    1 
 interface/web/dns/lib/lang/cz_dns_soa.lng                               |    3 
 interface/web/sites/lib/lang/cz_aps_instances_list.lng                  |    1 
 interface/web/mail/lib/lang/cz_mail_aliasdomain.lng                     |    1 
 interface/web/dns/lib/lang/en_dns_wizard.lng                            |    1 
 interface/web/mail/templates/mail_alias_edit.htm                        |    2 
 interface/web/monitor/lib/lang/cz_datalog_list.lng                      |    1 
 install/tpl/fedora_postfix.conf.master                                  |    9 
 interface/web/admin/lib/lang/cz_server.lng                              |    1 
 interface/web/mail/lib/lang/cz_backup_stats_list.lng                    |   11 
 server/plugins-available/maildeliver_plugin.inc.php                     |    2 
 interface/web/mail/templates/mail_user_mailbox_edit.htm                 |    2 
 interface/web/admin/lib/lang/cz_remote_user.lng                         |    1 
 interface/web/sites/lib/lang/cz_aps_packages_list.lng                   |    1 
 interface/web/mail/lib/lang/cz_xmpp_domain.lng                          |   81 +-
 interface/web/mailuser/lib/lang/cz_mail_user_cc.lng                     |    3 
 interface/web/sites/lib/lang/cz_database_list.lng                       |    5 
 interface/web/admin/lib/lang/cz_remote_action.lng                       |    1 
 interface/web/dns/lib/lang/cz_dns_wizard.lng                            |    1 
 298 files changed, 1,042 insertions(+), 732 deletions(-)

diff --git a/install/install.php b/install/install.php
index b17336d..374edd7 100644
--- a/install/install.php
+++ b/install/install.php
@@ -328,17 +328,20 @@
 	} else swriteln('[ERROR] Postfix not installed - skipping Mail');
 
 	//* Check for DNS
-	if(!$conf['powerdns']['installed'] && !$conf['bind']['installed'] && !$conf['mydns']['installed']) {
-		$conf['powerdns']['installed'] = $inst->force_configure_app('PowerDNS', false);
+//	if(!$conf['powerdns']['installed'] && !$conf['bind']['installed'] && !$conf['mydns']['installed']) {
+	if(!$conf['bind']['installed'] && !$conf['mydns']['installed']) {
+//		$conf['powerdns']['installed'] = $inst->force_configure_app('PowerDNS', false);
 		$conf['bind']['installed'] = $inst->force_configure_app('BIND', false);
 		$conf['mydns']['installed'] = $inst->force_configure_app('MyDNS', false);
 	}
 	//* Configure PowerDNS
+/*
 	if($conf['powerdns']['installed']) {
 		swriteln('Configuring PowerDNS');
 		$inst->configure_powerdns();
 		$conf['services']['dns'] = true;
 	}
+*/
 	//* Configure Bind
 	if($conf['bind']['installed']) {
 		swriteln('Configuring BIND');
diff --git a/install/lib/installer_base.lib.php b/install/lib/installer_base.lib.php
index 7621df3..5794355 100644
--- a/install/lib/installer_base.lib.php
+++ b/install/lib/installer_base.lib.php
@@ -658,6 +658,15 @@
 				if(!$this->dbmaster->query($query, $value['db'] . '.mail_backup', $value['user'], $host)) {
 					$this->warning('Unable to set rights of user in master database: '.$value['db']."\n Query: ".$query."\n Error: ".$this->dbmaster->errorMessage);
 				}
+				
+				$query = "GRANT SELECT, UPDATE(`dnssec_initialized`, `dnssec_info`, `dnssec_last_signed`) ON ?? TO ?@?";
+				if ($verbose){
+					echo $query ."\n";
+				}
+				if(!$this->dbmaster->query($query, $value['db'] . '.dns_soa', $value['user'], $host)) {
+					$this->warning('Unable to set rights of user in master database: '.$value['db']."\n Query: ".$query."\n Error: ".$this->dbmaster->errorMessage);
+				}
+
 			}
 
 		}
diff --git a/install/sql/incremental/upd_dev_collection.sql b/install/sql/incremental/upd_dev_collection.sql
index ed23e82..7469fd8 100644
--- a/install/sql/incremental/upd_dev_collection.sql
+++ b/install/sql/incremental/upd_dev_collection.sql
@@ -25,7 +25,7 @@
 
 ALTER TABLE  `client` ADD  `contact_firstname` VARCHAR( 64 ) NOT NULL DEFAULT '' AFTER  `gender`;
 
-UPDATE `dns_template` SET `fields` = 'DOMAIN,IP,NS1,NS2,EMAIL,DKIM' WHERE `dns_template`.`template_id` =1;
+UPDATE `dns_template` SET `fields` = 'DOMAIN,IP,NS1,NS2,EMAIL,DKIM,DNSSEC' WHERE `dns_template`.`template_id` =1;
 UPDATE `dns_template` SET `template` = '[ZONE]
 origin={DOMAIN}.
 ns={NS1}.
@@ -225,4 +225,29 @@
 
 ALTER TABLE `client` ADD COLUMN `limit_database_user` int(11) NOT NULL DEFAULT '-1' after limit_database;
 ALTER TABLE `client_template` ADD COLUMN `limit_database_user` int(11) NOT NULL DEFAULT '-1' after limit_database;
+ALTER TABLE `client` CHANGE `customer_no_template` `customer_no_template` VARCHAR(255) NULL DEFAULT 'R[CLIENTID]C[CUSTOMER_NO]';
 	
+ALTER TABLE `client` CHANGE `added_date` `added_date` DATE NULL DEFAULT NULL;
+ALTER TABLE `ftp_user` CHANGE `expires` `expires` DATETIME NULL DEFAULT NULL;
+ALTER TABLE `mail_user` CHANGE `autoresponder_start_date` `autoresponder_start_date` DATETIME NULL DEFAULT NULL;
+ALTER TABLE `mail_user` CHANGE `autoresponder_end_date` `autoresponder_end_date` DATETIME NULL DEFAULT NULL;
+ALTER TABLE `openvz_traffic` CHANGE `traffic_date` `traffic_date` DATE NULL DEFAULT NULL;
+ALTER TABLE `openvz_vm` CHANGE `active_until_date` `active_until_date` DATE NULL DEFAULT NULL;
+ALTER TABLE `sys_session` CHANGE `date_created` `date_created` DATETIME NULL DEFAULT NULL;
+ALTER TABLE `sys_session` CHANGE `last_updated` `last_updated` DATETIME NULL DEFAULT NULL;
+ALTER TABLE `web_domain` CHANGE `added_date` `added_date` DATE NULL DEFAULT NULL;
+ALTER TABLE `web_traffic` CHANGE `traffic_date` `traffic_date` DATE NULL DEFAULT NULL;
+
+UPDATE `client` SET `added_date` = NULL WHERE `added_date` = '0000-00-00';
+UPDATE `ftp_user` SET `expires` = NULL WHERE `expires` = '0000-00-00 00:00:00';
+UPDATE `mail_user` SET `autoresponder_start_date` = NULL WHERE `autoresponder_start_date` = '0000-00-00 00:00:00';
+UPDATE `mail_user` SET `autoresponder_end_date` = NULL WHERE `autoresponder_end_date` = '0000-00-00 00:00:00';
+UPDATE `openvz_traffic` SET `traffic_date` = NULL WHERE `traffic_date` = '0000-00-00';
+UPDATE `openvz_vm` SET `active_until_date` = NULL WHERE `active_until_date` = '0000-00-00';
+UPDATE `sys_session` SET `date_created` = NULL WHERE `date_created` = '0000-00-00 00:00:00';
+UPDATE `sys_session` SET `last_updated` = NULL WHERE `last_updated` = '0000-00-00 00:00:00';
+UPDATE `web_domain` SET `added_date` = NULL WHERE `added_date` = '0000-00-00';
+UPDATE `web_traffic` SET `traffic_date` = NULL WHERE `traffic_date` = '0000-00-00';
+ALTER TABLE `web_domain` ADD `http_port` INT NOT NULL DEFAULT '80' , ADD `https_port` INT NOT NULL DEFAULT '443' ;
+
+
diff --git a/install/sql/ispconfig3.sql b/install/sql/ispconfig3.sql
index 0c9b893..17b08b6 100644
--- a/install/sql/ispconfig3.sql
+++ b/install/sql/ispconfig3.sql
@@ -255,10 +255,10 @@
   `tmp_data` mediumblob,
   `id_rsa` varchar(2000) NOT NULL DEFAULT '',
   `ssh_rsa` varchar(600) NOT NULL DEFAULT '',
-  `customer_no_template` varchar(255) DEFAULT 'C[CUSTOMER_NO]',
+  `customer_no_template` varchar(255) DEFAULT 'R[CLIENTID]C[CUSTOMER_NO]',
   `customer_no_start` int(11) NOT NULL DEFAULT '1',
   `customer_no_counter` int(11) NOT NULL DEFAULT '0',
-  `added_date` date NOT NULL DEFAULT '0000-00-00',
+  `added_date` date NULL DEFAULT NULL,
   `added_by` varchar(255) DEFAULT NULL,
   `validation_status` enum('accept','review','reject') NOT NULL DEFAULT 'accept',
   `risk_score` int(10) unsigned NOT NULL DEFAULT '0',
@@ -638,7 +638,7 @@
   `dl_ratio` int(11) NOT NULL default '-1',
   `ul_bandwidth` int(11) NOT NULL default '-1',
   `dl_bandwidth` int(11) NOT NULL default '-1',
-  `expires` datetime NOT NULL DEFAULT '0000-00-00 00:00:00',
+  `expires` datetime NULL DEFAULT NULL,
   PRIMARY KEY  (`ftp_user_id`),
   KEY `active` (`active`),
   KEY `server_id` (`server_id`),
@@ -962,8 +962,8 @@
   `sender_cc` varchar(255) NOT NULL default '',
   `homedir` varchar(255) NOT NULL default '',
   `autoresponder` enum('n','y') NOT NULL default 'n',
-  `autoresponder_start_date` datetime NOT NULL default '0000-00-00 00:00:00',
-  `autoresponder_end_date` datetime NOT NULL default '0000-00-00 00:00:00',
+  `autoresponder_start_date` datetime NULL default NULL,
+  `autoresponder_end_date` datetime NULL default NULL,
   `autoresponder_subject` varchar(255) NOT NULL default 'Out of office reply',
   `autoresponder_text` mediumtext NULL,
   `move_junk` enum('n','y') NOT NULL default 'n',
@@ -1151,7 +1151,7 @@
 
 CREATE TABLE IF NOT EXISTS `openvz_traffic` (
   `veid` int(11) NOT NULL DEFAULT '0',
-  `traffic_date` date NOT NULL DEFAULT '0000-00-00',
+  `traffic_date` date NULL DEFAULT NULL,
   `traffic_bytes` bigint(32) unsigned NOT NULL DEFAULT '0',
   PRIMARY KEY (`veid`,`traffic_date`)
 ) ENGINE=MyISAM DEFAULT CHARSET=utf8;
@@ -1184,7 +1184,7 @@
   `start_boot` varchar(255) NOT NULL DEFAULT 'y',
   `bootorder` int(11) NOT NULL DEFAULT '1',
   `active` varchar(255) NOT NULL DEFAULT 'y',
-  `active_until_date` date NOT NULL DEFAULT '0000-00-00',
+  `active_until_date` date NULL DEFAULT NULL,
   `description` text,
   `diskspace` int(11) NOT NULL DEFAULT '0',
   `traffic` int(11) NOT NULL DEFAULT '-1',
@@ -1739,8 +1739,8 @@
 
 CREATE TABLE `sys_session` (
   `session_id` varchar(64) NOT NULL DEFAULT '',
-  `date_created` datetime NOT NULL DEFAULT '0000-00-00 00:00:00',
-  `last_updated` datetime NOT NULL DEFAULT '0000-00-00 00:00:00',
+  `date_created` datetime NULL DEFAULT NULL,
+  `last_updated` datetime NULL DEFAULT NULL,
   `permanent` enum('n','y') NOT NULL DEFAULT 'n',
   `session_data` longtext,
   PRIMARY KEY (`session_id`),
@@ -1972,7 +1972,7 @@
   `enable_spdy` ENUM('y','n') NULL DEFAULT 'n',
   `last_quota_notification` date NULL default NULL,
   `rewrite_rules` mediumtext,
-  `added_date` date NOT NULL DEFAULT '0000-00-00',
+  `added_date` date NULL DEFAULT NULL,
   `added_by` varchar(255) DEFAULT NULL,
   `directive_snippets_id` int(11) unsigned NOT NULL default '0',
   `enable_pagespeed` ENUM('y','n') NOT NULL DEFAULT 'n',
@@ -2041,7 +2041,7 @@
 
 CREATE TABLE `web_traffic` (
   `hostname` varchar(255) NOT NULL DEFAULT '',
-  `traffic_date` date NOT NULL DEFAULT '0000-00-00',
+  `traffic_date` date NULL DEFAULT NULL,
   `traffic_bytes` bigint(32) unsigned NOT NULL default '0',
   PRIMARY KEY  (`hostname`,`traffic_date`)
 ) ENGINE=MyISAM DEFAULT CHARSET=utf8 ;
@@ -2397,7 +2397,7 @@
 -- Dumping data for table `dns_template`
 -- 
 
-INSERT INTO `dns_template` (`template_id`, `sys_userid`, `sys_groupid`, `sys_perm_user`, `sys_perm_group`, `sys_perm_other`, `name`, `fields`, `template`, `visible`) VALUES (1, 1, 1, 'riud', 'riud', '', 'Default', 'DOMAIN,IP,NS1,NS2,EMAIL,DKIM', '[ZONE]\norigin={DOMAIN}.\nns={NS1}.\nmbox={EMAIL}.\nrefresh=7200\nretry=540\nexpire=604800\nminimum=3600\nttl=3600\n\n[DNS_RECORDS]\nA|{DOMAIN}.|{IP}|0|3600\nA|www|{IP}|0|3600\nA|mail|{IP}|0|3600\nNS|{DOMAIN}.|{NS1}.|0|3600\nNS|{DOMAIN}.|{NS2}.|0|3600\nMX|{DOMAIN}.|mail.{DOMAIN}.|10|3600\nTXT|{DOMAIN}.|v=spf1 mx a ~all|0|3600', 'y');
+INSERT INTO `dns_template` (`template_id`, `sys_userid`, `sys_groupid`, `sys_perm_user`, `sys_perm_group`, `sys_perm_other`, `name`, `fields`, `template`, `visible`) VALUES (1, 1, 1, 'riud', 'riud', '', 'Default', 'DOMAIN,IP,NS1,NS2,EMAIL,DKIM,DNSSEC', '[ZONE]\norigin={DOMAIN}.\nns={NS1}.\nmbox={EMAIL}.\nrefresh=7200\nretry=540\nexpire=604800\nminimum=3600\nttl=3600\n\n[DNS_RECORDS]\nA|{DOMAIN}.|{IP}|0|3600\nA|www|{IP}|0|3600\nA|mail|{IP}|0|3600\nNS|{DOMAIN}.|{NS1}.|0|3600\nNS|{DOMAIN}.|{NS2}.|0|3600\nMX|{DOMAIN}.|mail.{DOMAIN}.|10|3600\nTXT|{DOMAIN}.|v=spf1 mx a ~all|0|3600', 'y');
 
 
 -- --------------------------------------------------------
diff --git a/install/tpl/debian_postfix.conf.master b/install/tpl/debian_postfix.conf.master
index c518250..30aa483 100644
--- a/install/tpl/debian_postfix.conf.master
+++ b/install/tpl/debian_postfix.conf.master
@@ -25,8 +25,8 @@
 smtpd_sender_login_maps = proxy:mysql:{config_dir}/mysql-virtual_sender_login_maps.cf
 proxy_read_maps = $local_recipient_maps $mydestination $virtual_alias_maps $virtual_alias_domains $sender_bcc_maps $virtual_mailbox_maps $virtual_mailbox_domains $relay_recipient_maps $relay_domains $canonical_maps $sender_canonical_maps $recipient_canonical_maps $relocated_maps $transport_maps $mynetworks $smtpd_sender_login_maps
 smtpd_helo_required = yes
-smtpd_helo_restrictions = reject_invalid_helo_hostname, permit_mynetworks, check_helo_access regexp:{config_dir}/helo_access, permit_sasl_authenticated, reject_non_fqdn_helo_hostname, check_helo_access regexp:{config_dir}/blacklist_helo, warn_if_reject reject_unknown_helo_hostname, permit
-smtpd_sender_restrictions = check_sender_access mysql:{config_dir}/mysql-virtual_sender.cf regexp:{config_dir}/tag_as_originating.re{reject_slm}, permit_mynetworks, check_sender_access regexp:{config_dir}/tag_as_foreign.re
+smtpd_helo_restrictions = permit_sasl_authenticated, permit_mynetworks, check_helo_access regexp:{config_dir}/helo_access, reject_invalid_hostname, reject_non_fqdn_hostname, check_helo_access regexp:{config_dir}/blacklist_helo
+smtpd_sender_restrictions = check_sender_access regexp:{config_dir}/tag_as_originating.re {reject_slm}, permit_mynetworks, check_sender_access mysql:{config_dir}/mysql-virtual_sender.cf, check_sender_access regexp:{config_dir}/tag_as_foreign.re
 smtpd_client_restrictions = check_client_access mysql:{config_dir}/mysql-virtual_client.cf
 smtpd_client_message_rate_limit = 100
 maildrop_destination_concurrency_limit = 1
@@ -43,8 +43,3 @@
 smtp_tls_protocols = !SSLv2,!SSLv3
 smtpd_tls_exclude_ciphers = RC4, aNULL
 smtp_tls_exclude_ciphers = RC4, aNULL
-strict_rfc821_envelopes = yes
-disable_vrfy_command = yes
-allow_percent_hack = no
-swap_bangpath = no
-smtpd_reject_unlisted_sender = yes
diff --git a/install/tpl/fedora_postfix.conf.master b/install/tpl/fedora_postfix.conf.master
index cedaa14..974277f 100644
--- a/install/tpl/fedora_postfix.conf.master
+++ b/install/tpl/fedora_postfix.conf.master
@@ -22,8 +22,8 @@
 smtpd_sender_login_maps = proxy:mysql:{config_dir}/mysql-virtual_sender_login_maps.cf
 proxy_read_maps = $local_recipient_maps $mydestination $virtual_alias_maps $virtual_alias_domains $sender_bcc_maps $virtual_mailbox_maps $virtual_mailbox_domains $relay_recipient_maps $relay_domains $canonical_maps $sender_canonical_maps $recipient_canonical_maps $relocated_maps $transport_maps $mynetworks $smtpd_sender_login_maps
 smtpd_helo_required = yes
-smtpd_helo_restrictions = reject_invalid_helo_hostname, permit_mynetworks, check_helo_access regexp:{config_dir}/helo_access, permit_sasl_authenticated, reject_non_fqdn_helo_hostname, check_helo_access regexp:{config_dir}/blacklist_helo, warn_if_reject reject_unknown_helo_hostname, permit
-smtpd_sender_restrictions = check_sender_access mysql:{config_dir}/mysql-virtual_sender.cf regexp:{config_dir}/tag_as_originating.re{reject_slm}, permit_mynetworks, check_sender_access regexp:{config_dir}/tag_as_foreign.re
+smtpd_helo_restrictions = permit_sasl_authenticated, permit_mynetworks, check_helo_access regexp:{config_dir}/helo_access, reject_invalid_hostname, reject_non_fqdn_hostname, check_helo_access regexp:{config_dir}/blacklist_helo
+smtpd_sender_restrictions = check_sender_access regexp:{config_dir}/tag_as_originating.re {reject_slm}, permit_mynetworks, check_sender_access mysql:{config_dir}/mysql-virtual_sender.cf, check_sender_access regexp:{config_dir}/tag_as_foreign.re
 smtpd_client_restrictions = check_client_access mysql:{config_dir}/mysql-virtual_client.cf
 smtpd_client_message_rate_limit = 100
 maildrop_destination_concurrency_limit = 1
@@ -40,8 +40,3 @@
 smtp_tls_protocols = !SSLv2,!SSLv3
 smtpd_tls_exclude_ciphers = RC4, aNULL
 smtp_tls_exclude_ciphers = RC4, aNULL
-strict_rfc821_envelopes = yes
-disable_vrfy_command = yes
-allow_percent_hack = no
-swap_bangpath = no
-smtpd_reject_unlisted_sender = yes
diff --git a/install/tpl/gentoo_postfix.conf.master b/install/tpl/gentoo_postfix.conf.master
index 5439cc5..9556ba3 100644
--- a/install/tpl/gentoo_postfix.conf.master
+++ b/install/tpl/gentoo_postfix.conf.master
@@ -21,8 +21,8 @@
 smtpd_sender_login_maps = proxy:mysql:{config_dir}/mysql-virtual_sender_login_maps.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 $smtpd_sender_login_maps
 smtpd_helo_required = yes
-smtpd_helo_restrictions = reject_invalid_helo_hostname, permit_mynetworks, check_helo_access regexp:{config_dir}/helo_access, permit_sasl_authenticated, reject_non_fqdn_helo_hostname, check_helo_access regexp:{config_dir}/blacklist_helo, warn_if_reject reject_unknown_helo_hostname, permit
-smtpd_sender_restrictions = check_sender_access mysql:{config_dir}/mysql-virtual_sender.cf regexp:{config_dir}/tag_as_originating.re{reject_slm}, permit_mynetworks, check_sender_access regexp:{config_dir}/tag_as_foreign.re
+smtpd_helo_restrictions = permit_sasl_authenticated, permit_mynetworks, check_helo_access regexp:{config_dir}/helo_access, reject_invalid_hostname, reject_non_fqdn_hostname, check_helo_access regexp:{config_dir}/blacklist_helo
+smtpd_sender_restrictions = check_sender_access regexp:{config_dir}/tag_as_originating.re {reject_slm}, permit_mynetworks, check_sender_access mysql:{config_dir}/mysql-virtual_sender.cf, check_sender_access regexp:{config_dir}/tag_as_foreign.re
 smtpd_client_restrictions = check_client_access mysql:{config_dir}/mysql-virtual_client.cf
 smtpd_client_message_rate_limit = 100
 maildrop_destination_concurrency_limit = 1
@@ -39,8 +39,3 @@
 smtp_tls_protocols = !SSLv2,!SSLv3
 smtpd_tls_exclude_ciphers = RC4, aNULL
 smtp_tls_exclude_ciphers = RC4, aNULL
-strict_rfc821_envelopes = yes
-disable_vrfy_command = yes
-allow_percent_hack = no
-swap_bangpath = no
-smtpd_reject_unlisted_sender = yes
diff --git a/install/tpl/opensuse_postfix.conf.master b/install/tpl/opensuse_postfix.conf.master
index a66536f..016f672 100644
--- a/install/tpl/opensuse_postfix.conf.master
+++ b/install/tpl/opensuse_postfix.conf.master
@@ -24,8 +24,8 @@
 smtpd_sender_login_maps = proxy:mysql:{config_dir}/mysql-virtual_sender_login_maps.cf
 proxy_read_maps = $local_recipient_maps $mydestination $virtual_alias_maps $virtual_alias_domains $sender_bcc_maps $virtual_mailbox_maps $virtual_mailbox_domains $relay_recipient_maps $relay_domains $canonical_maps $sender_canonical_maps $recipient_canonical_maps $relocated_maps $transport_maps $mynetworks $smtpd_sender_login_maps
 smtpd_helo_required = yes
-smtpd_helo_restrictions = reject_invalid_helo_hostname, permit_mynetworks, check_helo_access regexp:{config_dir}/helo_access, permit_sasl_authenticated, reject_non_fqdn_helo_hostname, check_helo_access regexp:{config_dir}/blacklist_helo, warn_if_reject reject_unknown_helo_hostname, permit
-smtpd_sender_restrictions = check_sender_access mysql:{config_dir}/mysql-virtual_sender.cf regexp:{config_dir}/tag_as_originating.re{reject_slm}, permit_mynetworks, check_sender_access regexp:{config_dir}/tag_as_foreign.re
+smtpd_helo_restrictions = permit_sasl_authenticated, permit_mynetworks, check_helo_access regexp:{config_dir}/helo_access, reject_invalid_hostname, reject_non_fqdn_hostname, check_helo_access regexp:{config_dir}/blacklist_helo
+smtpd_sender_restrictions = check_sender_access regexp:{config_dir}/tag_as_originating.re {reject_slm}, permit_mynetworks, check_sender_access mysql:{config_dir}/mysql-virtual_sender.cf, check_sender_access regexp:{config_dir}/tag_as_foreign.re
 smtpd_client_restrictions = check_client_access mysql:{config_dir}/mysql-virtual_client.cf
 smtpd_client_message_rate_limit = 100
 maildrop_destination_concurrency_limit = 1
@@ -42,8 +42,3 @@
 smtp_tls_protocols = !SSLv2,!SSLv3
 smtpd_tls_exclude_ciphers = RC4, aNULL
 smtp_tls_exclude_ciphers = RC4, aNULL
-strict_rfc821_envelopes = yes
-disable_vrfy_command = yes
-allow_percent_hack = no
-swap_bangpath = no
-smtpd_reject_unlisted_sender = yes
diff --git a/install/tpl/pureftpd_mysql.conf.master b/install/tpl/pureftpd_mysql.conf.master
index fcf79bb..32d2159 100644
--- a/install/tpl/pureftpd_mysql.conf.master
+++ b/install/tpl/pureftpd_mysql.conf.master
@@ -59,12 +59,12 @@
 
 # Query to execute in order to fetch the password
 
-MYSQLGetPW      SELECT password FROM ftp_user WHERE active = 'y' AND server_id = '{server_id}' AND username="\L" AND (expires = "0000-00-00 00:00:00" OR expires > NOW())
+MYSQLGetPW      SELECT password FROM ftp_user WHERE active = 'y' AND server_id = '{server_id}' AND username="\L" AND (expires IS NULL OR expires > NOW())
 
 
 # Query to execute in order to fetch the system user name or uid
 
-MYSQLGetUID     SELECT uid FROM ftp_user WHERE active = 'y' AND server_id = '{server_id}' AND username="\L" AND (expires = "0000-00-00 00:00:00" OR expires > NOW())
+MYSQLGetUID     SELECT uid FROM ftp_user WHERE active = 'y' AND server_id = '{server_id}' AND username="\L" AND (expires IS NULL OR expires > NOW())
 
 
 # Optional : default UID - if set this overrides MYSQLGetUID
@@ -74,7 +74,7 @@
 
 # Query to execute in order to fetch the system user group or gid
 
-MYSQLGetGID     SELECT gid FROM ftp_user WHERE active = 'y' AND server_id = '{server_id}' AND username="\L" AND (expires = "0000-00-00 00:00:00" OR expires > NOW())
+MYSQLGetGID     SELECT gid FROM ftp_user WHERE active = 'y' AND server_id = '{server_id}' AND username="\L" AND (expires IS NULL OR expires > NOW())
 
 
 # Optional : default GID - if set this overrides MYSQLGetGID
@@ -84,34 +84,34 @@
 
 # Query to execute in order to fetch the home directory
 
-MYSQLGetDir     SELECT dir FROM ftp_user WHERE active = 'y' AND server_id = '{server_id}' AND username="\L" AND (expires = "0000-00-00 00:00:00" OR expires > NOW())
+MYSQLGetDir     SELECT dir FROM ftp_user WHERE active = 'y' AND server_id = '{server_id}' AND username="\L" AND (expires IS NULL OR expires > NOW())
 
 
 # Optional : query to get the maximal number of files 
 # Pure-FTPd must have been compiled with virtual quotas support.
 
-MySQLGetQTAFS  SELECT quota_files FROM ftp_user WHERE active = 'y' AND server_id = '{server_id}' AND quota_files != '-1' AND username="\L" AND (expires = "0000-00-00 00:00:00" OR expires > NOW())
+MySQLGetQTAFS  SELECT quota_files FROM ftp_user WHERE active = 'y' AND server_id = '{server_id}' AND quota_files != '-1' AND username="\L" AND (expires IS NULL OR expires > NOW())
 
 
 # Optional : query to get the maximal disk usage (virtual quotas)
 # The number should be in Megabytes.
 # Pure-FTPd must have been compiled with virtual quotas support.
 
-MySQLGetQTASZ  SELECT quota_size FROM ftp_user WHERE active = 'y' AND server_id = '{server_id}' AND quota_size != '-1' AND username="\L" AND (expires = "0000-00-00 00:00:00" OR expires > NOW())
+MySQLGetQTASZ  SELECT quota_size FROM ftp_user WHERE active = 'y' AND server_id = '{server_id}' AND quota_size != '-1' AND username="\L" AND (expires IS NULL OR expires > NOW())
 
 
 # Optional : ratios. The server has to be compiled with ratio support.
 
-MySQLGetRatioUL SELECT ul_ratio FROM ftp_user WHERE active = 'y' AND server_id = '{server_id}' AND ul_ratio != '-1' AND username="\L" AND (expires = "0000-00-00 00:00:00" OR expires > NOW())
-MySQLGetRatioDL SELECT dl_ratio FROM ftp_user WHERE active = 'y' AND server_id = '{server_id}' AND dl_ratio != '-1' AND username="\L" AND (expires = "0000-00-00 00:00:00" OR expires > NOW())
+MySQLGetRatioUL SELECT ul_ratio FROM ftp_user WHERE active = 'y' AND server_id = '{server_id}' AND ul_ratio != '-1' AND username="\L" AND (expires IS NULL OR expires > NOW())
+MySQLGetRatioDL SELECT dl_ratio FROM ftp_user WHERE active = 'y' AND server_id = '{server_id}' AND dl_ratio != '-1' AND username="\L" AND (expires IS NULL OR expires > NOW())
 
 
 # Optional : bandwidth throttling.
 # The server has to be compiled with throttling support.
 # Values are in KB/s .
 
-MySQLGetBandwidthUL SELECT ul_bandwidth FROM ftp_user WHERE active = 'y' AND server_id = '{server_id}' AND ul_bandwidth != '-1' AND username="\L" AND (expires = "0000-00-00 00:00:00" OR expires > NOW())
-MySQLGetBandwidthDL SELECT dl_bandwidth FROM ftp_user WHERE active = 'y' AND server_id = '{server_id}' AND dl_bandwidth != '-1' AND username="\L" AND (expires = "0000-00-00 00:00:00" OR expires > NOW())
+MySQLGetBandwidthUL SELECT ul_bandwidth FROM ftp_user WHERE active = 'y' AND server_id = '{server_id}' AND ul_bandwidth != '-1' AND username="\L" AND (expires IS NULL OR expires > NOW())
+MySQLGetBandwidthDL SELECT dl_bandwidth FROM ftp_user WHERE active = 'y' AND server_id = '{server_id}' AND dl_bandwidth != '-1' AND username="\L" AND (expires IS NULL OR expires > NOW())
 
 # Enable ~ expansion. NEVER ENABLE THIS BLINDLY UNLESS :
 # 1) You know what you are doing.
diff --git a/interface/lib/classes/listform.inc.php b/interface/lib/classes/listform.inc.php
index 120e652..af6c3ff 100644
--- a/interface/lib/classes/listform.inc.php
+++ b/interface/lib/classes/listform.inc.php
@@ -563,7 +563,7 @@
 					break;
 
 				case 'DATE':
-					if($record[$key] != '' && $record[$key] != '0000-00-00') {
+					if($record[$key] != '' && !is_null($record[$key]) && $record[$key] != '0000-00-00') {
 						$record[$key] = $record[$key];
 					}
 					break;
diff --git a/interface/lib/classes/remote.d/openvz.inc.php b/interface/lib/classes/remote.d/openvz.inc.php
index c427a1f..a4ef38a 100644
--- a/interface/lib/classes/remote.d/openvz.inc.php
+++ b/interface/lib/classes/remote.d/openvz.inc.php
@@ -307,7 +307,7 @@
 		$params['vm_password'] = (isset($override_params['vm_password']))?$override_params['vm_password']:$app->auth->get_random_password(10);
 		$params['start_boot'] = (isset($override_params['start_boot']))?$override_params['start_boot']:'y';
 		$params['active'] = (isset($override_params['active']))?$override_params['active']:'y';
-		$params['active_until_date'] = (isset($override_params['active_until_date']))?$override_params['active_until_date']:'0000-00-00';
+		$params['active_until_date'] = (isset($override_params['active_until_date']))?$override_params['active_until_date']:null;
 		$params['description'] = (isset($override_params['description']))?$override_params['description']:'';
 
 		//* The next params get filled with pseudo values, as the get replaced
diff --git a/interface/lib/classes/tform_base.inc.php b/interface/lib/classes/tform_base.inc.php
index 4405de4..1739c1f 100644
--- a/interface/lib/classes/tform_base.inc.php
+++ b/interface/lib/classes/tform_base.inc.php
@@ -206,7 +206,7 @@
 					break;
 
 				case 'DATE':
-					if($record[$key] != '' && $record[$key] != '0000-00-00') {
+					if($record[$key] != '' && !is_null($record[$key]) && $record[$key] != '0000-00-00') {
 						$tmp = explode('-', $record[$key]);
 						$new_record[$key] = date($this->dateformat, mktime(0, 0, 0, $tmp[1]  , $tmp[2], $tmp[0]));
 					}
@@ -770,7 +770,7 @@
 					}
 					break;
 				case 'DATE':
-					if($record[$key] != '' && $record[$key] != '0000-00-00') {
+					if($record[$key] != '' && !is_null($record[$key]) && $record[$key] != '0000-00-00') {
 						if(function_exists('date_parse_from_format')) {
 							$date_parts = date_parse_from_format($this->dateformat, $record[$key]);
 							$new_record[$key] = $date_parts['year'].'-'.str_pad($date_parts['month'], 2, "0", STR_PAD_LEFT).'-'.str_pad($date_parts['day'], 2, "0", STR_PAD_LEFT);
@@ -779,7 +779,7 @@
 							$new_record[$key] = date('Y-m-d', $tmp);
 						}
 					} else {
-						$new_record[$key] = '0000-00-00';
+						$new_record[$key] = null;
 					}
 					break;
 				case 'INTEGER':
@@ -802,19 +802,19 @@
 							$new_record[$key] = date( 'Y-m-d H:i:s', mktime($_dt_hour, $_dt_minute, $_dt_second, $_dt_month, $_dt_day, $_dt_year) );
 						}
 					} else {*/
-						if($record[$key] != '' && $record[$key] != '0000-00-00 00:00:00') {
+						if($record[$key] != '' && !is_null($record[$key]) && $record[$key] != '0000-00-00 00:00:00') {
 							//$tmp = strtotime($record[$key]);
 							//$new_record[$key] = date($this->datetimeformat, $tmp);
 							$parsed_date = date_parse_from_format($this->datetimeformat,$record[$key]);
 							if($parsed_date['error_count'] > 0 || ($parsed_date['year'] == 1899 && $parsed_date['month'] == 12 && $parsed_date['day'] == 31)) {
 								// There was an error, set the date to 0
-								$new_record[$key] = '0000-00-00 00:00:00';
+								$new_record[$key] = null;
 							} else {
 								// Date parsed successfully. Convert it to database format
 								$new_record[$key] = date( 'Y-m-d H:i:s', mktime($parsed_date['hour'], $parsed_date['minute'], $parsed_date['second'], $parsed_date['month'], $parsed_date['day'], $parsed_date['year']) );
 							}
 						} else {
-							$new_record[$key] = '0000-00-00 00:00:00';
+							$new_record[$key] = null;
 						}
 					/*}*/
 					break;
diff --git a/interface/lib/classes/tform_tpl_generator.inc.php b/interface/lib/classes/tform_tpl_generator.inc.php
index b759e51..f841a09 100644
--- a/interface/lib/classes/tform_tpl_generator.inc.php
+++ b/interface/lib/classes/tform_tpl_generator.inc.php
@@ -273,7 +273,7 @@
 					case 'DATE':
 						$type = 'date';
 						$typevalue = '';
-						$defaultValue = ($field["default"] != '')?$field["default"]:'0000-00-00';
+						$defaultValue = ($field["default"] != '')?$field["default"]:null;
 						break;
 					}
 
@@ -311,6 +311,8 @@
 			$fp = fopen($lng_file, "w");
 			fwrite($fp, "<?php\n");
 			foreach($wb_out as $key => $val) {
+				$val = str_replace("'", "\\'",$val);
+				$key = str_replace("'", "\\'",$key);
 				$new_line = '$wb["'.$key.'"] = '."'$val';\n";
 				fwrite($fp, $new_line);
 
diff --git a/interface/lib/classes/validate_domain.inc.php b/interface/lib/classes/validate_domain.inc.php
index 7ca6006..b572467 100644
--- a/interface/lib/classes/validate_domain.inc.php
+++ b/interface/lib/classes/validate_domain.inc.php
@@ -84,7 +84,12 @@
 		global $app;
 		if(empty($field_value) || $field_name != 'subdomain') return; // none set
 
-		$check_domain = $_POST['domain'];
+		if(isset($app->remoting_lib->primary_id)) {
+			$check_domain = $app->remoting_lib->dataRecord['domain'];
+		} else {
+			$check_domain = $_POST['domain'];
+		}
+		
 		$app->uses('ini_parser,getconf');
 		$settings = $app->getconf->get_global_config('domains');
 		if ($settings['use_domain_module'] == 'y') {
diff --git a/interface/lib/lang/cz.lng b/interface/lib/lang/cz.lng
index f3439de..d8bf3f9 100644
--- a/interface/lib/lang/cz.lng
+++ b/interface/lib/lang/cz.lng
@@ -23,9 +23,9 @@
 $wb['page_back_txt'] = 'Zpět';
 $wb['delete_txt'] = 'Smazat';
 $wb['filter_txt'] = 'Filtrovat';
-$wb['add_new_record_txt'] = 'Přidat záznam';
+$wb['add_new_record_txt'] = 'Vytvořit záznam';
 $wb['btn_save_txt'] = 'Uložit';
-$wb['btn_cancel_txt'] = 'Zpět';
+$wb['btn_cancel_txt'] = 'Zrušit';
 $wb['top_menu_system'] = 'Systém';
 $wb['top_menu_client'] = 'Klienti';
 $wb['top_menu_email'] = 'E-mail';
@@ -71,7 +71,7 @@
 $wb['logout_txt'] = 'Odhlášení';
 $wb['conf_format_dateshort_human_readable'] = 'yyyy-mm-dd';
 $wb['submit_confirmation'] = 'Opravdu chcete provést tuto akci ?';
-$wb['top_menu_mailuser'] = 'E-mailový uživatel';
+$wb['top_menu_mailuser'] = 'E-mail. uživ.';
 $wb['globalsearch_resultslimit_of_txt'] = 'z';
 $wb['globalsearch_resultslimit_results_txt'] = 'výsledky';
 $wb['globalsearch_noresults_text_txt'] = 'Žádné výsledky.';
@@ -151,3 +151,4 @@
 $wb['security_check2_txt'] = 'failed.';
 $wb['err_csrf_attempt_blocked'] = 'CSRF attempt blocked.';
 ?>
+
diff --git a/interface/web/admin/lib/lang/cz.lng b/interface/web/admin/lib/lang/cz.lng
index ffbeee7..f6b0611 100644
--- a/interface/web/admin/lib/lang/cz.lng
+++ b/interface/web/admin/lib/lang/cz.lng
@@ -5,9 +5,9 @@
 $wb['groups_description'] = 'Úprava skupin systémových uživatelů.';
 $wb['Servers'] = 'Servery';
 $wb['Config'] = 'Konigurace';
-$wb['Add user'] = 'Přidat uživatele';
+$wb['Add user'] = 'Vytvořit uživatele';
 $wb['Edit user'] = 'Upravit uživatele';
-$wb['Add group'] = 'Přidat skupinu';
+$wb['Add group'] = 'Vytvořit skupinu';
 $wb['Edit group'] = 'Upravit skupinu';
 $wb['Edit server'] = 'Upravit server';
 $wb['Sync. Now'] = 'Synch. nyní';
@@ -47,6 +47,7 @@
 $wb['Do OS-Update'] = 'Aktualizovat operační systém';
 $wb['Do ISPConfig-Update'] = 'Aktualizovat ISPConfig';
 $wb['Directive Snippets'] = 'Directive Snippets';
-$wb['Sites'] = 'Sites';
+$wb['Sites'] = 'Stránky';
 $wb['DNS'] = 'DNS';
 ?>
+
diff --git a/interface/web/admin/lib/lang/cz_directive_snippets.lng b/interface/web/admin/lib/lang/cz_directive_snippets.lng
index c77222a..7107122 100644
--- a/interface/web/admin/lib/lang/cz_directive_snippets.lng
+++ b/interface/web/admin/lib/lang/cz_directive_snippets.lng
@@ -9,3 +9,4 @@
 $wb['variables_txt'] = 'Proměnné';
 $wb['customer_viewable_txt'] = 'Customer viewable';
 ?>
+
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 e31d707..d580edb 100644
--- a/interface/web/admin/lib/lang/cz_directive_snippets_list.lng
+++ b/interface/web/admin/lib/lang/cz_directive_snippets_list.lng
@@ -6,3 +6,4 @@
 $wb['add_new_record_txt'] = 'Add Directive Snippet';
 $wb['customer_viewable_txt'] = 'Customer viewable';
 ?>
+
diff --git a/interface/web/admin/lib/lang/cz_firewall.lng b/interface/web/admin/lib/lang/cz_firewall.lng
index c6146ae..abe744f 100644
--- a/interface/web/admin/lib/lang/cz_firewall.lng
+++ b/interface/web/admin/lib/lang/cz_firewall.lng
@@ -9,3 +9,4 @@
 $wb['tcp_ports_error_regex'] = 'Znak není povole v definici TCP portu. Povolené symboly jsou čísla, : a ,.';
 $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 aecc4cf..a74ba7a 100644
--- a/interface/web/admin/lib/lang/cz_firewall_list.lng
+++ b/interface/web/admin/lib/lang/cz_firewall_list.lng
@@ -4,5 +4,6 @@
 $wb['server_id_txt'] = 'Server';
 $wb['tcp_port_txt'] = 'Otevřené TCP porty';
 $wb['udp_port_txt'] = 'Otevřené UDP porty';
-$wb['add_new_record_txt'] = 'Přidat záznam';
+$wb['add_new_record_txt'] = 'Vytvořit záznam';
 ?>
+
diff --git a/interface/web/admin/lib/lang/cz_groups.lng b/interface/web/admin/lib/lang/cz_groups.lng
index a6281be..b7bb634 100644
--- a/interface/web/admin/lib/lang/cz_groups.lng
+++ b/interface/web/admin/lib/lang/cz_groups.lng
@@ -3,3 +3,4 @@
 $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 c1d7ef9..ade5a36 100644
--- a/interface/web/admin/lib/lang/cz_groups_list.lng
+++ b/interface/web/admin/lib/lang/cz_groups_list.lng
@@ -2,6 +2,7 @@
 $wb['list_head_txt'] = 'Skupiny systémových uživatelů';
 $wb['description_txt'] = 'Popis';
 $wb['name_txt'] = 'Skupina';
-$wb['add_new_record_txt'] = 'Přidat skupinu';
+$wb['add_new_record_txt'] = 'Vytvořit 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 a40fc04..b7d736e 100644
--- a/interface/web/admin/lib/lang/cz_iptables.lng
+++ b/interface/web/admin/lib/lang/cz_iptables.lng
@@ -11,3 +11,4 @@
 $wb['active_txt'] = 'Aktivní';
 $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 65cef75..02177f6 100644
--- a/interface/web/admin/lib/lang/cz_iptables_list.lng
+++ b/interface/web/admin/lib/lang/cz_iptables_list.lng
@@ -13,3 +13,4 @@
 $wb['active_txt'] = 'Aktivní';
 $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 285dff2..76645e5 100644
--- a/interface/web/admin/lib/lang/cz_language_add.lng
+++ b/interface/web/admin/lib/lang/cz_language_add.lng
@@ -1,8 +1,9 @@
 <?php
-$wb['list_head_txt'] = 'Přidat nový jazyk';
+$wb['list_head_txt'] = 'Vytvořit nový jazyk';
 $wb['language_select_txt'] = 'Vybrat jazykový základ';
 $wb['language_new_txt'] = 'Název nového jazyka';
 $wb['language_new_hint_txt'] = '2 znakové ISO 639-1 jazykové kódy (Viz: http://en.wikipedia.org/wiki/List_of_ISO_639-1_codes)';
 $wb['btn_save_txt'] = 'Vytvořit novou jazykovou sadu souborů';
-$wb['btn_cancel_txt'] = 'Zpět';
+$wb['btn_cancel_txt'] = 'Zrušit';
 ?>
+
diff --git a/interface/web/admin/lib/lang/cz_language_complete.lng b/interface/web/admin/lib/lang/cz_language_complete.lng
index f1e6f49..cf5eecb 100644
--- a/interface/web/admin/lib/lang/cz_language_complete.lng
+++ b/interface/web/admin/lib/lang/cz_language_complete.lng
@@ -3,5 +3,6 @@
 $wb['list_desc_txt'] = 'Sloučit vybraný jazykový soubor s hlavním anglickým jazykovým souborem. <br />Toto přidá chybějící řetězce z anglického hlavního souboru do vybraného jazykového souboru. <br /> V nových verzích ISPConfigu vznikají nové moduly a položky, které chybějí ve starších jazykových souborech a takto je doplníte k překladu.';
 $wb['language_select_txt'] = 'Vybrat jazyk k doplnění';
 $wb['btn_save_txt'] = 'Sloučit / doplnit jazykový soubor';
-$wb['btn_cancel_txt'] = 'Zpět';
+$wb['btn_cancel_txt'] = 'Zrušit';
 ?>
+
diff --git a/interface/web/admin/lib/lang/cz_language_edit.lng b/interface/web/admin/lib/lang/cz_language_edit.lng
index 2a71ed0..4157dfa 100644
--- a/interface/web/admin/lib/lang/cz_language_edit.lng
+++ b/interface/web/admin/lib/lang/cz_language_edit.lng
@@ -4,5 +4,6 @@
 $wb['module_txt'] = 'Modul';
 $wb['lang_file_txt'] = 'Jazykový soubor';
 $wb['btn_save_txt'] = 'Uložit';
-$wb['btn_cancel_txt'] = 'Zpět';
+$wb['btn_cancel_txt'] = 'Zrušit';
 ?>
+
diff --git a/interface/web/admin/lib/lang/cz_language_export.lng b/interface/web/admin/lib/lang/cz_language_export.lng
index 7998eea..062a45a 100644
--- a/interface/web/admin/lib/lang/cz_language_export.lng
+++ b/interface/web/admin/lib/lang/cz_language_export.lng
@@ -2,5 +2,6 @@
 $wb['list_head_txt'] = 'Exportovat jazykové soubory';
 $wb['language_select_txt'] = 'Vybrat jazykovou sadu';
 $wb['btn_save_txt'] = 'Uložit vybranou jazykovou sadu do souboru';
-$wb['btn_cancel_txt'] = 'Zpět';
+$wb['btn_cancel_txt'] = 'Zrušit';
 ?>
+
diff --git a/interface/web/admin/lib/lang/cz_language_import.lng b/interface/web/admin/lib/lang/cz_language_import.lng
index e4e8877..2e01cf7 100644
--- a/interface/web/admin/lib/lang/cz_language_import.lng
+++ b/interface/web/admin/lib/lang/cz_language_import.lng
@@ -3,7 +3,8 @@
 $wb['language_import_txt'] = 'Vybrat jazykový soubor';
 $wb['btn_save_txt'] = 'Nahrát vybraný jazykový soubor';
 $wb['language_overwrite_txt'] = 'Přepsat soubor, pokud existuje.';
-$wb['btn_cancel_txt'] = 'Zpět';
+$wb['btn_cancel_txt'] = 'Zrušit';
 $wb['ignore_version_txt'] = 'Přeskočit kontrolu verze ISPConfigu.';
 $wb['list_desc_txt'] = 'VAROVÁNÍ: Nepoužívejte import souborů jazyku z nedůvěryhodných zdrojů.';
 ?>
+
diff --git a/interface/web/admin/lib/lang/cz_language_list.lng b/interface/web/admin/lib/lang/cz_language_list.lng
index b2a7863..49614e0 100644
--- a/interface/web/admin/lib/lang/cz_language_list.lng
+++ b/interface/web/admin/lib/lang/cz_language_list.lng
@@ -5,3 +5,4 @@
 $wb['lang_file_txt'] = 'Jazykový soubor';
 $wb['lang_file_date_txt'] = 'Poslední úprava';
 ?>
+
diff --git a/interface/web/admin/lib/lang/cz_package_install.lng b/interface/web/admin/lib/lang/cz_package_install.lng
index 2bdc9df..4d3a6dc 100644
--- a/interface/web/admin/lib/lang/cz_package_install.lng
+++ b/interface/web/admin/lib/lang/cz_package_install.lng
@@ -5,3 +5,4 @@
 $wb['repo_password_txt'] = 'Heslo (volitelné)';
 $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 e1908e2..536ccfb 100644
--- a/interface/web/admin/lib/lang/cz_remote_action.lng
+++ b/interface/web/admin/lib/lang/cz_remote_action.lng
@@ -10,3 +10,4 @@
 $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 17c4f05..c75c165 100644
--- a/interface/web/admin/lib/lang/cz_remote_user.lng
+++ b/interface/web/admin/lib/lang/cz_remote_user.lng
@@ -45,3 +45,4 @@
 $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 66b6494..2f88143 100644
--- a/interface/web/admin/lib/lang/cz_remote_user_list.lng
+++ b/interface/web/admin/lib/lang/cz_remote_user_list.lng
@@ -1,7 +1,8 @@
 <?php
 $wb['list_head_txt'] = 'Vzdálený uživatel';
 $wb['list_desc_txt'] = '';
-$wb['add_new_record_txt'] = 'Přidat uživatele';
+$wb['add_new_record_txt'] = 'Vytvořit uživatele';
 $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 8b86caf..ba749d7 100644
--- a/interface/web/admin/lib/lang/cz_server.lng
+++ b/interface/web/admin/lib/lang/cz_server.lng
@@ -14,3 +14,4 @@
 $wb['firewall_server_txt'] = 'Firewall-Server';
 $wb['xmpp_server_txt'] = 'XMPP Server';
 ?>
+
diff --git a/interface/web/admin/lib/lang/cz_server_config.lng b/interface/web/admin/lib/lang/cz_server_config.lng
index 2a51eec..44acc5d 100644
--- a/interface/web/admin/lib/lang/cz_server_config.lng
+++ b/interface/web/admin/lib/lang/cz_server_config.lng
@@ -19,33 +19,24 @@
 $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['maildir_format_txt'] = 'Maildir Format';
 $wb['homedir_path_txt'] = 'Cesta k domácímu adresáři';
 $wb['mailuser_uid_txt'] = 'Mail uživatel UID';
 $wb['mailuser_gid_txt'] = 'Mail uživatel GID';
 $wb['mailuser_name_txt'] = 'Mail uživatel jméno';
 $wb['mailuser_group_txt'] = 'Mail uživatel skupina';
-$wb['mailbox_virtual_uidgid_maps_txt'] = 'Use Websites Linux uid for mailbox';
-$wb['mailbox_virtual_uidgid_maps_info_txt'] = 'only in single web and mail-server-setup';
-$wb['mailbox_virtual_uidgid_maps_error_nosingleserver'] = 'Uid cannot be mapped in multi-server-setup.';
-$wb['mailbox_virtual_uidgid_maps_error_nodovecot'] = 'Uid-mapping can only be used with dovecot.';
-$wb['mailbox_virtual_uidgid_maps_error_alreadyusers'] = 'Uid-mapping cannot be changed if there are already mail users.';
 $wb['relayhost_txt'] = 'Relayhost';
 $wb['relayhost_user_txt'] = 'Relayhost uživatel';
 $wb['relayhost_password_txt'] = 'Relayhost heslo';
-$wb['reject_sender_login_mismatch_txt'] = 'Reject sender and login mismatch';
 $wb['mailbox_size_limit_txt'] = 'Limit velikosti mailboxu';
 $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'] = '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'] = 'Název hostitele (hostname) je prázdný.';
 $wb['nameservers_error_empty'] = 'Jmenný server je prázdný.';
 $wb['config_dir_txt'] = 'Vlogger cesta k vlogger-dbi.conf';
 $wb['init_script_txt'] = 'Název cron init skriptu';
@@ -165,7 +156,7 @@
 $wb['backup_mode_userzip'] = 'Zálohování všech souborů v adresáři web jako uživatel vlastnící web adresář do souboru zip';
 $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['realtime_blackhole_list_note_txt'] = '(jednotlivé RBL databáze oddělujte čárkou)';
 $wb['ssl_settings_txt'] = 'SSL Nastavení';
 $wb['permissions_txt'] = 'Nastavit oprávnění';
 $wb['php_settings_txt'] = 'PHP Nastavení';
@@ -189,8 +180,6 @@
 $wb['monit_user_txt'] = 'Monit uživatel';
 $wb['monit_password_txt'] = 'Monit heslo';
 $wb['monit_url_error_regex'] = 'Invalid Monit URL';
-$wb['dkim_path_txt'] = 'DKIM adresář pro klíče';
-$wb['backup_delete_txt'] = 'Delete backups on domain/website delete';
 $wb['monit_url_note_txt'] = 'Zástupný symbol';
 $wb['munin_url_txt'] = 'Munin URL';
 $wb['munin_user_txt'] = 'Munin uživatel';
@@ -199,7 +188,6 @@
 $wb['munin_url_note_txt'] = 'Zástupný symbol';
 $wb['backup_dir_is_mount_txt'] = 'Připojit adresář pro zálohy ?';
 $wb['monitor_system_updates_txt'] = 'Kontrolovat aktualizace Linuxu';
-$wb['hostname_error_regex'] = 'Invalid Hostname.';
 $wb['invalid_apache_user_txt'] = 'Invalid apache user.';
 $wb['invalid_apache_group_txt'] = 'Invalid apache group.';
 $wb['backup_dir_error_regex'] = 'Invalid backup directory.';
@@ -251,18 +239,25 @@
 $wb['crontab_dir_error_regex'] = 'Invalid crontab directory.';
 $wb['cron_wget_error_regex'] = 'Invalid cron wget path.';
 $wb['network_filesystem_txt'] = 'Network Filesystem';
-$wb['disable_bind_log_txt'] = 'Disable bind9 messages for Loglevel WARN';
-$wb['apps_vhost_enabled_txt'] = 'Apps-vhost enabled';
+$wb['dkim_path_txt'] = 'DKIM adresář pro klíče';
 $wb['dkim_strength_txt'] = 'DKIM síla klíče';
+$wb['maildir_format_txt'] = 'Maildir Format';
+$wb['mailbox_virtual_uidgid_maps_txt'] = 'Use Websites Linux uid for mailbox';
+$wb['mailbox_virtual_uidgid_maps_info_txt'] = 'only in single web and mail-server-setup';
+$wb['mailbox_virtual_uidgid_maps_error_nosingleserver'] = 'Uid cannot be mapped in multi-server-setup.';
+$wb['mailbox_virtual_uidgid_maps_error_nodovecot'] = 'Uid-mapping can only be used with dovecot.';
+$wb['mailbox_virtual_uidgid_maps_error_alreadyusers'] = 'Uid-mapping cannot be changed if there are already mail users.';
+$wb['reject_sender_login_mismatch_txt'] = 'Reject sender and login mismatch';
 $wb['do_not_try_rescue_mongodb_txt'] = 'Disable MongoDB monitoring';
 $wb['v6_prefix_txt'] = 'IPv6 Prefix';
 $wb['vhost_rewrite_v6_txt'] = 'Rewrite IPv6 on Mirror';
 $wb['v6_prefix_length'] = 'Prefix too long according to defined IPv6 ';
 $wb['backup_dir_mount_cmd_txt'] = 'Mount command, if backup directory not mounted';
+$wb['backup_delete_txt'] = 'Delete backups on domain/website delete';
 $wb['overquota_db_notify_admin_txt'] = 'Send DB quota warnings to admin';
 $wb['overquota_db_notify_client_txt'] = 'Send DB quota warnings to client';
 $wb['php_handler_txt'] = 'Default PHP Handler';
-$wb['disabled_txt'] = 'Disabled';
+$wb['disabled_txt'] = 'Vypnuto';
 $wb['php_ini_check_minutes_txt'] = 'Check php.ini every X minutes for changes';
 $wb['php_ini_check_minutes_error_empty'] = 'Please specify a value how often php.ini should be checked for changes.';
 $wb['php_ini_check_minutes_info_txt'] = '0 = no check';
@@ -280,4 +275,10 @@
 $wb['xmpp_port_https_txt'] = 'HTTPS';
 $wb['xmpp_port_pastebin_txt'] = 'Pastebin';
 $wb['xmpp_port_bosh_txt'] = 'BOSH';
+$wb['disable_bind_log_txt'] = 'Disable bind9 messages for Loglevel WARN';
+$wb['apps_vhost_enabled_txt'] = 'Apps-vhost enabled';
+$wb['hostname_txt'] = 'Hostname';
+$wb['hostname_error_empty'] = 'Hostname is empty.';
+$wb['hostname_error_regex'] = 'Invalid Hostname.';
 ?>
+
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 2118c35..9a56c34 100644
--- a/interface/web/admin/lib/lang/cz_server_config_list.lng
+++ b/interface/web/admin/lib/lang/cz_server_config_list.lng
@@ -2,3 +2,4 @@
 $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 43a382a..4f013b5 100644
--- a/interface/web/admin/lib/lang/cz_server_ip.lng
+++ b/interface/web/admin/lib/lang/cz_server_ip.lng
@@ -9,3 +9,4 @@
 $wb['virtualhost_port_txt'] = 'HTTP Porty';
 $wb['error_port_syntax'] = 'Neplatné znaky ve volbě HTTP Portů. Prosím, zadejte pouze číselné hodnoty oddělené čárkami. Příklad: 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 93b0b77..b47b708 100644
--- a/interface/web/admin/lib/lang/cz_server_ip_list.lng
+++ b/interface/web/admin/lib/lang/cz_server_ip_list.lng
@@ -2,9 +2,10 @@
 $wb['list_head_txt'] = 'IP adresy';
 $wb['server_id_txt'] = 'Server';
 $wb['ip_address_txt'] = 'IP adresa';
-$wb['add_new_record_txt'] = 'Přidat IP adresu';
+$wb['add_new_record_txt'] = 'Vytvořit IP adresu';
 $wb['client_id_txt'] = 'Klient';
 $wb['virtualhost_txt'] = 'HTTP Vhost';
 $wb['virtualhost_port_txt'] = 'HTTP Ports';
 $wb['ip_type_txt'] = 'Verze';
 ?>
+
diff --git a/interface/web/admin/lib/lang/cz_server_ip_map.lng b/interface/web/admin/lib/lang/cz_server_ip_map.lng
index 68b196f..136225e 100644
--- a/interface/web/admin/lib/lang/cz_server_ip_map.lng
+++ b/interface/web/admin/lib/lang/cz_server_ip_map.lng
@@ -2,7 +2,7 @@
 $wb['server_id_txt'] = 'Rewrite on Server';
 $wb['source_txt'] = 'Source IP';
 $wb['destination_txt'] = 'Destination IP';
-$wb['active_txt'] = 'Active';
+$wb['active_txt'] = 'Aktivní';
 $wb['ip_error_wrong'] = 'The Destination IP address is invalid';
 $wb['destination_ip_empty'] = 'The Destination IP is empty.';
 $wb['source_ip_empty'] = 'The Source IP is empty.';
@@ -10,3 +10,4 @@
 $wb['duplicate_mapping_error'] = 'Mapping already exists.';
 $wb['ip_mapping_error'] = 'Source IP can not be an IP of the Rewrite-Server';
 ?>
+
diff --git a/interface/web/admin/lib/lang/cz_server_ip_map_list.lng b/interface/web/admin/lib/lang/cz_server_ip_map_list.lng
index 1fedc10..aa65f09 100644
--- a/interface/web/admin/lib/lang/cz_server_ip_map_list.lng
+++ b/interface/web/admin/lib/lang/cz_server_ip_map_list.lng
@@ -3,5 +3,6 @@
 $wb['server_id_txt'] = 'Server';
 $wb['source_ip_txt'] = 'Source IP';
 $wb['destination_ip_txt'] = 'Destination IP';
-$wb['active_txt'] = 'Active';
+$wb['active_txt'] = 'Aktivní';
 ?>
+
diff --git a/interface/web/admin/lib/lang/cz_server_list.lng b/interface/web/admin/lib/lang/cz_server_list.lng
index a4a88f3..3bde8af 100644
--- a/interface/web/admin/lib/lang/cz_server_list.lng
+++ b/interface/web/admin/lib/lang/cz_server_list.lng
@@ -7,8 +7,9 @@
 $wb['file_server_txt'] = 'Souborový';
 $wb['db_server_txt'] = 'DB';
 $wb['vserver_server_txt'] = 'VServer';
-$wb['add_new_record_txt'] = 'Přidat server';
+$wb['add_new_record_txt'] = 'Vytvořit server';
 $wb['proxy_server_txt'] = 'Proxy';
 $wb['firewall_server_txt'] = 'Firewall';
 $wb['xmpp_server_txt'] = 'XMPP';
 ?>
+
diff --git a/interface/web/admin/lib/lang/cz_server_php.lng b/interface/web/admin/lib/lang/cz_server_php.lng
index 10aba05..fc8f7ad 100644
--- a/interface/web/admin/lib/lang/cz_server_php.lng
+++ b/interface/web/admin/lib/lang/cz_server_php.lng
@@ -14,3 +14,4 @@
 $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 36b28fe..c3afb42 100644
--- a/interface/web/admin/lib/lang/cz_server_php_list.lng
+++ b/interface/web/admin/lib/lang/cz_server_php_list.lng
@@ -1,7 +1,8 @@
 <?php
 $wb['list_head_txt'] = 'Další verze PHP';
 $wb['server_id_txt'] = 'Server';
-$wb['add_new_record_txt'] = 'Přidat novou verzi PHP';
+$wb['add_new_record_txt'] = 'Vytvořit novou verzi PHP';
 $wb['client_id_txt'] = 'Klient';
 $wb['name_txt'] = 'Verze PHP';
 ?>
+
diff --git a/interface/web/admin/lib/lang/cz_software_package.lng b/interface/web/admin/lib/lang/cz_software_package.lng
index faffe38..b6421ba 100644
--- a/interface/web/admin/lib/lang/cz_software_package.lng
+++ b/interface/web/admin/lib/lang/cz_software_package.lng
@@ -4,3 +4,4 @@
 $wb['Software Package'] = 'Software Package';
 $wb['Modify software package details'] = 'Modify software package details';
 ?>
+
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 0d079ef..77941a0 100644
--- a/interface/web/admin/lib/lang/cz_software_package_install.lng
+++ b/interface/web/admin/lib/lang/cz_software_package_install.lng
@@ -4,3 +4,4 @@
 $wb['btn_save_txt'] = 'Spustit instalaci';
 $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 6896a9f..ec1b967 100644
--- a/interface/web/admin/lib/lang/cz_software_package_list.lng
+++ b/interface/web/admin/lib/lang/cz_software_package_list.lng
@@ -11,3 +11,4 @@
 $wb['edit_txt'] = 'Upravit';
 $wb['delete_txt'] = 'Smazat';
 ?>
+
diff --git a/interface/web/admin/lib/lang/cz_software_repo.lng b/interface/web/admin/lib/lang/cz_software_repo.lng
index bd7bc9d..f46fb9e 100644
--- a/interface/web/admin/lib/lang/cz_software_repo.lng
+++ b/interface/web/admin/lib/lang/cz_software_repo.lng
@@ -6,3 +6,4 @@
 $wb['active_txt'] = 'Aktivní';
 $wb['Software Repository which may contain addons or updates'] = 'Softwarové zdroje, které mohou obsahovat addony nebo aktualizace';
 ?>
+
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 ca04f41..effc205 100644
--- a/interface/web/admin/lib/lang/cz_software_repo_list.lng
+++ b/interface/web/admin/lib/lang/cz_software_repo_list.lng
@@ -4,3 +4,4 @@
 $wb['repo_name_txt'] = 'Název zdroje';
 $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 c48ad8c..467fd5f 100644
--- a/interface/web/admin/lib/lang/cz_software_update_list.lng
+++ b/interface/web/admin/lib/lang/cz_software_update_list.lng
@@ -7,3 +7,4 @@
 $wb['action_txt'] = 'Akce';
 $wb['no_updates_txt'] = 'Žádné aktualizace nejsou k dispozici';
 ?>
+
diff --git a/interface/web/admin/lib/lang/cz_system_config.lng b/interface/web/admin/lib/lang/cz_system_config.lng
index d77b3ed..c508c52 100644
--- a/interface/web/admin/lib/lang/cz_system_config.lng
+++ b/interface/web/admin/lib/lang/cz_system_config.lng
@@ -9,8 +9,8 @@
 $wb['dbuser_prefix_error_regex'] = 'Znak není povolen v prefixu databázového uživatele.';
 $wb['ftpuser_prefix_error_regex'] = 'Znak není povolen v prefixu FTP uživatele.';
 $wb['shelluser_prefix_error_regex'] = 'Znak není povolen v prefixu shell uživatele.';
-$wb['dblist_phpmyadmin_link_txt'] = 'Odkaz na aplikaci PHPMyAdmin v DB seznamu';
-$wb['mailboxlist_webmail_link_txt'] = 'Odkaz na aplikaci Webmail v Mailbox seznamu';
+$wb['dblist_phpmyadmin_link_txt'] = 'Ikonový odkaz na aplikaci PHPMyAdmin v seznamu databází';
+$wb['mailboxlist_webmail_link_txt'] = 'Ikonový odkaz na aplikaci Webmail v seznamu e-mailových schránek';
 $wb['webmail_url_txt'] = 'Webmail URL';
 $wb['phpmyadmin_url_txt'] = 'PHPMyAdmin URL';
 $wb['dashboard_atom_url_admin_txt'] = 'Nástěnka - novinky načítat z URL pro: (admina)';
@@ -24,9 +24,9 @@
 $wb['webftp_url_txt'] = 'WebFTP URL';
 $wb['admin_mail_txt'] = 'E-mail Administrátora';
 $wb['admin_name_txt'] = 'Jméno Administrátora';
-$wb['enable_custom_login_txt'] = 'Povolit vlastní přihlašovací jméno';
-$wb['mailmailinglist_link_txt'] = 'Odkaz na aplikaci mailing seznam e-mailových konferencí';
-$wb['mailmailinglist_url_txt'] = 'Mailing seznam URL';
+$wb['enable_custom_login_txt'] = 'Povolit vlastní přihlašovací jméno u e-mailové schránky';
+$wb['mailmailinglist_link_txt'] = 'Ikonový odkaz na aplikaci E-mailových konferencí seznamu e-mailových konferencí';
+$wb['mailmailinglist_url_txt'] = 'E-mailové konference URL';
 $wb['monitor_key_txt'] = 'Monitor keyword';
 $wb['maintenance_mode_txt'] = 'Režim údržby';
 $wb['smtp_enabled_txt'] = 'Použít (zvolit) SMTP server pro zasílání systémových mailů';
@@ -41,17 +41,14 @@
 $wb['tab_change_warning_note_txt'] = 'Show a warning on tab change in edit forms if any data has been altered by the user.';
 $wb['vhost_subdomains_txt'] = 'Vytvořit subdomény jako webové stránky';
 $wb['vhost_subdomains_note_txt'] = 'You cannot disable this as long as vhost subdomains exist in the system!';
-$wb['vhost_aliasdomains_txt'] = 'Vytvořit aliasdomény jako webové stránky';
-$wb['vhost_aliasdomains_note_txt'] = 'You cannot disable this as long as vhost aliasdomains exist in the system!';
 $wb['phpmyadmin_url_error_regex'] = 'phpmyadmin neplatné URL';
 $wb['use_combobox_txt'] = 'Použití jQuery UI Combobox';
 $wb['use_loadindicator_txt'] = 'Použití indikátoru zatížení';
 $wb['f5_to_reload_js_txt'] = 'Pokud vypnete tuto volbu, zřejmě budete muset používat klávesu F5, aby internetový prohlížeč znovu načetl JavaScript knihovny nebo budete muset ručně vyprázdňovat mezipaměť (cache) vašeho internetového prohlížeče.';
 $wb['client_username_web_check_disabled_txt'] = 'Disable client username check for the word \'web\'.';
-$wb['backups_include_into_web_quota_txt'] = 'Include backup files into web quota.';
-$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';
+$wb['mailbox_show_autoresponder_tab_txt'] = 'Ukázat kartu automatická odpověď v podrobnostech u e-mailové schránky';
+$wb['mailbox_show_mail_filter_tab_txt'] = 'Ukázat kartu e-mailové filtry v podrobnostech u e-mailové schránky';
+$wb['mailbox_show_custom_rules_tab_txt'] = 'Ukázat kartu vlastní pravidla v podrobnostech u e-mailové schránky';
 $wb['webmail_url_error_regex'] = 'Neplatný webmail URL';
 $wb['phpmyadmin_url_note_txt'] = 'Zástupný symbol';
 $wb['webmail_url_note_txt'] = 'Zástupný symbol';
@@ -71,14 +68,18 @@
 $wb['No'] = 'Ne';
 $wb['min_password_length_txt'] = 'Minimální délka hesla';
 $wb['min_password_strength_txt'] = 'Minimální síla hesla';
-$wb['company_name_txt'] = 'Company Name for the page title';
+$wb['vhost_aliasdomains_txt'] = 'Create aliasdomains as web site';
+$wb['vhost_aliasdomains_note_txt'] = 'You cannot disable this as long as vhost aliasdomains exist in the system!';
+$wb['backups_include_into_web_quota_txt'] = 'Include backup files into web quota.';
+$wb['default_mailserver_txt'] = 'Výchozí E-mailový server';
+$wb['default_webserver_txt'] = 'Výchozí webový server';
+$wb['default_dnsserver_txt'] = 'Výchozí DNS server';
+$wb['default_slave_dnsserver_txt'] = 'Výchozí sekundární DNS server';
+$wb['default_dbserver_txt'] = 'Výchozí databázový server';
+$wb['company_name_txt'] = 'Název společnosti v panelu (listu) webového prohlížeče';
 $wb['reseller_can_use_options_txt'] = 'Reseller can use the option-tab for websites';
-$wb['custom_login_text_txt'] = 'Custom Text on Login-Page';
-$wb['custom_login_link_txt'] = 'Custom Link on Login-Page';
-$wb['login_link_error_regex'] = 'Invalid Link for Custom Login';
-$wb['default_mailserver_txt'] = 'Default Mailserver';
-$wb['default_webserver_txt'] = 'Default Webserver';
-$wb['default_dnsserver_txt'] = 'Default DNS Server';
-$wb['default_slave_dnsserver_txt'] = 'Default Secondary DNS Server';
-$wb['default_dbserver_txt'] = 'Default Database Server';
+$wb['custom_login_text_txt'] = 'Vlastní text na přihlašovací stránce';
+$wb['custom_login_link_txt'] = 'Vlastní odkaz (URL) na přihlašovací stránce (vlastní text)';
+$wb['login_link_error_regex'] = 'Neplatný formát URL pro vlastní odkaz na přihlašovací stránce';
 ?>
+
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 480d504..efecb6d 100644
--- a/interface/web/admin/lib/lang/cz_tpl_default_admin.lng
+++ b/interface/web/admin/lib/lang/cz_tpl_default_admin.lng
@@ -16,3 +16,4 @@
 $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 160caac..bba4d67 100644
--- a/interface/web/admin/lib/lang/cz_users.lng
+++ b/interface/web/admin/lib/lang/cz_users.lng
@@ -33,3 +33,4 @@
 $wb['client_not_admin_err'] = 'A user that belongs to a client can not be set to type: admin';
 $wb['lost_password_function_txt'] = 'Forgot password function is available';
 ?>
+
diff --git a/interface/web/admin/lib/lang/cz_users_list.lng b/interface/web/admin/lib/lang/cz_users_list.lng
index e5a7d1e..eb1a618 100644
--- a/interface/web/admin/lib/lang/cz_users_list.lng
+++ b/interface/web/admin/lib/lang/cz_users_list.lng
@@ -3,7 +3,8 @@
 $wb['username_txt'] = 'Uživatelské jméno';
 $wb['client_id_txt'] = 'Klient ID';
 $wb['active_txt'] = 'Aktivní';
-$wb['add_new_record_txt'] = 'Přidat uživatele';
+$wb['add_new_record_txt'] = 'Vytvořit 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/client/client_del.php b/interface/web/client/client_del.php
index 206082c..1540bfb 100644
--- a/interface/web/client/client_del.php
+++ b/interface/web/client/client_del.php
@@ -128,7 +128,7 @@
 			$app->db->query("DELETE FROM sys_user WHERE client_id = ?", $client_id);
 
 			// Delete all records (sub-clients, mail, web, etc....)  of this client.
-			$tables = 'client,dns_rr,dns_soa,dns_slave,ftp_user,mail_access,mail_content_filter,mail_domain,mail_forwarding,mail_get,mail_user,mail_user_filter,shell_user,spamfilter_users,support_message,web_database,web_database_user,web_domain,web_folder,web_folder_user,domain';
+			$tables = 'client,dns_rr,dns_soa,dns_slave,ftp_user,mail_access,mail_content_filter,mail_domain,mail_forwarding,mail_get,mail_user,mail_user_filter,shell_user,spamfilter_users,support_message,web_database,web_database_user,web_domain,web_folder,web_folder_user,domain,mail_mailinglist';
 			$tables_array = explode(',', $tables);
 			$client_group_id = $app->functions->intval($client_group['groupid']);
 			if($client_group_id > 1) {
diff --git a/interface/web/client/client_edit.php b/interface/web/client/client_edit.php
index 219fdfa..c3cc7f1 100644
--- a/interface/web/client/client_edit.php
+++ b/interface/web/client/client_edit.php
@@ -206,7 +206,7 @@
 				if($reseller['customer_no_template'] != '') {
 					//* Set customer no default
 					$customer_no = $app->functions->intval($reseller['customer_no_start']+$reseller['customer_no_counter']);
-					$customer_no_string = str_replace('[CUSTOMER_NO]',$customer_no,$reseller['customer_no_template']);
+					$customer_no_string = str_replace(array('[CUSTOMER_NO]','[CLIENTID]'),array($customer_no, $reseller['client_id']),$reseller['customer_no_template']);
 					$app->tpl->setVar('customer_no',$customer_no_string);
 				}
 			}
diff --git a/interface/web/client/lib/lang/cz.lng b/interface/web/client/lib/lang/cz.lng
index 954a9c9..8b388b4 100644
--- a/interface/web/client/lib/lang/cz.lng
+++ b/interface/web/client/lib/lang/cz.lng
@@ -2,16 +2,16 @@
 $wb['Client'] = 'Klient';
 $wb['Address'] = 'Adresa';
 $wb['Limits'] = 'Limity';
-$wb['Add Client'] = 'Přidat klienta';
+$wb['Add Client'] = 'Vytvořit klienta';
 $wb['Edit Client'] = 'Upravit klienta';
 $wb['Clients'] = 'Klienti';
 $wb['Templates'] = 'Šablony';
 $wb['Limit-Templates'] = 'Klientské šablony (Limity)';
-$wb['Add Reseller'] = 'Přidat distributora';
+$wb['Add Reseller'] = 'Vytvořit distributora';
 $wb['Edit Reseller'] = 'Upravit distributora';
 $wb['Resellers'] = 'Distributoři (prodejci)';
 $wb['error_has_clients'] = 'Distributor má klienty. Nejdříve smažte tyto klienty.';
-$wb['add_additional_template_txt'] = 'Přidat dodatečnou šablonu';
+$wb['add_additional_template_txt'] = 'Vytvořit dodatečnou šablonu';
 $wb['delete_additional_template_txt'] = 'Smazat dodatečnou šablonu';
 $wb['Messaging'] = 'Odesílání zpráv';
 $wb['Send email'] = 'Odeslat e-mail';
@@ -26,3 +26,4 @@
 $wb['error_domain_in dnsuse'] = 'This domain cannot be deleted, because it is in use as dns zone';
 $wb['error_domain_in dnsslaveuse'] = 'This domain cannot be deleted, because it is in use as secondary dns zone';
 ?>
+
diff --git a/interface/web/client/lib/lang/cz_client.lng b/interface/web/client/lib/lang/cz_client.lng
index 65e8aff..0a3dad1 100644
--- a/interface/web/client/lib/lang/cz_client.lng
+++ b/interface/web/client/lib/lang/cz_client.lng
@@ -14,7 +14,6 @@
 $wb['limit_spamfilter_policy_txt'] = 'Max. počet spamfiltrových politik';
 $wb['default_mailserver_txt'] = 'Výchozí e-mailový server';
 $wb['company_name_txt'] = 'Název společnosti';
-$wb['contact_firstname_txt'] = 'Contact firstname';
 $wb['contact_name_txt'] = 'Název kontaktu';
 $wb['username_txt'] = 'Uživatelské jméno';
 $wb['password_txt'] = 'Heslo';
@@ -96,7 +95,6 @@
 $wb['limit_trafficquota_error_notint'] = 'Přenosová kvót musí být číslo.';
 $wb['limit_webdav_user_txt'] = 'Max. počet Webdav uživatelů';
 $wb['limit_webdav_user_error_notint'] = 'Limit WebDAV uživatelů musí být číslo.';
-$wb['limit_backup_txt'] = 'Backupfunction available';
 $wb['customer_no_txt'] = 'Zákaznické číslo';
 $wb['vat_id_txt'] = 'DIČ';
 $wb['required_fields_txt'] = '* Povinná pole';
@@ -109,7 +107,7 @@
 $wb['web_php_options_notempty'] = 'Žádná PHP volba(y) nebyla vybrána (zatržena). Vyberte alespoň jednu možnost PHP.';
 $wb['ssh_chroot_notempty'] = 'Žádná SSH chroot volba(y) nebyla vybrána (zatržena). Vyberte alespoň jednu možnost SSH.';
 $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['add_additional_template_txt'] = 'Vytvořit dodatečnou šablonu';
 $wb['delete_additional_template_txt'] = 'Smazat dodatečnou šablonu';
 $wb['limit_cgi_txt'] = 'CGI - dostupná volba pro klienta';
 $wb['limit_ssi_txt'] = 'SSI - dostupná volba pro klienta';
@@ -155,10 +153,11 @@
 $wb['added_date_txt'] = 'Datum vytvoření účtu';
 $wb['parent_client_id_txt'] = 'Přiřazení klienta k distributorovi (prodejci)';
 $wb['none_txt'] = 'Žádný';
-$wb['email_error_empty'] = 'Email is empty';
+$wb['contact_firstname_txt'] = 'Kontakt křestní jméno';
+$wb['limit_backup_txt'] = 'Funkce zálohování - dostupná volba pro klienta';
 $wb['xmpp_limits_txt'] = 'XMPP Limits';
-$wb['web_servers_txt'] = 'Webservers';
-$wb['web_servers_placeholder'] = 'Select webservers';
+$wb['web_servers_txt'] = 'Webové servery';
+$wb['web_servers_placeholder'] = 'Zvolte webové servery';
 $wb['no_web_server_error'] = 'At least one webserver must be selected.';
 $wb['web_servers_used'] = 'The server you are trying to remove from this client is used as a webserver. Be sure that this server is not used by this client before you remove it.';
 $wb['dns_servers_txt'] = 'DNS servers';
@@ -188,12 +187,16 @@
 $wb['limit_xmpp_vjud_txt'] = 'VJUD user directory available';
 $wb['limit_xmpp_proxy_txt'] = 'Bytestream proxy available';
 $wb['limit_xmpp_status_txt'] = 'Status host available';
-$wb['limit_database_quota_txt'] = 'Database quota';
+$wb['limit_database_quota_txt'] = 'Kvóty databází';
 $wb['limit_database_quota_error_notint'] = 'The database quota limit must be a number.';
-$wb['reseller_txt'] = 'Reseller';
-$wb['btn_save_txt'] = 'Save';
-$wb['btn_cancel_txt'] = 'Cancel';
+$wb['reseller_txt'] = 'Distributor (prodejce)';
+$wb['btn_save_txt'] = 'Uložit';
+$wb['btn_cancel_txt'] = 'Zrušit';
 $wb['invalid_vat_id'] = 'The VAT ID is invalid.';
+$wb['email_error_empty'] = 'E-mail je prázdný';
+$wb['limit_ssl_letsencrypt_txt'] = 'Let';
+$wb['limit_directive_snippets_txt'] = 'Show web server config selection';
 $wb['limit_database_user_txt'] = 'Max. Database users';
 $wb['limit_database_user_error_notint'] = 'The database user limit must be a number.';
 ?>
+
diff --git a/interface/web/client/lib/lang/cz_client_circle.lng b/interface/web/client/lib/lang/cz_client_circle.lng
index f26e2d6..c47f934 100644
--- a/interface/web/client/lib/lang/cz_client_circle.lng
+++ b/interface/web/client/lib/lang/cz_client_circle.lng
@@ -7,3 +7,4 @@
 $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 e827605..c151e19 100644
--- a/interface/web/client/lib/lang/cz_client_circle_list.lng
+++ b/interface/web/client/lib/lang/cz_client_circle_list.lng
@@ -3,8 +3,9 @@
 $wb['circle_id_txt'] = 'ID skupiny';
 $wb['circle_name_txt'] = 'Název skupiny';
 $wb['description_txt'] = 'Popis';
-$wb['add_new_record_txt'] = 'Přidat novou skupinu';
+$wb['add_new_record_txt'] = 'Vytvořit novou skupinu';
 $wb['filter_txt'] = 'Filtr';
 $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 5374ea6..255b542 100644
--- a/interface/web/client/lib/lang/cz_client_del.lng
+++ b/interface/web/client/lib/lang/cz_client_del.lng
@@ -5,3 +5,4 @@
 $wb['btn_cancel_txt'] = 'Zrušit bez smazání klienta';
 $wb['confirm_client_delete_txt'] = 'Jste si jisti, že chcete smazat tohoto klienta ?';
 ?>
+
diff --git a/interface/web/client/lib/lang/cz_client_message.lng b/interface/web/client/lib/lang/cz_client_message.lng
index 3710cbd..72ee184 100644
--- a/interface/web/client/lib/lang/cz_client_message.lng
+++ b/interface/web/client/lib/lang/cz_client_message.lng
@@ -18,3 +18,4 @@
 $wb['gender_m_txt'] = 'Pan';
 $wb['gender_f_txt'] = 'Paní';
 ?>
+
diff --git a/interface/web/client/lib/lang/cz_client_message_template.lng b/interface/web/client/lib/lang/cz_client_message_template.lng
index b5e0b73..2892f4d 100644
--- a/interface/web/client/lib/lang/cz_client_message_template.lng
+++ b/interface/web/client/lib/lang/cz_client_message_template.lng
@@ -9,3 +9,4 @@
 $wb['variables_description_txt'] = 'Proměnné uživatelské jméno a heslo jsou k dispozici (funkční) jako volba pouze v uvítacím e-mailu.';
 $wb['duplicate_welcome_error'] = 'There can be only one default welcome email template. Please edit the existing template instead of adding a new one.';
 ?>
+
diff --git a/interface/web/client/lib/lang/cz_client_message_template_list.lng b/interface/web/client/lib/lang/cz_client_message_template_list.lng
index d4c2f63..f96a284 100644
--- a/interface/web/client/lib/lang/cz_client_message_template_list.lng
+++ b/interface/web/client/lib/lang/cz_client_message_template_list.lng
@@ -3,3 +3,4 @@
 $wb['template_type_txt'] = 'Zpráva pro';
 $wb['template_name_txt'] = 'Název šablony';
 ?>
+
diff --git a/interface/web/client/lib/lang/cz_client_template.lng b/interface/web/client/lib/lang/cz_client_template.lng
index 0113d72..3a60d5e 100644
--- a/interface/web/client/lib/lang/cz_client_template.lng
+++ b/interface/web/client/lib/lang/cz_client_template.lng
@@ -57,10 +57,9 @@
 $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_shell_user_error_notint'] = 'Limit shell uživatelů musí být číslo.';
 $wb['limit_webdav_user_txt'] = 'Max. počet Webdav uživatelů';
+$wb['limit_shell_user_error_notint'] = 'Limit shell uživatelů musí být číslo.';
 $wb['limit_webdav_user_error_notint'] = 'Limit WebDAV uživatelů musí být číslo.';
-$wb['limit_backup_txt'] = 'Backupfunction available';
 $wb['limit_mailmailinglist_txt'] = 'Max. počet e-mailových konferencí';
 $wb['limit_mailmailinglist_error_notint'] = 'Limit pro e-mailové konference musí být číslo.';
 $wb['limit_openvz_vm_txt'] = 'Max. počet virtuálních serverů';
@@ -90,12 +89,13 @@
 $wb['limit_aps_error_notint'] = 'Limit pro APS instalace musí být číslo.';
 $wb['limit_domainmodule_txt'] = 'Domainmodule Limit';
 $wb['client_limits_txt'] = 'Klientské limity';
-$wb['default_mailserver_txt'] = 'Default Mailserver';
-$wb['default_webserver_txt'] = 'Default Webserver';
-$wb['default_dnsserver_txt'] = 'Default DNS Server';
-$wb['default_slave_dnsserver_txt'] = 'Default Secondary DNS Server';
-$wb['default_dbserver_txt'] = 'Default Database Server';
-$wb['limit_database_quota_txt'] = 'Database quota';
+$wb['default_mailserver_txt'] = 'Výchozí E-mailový server';
+$wb['default_webserver_txt'] = 'Výchozí webový server';
+$wb['default_dnsserver_txt'] = 'Výchozí DNS server';
+$wb['default_slave_dnsserver_txt'] = 'Výchozí sekundární DNS server';
+$wb['limit_backup_txt'] = 'Funkce zálohování - dostupná volba pro klienta';
+$wb['default_dbserver_txt'] = 'Výchozí databázový server';
+$wb['limit_database_quota_txt'] = 'Kvóty databází';
 $wb['limit_database_quota_error_notint'] = 'The database quota limit must be a number.';
 $wb['xmpp_limits_txt'] = 'XMPP Limits';
 $wb['xmpp_servers_txt'] = 'XMPP Servers';
@@ -114,4 +114,7 @@
 $wb['limit_xmpp_proxy_txt'] = 'Bytestream proxy available';
 $wb['limit_xmpp_status_txt'] = 'Status host available';
 $wb['dns_servers_txt'] = 'DNS servers';
+$wb['limit_ssl_letsencrypt_txt'] = 'Let';
+$wb['limit_directive_snippets_txt'] = 'Show web server config selection';
 ?>
+
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 3abbd09..d560efb 100644
--- a/interface/web/client/lib/lang/cz_client_template_list.lng
+++ b/interface/web/client/lib/lang/cz_client_template_list.lng
@@ -4,3 +4,4 @@
 $wb['template_name_txt'] = 'Název šablony';
 $wb['template_id_txt'] = 'ID šablony';
 ?>
+
diff --git a/interface/web/client/lib/lang/cz_clients_list.lng b/interface/web/client/lib/lang/cz_clients_list.lng
index 9657cb7..1a8b6d5 100644
--- a/interface/web/client/lib/lang/cz_clients_list.lng
+++ b/interface/web/client/lib/lang/cz_clients_list.lng
@@ -5,7 +5,8 @@
 $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['add_new_record_txt'] = 'Vytvořit klienta';
 $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 08b113f..eabdb6d 100644
--- a/interface/web/client/lib/lang/cz_domain.lng
+++ b/interface/web/client/lib/lang/cz_domain.lng
@@ -4,3 +4,4 @@
 $wb['domain_error_regex'] = 'Toto doménové jméno je zakázáno';
 $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 6cf7376..6c174c1 100644
--- a/interface/web/client/lib/lang/cz_domain_list.lng
+++ b/interface/web/client/lib/lang/cz_domain_list.lng
@@ -1,6 +1,7 @@
 <?php
 $wb['list_head_txt'] = 'Domény';
-$wb['add_new_record_txt'] = 'Přidat novou doménu';
+$wb['add_new_record_txt'] = 'Vytvořit 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 4a4c111..a33dad0 100644
--- a/interface/web/client/lib/lang/cz_reseller.lng
+++ b/interface/web/client/lib/lang/cz_reseller.lng
@@ -13,7 +13,6 @@
 $wb['limit_spamfilter_policy_txt'] = 'Max. počet spamfiltrových politik';
 $wb['default_mailserver_txt'] = 'Výchozí e-mailový server';
 $wb['company_name_txt'] = 'Název společnosti';
-$wb['contact_firstname_txt'] = 'Contact firstname';
 $wb['contact_name_txt'] = 'Název kontaktu';
 $wb['username_txt'] = 'Uživatelské jméno';
 $wb['password_txt'] = 'Heslo';
@@ -89,7 +88,6 @@
 $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_or_unlimited'] = 'Počet klientů musí být > 0';
 $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.';
@@ -99,7 +97,6 @@
 $wb['required_fields_txt'] = '* Povinná pole';
 $wb['limit_webdav_user_txt'] = 'Max. počet Webdav uživatelů';
 $wb['limit_webdav_user_error_notint'] = 'Limit WebDAV uživatelů musí být číslo.';
-$wb['limit_backup_txt'] = 'Backupfunction available';
 $wb['limit_mailmailinglist_txt'] = 'Max. počet e-mailových konferencí';
 $wb['limit_mailaliasdomain_txt'] = 'Max. počet doménových aliasů';
 $wb['limit_mailmailinglist_error_notint'] = 'Limit pro e-mailové konference musí být číslo.';
@@ -109,7 +106,7 @@
 $wb['web_php_options_notempty'] = 'Žádná PHP volba(y) nebyla vybrána (zatržena). Vyberte alespoň jednu možnost PHP.';
 $wb['ssh_chroot_notempty'] = 'Žádná SSH chroot volba(y) nebyla vybrána (zatržena). Vyberte alespoň jednu možnost SSH.';
 $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['add_additional_template_txt'] = 'Vytvořit dodatečnou šablonu';
 $wb['delete_additional_template_txt'] = 'Smazat dodatečnou šablonu';
 $wb['limit_cgi_txt'] = 'CGI - dostupná volba pro klienta';
 $wb['limit_ssi_txt'] = 'SSI - dostupná volba pro klienta';
@@ -160,11 +157,11 @@
 $wb['limit_domainmodule_txt'] = 'Domainmodule Limit';
 $wb['client_limits_txt'] = 'Klientské limity';
 $wb['err_msg_master_tpl_set'] = 'Nelze nastavit vlastní limity, pokud chtete nastavit vlatní limity musí být \\"hlavní šablona\\" nastavena na volbu \\"Custom\\".';
-$wb['btn_save_txt'] = 'Save';
-$wb['btn_cancel_txt'] = 'Cancel';
-$wb['email_error_empty'] = 'Email is empty';
-$wb['web_servers_txt'] = 'Webservers';
-$wb['web_servers_placeholder'] = 'Select Webservers';
+$wb['contact_firstname_txt'] = 'Kontakt křestní jméno';
+$wb['limit_backup_txt'] = 'Funkce zálohování (volitelné)';
+$wb['limit_client_error_positive_or_unlimited'] = 'The number of clients must be > 0 or -1 (unlimited)';
+$wb['web_servers_txt'] = 'Webové servery';
+$wb['web_servers_placeholder'] = 'Zvolte webové servery';
 $wb['no_web_server_error'] = 'At least one webserver must be selected.';
 $wb['web_servers_used'] = 'The server you are trying to remove from this client is used as a webserver. Be sure that this server is not used by this client before to remove it.';
 $wb['dns_servers_txt'] = 'DNS Server';
@@ -196,8 +193,14 @@
 $wb['limit_xmpp_proxy_txt'] = 'Bytestream proxy available';
 $wb['limit_xmpp_status_txt'] = 'Status host available';
 $wb['invalid_vat_id'] = 'The VAT ID is invalid.';
+$wb['btn_save_txt'] = 'Uložit';
+$wb['btn_cancel_txt'] = 'Zrušit';
+$wb['email_error_empty'] = 'E-mail je prázdný';
+$wb['limit_ssl_letsencrypt_txt'] = 'Let';
+$wb['limit_directive_snippets_txt'] = 'Show web server config selection';
 $wb['limit_database_user_txt'] = 'Max. Database users';
 $wb['limit_database_user_error_notint'] = 'The database user limit must be a number.';
-$wb['limit_database_quota_txt'] = 'Database quota';
+$wb['limit_database_quota_txt'] = 'Databázové kvóty';
 $wb['limit_database_quota_error_notint'] = 'The database quota limit must be a number.';
 ?>
+
diff --git a/interface/web/client/lib/lang/cz_resellers_list.lng b/interface/web/client/lib/lang/cz_resellers_list.lng
index 8e72797..b20375b 100644
--- a/interface/web/client/lib/lang/cz_resellers_list.lng
+++ b/interface/web/client/lib/lang/cz_resellers_list.lng
@@ -5,7 +5,8 @@
 $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['add_new_record_txt'] = 'Vytvořit distributora';
 $wb['customer_no_txt'] = 'Zákaznické číslo';
 $wb['username_txt'] = 'Uživatelské jméno';
 ?>
+
diff --git a/interface/web/dashboard/lib/lang/cz.lng b/interface/web/dashboard/lib/lang/cz.lng
index 9d2a321..15063c0 100644
--- a/interface/web/dashboard/lib/lang/cz.lng
+++ b/interface/web/dashboard/lib/lang/cz.lng
@@ -2,3 +2,4 @@
 $wb['welcome_user_txt'] = 'Vítejte %s';
 $wb['available_modules_txt'] = 'Dostupné moduly';
 ?>
+
diff --git a/interface/web/dashboard/lib/lang/cz_dashlet_customer.lng b/interface/web/dashboard/lib/lang/cz_dashlet_customer.lng
index 4fe6cb0..29bf03c 100644
--- a/interface/web/dashboard/lib/lang/cz_dashlet_customer.lng
+++ b/interface/web/dashboard/lib/lang/cz_dashlet_customer.lng
@@ -1,4 +1,5 @@
 <?php
 $wb['customerdata_txt'] = 'My Data';
-$wb['edit_txt'] = 'Edit';
+$wb['edit_txt'] = 'Editovat';
 ?>
+
diff --git a/interface/web/dashboard/lib/lang/cz_dashlet_databasequota.lng b/interface/web/dashboard/lib/lang/cz_dashlet_databasequota.lng
index 209d0d3..9e3fd41 100644
--- a/interface/web/dashboard/lib/lang/cz_dashlet_databasequota.lng
+++ b/interface/web/dashboard/lib/lang/cz_dashlet_databasequota.lng
@@ -1,7 +1,8 @@
 <?php
-$wb['database_txt'] = 'Database Name';
-$wb['used_txt'] = 'Used Space';
-$wb['quota_txt'] = 'Quota';
-$wb['no_database_accounts_txt'] = 'No databases found.';
-$wb['databasequota_txt'] = 'Database Quota';
+$wb['database_txt'] = 'Název databáze';
+$wb['used_txt'] = 'Využité místo';
+$wb['quota_txt'] = 'Kvóta';
+$wb['no_database_accounts_txt'] = 'Nebyla nalezena žádná databáze.';
+$wb['databasequota_txt'] = 'Kvóty databází';
 ?>
+
diff --git a/interface/web/dashboard/lib/lang/cz_dashlet_invoice_client_settings.lng b/interface/web/dashboard/lib/lang/cz_dashlet_invoice_client_settings.lng
index 8cae3df..f5922e7 100644
--- a/interface/web/dashboard/lib/lang/cz_dashlet_invoice_client_settings.lng
+++ b/interface/web/dashboard/lib/lang/cz_dashlet_invoice_client_settings.lng
@@ -1,4 +1,5 @@
 <?php
 $wb['invoice_client_settings_txt'] = 'Invoice Client Settings';
-$wb['edit_txt'] = 'Edit';
+$wb['edit_txt'] = 'Editovat';
 ?>
+
diff --git a/interface/web/dashboard/lib/lang/cz_dashlet_invoices.lng b/interface/web/dashboard/lib/lang/cz_dashlet_invoices.lng
index a680daa..d4caf8f 100644
--- a/interface/web/dashboard/lib/lang/cz_dashlet_invoices.lng
+++ b/interface/web/dashboard/lib/lang/cz_dashlet_invoices.lng
@@ -2,7 +2,7 @@
 $wb['invoices_txt'] = 'Invoices';
 $wb['invoice_no_txt'] = 'Invoice No.';
 $wb['amount_txt'] = 'Amount';
-$wb['date_txt'] = 'Date';
+$wb['date_txt'] = 'Datum';
 $wb['invoice_status_txt'] = 'Status';
 $wb['no_invoices_txt'] = 'No Invoices available.';
 $wb['paid_txt'] = 'Paid';
@@ -16,3 +16,4 @@
 $wb['invoice_type_refund_txt'] = 'Refund';
 $wb['invoice_type_reminder_txt'] = 'Reminder';
 ?>
+
diff --git a/interface/web/dashboard/lib/lang/cz_dashlet_limits.lng b/interface/web/dashboard/lib/lang/cz_dashlet_limits.lng
index 3162128..078b13e 100644
--- a/interface/web/dashboard/lib/lang/cz_dashlet_limits.lng
+++ b/interface/web/dashboard/lib/lang/cz_dashlet_limits.lng
@@ -3,9 +3,9 @@
 $wb['of_txt'] = 'z';
 $wb['unlimited_txt'] = 'neomezeno';
 $wb['limit_maildomain_txt'] = 'Počet e-mailových domén';
-$wb['limit_mailbox_txt'] = 'Počet mailboxů';
-$wb['limit_mailalias_txt'] = 'Počet e-mailových aliasů';
-$wb['limit_mailaliasdomain_txt'] = 'Počet e-mailových doménových aliasů';
+$wb['limit_mailbox_txt'] = 'Počet e-mailových schránek';
+$wb['limit_mailalias_txt'] = 'Počet e-mailových přezdívek';
+$wb['limit_mailaliasdomain_txt'] = 'Počet e-mailových doménových přezdívek';
 $wb['limit_mailforward_txt'] = 'Počet e-mailových přesměrování';
 $wb['limit_mailcatchall_txt'] = 'Počet externě získávaných e-mailů';
 $wb['limit_mailrouting_txt'] = 'Počet e-mailových směrování';
@@ -16,7 +16,7 @@
 $wb['limit_spamfilter_policy_txt'] = 'Počet spamových politik';
 $wb['limit_cron_txt'] = 'Počet cron úloh';
 $wb['limit_web_domain_txt'] = 'Počet webových stránek';
-$wb['limit_web_aliasdomain_txt'] = 'Počet webových doménových aliasů';
+$wb['limit_web_aliasdomain_txt'] = 'Počet webových doménových přezdívek';
 $wb['limit_web_subdomain_txt'] = 'Počet webových subdomén';
 $wb['limit_ftp_user_txt'] = 'Počet FTP uživatelů';
 $wb['limit_dns_zone_txt'] = 'Počet DNS primárních zón';
@@ -29,3 +29,4 @@
 $wb['limit_mailmailinglist_txt'] = 'Počet e-mailových konferencí';
 $wb['limit_domain_txt'] = 'Počet domén';
 ?>
+
diff --git a/interface/web/dashboard/lib/lang/cz_dashlet_mailquota.lng b/interface/web/dashboard/lib/lang/cz_dashlet_mailquota.lng
index 742721c..19dc161 100644
--- a/interface/web/dashboard/lib/lang/cz_dashlet_mailquota.lng
+++ b/interface/web/dashboard/lib/lang/cz_dashlet_mailquota.lng
@@ -6,3 +6,4 @@
 $wb['quota_txt'] = 'Kvóta';
 $wb['no_email_accounts_txt'] = 'Nenalezeny žádné e-mailové účty.';
 ?>
+
diff --git a/interface/web/dashboard/lib/lang/cz_dashlet_modules.lng b/interface/web/dashboard/lib/lang/cz_dashlet_modules.lng
index 66275f1..be21791 100644
--- a/interface/web/dashboard/lib/lang/cz_dashlet_modules.lng
+++ b/interface/web/dashboard/lib/lang/cz_dashlet_modules.lng
@@ -1,3 +1,4 @@
 <?php
 $wb['available_modules_txt'] = 'Dostupné moduly';
 ?>
+
diff --git a/interface/web/dashboard/lib/lang/cz_dashlet_products.lng b/interface/web/dashboard/lib/lang/cz_dashlet_products.lng
index a69b61d..a4d0bf5 100644
--- a/interface/web/dashboard/lib/lang/cz_dashlet_products.lng
+++ b/interface/web/dashboard/lib/lang/cz_dashlet_products.lng
@@ -4,6 +4,7 @@
 $wb['price_txt'] = 'Price';
 $wb['next_payment_date_txt'] = 'Next Invoice';
 $wb['no_products_txt'] = 'No products found.';
-$wb['edit_txt'] = 'Edit';
+$wb['edit_txt'] = 'Editovat';
 $wb['cancellation_date_txt'] = 'Cancelled by';
 ?>
+
diff --git a/interface/web/dashboard/lib/lang/cz_dashlet_quota.lng b/interface/web/dashboard/lib/lang/cz_dashlet_quota.lng
index 0c2074a..0e3db11 100644
--- a/interface/web/dashboard/lib/lang/cz_dashlet_quota.lng
+++ b/interface/web/dashboard/lib/lang/cz_dashlet_quota.lng
@@ -6,3 +6,4 @@
 $wb['soft_txt'] = 'Kvóta pro upozornění';
 $wb['no_sites_txt'] = 'Nenalezeny žádné webové stránky.';
 ?>
+
diff --git a/interface/web/dashboard/lib/lang/cz_dashlet_shop.lng b/interface/web/dashboard/lib/lang/cz_dashlet_shop.lng
index 1e0b536..96b4ea0 100644
--- a/interface/web/dashboard/lib/lang/cz_dashlet_shop.lng
+++ b/interface/web/dashboard/lib/lang/cz_dashlet_shop.lng
@@ -6,3 +6,4 @@
 $wb['no_products_txt'] = 'No products found.';
 $wb['order_txt'] = 'Order';
 ?>
+
diff --git a/interface/web/dns/dns_wizard.php b/interface/web/dns/dns_wizard.php
index bacadf1..b6534a3 100644
--- a/interface/web/dns/dns_wizard.php
+++ b/interface/web/dns/dns_wizard.php
@@ -300,6 +300,7 @@
 	if($_POST['ns1'] != '') $tpl_content = str_replace('{NS1}', $_POST['ns1'], $tpl_content);
 	if($_POST['ns2'] != '') $tpl_content = str_replace('{NS2}', $_POST['ns2'], $tpl_content);
 	if($_POST['email'] != '') $tpl_content = str_replace('{EMAIL}', $_POST['email'], $tpl_content);
+	$enable_dnssec = (($_POST['dnssec'] == 'Y') ? 'Y' : 'N');
 	if(isset($_POST['dkim']) && preg_match('/^[\w\.\-\/]{2,255}\.[a-zA-Z0-9\-]{2,30}[\.]{0,1}$/', $_POST['domain'])) {
 		$sql = $app->db->queryOneRecord("SELECT dkim_public, dkim_selector FROM mail_domain WHERE domain = ? AND dkim = 'y' AND ".$app->tform->getAuthSQL('r'), $_POST['domain']);
 		$public_key = $sql['dkim_public'];
@@ -395,7 +396,8 @@
 			"active" => 'Y',
 			"xfer" => $xfer,
 			"also_notify" => $also_notify,
-			"update_acl" => $update_acl
+			"update_acl" => $update_acl,
+			"dnssec_wanted" => $enable_dnssec
 		);
 		$dns_soa_id = $app->db->datalogInsert('dns_soa', $insert_data, 'id');
 
diff --git a/interface/web/dns/form/dns_template.tform.php b/interface/web/dns/form/dns_template.tform.php
index 8c2b175..541eec4 100644
--- a/interface/web/dns/form/dns_template.tform.php
+++ b/interface/web/dns/form/dns_template.tform.php
@@ -74,7 +74,7 @@
 			'formtype' => 'CHECKBOXARRAY',
 			'default' => '',
 			'separator' => ',',
-			'value'  => array('DOMAIN' => 'Domain', 'IP' => 'IP Address', 'IPV6' => 'IPv6 Address', 'NS1' => 'NS 1', 'NS2' => 'NS 2', 'EMAIL' => 'Email', 'DKIM' => 'DKIM'),
+			'value'  => array('DOMAIN' => 'Domain', 'IP' => 'IP Address', 'IPV6' => 'IPv6 Address', 'NS1' => 'NS 1', 'NS2' => 'NS 2', 'EMAIL' => 'Email', 'DKIM' => 'DKIM', 'DNSSEC' => 'DNSSEC'),
 			'validators'    => array (  0 => array ('type'  => 'CUSTOM',
 					'class' => 'validate_dkim',
 					'function' => 'check_template',
diff --git a/interface/web/dns/lib/lang/cz.lng b/interface/web/dns/lib/lang/cz.lng
index f143b0b..392ef9b 100644
--- a/interface/web/dns/lib/lang/cz.lng
+++ b/interface/web/dns/lib/lang/cz.lng
@@ -15,8 +15,9 @@
 $wb['DNS TXT Record'] = 'DNS TXT záznam';
 $wb['DNS TXT'] = 'DNS TXT';
 $wb['DNS Wizard'] = 'DNS průvodce';
-$wb['Add DNS Zone'] = 'Přidat DNS zónu';
+$wb['Add DNS Zone'] = 'Vytvořit DNS zónu';
 $wb['Templates'] = 'Šablony DNS';
 $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 9790c23..2c84907 100644
--- a/interface/web/dns/lib/lang/cz_dns_a.lng
+++ b/interface/web/dns/lib/lang/cz_dns_a.lng
@@ -8,10 +8,11 @@
 $wb['active_txt'] = 'Aktivní';
 $wb['limit_dns_record_txt'] = 'Dosažen maximální počet DNS záznamů pro Váš účet.';
 $wb['no_zone_perm'] = 'Nemáte oprávnění přidat záznam do této zóny.';
-$wb['name_error_empty'] = 'Hostname je prázdný.';
-$wb['name_error_regex'] = 'Hostname má chybný formát.';
+$wb['name_error_empty'] = 'Název hostitele je prázdný.';
+$wb['name_error_regex'] = 'Název hostitele má chybný formát.';
 $wb['data_error_empty'] = 'IP adresa je prázdná';
-$wb['ip_error_wrong'] = 'IP adresa má chybný formát';
 $wb['data_error_duplicate'] = 'Duplikace A záznamu';
 $wb['ttl_range_error'] = 'Min. TTL doba je 60 sekund.';
+$wb['ip_error_wrong'] = 'IP-Address format invalid';
 ?>
+
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 a61265a..54f7894 100644
--- a/interface/web/dns/lib/lang/cz_dns_a_list.lng
+++ b/interface/web/dns/lib/lang/cz_dns_a_list.lng
@@ -8,8 +8,9 @@
 $wb['aux_txt'] = 'Priorita';
 $wb['ttl_txt'] = 'TTL';
 $wb['type_txt'] = 'Typ';
-$wb['add_new_record_txt'] = 'Přidat DNS A záznam';
+$wb['add_new_record_txt'] = 'Vytvořit DNS A záznam';
 $wb['page_txt'] = 'Stránka';
 $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 2fa5185..501c01b 100644
--- a/interface/web/dns/lib/lang/cz_dns_aaaa.lng
+++ b/interface/web/dns/lib/lang/cz_dns_aaaa.lng
@@ -8,9 +8,10 @@
 $wb['active_txt'] = 'Aktivní';
 $wb['limit_dns_record_txt'] = 'Dosažen maximální počet DNS záznamů pro Váš účet.';
 $wb['no_zone_perm'] = 'Nemáte oprávnění přidat záznam do této zóny.';
-$wb['name_error_empty'] = 'Hostname je prázdný.';
-$wb['name_error_regex'] = 'Hostname má chybný formát.';
+$wb['name_error_empty'] = 'Název hostitele je prázdný.';
+$wb['name_error_regex'] = 'Název hostitele má chybný formát.';
 $wb['data_error_empty'] = 'IP adresa je prázdná';
-$wb['ip_error_wrong'] = 'IP adresa má chybný formát';
 $wb['ttl_range_error'] = 'Min. TTL doba je 60 sekund.';
+$wb['ip_error_wrong'] = 'IP-Address format invalid';
 ?>
+
diff --git a/interface/web/dns/lib/lang/cz_dns_alias.lng b/interface/web/dns/lib/lang/cz_dns_alias.lng
index 356570e..ce63501 100644
--- a/interface/web/dns/lib/lang/cz_dns_alias.lng
+++ b/interface/web/dns/lib/lang/cz_dns_alias.lng
@@ -3,14 +3,15 @@
 $wb['zone_txt'] = 'Zóna';
 $wb['name_txt'] = 'Název hostitele';
 $wb['type_txt'] = 'Typ';
-$wb['data_txt'] = 'Cílový Hostname';
+$wb['data_txt'] = 'Cílový název hostitele';
 $wb['ttl_txt'] = 'TTL';
 $wb['active_txt'] = 'Aktivní';
 $wb['limit_dns_record_txt'] = 'Dosažen maximální počet DNS záznamů pro Váš účet.';
 $wb['no_zone_perm'] = 'Nemáte oprávnění přidat záznam do této zóny.';
-$wb['name_error_empty'] = 'Hostname je prázdný.';
-$wb['name_error_regex'] = 'Hostname má chybný formát.';
-$wb['data_error_empty'] = 'Cílový Hostname je prázdný';
-$wb['data_error_regex'] = 'Cílový Hostname má chybný formát';
+$wb['name_error_empty'] = 'Název hostitele je prázdný.';
+$wb['name_error_regex'] = 'Název hostitele má chybný formát.';
+$wb['data_error_empty'] = 'Cílový název hostitele je prázdný';
+$wb['data_error_regex'] = 'Cílový název hostitele má chybný formát';
 $wb['ttl_range_error'] = 'Min. TTL doba je 60 sekund.';
 ?>
+
diff --git a/interface/web/dns/lib/lang/cz_dns_cname.lng b/interface/web/dns/lib/lang/cz_dns_cname.lng
index 592abb7..bfddc93 100644
--- a/interface/web/dns/lib/lang/cz_dns_cname.lng
+++ b/interface/web/dns/lib/lang/cz_dns_cname.lng
@@ -3,15 +3,16 @@
 $wb['zone_txt'] = 'Zóna';
 $wb['name_txt'] = 'Název hostitele';
 $wb['type_txt'] = 'Typ';
-$wb['data_txt'] = 'Cílový hostname';
+$wb['data_txt'] = 'Cílový název hostitele';
 $wb['ttl_txt'] = 'TTL';
 $wb['active_txt'] = 'Aktivní';
 $wb['limit_dns_record_txt'] = 'Dosažen maximální počet DNS záznamů pro Váš účet.';
 $wb['no_zone_perm'] = 'Nemáte oprávnění přidat záznam do této zóny.';
-$wb['name_error_empty'] = 'Hostname je prázdný.';
-$wb['name_error_regex'] = 'Hostname má chybný formát.';
-$wb['data_error_empty'] = 'Cílový hostname je prázdný';
-$wb['data_error_regex'] = 'Cílový hostname má chybný formát';
+$wb['name_error_empty'] = 'Název hostitele je prázdný.';
+$wb['name_error_regex'] = 'Název hostitele má chybný formát.';
+$wb['data_error_empty'] = 'Cílový název hostitele je prázdný';
+$wb['data_error_regex'] = 'Cílový název hostitele má chybný formát';
 $wb['data_error_duplicate'] = 'Duplikace A záznamu nebo CNAME-záznamu';
 $wb['ttl_range_error'] = 'Min. TTL doba je 60 sekund.';
 ?>
+
diff --git a/interface/web/dns/lib/lang/cz_dns_dkim.lng b/interface/web/dns/lib/lang/cz_dns_dkim.lng
index b7a2b9b..b344f52 100644
--- a/interface/web/dns/lib/lang/cz_dns_dkim.lng
+++ b/interface/web/dns/lib/lang/cz_dns_dkim.lng
@@ -1,11 +1,12 @@
 <?php
-$wb['public_key_txt'] = 'Public-Key';
+$wb['public_key_txt'] = 'Veřejný klíč';
 $wb['ttl_txt'] = 'TTL';
-$wb['active_txt'] = 'Active';
-$wb['record_exists_txt'] = 'DNS-Record already exists';
-$wb['dkim_disabled_txt'] = 'DKIM disabled for this mail-domain';
-$wb['limit_dns_record_txt'] = 'The max. number of DNS records for your account is reached.';
-$wb['no_zone_perm'] = 'You do not have the permission to add a record to this DNS zone.';
-$wb['ttl_range_error'] = 'Min. TTL time is 60 seconds.';
-$wb['selector_txt'] = 'DKIM-Selector';
+$wb['active_txt'] = 'Aktivní';
+$wb['record_exists_txt'] = 'DNS záznam již existuje';
+$wb['dkim_disabled_txt'] = 'DKIM není aktivní pro tuto poštovní doménu';
+$wb['limit_dns_record_txt'] = 'Byl dosažen max. počet DNS záznamů pro váš účet.';
+$wb['no_zone_perm'] = 'Nemáte povolení k přidat záznam do této zóny DNS.';
+$wb['ttl_range_error'] = 'Min. TTL doba je 60 sekund.';
+$wb['selector_txt'] = 'DKIM selektor';
 ?>
+
diff --git a/interface/web/dns/lib/lang/cz_dns_dmarc.lng b/interface/web/dns/lib/lang/cz_dns_dmarc.lng
index cf78bb8..f6ec023 100644
--- a/interface/web/dns/lib/lang/cz_dns_dmarc.lng
+++ b/interface/web/dns/lib/lang/cz_dns_dmarc.lng
@@ -1,50 +1,51 @@
 <?php
-$wb['data_txt'] = 'DMARC Record';
-$wb['domain_txt'] = 'Domain';
-$wb['dmarc_policy_txt'] = 'Mail Receiver Policy';
-$wb['dmarc_policy_note_txt'] = 'How ISPs should handle messages that failed SPF or DKIM (DMARC).';
-$wb['dmarc_policy_none_txt'] = 'none';
-$wb['dmarc_policy_quarantine_txt'] = 'quarantine';
-$wb['dmarc_policy_reject_txt'] = 'reject';
-$wb['dmarc_rua_txt'] = 'Aggregate Data Reporting Address';
-$wb['dmarc_rua_note_txt'] = 'Email to receive reports from ISPs aboute messages which failed DMARC checks for the domain (separated by whitespaces).';
-$wb['dmarc_ruf_txt'] = 'Forensic Data Reporting Address';
-$wb['dmarc_ruf_note_txt'] = 'Email to receive sample messages that are failing DMARC checks for the domain (separated by whitespaces).';
-$wb['dmarc_fo_txt'] = 'Forensic reporting options';
-$wb['dmarc_fo0_txt'] = 'Generate reports if all underlying authentication mechanisms fail to produce a DMARC \'pass\' result.';
-$wb['dmarc_fo1_txt'] = 'Generate reports if any mechanisms fail.';
-$wb['dmarc_fod_txt'] = 'Generate report if DKIM signature failed to verify.';
-$wb['dmarc_fos_txt'] = 'Generate report if SPF failed.';
-$wb['dmarc_adkim_txt'] = 'DKIM identifier alignment';
-$wb['dmarc_adkim_note_txt'] = '\'strict\' requires exact matching between DKIM domain and email\'s from';
+$wb['data_txt'] = 'DMARC Záznam';
+$wb['domain_txt'] = 'Doména';
+$wb['dmarc_policy_txt'] = 'Politika pro doménu';
+$wb['dmarc_policy_note_txt'] = 'Jak se má zachovat server, když selže kontrola SPF nebo DKIM (DMARC).';
+$wb['dmarc_policy_none_txt'] = 'žádná';
+$wb['dmarc_policy_quarantine_txt'] = 'karanténa';
+$wb['dmarc_policy_reject_txt'] = 'odmítnout';
+$wb['dmarc_rua_txt'] = 'Reportovací e-mailová adresa';
+$wb['dmarc_rua_note_txt'] = 'Přijímat e-mailové zprávy od ISP(s), kde selhaly DMARC kontroly pro Vaši doménu, zaslat report na e-mail. (Při posílání na více e-mailových adres, oddělte mezerou).';
+$wb['dmarc_ruf_txt'] = 'Ladící e-mailová adresa';
+$wb['dmarc_ruf_note_txt'] = 'Když selže kontrola SPF nebo DKIM (DMARC) na serveru příjemce při kontrole Vaší e-mailové zprávy, zaslat report na e-mail. (Při posílání na více e-mailových adres, oddělte mezerou)';
+$wb['dmarc_fo_txt'] = 'Možnosti ladících zpráv';
+$wb['dmarc_fo0_txt'] = 'Zaslat zprávu, pokud všechny autentizační mechanismy selžou.';
+$wb['dmarc_fo1_txt'] = 'Zaslat zprávu, pokud jakýkoli z autentizačních mechanismů selže.';
+$wb['dmarc_fod_txt'] = 'Zaslat zprávu, pokud selže ověření podpisu DKIM.';
+$wb['dmarc_fos_txt'] = 'Zaslat zprávu, pokud SPF selhal.';
+$wb['dmarc_adkim_txt'] = 'Režim porovnávání domény pro DKIM';
+$wb['dmarc_adkim_note_txt'] = '\'strict\' vyžaduje přesnou shodu mezi DKIM doménou a e-maily od';
 $wb['dmarc_adkim_r_txt'] = 'relaxed';
 $wb['dmarc_adkim_s_txt'] = 'strict';
-$wb['dmarc_aspf_txt'] = 'SPF identifier alignment';
-$wb['dmarc_aspf_note_txt'] = '\'strict\' requires exact matching between SPF domain and email\'s from';
+$wb['dmarc_aspf_txt'] = 'Režim porovnávání domény pro SPF';
+$wb['dmarc_aspf_note_txt'] = '\'strict\' vyžaduje přesnou shodu mezi SPF doménou a e-maily od';
 $wb['dmarc_aspf_r_txt'] = 'relaxed';
 $wb['dmarc_aspf_s_txt'] = 'strict';
-$wb['dmarc_rf_txt'] = 'Report Format';
+$wb['dmarc_rf_txt'] = 'Formát hlášení';
 $wb['dmarc_rf_afrf_txt'] = 'Authentication Failure Reporting Format';
 $wb['dmarc_rf_iodef_txt'] = 'Incident Object Description Exchange Format';
-$wb['dmarc_pct_txt'] = 'Apply Policy to this Percentage';
-$wb['dmarc_pct_note_txt'] = '% (100 default). Messages in percent from the domain you want ISPs to check.';
-$wb['dmarc_ri_txt'] = 'Reporting Interval';
-$wb['dmarc_ri_note_txt'] = 'Seconds (default=86400). The time in seconds that aggregate reports should be generate (86400 represents 1 day).';
-$wb['dmarc_sp_txt'] = 'Subdomain Policy (Defaults to same as domain).';
-$wb['dmarc_sp_same_txt'] = 'same as domain';
-$wb['dmarc_sp_none_txt'] = 'none';
-$wb['dmarc_sp_quarantine_txt'] = 'quarantine';
-$wb['dmarc_sp_reject_txt'] = 'reject';
+$wb['dmarc_pct_txt'] = 'Procento ověření e-mailů';
+$wb['dmarc_pct_note_txt'] = '% (100 výchozí hodnota). Procento e-mailů, na něž má být uplatněno DMARC ověření';
+$wb['dmarc_ri_txt'] = 'Interval vytváření souhrnných zpráv';
+$wb['dmarc_ri_note_txt'] = 'Sekundy (výchozí hodnota = 86400). Čas v sekundách, kdy budou vytvářeny souhrnné zprávy (86400 sekund je 1 den).';
+$wb['dmarc_sp_txt'] = 'Politika pro poddomény (Výchozí hodnota je stejná jako u domény).';
+$wb['dmarc_sp_same_txt'] = 'stejné jako u domény';
+$wb['dmarc_sp_none_txt'] = 'žádná';
+$wb['dmarc_sp_quarantine_txt'] = 'karanténa';
+$wb['dmarc_sp_reject_txt'] = 'odmítnout';
 $wb['ttl_txt'] = 'TTL';
-$wb['active_txt'] = 'Active';
+$wb['active_txt'] = 'Aktivní';
 $wb['dmarc_policy_error_txt'] = 'Only policy \'none\' is allowed without DKIM-signed emails.';
-$wb['dmarc_no_dkim_txt'] = 'No active DKIM Record.';
-$wb['dmarc_no_spf_txt'] = 'No active SPF Record.';
+$wb['dmarc_no_dkim_txt'] = 'Není aktivní žádný DKIM záznam.';
+$wb['dmarc_no_spf_txt'] = 'Není aktivní žádný SPF záznam.';
 $wb['dmarc_more_spf_txt'] = 'More than one active SPF Record';
-$wb['dmarc_invalid_email_txt'] = 'Invalid Email';
+$wb['dmarc_invalid_email_txt'] = 'Neplatný e-mail';
 $wb['dmarc_empty_txt'] = 'DMARC Record empty - specify at least one option';
-$wb['record_exists_txt'] = 'DNS-Record already exists';
+$wb['record_exists_txt'] = 'DNS záznam již existuje';
 $wb['limit_dns_record_txt'] = 'The max. number of DNS records for your account is reached.';
 $wb['no_zone_perm'] = 'You do not have the permission to add a record to this DNS zone.';
-$wb['ttl_range_error'] = 'Min. TTL time is 60 seconds.';
+$wb['ttl_range_error'] = 'Min. TTL doba je 60 sekund.';
 ?>
+
diff --git a/interface/web/dns/lib/lang/cz_dns_ds.lng b/interface/web/dns/lib/lang/cz_dns_ds.lng
index 3f9b447..259dd8f 100644
--- a/interface/web/dns/lib/lang/cz_dns_ds.lng
+++ b/interface/web/dns/lib/lang/cz_dns_ds.lng
@@ -1,18 +1,18 @@
 <?php
-$wb["server_id_txt"] = 'Server';
-$wb["zone_txt"] = 'Zone';
-$wb["name_txt"] = 'Hostname';
-$wb["type_txt"] = 'type';
-$wb["data_txt"] = 'Data';
-$wb["ttl_txt"] = 'TTL';
-$wb["active_txt"] = 'Active';
-$wb["limit_dns_record_txt"] = 'The max. number of DNS records for your account is reached.';
-$wb["no_zone_perm"] = 'You do not have the permission to add a record to this DNS zone.';
-$wb["name_error_empty"] = 'The hostname is empty.';
-$wb["name_error_regex"] = 'The hostname has the wrong format.';
-$wb["data_error_empty"] = 'Text empty';
-$wb["data_error_regex"] = 'Text format invalid';
-$wb['ttl_range_error'] = 'Min. TTL time is 60 seconds.';
+$wb['server_id_txt'] = 'Server';
+$wb['zone_txt'] = 'Zone';
+$wb['name_txt'] = 'Název hostitele';
+$wb['type_txt'] = 'Typ';
+$wb['data_txt'] = 'Data';
+$wb['ttl_txt'] = 'TTL';
+$wb['active_txt'] = 'Aktivní';
+$wb['limit_dns_record_txt'] = 'The max. number of DNS records for your account is reached.';
+$wb['no_zone_perm'] = 'You do not have the permission to add a record to this DNS zone.';
+$wb['name_error_empty'] = 'Název hostitele je prázdný.';
+$wb['name_error_regex'] = 'Název hostitele má chybný formát.';
+$wb['data_error_empty'] = 'Text empty';
+$wb['data_error_regex'] = 'Text format invalid';
+$wb['ttl_range_error'] = 'Min. TTL doba je 60 sekund.';
 $wb['invalid_type_ds'] = 'DS-Record has a wrong format.';
-
 ?>
+
diff --git a/interface/web/dns/lib/lang/cz_dns_hinfo.lng b/interface/web/dns/lib/lang/cz_dns_hinfo.lng
index 6174cf4..3cc6eef 100644
--- a/interface/web/dns/lib/lang/cz_dns_hinfo.lng
+++ b/interface/web/dns/lib/lang/cz_dns_hinfo.lng
@@ -8,9 +8,10 @@
 $wb['active_txt'] = 'Aktivní';
 $wb['limit_dns_record_txt'] = 'Dosažen maximální počet DNS záznamů pro Váš účet.';
 $wb['no_zone_perm'] = 'Nemáte oprávnění přidat záznam do této zóny.';
-$wb['name_error_empty'] = 'Hostname je prázdný.';
-$wb['name_error_regex'] = 'Hostname má chybný formát.';
+$wb['name_error_empty'] = 'Název hostitele je prázdný.';
+$wb['name_error_regex'] = 'Název hostitele má chybný formát.';
 $wb['data_error_empty'] = 'Informace o hostovi je prázdná';
 $wb['data_error_regex'] = 'Informace o hostovi má chybný formát';
 $wb['ttl_range_error'] = 'Min. TTL doba je 60 sekund.';
 ?>
+
diff --git a/interface/web/dns/lib/lang/cz_dns_import.lng b/interface/web/dns/lib/lang/cz_dns_import.lng
index 9c03fa9..a21647c 100644
--- a/interface/web/dns/lib/lang/cz_dns_import.lng
+++ b/interface/web/dns/lib/lang/cz_dns_import.lng
@@ -14,3 +14,4 @@
 $wb['error_no_server_id'] = 'No server provided.';
 $wb['error_not_allowed_server_id'] = 'The selected server is not allowed for this account.';
 ?>
+
diff --git a/interface/web/dns/lib/lang/cz_dns_loc.lng b/interface/web/dns/lib/lang/cz_dns_loc.lng
index a2e3322..8948638 100644
--- a/interface/web/dns/lib/lang/cz_dns_loc.lng
+++ b/interface/web/dns/lib/lang/cz_dns_loc.lng
@@ -1,16 +1,17 @@
 <?php
-$wb["server_id_txt"] = 'Server';
-$wb["zone_txt"] = 'Zone';
-$wb["name_txt"] = 'Hostname';
-$wb["type_txt"] = 'type';
-$wb["data_txt"] = 'Data';
-$wb["ttl_txt"] = 'TTL';
-$wb["active_txt"] = 'Active';
-$wb["limit_dns_record_txt"] = 'The max. number of DNS records for your account is reached.';
-$wb["no_zone_perm"] = 'You do not have the permission to add a record to this DNS zone.';
-$wb["name_error_empty"] = 'The hostname is empty.';
-$wb["name_error_regex"] = 'The hostname has the wrong format.';
-$wb["data_error_empty"] = 'Text empty';
-$wb["data_error_regex"] = 'Text format invalid';
-$wb['ttl_range_error'] = 'Min. TTL time is 60 seconds.';
+$wb['server_id_txt'] = 'Server';
+$wb['zone_txt'] = 'Zone';
+$wb['name_txt'] = 'Název hostitele';
+$wb['type_txt'] = 'Typ';
+$wb['data_txt'] = 'Data';
+$wb['ttl_txt'] = 'TTL';
+$wb['active_txt'] = 'Aktivní';
+$wb['limit_dns_record_txt'] = 'The max. number of DNS records for your account is reached.';
+$wb['no_zone_perm'] = 'You do not have the permission to add a record to this DNS zone.';
+$wb['name_error_empty'] = 'Název hostitele je prázdný.';
+$wb['name_error_regex'] = 'Název hostitele má chybný formát.';
+$wb['data_error_empty'] = 'Text empty';
+$wb['data_error_regex'] = 'Text format invalid';
+$wb['ttl_range_error'] = 'Min. TTL doba je 60 sekund.';
 ?>
+
diff --git a/interface/web/dns/lib/lang/cz_dns_mx.lng b/interface/web/dns/lib/lang/cz_dns_mx.lng
index 4766642..52cab72 100644
--- a/interface/web/dns/lib/lang/cz_dns_mx.lng
+++ b/interface/web/dns/lib/lang/cz_dns_mx.lng
@@ -3,16 +3,17 @@
 $wb['zone_txt'] = 'Zóna';
 $wb['name_txt'] = 'Název hostitele';
 $wb['type_txt'] = 'Typ';
-$wb['data_txt'] = 'Hostname e-mailového serveru';
+$wb['data_txt'] = 'Název hostitele e-mailového serveru';
 $wb['aux_txt'] = 'Priorita';
 $wb['ttl_txt'] = 'TTL';
 $wb['active_txt'] = 'Aktivní';
 $wb['limit_dns_record_txt'] = 'Dosažen maximální počet DNS záznamů pro Váš účet.';
 $wb['no_zone_perm'] = 'Nemáte oprávnění přidat záznam do této zóny.';
-$wb['name_error_empty'] = 'Hostname je prázdný.';
-$wb['name_error_regex'] = 'Hostname má chybný formát.';
-$wb['data_error_empty'] = 'Hostname e-mailového serveru je prázdný';
-$wb['data_error_regex'] = 'Hostname e-mailového serveru má chybný formát';
+$wb['name_error_empty'] = 'Název hostitele je prázdný.';
+$wb['name_error_regex'] = 'Název hostitele má chybný formát.';
+$wb['data_error_empty'] = 'Název hostitele e-mailového serveru je prázdný';
+$wb['data_error_regex'] = 'Název hostitele e-mailového serveru má chybný formát';
 $wb['duplicate_mx_record_txt'] = 'Duplicitní MX záznam.';
 $wb['ttl_range_error'] = 'Min. TTL doba je 60 sekund.';
 ?>
+
diff --git a/interface/web/dns/lib/lang/cz_dns_ns.lng b/interface/web/dns/lib/lang/cz_dns_ns.lng
index 194bfd2..a359eb8 100644
--- a/interface/web/dns/lib/lang/cz_dns_ns.lng
+++ b/interface/web/dns/lib/lang/cz_dns_ns.lng
@@ -3,7 +3,7 @@
 $wb['zone_txt'] = 'Zóna';
 $wb['name_txt'] = 'Zóna';
 $wb['type_txt'] = 'Typ';
-$wb['data_txt'] = 'Hostname jmenného serveru';
+$wb['data_txt'] = 'Název hostitele jmenného serveru';
 $wb['ttl_txt'] = 'TTL';
 $wb['active_txt'] = 'Aktivní';
 $wb['limit_dns_record_txt'] = 'Dosažen maximální počet DNS záznamů pro Váš účet.';
@@ -14,3 +14,4 @@
 $wb['data_error_regex'] = 'Jmenný server má chybný formát';
 $wb['ttl_range_error'] = 'Min. TTL doba je 60 sekund.';
 ?>
+
diff --git a/interface/web/dns/lib/lang/cz_dns_ptr.lng b/interface/web/dns/lib/lang/cz_dns_ptr.lng
index c0a9a10..88c037b 100644
--- a/interface/web/dns/lib/lang/cz_dns_ptr.lng
+++ b/interface/web/dns/lib/lang/cz_dns_ptr.lng
@@ -14,3 +14,4 @@
 $wb['data_error_regex'] = 'Kanonického hostname má chybný formát';
 $wb['ttl_range_error'] = 'Min. TTL doba je 60 sekund.';
 ?>
+
diff --git a/interface/web/dns/lib/lang/cz_dns_rp.lng b/interface/web/dns/lib/lang/cz_dns_rp.lng
index 04c7ac0..d97695e 100644
--- a/interface/web/dns/lib/lang/cz_dns_rp.lng
+++ b/interface/web/dns/lib/lang/cz_dns_rp.lng
@@ -8,9 +8,10 @@
 $wb['active_txt'] = 'Aktivní';
 $wb['limit_dns_record_txt'] = 'Dosažen maximální počet DNS záznamů pro Váš účet.';
 $wb['no_zone_perm'] = 'Nemáte oprávnění přidat záznam do této zóny.';
-$wb['name_error_empty'] = 'Hostname je prázdný.';
-$wb['name_error_regex'] = 'Hostname má chybný formát.';
+$wb['name_error_empty'] = 'Název hostitele je prázdný.';
+$wb['name_error_regex'] = 'Název hostitele má chybný formát.';
 $wb['data_error_empty'] = 'Odpovědná osoba je prázdná';
 $wb['data_error_regex'] = 'Odpovědná osoba má chybný formát';
 $wb['ttl_range_error'] = 'Min. TTL doba je 60 sekund.';
 ?>
+
diff --git a/interface/web/dns/lib/lang/cz_dns_slave.lng b/interface/web/dns/lib/lang/cz_dns_slave.lng
index 16617f6..2870562 100644
--- a/interface/web/dns/lib/lang/cz_dns_slave.lng
+++ b/interface/web/dns/lib/lang/cz_dns_slave.lng
@@ -15,3 +15,4 @@
 $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_admin_list.lng b/interface/web/dns/lib/lang/cz_dns_slave_admin_list.lng
index eb00f29..ad20283 100644
--- a/interface/web/dns/lib/lang/cz_dns_slave_admin_list.lng
+++ b/interface/web/dns/lib/lang/cz_dns_slave_admin_list.lng
@@ -4,7 +4,8 @@
 $wb['server_id_txt'] = 'Server';
 $wb['origin_txt'] = 'Zóna';
 $wb['ns_txt'] = 'NS';
-$wb['add_new_record_txt'] = 'Přidat novou Sekundarní DNS-Zónu';
+$wb['add_new_record_txt'] = 'Vytvořit novou Sekundarní DNS-Zónu';
 $wb['eg_domain_tld'] = 'např. domena.cz';
 $wb['sys_groupid_txt'] = 'Klient';
 ?>
+
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 1e0a3d0..642615e 100644
--- a/interface/web/dns/lib/lang/cz_dns_slave_list.lng
+++ b/interface/web/dns/lib/lang/cz_dns_slave_list.lng
@@ -4,6 +4,7 @@
 $wb['server_id_txt'] = 'Server';
 $wb['origin_txt'] = 'Zóna';
 $wb['ns_txt'] = 'NS';
-$wb['add_new_record_txt'] = 'Přidat sekundární DNS zónu';
+$wb['add_new_record_txt'] = 'Vytvořit 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 0c1443b..44449aa 100644
--- a/interface/web/dns/lib/lang/cz_dns_soa.lng
+++ b/interface/web/dns/lib/lang/cz_dns_soa.lng
@@ -36,8 +36,9 @@
 $wb['ttl_range_error'] = 'Min. TTL čas je 60 sekund.';
 $wb['xfer_error_regex'] = 'Také oznámí: Prosím, použijte IP adresu.';
 $wb['dnssec_info_txt'] = 'DNSSEC DS-Data for registry';
-$wb['dnssec_wanted_txt'] = 'Sign zone (DNSSEC)';
+$wb['dnssec_wanted_txt'] = 'Podepsat zónu (DNSSEC)';
 $wb['dnssec_wanted_info'] = 'When disabling DNSSEC keys are not going to be deleted if DNSSEC was enabled before and keys already have been generated but the zone will no longer be delievered in signed format afterwards.';
 $wb['error_not_allowed_server_id'] = 'The selected server is not allowed for this account.';
 $wb['soa_cannot_be_changed_txt'] = 'Die Zone (SOA) kann nicht verändert werden. Bitte kontaktieren Sie ihren Administrator, um die Zone zu ändern.';
 ?>
+
diff --git a/interface/web/dns/lib/lang/cz_dns_soa_admin_list.lng b/interface/web/dns/lib/lang/cz_dns_soa_admin_list.lng
index 4a87f66..47a52e5 100644
--- a/interface/web/dns/lib/lang/cz_dns_soa_admin_list.lng
+++ b/interface/web/dns/lib/lang/cz_dns_soa_admin_list.lng
@@ -5,7 +5,8 @@
 $wb['origin_txt'] = 'Zóna';
 $wb['ns_txt'] = 'NS';
 $wb['mbox_txt'] = 'E-mail';
-$wb['add_new_record_wizard_txt'] = 'Přidat novou DNS zónu pomocí průvodce';
-$wb['add_new_record_txt'] = 'Přidat novou DNS zónu manuálně';
+$wb['add_new_record_wizard_txt'] = 'Vytvořit novou DNS zónu pomocí průvodce';
+$wb['add_new_record_txt'] = 'Vytvořit novou DNS zónu manuálně';
 $wb['sys_groupid_txt'] = 'Klient';
 ?>
+
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 e16d46e..0f9384b 100644
--- a/interface/web/dns/lib/lang/cz_dns_soa_list.lng
+++ b/interface/web/dns/lib/lang/cz_dns_soa_list.lng
@@ -5,7 +5,8 @@
 $wb['origin_txt'] = 'Zóna';
 $wb['ns_txt'] = 'NS';
 $wb['mbox_txt'] = 'E-mail';
-$wb['add_new_record_txt'] = 'Přidat DNS zónu (SOA záznam)';
-$wb['add_new_record_wizard_txt'] = 'Přidat DNS zónu (dle šablony)';
+$wb['add_new_record_txt'] = 'Vytvořit DNS zónu (SOA záznam)';
+$wb['add_new_record_wizard_txt'] = 'Vytvořit DNS zónu (dle šablony)';
 $wb['import_zone_file_txt'] = 'Import Zone File';
 ?>
+
diff --git a/interface/web/dns/lib/lang/cz_dns_spf.lng b/interface/web/dns/lib/lang/cz_dns_spf.lng
index df8d1fe..95229a8 100644
--- a/interface/web/dns/lib/lang/cz_dns_spf.lng
+++ b/interface/web/dns/lib/lang/cz_dns_spf.lng
@@ -1,25 +1,26 @@
 <?php
-$wb['data_txt'] = 'SPF-Record';
-$wb['spf_mechanism_txt'] = 'SPF Mechanism';
-$wb['spf_mechanism_pass_txt'] = 'Pass - allow mail from other senders';
-$wb['spf_mechanism_fail_txt'] = 'Fail - reject mail from other senders';
-$wb['spf_mechanism_softfail_txt'] = 'SoftFail - allow mail from other senders but mark the email';
-$wb['spf_mechanism_neutral_txt'] = 'Neutral - do nothing';
-$wb['spf_mx_txt'] = 'Allow servers listed as MX to send email for this domain';
-$wb['spf_a_txt'] = 'Allow current IP address of the domain to send email for this domain';
-$wb['spf_ip_txt'] = 'Additional IP addresses in CIDR format that deliver or relay mail for this domain';
-$wb['spf_ip_note_txt'] = '(Sepearate IPs with whitespaces)';
-$wb['spf_invalid_ip_txt'] = 'Invalid IP-address';
-$wb['spf_hostname_txt'] = 'Any other server hostname that may deliver or relay mail for this domain';
-$wb['spf_hostname_note_txt'] = '(Sepearate hostnames with whitespaces)';
-$wb['spf_invalid_hostname_txt'] = 'Invalid hostname';
-$wb['spf_domain_txt'] = 'Any domains that may deliver or relay mail for this domain';
-$wb['spf_domain_note_txt'] = '(Sepearate domains with whitespaces)';
-$wb['spf_invalid_domain_txt'] = 'Invalid domainname';
+$wb['data_txt'] = 'SPF Záznam';
+$wb['spf_mechanism_txt'] = 'SPF Mechanismus';
+$wb['spf_mechanism_pass_txt'] = 'Přijmout - přijímat e-mail od ostatních odesílatelů';
+$wb['spf_mechanism_fail_txt'] = 'Odmítat - odmítnout e-mail od ostatních odesílatelů';
+$wb['spf_mechanism_softfail_txt'] = 'Označit - přijímat e-mail od ostatních odesílatelů, ale označit e-mail';
+$wb['spf_mechanism_neutral_txt'] = 'Neutrální - nedělat nic';
+$wb['spf_mx_txt'] = 'Povolit serverům, které mají založený v DNS MX záznam, odesílat poštu pro tuto doménu';
+$wb['spf_a_txt'] = 'Povolit aktuální IP adresu tohoto DNS SPF záznamu odesílat poštu pro tuto doménu';
+$wb['spf_ip_txt'] = 'Další IP adresy ve formátu CIDR, které mohou odesílat nebo předávat poštu pro tuto doménu';
+$wb['spf_ip_note_txt'] = '(Samostatné IP adresy oddělte mezerou)';
+$wb['spf_invalid_ip_txt'] = 'Neplatná IP adresa';
+$wb['spf_hostname_txt'] = 'Jakýkoliv jiný název hostitele serveru, který může odesílat nebo předávat poštu pro tuto doménu';
+$wb['spf_hostname_note_txt'] = '(Samostatné názvy hostitelů oddělte mezerou)';
+$wb['spf_invalid_hostname_txt'] = 'Neplatný název hostitele';
+$wb['spf_domain_txt'] = 'Domény, které mohou odesílat nebo předávat poštu pro tuto doménu';
+$wb['spf_domain_note_txt'] = '(Samostatné domény oddělte mezerou)';
+$wb['spf_invalid_domain_txt'] = 'Neplatné doménové jméno';
 $wb['ttl_txt'] = 'TTL';
-$wb['active_txt'] = 'Active';
-$wb['record_exists_txt'] = 'DNS-Record already exists';
+$wb['active_txt'] = 'Aktivní';
+$wb['record_exists_txt'] = 'DNS záznam již existuje';
 $wb['limit_dns_record_txt'] = 'The max. number of DNS records for your account is reached.';
 $wb['no_zone_perm'] = 'You do not have the permission to add a record to this DNS zone.';
-$wb['ttl_range_error'] = 'Min. TTL time is 60 seconds.';
+$wb['ttl_range_error'] = 'Min. TTL doba je 60 sekund.';
 ?>
+
diff --git a/interface/web/dns/lib/lang/cz_dns_srv.lng b/interface/web/dns/lib/lang/cz_dns_srv.lng
index c863246..9f40199 100644
--- a/interface/web/dns/lib/lang/cz_dns_srv.lng
+++ b/interface/web/dns/lib/lang/cz_dns_srv.lng
@@ -10,11 +10,12 @@
 $wb['active_txt'] = 'Aktivní­';
 $wb['limit_dns_record_txt'] = 'Dosažen maximální­ počet DNS záznamú pro Váš Účet.';
 $wb['no_zone_perm'] = 'Nemáte oprávnění­ přidat záznam do této zóny.';
-$wb['name_error_empty'] = 'Hostname je prázdný.';
-$wb['name_error_regex'] = 'Hostname má chybný formát.';
+$wb['name_error_empty'] = 'Název hostitele je prázdný.';
+$wb['name_error_regex'] = 'Název hostitele má chybný formát.';
 $wb['data_error_empty'] = 'Záznam serveru je prázdný';
 $wb['data_error_regex'] = 'Záznam serveru má chybný formát';
 $wb['srv_error_regex'] = 'Neplatný formát záznamu serveru. Záznam serveru musí­ obsahovat 3 textové řetězce oddělené mezerami.';
 $wb['aux_txt'] = 'Priorita';
 $wb['ttl_range_error'] = 'Min. TTL doba je 60 sekund.';
 ?>
+
diff --git a/interface/web/dns/lib/lang/cz_dns_template.lng b/interface/web/dns/lib/lang/cz_dns_template.lng
index be4ac0e..82e207a 100644
--- a/interface/web/dns/lib/lang/cz_dns_template.lng
+++ b/interface/web/dns/lib/lang/cz_dns_template.lng
@@ -4,3 +4,4 @@
 $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 bdd6e18..5acac0e 100644
--- a/interface/web/dns/lib/lang/cz_dns_template_list.lng
+++ b/interface/web/dns/lib/lang/cz_dns_template_list.lng
@@ -2,5 +2,6 @@
 $wb['list_head_txt'] = 'DNS průvodce šablonou';
 $wb['visible_txt'] = 'Viditelný';
 $wb['name_txt'] = 'Název';
-$wb['add_new_record_txt'] = 'Přidat záznam';
+$wb['add_new_record_txt'] = 'Vytvořit záznam';
 ?>
+
diff --git a/interface/web/dns/lib/lang/cz_dns_tlsa.lng b/interface/web/dns/lib/lang/cz_dns_tlsa.lng
index dcfb3bf..3683d46 100644
--- a/interface/web/dns/lib/lang/cz_dns_tlsa.lng
+++ b/interface/web/dns/lib/lang/cz_dns_tlsa.lng
@@ -1,16 +1,17 @@
 <?php
-$wb["server_id_txt"] = 'Server';
-$wb["zone_txt"] = 'Zone';
+$wb['server_id_txt'] = 'Server';
+$wb['zone_txt'] = 'Zone';
 $wb['name_txt'] = 'Service-Descriptor';
-$wb["type_txt"] = 'type';
-$wb["data_txt"] = 'TLSA-Data';
-$wb["ttl_txt"] = 'TTL';
-$wb["active_txt"] = 'Active';
-$wb["limit_dns_record_txt"] = 'The max. number of DNS records for your account is reached.';
-$wb["no_zone_perm"] = 'You do not have the permission to add a record to this DNS zone.';
-$wb["name_error_empty"] = 'The hostname is empty.';
-$wb["name_error_regex"] = 'The hostname has the wrong format. Correct: _&lt;port&gt;._(tcp|udp).&lt;hostname&gt;';
-$wb["data_error_empty"] = 'TLSA-Data empty';
-$wb["data_error_regex"] = 'TLSA dataformat is wrong. Correct: n n n HASH';
-$wb['ttl_range_error'] = 'Min. TTL time is 60 seconds.';
-?>
\ No newline at end of file
+$wb['type_txt'] = 'Typ';
+$wb['data_txt'] = 'TLSA-Data';
+$wb['ttl_txt'] = 'TTL';
+$wb['active_txt'] = 'Aktivní';
+$wb['limit_dns_record_txt'] = 'The max. number of DNS records for your account is reached.';
+$wb['no_zone_perm'] = 'You do not have the permission to add a record to this DNS zone.';
+$wb['name_error_empty'] = 'Název hostitele je prázdný.';
+$wb['name_error_regex'] = 'The hostname has the wrong format. Correct: _&lt;port&gt;._(tcp|udp).&lt;hostname&gt;';
+$wb['data_error_empty'] = 'TLSA-Data empty';
+$wb['data_error_regex'] = 'TLSA dataformat is wrong. Correct: n n n HASH';
+$wb['ttl_range_error'] = 'Min. TTL doba je 60 sekund.';
+?>
+
diff --git a/interface/web/dns/lib/lang/cz_dns_txt.lng b/interface/web/dns/lib/lang/cz_dns_txt.lng
index 556e4dc..96349bb 100644
--- a/interface/web/dns/lib/lang/cz_dns_txt.lng
+++ b/interface/web/dns/lib/lang/cz_dns_txt.lng
@@ -17,3 +17,4 @@
 $wb['invalid_type_dmarc'] = 'Přímá editace DMARC záznamu zde není povolena. Editujte záznam pomocí tlačítka DMARC.';
 $wb['invalid_type_spf'] = 'Přímá editace SPF záznamu zde není povolena. Editujte záznam pomocí tlačítka SPF.';
 ?>
+
diff --git a/interface/web/dns/lib/lang/cz_dns_wizard.lng b/interface/web/dns/lib/lang/cz_dns_wizard.lng
index 0594b13..f45997a 100644
--- a/interface/web/dns/lib/lang/cz_dns_wizard.lng
+++ b/interface/web/dns/lib/lang/cz_dns_wizard.lng
@@ -41,3 +41,4 @@
 $wb['error_no_server_id'] = 'No server provided.';
 $wb['error_not_allowed_server_id'] = 'The selected server is not allowed for this account.';
 ?>
+
diff --git a/interface/web/dns/lib/lang/de_dns_wizard.lng b/interface/web/dns/lib/lang/de_dns_wizard.lng
index 1ae7382..7f664ca 100644
--- a/interface/web/dns/lib/lang/de_dns_wizard.lng
+++ b/interface/web/dns/lib/lang/de_dns_wizard.lng
@@ -10,6 +10,7 @@
 $wb['domain_txt'] = 'Domain';
 $wb['email_txt'] = 'E-Mail Adresse';
 $wb['dkim_txt'] = 'DKIM';
+$wb['dnssec_txt'] = 'Zone signieren (DNSSEC)';
 $wb['ns1_txt'] = 'NS 1';
 $wb['ns2_txt'] = 'NS 2';
 $wb['ip_txt'] = 'IP Adresse';
diff --git a/interface/web/dns/lib/lang/en_dns_wizard.lng b/interface/web/dns/lib/lang/en_dns_wizard.lng
index d264ff7..a2cec08 100644
--- a/interface/web/dns/lib/lang/en_dns_wizard.lng
+++ b/interface/web/dns/lib/lang/en_dns_wizard.lng
@@ -10,6 +10,7 @@
 $wb['domain_txt'] = 'Domain';
 $wb['email_txt'] = 'Email';
 $wb['dkim_txt'] = 'DKIM';
+$wb['dnssec_txt'] = 'Sign zone (DNSSEC)';
 $wb['ns1_txt'] = 'NS 1';
 $wb['ns2_txt'] = 'NS 2';
 $wb['ip_txt'] = 'IP Address';
diff --git a/interface/web/dns/templates/dns_wizard.htm b/interface/web/dns/templates/dns_wizard.htm
index 255a1f8..907dedc 100644
--- a/interface/web/dns/templates/dns_wizard.htm
+++ b/interface/web/dns/templates/dns_wizard.htm
@@ -89,10 +89,16 @@
                     <div class="col-sm-9"><input type="text" name="email" id="email" value="{tmpl_var name='email'}" class="form-control" /></div></div>
             </tmpl_if>
             <tmpl_if name="DKIM_VISIBLE">
-		    <label for="dkim" class="col-sm-3 control-label">{tmpl_var name='dkim_txt'}</label>
-                    &nbsp;&nbsp;<input type="checkbox" disabled readonly checked><input name="dkim" type="hidden" maxlength="255" type="text"/>
+				<div class="form-group">
+					<label for="dkim" class="col-sm-3 control-label">{tmpl_var name='dkim_txt'}</label>
+                    <div class="col-sm-9"><input type="checkbox" disabled readonly checked><input name="dkim" type="hidden" maxlength="255" type="text"/></div></div>
             </tmpl_if>
-
+            <tmpl_if name="DNSSEC_VISIBLE">
+				<div class="form-group">
+					<label for="dkim" class="col-sm-3 control-label">{tmpl_var name='dnssec_txt'}</label>
+                    <div class="col-sm-9"><input type="checkbox" name="dnssec" value="Y"></div></div>
+            </tmpl_if>
+			
         
             
         <input type="hidden" name="create" value="0" />
diff --git a/interface/web/help/lib/lang/cz.lng b/interface/web/help/lib/lang/cz.lng
index f1b8337..72581c9 100644
--- a/interface/web/help/lib/lang/cz.lng
+++ b/interface/web/help/lib/lang/cz.lng
@@ -10,5 +10,6 @@
 $wb['FAQ Sections'] = 'Sekce FAQ - Často kladené dotazy';
 $wb['Manage Sections'] = 'Spravovat sekce';
 $wb['Manage Questions'] = 'Spravovat dotazy';
-$wb['Add a Question & Answer Pair'] = 'Přidat otázku a odpověď';
+$wb['Add a Question & Answer Pair'] = 'Vytvořit 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 73feee6..c71ddfa 100644
--- a/interface/web/help/lib/lang/cz_faq_form.lng
+++ b/interface/web/help/lib/lang/cz_faq_form.lng
@@ -4,3 +4,4 @@
 $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 a948844..d5950c6 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
@@ -5,5 +5,6 @@
 $wb['faq_edit_txt'] = 'Upravit';
 $wb['faq_sections_txt'] = 'Sekce';
 $wb['faq_faq_questions_txt'] = 'Často kladené dotazy';
-$wb['faq_new_question_txt'] = 'Přidat nový dotaz';
+$wb['faq_new_question_txt'] = 'Vytvořit nový dotaz';
 ?>
+
diff --git a/interface/web/help/lib/lang/cz_faq_sections_form.lng b/interface/web/help/lib/lang/cz_faq_sections_form.lng
index f9de704..70403c3 100644
--- a/interface/web/help/lib/lang/cz_faq_sections_form.lng
+++ b/interface/web/help/lib/lang/cz_faq_sections_form.lng
@@ -1,3 +1,4 @@
 <?php
 $wb['faq_section_name_txt'] = 'Název sekce';
 ?>
+
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 923d9b8..0dcf23b 100644
--- a/interface/web/help/lib/lang/cz_help_faq_list.lng
+++ b/interface/web/help/lib/lang/cz_help_faq_list.lng
@@ -1,3 +1,4 @@
 <?php
 $wb['edit_txt'] = 'Upravit';
 ?>
+
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 fbaf4ad..42b1c67 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
@@ -4,5 +4,6 @@
 $wb['faq_edit_txt'] = 'Upravit';
 $wb['faq_sections_txt'] = 'Sekce';
 $wb['faq_faq_sections_txt'] = 'Sekce FAQ - Často kladené dotazy';
-$wb['faq_new_section_txt'] = 'Přidat novou sekci';
+$wb['faq_new_section_txt'] = 'Vytvořit 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 b935547..1d06da3 100644
--- a/interface/web/help/lib/lang/cz_support_message.lng
+++ b/interface/web/help/lib/lang/cz_support_message.lng
@@ -13,3 +13,4 @@
 $wb['support_request_sent_txt'] = 'Your support request has been sent. Please don\'t reply to this email.';
 $wb['recipient_or_sender_email_address_not_valid_txt'] = 'Zprávu nelze odeslat, protože e-mailová adresa příjemce a/nebo odesílatele není platná.';
 ?>
+
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 23f8058..f31449c 100644
--- a/interface/web/help/lib/lang/cz_support_message_list.lng
+++ b/interface/web/help/lib/lang/cz_support_message_list.lng
@@ -5,3 +5,4 @@
 $wb['add_new_record_txt'] = 'Vytvořit zprávu pro podporu';
 $wb['date_txt'] = 'Datum';
 ?>
+
diff --git a/interface/web/index.php b/interface/web/index.php
index 6340467..c8d836d 100644
--- a/interface/web/index.php
+++ b/interface/web/index.php
@@ -41,6 +41,7 @@
 
 $app->uses('tpl');
 $app->tpl->newTemplate('main.tpl.htm');
+$app->tpl->setVar('startpage', isset($_SESSION['s']['module']['startpage']) ? $_SESSION['s']['module']['startpage'] : '');
 $app->tpl->setVar('logged_in', ($_SESSION['s']['user']['active'] != 1 ? 'n' : 'y'));
 
 // tab change warning?
diff --git a/interface/web/js/select2/select2.min.js b/interface/web/js/select2/select2.min.js
index b56419e..33f6602 100644
--- a/interface/web/js/select2/select2.min.js
+++ b/interface/web/js/select2/select2.min.js
@@ -18,6 +18,6 @@
 either express or implied. See the Apache License and the GPL License for the specific language governing
 permissions and limitations under the Apache License and the GPL License.
 */
-!function(a){"undefined"==typeof a.fn.each2&&a.extend(a.fn,{each2:function(b){for(var c=a([0]),d=-1,e=this.length;++d<e&&(c.context=c[0]=this[d])&&b.call(c[0],d,c)!==!1;);return this}})}(jQuery),function(a,b){"use strict";function n(b){var c=a(document.createTextNode(""));b.before(c),c.before(b),c.remove()}function o(a){function b(a){return m[a]||a}return a.replace(/[^\u0000-\u007E]/g,b)}function p(a,b){for(var c=0,d=b.length;d>c;c+=1)if(r(a,b[c]))return c;return-1}function q(){var b=a(l);b.appendTo(document.body);var c={width:b.width()-b[0].clientWidth,height:b.height()-b[0].clientHeight};return b.remove(),c}function r(a,c){return a===c?!0:a===b||c===b?!1:null===a||null===c?!1:a.constructor===String?a+""==c+"":c.constructor===String?c+""==a+"":!1}function s(a,b,c){var d,e,f;if(null===a||a.length<1)return[];for(d=a.split(b),e=0,f=d.length;f>e;e+=1)d[e]=c(d[e]);return d}function t(a){return a.outerWidth(!1)-a.width()}function u(c){var d="keyup-change-value";c.on("keydown",function(){a.data(c,d)===b&&a.data(c,d,c.val())}),c.on("keyup",function(){var e=a.data(c,d);e!==b&&c.val()!==e&&(a.removeData(c,d),c.trigger("keyup-change"))})}function v(c){c.on("mousemove",function(c){var d=h;(d===b||d.x!==c.pageX||d.y!==c.pageY)&&a(c.target).trigger("mousemove-filtered",c)})}function w(a,c,d){d=d||b;var e;return function(){var b=arguments;window.clearTimeout(e),e=window.setTimeout(function(){c.apply(d,b)},a)}}function x(a,b){var c=w(a,function(a){b.trigger("scroll-debounced",a)});b.on("scroll",function(a){p(a.target,b.get())>=0&&c(a)})}function y(a){a[0]!==document.activeElement&&window.setTimeout(function(){var d,b=a[0],c=a.val().length;a.focus();var e=b.offsetWidth>0||b.offsetHeight>0;e&&b===document.activeElement&&(b.setSelectionRange?b.setSelectionRange(c,c):b.createTextRange&&(d=b.createTextRange(),d.collapse(!1),d.select()))},0)}function z(b){b=a(b)[0];var c=0,d=0;if("selectionStart"in b)c=b.selectionStart,d=b.selectionEnd-c;else if("selection"in document){b.focus();var e=document.selection.createRange();d=document.selection.createRange().text.length,e.moveStart("character",-b.value.length),c=e.text.length-d}return{offset:c,length:d}}function A(a){a.preventDefault(),a.stopPropagation()}function B(a){a.preventDefault(),a.stopImmediatePropagation()}function C(b){if(!g){var c=b[0].currentStyle||window.getComputedStyle(b[0],null);g=a(document.createElement("div")).css({position:"absolute",left:"-10000px",top:"-10000px",display:"none",fontSize:c.fontSize,fontFamily:c.fontFamily,fontStyle:c.fontStyle,fontWeight:c.fontWeight,letterSpacing:c.letterSpacing,textTransform:c.textTransform,whiteSpace:"nowrap"}),g.attr("class","select2-sizer"),a(document.body).append(g)}return g.text(b.val()),g.width()}function D(b,c,d){var e,g,f=[];e=a.trim(b.attr("class")),e&&(e=""+e,a(e.split(/\s+/)).each2(function(){0===this.indexOf("select2-")&&f.push(this)})),e=a.trim(c.attr("class")),e&&(e=""+e,a(e.split(/\s+/)).each2(function(){0!==this.indexOf("select2-")&&(g=d(this),g&&f.push(g))})),b.attr("class",f.join(" "))}function E(a,b,c,d){var e=o(a.toUpperCase()).indexOf(o(b.toUpperCase())),f=b.length;return 0>e?(c.push(d(a)),void 0):(c.push(d(a.substring(0,e))),c.push("<span class='select2-match'>"),c.push(d(a.substring(e,e+f))),c.push("</span>"),c.push(d(a.substring(e+f,a.length))),void 0)}function F(a){var b={"\\":"&#92;","&":"&amp;","<":"&lt;",">":"&gt;",'"':"&quot;","'":"&#39;","/":"&#47;"};return String(a).replace(/[&<>"'\/\\]/g,function(a){return b[a]})}function G(c){var d,e=null,f=c.quietMillis||100,g=c.url,h=this;return function(i){window.clearTimeout(d),d=window.setTimeout(function(){var d=c.data,f=g,j=c.transport||a.fn.select2.ajaxDefaults.transport,k={type:c.type||"GET",cache:c.cache||!1,jsonpCallback:c.jsonpCallback||b,dataType:c.dataType||"json"},l=a.extend({},a.fn.select2.ajaxDefaults.params,k);d=d?d.call(h,i.term,i.page,i.context):null,f="function"==typeof f?f.call(h,i.term,i.page,i.context):f,e&&"function"==typeof e.abort&&e.abort(),c.params&&(a.isFunction(c.params)?a.extend(l,c.params.call(h)):a.extend(l,c.params)),a.extend(l,{url:f,dataType:c.dataType,data:d,success:function(a){var b=c.results(a,i.page,i);i.callback(b)},error:function(a,b,c){var d={hasError:!0,jqXHR:a,textStatus:b,errorThrown:c};i.callback(d)}}),e=j.call(h,l)},f)}}function H(b){var d,e,c=b,f=function(a){return""+a.text};a.isArray(c)&&(e=c,c={results:e}),a.isFunction(c)===!1&&(e=c,c=function(){return e});var g=c();return g.text&&(f=g.text,a.isFunction(f)||(d=g.text,f=function(a){return a[d]})),function(b){var g,d=b.term,e={results:[]};return""===d?(b.callback(c()),void 0):(g=function(c,e){var h,i;if(c=c[0],c.children){h={};for(i in c)c.hasOwnProperty(i)&&(h[i]=c[i]);h.children=[],a(c.children).each2(function(a,b){g(b,h.children)}),(h.children.length||b.matcher(d,f(h),c))&&e.push(h)}else b.matcher(d,f(c),c)&&e.push(c)},a(c().results).each2(function(a,b){g(b,e.results)}),b.callback(e),void 0)}}function I(c){var d=a.isFunction(c);return function(e){var f=e.term,g={results:[]},h=d?c(e):c;a.isArray(h)&&(a(h).each(function(){var a=this.text!==b,c=a?this.text:this;(""===f||e.matcher(f,c))&&g.results.push(a?this:{id:this,text:this})}),e.callback(g))}}function J(b,c){if(a.isFunction(b))return!0;if(!b)return!1;if("string"==typeof b)return!0;throw new Error(c+" must be a string, function, or falsy value")}function K(b,c){if(a.isFunction(b)){var d=Array.prototype.slice.call(arguments,2);return b.apply(c,d)}return b}function L(b){var c=0;return a.each(b,function(a,b){b.children?c+=L(b.children):c++}),c}function M(a,c,d,e){var h,i,j,k,l,f=a,g=!1;if(!e.createSearchChoice||!e.tokenSeparators||e.tokenSeparators.length<1)return b;for(;;){for(i=-1,j=0,k=e.tokenSeparators.length;k>j&&(l=e.tokenSeparators[j],i=a.indexOf(l),!(i>=0));j++);if(0>i)break;if(h=a.substring(0,i),a=a.substring(i+l.length),h.length>0&&(h=e.createSearchChoice.call(this,h,c),h!==b&&null!==h&&e.id(h)!==b&&null!==e.id(h))){for(g=!1,j=0,k=c.length;k>j;j++)if(r(e.id(h),e.id(c[j]))){g=!0;break}g||d(h)}}return f!==a?a:void 0}function N(){var b=this;a.each(arguments,function(a,c){b[c].remove(),b[c]=null})}function O(b,c){var d=function(){};return d.prototype=new b,d.prototype.constructor=d,d.prototype.parent=b.prototype,d.prototype=a.extend(d.prototype,c),d}if(window.Select2===b){var c,d,e,f,g,i,j,h={x:0,y:0},k={TAB:9,ENTER:13,ESC:27,SPACE:32,LEFT:37,UP:38,RIGHT:39,DOWN:40,SHIFT:16,CTRL:17,ALT:18,PAGE_UP:33,PAGE_DOWN:34,HOME:36,END:35,BACKSPACE:8,DELETE:46,isArrow:function(a){switch(a=a.which?a.which:a){case k.LEFT:case k.RIGHT:case k.UP:case k.DOWN:return!0}return!1},isControl:function(a){var b=a.which;switch(b){case k.SHIFT:case k.CTRL:case k.ALT:return!0}return a.metaKey?!0:!1},isFunctionKey:function(a){return a=a.which?a.which:a,a>=112&&123>=a}},l="<div class='select2-measure-scrollbar'></div>",m={"\u24b6":"A","\uff21":"A","\xc0":"A","\xc1":"A","\xc2":"A","\u1ea6":"A","\u1ea4":"A","\u1eaa":"A","\u1ea8":"A","\xc3":"A","\u0100":"A","\u0102":"A","\u1eb0":"A","\u1eae":"A","\u1eb4":"A","\u1eb2":"A","\u0226":"A","\u01e0":"A","\xc4":"A","\u01de":"A","\u1ea2":"A","\xc5":"A","\u01fa":"A","\u01cd":"A","\u0200":"A","\u0202":"A","\u1ea0":"A","\u1eac":"A","\u1eb6":"A","\u1e00":"A","\u0104":"A","\u023a":"A","\u2c6f":"A","\ua732":"AA","\xc6":"AE","\u01fc":"AE","\u01e2":"AE","\ua734":"AO","\ua736":"AU","\ua738":"AV","\ua73a":"AV","\ua73c":"AY","\u24b7":"B","\uff22":"B","\u1e02":"B","\u1e04":"B","\u1e06":"B","\u0243":"B","\u0182":"B","\u0181":"B","\u24b8":"C","\uff23":"C","\u0106":"C","\u0108":"C","\u010a":"C","\u010c":"C","\xc7":"C","\u1e08":"C","\u0187":"C","\u023b":"C","\ua73e":"C","\u24b9":"D","\uff24":"D","\u1e0a":"D","\u010e":"D","\u1e0c":"D","\u1e10":"D","\u1e12":"D","\u1e0e":"D","\u0110":"D","\u018b":"D","\u018a":"D","\u0189":"D","\ua779":"D","\u01f1":"DZ","\u01c4":"DZ","\u01f2":"Dz","\u01c5":"Dz","\u24ba":"E","\uff25":"E","\xc8":"E","\xc9":"E","\xca":"E","\u1ec0":"E","\u1ebe":"E","\u1ec4":"E","\u1ec2":"E","\u1ebc":"E","\u0112":"E","\u1e14":"E","\u1e16":"E","\u0114":"E","\u0116":"E","\xcb":"E","\u1eba":"E","\u011a":"E","\u0204":"E","\u0206":"E","\u1eb8":"E","\u1ec6":"E","\u0228":"E","\u1e1c":"E","\u0118":"E","\u1e18":"E","\u1e1a":"E","\u0190":"E","\u018e":"E","\u24bb":"F","\uff26":"F","\u1e1e":"F","\u0191":"F","\ua77b":"F","\u24bc":"G","\uff27":"G","\u01f4":"G","\u011c":"G","\u1e20":"G","\u011e":"G","\u0120":"G","\u01e6":"G","\u0122":"G","\u01e4":"G","\u0193":"G","\ua7a0":"G","\ua77d":"G","\ua77e":"G","\u24bd":"H","\uff28":"H","\u0124":"H","\u1e22":"H","\u1e26":"H","\u021e":"H","\u1e24":"H","\u1e28":"H","\u1e2a":"H","\u0126":"H","\u2c67":"H","\u2c75":"H","\ua78d":"H","\u24be":"I","\uff29":"I","\xcc":"I","\xcd":"I","\xce":"I","\u0128":"I","\u012a":"I","\u012c":"I","\u0130":"I","\xcf":"I","\u1e2e":"I","\u1ec8":"I","\u01cf":"I","\u0208":"I","\u020a":"I","\u1eca":"I","\u012e":"I","\u1e2c":"I","\u0197":"I","\u24bf":"J","\uff2a":"J","\u0134":"J","\u0248":"J","\u24c0":"K","\uff2b":"K","\u1e30":"K","\u01e8":"K","\u1e32":"K","\u0136":"K","\u1e34":"K","\u0198":"K","\u2c69":"K","\ua740":"K","\ua742":"K","\ua744":"K","\ua7a2":"K","\u24c1":"L","\uff2c":"L","\u013f":"L","\u0139":"L","\u013d":"L","\u1e36":"L","\u1e38":"L","\u013b":"L","\u1e3c":"L","\u1e3a":"L","\u0141":"L","\u023d":"L","\u2c62":"L","\u2c60":"L","\ua748":"L","\ua746":"L","\ua780":"L","\u01c7":"LJ","\u01c8":"Lj","\u24c2":"M","\uff2d":"M","\u1e3e":"M","\u1e40":"M","\u1e42":"M","\u2c6e":"M","\u019c":"M","\u24c3":"N","\uff2e":"N","\u01f8":"N","\u0143":"N","\xd1":"N","\u1e44":"N","\u0147":"N","\u1e46":"N","\u0145":"N","\u1e4a":"N","\u1e48":"N","\u0220":"N","\u019d":"N","\ua790":"N","\ua7a4":"N","\u01ca":"NJ","\u01cb":"Nj","\u24c4":"O","\uff2f":"O","\xd2":"O","\xd3":"O","\xd4":"O","\u1ed2":"O","\u1ed0":"O","\u1ed6":"O","\u1ed4":"O","\xd5":"O","\u1e4c":"O","\u022c":"O","\u1e4e":"O","\u014c":"O","\u1e50":"O","\u1e52":"O","\u014e":"O","\u022e":"O","\u0230":"O","\xd6":"O","\u022a":"O","\u1ece":"O","\u0150":"O","\u01d1":"O","\u020c":"O","\u020e":"O","\u01a0":"O","\u1edc":"O","\u1eda":"O","\u1ee0":"O","\u1ede":"O","\u1ee2":"O","\u1ecc":"O","\u1ed8":"O","\u01ea":"O","\u01ec":"O","\xd8":"O","\u01fe":"O","\u0186":"O","\u019f":"O","\ua74a":"O","\ua74c":"O","\u01a2":"OI","\ua74e":"OO","\u0222":"OU","\u24c5":"P","\uff30":"P","\u1e54":"P","\u1e56":"P","\u01a4":"P","\u2c63":"P","\ua750":"P","\ua752":"P","\ua754":"P","\u24c6":"Q","\uff31":"Q","\ua756":"Q","\ua758":"Q","\u024a":"Q","\u24c7":"R","\uff32":"R","\u0154":"R","\u1e58":"R","\u0158":"R","\u0210":"R","\u0212":"R","\u1e5a":"R","\u1e5c":"R","\u0156":"R","\u1e5e":"R","\u024c":"R","\u2c64":"R","\ua75a":"R","\ua7a6":"R","\ua782":"R","\u24c8":"S","\uff33":"S","\u1e9e":"S","\u015a":"S","\u1e64":"S","\u015c":"S","\u1e60":"S","\u0160":"S","\u1e66":"S","\u1e62":"S","\u1e68":"S","\u0218":"S","\u015e":"S","\u2c7e":"S","\ua7a8":"S","\ua784":"S","\u24c9":"T","\uff34":"T","\u1e6a":"T","\u0164":"T","\u1e6c":"T","\u021a":"T","\u0162":"T","\u1e70":"T","\u1e6e":"T","\u0166":"T","\u01ac":"T","\u01ae":"T","\u023e":"T","\ua786":"T","\ua728":"TZ","\u24ca":"U","\uff35":"U","\xd9":"U","\xda":"U","\xdb":"U","\u0168":"U","\u1e78":"U","\u016a":"U","\u1e7a":"U","\u016c":"U","\xdc":"U","\u01db":"U","\u01d7":"U","\u01d5":"U","\u01d9":"U","\u1ee6":"U","\u016e":"U","\u0170":"U","\u01d3":"U","\u0214":"U","\u0216":"U","\u01af":"U","\u1eea":"U","\u1ee8":"U","\u1eee":"U","\u1eec":"U","\u1ef0":"U","\u1ee4":"U","\u1e72":"U","\u0172":"U","\u1e76":"U","\u1e74":"U","\u0244":"U","\u24cb":"V","\uff36":"V","\u1e7c":"V","\u1e7e":"V","\u01b2":"V","\ua75e":"V","\u0245":"V","\ua760":"VY","\u24cc":"W","\uff37":"W","\u1e80":"W","\u1e82":"W","\u0174":"W","\u1e86":"W","\u1e84":"W","\u1e88":"W","\u2c72":"W","\u24cd":"X","\uff38":"X","\u1e8a":"X","\u1e8c":"X","\u24ce":"Y","\uff39":"Y","\u1ef2":"Y","\xdd":"Y","\u0176":"Y","\u1ef8":"Y","\u0232":"Y","\u1e8e":"Y","\u0178":"Y","\u1ef6":"Y","\u1ef4":"Y","\u01b3":"Y","\u024e":"Y","\u1efe":"Y","\u24cf":"Z","\uff3a":"Z","\u0179":"Z","\u1e90":"Z","\u017b":"Z","\u017d":"Z","\u1e92":"Z","\u1e94":"Z","\u01b5":"Z","\u0224":"Z","\u2c7f":"Z","\u2c6b":"Z","\ua762":"Z","\u24d0":"a","\uff41":"a","\u1e9a":"a","\xe0":"a","\xe1":"a","\xe2":"a","\u1ea7":"a","\u1ea5":"a","\u1eab":"a","\u1ea9":"a","\xe3":"a","\u0101":"a","\u0103":"a","\u1eb1":"a","\u1eaf":"a","\u1eb5":"a","\u1eb3":"a","\u0227":"a","\u01e1":"a","\xe4":"a","\u01df":"a","\u1ea3":"a","\xe5":"a","\u01fb":"a","\u01ce":"a","\u0201":"a","\u0203":"a","\u1ea1":"a","\u1ead":"a","\u1eb7":"a","\u1e01":"a","\u0105":"a","\u2c65":"a","\u0250":"a","\ua733":"aa","\xe6":"ae","\u01fd":"ae","\u01e3":"ae","\ua735":"ao","\ua737":"au","\ua739":"av","\ua73b":"av","\ua73d":"ay","\u24d1":"b","\uff42":"b","\u1e03":"b","\u1e05":"b","\u1e07":"b","\u0180":"b","\u0183":"b","\u0253":"b","\u24d2":"c","\uff43":"c","\u0107":"c","\u0109":"c","\u010b":"c","\u010d":"c","\xe7":"c","\u1e09":"c","\u0188":"c","\u023c":"c","\ua73f":"c","\u2184":"c","\u24d3":"d","\uff44":"d","\u1e0b":"d","\u010f":"d","\u1e0d":"d","\u1e11":"d","\u1e13":"d","\u1e0f":"d","\u0111":"d","\u018c":"d","\u0256":"d","\u0257":"d","\ua77a":"d","\u01f3":"dz","\u01c6":"dz","\u24d4":"e","\uff45":"e","\xe8":"e","\xe9":"e","\xea":"e","\u1ec1":"e","\u1ebf":"e","\u1ec5":"e","\u1ec3":"e","\u1ebd":"e","\u0113":"e","\u1e15":"e","\u1e17":"e","\u0115":"e","\u0117":"e","\xeb":"e","\u1ebb":"e","\u011b":"e","\u0205":"e","\u0207":"e","\u1eb9":"e","\u1ec7":"e","\u0229":"e","\u1e1d":"e","\u0119":"e","\u1e19":"e","\u1e1b":"e","\u0247":"e","\u025b":"e","\u01dd":"e","\u24d5":"f","\uff46":"f","\u1e1f":"f","\u0192":"f","\ua77c":"f","\u24d6":"g","\uff47":"g","\u01f5":"g","\u011d":"g","\u1e21":"g","\u011f":"g","\u0121":"g","\u01e7":"g","\u0123":"g","\u01e5":"g","\u0260":"g","\ua7a1":"g","\u1d79":"g","\ua77f":"g","\u24d7":"h","\uff48":"h","\u0125":"h","\u1e23":"h","\u1e27":"h","\u021f":"h","\u1e25":"h","\u1e29":"h","\u1e2b":"h","\u1e96":"h","\u0127":"h","\u2c68":"h","\u2c76":"h","\u0265":"h","\u0195":"hv","\u24d8":"i","\uff49":"i","\xec":"i","\xed":"i","\xee":"i","\u0129":"i","\u012b":"i","\u012d":"i","\xef":"i","\u1e2f":"i","\u1ec9":"i","\u01d0":"i","\u0209":"i","\u020b":"i","\u1ecb":"i","\u012f":"i","\u1e2d":"i","\u0268":"i","\u0131":"i","\u24d9":"j","\uff4a":"j","\u0135":"j","\u01f0":"j","\u0249":"j","\u24da":"k","\uff4b":"k","\u1e31":"k","\u01e9":"k","\u1e33":"k","\u0137":"k","\u1e35":"k","\u0199":"k","\u2c6a":"k","\ua741":"k","\ua743":"k","\ua745":"k","\ua7a3":"k","\u24db":"l","\uff4c":"l","\u0140":"l","\u013a":"l","\u013e":"l","\u1e37":"l","\u1e39":"l","\u013c":"l","\u1e3d":"l","\u1e3b":"l","\u017f":"l","\u0142":"l","\u019a":"l","\u026b":"l","\u2c61":"l","\ua749":"l","\ua781":"l","\ua747":"l","\u01c9":"lj","\u24dc":"m","\uff4d":"m","\u1e3f":"m","\u1e41":"m","\u1e43":"m","\u0271":"m","\u026f":"m","\u24dd":"n","\uff4e":"n","\u01f9":"n","\u0144":"n","\xf1":"n","\u1e45":"n","\u0148":"n","\u1e47":"n","\u0146":"n","\u1e4b":"n","\u1e49":"n","\u019e":"n","\u0272":"n","\u0149":"n","\ua791":"n","\ua7a5":"n","\u01cc":"nj","\u24de":"o","\uff4f":"o","\xf2":"o","\xf3":"o","\xf4":"o","\u1ed3":"o","\u1ed1":"o","\u1ed7":"o","\u1ed5":"o","\xf5":"o","\u1e4d":"o","\u022d":"o","\u1e4f":"o","\u014d":"o","\u1e51":"o","\u1e53":"o","\u014f":"o","\u022f":"o","\u0231":"o","\xf6":"o","\u022b":"o","\u1ecf":"o","\u0151":"o","\u01d2":"o","\u020d":"o","\u020f":"o","\u01a1":"o","\u1edd":"o","\u1edb":"o","\u1ee1":"o","\u1edf":"o","\u1ee3":"o","\u1ecd":"o","\u1ed9":"o","\u01eb":"o","\u01ed":"o","\xf8":"o","\u01ff":"o","\u0254":"o","\ua74b":"o","\ua74d":"o","\u0275":"o","\u01a3":"oi","\u0223":"ou","\ua74f":"oo","\u24df":"p","\uff50":"p","\u1e55":"p","\u1e57":"p","\u01a5":"p","\u1d7d":"p","\ua751":"p","\ua753":"p","\ua755":"p","\u24e0":"q","\uff51":"q","\u024b":"q","\ua757":"q","\ua759":"q","\u24e1":"r","\uff52":"r","\u0155":"r","\u1e59":"r","\u0159":"r","\u0211":"r","\u0213":"r","\u1e5b":"r","\u1e5d":"r","\u0157":"r","\u1e5f":"r","\u024d":"r","\u027d":"r","\ua75b":"r","\ua7a7":"r","\ua783":"r","\u24e2":"s","\uff53":"s","\xdf":"s","\u015b":"s","\u1e65":"s","\u015d":"s","\u1e61":"s","\u0161":"s","\u1e67":"s","\u1e63":"s","\u1e69":"s","\u0219":"s","\u015f":"s","\u023f":"s","\ua7a9":"s","\ua785":"s","\u1e9b":"s","\u24e3":"t","\uff54":"t","\u1e6b":"t","\u1e97":"t","\u0165":"t","\u1e6d":"t","\u021b":"t","\u0163":"t","\u1e71":"t","\u1e6f":"t","\u0167":"t","\u01ad":"t","\u0288":"t","\u2c66":"t","\ua787":"t","\ua729":"tz","\u24e4":"u","\uff55":"u","\xf9":"u","\xfa":"u","\xfb":"u","\u0169":"u","\u1e79":"u","\u016b":"u","\u1e7b":"u","\u016d":"u","\xfc":"u","\u01dc":"u","\u01d8":"u","\u01d6":"u","\u01da":"u","\u1ee7":"u","\u016f":"u","\u0171":"u","\u01d4":"u","\u0215":"u","\u0217":"u","\u01b0":"u","\u1eeb":"u","\u1ee9":"u","\u1eef":"u","\u1eed":"u","\u1ef1":"u","\u1ee5":"u","\u1e73":"u","\u0173":"u","\u1e77":"u","\u1e75":"u","\u0289":"u","\u24e5":"v","\uff56":"v","\u1e7d":"v","\u1e7f":"v","\u028b":"v","\ua75f":"v","\u028c":"v","\ua761":"vy","\u24e6":"w","\uff57":"w","\u1e81":"w","\u1e83":"w","\u0175":"w","\u1e87":"w","\u1e85":"w","\u1e98":"w","\u1e89":"w","\u2c73":"w","\u24e7":"x","\uff58":"x","\u1e8b":"x","\u1e8d":"x","\u24e8":"y","\uff59":"y","\u1ef3":"y","\xfd":"y","\u0177":"y","\u1ef9":"y","\u0233":"y","\u1e8f":"y","\xff":"y","\u1ef7":"y","\u1e99":"y","\u1ef5":"y","\u01b4":"y","\u024f":"y","\u1eff":"y","\u24e9":"z","\uff5a":"z","\u017a":"z","\u1e91":"z","\u017c":"z","\u017e":"z","\u1e93":"z","\u1e95":"z","\u01b6":"z","\u0225":"z","\u0240":"z","\u2c6c":"z","\ua763":"z","\u0386":"\u0391","\u0388":"\u0395","\u0389":"\u0397","\u038a":"\u0399","\u03aa":"\u0399","\u038c":"\u039f","\u038e":"\u03a5","\u03ab":"\u03a5","\u038f":"\u03a9","\u03ac":"\u03b1","\u03ad":"\u03b5","\u03ae":"\u03b7","\u03af":"\u03b9","\u03ca":"\u03b9","\u0390":"\u03b9","\u03cc":"\u03bf","\u03cd":"\u03c5","\u03cb":"\u03c5","\u03b0":"\u03c5","\u03c9":"\u03c9","\u03c2":"\u03c3"};i=a(document),f=function(){var a=1;return function(){return a++}}(),c=O(Object,{bind:function(a){var b=this;return function(){a.apply(b,arguments)}},init:function(c){var d,e,g=".select2-results";this.opts=c=this.prepareOpts(c),this.id=c.id,c.element.data("select2")!==b&&null!==c.element.data("select2")&&c.element.data("select2").destroy(),this.container=this.createContainer(),this.liveRegion=a(".select2-hidden-accessible"),0==this.liveRegion.length&&(this.liveRegion=a("<span>",{role:"status","aria-live":"polite"}).addClass("select2-hidden-accessible").appendTo(document.body)),this.containerId="s2id_"+(c.element.attr("id")||"autogen"+f()),this.containerEventName=this.containerId.replace(/([.])/g,"_").replace(/([;&,\-\.\+\*\~':"\!\^#$%@\[\]\(\)=>\|])/g,"\\$1"),this.container.attr("id",this.containerId),this.container.attr("title",c.element.attr("title")),this.body=a(document.body),D(this.container,this.opts.element,this.opts.adaptContainerCssClass),this.container.attr("style",c.element.attr("style")),this.container.css(K(c.containerCss,this.opts.element)),this.container.addClass(K(c.containerCssClass,this.opts.element)),this.elementTabIndex=this.opts.element.attr("tabindex"),this.opts.element.data("select2",this).attr("tabindex","-1").before(this.container).on("click.select2",A),this.container.data("select2",this),this.dropdown=this.container.find(".select2-drop"),D(this.dropdown,this.opts.element,this.opts.adaptDropdownCssClass),this.dropdown.addClass(K(c.dropdownCssClass,this.opts.element)),this.dropdown.data("select2",this),this.dropdown.on("click",A),this.results=d=this.container.find(g),this.search=e=this.container.find("input.select2-input"),this.queryCount=0,this.resultsPage=0,this.context=null,this.initContainer(),this.container.on("click",A),v(this.results),this.dropdown.on("mousemove-filtered",g,this.bind(this.highlightUnderEvent)),this.dropdown.on("touchstart touchmove touchend",g,this.bind(function(a){this._touchEvent=!0,this.highlightUnderEvent(a)})),this.dropdown.on("touchmove",g,this.bind(this.touchMoved)),this.dropdown.on("touchstart touchend",g,this.bind(this.clearTouchMoved)),this.dropdown.on("click",this.bind(function(){this._touchEvent&&(this._touchEvent=!1,this.selectHighlighted())})),x(80,this.results),this.dropdown.on("scroll-debounced",g,this.bind(this.loadMoreIfNeeded)),a(this.container).on("change",".select2-input",function(a){a.stopPropagation()}),a(this.dropdown).on("change",".select2-input",function(a){a.stopPropagation()}),a.fn.mousewheel&&d.mousewheel(function(a,b,c,e){var f=d.scrollTop();e>0&&0>=f-e?(d.scrollTop(0),A(a)):0>e&&d.get(0).scrollHeight-d.scrollTop()+e<=d.height()&&(d.scrollTop(d.get(0).scrollHeight-d.height()),A(a))}),u(e),e.on("keyup-change input paste",this.bind(this.updateResults)),e.on("focus",function(){e.addClass("select2-focused")}),e.on("blur",function(){e.removeClass("select2-focused")}),this.dropdown.on("mouseup",g,this.bind(function(b){a(b.target).closest(".select2-result-selectable").length>0&&(this.highlightUnderEvent(b),this.selectHighlighted(b))})),this.dropdown.on("click mouseup mousedown touchstart touchend focusin",function(a){a.stopPropagation()}),this.nextSearchTerm=b,a.isFunction(this.opts.initSelection)&&(this.initSelection(),this.monitorSource()),null!==c.maximumInputLength&&this.search.attr("maxlength",c.maximumInputLength);var h=c.element.prop("disabled");h===b&&(h=!1),this.enable(!h);var i=c.element.prop("readonly");i===b&&(i=!1),this.readonly(i),j=j||q(),this.autofocus=c.element.prop("autofocus"),c.element.prop("autofocus",!1),this.autofocus&&this.focus(),this.search.attr("placeholder",c.searchInputPlaceholder)},destroy:function(){var a=this.opts.element,c=a.data("select2"),d=this;this.close(),a.length&&a[0].detachEvent&&d._sync&&a.each(function(){d._sync&&this.detachEvent("onpropertychange",d._sync)}),this.propertyObserver&&(this.propertyObserver.disconnect(),this.propertyObserver=null),this._sync=null,c!==b&&(c.container.remove(),c.liveRegion.remove(),c.dropdown.remove(),a.show().removeData("select2").off(".select2").prop("autofocus",this.autofocus||!1),this.elementTabIndex?a.attr({tabindex:this.elementTabIndex}):a.removeAttr("tabindex"),a.show()),N.call(this,"container","liveRegion","dropdown","results","search")},optionToData:function(a){return a.is("option")?{id:a.prop("value"),text:a.text(),element:a.get(),css:a.attr("class"),disabled:a.prop("disabled"),locked:r(a.attr("locked"),"locked")||r(a.data("locked"),!0)}:a.is("optgroup")?{text:a.attr("label"),children:[],element:a.get(),css:a.attr("class")}:void 0},prepareOpts:function(c){var d,e,g,h,i=this;if(d=c.element,"select"===d.get(0).tagName.toLowerCase()&&(this.select=e=c.element),e&&a.each(["id","multiple","ajax","query","createSearchChoice","initSelection","data","tags"],function(){if(this in c)throw new Error("Option '"+this+"' is not allowed for Select2 when attached to a <select> element.")}),c=a.extend({},{populateResults:function(d,e,g){var h,j=this.opts.id,k=this.liveRegion;h=function(d,e,l){var m,n,o,p,q,r,s,t,u,v;d=c.sortResults(d,e,g);var w=[];for(m=0,n=d.length;n>m;m+=1)o=d[m],q=o.disabled===!0,p=!q&&j(o)!==b,r=o.children&&o.children.length>0,s=a("<li></li>"),s.addClass("select2-results-dept-"+l),s.addClass("select2-result"),s.addClass(p?"select2-result-selectable":"select2-result-unselectable"),q&&s.addClass("select2-disabled"),r&&s.addClass("select2-result-with-children"),s.addClass(i.opts.formatResultCssClass(o)),s.attr("role","presentation"),t=a(document.createElement("div")),t.addClass("select2-result-label"),t.attr("id","select2-result-label-"+f()),t.attr("role","option"),v=c.formatResult(o,t,g,i.opts.escapeMarkup),v!==b&&(t.html(v),s.append(t)),r&&(u=a("<ul></ul>"),u.addClass("select2-result-sub"),h(o.children,u,l+1),s.append(u)),s.data("select2-data",o),w.push(s[0]);e.append(w),k.text(c.formatMatches(d.length))},h(e,d,0)}},a.fn.select2.defaults,c),"function"!=typeof c.id&&(g=c.id,c.id=function(a){return a[g]}),a.isArray(c.element.data("select2Tags"))){if("tags"in c)throw"tags specified as both an attribute 'data-select2-tags' and in options of Select2 "+c.element.attr("id");c.tags=c.element.data("select2Tags")}if(e?(c.query=this.bind(function(a){var f,g,h,c={results:[],more:!1},e=a.term;h=function(b,c){var d;b.is("option")?a.matcher(e,b.text(),b)&&c.push(i.optionToData(b)):b.is("optgroup")&&(d=i.optionToData(b),b.children().each2(function(a,b){h(b,d.children)}),d.children.length>0&&c.push(d))},f=d.children(),this.getPlaceholder()!==b&&f.length>0&&(g=this.getPlaceholderOption(),g&&(f=f.not(g))),f.each2(function(a,b){h(b,c.results)}),a.callback(c)}),c.id=function(a){return a.id}):"query"in c||("ajax"in c?(h=c.element.data("ajax-url"),h&&h.length>0&&(c.ajax.url=h),c.query=G.call(c.element,c.ajax)):"data"in c?c.query=H(c.data):"tags"in c&&(c.query=I(c.tags),c.createSearchChoice===b&&(c.createSearchChoice=function(b){return{id:a.trim(b),text:a.trim(b)}}),c.initSelection===b&&(c.initSelection=function(b,d){var e=[];a(s(b.val(),c.separator,c.transformVal)).each(function(){var b={id:this,text:this},d=c.tags;a.isFunction(d)&&(d=d()),a(d).each(function(){return r(this.id,b.id)?(b=this,!1):void 0}),e.push(b)}),d(e)}))),"function"!=typeof c.query)throw"query function not defined for Select2 "+c.element.attr("id");if("top"===c.createSearchChoicePosition)c.createSearchChoicePosition=function(a,b){a.unshift(b)};else if("bottom"===c.createSearchChoicePosition)c.createSearchChoicePosition=function(a,b){a.push(b)};else if("function"!=typeof c.createSearchChoicePosition)throw"invalid createSearchChoicePosition option must be 'top', 'bottom' or a custom function";return c},monitorSource:function(){var d,c=this.opts.element,e=this;c.on("change.select2",this.bind(function(){this.opts.element.data("select2-change-triggered")!==!0&&this.initSelection()})),this._sync=this.bind(function(){var a=c.prop("disabled");a===b&&(a=!1),this.enable(!a);var d=c.prop("readonly");d===b&&(d=!1),this.readonly(d),this.container&&(D(this.container,this.opts.element,this.opts.adaptContainerCssClass),this.container.addClass(K(this.opts.containerCssClass,this.opts.element))),this.dropdown&&(D(this.dropdown,this.opts.element,this.opts.adaptDropdownCssClass),this.dropdown.addClass(K(this.opts.dropdownCssClass,this.opts.element)))}),c.length&&c[0].attachEvent&&c.each(function(){this.attachEvent("onpropertychange",e._sync)}),d=window.MutationObserver||window.WebKitMutationObserver||window.MozMutationObserver,d!==b&&(this.propertyObserver&&(delete this.propertyObserver,this.propertyObserver=null),this.propertyObserver=new d(function(b){a.each(b,e._sync)}),this.propertyObserver.observe(c.get(0),{attributes:!0,subtree:!1}))},triggerSelect:function(b){var c=a.Event("select2-selecting",{val:this.id(b),object:b,choice:b});return this.opts.element.trigger(c),!c.isDefaultPrevented()},triggerChange:function(b){b=b||{},b=a.extend({},b,{type:"change",val:this.val()}),this.opts.element.data("select2-change-triggered",!0),this.opts.element.trigger(b),this.opts.element.data("select2-change-triggered",!1),this.opts.element.click(),this.opts.blurOnChange&&this.opts.element.blur()},isInterfaceEnabled:function(){return this.enabledInterface===!0},enableInterface:function(){var a=this._enabled&&!this._readonly,b=!a;return a===this.enabledInterface?!1:(this.container.toggleClass("select2-container-disabled",b),this.close(),this.enabledInterface=a,!0)},enable:function(a){a===b&&(a=!0),this._enabled!==a&&(this._enabled=a,this.opts.element.prop("disabled",!a),this.enableInterface())},disable:function(){this.enable(!1)},readonly:function(a){a===b&&(a=!1),this._readonly!==a&&(this._readonly=a,this.opts.element.prop("readonly",a),this.enableInterface())},opened:function(){return this.container?this.container.hasClass("select2-dropdown-open"):!1},positionDropdown:function(){var v,w,x,y,z,b=this.dropdown,c=this.container,d=c.offset(),e=c.outerHeight(!1),f=c.outerWidth(!1),g=b.outerHeight(!1),h=a(window),i=h.width(),k=h.height(),l=h.scrollLeft()+i,m=h.scrollTop()+k,n=d.top+e,o=d.left,p=m>=n+g,q=d.top-g>=h.scrollTop(),r=b.outerWidth(!1),s=function(){return l>=o+r},t=function(){return d.left+l+c.outerWidth(!1)>r},u=b.hasClass("select2-drop-above");u?(w=!0,!q&&p&&(x=!0,w=!1)):(w=!1,!p&&q&&(x=!0,w=!0)),x&&(b.hide(),d=this.container.offset(),e=this.container.outerHeight(!1),f=this.container.outerWidth(!1),g=b.outerHeight(!1),l=h.scrollLeft()+i,m=h.scrollTop()+k,n=d.top+e,o=d.left,r=b.outerWidth(!1),b.show(),this.focusSearch()),this.opts.dropdownAutoWidth?(z=a(".select2-results",b)[0],b.addClass("select2-drop-auto-width"),b.css("width",""),r=b.outerWidth(!1)+(z.scrollHeight===z.clientHeight?0:j.width),r>f?f=r:r=f,g=b.outerHeight(!1)):this.container.removeClass("select2-drop-auto-width"),"static"!==this.body.css("position")&&(v=this.body.offset(),n-=v.top,o-=v.left),!s()&&t()&&(o=d.left+this.container.outerWidth(!1)-r),y={left:o,width:f},w?(y.top=d.top-g,y.bottom="auto",this.container.addClass("select2-drop-above"),b.addClass("select2-drop-above")):(y.top=n,y.bottom="auto",this.container.removeClass("select2-drop-above"),b.removeClass("select2-drop-above")),y=a.extend(y,K(this.opts.dropdownCss,this.opts.element)),b.css(y)},shouldOpen:function(){var b;return this.opened()?!1:this._enabled===!1||this._readonly===!0?!1:(b=a.Event("select2-opening"),this.opts.element.trigger(b),!b.isDefaultPrevented())},clearDropdownAlignmentPreference:function(){this.container.removeClass("select2-drop-above"),this.dropdown.removeClass("select2-drop-above")},open:function(){return this.shouldOpen()?(this.opening(),i.on("mousemove.select2Event",function(a){h.x=a.pageX,h.y=a.pageY}),!0):!1},opening:function(){var f,b=this.containerEventName,c="scroll."+b,d="resize."+b,e="orientationchange."+b;this.container.addClass("select2-dropdown-open").addClass("select2-container-active"),this.clearDropdownAlignmentPreference(),this.dropdown[0]!==this.body.children().last()[0]&&this.dropdown.detach().appendTo(this.body),f=a("#select2-drop-mask"),0===f.length&&(f=a(document.createElement("div")),f.attr("id","select2-drop-mask").attr("class","select2-drop-mask"),f.hide(),f.appendTo(this.body),f.on("mousedown touchstart click",function(b){n(f);var d,c=a("#select2-drop");c.length>0&&(d=c.data("select2"),d.opts.selectOnBlur&&d.selectHighlighted({noFocus:!0}),d.close(),b.preventDefault(),b.stopPropagation())})),this.dropdown.prev()[0]!==f[0]&&this.dropdown.before(f),a("#select2-drop").removeAttr("id"),this.dropdown.attr("id","select2-drop"),f.show(),this.positionDropdown(),this.dropdown.show(),this.positionDropdown(),this.dropdown.addClass("select2-drop-active");var g=this;this.container.parents().add(window).each(function(){a(this).on(d+" "+c+" "+e,function(){g.opened()&&g.positionDropdown()})})},close:function(){if(this.opened()){var b=this.containerEventName,c="scroll."+b,d="resize."+b,e="orientationchange."+b;this.container.parents().add(window).each(function(){a(this).off(c).off(d).off(e)}),this.clearDropdownAlignmentPreference(),a("#select2-drop-mask").hide(),this.dropdown.removeAttr("id"),this.dropdown.hide(),this.container.removeClass("select2-dropdown-open").removeClass("select2-container-active"),this.results.empty(),i.off("mousemove.select2Event"),this.clearSearch(),this.search.removeClass("select2-active"),this.opts.element.trigger(a.Event("select2-close"))}},externalSearch:function(a){this.open(),this.search.val(a),this.updateResults(!1)},clearSearch:function(){},getMaximumSelectionSize:function(){return K(this.opts.maximumSelectionSize,this.opts.element)},ensureHighlightVisible:function(){var c,d,e,f,g,h,i,j,b=this.results;if(d=this.highlight(),!(0>d)){if(0==d)return b.scrollTop(0),void 0;c=this.findHighlightableChoices().find(".select2-result-label"),e=a(c[d]),j=(e.offset()||{}).top||0,f=j+e.outerHeight(!0),d===c.length-1&&(i=b.find("li.select2-more-results"),i.length>0&&(f=i.offset().top+i.outerHeight(!0))),g=b.offset().top+b.outerHeight(!1),f>g&&b.scrollTop(b.scrollTop()+(f-g)),h=j-b.offset().top,0>h&&"none"!=e.css("display")&&b.scrollTop(b.scrollTop()+h)}},findHighlightableChoices:function(){return this.results.find(".select2-result-selectable:not(.select2-disabled):not(.select2-selected)")},moveHighlight:function(b){for(var c=this.findHighlightableChoices(),d=this.highlight();d>-1&&d<c.length;){d+=b;
+!function(a){"undefined"==typeof a.fn.each2&&a.extend(a.fn,{each2:function(b){for(var c=a([0]),d=-1,e=this.length;++d<e&&(c.context=c[0]=this[d])&&b.call(c[0],d,c)!==!1;);return this}})}(jQuery),function(a,b){"use strict";function n(b){var c=a(document.createTextNode(""));b.before(c),c.before(b),c.remove()}function o(a){function b(a){return m[a]||a}return a.replace(/[^\u0000-\u007E]/g,b)}function p(a,b){for(var c=0,d=b.length;d>c;c+=1)if(r(a,b[c]))return c;return-1}function q(){var b=a(l);b.appendTo(document.body);var c={width:b.width()-b[0].clientWidth,height:b.height()-b[0].clientHeight};return b.remove(),c}function r(a,c){return a===c?!0:a===b||c===b?!1:null===a||null===c?!1:a.constructor===String?a+""==c+"":c.constructor===String?c+""==a+"":!1}function s(a,b,c){var d,e,f;if(null===a||a.length<1)return[];for(d=a.split(b),e=0,f=d.length;f>e;e+=1)d[e]=c(d[e]);return d}function t(a){return a.outerWidth(!1)-a.width()}function u(c){var d="keyup-change-value";c.on("keydown",function(){a.data(c,d)===b&&a.data(c,d,c.val())}),c.on("keyup",function(){var e=a.data(c,d);e!==b&&c.val()!==e&&(a.removeData(c,d),c.trigger("keyup-change"))})}function v(c){c.on("mousemove",function(c){var d=h;(d===b||d.x!==c.pageX||d.y!==c.pageY)&&a(c.target).trigger("mousemove-filtered",c)})}function w(a,c,d){d=d||b;var e;return function(){var b=arguments;window.clearTimeout(e),e=window.setTimeout(function(){c.apply(d,b)},a)}}function x(a,b){var c=w(a,function(a){b.trigger("scroll-debounced",a)});b.on("scroll",function(a){p(a.target,b.get())>=0&&c(a)})}function y(a){a[0]!==document.activeElement&&window.setTimeout(function(){var d,b=a[0],c=a.val().length;a.focus();var e=b.offsetWidth>0||b.offsetHeight>0;e&&b===document.activeElement&&(b.setSelectionRange?b.setSelectionRange(c,c):b.createTextRange&&(d=b.createTextRange(),d.collapse(!1),d.select()))},0)}function z(b){b=a(b)[0];var c=0,d=0;if("selectionStart"in b)c=b.selectionStart,d=b.selectionEnd-c;else if("selection"in document){b.focus();var e=document.selection.createRange();d=document.selection.createRange().text.length,e.moveStart("character",-b.value.length),c=e.text.length-d}return{offset:c,length:d}}function A(a){a.preventDefault(),a.stopPropagation()}function B(a){a.preventDefault(),a.stopImmediatePropagation()}function C(b){if(!g){var c=b[0].currentStyle||window.getComputedStyle(b[0],null);g=a(document.createElement("div")).css({position:"absolute",left:"-10000px",top:"-10000px",display:"none",fontSize:c.fontSize,fontFamily:c.fontFamily,fontStyle:c.fontStyle,fontWeight:c.fontWeight,letterSpacing:c.letterSpacing,textTransform:c.textTransform,whiteSpace:"nowrap"}),g.attr("class","select2-sizer"),a(document.body).append(g)}return g.text(b.val()),g.width()}function D(b,c,d){var e,g,f=[];e=a.trim(b.attr("class")),e&&(e=""+e,a(e.split(/\s+/)).each2(function(){0===this.indexOf("select2-")&&f.push(this)})),e=a.trim(c.attr("class")),e&&(e=""+e,a(e.split(/\s+/)).each2(function(){0!==this.indexOf("select2-")&&(g=d(this),g&&f.push(g))})),b.attr("class",f.join(" "))}function E(a,b,c,d){var e=o(a.toUpperCase()).indexOf(o(b.toUpperCase())),f=b.length;return 0>e?(c.push(d(a)),void 0):(c.push(d(a.substring(0,e))),c.push("<span class='select2-match'>"),c.push(d(a.substring(e,e+f))),c.push("</span>"),c.push(d(a.substring(e+f,a.length))),void 0)}function F(a){var b={"\\":"&#92;","&":"&amp;","<":"&lt;",">":"&gt;",'"':"&quot;","'":"&#39;","/":"&#47;"};return String(a).replace(/[&<>"'\/\\]/g,function(a){return b[a]})}function G(c){var d,e=null,f=c.quietMillis||100,g=c.url,h=this;return function(i){window.clearTimeout(d),d=window.setTimeout(function(){var d=c.data,f=g,j=c.transport||a.fn.select2.ajaxDefaults.transport,k={type:c.type||"GET",cache:c.cache||!1,jsonpCallback:c.jsonpCallback||b,dataType:c.dataType||"json"},l=a.extend({},a.fn.select2.ajaxDefaults.params,k);d=d?d.call(h,i.term,i.page,i.context):null,f="function"==typeof f?f.call(h,i.term,i.page,i.context):f,e&&"function"==typeof e.abort&&e.abort(),c.params&&(a.isFunction(c.params)?a.extend(l,c.params.call(h)):a.extend(l,c.params)),a.extend(l,{url:f,dataType:c.dataType,data:d,success:function(a){var b=c.results(a,i.page,i);i.callback(b)},error:function(a,b,c){var d={hasError:!0,jqXHR:a,textStatus:b,errorThrown:c};i.callback(d)}}),e=j.call(h,l)},f)}}function H(b){var d,e,c=b,f=function(a){return""+a.text};a.isArray(c)&&(e=c,c={results:e}),a.isFunction(c)===!1&&(e=c,c=function(){return e});var g=c();return g.text&&(f=g.text,a.isFunction(f)||(d=g.text,f=function(a){return a[d]})),function(b){var g,d=b.term,e={results:[]};return""===d?(b.callback(c()),void 0):(g=function(c,e){var h,i;if(c=c[0],c.children){h={};for(i in c)c.hasOwnProperty(i)&&(h[i]=c[i]);h.children=[],a(c.children).each2(function(a,b){g(b,h.children)}),(h.children.length||b.matcher(d,f(h),c))&&e.push(h)}else b.matcher(d,f(c),c)&&e.push(c)},a(c().results).each2(function(a,b){g(b,e.results)}),b.callback(e),void 0)}}function I(c){var d=a.isFunction(c);return function(e){var f=e.term,g={results:[]},h=d?c(e):c;a.isArray(h)&&(a(h).each(function(){var a=this.text!==b,c=a?this.text:this;(""===f||e.matcher(f,c))&&g.results.push(a?this:{id:this,text:this})}),e.callback(g))}}function J(b,c){if(a.isFunction(b))return!0;if(!b)return!1;if("string"==typeof b)return!0;throw new Error(c+" must be a string, function, or falsy value")}function K(b,c){if(a.isFunction(b)){var d=Array.prototype.slice.call(arguments,2);return b.apply(c,d)}return b}function L(b){var c=0;return a.each(b,function(a,b){b.children?c+=L(b.children):c++}),c}function M(a,c,d,e){var h,i,j,k,l,f=a,g=!1;if(!e.createSearchChoice||!e.tokenSeparators||e.tokenSeparators.length<1)return b;for(;;){for(i=-1,j=0,k=e.tokenSeparators.length;k>j&&(l=e.tokenSeparators[j],i=a.indexOf(l),!(i>=0));j++);if(0>i)break;if(h=a.substring(0,i),a=a.substring(i+l.length),h.length>0&&(h=e.createSearchChoice.call(this,h,c),h!==b&&null!==h&&e.id(h)!==b&&null!==e.id(h))){for(g=!1,j=0,k=c.length;k>j;j++)if(r(e.id(h),e.id(c[j]))){g=!0;break}g||d(h)}}return f!==a?a:void 0}function N(){var b=this;a.each(arguments,function(a,c){b[c].remove(),b[c]=null})}function O(b,c){var d=function(){};return d.prototype=new b,d.prototype.constructor=d,d.prototype.parent=b.prototype,d.prototype=a.extend(d.prototype,c),d}if(window.Select2===b){var c,d,e,f,g,i,j,h={x:0,y:0},k={TAB:9,ENTER:13,ESC:27,SPACE:32,LEFT:37,UP:38,RIGHT:39,DOWN:40,SHIFT:16,CTRL:17,ALT:18,PAGE_UP:33,PAGE_DOWN:34,HOME:36,END:35,BACKSPACE:8,DELETE:46,isArrow:function(a){switch(a=a.which?a.which:a){case k.LEFT:case k.RIGHT:case k.UP:case k.DOWN:return!0}return!1},isControl:function(a){var b=a.which;switch(b){case k.SHIFT:case k.CTRL:case k.ALT:return!0}return a.metaKey?!0:!1},isFunctionKey:function(a){return a=a.which?a.which:a,a>=112&&123>=a}},l="<div class='select2-measure-scrollbar'></div>",m={"\u24b6":"A","\uff21":"A","\xc0":"A","\xc1":"A","\xc2":"A","\u1ea6":"A","\u1ea4":"A","\u1eaa":"A","\u1ea8":"A","\xc3":"A","\u0100":"A","\u0102":"A","\u1eb0":"A","\u1eae":"A","\u1eb4":"A","\u1eb2":"A","\u0226":"A","\u01e0":"A","\xc4":"A","\u01de":"A","\u1ea2":"A","\xc5":"A","\u01fa":"A","\u01cd":"A","\u0200":"A","\u0202":"A","\u1ea0":"A","\u1eac":"A","\u1eb6":"A","\u1e00":"A","\u0104":"A","\u023a":"A","\u2c6f":"A","\ua732":"AA","\xc6":"AE","\u01fc":"AE","\u01e2":"AE","\ua734":"AO","\ua736":"AU","\ua738":"AV","\ua73a":"AV","\ua73c":"AY","\u24b7":"B","\uff22":"B","\u1e02":"B","\u1e04":"B","\u1e06":"B","\u0243":"B","\u0182":"B","\u0181":"B","\u24b8":"C","\uff23":"C","\u0106":"C","\u0108":"C","\u010a":"C","\u010c":"C","\xc7":"C","\u1e08":"C","\u0187":"C","\u023b":"C","\ua73e":"C","\u24b9":"D","\uff24":"D","\u1e0a":"D","\u010e":"D","\u1e0c":"D","\u1e10":"D","\u1e12":"D","\u1e0e":"D","\u0110":"D","\u018b":"D","\u018a":"D","\u0189":"D","\ua779":"D","\u01f1":"DZ","\u01c4":"DZ","\u01f2":"Dz","\u01c5":"Dz","\u24ba":"E","\uff25":"E","\xc8":"E","\xc9":"E","\xca":"E","\u1ec0":"E","\u1ebe":"E","\u1ec4":"E","\u1ec2":"E","\u1ebc":"E","\u0112":"E","\u1e14":"E","\u1e16":"E","\u0114":"E","\u0116":"E","\xcb":"E","\u1eba":"E","\u011a":"E","\u0204":"E","\u0206":"E","\u1eb8":"E","\u1ec6":"E","\u0228":"E","\u1e1c":"E","\u0118":"E","\u1e18":"E","\u1e1a":"E","\u0190":"E","\u018e":"E","\u24bb":"F","\uff26":"F","\u1e1e":"F","\u0191":"F","\ua77b":"F","\u24bc":"G","\uff27":"G","\u01f4":"G","\u011c":"G","\u1e20":"G","\u011e":"G","\u0120":"G","\u01e6":"G","\u0122":"G","\u01e4":"G","\u0193":"G","\ua7a0":"G","\ua77d":"G","\ua77e":"G","\u24bd":"H","\uff28":"H","\u0124":"H","\u1e22":"H","\u1e26":"H","\u021e":"H","\u1e24":"H","\u1e28":"H","\u1e2a":"H","\u0126":"H","\u2c67":"H","\u2c75":"H","\ua78d":"H","\u24be":"I","\uff29":"I","\xcc":"I","\xcd":"I","\xce":"I","\u0128":"I","\u012a":"I","\u012c":"I","\u0130":"I","\xcf":"I","\u1e2e":"I","\u1ec8":"I","\u01cf":"I","\u0208":"I","\u020a":"I","\u1eca":"I","\u012e":"I","\u1e2c":"I","\u0197":"I","\u24bf":"J","\uff2a":"J","\u0134":"J","\u0248":"J","\u24c0":"K","\uff2b":"K","\u1e30":"K","\u01e8":"K","\u1e32":"K","\u0136":"K","\u1e34":"K","\u0198":"K","\u2c69":"K","\ua740":"K","\ua742":"K","\ua744":"K","\ua7a2":"K","\u24c1":"L","\uff2c":"L","\u013f":"L","\u0139":"L","\u013d":"L","\u1e36":"L","\u1e38":"L","\u013b":"L","\u1e3c":"L","\u1e3a":"L","\u0141":"L","\u023d":"L","\u2c62":"L","\u2c60":"L","\ua748":"L","\ua746":"L","\ua780":"L","\u01c7":"LJ","\u01c8":"Lj","\u24c2":"M","\uff2d":"M","\u1e3e":"M","\u1e40":"M","\u1e42":"M","\u2c6e":"M","\u019c":"M","\u24c3":"N","\uff2e":"N","\u01f8":"N","\u0143":"N","\xd1":"N","\u1e44":"N","\u0147":"N","\u1e46":"N","\u0145":"N","\u1e4a":"N","\u1e48":"N","\u0220":"N","\u019d":"N","\ua790":"N","\ua7a4":"N","\u01ca":"NJ","\u01cb":"Nj","\u24c4":"O","\uff2f":"O","\xd2":"O","\xd3":"O","\xd4":"O","\u1ed2":"O","\u1ed0":"O","\u1ed6":"O","\u1ed4":"O","\xd5":"O","\u1e4c":"O","\u022c":"O","\u1e4e":"O","\u014c":"O","\u1e50":"O","\u1e52":"O","\u014e":"O","\u022e":"O","\u0230":"O","\xd6":"O","\u022a":"O","\u1ece":"O","\u0150":"O","\u01d1":"O","\u020c":"O","\u020e":"O","\u01a0":"O","\u1edc":"O","\u1eda":"O","\u1ee0":"O","\u1ede":"O","\u1ee2":"O","\u1ecc":"O","\u1ed8":"O","\u01ea":"O","\u01ec":"O","\xd8":"O","\u01fe":"O","\u0186":"O","\u019f":"O","\ua74a":"O","\ua74c":"O","\u01a2":"OI","\ua74e":"OO","\u0222":"OU","\u24c5":"P","\uff30":"P","\u1e54":"P","\u1e56":"P","\u01a4":"P","\u2c63":"P","\ua750":"P","\ua752":"P","\ua754":"P","\u24c6":"Q","\uff31":"Q","\ua756":"Q","\ua758":"Q","\u024a":"Q","\u24c7":"R","\uff32":"R","\u0154":"R","\u1e58":"R","\u0158":"R","\u0210":"R","\u0212":"R","\u1e5a":"R","\u1e5c":"R","\u0156":"R","\u1e5e":"R","\u024c":"R","\u2c64":"R","\ua75a":"R","\ua7a6":"R","\ua782":"R","\u24c8":"S","\uff33":"S","\u1e9e":"S","\u015a":"S","\u1e64":"S","\u015c":"S","\u1e60":"S","\u0160":"S","\u1e66":"S","\u1e62":"S","\u1e68":"S","\u0218":"S","\u015e":"S","\u2c7e":"S","\ua7a8":"S","\ua784":"S","\u24c9":"T","\uff34":"T","\u1e6a":"T","\u0164":"T","\u1e6c":"T","\u021a":"T","\u0162":"T","\u1e70":"T","\u1e6e":"T","\u0166":"T","\u01ac":"T","\u01ae":"T","\u023e":"T","\ua786":"T","\ua728":"TZ","\u24ca":"U","\uff35":"U","\xd9":"U","\xda":"U","\xdb":"U","\u0168":"U","\u1e78":"U","\u016a":"U","\u1e7a":"U","\u016c":"U","\xdc":"U","\u01db":"U","\u01d7":"U","\u01d5":"U","\u01d9":"U","\u1ee6":"U","\u016e":"U","\u0170":"U","\u01d3":"U","\u0214":"U","\u0216":"U","\u01af":"U","\u1eea":"U","\u1ee8":"U","\u1eee":"U","\u1eec":"U","\u1ef0":"U","\u1ee4":"U","\u1e72":"U","\u0172":"U","\u1e76":"U","\u1e74":"U","\u0244":"U","\u24cb":"V","\uff36":"V","\u1e7c":"V","\u1e7e":"V","\u01b2":"V","\ua75e":"V","\u0245":"V","\ua760":"VY","\u24cc":"W","\uff37":"W","\u1e80":"W","\u1e82":"W","\u0174":"W","\u1e86":"W","\u1e84":"W","\u1e88":"W","\u2c72":"W","\u24cd":"X","\uff38":"X","\u1e8a":"X","\u1e8c":"X","\u24ce":"Y","\uff39":"Y","\u1ef2":"Y","\xdd":"Y","\u0176":"Y","\u1ef8":"Y","\u0232":"Y","\u1e8e":"Y","\u0178":"Y","\u1ef6":"Y","\u1ef4":"Y","\u01b3":"Y","\u024e":"Y","\u1efe":"Y","\u24cf":"Z","\uff3a":"Z","\u0179":"Z","\u1e90":"Z","\u017b":"Z","\u017d":"Z","\u1e92":"Z","\u1e94":"Z","\u01b5":"Z","\u0224":"Z","\u2c7f":"Z","\u2c6b":"Z","\ua762":"Z","\u24d0":"a","\uff41":"a","\u1e9a":"a","\xe0":"a","\xe1":"a","\xe2":"a","\u1ea7":"a","\u1ea5":"a","\u1eab":"a","\u1ea9":"a","\xe3":"a","\u0101":"a","\u0103":"a","\u1eb1":"a","\u1eaf":"a","\u1eb5":"a","\u1eb3":"a","\u0227":"a","\u01e1":"a","\xe4":"a","\u01df":"a","\u1ea3":"a","\xe5":"a","\u01fb":"a","\u01ce":"a","\u0201":"a","\u0203":"a","\u1ea1":"a","\u1ead":"a","\u1eb7":"a","\u1e01":"a","\u0105":"a","\u2c65":"a","\u0250":"a","\ua733":"aa","\xe6":"ae","\u01fd":"ae","\u01e3":"ae","\ua735":"ao","\ua737":"au","\ua739":"av","\ua73b":"av","\ua73d":"ay","\u24d1":"b","\uff42":"b","\u1e03":"b","\u1e05":"b","\u1e07":"b","\u0180":"b","\u0183":"b","\u0253":"b","\u24d2":"c","\uff43":"c","\u0107":"c","\u0109":"c","\u010b":"c","\u010d":"c","\xe7":"c","\u1e09":"c","\u0188":"c","\u023c":"c","\ua73f":"c","\u2184":"c","\u24d3":"d","\uff44":"d","\u1e0b":"d","\u010f":"d","\u1e0d":"d","\u1e11":"d","\u1e13":"d","\u1e0f":"d","\u0111":"d","\u018c":"d","\u0256":"d","\u0257":"d","\ua77a":"d","\u01f3":"dz","\u01c6":"dz","\u24d4":"e","\uff45":"e","\xe8":"e","\xe9":"e","\xea":"e","\u1ec1":"e","\u1ebf":"e","\u1ec5":"e","\u1ec3":"e","\u1ebd":"e","\u0113":"e","\u1e15":"e","\u1e17":"e","\u0115":"e","\u0117":"e","\xeb":"e","\u1ebb":"e","\u011b":"e","\u0205":"e","\u0207":"e","\u1eb9":"e","\u1ec7":"e","\u0229":"e","\u1e1d":"e","\u0119":"e","\u1e19":"e","\u1e1b":"e","\u0247":"e","\u025b":"e","\u01dd":"e","\u24d5":"f","\uff46":"f","\u1e1f":"f","\u0192":"f","\ua77c":"f","\u24d6":"g","\uff47":"g","\u01f5":"g","\u011d":"g","\u1e21":"g","\u011f":"g","\u0121":"g","\u01e7":"g","\u0123":"g","\u01e5":"g","\u0260":"g","\ua7a1":"g","\u1d79":"g","\ua77f":"g","\u24d7":"h","\uff48":"h","\u0125":"h","\u1e23":"h","\u1e27":"h","\u021f":"h","\u1e25":"h","\u1e29":"h","\u1e2b":"h","\u1e96":"h","\u0127":"h","\u2c68":"h","\u2c76":"h","\u0265":"h","\u0195":"hv","\u24d8":"i","\uff49":"i","\xec":"i","\xed":"i","\xee":"i","\u0129":"i","\u012b":"i","\u012d":"i","\xef":"i","\u1e2f":"i","\u1ec9":"i","\u01d0":"i","\u0209":"i","\u020b":"i","\u1ecb":"i","\u012f":"i","\u1e2d":"i","\u0268":"i","\u0131":"i","\u24d9":"j","\uff4a":"j","\u0135":"j","\u01f0":"j","\u0249":"j","\u24da":"k","\uff4b":"k","\u1e31":"k","\u01e9":"k","\u1e33":"k","\u0137":"k","\u1e35":"k","\u0199":"k","\u2c6a":"k","\ua741":"k","\ua743":"k","\ua745":"k","\ua7a3":"k","\u24db":"l","\uff4c":"l","\u0140":"l","\u013a":"l","\u013e":"l","\u1e37":"l","\u1e39":"l","\u013c":"l","\u1e3d":"l","\u1e3b":"l","\u017f":"l","\u0142":"l","\u019a":"l","\u026b":"l","\u2c61":"l","\ua749":"l","\ua781":"l","\ua747":"l","\u01c9":"lj","\u24dc":"m","\uff4d":"m","\u1e3f":"m","\u1e41":"m","\u1e43":"m","\u0271":"m","\u026f":"m","\u24dd":"n","\uff4e":"n","\u01f9":"n","\u0144":"n","\xf1":"n","\u1e45":"n","\u0148":"n","\u1e47":"n","\u0146":"n","\u1e4b":"n","\u1e49":"n","\u019e":"n","\u0272":"n","\u0149":"n","\ua791":"n","\ua7a5":"n","\u01cc":"nj","\u24de":"o","\uff4f":"o","\xf2":"o","\xf3":"o","\xf4":"o","\u1ed3":"o","\u1ed1":"o","\u1ed7":"o","\u1ed5":"o","\xf5":"o","\u1e4d":"o","\u022d":"o","\u1e4f":"o","\u014d":"o","\u1e51":"o","\u1e53":"o","\u014f":"o","\u022f":"o","\u0231":"o","\xf6":"o","\u022b":"o","\u1ecf":"o","\u0151":"o","\u01d2":"o","\u020d":"o","\u020f":"o","\u01a1":"o","\u1edd":"o","\u1edb":"o","\u1ee1":"o","\u1edf":"o","\u1ee3":"o","\u1ecd":"o","\u1ed9":"o","\u01eb":"o","\u01ed":"o","\xf8":"o","\u01ff":"o","\u0254":"o","\ua74b":"o","\ua74d":"o","\u0275":"o","\u01a3":"oi","\u0223":"ou","\ua74f":"oo","\u24df":"p","\uff50":"p","\u1e55":"p","\u1e57":"p","\u01a5":"p","\u1d7d":"p","\ua751":"p","\ua753":"p","\ua755":"p","\u24e0":"q","\uff51":"q","\u024b":"q","\ua757":"q","\ua759":"q","\u24e1":"r","\uff52":"r","\u0155":"r","\u1e59":"r","\u0159":"r","\u0211":"r","\u0213":"r","\u1e5b":"r","\u1e5d":"r","\u0157":"r","\u1e5f":"r","\u024d":"r","\u027d":"r","\ua75b":"r","\ua7a7":"r","\ua783":"r","\u24e2":"s","\uff53":"s","\xdf":"s","\u015b":"s","\u1e65":"s","\u015d":"s","\u1e61":"s","\u0161":"s","\u1e67":"s","\u1e63":"s","\u1e69":"s","\u0219":"s","\u015f":"s","\u023f":"s","\ua7a9":"s","\ua785":"s","\u1e9b":"s","\u24e3":"t","\uff54":"t","\u1e6b":"t","\u1e97":"t","\u0165":"t","\u1e6d":"t","\u021b":"t","\u0163":"t","\u1e71":"t","\u1e6f":"t","\u0167":"t","\u01ad":"t","\u0288":"t","\u2c66":"t","\ua787":"t","\ua729":"tz","\u24e4":"u","\uff55":"u","\xf9":"u","\xfa":"u","\xfb":"u","\u0169":"u","\u1e79":"u","\u016b":"u","\u1e7b":"u","\u016d":"u","\xfc":"u","\u01dc":"u","\u01d8":"u","\u01d6":"u","\u01da":"u","\u1ee7":"u","\u016f":"u","\u0171":"u","\u01d4":"u","\u0215":"u","\u0217":"u","\u01b0":"u","\u1eeb":"u","\u1ee9":"u","\u1eef":"u","\u1eed":"u","\u1ef1":"u","\u1ee5":"u","\u1e73":"u","\u0173":"u","\u1e77":"u","\u1e75":"u","\u0289":"u","\u24e5":"v","\uff56":"v","\u1e7d":"v","\u1e7f":"v","\u028b":"v","\ua75f":"v","\u028c":"v","\ua761":"vy","\u24e6":"w","\uff57":"w","\u1e81":"w","\u1e83":"w","\u0175":"w","\u1e87":"w","\u1e85":"w","\u1e98":"w","\u1e89":"w","\u2c73":"w","\u24e7":"x","\uff58":"x","\u1e8b":"x","\u1e8d":"x","\u24e8":"y","\uff59":"y","\u1ef3":"y","\xfd":"y","\u0177":"y","\u1ef9":"y","\u0233":"y","\u1e8f":"y","\xff":"y","\u1ef7":"y","\u1e99":"y","\u1ef5":"y","\u01b4":"y","\u024f":"y","\u1eff":"y","\u24e9":"z","\uff5a":"z","\u017a":"z","\u1e91":"z","\u017c":"z","\u017e":"z","\u1e93":"z","\u1e95":"z","\u01b6":"z","\u0225":"z","\u0240":"z","\u2c6c":"z","\ua763":"z","\u0386":"\u0391","\u0388":"\u0395","\u0389":"\u0397","\u038a":"\u0399","\u03aa":"\u0399","\u038c":"\u039f","\u038e":"\u03a5","\u03ab":"\u03a5","\u038f":"\u03a9","\u03ac":"\u03b1","\u03ad":"\u03b5","\u03ae":"\u03b7","\u03af":"\u03b9","\u03ca":"\u03b9","\u0390":"\u03b9","\u03cc":"\u03bf","\u03cd":"\u03c5","\u03cb":"\u03c5","\u03b0":"\u03c5","\u03c9":"\u03c9","\u03c2":"\u03c3"};i=a(document),f=function(){var a=1;return function(){return a++}}(),c=O(Object,{bind:function(a){var b=this;return function(){a.apply(b,arguments)}},init:function(c){var d,e,g=".select2-results";this.opts=c=this.prepareOpts(c),this.id=c.id,c.element.data("select2")!==b&&null!==c.element.data("select2")&&c.element.data("select2").destroy(),this.container=this.createContainer(),this.liveRegion=a(".select2-hidden-accessible"),0==this.liveRegion.length&&(this.liveRegion=a("<span>",{role:"status","aria-live":"polite"}).addClass("select2-hidden-accessible").appendTo(document.body)),this.containerId="s2id_"+(c.element.attr("id")||"autogen"+f()),this.containerEventName=this.containerId.replace(/([.])/g,"_").replace(/([;&,\-\.\+\*\~':"\!\^#$%@\[\]\(\)=>\|])/g,"\\$1"),this.container.attr("id",this.containerId),this.container.attr("title",c.element.attr("title")),this.body=a(document.body),D(this.container,this.opts.element,this.opts.adaptContainerCssClass),this.container.attr("style",c.element.attr("style")),this.container.css(K(c.containerCss,this.opts.element)),this.container.addClass(K(c.containerCssClass,this.opts.element)),this.elementTabIndex=this.opts.element.attr("tabindex"),this.opts.element.data("select2",this).attr("tabindex","-1").before(this.container).on("click.select2",A),this.container.data("select2",this),this.dropdown=this.container.find(".select2-drop"),D(this.dropdown,this.opts.element,this.opts.adaptDropdownCssClass),this.dropdown.addClass(K(c.dropdownCssClass,this.opts.element)),this.dropdown.data("select2",this),this.dropdown.on("click",A),this.results=d=this.container.find(g),this.search=e=this.container.find("input.select2-input"),this.queryCount=0,this.resultsPage=0,this.context=null,this.initContainer(),this.container.on("click",A),v(this.results),this.dropdown.on("mousemove-filtered",g,this.bind(this.highlightUnderEvent)),this.dropdown.on("touchstart touchmove touchend",g,this.bind(function(a){this._touchEvent=!0,this.highlightUnderEvent(a)})),this.dropdown.on("touchmove",g,this.bind(this.touchMoved)),this.dropdown.on("touchstart touchend",g,this.bind(this.clearTouchMoved)),this.dropdown.on("click",this.bind(function(){this._touchEvent&&(this._touchEvent=!1,this.selectHighlighted())})),x(80,this.results),this.dropdown.on("scroll-debounced",g,this.bind(this.loadMoreIfNeeded)),a(this.container).on("change",".select2-input",function(a){a.stopPropagation()}),a(this.dropdown).on("change",".select2-input",function(a){a.stopPropagation()}),a.fn.mousewheel&&d.mousewheel(function(a,b,c,e){var f=d.scrollTop();e>0&&0>=f-e?(d.scrollTop(0),A(a)):0>e&&d.get(0).scrollHeight-d.scrollTop()+e<=d.height()&&(d.scrollTop(d.get(0).scrollHeight-d.height()),A(a))}),u(e),e.on("keyup-change input paste",this.bind(this.updateResults)),e.on("focus",function(){e.addClass("select2-focused")}),e.on("blur",function(){e.removeClass("select2-focused")}),this.dropdown.on("mouseup",g,this.bind(function(b){a(b.target).closest(".select2-result-selectable").length>0&&(this.highlightUnderEvent(b),this.selectHighlighted(b))})),this.dropdown.on("click mouseup mousedown touchstart touchend focusin",function(a){a.stopPropagation()}),this.nextSearchTerm=b,a.isFunction(this.opts.initSelection)&&(this.initSelection(),this.monitorSource()),null!==c.maximumInputLength&&this.search.attr("maxlength",c.maximumInputLength);var h=c.element.prop("disabled");h===b&&(h=!1),this.enable(!h);var i=c.element.prop("readonly");i===b&&(i=!1),this.readonly(i),j=j||q(),this.autofocus=c.element.prop("autofocus"),c.element.prop("autofocus",!1),this.autofocus&&this.focus(),this.search.attr("placeholder",c.searchInputPlaceholder)},destroy:function(){var a=this.opts.element,c=a.data("select2"),d=this;this.close(),a.length&&a[0].detachEvent&&d._sync&&a.each(function(){d._sync&&this.detachEvent("onpropertychange",d._sync)}),this.propertyObserver&&(this.propertyObserver.disconnect(),this.propertyObserver=null),this._sync=null,c!==b&&(c.container.remove(),c.liveRegion.remove(),c.dropdown.remove(),a.show().removeData("select2").off(".select2").prop("autofocus",this.autofocus||!1),this.elementTabIndex?a.attr({tabindex:this.elementTabIndex}):a.removeAttr("tabindex"),a.show()),N.call(this,"container","liveRegion","dropdown","results","search")},optionToData:function(a){return a.is("option")?{id:a.prop("value"),text:a.text(),element:a.get(),css:a.attr("class"),disabled:a.prop("disabled"),locked:r(a.attr("locked"),"locked")||r(a.data("locked"),!0)}:a.is("optgroup")?{text:a.attr("label"),children:[],element:a.get(),css:a.attr("class")}:void 0},prepareOpts:function(c){var d,e,g,h,i=this;if(d=c.element,"select"===d.get(0).tagName.toLowerCase()&&(this.select=e=c.element),e&&a.each(["id","multiple","ajax","query","createSearchChoice","initSelection","data","tags"],function(){if(this in c)throw new Error("Option '"+this+"' is not allowed for Select2 when attached to a <select> element.")}),c=a.extend({},{populateResults:function(d,e,g){var h,j=this.opts.id,k=this.liveRegion;h=function(d,e,l){var m,n,o,p,q,r,s,t,u,v;d=c.sortResults(d,e,g);var w=[];for(m=0,n=d.length;n>m;m+=1)o=d[m],q=o.disabled===!0,p=!q&&j(o)!==b,r=o.children&&o.children.length>0,s=a("<li></li>"),s.addClass("select2-results-dept-"+l),s.addClass("select2-result"),s.addClass(p?"select2-result-selectable":"select2-result-unselectable"),q&&s.addClass("select2-disabled"),r&&s.addClass("select2-result-with-children"),s.addClass(i.opts.formatResultCssClass(o)),s.attr("role","presentation"),t=a(document.createElement("div")),t.addClass("select2-result-label"),t.attr("id","select2-result-label-"+f()),t.attr("role","option"),v=c.formatResult(o,t,g,i.opts.escapeMarkup),v!==b&&(t.html(v),s.append(t)),r&&(u=a("<ul></ul>"),u.addClass("select2-result-sub"),h(o.children,u,l+1),s.append(u)),s.data("select2-data",o),w.push(s[0]);e.append(w),k.text(c.formatMatches(d.length))},h(e,d,0)}},a.fn.select2.defaults,c),"function"!=typeof c.id&&(g=c.id,c.id=function(a){return a[g]}),a.isArray(c.element.data("select2Tags"))){if("tags"in c)throw"tags specified as both an attribute 'data-select2-tags' and in options of Select2 "+c.element.attr("id");c.tags=c.element.data("select2Tags")}if(e?(c.query=this.bind(function(a){var f,g,h,c={results:[],more:!1},e=a.term;h=function(b,c){var d;b.is("option")&&b.css("display")!="none"?a.matcher(e,b.text(),b)&&c.push(i.optionToData(b)):b.is("optgroup")&&(d=i.optionToData(b),b.children().each2(function(a,b){h(b,d.children)}),d.children.length>0&&c.push(d))},f=d.children(),this.getPlaceholder()!==b&&f.length>0&&(g=this.getPlaceholderOption(),g&&(f=f.not(g))),f.each2(function(a,b){h(b,c.results)}),a.callback(c)}),c.id=function(a){return a.id}):"query"in c||("ajax"in c?(h=c.element.data("ajax-url"),h&&h.length>0&&(c.ajax.url=h),c.query=G.call(c.element,c.ajax)):"data"in c?c.query=H(c.data):"tags"in c&&(c.query=I(c.tags),c.createSearchChoice===b&&(c.createSearchChoice=function(b){return{id:a.trim(b),text:a.trim(b)}}),c.initSelection===b&&(c.initSelection=function(b,d){var e=[];a(s(b.val(),c.separator,c.transformVal)).each(function(){var b={id:this,text:this},d=c.tags;a.isFunction(d)&&(d=d()),a(d).each(function(){return r(this.id,b.id)?(b=this,!1):void 0}),e.push(b)}),d(e)}))),"function"!=typeof c.query)throw"query function not defined for Select2 "+c.element.attr("id");if("top"===c.createSearchChoicePosition)c.createSearchChoicePosition=function(a,b){a.unshift(b)};else if("bottom"===c.createSearchChoicePosition)c.createSearchChoicePosition=function(a,b){a.push(b)};else if("function"!=typeof c.createSearchChoicePosition)throw"invalid createSearchChoicePosition option must be 'top', 'bottom' or a custom function";return c},monitorSource:function(){var d,c=this.opts.element,e=this;c.on("change.select2",this.bind(function(){this.opts.element.data("select2-change-triggered")!==!0&&this.initSelection()})),this._sync=this.bind(function(){var a=c.prop("disabled");a===b&&(a=!1),this.enable(!a);var d=c.prop("readonly");d===b&&(d=!1),this.readonly(d),this.container&&(D(this.container,this.opts.element,this.opts.adaptContainerCssClass),this.container.addClass(K(this.opts.containerCssClass,this.opts.element))),this.dropdown&&(D(this.dropdown,this.opts.element,this.opts.adaptDropdownCssClass),this.dropdown.addClass(K(this.opts.dropdownCssClass,this.opts.element)))}),c.length&&c[0].attachEvent&&c.each(function(){this.attachEvent("onpropertychange",e._sync)}),d=window.MutationObserver||window.WebKitMutationObserver||window.MozMutationObserver,d!==b&&(this.propertyObserver&&(delete this.propertyObserver,this.propertyObserver=null),this.propertyObserver=new d(function(b){a.each(b,e._sync)}),this.propertyObserver.observe(c.get(0),{attributes:!0,subtree:!1}))},triggerSelect:function(b){var c=a.Event("select2-selecting",{val:this.id(b),object:b,choice:b});return this.opts.element.trigger(c),!c.isDefaultPrevented()},triggerChange:function(b){b=b||{},b=a.extend({},b,{type:"change",val:this.val()}),this.opts.element.data("select2-change-triggered",!0),this.opts.element.trigger(b),this.opts.element.data("select2-change-triggered",!1),this.opts.element.click(),this.opts.blurOnChange&&this.opts.element.blur()},isInterfaceEnabled:function(){return this.enabledInterface===!0},enableInterface:function(){var a=this._enabled&&!this._readonly,b=!a;return a===this.enabledInterface?!1:(this.container.toggleClass("select2-container-disabled",b),this.close(),this.enabledInterface=a,!0)},enable:function(a){a===b&&(a=!0),this._enabled!==a&&(this._enabled=a,this.opts.element.prop("disabled",!a),this.enableInterface())},disable:function(){this.enable(!1)},readonly:function(a){a===b&&(a=!1),this._readonly!==a&&(this._readonly=a,this.opts.element.prop("readonly",a),this.enableInterface())},opened:function(){return this.container?this.container.hasClass("select2-dropdown-open"):!1},positionDropdown:function(){var v,w,x,y,z,b=this.dropdown,c=this.container,d=c.offset(),e=c.outerHeight(!1),f=c.outerWidth(!1),g=b.outerHeight(!1),h=a(window),i=h.width(),k=h.height(),l=h.scrollLeft()+i,m=h.scrollTop()+k,n=d.top+e,o=d.left,p=m>=n+g,q=d.top-g>=h.scrollTop(),r=b.outerWidth(!1),s=function(){return l>=o+r},t=function(){return d.left+l+c.outerWidth(!1)>r},u=b.hasClass("select2-drop-above");u?(w=!0,!q&&p&&(x=!0,w=!1)):(w=!1,!p&&q&&(x=!0,w=!0)),x&&(b.hide(),d=this.container.offset(),e=this.container.outerHeight(!1),f=this.container.outerWidth(!1),g=b.outerHeight(!1),l=h.scrollLeft()+i,m=h.scrollTop()+k,n=d.top+e,o=d.left,r=b.outerWidth(!1),b.show(),this.focusSearch()),this.opts.dropdownAutoWidth?(z=a(".select2-results",b)[0],b.addClass("select2-drop-auto-width"),b.css("width",""),r=b.outerWidth(!1)+(z.scrollHeight===z.clientHeight?0:j.width),r>f?f=r:r=f,g=b.outerHeight(!1)):this.container.removeClass("select2-drop-auto-width"),"static"!==this.body.css("position")&&(v=this.body.offset(),n-=v.top,o-=v.left),!s()&&t()&&(o=d.left+this.container.outerWidth(!1)-r),y={left:o,width:f},w?(y.top=d.top-g,y.bottom="auto",this.container.addClass("select2-drop-above"),b.addClass("select2-drop-above")):(y.top=n,y.bottom="auto",this.container.removeClass("select2-drop-above"),b.removeClass("select2-drop-above")),y=a.extend(y,K(this.opts.dropdownCss,this.opts.element)),b.css(y)},shouldOpen:function(){var b;return this.opened()?!1:this._enabled===!1||this._readonly===!0?!1:(b=a.Event("select2-opening"),this.opts.element.trigger(b),!b.isDefaultPrevented())},clearDropdownAlignmentPreference:function(){this.container.removeClass("select2-drop-above"),this.dropdown.removeClass("select2-drop-above")},open:function(){return this.shouldOpen()?(this.opening(),i.on("mousemove.select2Event",function(a){h.x=a.pageX,h.y=a.pageY}),!0):!1},opening:function(){var f,b=this.containerEventName,c="scroll."+b,d="resize."+b,e="orientationchange."+b;this.container.addClass("select2-dropdown-open").addClass("select2-container-active"),this.clearDropdownAlignmentPreference(),this.dropdown[0]!==this.body.children().last()[0]&&this.dropdown.detach().appendTo(this.body),f=a("#select2-drop-mask"),0===f.length&&(f=a(document.createElement("div")),f.attr("id","select2-drop-mask").attr("class","select2-drop-mask"),f.hide(),f.appendTo(this.body),f.on("mousedown touchstart click",function(b){n(f);var d,c=a("#select2-drop");c.length>0&&(d=c.data("select2"),d.opts.selectOnBlur&&d.selectHighlighted({noFocus:!0}),d.close(),b.preventDefault(),b.stopPropagation())})),this.dropdown.prev()[0]!==f[0]&&this.dropdown.before(f),a("#select2-drop").removeAttr("id"),this.dropdown.attr("id","select2-drop"),f.show(),this.positionDropdown(),this.dropdown.show(),this.positionDropdown(),this.dropdown.addClass("select2-drop-active");var g=this;this.container.parents().add(window).each(function(){a(this).on(d+" "+c+" "+e,function(){g.opened()&&g.positionDropdown()})})},close:function(){if(this.opened()){var b=this.containerEventName,c="scroll."+b,d="resize."+b,e="orientationchange."+b;this.container.parents().add(window).each(function(){a(this).off(c).off(d).off(e)}),this.clearDropdownAlignmentPreference(),a("#select2-drop-mask").hide(),this.dropdown.removeAttr("id"),this.dropdown.hide(),this.container.removeClass("select2-dropdown-open").removeClass("select2-container-active"),this.results.empty(),i.off("mousemove.select2Event"),this.clearSearch(),this.search.removeClass("select2-active"),this.opts.element.trigger(a.Event("select2-close"))}},externalSearch:function(a){this.open(),this.search.val(a),this.updateResults(!1)},clearSearch:function(){},getMaximumSelectionSize:function(){return K(this.opts.maximumSelectionSize,this.opts.element)},ensureHighlightVisible:function(){var c,d,e,f,g,h,i,j,b=this.results;if(d=this.highlight(),!(0>d)){if(0==d)return b.scrollTop(0),void 0;c=this.findHighlightableChoices().find(".select2-result-label"),e=a(c[d]),j=(e.offset()||{}).top||0,f=j+e.outerHeight(!0),d===c.length-1&&(i=b.find("li.select2-more-results"),i.length>0&&(f=i.offset().top+i.outerHeight(!0))),g=b.offset().top+b.outerHeight(!1),f>g&&b.scrollTop(b.scrollTop()+(f-g)),h=j-b.offset().top,0>h&&"none"!=e.css("display")&&b.scrollTop(b.scrollTop()+h)}},findHighlightableChoices:function(){return this.results.find(".select2-result-selectable:not(.select2-disabled):not(.select2-selected)")},moveHighlight:function(b){for(var c=this.findHighlightableChoices(),d=this.highlight();d>-1&&d<c.length;){d+=b;
 var e=a(c[d]);if(e.hasClass("select2-result-selectable")&&!e.hasClass("select2-disabled")&&!e.hasClass("select2-selected")){this.highlight(d);break}}},highlight:function(b){var d,e,c=this.findHighlightableChoices();return 0===arguments.length?p(c.filter(".select2-highlighted")[0],c.get()):(b>=c.length&&(b=c.length-1),0>b&&(b=0),this.removeHighlight(),d=a(c[b]),d.addClass("select2-highlighted"),this.search.attr("aria-activedescendant",d.find(".select2-result-label").attr("id")),this.ensureHighlightVisible(),this.liveRegion.text(d.text()),e=d.data("select2-data"),e&&this.opts.element.trigger({type:"select2-highlight",val:this.id(e),choice:e}),void 0)},removeHighlight:function(){this.results.find(".select2-highlighted").removeClass("select2-highlighted")},touchMoved:function(){this._touchMoved=!0},clearTouchMoved:function(){this._touchMoved=!1},countSelectableResults:function(){return this.findHighlightableChoices().length},highlightUnderEvent:function(b){var c=a(b.target).closest(".select2-result-selectable");if(c.length>0&&!c.is(".select2-highlighted")){var d=this.findHighlightableChoices();this.highlight(d.index(c))}else 0==c.length&&this.removeHighlight()},loadMoreIfNeeded:function(){var c,a=this.results,b=a.find("li.select2-more-results"),d=this.resultsPage+1,e=this,f=this.search.val(),g=this.context;0!==b.length&&(c=b.offset().top-a.offset().top-a.height(),c<=this.opts.loadMorePadding&&(b.addClass("select2-active"),this.opts.query({element:this.opts.element,term:f,page:d,context:g,matcher:this.opts.matcher,callback:this.bind(function(c){e.opened()&&(e.opts.populateResults.call(this,a,c.results,{term:f,page:d,context:g}),e.postprocessResults(c,!1,!1),c.more===!0?(b.detach().appendTo(a).html(e.opts.escapeMarkup(K(e.opts.formatLoadMore,e.opts.element,d+1))),window.setTimeout(function(){e.loadMoreIfNeeded()},10)):b.remove(),e.positionDropdown(),e.resultsPage=d,e.context=c.context,this.opts.element.trigger({type:"select2-loaded",items:c}))})})))},tokenize:function(){},updateResults:function(c){function m(){d.removeClass("select2-active"),h.positionDropdown(),e.find(".select2-no-results,.select2-selection-limit,.select2-searching").length?h.liveRegion.text(e.text()):h.liveRegion.text(h.opts.formatMatches(e.find('.select2-result-selectable:not(".select2-selected")').length))}function n(a){e.html(a),m()}var g,i,l,d=this.search,e=this.results,f=this.opts,h=this,j=d.val(),k=a.data(this.container,"select2-last-term");if((c===!0||!k||!r(j,k))&&(a.data(this.container,"select2-last-term",j),c===!0||this.showSearchInput!==!1&&this.opened())){l=++this.queryCount;var o=this.getMaximumSelectionSize();if(o>=1&&(g=this.data(),a.isArray(g)&&g.length>=o&&J(f.formatSelectionTooBig,"formatSelectionTooBig")))return n("<li class='select2-selection-limit'>"+K(f.formatSelectionTooBig,f.element,o)+"</li>"),void 0;if(d.val().length<f.minimumInputLength)return J(f.formatInputTooShort,"formatInputTooShort")?n("<li class='select2-no-results'>"+K(f.formatInputTooShort,f.element,d.val(),f.minimumInputLength)+"</li>"):n(""),c&&this.showSearch&&this.showSearch(!0),void 0;if(f.maximumInputLength&&d.val().length>f.maximumInputLength)return J(f.formatInputTooLong,"formatInputTooLong")?n("<li class='select2-no-results'>"+K(f.formatInputTooLong,f.element,d.val(),f.maximumInputLength)+"</li>"):n(""),void 0;f.formatSearching&&0===this.findHighlightableChoices().length&&n("<li class='select2-searching'>"+K(f.formatSearching,f.element)+"</li>"),d.addClass("select2-active"),this.removeHighlight(),i=this.tokenize(),i!=b&&null!=i&&d.val(i),this.resultsPage=1,f.query({element:f.element,term:d.val(),page:this.resultsPage,context:null,matcher:f.matcher,callback:this.bind(function(g){var i;if(l==this.queryCount){if(!this.opened())return this.search.removeClass("select2-active"),void 0;if(g.hasError!==b&&J(f.formatAjaxError,"formatAjaxError"))return n("<li class='select2-ajax-error'>"+K(f.formatAjaxError,f.element,g.jqXHR,g.textStatus,g.errorThrown)+"</li>"),void 0;if(this.context=g.context===b?null:g.context,this.opts.createSearchChoice&&""!==d.val()&&(i=this.opts.createSearchChoice.call(h,d.val(),g.results),i!==b&&null!==i&&h.id(i)!==b&&null!==h.id(i)&&0===a(g.results).filter(function(){return r(h.id(this),h.id(i))}).length&&this.opts.createSearchChoicePosition(g.results,i)),0===g.results.length&&J(f.formatNoMatches,"formatNoMatches"))return n("<li class='select2-no-results'>"+K(f.formatNoMatches,f.element,d.val())+"</li>"),void 0;e.empty(),h.opts.populateResults.call(this,e,g.results,{term:d.val(),page:this.resultsPage,context:null}),g.more===!0&&J(f.formatLoadMore,"formatLoadMore")&&(e.append("<li class='select2-more-results'>"+f.escapeMarkup(K(f.formatLoadMore,f.element,this.resultsPage))+"</li>"),window.setTimeout(function(){h.loadMoreIfNeeded()},10)),this.postprocessResults(g,c),m(),this.opts.element.trigger({type:"select2-loaded",items:g})}})})}},cancel:function(){this.close()},blur:function(){this.opts.selectOnBlur&&this.selectHighlighted({noFocus:!0}),this.close(),this.container.removeClass("select2-container-active"),this.search[0]===document.activeElement&&this.search.blur(),this.clearSearch(),this.selection.find(".select2-search-choice-focus").removeClass("select2-search-choice-focus")},focusSearch:function(){y(this.search)},selectHighlighted:function(a){if(this._touchMoved)return this.clearTouchMoved(),void 0;var b=this.highlight(),c=this.results.find(".select2-highlighted"),d=c.closest(".select2-result").data("select2-data");d?(this.highlight(b),this.onSelect(d,a)):a&&a.noFocus&&this.close()},getPlaceholder:function(){var a;return this.opts.element.attr("placeholder")||this.opts.element.attr("data-placeholder")||this.opts.element.data("placeholder")||this.opts.placeholder||((a=this.getPlaceholderOption())!==b?a.text():b)},getPlaceholderOption:function(){if(this.select){var c=this.select.children("option").first();if(this.opts.placeholderOption!==b)return"first"===this.opts.placeholderOption&&c||"function"==typeof this.opts.placeholderOption&&this.opts.placeholderOption(this.select);if(""===a.trim(c.text())&&""===c.val())return c}},initContainerWidth:function(){function c(){var c,d,e,f,g,h;if("off"===this.opts.width)return null;if("element"===this.opts.width)return 0===this.opts.element.outerWidth(!1)?"auto":this.opts.element.outerWidth(!1)+"px";if("copy"===this.opts.width||"resolve"===this.opts.width){if(c=this.opts.element.attr("style"),c!==b)for(d=c.split(";"),f=0,g=d.length;g>f;f+=1)if(h=d[f].replace(/\s/g,""),e=h.match(/^width:(([-+]?([0-9]*\.)?[0-9]+)(px|em|ex|%|in|cm|mm|pt|pc))/i),null!==e&&e.length>=1)return e[1];return"resolve"===this.opts.width?(c=this.opts.element.css("width"),c.indexOf("%")>0?c:0===this.opts.element.outerWidth(!1)?"auto":this.opts.element.outerWidth(!1)+"px"):null}return a.isFunction(this.opts.width)?this.opts.width():this.opts.width}var d=c.call(this);null!==d&&this.container.css("width",d)}}),d=O(c,{createContainer:function(){var b=a(document.createElement("div")).attr({"class":"select2-container"}).html(["<a href='javascript:void(0)' class='select2-choice' tabindex='-1'>","   <span class='select2-chosen'>&#160;</span><abbr class='select2-search-choice-close'></abbr>","   <span class='select2-arrow' role='presentation'><b role='presentation'></b></span>","</a>","<label for='' class='select2-offscreen'></label>","<input class='select2-focusser select2-offscreen' type='text' aria-haspopup='true' role='button' />","<div class='select2-drop select2-display-none'>","   <div class='select2-search'>","       <label for='' class='select2-offscreen'></label>","       <input type='text' autocomplete='off' autocorrect='off' autocapitalize='off' spellcheck='false' class='select2-input' role='combobox' aria-expanded='true'","       aria-autocomplete='list' />","   </div>","   <ul class='select2-results' role='listbox'>","   </ul>","</div>"].join(""));return b},enableInterface:function(){this.parent.enableInterface.apply(this,arguments)&&this.focusser.prop("disabled",!this.isInterfaceEnabled())},opening:function(){var c,d,e;this.opts.minimumResultsForSearch>=0&&this.showSearch(!0),this.parent.opening.apply(this,arguments),this.showSearchInput!==!1&&this.search.val(this.focusser.val()),this.opts.shouldFocusInput(this)&&(this.search.focus(),c=this.search.get(0),c.createTextRange?(d=c.createTextRange(),d.collapse(!1),d.select()):c.setSelectionRange&&(e=this.search.val().length,c.setSelectionRange(e,e))),""===this.search.val()&&this.nextSearchTerm!=b&&(this.search.val(this.nextSearchTerm),this.search.select()),this.focusser.prop("disabled",!0).val(""),this.updateResults(!0),this.opts.element.trigger(a.Event("select2-open"))},close:function(){this.opened()&&(this.parent.close.apply(this,arguments),this.focusser.prop("disabled",!1),this.opts.shouldFocusInput(this)&&this.focusser.focus())},focus:function(){this.opened()?this.close():(this.focusser.prop("disabled",!1),this.opts.shouldFocusInput(this)&&this.focusser.focus())},isFocused:function(){return this.container.hasClass("select2-container-active")},cancel:function(){this.parent.cancel.apply(this,arguments),this.focusser.prop("disabled",!1),this.opts.shouldFocusInput(this)&&this.focusser.focus()},destroy:function(){a("label[for='"+this.focusser.attr("id")+"']").attr("for",this.opts.element.attr("id")),this.parent.destroy.apply(this,arguments),N.call(this,"selection","focusser")},initContainer:function(){var b,g,c=this.container,d=this.dropdown,e=f();this.opts.minimumResultsForSearch<0?this.showSearch(!1):this.showSearch(!0),this.selection=b=c.find(".select2-choice"),this.focusser=c.find(".select2-focusser"),b.find(".select2-chosen").attr("id","select2-chosen-"+e),this.focusser.attr("aria-labelledby","select2-chosen-"+e),this.results.attr("id","select2-results-"+e),this.search.attr("aria-owns","select2-results-"+e),this.focusser.attr("id","s2id_autogen"+e),g=a("label[for='"+this.opts.element.attr("id")+"']"),this.opts.element.focus(this.bind(function(){this.focus()})),this.focusser.prev().text(g.text()).attr("for",this.focusser.attr("id"));var h=this.opts.element.attr("title");this.opts.element.attr("title",h||g.text()),this.focusser.attr("tabindex",this.elementTabIndex),this.search.attr("id",this.focusser.attr("id")+"_search"),this.search.prev().text(a("label[for='"+this.focusser.attr("id")+"']").text()).attr("for",this.search.attr("id")),this.search.on("keydown",this.bind(function(a){if(this.isInterfaceEnabled()&&229!=a.keyCode){if(a.which===k.PAGE_UP||a.which===k.PAGE_DOWN)return A(a),void 0;switch(a.which){case k.UP:case k.DOWN:return this.moveHighlight(a.which===k.UP?-1:1),A(a),void 0;case k.ENTER:return this.selectHighlighted(),A(a),void 0;case k.TAB:return this.selectHighlighted({noFocus:!0}),void 0;case k.ESC:return this.cancel(a),A(a),void 0}}})),this.search.on("blur",this.bind(function(){document.activeElement===this.body.get(0)&&window.setTimeout(this.bind(function(){this.opened()&&this.search.focus()}),0)})),this.focusser.on("keydown",this.bind(function(a){if(this.isInterfaceEnabled()&&a.which!==k.TAB&&!k.isControl(a)&&!k.isFunctionKey(a)&&a.which!==k.ESC){if(this.opts.openOnEnter===!1&&a.which===k.ENTER)return A(a),void 0;if(a.which==k.DOWN||a.which==k.UP||a.which==k.ENTER&&this.opts.openOnEnter){if(a.altKey||a.ctrlKey||a.shiftKey||a.metaKey)return;return this.open(),A(a),void 0}return a.which==k.DELETE||a.which==k.BACKSPACE?(this.opts.allowClear&&this.clear(),A(a),void 0):void 0}})),u(this.focusser),this.focusser.on("keyup-change input",this.bind(function(a){if(this.opts.minimumResultsForSearch>=0){if(a.stopPropagation(),this.opened())return;this.open()}})),b.on("mousedown touchstart","abbr",this.bind(function(a){this.isInterfaceEnabled()&&(this.clear(),B(a),this.close(),this.selection&&this.selection.focus())})),b.on("mousedown touchstart",this.bind(function(c){n(b),this.container.hasClass("select2-container-active")||this.opts.element.trigger(a.Event("select2-focus")),this.opened()?this.close():this.isInterfaceEnabled()&&this.open(),A(c)})),d.on("mousedown touchstart",this.bind(function(){this.opts.shouldFocusInput(this)&&this.search.focus()})),b.on("focus",this.bind(function(a){A(a)})),this.focusser.on("focus",this.bind(function(){this.container.hasClass("select2-container-active")||this.opts.element.trigger(a.Event("select2-focus")),this.container.addClass("select2-container-active")})).on("blur",this.bind(function(){this.opened()||(this.container.removeClass("select2-container-active"),this.opts.element.trigger(a.Event("select2-blur")))})),this.search.on("focus",this.bind(function(){this.container.hasClass("select2-container-active")||this.opts.element.trigger(a.Event("select2-focus")),this.container.addClass("select2-container-active")})),this.initContainerWidth(),this.opts.element.hide(),this.setPlaceholder()},clear:function(b){var c=this.selection.data("select2-data");if(c){var d=a.Event("select2-clearing");if(this.opts.element.trigger(d),d.isDefaultPrevented())return;var e=this.getPlaceholderOption();this.opts.element.val(e?e.val():""),this.selection.find(".select2-chosen").empty(),this.selection.removeData("select2-data"),this.setPlaceholder(),b!==!1&&(this.opts.element.trigger({type:"select2-removed",val:this.id(c),choice:c}),this.triggerChange({removed:c}))}},initSelection:function(){if(this.isPlaceholderOptionSelected())this.updateSelection(null),this.close(),this.setPlaceholder();else{var c=this;this.opts.initSelection.call(null,this.opts.element,function(a){a!==b&&null!==a&&(c.updateSelection(a),c.close(),c.setPlaceholder(),c.nextSearchTerm=c.opts.nextSearchTerm(a,c.search.val()))})}},isPlaceholderOptionSelected:function(){var a;return this.getPlaceholder()===b?!1:(a=this.getPlaceholderOption())!==b&&a.prop("selected")||""===this.opts.element.val()||this.opts.element.val()===b||null===this.opts.element.val()},prepareOpts:function(){var b=this.parent.prepareOpts.apply(this,arguments),c=this;return"select"===b.element.get(0).tagName.toLowerCase()?b.initSelection=function(a,b){var d=a.find("option").filter(function(){return this.selected&&!this.disabled});b(c.optionToData(d))}:"data"in b&&(b.initSelection=b.initSelection||function(c,d){var e=c.val(),f=null;b.query({matcher:function(a,c,d){var g=r(e,b.id(d));return g&&(f=d),g},callback:a.isFunction(d)?function(){d(f)}:a.noop})}),b},getPlaceholder:function(){return this.select&&this.getPlaceholderOption()===b?b:this.parent.getPlaceholder.apply(this,arguments)},setPlaceholder:function(){var a=this.getPlaceholder();if(this.isPlaceholderOptionSelected()&&a!==b){if(this.select&&this.getPlaceholderOption()===b)return;this.selection.find(".select2-chosen").html(this.opts.escapeMarkup(a)),this.selection.addClass("select2-default"),this.container.removeClass("select2-allowclear")}},postprocessResults:function(a,b,c){var d=0,e=this;if(this.findHighlightableChoices().each2(function(a,b){return r(e.id(b.data("select2-data")),e.opts.element.val())?(d=a,!1):void 0}),c!==!1&&(b===!0&&d>=0?this.highlight(d):this.highlight(0)),b===!0){var g=this.opts.minimumResultsForSearch;g>=0&&this.showSearch(L(a.results)>=g)}},showSearch:function(b){this.showSearchInput!==b&&(this.showSearchInput=b,this.dropdown.find(".select2-search").toggleClass("select2-search-hidden",!b),this.dropdown.find(".select2-search").toggleClass("select2-offscreen",!b),a(this.dropdown,this.container).toggleClass("select2-with-searchbox",b))},onSelect:function(a,b){if(this.triggerSelect(a)){var c=this.opts.element.val(),d=this.data();this.opts.element.val(this.id(a)),this.updateSelection(a),this.opts.element.trigger({type:"select2-selected",val:this.id(a),choice:a}),this.nextSearchTerm=this.opts.nextSearchTerm(a,this.search.val()),this.close(),b&&b.noFocus||!this.opts.shouldFocusInput(this)||this.focusser.focus(),r(c,this.id(a))||this.triggerChange({added:a,removed:d})}},updateSelection:function(a){var d,e,c=this.selection.find(".select2-chosen");this.selection.data("select2-data",a),c.empty(),null!==a&&(d=this.opts.formatSelection(a,c,this.opts.escapeMarkup)),d!==b&&c.append(d),e=this.opts.formatSelectionCssClass(a,c),e!==b&&c.addClass(e),this.selection.removeClass("select2-default"),this.opts.allowClear&&this.getPlaceholder()!==b&&this.container.addClass("select2-allowclear")},val:function(){var a,c=!1,d=null,e=this,f=this.data();if(0===arguments.length)return this.opts.element.val();if(a=arguments[0],arguments.length>1&&(c=arguments[1]),this.select)this.select.val(a).find("option").filter(function(){return this.selected}).each2(function(a,b){return d=e.optionToData(b),!1}),this.updateSelection(d),this.setPlaceholder(),c&&this.triggerChange({added:d,removed:f});else{if(!a&&0!==a)return this.clear(c),void 0;if(this.opts.initSelection===b)throw new Error("cannot call val() if initSelection() is not defined");this.opts.element.val(a),this.opts.initSelection(this.opts.element,function(a){e.opts.element.val(a?e.id(a):""),e.updateSelection(a),e.setPlaceholder(),c&&e.triggerChange({added:a,removed:f})})}},clearSearch:function(){this.search.val(""),this.focusser.val("")},data:function(a){var c,d=!1;return 0===arguments.length?(c=this.selection.data("select2-data"),c==b&&(c=null),c):(arguments.length>1&&(d=arguments[1]),a?(c=this.data(),this.opts.element.val(a?this.id(a):""),this.updateSelection(a),d&&this.triggerChange({added:a,removed:c})):this.clear(d),void 0)}}),e=O(c,{createContainer:function(){var b=a(document.createElement("div")).attr({"class":"select2-container select2-container-multi"}).html(["<ul class='select2-choices'>","  <li class='select2-search-field'>","    <label for='' class='select2-offscreen'></label>","    <input type='text' autocomplete='off' autocorrect='off' autocapitalize='off' spellcheck='false' class='select2-input'>","  </li>","</ul>","<div class='select2-drop select2-drop-multi select2-display-none'>","   <ul class='select2-results'>","   </ul>","</div>"].join(""));return b},prepareOpts:function(){var b=this.parent.prepareOpts.apply(this,arguments),c=this;return"select"===b.element.get(0).tagName.toLowerCase()?b.initSelection=function(a,b){var d=[];a.find("option").filter(function(){return this.selected&&!this.disabled}).each2(function(a,b){d.push(c.optionToData(b))}),b(d)}:"data"in b&&(b.initSelection=b.initSelection||function(c,d){var e=s(c.val(),b.separator,b.transformVal),f=[];b.query({matcher:function(c,d,g){var h=a.grep(e,function(a){return r(a,b.id(g))}).length;return h&&f.push(g),h},callback:a.isFunction(d)?function(){for(var a=[],c=0;c<e.length;c++)for(var g=e[c],h=0;h<f.length;h++){var i=f[h];if(r(g,b.id(i))){a.push(i),f.splice(h,1);break}}d(a)}:a.noop})}),b},selectChoice:function(a){var b=this.container.find(".select2-search-choice-focus");b.length&&a&&a[0]==b[0]||(b.length&&this.opts.element.trigger("choice-deselected",b),b.removeClass("select2-search-choice-focus"),a&&a.length&&(this.close(),a.addClass("select2-search-choice-focus"),this.opts.element.trigger("choice-selected",a)))},destroy:function(){a("label[for='"+this.search.attr("id")+"']").attr("for",this.opts.element.attr("id")),this.parent.destroy.apply(this,arguments),N.call(this,"searchContainer","selection")},initContainer:function(){var c,b=".select2-choices";this.searchContainer=this.container.find(".select2-search-field"),this.selection=c=this.container.find(b);var d=this;this.selection.on("click",".select2-container:not(.select2-container-disabled) .select2-search-choice:not(.select2-locked)",function(){d.search[0].focus(),d.selectChoice(a(this))}),this.search.attr("id","s2id_autogen"+f()),this.search.prev().text(a("label[for='"+this.opts.element.attr("id")+"']").text()).attr("for",this.search.attr("id")),this.opts.element.focus(this.bind(function(){this.focus()})),this.search.on("input paste",this.bind(function(){this.search.attr("placeholder")&&0==this.search.val().length||this.isInterfaceEnabled()&&(this.opened()||this.open())})),this.search.attr("tabindex",this.elementTabIndex),this.keydowns=0,this.search.on("keydown",this.bind(function(a){if(this.isInterfaceEnabled()){++this.keydowns;var b=c.find(".select2-search-choice-focus"),d=b.prev(".select2-search-choice:not(.select2-locked)"),e=b.next(".select2-search-choice:not(.select2-locked)"),f=z(this.search);if(b.length&&(a.which==k.LEFT||a.which==k.RIGHT||a.which==k.BACKSPACE||a.which==k.DELETE||a.which==k.ENTER)){var g=b;return a.which==k.LEFT&&d.length?g=d:a.which==k.RIGHT?g=e.length?e:null:a.which===k.BACKSPACE?this.unselect(b.first())&&(this.search.width(10),g=d.length?d:e):a.which==k.DELETE?this.unselect(b.first())&&(this.search.width(10),g=e.length?e:null):a.which==k.ENTER&&(g=null),this.selectChoice(g),A(a),g&&g.length||this.open(),void 0}if((a.which===k.BACKSPACE&&1==this.keydowns||a.which==k.LEFT)&&0==f.offset&&!f.length)return this.selectChoice(c.find(".select2-search-choice:not(.select2-locked)").last()),A(a),void 0;if(this.selectChoice(null),this.opened())switch(a.which){case k.UP:case k.DOWN:return this.moveHighlight(a.which===k.UP?-1:1),A(a),void 0;case k.ENTER:return this.selectHighlighted(),A(a),void 0;case k.TAB:return this.selectHighlighted({noFocus:!0}),this.close(),void 0;case k.ESC:return this.cancel(a),A(a),void 0}if(a.which!==k.TAB&&!k.isControl(a)&&!k.isFunctionKey(a)&&a.which!==k.BACKSPACE&&a.which!==k.ESC){if(a.which===k.ENTER){if(this.opts.openOnEnter===!1)return;if(a.altKey||a.ctrlKey||a.shiftKey||a.metaKey)return}this.open(),(a.which===k.PAGE_UP||a.which===k.PAGE_DOWN)&&A(a),a.which===k.ENTER&&A(a)}}})),this.search.on("keyup",this.bind(function(){this.keydowns=0,this.resizeSearch()})),this.search.on("blur",this.bind(function(b){this.container.removeClass("select2-container-active"),this.search.removeClass("select2-focused"),this.selectChoice(null),this.opened()||this.clearSearch(),b.stopImmediatePropagation(),this.opts.element.trigger(a.Event("select2-blur"))})),this.container.on("click",b,this.bind(function(b){this.isInterfaceEnabled()&&(a(b.target).closest(".select2-search-choice").length>0||(this.selectChoice(null),this.clearPlaceholder(),this.container.hasClass("select2-container-active")||this.opts.element.trigger(a.Event("select2-focus")),this.open(),this.focusSearch(),b.preventDefault()))})),this.container.on("focus",b,this.bind(function(){this.isInterfaceEnabled()&&(this.container.hasClass("select2-container-active")||this.opts.element.trigger(a.Event("select2-focus")),this.container.addClass("select2-container-active"),this.dropdown.addClass("select2-drop-active"),this.clearPlaceholder())})),this.initContainerWidth(),this.opts.element.hide(),this.clearSearch()},enableInterface:function(){this.parent.enableInterface.apply(this,arguments)&&this.search.prop("disabled",!this.isInterfaceEnabled())},initSelection:function(){if(""===this.opts.element.val()&&""===this.opts.element.text()&&(this.updateSelection([]),this.close(),this.clearSearch()),this.select||""!==this.opts.element.val()){var c=this;this.opts.initSelection.call(null,this.opts.element,function(a){a!==b&&null!==a&&(c.updateSelection(a),c.close(),c.clearSearch())})}},clearSearch:function(){var a=this.getPlaceholder(),c=this.getMaxSearchWidth();a!==b&&0===this.getVal().length&&this.search.hasClass("select2-focused")===!1?(this.search.val(a).addClass("select2-default"),this.search.width(c>0?c:this.container.css("width"))):this.search.val("").width(10)},clearPlaceholder:function(){this.search.hasClass("select2-default")&&this.search.val("").removeClass("select2-default")},opening:function(){this.clearPlaceholder(),this.resizeSearch(),this.parent.opening.apply(this,arguments),this.focusSearch(),""===this.search.val()&&this.nextSearchTerm!=b&&(this.search.val(this.nextSearchTerm),this.search.select()),this.updateResults(!0),this.opts.shouldFocusInput(this)&&this.search.focus(),this.opts.element.trigger(a.Event("select2-open"))},close:function(){this.opened()&&this.parent.close.apply(this,arguments)},focus:function(){this.close(),this.search.focus()},isFocused:function(){return this.search.hasClass("select2-focused")},updateSelection:function(b){var c=[],d=[],e=this;a(b).each(function(){p(e.id(this),c)<0&&(c.push(e.id(this)),d.push(this))}),b=d,this.selection.find(".select2-search-choice").remove(),a(b).each(function(){e.addSelectedChoice(this)}),e.postprocessResults()},tokenize:function(){var a=this.search.val();a=this.opts.tokenizer.call(this,a,this.data(),this.bind(this.onSelect),this.opts),null!=a&&a!=b&&(this.search.val(a),a.length>0&&this.open())},onSelect:function(a,c){this.triggerSelect(a)&&""!==a.text&&(this.addSelectedChoice(a),this.opts.element.trigger({type:"selected",val:this.id(a),choice:a}),this.nextSearchTerm=this.opts.nextSearchTerm(a,this.search.val()),this.clearSearch(),this.updateResults(),(this.select||!this.opts.closeOnSelect)&&this.postprocessResults(a,!1,this.opts.closeOnSelect===!0),this.opts.closeOnSelect?(this.close(),this.search.width(10)):this.countSelectableResults()>0?(this.search.width(10),this.resizeSearch(),this.getMaximumSelectionSize()>0&&this.val().length>=this.getMaximumSelectionSize()?this.updateResults(!0):this.nextSearchTerm!=b&&(this.search.val(this.nextSearchTerm),this.updateResults(),this.search.select()),this.positionDropdown()):(this.close(),this.search.width(10)),this.triggerChange({added:a}),c&&c.noFocus||this.focusSearch())},cancel:function(){this.close(),this.focusSearch()},addSelectedChoice:function(c){var j,k,d=!c.locked,e=a("<li class='select2-search-choice'>    <div></div>    <a href='#' class='select2-search-choice-close' tabindex='-1'></a></li>"),f=a("<li class='select2-search-choice select2-locked'><div></div></li>"),g=d?e:f,h=this.id(c),i=this.getVal();j=this.opts.formatSelection(c,g.find("div"),this.opts.escapeMarkup),j!=b&&g.find("div").replaceWith(a("<div></div>").html(j)),k=this.opts.formatSelectionCssClass(c,g.find("div")),k!=b&&g.addClass(k),d&&g.find(".select2-search-choice-close").on("mousedown",A).on("click dblclick",this.bind(function(b){this.isInterfaceEnabled()&&(this.unselect(a(b.target)),this.selection.find(".select2-search-choice-focus").removeClass("select2-search-choice-focus"),A(b),this.close(),this.focusSearch())})).on("focus",this.bind(function(){this.isInterfaceEnabled()&&(this.container.addClass("select2-container-active"),this.dropdown.addClass("select2-drop-active"))})),g.data("select2-data",c),g.insertBefore(this.searchContainer),i.push(h),this.setVal(i)},unselect:function(b){var d,e,c=this.getVal();if(b=b.closest(".select2-search-choice"),0===b.length)throw"Invalid argument: "+b+". Must be .select2-search-choice";if(d=b.data("select2-data")){var f=a.Event("select2-removing");if(f.val=this.id(d),f.choice=d,this.opts.element.trigger(f),f.isDefaultPrevented())return!1;for(;(e=p(this.id(d),c))>=0;)c.splice(e,1),this.setVal(c),this.select&&this.postprocessResults();return b.remove(),this.opts.element.trigger({type:"select2-removed",val:this.id(d),choice:d}),this.triggerChange({removed:d}),!0}},postprocessResults:function(a,b,c){var d=this.getVal(),e=this.results.find(".select2-result"),f=this.results.find(".select2-result-with-children"),g=this;e.each2(function(a,b){var c=g.id(b.data("select2-data"));p(c,d)>=0&&(b.addClass("select2-selected"),b.find(".select2-result-selectable").addClass("select2-selected"))}),f.each2(function(a,b){b.is(".select2-result-selectable")||0!==b.find(".select2-result-selectable:not(.select2-selected)").length||b.addClass("select2-selected")}),-1==this.highlight()&&c!==!1&&this.opts.closeOnSelect===!0&&g.highlight(0),!this.opts.createSearchChoice&&!e.filter(".select2-result:not(.select2-selected)").length>0&&(!a||a&&!a.more&&0===this.results.find(".select2-no-results").length)&&J(g.opts.formatNoMatches,"formatNoMatches")&&this.results.append("<li class='select2-no-results'>"+K(g.opts.formatNoMatches,g.opts.element,g.search.val())+"</li>")},getMaxSearchWidth:function(){return this.selection.width()-t(this.search)},resizeSearch:function(){var a,b,c,d,e,f=t(this.search);a=C(this.search)+10,b=this.search.offset().left,c=this.selection.width(),d=this.selection.offset().left,e=c-(b-d)-f,a>e&&(e=c-f),40>e&&(e=c-f),0>=e&&(e=a),this.search.width(Math.floor(e))},getVal:function(){var a;return this.select?(a=this.select.val(),null===a?[]:a):(a=this.opts.element.val(),s(a,this.opts.separator,this.opts.transformVal))},setVal:function(b){var c;this.select?this.select.val(b):(c=[],a(b).each(function(){p(this,c)<0&&c.push(this)}),this.opts.element.val(0===c.length?"":c.join(this.opts.separator)))},buildChangeDetails:function(a,b){for(var b=b.slice(0),a=a.slice(0),c=0;c<b.length;c++)for(var d=0;d<a.length;d++)r(this.opts.id(b[c]),this.opts.id(a[d]))&&(b.splice(c,1),c>0&&c--,a.splice(d,1),d--);return{added:b,removed:a}},val:function(c,d){var e,f=this;if(0===arguments.length)return this.getVal();if(e=this.data(),e.length||(e=[]),!c&&0!==c)return this.opts.element.val(""),this.updateSelection([]),this.clearSearch(),d&&this.triggerChange({added:this.data(),removed:e}),void 0;if(this.setVal(c),this.select)this.opts.initSelection(this.select,this.bind(this.updateSelection)),d&&this.triggerChange(this.buildChangeDetails(e,this.data()));else{if(this.opts.initSelection===b)throw new Error("val() cannot be called if initSelection() is not defined");this.opts.initSelection(this.opts.element,function(b){var c=a.map(b,f.id);f.setVal(c),f.updateSelection(b),f.clearSearch(),d&&f.triggerChange(f.buildChangeDetails(e,f.data()))})}this.clearSearch()},onSortStart:function(){if(this.select)throw new Error("Sorting of elements is not supported when attached to <select>. Attach to <input type='hidden'/> instead.");this.search.width(0),this.searchContainer.hide()},onSortEnd:function(){var b=[],c=this;this.searchContainer.show(),this.searchContainer.appendTo(this.searchContainer.parent()),this.resizeSearch(),this.selection.find(".select2-search-choice").each(function(){b.push(c.opts.id(a(this).data("select2-data")))}),this.setVal(b),this.triggerChange()},data:function(b,c){var e,f,d=this;return 0===arguments.length?this.selection.children(".select2-search-choice").map(function(){return a(this).data("select2-data")}).get():(f=this.data(),b||(b=[]),e=a.map(b,function(a){return d.opts.id(a)}),this.setVal(e),this.updateSelection(b),this.clearSearch(),c&&this.triggerChange(this.buildChangeDetails(f,this.data())),void 0)}}),a.fn.select2=function(){var d,e,f,g,h,c=Array.prototype.slice.call(arguments,0),i=["val","destroy","opened","open","close","focus","isFocused","container","dropdown","onSortStart","onSortEnd","enable","disable","readonly","positionDropdown","data","search"],j=["opened","isFocused","container","dropdown"],k=["val","data"],l={search:"externalSearch"};return this.each(function(){if(0===c.length||"object"==typeof c[0])d=0===c.length?{}:a.extend({},c[0]),d.element=a(this),"select"===d.element.get(0).tagName.toLowerCase()?h=d.element.prop("multiple"):(h=d.multiple||!1,"tags"in d&&(d.multiple=h=!0)),e=h?new window.Select2["class"].multi:new window.Select2["class"].single,e.init(d);else{if("string"!=typeof c[0])throw"Invalid arguments to select2 plugin: "+c;if(p(c[0],i)<0)throw"Unknown method: "+c[0];if(g=b,e=a(this).data("select2"),e===b)return;if(f=c[0],"container"===f?g=e.container:"dropdown"===f?g=e.dropdown:(l[f]&&(f=l[f]),g=e[f].apply(e,c.slice(1))),p(c[0],j)>=0||p(c[0],k)>=0&&1==c.length)return!1}}),g===b?this:g},a.fn.select2.defaults={width:"copy",loadMorePadding:0,closeOnSelect:!0,openOnEnter:!0,containerCss:{},dropdownCss:{},containerCssClass:"",dropdownCssClass:"",formatResult:function(a,b,c,d){var e=[];return E(this.text(a),c.term,e,d),e.join("")},transformVal:function(b){return a.trim(b)},formatSelection:function(a,c,d){return a?d(this.text(a)):b},sortResults:function(a){return a},formatResultCssClass:function(a){return a.css},formatSelectionCssClass:function(){return b},minimumResultsForSearch:0,minimumInputLength:0,maximumInputLength:null,maximumSelectionSize:0,id:function(a){return a==b?null:a.id},text:function(b){return b&&this.data&&this.data.text?a.isFunction(this.data.text)?this.data.text(b):b[this.data.text]:b.text
 },matcher:function(a,b){return o(""+b).toUpperCase().indexOf(o(""+a).toUpperCase())>=0},separator:",",tokenSeparators:[],tokenizer:M,escapeMarkup:F,blurOnChange:!1,selectOnBlur:!1,adaptContainerCssClass:function(a){return a},adaptDropdownCssClass:function(){return null},nextSearchTerm:function(){return b},searchInputPlaceholder:"",createSearchChoicePosition:"top",shouldFocusInput:function(a){var b="ontouchstart"in window||navigator.msMaxTouchPoints>0;return b?a.opts.minimumResultsForSearch<0?!1:!0:!0}},a.fn.select2.locales=[],a.fn.select2.locales.en={formatMatches:function(a){return 1===a?"One result is available, press enter to select it.":a+" results are available, use up and down arrow keys to navigate."},formatNoMatches:function(){return"No matches found"},formatAjaxError:function(){return"Loading failed"},formatInputTooShort:function(a,b){var c=b-a.length;return"Please enter "+c+" or more character"+(1==c?"":"s")},formatInputTooLong:function(a,b){var c=a.length-b;return"Please delete "+c+" character"+(1==c?"":"s")},formatSelectionTooBig:function(a){return"You can only select "+a+" item"+(1==a?"":"s")},formatLoadMore:function(){return"Loading more results\u2026"},formatSearching:function(){return"Searching\u2026"}},a.extend(a.fn.select2.defaults,a.fn.select2.locales.en),a.fn.select2.ajaxDefaults={transport:a.ajax,params:{type:"GET",cache:!1,dataType:"json"}},window.Select2={query:{ajax:G,local:H,tags:I},util:{debounce:w,markMatch:E,escapeMarkup:F,stripDiacritics:o},"class":{"abstract":c,single:d,multi:e}}}}(jQuery);
\ No newline at end of file
diff --git a/interface/web/login/index.php b/interface/web/login/index.php
index 5339f04..6d473f8 100644
--- a/interface/web/login/index.php
+++ b/interface/web/login/index.php
@@ -60,7 +60,7 @@
 
 	//** Check variables
 	if(!preg_match("/^[\w\.\-\_\@]{1,128}$/", $_POST['username'])) $error = $app->lng('user_regex_error');
-	if(!preg_match("/^.{1,64}$/i", $_POST['password'])) $error = $app->lng('pw_error_length');
+	if(!preg_match("/^.{1,256}$/i", $_POST['password'])) $error = $app->lng('pw_error_length');
 
 	//** importing variables
 	$ip    = ip2long($_SERVER['REMOTE_ADDR']);
@@ -217,8 +217,8 @@
 						$_SESSION['s']['language'] = $user['language'];
 						$_SESSION["s"]['theme'] = $_SESSION['s']['user']['theme'];
 						
-						if(is_file($_SESSION['s']['user']['startmodule'].'/lib/module.conf.php')) {
-							include_once $_SESSION['s']['user']['startmodule'].'/lib/module.conf.php';
+						if(is_file(ISPC_WEB_PATH . '/' . $_SESSION['s']['user']['startmodule'].'/lib/module.conf.php')) {
+							include_once ISPC_WEB_PATH . '/' . $_SESSION['s']['user']['startmodule'].'/lib/module.conf.php';
 							$menu_dir = ISPC_WEB_PATH.'/' . $_SESSION['s']['user']['startmodule'] . '/lib/menu.d';
 								if (is_dir($menu_dir)) {
 								if ($dh = opendir($menu_dir)) {
@@ -260,7 +260,7 @@
 							echo 'LOGIN_REDIRECT:'.$_SESSION['s']['module']['startpage'];
 							exit;
 						} else {
-							header('Location: /index.php?phpsessid='.session_id());
+							header('Location: /index.php');
 							die();
 						}
 					}
diff --git a/interface/web/login/lib/lang/ar.lng b/interface/web/login/lib/lang/ar.lng
index 9ba0072..0c5f6cd 100644
--- a/interface/web/login/lib/lang/ar.lng
+++ b/interface/web/login/lib/lang/ar.lng
@@ -10,7 +10,7 @@
 $wb['pw_reset_mail_msg'] = 'The password to your ISPConfig 3 control panel account has been reset. The new password is: ';
 $wb['pw_reset_mail_title'] = 'ISPConfig 3 Control panel password has been reset.';
 $wb['user_regex_error'] = 'Username contains unallowed characters or is longer then 64 characters.';
-$wb['pw_error_length'] = 'The password length is < 1 or > 64 characters.';
+$wb['pw_error_length'] = 'The password length is < 1 or > 256 characters.';
 $wb['username_txt'] = 'Username';
 $wb['password_txt'] = 'Password';
 $wb['login_button_txt'] = 'Login';
diff --git a/interface/web/login/lib/lang/bg.lng b/interface/web/login/lib/lang/bg.lng
index 09906f7..23a818e 100644
--- a/interface/web/login/lib/lang/bg.lng
+++ b/interface/web/login/lib/lang/bg.lng
@@ -6,7 +6,7 @@
 $wb['pw_reset_mail_msg'] = 'Новата парола за вашия ISPConfig 3 контролен панел е:';
 $wb['pw_reset_mail_title'] = 'Нова парола за вашия ISPConfig 3 контролен панел';
 $wb['user_regex_error'] = 'Потребителско име contains unallowed characters or is longer then 64 characters.';
-$wb['pw_error_length'] = 'The password length is < 1 or > 64 characters.';
+$wb['pw_error_length'] = 'The password length is < 1 or > 256 characters.';
 $wb['error_user_password_empty'] = 'Потребителско име or Password empty.';
 $wb['error_user_password_incorrect'] = 'Потребителско име or Password wrong.';
 $wb['error_user_blocked'] = 'User is blocked.';
diff --git a/interface/web/login/lib/lang/cz_login_as.lng b/interface/web/login/lib/lang/cz_login_as.lng
index 49a6e18..d7d9c37 100644
--- a/interface/web/login/lib/lang/cz_login_as.lng
+++ b/interface/web/login/lib/lang/cz_login_as.lng
@@ -9,3 +9,4 @@
 $wb['tcp_ports_error_regex'] = 'Znak není povole v definici TCP portu. Povolené symboly jsou čísla, : a ,.';
 $wb['udp_ports_error_regex'] = 'Znak není povole v definici UDP portu. Povolené symboly jsou čísla, : a ,.';
 ?>
+
diff --git a/interface/web/login/lib/lang/de.lng b/interface/web/login/lib/lang/de.lng
index 445291c..217e5c5 100644
--- a/interface/web/login/lib/lang/de.lng
+++ b/interface/web/login/lib/lang/de.lng
@@ -13,7 +13,7 @@
 $wb['pw_reset_act_mail_msg'] = 'Bitte bestätigen Sie die Anforderung eines neuen Passworts, indem Sie folgenden Link besuchen: ';
 $wb['pw_reset_act_mail_title'] = 'Anforderung zum Zurücksetzen des Passworts';
 $wb['user_regex_error'] = 'Benutzername beinhaltet nicht erlaubte Zeichen oder ist länger als 64 Zeichen.';
-$wb['pw_error_length'] = 'Die Passwortlänge ist < 1 oder > 64 Zeichen.';
+$wb['pw_error_length'] = 'Die Passwortlänge ist < 1 oder > 256 Zeichen.';
 $wb['login_txt'] = 'Anmelden';
 $wb['username_txt'] = 'Benutzername';
 $wb['password_txt'] = 'Passwort';
diff --git a/interface/web/login/lib/lang/en.lng b/interface/web/login/lib/lang/en.lng
index 2f9fcdb..2db2d49 100644
--- a/interface/web/login/lib/lang/en.lng
+++ b/interface/web/login/lib/lang/en.lng
@@ -13,7 +13,7 @@
 $wb['pw_reset_act_mail_title']  = 'Confirm ISPConfig 3 Control panel password reset';
 $wb['pw_reset_act_mail_msg']    = 'Please confirm that your want to reset your ISPConfig 3 control panel account password by visiting the following activation link: ';
 $wb['user_regex_error'] = 'Username contains unallowed characters or is longer than 64 characters.';
-$wb['pw_error_length']  = 'The password length is < 1 or > 64 characters.';
+$wb['pw_error_length']  = 'The password length is < 1 or > 256 characters.';
 $wb['email_error'] = 'Email contains unallowed characters or has a invalid format.';
 $wb['login_txt']	= "Login";
 $wb['username_txt']	= "Username";
diff --git a/interface/web/login/lib/lang/hr.lng b/interface/web/login/lib/lang/hr.lng
index c8bad67..f76f81e 100644
--- a/interface/web/login/lib/lang/hr.lng
+++ b/interface/web/login/lib/lang/hr.lng
@@ -10,7 +10,7 @@
 $wb['pw_reset_mail_msg'] = 'Šifra za ISPConfig 3 control panel račun je resetirana. Vaša nova šifra je: ';
 $wb['pw_reset_mail_title'] = 'Resetirana ISPConfig 3 control panel šifra.';
 $wb['user_regex_error'] = 'Korisničko ime sadrži nedozvoljene znakove ili je dulje od 64 znaka.';
-$wb['pw_error_length'] = 'Duljina šifre je > 64 znakova.';
+$wb['pw_error_length'] = 'Duljina šifre je > 256 znakova.';
 $wb['username_txt'] = 'Korisničko ime';
 $wb['password_txt'] = 'Šifra';
 $wb['login_button_txt'] = 'Prijava';
diff --git a/interface/web/login/lib/lang/id.lng b/interface/web/login/lib/lang/id.lng
index a71c688..f8fdef0 100644
--- a/interface/web/login/lib/lang/id.lng
+++ b/interface/web/login/lib/lang/id.lng
@@ -10,7 +10,7 @@
 $wb['pw_reset_mail_msg'] = 'Kata sandi untuk control panel ISPConfig 3 Anda telah direset. Kata sandi yang baru adalah: ';
 $wb['pw_reset_mail_title'] = 'Kata sandi Control Panel ISPConfig 3 telah direset.';
 $wb['user_regex_error'] = 'Nama Pengguna mengandung karakter yang tidak diperbolehkan atau lebih dari 64 karakter.';
-$wb['pw_error_length'] = 'Panjang kata sandi > 64 karakter.';
+$wb['pw_error_length'] = 'Panjang kata sandi > 256 karakter.';
 $wb['username_txt'] = 'Nama Pengguna';
 $wb['password_txt'] = 'Kata Sandi';
 $wb['login_button_txt'] = 'Masuk';
diff --git a/interface/web/login/lib/lang/nl.lng b/interface/web/login/lib/lang/nl.lng
index 142be85..c5d8844 100644
--- a/interface/web/login/lib/lang/nl.lng
+++ b/interface/web/login/lib/lang/nl.lng
@@ -10,7 +10,7 @@
 $wb['pw_reset_mail_msg'] = 'Het wachtwoord  dat toegang biedt tot uw ISPConfig 3 control panel account is gereset. Het nieuwe wachtwoord is: ';
 $wb['pw_reset_mail_title'] = 'ISPConfig 3 Control panel wachtwoord is gereset.';
 $wb['user_regex_error'] = 'Gebruikersnaam bevat karakters die niet zijn toegestaan of is langer dan 64 karakters.';
-$wb['pw_error_length'] = 'De lengte van het wachtwoord is > 64 karakters.';
+$wb['pw_error_length'] = 'De lengte van het wachtwoord is > 256 karakters.';
 $wb['username_txt'] = 'Gebruikersnaam';
 $wb['password_txt'] = 'Wachtwoord';
 $wb['login_button_txt'] = 'Login';
diff --git a/interface/web/login/lib/lang/pl.lng b/interface/web/login/lib/lang/pl.lng
index 169832f..61d3a19 100644
--- a/interface/web/login/lib/lang/pl.lng
+++ b/interface/web/login/lib/lang/pl.lng
@@ -6,7 +6,7 @@
 $wb['pw_reset_mail_msg'] = 'Hasło do Twojego panelu w ISPConfig 3 zostało zresetowane. Twoje nowe hasło to: ';
 $wb['pw_reset_mail_title'] = 'Hasło do panelu w ISPConfig 3 zostało zresetowane.';
 $wb['user_regex_error'] = 'Nazwa użytkownika zawiera niedozwolone znaki lub jest dłuższa niż 64 znaki.';
-$wb['pw_error_length'] = 'Długość hasła jest > 64 znaki.';
+$wb['pw_error_length'] = 'Długość hasła jest > 256 znaki.';
 $wb['error_user_password_empty'] = 'Pusta nazwa użytkownika lub hasło.';
 $wb['error_user_password_incorrect'] = 'Niepoprawna nazwa użytownika lub hasło.';
 $wb['error_user_blocked'] = 'Konto użytkownika zostało zablokowane.';
diff --git a/interface/web/login/lib/lang/ro.lng b/interface/web/login/lib/lang/ro.lng
index 7b8ac4b..fedc8f3 100644
--- a/interface/web/login/lib/lang/ro.lng
+++ b/interface/web/login/lib/lang/ro.lng
@@ -10,7 +10,7 @@
 $wb['pw_reset_mail_msg'] = 'Parola la panoul de control a fost resetata . Noua parola este : ';
 $wb['pw_reset_mail_title'] = 'parola panoului de control a fost schimbata';
 $wb['user_regex_error'] = 'Username contine caractere nepermise sau are mai mult de 64 caractere';
-$wb['pw_error_length'] = 'Lungime parola  > 64 caractere.';
+$wb['pw_error_length'] = 'Lungime parola  > 256 caractere.';
 $wb['username_txt'] = 'Username';
 $wb['password_txt'] = 'Password';
 $wb['login_button_txt'] = 'Login';
diff --git a/interface/web/login/lib/lang/se.lng b/interface/web/login/lib/lang/se.lng
index eb45489..caeb3e7 100644
--- a/interface/web/login/lib/lang/se.lng
+++ b/interface/web/login/lib/lang/se.lng
@@ -10,7 +10,7 @@
 $wb['pw_reset_mail_msg'] = 'The password to your ISPConfig 3 control panel account has been reset. The new password is: ';
 $wb['pw_reset_mail_title'] = 'ISPConfig 3 Control panel password has been reset.';
 $wb['user_regex_error'] = 'Username contains unallowed characters or is longer then 64 characters.';
-$wb['pw_error_length'] = 'Lösenrodslängden är > 64 tecken.';
+$wb['pw_error_length'] = 'Lösenrodslängden är > 256 tecken.';
 $wb['username_txt'] = 'Användarnamn';
 $wb['password_txt'] = 'Lösenord';
 $wb['login_button_txt'] = 'Logga in';
diff --git a/interface/web/login/lib/lang/sk.lng b/interface/web/login/lib/lang/sk.lng
index d4b91e4..ff4930c 100644
--- a/interface/web/login/lib/lang/sk.lng
+++ b/interface/web/login/lib/lang/sk.lng
@@ -10,7 +10,7 @@
 $wb['pw_reset_mail_msg'] = 'Heslo k svojmu účtu na ovládacom paneli bol resetnuté. Nové heslo je:';
 $wb['pw_reset_mail_title'] = 'Heslo ovládacieho panelu bolo resetnuté.';
 $wb['user_regex_error'] = 'Užívateľské meno obsahuje neplatné znaky, alebo je dlhšia ako 64 znakov.';
-$wb['pw_error_length'] = 'Dĺžka hesla je > 64 znakov.';
+$wb['pw_error_length'] = 'Dĺžka hesla je > 256 znakov.';
 $wb['username_txt'] = 'Užívateľské meno';
 $wb['password_txt'] = 'Heslo';
 $wb['login_button_txt'] = 'Prihlásenie';
diff --git a/interface/web/mail/lib/lang/cz.lng b/interface/web/mail/lib/lang/cz.lng
index a0c670e..4cd0815 100644
--- a/interface/web/mail/lib/lang/cz.lng
+++ b/interface/web/mail/lib/lang/cz.lng
@@ -1,5 +1,5 @@
 <?php
-$wb['Email Alias'] = 'E-mailové aliasy';
+$wb['Email Alias'] = 'E-mailové přezdívky';
 $wb['Email Blacklist'] = 'E-mailová černá listina';
 $wb['Blacklist'] = 'Černá listina';
 $wb['Mail Content Filter'] = 'Obsahový filtr';
@@ -12,7 +12,7 @@
 $wb['Spamfilter'] = 'Spamový filtr';
 $wb['Email Routing'] = 'Pokročilé e-mailové směrování';
 $wb['Email transport'] = 'Transport';
-$wb['Mailbox'] = 'Mailbox';
+$wb['Mailbox'] = 'E-mailová schránka';
 $wb['Autoresponder'] = 'Automatická odpověď';
 $wb['Mail Filter'] = 'E-mailové filtry';
 $wb['Custom Rules'] = 'Vlastní pravidla';
@@ -41,8 +41,9 @@
 $wb['Postfix Blacklist'] = 'Postfix černá listina';
 $wb['Content Filter'] = 'Obsahový filtr';
 $wb['Global Filters'] = 'Globální filtry';
-$wb['Domain Alias'] = 'Aliasy e-mailových domén';
+$wb['Domain Alias'] = 'Přezdívky e-mailových domén';
 $wb['Relay Recipients'] = 'Relay adresáti';
 $wb['Statistics'] = 'Statistiky';
 $wb['Mailbox quota'] = 'Kvóty pro e-mailové schránky';
 ?>
+
diff --git a/interface/web/mail/lib/lang/cz_backup_stats_list.lng b/interface/web/mail/lib/lang/cz_backup_stats_list.lng
index 79cd6c9..0c8a531 100644
--- a/interface/web/mail/lib/lang/cz_backup_stats_list.lng
+++ b/interface/web/mail/lib/lang/cz_backup_stats_list.lng
@@ -1,9 +1,10 @@
 <?php
-$wb['list_head_txt'] = 'Backup Stats';
-$wb['active_txt'] = 'Active';
-$wb['domain_txt'] = 'Email';
-$wb['backup_count_txt'] = 'Backup count';
+$wb['list_head_txt'] = 'Statistiky zálohování';
+$wb['active_txt'] = 'Aktivní';
+$wb['domain_txt'] = 'E-mail';
+$wb['backup_count_txt'] = 'Počet záloh';
 $wb['backup_server_txt'] = 'Server';
 $wb['backup_interval_txt'] = 'Interval / cnt.';
-$wb['backup_size_txt'] = 'Backupsize';
+$wb['backup_size_txt'] = 'Velikost zálohy';
 ?>
+
diff --git a/interface/web/mail/lib/lang/cz_mail_alias.lng b/interface/web/mail/lib/lang/cz_mail_alias.lng
index 5719494..4df252c 100644
--- a/interface/web/mail/lib/lang/cz_mail_alias.lng
+++ b/interface/web/mail/lib/lang/cz_mail_alias.lng
@@ -11,7 +11,8 @@
 $wb['domain_txt'] = 'Doména';
 $wb['duplicate_email_alias_txt'] = 'Tento e-mail alias již existuje.';
 $wb['source_txt'] = 'Alias';
-$wb['greylisting_txt'] = 'Enable greylisting';
-$wb['send_as_txt'] = 'Send as';
+$wb['send_as_txt'] = 'Odeslat jako';
 $wb['send_as_exp'] = 'Allow target to send mail using this alias as origin';
+$wb['greylisting_txt'] = 'Povolit greylisting';
 ?>
+
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 5eba688..17c26e6 100644
--- a/interface/web/mail/lib/lang/cz_mail_alias_list.lng
+++ b/interface/web/mail/lib/lang/cz_mail_alias_list.lng
@@ -1,8 +1,9 @@
 <?php
-$wb['list_head_txt'] = 'E-mailové aliasy';
+$wb['list_head_txt'] = 'E-mailové přezdívky';
 $wb['active_txt'] = 'Aktivní';
 $wb['source_txt'] = 'Zdroj';
 $wb['destination_txt'] = 'Cíl';
 $wb['email_txt'] = 'E-mail';
-$wb['add_new_record_txt'] = 'Přidat nový e-mailový alias';
+$wb['add_new_record_txt'] = 'Vytvořit novou e-mailovou přezdívku';
 ?>
+
diff --git a/interface/web/mail/lib/lang/cz_mail_aliasdomain.lng b/interface/web/mail/lib/lang/cz_mail_aliasdomain.lng
index 74611c2..7c74fb6 100644
--- a/interface/web/mail/lib/lang/cz_mail_aliasdomain.lng
+++ b/interface/web/mail/lib/lang/cz_mail_aliasdomain.lng
@@ -9,3 +9,4 @@
 $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 29d3355..915063d 100644
--- a/interface/web/mail/lib/lang/cz_mail_aliasdomain_list.lng
+++ b/interface/web/mail/lib/lang/cz_mail_aliasdomain_list.lng
@@ -1,7 +1,8 @@
 <?php
-$wb['list_head_txt'] = 'Aliasy e-mailových domén';
+$wb['list_head_txt'] = 'Přezdívky e-mailových domén';
 $wb['active_txt'] = 'Aktivní';
 $wb['source_txt'] = 'Zdroj';
 $wb['destination_txt'] = 'Cíl';
-$wb['add_new_record_txt'] = 'Přidat doménový alias';
+$wb['add_new_record_txt'] = 'Vytvořit doménovou přezdívku';
 ?>
+
diff --git a/interface/web/mail/lib/lang/cz_mail_backup_list.lng b/interface/web/mail/lib/lang/cz_mail_backup_list.lng
index 73286a0..a502710 100644
--- a/interface/web/mail/lib/lang/cz_mail_backup_list.lng
+++ b/interface/web/mail/lib/lang/cz_mail_backup_list.lng
@@ -1,16 +1,17 @@
 <?php
-$wb['list_head_txt'] = 'Existing backups';
-$wb['date_txt'] = 'Date';
-$wb['backup_type_txt'] = 'Type';
-$wb['filename_txt'] = 'Backup file';
-$wb['restore_backup_txt'] = 'Restore';
+$wb['list_head_txt'] = 'Stávající zálohy';
+$wb['date_txt'] = 'Datum';
+$wb['backup_type_txt'] = 'Typ';
+$wb['filename_txt'] = 'Záloha souborů';
+$wb['restore_backup_txt'] = 'Obnovit';
 $wb['restore_info_txt'] = 'Restore of the backup has been started. This action takes several minutes to be completed.';
 $wb['restore_confirm_txt'] = 'Restoring may overwrite existing files in your mailbox. Do you really want to restore this backup?';
 $wb['download_pending_txt'] = 'There is already a pending backup download job.';
 $wb['restore_pending_txt'] = 'There is already a pending backup restore job.';
-$wb['delete_backup_txt'] = 'Delete Backup';
+$wb['delete_backup_txt'] = 'Smazat zálohu';
 $wb['delete_info_txt'] = 'Delete of the backup has been started. This action takes several minutes to be completed.';
 $wb['delete_confirm_txt'] = 'Really delete this backup?';
 $wb['delete_pending_txt'] = 'There is already a pending backup delete job.';
-$wb['filesize_txt'] = 'Filesize';
+$wb['filesize_txt'] = 'Velikost souboru';
 ?>
+
diff --git a/interface/web/mail/lib/lang/cz_mail_blacklist.lng b/interface/web/mail/lib/lang/cz_mail_blacklist.lng
index e1e6dab..93978c7 100644
--- a/interface/web/mail/lib/lang/cz_mail_blacklist.lng
+++ b/interface/web/mail/lib/lang/cz_mail_blacklist.lng
@@ -7,3 +7,4 @@
 $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 62d6a35..4cfe2bf 100644
--- a/interface/web/mail/lib/lang/cz_mail_blacklist_list.lng
+++ b/interface/web/mail/lib/lang/cz_mail_blacklist_list.lng
@@ -5,6 +5,7 @@
 $wb['source_txt'] = 'Adresy na černé listině';
 $wb['type_txt'] = 'Typ';
 $wb['recipient_txt'] = 'Příjemce (adresát)';
-$wb['add_new_record_txt'] = 'Přidat záznam na černou listinu';
+$wb['add_new_record_txt'] = 'Vytvořit 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 459ca22..240de67 100644
--- a/interface/web/mail/lib/lang/cz_mail_content_filter.lng
+++ b/interface/web/mail/lib/lang/cz_mail_content_filter.lng
@@ -7,3 +7,4 @@
 $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 da9709e..b782177 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
@@ -4,5 +4,6 @@
 $wb['server_id_txt'] = 'Server';
 $wb['pattern_txt'] = 'Vzor';
 $wb['action_txt'] = 'Akce';
-$wb['add_new_record_txt'] = 'Přidat obsahový filtr';
+$wb['add_new_record_txt'] = 'Vytvořit 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 3a5212a..03677a8 100644
--- a/interface/web/mail/lib/lang/cz_mail_domain.lng
+++ b/interface/web/mail/lib/lang/cz_mail_domain.lng
@@ -21,3 +21,4 @@
 $wb['no_policy'] = '- nepovoleno -';
 $wb['error_not_allowed_server_id'] = 'Chosen server is not allowed for this account.';
 ?>
+
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 76d17e1..e3201cc 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
@@ -2,7 +2,8 @@
 $wb['list_head_txt'] = 'E-mailové domény';
 $wb['server_id_txt'] = 'Server';
 $wb['domain_txt'] = 'Doména';
-$wb['add_new_record_txt'] = 'Přidat doménu';
+$wb['add_new_record_txt'] = 'Vytvořit doménu';
 $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 1bb4a04..6d49980 100644
--- a/interface/web/mail/lib/lang/cz_mail_domain_catchall.lng
+++ b/interface/web/mail/lib/lang/cz_mail_domain_catchall.lng
@@ -9,3 +9,4 @@
 $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 4f1a205..a60d3b3 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
@@ -5,5 +5,6 @@
 $wb['destination_txt'] = 'Cílová e-mailová adresa';
 $wb['server_id_txt'] = 'Server';
 $wb['domain_txt'] = 'E-malová doména';
-$wb['add_new_record_txt'] = 'Přidat e-mailový koš';
+$wb['add_new_record_txt'] = 'Vytvořit 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 2abb05c..97b6265 100644
--- a/interface/web/mail/lib/lang/cz_mail_domain_list.lng
+++ b/interface/web/mail/lib/lang/cz_mail_domain_list.lng
@@ -2,6 +2,7 @@
 $wb['list_head_txt'] = 'E-mailové domény';
 $wb['server_id_txt'] = 'Server';
 $wb['domain_txt'] = 'Doména';
-$wb['add_new_record_txt'] = 'Přidat doménu';
+$wb['add_new_record_txt'] = 'Vytvořit 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 e95b40c..a3fab66 100644
--- a/interface/web/mail/lib/lang/cz_mail_forward.lng
+++ b/interface/web/mail/lib/lang/cz_mail_forward.lng
@@ -6,8 +6,9 @@
 $wb['duplicate_mailbox_txt'] = 'Mailbox s touto adresou již existuje';
 $wb['domain_txt'] = 'Doména';
 $wb['source_txt'] = 'Zdrojový e-mail';
-$wb['greylisting_txt'] = 'Enable greylisting';
-$wb['email_error_isemail'] = 'Please enter a valid email address.';
-$wb['send_as_txt'] = 'Send as';
+$wb['email_error_isemail'] = 'Zadejte prosím platnou e-mailovou adresu.';
+$wb['send_as_txt'] = 'Odeslat jako';
 $wb['send_as_exp'] = 'Allow target to send mail using this address as origin (if target is internal)';
+$wb['greylisting_txt'] = 'Povolit greylisting';
 ?>
+
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 e5381fe..180fb51 100644
--- a/interface/web/mail/lib/lang/cz_mail_forward_list.lng
+++ b/interface/web/mail/lib/lang/cz_mail_forward_list.lng
@@ -4,5 +4,6 @@
 $wb['source_txt'] = 'Zdroj';
 $wb['destination_txt'] = 'Cíl';
 $wb['email_txt'] = 'E-mail';
-$wb['add_new_record_txt'] = 'Přidat nové přesměrování';
+$wb['add_new_record_txt'] = 'Vytvořit 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 68a4412..6987394 100644
--- a/interface/web/mail/lib/lang/cz_mail_get.lng
+++ b/interface/web/mail/lib/lang/cz_mail_get.lng
@@ -17,3 +17,4 @@
 $wb['error_delete_read_all_combination'] = 'Illegal combination of options. You can not use \\"Delete emails after retrieval\\" = no together with \\"Retrieve all emails\\" = yes';
 $wb['source_delete_note_txt'] = 'Prosím, zkontrolujte nejprve, zda příjímaní e-mailů funguje, než aktivujete tuto možnost.';
 ?>
+
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 9ca8b86..67d08e3 100644
--- a/interface/web/mail/lib/lang/cz_mail_get_list.lng
+++ b/interface/web/mail/lib/lang/cz_mail_get_list.lng
@@ -5,5 +5,6 @@
 $wb['source_server_txt'] = 'Externí server';
 $wb['source_username_txt'] = 'Uživatelské jméno';
 $wb['destination_txt'] = 'Cíl';
-$wb['add_new_record_txt'] = 'Přidat účet';
+$wb['add_new_record_txt'] = 'Vytvořit účet';
 ?>
+
diff --git a/interface/web/mail/lib/lang/cz_mail_mailinglist.lng b/interface/web/mail/lib/lang/cz_mail_mailinglist.lng
index e1f7dfb..7723f1f 100644
--- a/interface/web/mail/lib/lang/cz_mail_mailinglist.lng
+++ b/interface/web/mail/lib/lang/cz_mail_mailinglist.lng
@@ -20,3 +20,4 @@
 $wb['email_error_isemail'] = 'E-mailová adresa je neplatná.';
 $wb['mailinglist_txt'] = 'E-mailové konference';
 ?>
+
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 db31273..abd9737 100644
--- a/interface/web/mail/lib/lang/cz_mail_mailinglist_list.lng
+++ b/interface/web/mail/lib/lang/cz_mail_mailinglist_list.lng
@@ -3,3 +3,4 @@
 $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 1928c31..fbbdc48 100644
--- a/interface/web/mail/lib/lang/cz_mail_relay_recipient.lng
+++ b/interface/web/mail/lib/lang/cz_mail_relay_recipient.lng
@@ -7,3 +7,4 @@
 $wb['type_txt'] = 'Typ';
 $wb['limit_mailfilter_txt'] = 'Dosažen maximální počet e-mail filtrů pro Váš účet.';
 ?>
+
diff --git a/interface/web/mail/lib/lang/cz_mail_relay_recipient_list.lng b/interface/web/mail/lib/lang/cz_mail_relay_recipient_list.lng
index 1af9599..085b9aa 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
@@ -4,6 +4,7 @@
 $wb['server_id_txt'] = 'Server';
 $wb['source_txt'] = 'Adresa adresáta';
 $wb['recipient_txt'] = 'Příjemce (adresát)';
-$wb['add_new_record_txt'] = 'Přidat relay adresáta';
+$wb['add_new_record_txt'] = 'Vytvořit 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 4b6cc2b..b538ad0 100644
--- a/interface/web/mail/lib/lang/cz_mail_spamfilter.lng
+++ b/interface/web/mail/lib/lang/cz_mail_spamfilter.lng
@@ -15,3 +15,4 @@
 $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 7560b57..28422bd 100644
--- a/interface/web/mail/lib/lang/cz_mail_spamfilter_list.lng
+++ b/interface/web/mail/lib/lang/cz_mail_spamfilter_list.lng
@@ -4,5 +4,6 @@
 $wb['server_id_txt'] = 'Server';
 $wb['server_name_txt'] = 'server_name';
 $wb['email_txt'] = 'E-mail';
-$wb['add_new_record_txt'] = 'Přidat nový záznam spamfiltru';
+$wb['add_new_record_txt'] = 'Vytvořit 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 508ca76..6a195f3 100644
--- a/interface/web/mail/lib/lang/cz_mail_transport.lng
+++ b/interface/web/mail/lib/lang/cz_mail_transport.lng
@@ -9,3 +9,4 @@
 $wb['limit_mailrouting_txt'] = 'Dosažen maximální počet e-mail směrování pro Váš účet.';
 $wb['transport_txt'] = 'Transport';
 ?>
+
diff --git a/interface/web/mail/lib/lang/cz_mail_transport_list.lng b/interface/web/mail/lib/lang/cz_mail_transport_list.lng
index 4261abc..1749f5b 100644
--- a/interface/web/mail/lib/lang/cz_mail_transport_list.lng
+++ b/interface/web/mail/lib/lang/cz_mail_transport_list.lng
@@ -3,7 +3,8 @@
 $wb['active_txt'] = 'Aktivní';
 $wb['server_id_txt'] = 'Server';
 $wb['domain_txt'] = 'Doména';
-$wb['transport_txt'] = 'Transport';
+$wb['transport_txt'] = 'E-mailové směrování';
 $wb['sort_order_txt'] = 'Třídit podle';
-$wb['add_new_record_txt'] = 'Přidat transport';
+$wb['add_new_record_txt'] = 'Vytvořit e-mailové směrování';
 ?>
+
diff --git a/interface/web/mail/lib/lang/cz_mail_user.lng b/interface/web/mail/lib/lang/cz_mail_user.lng
index 7e51195..165a629 100644
--- a/interface/web/mail/lib/lang/cz_mail_user.lng
+++ b/interface/web/mail/lib/lang/cz_mail_user.lng
@@ -20,7 +20,6 @@
 $wb['password_txt'] = 'Heslo';
 $wb['maildir_txt'] = 'E-mailový adresář';
 $wb['postfix_txt'] = 'Povolit příjem';
-$wb['greylisting_txt'] = 'Enable greylisting';
 $wb['access_txt'] = 'Povolit přístup';
 $wb['policy_txt'] = 'Spamový filtr';
 $wb['no_policy'] = '- nepovoleno -';
@@ -34,8 +33,8 @@
 $wb['name_txt'] = 'Skutečné jméno';
 $wb['name_optional_txt'] = '(volitelné)';
 $wb['autoresponder_active'] = 'Povolit automatický odpovídač';
-$wb['cc_txt'] = 'Přeposílat na';
-$wb['cc_error_isemail'] = 'Adresa uvedená v poli přeposílat na je neplatná';
+$wb['cc_txt'] = 'Odeslat příchozí kopii na';
+$wb['cc_error_isemail'] = 'Adresa uvedená v poli zaslat kopii na je neplatná';
 $wb['domain_txt'] = 'Doména';
 $wb['now_txt'] = 'Nyní';
 $wb['login_error_unique'] = 'Přihlášovací jméno je již obsazeno.';
@@ -48,17 +47,19 @@
 $wb['repeat_password_txt'] = 'Opakujte heslo';
 $wb['password_mismatch_txt'] = 'Hesla se neshodují.';
 $wb['password_match_txt'] = 'Hesla se shodují.';
-$wb['backup_interval_txt'] = 'Backup interval';
-$wb['backup_copies_txt'] = 'Number of backup copies';
-$wb['no_backup_txt'] = 'No backup';
-$wb['daily_backup_txt'] = 'Daily';
-$wb['weekly_backup_txt'] = 'Weekly';
-$wb['monthly_backup_txt'] = 'Monthly';
 $wb['email_error_isascii'] = 'Please do not use special unicode characters for your password. This could lead to problems with your mail client.';
-$wb['cc_note_txt'] = '(Při přeposílání na více e-mailových adres, oddělte čárkami.)';
+$wb['cc_note_txt'] = '(Při posílání kopií na více e-mailových adres, oddělte čárkami.)';
 $wb['disablesmtp_txt'] = 'Zakázat SMTP (pouze odesílání)';
 $wb['autoresponder_start_date_is_required'] = 'Start date must be set when Autoresponder is enabled.';
-$wb['sender_cc_txt'] = 'Send outgoing copy to';
+$wb['greylisting_txt'] = 'Povolit greylisting';
+$wb['sender_cc_txt'] = 'Odeslat odchozí kopii na';
 $wb['sender_cc_error_isemail'] = 'The -Send outgoing copy to- field does not contain a valid email address';
-$wb['sender_cc_note_txt'] = '(Separate multiple email addresses with commas)';
+$wb['backup_interval_txt'] = 'Interval zálohování';
+$wb['backup_copies_txt'] = 'Počet kopií zálohy';
+$wb['no_backup_txt'] = 'Žádná záloha';
+$wb['daily_backup_txt'] = 'Denní';
+$wb['weekly_backup_txt'] = 'Týdenní';
+$wb['monthly_backup_txt'] = 'Měsíční';
+$wb['sender_cc_note_txt'] = '(Při posílání kopií na více e-mailových adres, oddělte čárkami.) ';
 ?>
+
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 f611ded..3fb08ea 100644
--- a/interface/web/mail/lib/lang/cz_mail_user_filter.lng
+++ b/interface/web/mail/lib/lang/cz_mail_user_filter.lng
@@ -21,8 +21,9 @@
 $wb['size_over_txt'] = 'Email size over (KB)';
 $wb['size_under_txt'] = 'Email size under (KB)';
 $wb['localpart_txt'] = 'Localpart';
-$wb['domain_txt'] = 'Domain';
+$wb['domain_txt'] = 'Doména';
 $wb['keep_txt'] = 'Keep';
 $wb['reject_txt'] = 'Reject';
 $wb['stop_txt'] = 'Stop';
 ?>
+
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 60229ce..edfc5d1 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
@@ -1,7 +1,8 @@
 <?php
 $wb['rulename_txt'] = 'Název';
-$wb['add_new_record_txt'] = 'Přidat filtr';
+$wb['add_new_record_txt'] = 'Vytvořit filtr';
 $wb['page_txt'] = 'Stránka';
 $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 3e3cb3a..aa0821a 100644
--- a/interface/web/mail/lib/lang/cz_mail_user_list.lng
+++ b/interface/web/mail/lib/lang/cz_mail_user_list.lng
@@ -2,11 +2,12 @@
 $wb['list_head_txt'] = 'E-mailové schránky';
 $wb['email_txt'] = 'E-mail';
 $wb['autoresponder_txt'] = 'Automatická odpověď';
-$wb['add_new_record_txt'] = 'Přidat e-mailovou schránku';
+$wb['add_new_record_txt'] = 'Vytvořit e-mailovou schránku';
 $wb['name_txt'] = 'Skutečný název';
 $wb['login_txt'] = 'Přihlášení';
-$wb['postfix_txt'] = 'Receiving';
-$wb['disablesmtp_txt'] = 'SMTP (sending)';
+$wb['postfix_txt'] = 'Příjem';
+$wb['disablesmtp_txt'] = 'SMTP (odesílání)';
 $wb['disableimap_txt'] = 'IMAP';
 $wb['disablepop3_txt'] = 'POP3';
 ?>
+
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 50cbc31..9c7602d 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
@@ -6,3 +6,4 @@
 $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 db55c18..31dfd75 100644
--- a/interface/web/mail/lib/lang/cz_mail_whitelist.lng
+++ b/interface/web/mail/lib/lang/cz_mail_whitelist.lng
@@ -7,3 +7,4 @@
 $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 8bd58bf..d3f8665 100644
--- a/interface/web/mail/lib/lang/cz_mail_whitelist_list.lng
+++ b/interface/web/mail/lib/lang/cz_mail_whitelist_list.lng
@@ -5,6 +5,7 @@
 $wb['source_txt'] = 'Adresy na bílé listině';
 $wb['type_txt'] = 'Typ';
 $wb['recipient_txt'] = 'Příjemce (adresát)';
-$wb['add_new_record_txt'] = 'Přidat záznam na bílou listinu';
+$wb['add_new_record_txt'] = 'Vytvořit 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 4d47c28..db13c09 100644
--- a/interface/web/mail/lib/lang/cz_spamfilter_blacklist.lng
+++ b/interface/web/mail/lib/lang/cz_spamfilter_blacklist.lng
@@ -10,3 +10,4 @@
 $wb['5 - medium'] = '5 - střední';
 $wb['1 - lowest'] = '1 - nejnižší';
 ?>
+
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 854eb92..868ebf2 100644
--- a/interface/web/mail/lib/lang/cz_spamfilter_blacklist_list.lng
+++ b/interface/web/mail/lib/lang/cz_spamfilter_blacklist_list.lng
@@ -5,5 +5,6 @@
 $wb['priority_txt'] = 'Priorita';
 $wb['rid_txt'] = 'Uživatel';
 $wb['email_txt'] = 'E-maily na černé listině';
-$wb['add_new_record_txt'] = 'Přidat záznam na černou listinu';
+$wb['add_new_record_txt'] = 'Vytvořit 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 5258364..6dbfd86 100644
--- a/interface/web/mail/lib/lang/cz_spamfilter_config.lng
+++ b/interface/web/mail/lib/lang/cz_spamfilter_config.lng
@@ -3,7 +3,6 @@
 $wb['ip_address_txt'] = 'IP adresa';
 $wb['netmask_txt'] = 'Maska';
 $wb['gateway_txt'] = 'Brána';
-$wb['hostname_txt'] = 'Název hostitele';
 $wb['nameservers_txt'] = 'Jmenné servery';
 $wb['module_txt'] = 'Modul serveru';
 $wb['maildir_path_txt'] = 'Cesta k mail adresáři';
@@ -17,4 +16,6 @@
 $wb['relayhost_password_txt'] = 'Relayhost heslo';
 $wb['mailbox_size_limit_txt'] = 'Limit velikosti e-mailové schránky';
 $wb['message_size_limit_txt'] = 'Limit velikosti zprávy';
+$wb['hostname_txt'] = 'Hostname';
 ?>
+
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 fe2ee8d..348fe9b 100644
--- a/interface/web/mail/lib/lang/cz_spamfilter_config_list.lng
+++ b/interface/web/mail/lib/lang/cz_spamfilter_config_list.lng
@@ -3,3 +3,4 @@
 $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 c5765e8..638d5c1 100644
--- a/interface/web/mail/lib/lang/cz_spamfilter_policy.lng
+++ b/interface/web/mail/lib/lang/cz_spamfilter_policy.lng
@@ -36,3 +36,4 @@
 $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 9a0c361..321fa28 100644
--- a/interface/web/mail/lib/lang/cz_spamfilter_policy_list.lng
+++ b/interface/web/mail/lib/lang/cz_spamfilter_policy_list.lng
@@ -5,5 +5,6 @@
 $wb['spam_lover_txt'] = 'Spam';
 $wb['banned_files_lover_txt'] = 'Zabanované soubory';
 $wb['bad_header_lover_txt'] = 'Špatné hlavičky';
-$wb['add_new_record_txt'] = 'Přidat záznam politiky';
+$wb['add_new_record_txt'] = 'Vytvořit 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 3473064..d6f1b19 100644
--- a/interface/web/mail/lib/lang/cz_spamfilter_users.lng
+++ b/interface/web/mail/lib/lang/cz_spamfilter_users.lng
@@ -11,3 +11,4 @@
 $wb['5 - medium'] = '5 - střední';
 $wb['1 - lowest'] = '1 - nejnižší';
 ?>
+
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 36bf340..0f8ea31 100644
--- a/interface/web/mail/lib/lang/cz_spamfilter_users_list.lng
+++ b/interface/web/mail/lib/lang/cz_spamfilter_users_list.lng
@@ -6,5 +6,6 @@
 $wb['policy_id_txt'] = 'Politika';
 $wb['fullname_txt'] = 'Jméno';
 $wb['email_txt'] = 'E-mail';
-$wb['add_new_record_txt'] = 'Přidat spamfiltr uživatele';
+$wb['add_new_record_txt'] = 'Vytvořit 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 4d47c28..db13c09 100644
--- a/interface/web/mail/lib/lang/cz_spamfilter_whitelist.lng
+++ b/interface/web/mail/lib/lang/cz_spamfilter_whitelist.lng
@@ -10,3 +10,4 @@
 $wb['5 - medium'] = '5 - střední';
 $wb['1 - lowest'] = '1 - nejnižší';
 ?>
+
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 1b95524..2653a7b 100644
--- a/interface/web/mail/lib/lang/cz_spamfilter_whitelist_list.lng
+++ b/interface/web/mail/lib/lang/cz_spamfilter_whitelist_list.lng
@@ -5,5 +5,6 @@
 $wb['priority_txt'] = 'Priorita';
 $wb['rid_txt'] = 'Uživatel';
 $wb['email_txt'] = 'E-maily na bílé listině';
-$wb['add_new_record_txt'] = 'Přidat záznam na bílou listinu';
+$wb['add_new_record_txt'] = 'Vytvořit 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 b55af94..2c99357 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,3 +6,4 @@
 $wb['used_txt'] = 'Využité místo';
 $wb['percentage_txt'] = 'Využité místo v %';
 ?>
+
diff --git a/interface/web/mail/lib/lang/cz_xmpp_domain.lng b/interface/web/mail/lib/lang/cz_xmpp_domain.lng
index f1da77b..fce9069 100644
--- a/interface/web/mail/lib/lang/cz_xmpp_domain.lng
+++ b/interface/web/mail/lib/lang/cz_xmpp_domain.lng
@@ -1,46 +1,46 @@
 <?php
-$wb["server_id_txt"] = 'Server';
-$wb["client_group_id_txt"] = 'Client';
-$wb["domain_txt"] = 'Domain';
-$wb["type_txt"] = 'Type';
-$wb["active_txt"] = 'Active';
-$wb["client_txt"] = 'Client';
-$wb["management_method_txt"] = 'Management of user accounts';
-$wb["public_registration_txt"] = 'Enable public registration';
-$wb["registration_url_txt"] = 'Registration URL';
-$wb["registration_message_txt"] = 'Registration Message';
-$wb["domain_admins_txt"] = 'Domain Admins (JIDs)';
-$wb["use_pubsub_txt"] = 'Enable Pubsub';
-$wb["use_proxy_txt"] = 'Enable Bytestream Proxy';
-$wb["use_anon_host_txt"] = 'Enable Anonymous Host';
-$wb["use_vjud_txt"] = 'Enable VJUD User Directory';
-$wb["vjud_opt_mode_txt"] = 'VJUD Opt Mode';
-$wb["use_muc_host_txt"] = 'Enable Multi User Chatrooms';
-$wb["muc_name_txt"] = 'Name in MUC Service Discovery';
-$wb["muc_restrict_room_creation_txt"] = 'Permission to create chatrooms';
-$wb["muc_admins_txt"] = 'MUC Admins (JIDs)';
-$wb["use_pastebin_txt"] = 'Enable Pastebin';
-$wb["pastebin_expire_after_txt"] = 'Pastes expire after (hours)';
-$wb["pastebin_trigger_txt"] = 'Pastebin trigger';
-$wb["use_http_archive_txt"] = 'Enable HTTP chatroom archive';
-$wb["http_archive_show_join_txt"] = 'Show join messages in archive';
-$wb["http_archive_show_status_txt"] = 'Show status changes in archive';
-$wb["use_status_host_txt"] = 'Enable XML Status host';
-$wb["cant_change_domainname_txt"] = 'The Domain name of existing XMPP domain cannot be changed.';
-$wb["about_registration_url_txt"] = 'Link to your registration form.';
-$wb["about_registration_message_txt"] = 'Description about your account registration process.';
-$wb["no_corresponding_maildomain_txt"] = 'Corresponding mail domain for user management not found. Please create the mail domain first.';
-$wb['ssl_state_txt'] = 'State';
-$wb['ssl_locality_txt'] = 'Locality';
-$wb['ssl_organisation_txt'] = 'Organisation';
-$wb['ssl_organisation_unit_txt'] = 'Organisation Unit';
+$wb['server_id_txt'] = 'Server';
+$wb['client_group_id_txt'] = 'Klient';
+$wb['domain_txt'] = 'Doména';
+$wb['type_txt'] = 'Typ';
+$wb['active_txt'] = 'Aktivní';
+$wb['client_txt'] = 'Klient';
+$wb['management_method_txt'] = 'Management of user accounts';
+$wb['public_registration_txt'] = 'Enable public registration';
+$wb['registration_url_txt'] = 'Registration URL';
+$wb['registration_message_txt'] = 'Registration Message';
+$wb['domain_admins_txt'] = 'Domain Admins (JIDs)';
+$wb['use_pubsub_txt'] = 'Enable Pubsub';
+$wb['use_proxy_txt'] = 'Enable Bytestream Proxy';
+$wb['use_anon_host_txt'] = 'Enable Anonymous Host';
+$wb['use_vjud_txt'] = 'Enable VJUD User Directory';
+$wb['vjud_opt_mode_txt'] = 'VJUD Opt Mode';
+$wb['use_muc_host_txt'] = 'Enable Multi User Chatrooms';
+$wb['muc_name_txt'] = 'Name in MUC Service Discovery';
+$wb['muc_restrict_room_creation_txt'] = 'Permission to create chatrooms';
+$wb['muc_admins_txt'] = 'MUC Admins (JIDs)';
+$wb['use_pastebin_txt'] = 'Enable Pastebin';
+$wb['pastebin_expire_after_txt'] = 'Pastes expire after (hours)';
+$wb['pastebin_trigger_txt'] = 'Pastebin trigger';
+$wb['use_http_archive_txt'] = 'Enable HTTP chatroom archive';
+$wb['http_archive_show_join_txt'] = 'Show join messages in archive';
+$wb['http_archive_show_status_txt'] = 'Show status changes in archive';
+$wb['use_status_host_txt'] = 'Enable XML Status host';
+$wb['cant_change_domainname_txt'] = 'The Domain name of existing XMPP domain cannot be changed.';
+$wb['about_registration_url_txt'] = 'Link to your registration form.';
+$wb['about_registration_message_txt'] = 'Description about your account registration process.';
+$wb['no_corresponding_maildomain_txt'] = 'Corresponding mail domain for user management not found. Please create the mail domain first.';
+$wb['ssl_state_txt'] = 'Stát (např. Czech Republic)';
+$wb['ssl_locality_txt'] = 'Název města';
+$wb['ssl_organisation_txt'] = 'Organizace (společnost)';
+$wb['ssl_organisation_unit_txt'] = 'Organizační jednotka (pobočka,oddělení)';
 $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_email_txt'] = 'Email Address';
+$wb['ssl_email_txt'] = 'E-mailová adresa';
 $wb['ssl_txt'] = 'SSL';
 $wb['error_ssl_state_empty'] = 'SSL State is empty.';
 $wb['error_ssl_locality_empty'] = 'SSL Locality is empty.';
@@ -48,9 +48,9 @@
 $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['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_state_error_regex'] = 'Neplatný SSL řádek - Stát. Platné znaky jsou: a-z, 0-9 a .,-_ (žádná diakritika)';
+$wb['ssl_locality_error_regex'] = 'Neplatný SSL řádek - Název města. Platné znaky jsou: a-z, 0-9 a .,-_ (žádná diakritika)';
+$wb['ssl_organisation_error_regex'] = 'Neplatný SSL řádek - Organizace. Platné znaky jsou: a-z, 0-9 a .,-_ (žádná diakritika)';
 $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['none_txt'] = 'None';
@@ -58,5 +58,6 @@
 $wb['create_certificate_txt'] = 'Create certificate';
 $wb['delete_certificate_txt'] = 'Delete certificate';
 $wb['ssl_error_isemail'] = 'Please enter a valid email adress for generation of the SSL certificate';
-$wb["limit_xmppdomain_txt"] = 'The max. number of XMPP domains for your account is reached.';
+$wb['limit_xmppdomain_txt'] = 'The max. number of XMPP domains for your account is reached.';
 ?>
+
diff --git a/interface/web/mail/lib/lang/cz_xmpp_domain_admin_list.lng b/interface/web/mail/lib/lang/cz_xmpp_domain_admin_list.lng
index a3d1736..9721283 100644
--- a/interface/web/mail/lib/lang/cz_xmpp_domain_admin_list.lng
+++ b/interface/web/mail/lib/lang/cz_xmpp_domain_admin_list.lng
@@ -1,8 +1,9 @@
 <?php
-$wb["list_head_txt"] = 'XMPP Domain';
-$wb["server_id_txt"] = 'Server';
-$wb["domain_txt"] = 'Domain';
-$wb["add_new_record_txt"] = 'Add new Domain';
-$wb["active_txt"] = 'Active';
-$wb["sys_groupid_txt"] = 'Client';
-?>
\ No newline at end of file
+$wb['list_head_txt'] = 'XMPP Domain';
+$wb['server_id_txt'] = 'Server';
+$wb['domain_txt'] = 'Doména';
+$wb['add_new_record_txt'] = 'Vytvořit doménu';
+$wb['active_txt'] = 'Aktivní';
+$wb['sys_groupid_txt'] = 'Klient';
+?>
+
diff --git a/interface/web/mail/lib/lang/cz_xmpp_domain_list.lng b/interface/web/mail/lib/lang/cz_xmpp_domain_list.lng
index f8c2fb9..709f3c2 100644
--- a/interface/web/mail/lib/lang/cz_xmpp_domain_list.lng
+++ b/interface/web/mail/lib/lang/cz_xmpp_domain_list.lng
@@ -1,7 +1,8 @@
 <?php
-$wb["list_head_txt"] = 'XMPP Domain';
-$wb["server_id_txt"] = 'Server';
-$wb["domain_txt"] = 'Domain';
-$wb["add_new_record_txt"] = 'Add new Domain';
-$wb["active_txt"] = 'Active';
-?>
\ No newline at end of file
+$wb['list_head_txt'] = 'XMPP Domain';
+$wb['server_id_txt'] = 'Server';
+$wb['domain_txt'] = 'Doména';
+$wb['add_new_record_txt'] = 'Vytvořit doménu';
+$wb['active_txt'] = 'Aktivní';
+?>
+
diff --git a/interface/web/mail/lib/lang/cz_xmpp_user.lng b/interface/web/mail/lib/lang/cz_xmpp_user.lng
index 1cc852e..1e4b380 100644
--- a/interface/web/mail/lib/lang/cz_xmpp_user.lng
+++ b/interface/web/mail/lib/lang/cz_xmpp_user.lng
@@ -1,15 +1,16 @@
 <?php
-$wb["list_head_txt"] = 'XMPP User Accounts';
-$wb["jid_txt"] = 'Jabber ID';
-$wb["active_txt"] = 'Active';
-$wb["cryptpwd_txt"] = 'Password';
-$wb["password_strength_txt"] = 'Password strength';
-$wb["error_no_pwd"] = 'Password is empty.';
-$wb["password_txt"] = 'Password';
+$wb['list_head_txt'] = 'XMPP User Accounts';
+$wb['jid_txt'] = 'Jabber ID';
+$wb['active_txt'] = 'Aktivní';
+$wb['cryptpwd_txt'] = 'Password';
+$wb['password_strength_txt'] = 'Password strength';
+$wb['error_no_pwd'] = 'Password is empty.';
+$wb['password_txt'] = 'Password';
 $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["no_domain_perm"] = 'You have no permission for this domain.';
-$wb["limit_xmpp_user_txt"] = 'The max. number of xmpp accounts for your account is reached.';
-?>
\ No newline at end of file
+$wb['no_domain_perm'] = 'You have no permission for this domain.';
+$wb['limit_xmpp_user_txt'] = 'The max. number of xmpp accounts for your account is reached.';
+?>
+
diff --git a/interface/web/mail/lib/lang/cz_xmpp_user_list.lng b/interface/web/mail/lib/lang/cz_xmpp_user_list.lng
index db88b0d..56944cc 100644
--- a/interface/web/mail/lib/lang/cz_xmpp_user_list.lng
+++ b/interface/web/mail/lib/lang/cz_xmpp_user_list.lng
@@ -1,8 +1,9 @@
 <?php
-$wb["list_head_txt"] = 'XMPP User Accounts';
-$wb["jid_txt"] = 'Jabber ID';
-$wb["is_domain_admin_txt"] = 'Domain admin';
-$wb["is_muc_admin_txt"] = 'MUC admin';
-$wb["add_new_record_txt"] = 'Add new user';
-$wb["active_txt"] = 'Active';
-?>
\ No newline at end of file
+$wb['list_head_txt'] = 'XMPP User Accounts';
+$wb['jid_txt'] = 'Jabber ID';
+$wb['is_domain_admin_txt'] = 'Domain admin';
+$wb['is_muc_admin_txt'] = 'MUC admin';
+$wb['add_new_record_txt'] = 'Add new user';
+$wb['active_txt'] = 'Aktivní';
+?>
+
diff --git a/interface/web/mail/templates/mail_alias_edit.htm b/interface/web/mail/templates/mail_alias_edit.htm
index 0487926..6a67887 100644
--- a/interface/web/mail/templates/mail_alias_edit.htm
+++ b/interface/web/mail/templates/mail_alias_edit.htm
@@ -10,7 +10,7 @@
 						<input type="text" id="email_local_part" name="email_local_part" value="{tmpl_var name='email_local_part'}" class="form-control" />
 						<span class='input-group-addon'>@</span>
                         <div class='input-group-field'>
-							<select name="email_domain" id="email_domain" class="form-control" style="height:50px;">{tmpl_var name='email_domain'}</select>
+							<select name="email_domain" id="email_domain" class="form-control" style="height:50px;min-width:170px;">{tmpl_var name='email_domain'}</select>
                         </div>
                     </div>
 				</div>
diff --git a/interface/web/mail/templates/mail_forward_edit.htm b/interface/web/mail/templates/mail_forward_edit.htm
index 7c8c8b9..7c1fca0 100644
--- a/interface/web/mail/templates/mail_forward_edit.htm
+++ b/interface/web/mail/templates/mail_forward_edit.htm
@@ -10,7 +10,7 @@
 						<input type="text" id="email_local_part" name="email_local_part" value="{tmpl_var name='email_local_part'}" class="form-control" />
 						<span class='input-group-addon'>@</span>
                         <div class='input-group-field'>
-							<select name="email_domain" id="email_domain" class="form-control" style="height:50px;">{tmpl_var name='email_domain'}</select>
+							<select name="email_domain" id="email_domain" class="form-control" style="height:50px;min-width:170px;">{tmpl_var name='email_domain'}</select>
                         </div>
                     </div>
 				</div>
diff --git a/interface/web/mail/templates/mail_user_mailbox_edit.htm b/interface/web/mail/templates/mail_user_mailbox_edit.htm
index 8609ee9..fa10373 100644
--- a/interface/web/mail/templates/mail_user_mailbox_edit.htm
+++ b/interface/web/mail/templates/mail_user_mailbox_edit.htm
@@ -16,7 +16,7 @@
 						<input type="text" id="email_local_part" name="email_local_part" value="{tmpl_var name='email_local_part'}" class="form-control" />
 						<span class='input-group-addon'>@</span>
                         <div class='input-group-field'>
-							<select name="email_domain" id="email_domain" class="form-control" style="height:50px;">{tmpl_var name='email_domain'}</select>
+							<select name="email_domain" id="email_domain" class="form-control" style="height:50px;min-width:170px;">{tmpl_var name='email_domain'}</select>
                         </div>
                     </div>
 				</div>
diff --git a/interface/web/mailuser/lib/lang/cz.lng b/interface/web/mailuser/lib/lang/cz.lng
index 8b4b58b..4c947bd 100644
--- a/interface/web/mailuser/lib/lang/cz.lng
+++ b/interface/web/mailuser/lib/lang/cz.lng
@@ -7,3 +7,4 @@
 $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 45af56e..cb39d65 100644
--- a/interface/web/mailuser/lib/lang/cz_index.lng
+++ b/interface/web/mailuser/lib/lang/cz_index.lng
@@ -10,3 +10,4 @@
 $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 ef3aeb4..5ed9a1f 100644
--- a/interface/web/mailuser/lib/lang/cz_mail_user_autoresponder.lng
+++ b/interface/web/mailuser/lib/lang/cz_mail_user_autoresponder.lng
@@ -11,3 +11,4 @@
 $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 0d9a7f5..386d6d8 100644
--- a/interface/web/mailuser/lib/lang/cz_mail_user_cc.lng
+++ b/interface/web/mailuser/lib/lang/cz_mail_user_cc.lng
@@ -5,5 +5,6 @@
 $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é.';
 $wb['name_optional_txt'] = '(Volitelné)';
-$wb['cc_note_txt'] = '(Při přeposílání na více e-mailových adres, oddělte čárkami.)';
+$wb['cc_note_txt'] = '(Při posílání kopií na více e-mailových adres, oddělte čárkami.)';
 ?>
+
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 3df9d38..60bd664 100644
--- a/interface/web/mailuser/lib/lang/cz_mail_user_filter.lng
+++ b/interface/web/mailuser/lib/lang/cz_mail_user_filter.lng
@@ -18,3 +18,4 @@
 $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 3c2593d..d7169bb 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
@@ -1,8 +1,9 @@
 <?php
 $wb['list_head_txt'] = 'E-mailová filtrovací pravidla';
 $wb['rulename_txt'] = 'Název pravidla';
-$wb['add_new_record_txt'] = 'Přidat nové pravidlo';
+$wb['add_new_record_txt'] = 'Vytvořit nové pravidlo';
 $wb['page_txt'] = 'Stránka';
 $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 4f914cd..2d09b75 100644
--- a/interface/web/mailuser/lib/lang/cz_mail_user_password.lng
+++ b/interface/web/mailuser/lib/lang/cz_mail_user_password.lng
@@ -8,3 +8,4 @@
 $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 2a53036..00720f8 100644
--- a/interface/web/mailuser/lib/lang/cz_mail_user_spamfilter.lng
+++ b/interface/web/mailuser/lib/lang/cz_mail_user_spamfilter.lng
@@ -5,3 +5,4 @@
 $wb['no_policy'] = '- nepovoleno -';
 $wb['policy_txt'] = 'Politika';
 ?>
+
diff --git a/interface/web/mailuser/lib/lang/de_mail_user_filter.lng b/interface/web/mailuser/lib/lang/de_mail_user_filter.lng
index fd93e64..1665ba1 100644
--- a/interface/web/mailuser/lib/lang/de_mail_user_filter.lng
+++ b/interface/web/mailuser/lib/lang/de_mail_user_filter.lng
@@ -8,6 +8,7 @@
 $wb['source_txt'] = 'Quelle';
 $wb['target_error_regex'] = 'Das Ziel darf nur die folgenden Zeichen enthalten: a-z, 0-9, -, ., _, und {space}';
 $wb['limit_mailfilter_txt'] = 'Die max. Anzahl an E-Mailfiltern ist erreicht.';
+$wb['mailbox_filter_txt'] = 'E-Mailfilter';
 $wb['subject_txt'] = 'Betreff';
 $wb['from_txt'] = 'Von';
 $wb['to_txt'] = 'An';
diff --git a/interface/web/mailuser/lib/lang/en_mail_user_filter.lng b/interface/web/mailuser/lib/lang/en_mail_user_filter.lng
index 296a47e..23451b7 100644
--- a/interface/web/mailuser/lib/lang/en_mail_user_filter.lng
+++ b/interface/web/mailuser/lib/lang/en_mail_user_filter.lng
@@ -8,6 +8,7 @@
 $wb["source_txt"] = 'Source';
 $wb["target_error_regex"] = 'The target may only contain these characters: a-z, 0-9, -, ., _, and {space}';
 $wb["limit_mailfilter_txt"] = 'The max. number of mailfilters is reached.';
+$wb['mailbox_filter_txt'] = 'Mailbox filter';
 $wb['subject_txt'] = 'Subject';
 $wb['from_txt'] = 'From';
 $wb['to_txt'] = 'To';
diff --git a/interface/web/mailuser/list/mail_user_filter.list.php b/interface/web/mailuser/list/mail_user_filter.list.php
index 6b71b41..d216a6b 100644
--- a/interface/web/mailuser/list/mail_user_filter.list.php
+++ b/interface/web/mailuser/list/mail_user_filter.list.php
@@ -28,7 +28,7 @@
 $liste["records_per_page"]  = "15";
 
 // Script File of the list
-$liste["file"]    = "mail_user_list.php";
+$liste["file"]    = "mail_user_filter_list.php";
 
 // Script file of the edit form
 $liste["edit_file"]   = "mail_user_filter_edit.php";
diff --git a/interface/web/mailuser/templates/index.htm b/interface/web/mailuser/templates/index.htm
index e9ac8ad..8f87035 100644
--- a/interface/web/mailuser/templates/index.htm
+++ b/interface/web/mailuser/templates/index.htm
@@ -9,23 +9,23 @@
     
         <div class="form-group">
             <label class="col-sm-3 control-label">{tmpl_var name='email_txt'}</label>
-            <p class="value">{tmpl_var name='email'}</p>
+            <div class="col-sm-9"><div class="checkbox">{tmpl_var name='email'}</div></div>
         </div>
         <div class="form-group">
             <label class="col-sm-3 control-label">{tmpl_var name='login_txt'}</label>
-            <p class="value">{tmpl_var name='login'}</p>
+            <div class="col-sm-9"><div class="checkbox">{tmpl_var name='login'}</div></div>
         </div>
         <div class="form-group">
             <label class="col-sm-3 control-label">{tmpl_var name='server_address_txt'}</label>
-            <p class="value">{tmpl_var name='server_name'}</p>
+            <div class="col-sm-9"><div class="checkbox">{tmpl_var name='server_name'}</div></div>
         </div>
         <div class="form-group">
             <label class="col-sm-3 control-label">{tmpl_var name='quota_txt'}</label>
-            <p class="value">{tmpl_var name='quota'}</p>
+            <div class="col-sm-9"><div class="checkbox">{tmpl_var name='quota'}</div></div>
         </div>
         <div class="form-group">
             <label class="col-sm-3 control-label">{tmpl_var name='cc_txt'}</label>
-            <p class="value">{tmpl_var name='cc'}</p>
+            <div class="col-sm-9"><div class="checkbox">{tmpl_var name='cc'}</div></div>
         </div>
         <div class="clear"><div class="right">
             &nbsp;
diff --git a/interface/web/mailuser/templates/mail_user_autoresponder_edit.htm b/interface/web/mailuser/templates/mail_user_autoresponder_edit.htm
index d450f67..c5fc584 100644
--- a/interface/web/mailuser/templates/mail_user_autoresponder_edit.htm
+++ b/interface/web/mailuser/templates/mail_user_autoresponder_edit.htm
@@ -14,19 +14,20 @@
             </div>
             <div class="form-group">
                 <label for="autoresponder" class="col-sm-3 control-label">{tmpl_var name='autoresponder_active'}</label>
-                <div class="col-sm-9"><input class="form-control" type="checkbox" value="y" id="autoresponder" name="autoresponder" onclick="AR_ResetDates();" {tmpl_var name='ar_active'} /></div></div>
+                <div class="col-sm-9"><input type="checkbox" value="y" id="autoresponder" name="autoresponder" onclick="AR_ResetDates();" {tmpl_var name='ar_active'} /></div>
+			</div>
             <div class="form-group">
                 <label for="autoresponder_start_date" class="col-sm-3 control-label">{tmpl_var name='autoresponder_start_date_txt'}</label>
-                {tmpl_var name='autoresponder_start_date'}&nbsp;
-                <a href="javascript:AR_SetNow();">{tmpl_var name='now_txt'}</a>
+                <div class="col-sm-9">{tmpl_var name='autoresponder_start_date'}</div>
             </div>
             <div class="form-group">
                 <label for="autoresponder_end_date" class="col-sm-3 control-label">{tmpl_var name='autoresponder_end_date_txt'}</label>
-                {tmpl_var name='autoresponder_end_date'}
+                <div class="col-sm-9">{tmpl_var name='autoresponder_end_date'}</div>
             </div>
         
         <input type="hidden" name="id" value="{tmpl_var name='id'}">
         <div class="clear"><div class="right">
-            <button class="btn btn-default formbutton-success" type="button" value="{tmpl_var name='btn_save_txt'}" data-submit-form="pageForm" data-form-action="mailuser/mail_user_autoresponder_edit.php">{tmpl_var name='btn_save_txt'}</button>
-            <button class="btn btn-default formbutton-default" type="button" value="{tmpl_var name='btn_cancel_txt'}" data-load-content="mailuser/index.php">{tmpl_var name='btn_cancel_txt'}</button>
+            <button class="btn btn-default formbutton-success" type="button"
+                    value="{tmpl_var name='btn_save_txt'}" data-submit-form="pageForm" data-form-action="mail/mail_user_edit.php">{tmpl_var name='btn_save_txt'}</button>
+            <button class="btn btn-default formbutton-default" type="button" value="{tmpl_var name='btn_cancel_txt'}" data-load-content="mail/mail_user_list.php">{tmpl_var name='btn_cancel_txt'}</button>
         </div></div>
\ No newline at end of file
diff --git a/interface/web/mailuser/templates/mail_user_cc_edit.htm b/interface/web/mailuser/templates/mail_user_cc_edit.htm
index b622390..7c59fad 100644
--- a/interface/web/mailuser/templates/mail_user_cc_edit.htm
+++ b/interface/web/mailuser/templates/mail_user_cc_edit.htm
@@ -7,7 +7,7 @@
         
             <div class="form-group">
                 <label class="col-sm-3 control-label">{tmpl_var name='email_txt'}</label>
-                <p class="value">{tmpl_var name='email'}</p>
+                <div class="col-sm-9"><div class="checkbox">{tmpl_var name='email'}</div></div>
             </div>
             <div class="form-group">
                 <label for="name" class="col-sm-3 control-label">{tmpl_var name='cc_txt'}</label>
diff --git a/interface/web/mailuser/templates/mail_user_filter_edit.htm b/interface/web/mailuser/templates/mail_user_filter_edit.htm
index d4ffced..b098742 100644
--- a/interface/web/mailuser/templates/mail_user_filter_edit.htm
+++ b/interface/web/mailuser/templates/mail_user_filter_edit.htm
@@ -10,16 +10,16 @@
                 <div class="col-sm-9"><input type="text" id="rulename" name="rulename" value="{tmpl_var name='rulename'}" class="form-control"></div></div>
             <div class="form-group">
                 <label for="source" class="col-sm-3 control-label">{tmpl_var name='source_txt'}</label>
-                <div class="col-sm-9"><select id="source" name="source" class="form-control">{tmpl_var name='source'}</select></div>
-                <div class="col-sm-9"><select id="op" name="op" class="form-control">{tmpl_var name='op'}</select></div>
-                <div class="col-sm-9"><input type="text" id="searchterm" name="searchterm" value="{tmpl_var name='searchterm'}" class="form-control"></div></div>
+                <div class="col-sm-3"><select id="source" name="source" class="form-control">{tmpl_var name='source'}</select></div>
+                <div class="col-sm-3"><select id="op" name="op" class="form-control">{tmpl_var name='op'}</select></div>
+                <div class="col-sm-3"><input type="text" id="searchterm" name="searchterm" value="{tmpl_var name='searchterm'}" class="form-control"></div></div>
             <div class="form-group">
                 <label for="action" class="col-sm-3 control-label">{tmpl_var name='action_txt'}</label>
-                <div class="col-sm-9"><select id="action" name="action" class="form-control">{tmpl_var name='action'}</select></div>
-                <div class="col-sm-9"><input type="text" id="target" name="target" value="{tmpl_var name='target'}" class="form-control"></div></div>
+                <div class="col-sm-3"><select id="action" name="action" class="form-control">{tmpl_var name='action'}</select></div>
+                <div class="col-sm-3"><input type="text" id="target" name="target" value="{tmpl_var name='target'}" class="form-control"></div></div>
             <div class="form-group">
                 <label for="active" class="col-sm-3 control-label">{tmpl_var name='active_txt'}</label>
-                <span class="">{tmpl_var name='active'}</span>
+                <div class="col-sm-9"><div class="checkbox"><label>{tmpl_var name='active'}</label></div></div>
             </div>
         
 
diff --git a/interface/web/mailuser/templates/mail_user_filter_list.htm b/interface/web/mailuser/templates/mail_user_filter_list.htm
index 8b9ea17..32d0938 100644
--- a/interface/web/mailuser/templates/mail_user_filter_list.htm
+++ b/interface/web/mailuser/templates/mail_user_filter_list.htm
@@ -43,7 +43,7 @@
 
                 <tfoot>
                 <tr>
-                    <td colspan="3"><tmpl_var name="paging"></td>
+                    <td colspan="2"><tmpl_var name="paging"></td>
                 </tr>
                 </tfoot>
             </table>
diff --git a/interface/web/mailuser/templates/mail_user_password_edit.htm b/interface/web/mailuser/templates/mail_user_password_edit.htm
index d1e04fa..b42618c 100644
--- a/interface/web/mailuser/templates/mail_user_password_edit.htm
+++ b/interface/web/mailuser/templates/mail_user_password_edit.htm
@@ -7,11 +7,20 @@
         
             <div class="form-group">
                 <label class="col-sm-3 control-label">{tmpl_var name='email_txt'}</label>
-                <p class="value">{tmpl_var name='email'}</p>
+                <div class="col-sm-9">
+					<div class="checkbox">{tmpl_var name='email'}</div>
+				</div>
             </div>
             <div class="form-group">
                 <label for="password" class="col-sm-3 control-label">{tmpl_var name='password_txt'}</label>
-                <div class="col-sm-6"><input type="password" name="password" id="password" value="{tmpl_var name='password'}" class="form-control" autocomplete="off" onkeyup="pass_check(this.value);checkPassMatch('password','repeat_password');" /></div><div class="col-sm-3 input-sm">&nbsp;</div><a href="javascript:void(0);" onclick="generatePassword('password','repeat_password');">{tmpl_var name='generate_password_txt'}</a>
+                <div class="col-sm-9">
+				<div class="input-group">
+					<input type="password" name="password" id="password" value="{tmpl_var name='password'}" class="form-control" autocomplete="off" onkeyup="pass_check(this.value);checkPassMatch('password','repeat_password');" />
+					<span class="input-group-btn">
+						<button class="btn btn-default" type="button" onclick="generatePassword('password','repeat_password');">{tmpl_var name='generate_password_txt'}</button>
+					</span>
+				</div>
+				</div>
             </div>
             <div class="form-group">
                 <label class="col-sm-3 control-label">{tmpl_var name='password_strength_txt'}</label>
@@ -23,7 +32,6 @@
                 <div class="col-sm-9"><input type="password" name="repeat_password" id="repeat_password" value="" class="form-control" autocomplete="off" onkeyup="checkPassMatch('password','repeat_password');" /></div></div>
             <div id="confirmpasswordError" style="display:none;" class="confirmpassworderror">{tmpl_var name='password_mismatch_txt'}</div>
             <div id="confirmpasswordOK" style="display:none;" class="confirmpasswordok">{tmpl_var name='password_match_txt'}</div>
-        
 
         <input type="hidden" name="id" value="{tmpl_var name='id'}">
 
diff --git a/interface/web/mailuser/templates/mail_user_spamfilter_edit.htm b/interface/web/mailuser/templates/mail_user_spamfilter_edit.htm
index 9e5360f..3528dae 100644
--- a/interface/web/mailuser/templates/mail_user_spamfilter_edit.htm
+++ b/interface/web/mailuser/templates/mail_user_spamfilter_edit.htm
@@ -7,7 +7,9 @@
         
             <div class="form-group">
                 <label class="col-sm-3 control-label">{tmpl_var name='email_txt'}</label>
-                <p class="value">{tmpl_var name='email'}</p>
+                <div class="col-sm-9">
+					<div class="checkbox">{tmpl_var name='email'}</div>
+				</div>
             </div>
             <div class="form-group">
                 <label for="policy" class="col-sm-3 control-label">{tmpl_var name='policy_txt'}</label>
diff --git a/interface/web/monitor/lib/lang/cz.lng b/interface/web/monitor/lib/lang/cz.lng
index 8cb07c3..9c44908 100644
--- a/interface/web/monitor/lib/lang/cz.lng
+++ b/interface/web/monitor/lib/lang/cz.lng
@@ -153,11 +153,12 @@
 $wb['no_munin_url_defined_txt'] = 'No Munin URL defined.';
 $wb['no_permissions_to_view_munin_txt'] = 'You are not allowed to access Munin.';
 $wb['no_data_database_size_txt'] = 'No data about the database usage available at the moment. Please check again later.';
-$wb['monitor_database_name_txt'] = 'Database';
-$wb['monitor_database_size_txt'] = 'Size';
-$wb['monitor_database_client_txt'] = 'Client';
-$wb['monitor_database_domain_txt'] = 'Domain';
 $wb['Show MongoDB-Log'] = 'Show MongoDB-Log';
+$wb['monitor_database_name_txt'] = 'Databáze';
+$wb['monitor_database_size_txt'] = 'Velikost';
+$wb['monitor_database_client_txt'] = 'Klient';
+$wb['monitor_database_domain_txt'] = 'Doména';
 $wb['monitor_services_mongodb_txt'] = 'MongoDB-Server:';
 $wb['monitor_title_mongodb_txt'] = 'MongoDB Log';
 ?>
+
diff --git a/interface/web/monitor/lib/lang/cz_datalog_list.lng b/interface/web/monitor/lib/lang/cz_datalog_list.lng
index c9e9a86..29d8cbb 100644
--- a/interface/web/monitor/lib/lang/cz_datalog_list.lng
+++ b/interface/web/monitor/lib/lang/cz_datalog_list.lng
@@ -6,3 +6,4 @@
 $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 9906625..864232e 100644
--- a/interface/web/monitor/lib/lang/cz_syslog_list.lng
+++ b/interface/web/monitor/lib/lang/cz_syslog_list.lng
@@ -5,3 +5,4 @@
 $wb['loglevel_txt'] = 'Logovací úroveň';
 $wb['message_txt'] = 'Zpráva';
 ?>
+
diff --git a/interface/web/sites/form/web_vhost_domain.tform.php b/interface/web/sites/form/web_vhost_domain.tform.php
index 8e40f82..1bbc148 100644
--- a/interface/web/sites/form/web_vhost_domain.tform.php
+++ b/interface/web/sites/form/web_vhost_domain.tform.php
@@ -894,6 +894,30 @@
 				'rows'  => '',
 				'cols'  => ''
 			),
+			'http_port' => array (
+				'datatype' => 'INTEGER',
+				'formtype' => 'TEXT',
+				'validators' => array (  0 => array ( 'type' => 'REGEX',
+						'regex' => '/^([0-9]{1,5})$/',
+						'errmsg'=> 'http_port_error_regex'),
+				),
+				'default' => '0',
+				'value'  => '',
+				'width'  => '3',
+				'maxlength' => '6'
+			),
+			'https_port' => array (
+				'datatype' => 'INTEGER',
+				'formtype' => 'TEXT',
+				'validators' => array (  0 => array ( 'type' => 'REGEX',
+						'regex' => '/^([0-9]{1,5})$/',
+						'errmsg'=> 'https_port_error_regex'),
+				),
+				'default' => '0',
+				'value'  => '',
+				'width'  => '3',
+				'maxlength' => '6'
+			)
 			//#################################
 			// ENDE Datatable fields
 			//#################################
diff --git a/interface/web/sites/lib/lang/cz.lng b/interface/web/sites/lib/lang/cz.lng
index 5bd3d51..6580b3f 100644
--- a/interface/web/sites/lib/lang/cz.lng
+++ b/interface/web/sites/lib/lang/cz.lng
@@ -2,7 +2,7 @@
 $wb['Websites'] = 'Webové stránky';
 $wb['Website'] = 'Webové stránky';
 $wb['Subdomain'] = 'Subdomény pro webové stránky';
-$wb['Aliasdomain'] = 'Alias domény pro webové stránky';
+$wb['Aliasdomain'] = 'Přezdívky domén webové stránky';
 $wb['Database'] = 'Databáze';
 $wb['Web Access'] = 'Webové přístupy';
 $wb['FTP-User'] = 'FTP uživatelé';
@@ -33,3 +33,4 @@
 $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 e661639..69887b5 100644
--- a/interface/web/sites/lib/lang/cz_aps.lng
+++ b/interface/web/sites/lib/lang/cz_aps.lng
@@ -56,3 +56,4 @@
 $wb['btn_cancel_txt'] = 'Zrušit';
 $wb['limit_aps_txt'] = 'Max. počet APS  instancí u vašeho účtu je dosaženo.';
 ?>
+
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 8d71287..8f7c248 100644
--- a/interface/web/sites/lib/lang/cz_aps_instances_list.lng
+++ b/interface/web/sites/lib/lang/cz_aps_instances_list.lng
@@ -9,3 +9,4 @@
 $wb['filter_txt'] = 'Hledat';
 $wb['delete_txt'] = 'Smazat';
 ?>
+
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 52ef6eb..cf0d2b6 100644
--- a/interface/web/sites/lib/lang/cz_aps_packages_list.lng
+++ b/interface/web/sites/lib/lang/cz_aps_packages_list.lng
@@ -6,3 +6,4 @@
 $wb['status_txt'] = 'Odemčený';
 $wb['filter_txt'] = 'Hledat';
 ?>
+
diff --git a/interface/web/sites/lib/lang/cz_aps_update_packagelist.lng b/interface/web/sites/lib/lang/cz_aps_update_packagelist.lng
index 8f4124b..edf9c2a 100644
--- a/interface/web/sites/lib/lang/cz_aps_update_packagelist.lng
+++ b/interface/web/sites/lib/lang/cz_aps_update_packagelist.lng
@@ -5,3 +5,4 @@
 $wb['btn_cancel_txt'] = 'Zrušit';
 $wb['legend_txt'] = 'Zde si můžete aktualizovat seznam dostupných balíčků. Vezměte prosím na vědomí, že aktualizace může trvat až několik minut. Po spuštění aktualizace můžete následně opustit tuto sekci. Tento proces bude pokračovat na pozadí.';
 ?>
+
diff --git a/interface/web/sites/lib/lang/cz_backup_stats_list.lng b/interface/web/sites/lib/lang/cz_backup_stats_list.lng
index 65792aa..5609ffb 100644
--- a/interface/web/sites/lib/lang/cz_backup_stats_list.lng
+++ b/interface/web/sites/lib/lang/cz_backup_stats_list.lng
@@ -1,10 +1,11 @@
 <?php
-$wb['list_head_txt'] = 'Backup Stats';
+$wb['list_head_txt'] = 'Statistiky zálohování';
 $wb['database_name_txt'] = '';
-$wb['active_txt'] = 'Active';
-$wb['domain_txt'] = 'Domain';
-$wb['backup_count_txt'] = 'Backup count';
+$wb['active_txt'] = 'Aktivní';
+$wb['domain_txt'] = 'Doména';
+$wb['backup_count_txt'] = 'Počet záloh';
 $wb['backup_server_txt'] = 'Server';
 $wb['backup_interval_txt'] = 'Interval / cnt.';
-$wb['backup_size_txt'] = 'Backupsize';
+$wb['backup_size_txt'] = 'Velikost zálohy';
 ?>
+
diff --git a/interface/web/sites/lib/lang/cz_cron.lng b/interface/web/sites/lib/lang/cz_cron.lng
index 05c62e7..9e5d137 100644
--- a/interface/web/sites/lib/lang/cz_cron.lng
+++ b/interface/web/sites/lib/lang/cz_cron.lng
@@ -24,3 +24,4 @@
 $wb['command_hint_txt'] = 'e.g. /var/www/clients/clientX/webY/myscript.sh or http://www.mydomain.com/path/script.php, you can use [web_root] placeholder that is replaced by /var/www/clients/clientX/webY/web.';
 $wb['log_output_txt'] = 'Log output';
 ?>
+
diff --git a/interface/web/sites/lib/lang/cz_cron_list.lng b/interface/web/sites/lib/lang/cz_cron_list.lng
index f50dee2..3b1b6c1 100644
--- a/interface/web/sites/lib/lang/cz_cron_list.lng
+++ b/interface/web/sites/lib/lang/cz_cron_list.lng
@@ -8,6 +8,7 @@
 $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['add_new_cron_txt'] = 'Vytvořit cron úlohu';
 $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 5bb2630..def6783 100644
--- a/interface/web/sites/lib/lang/cz_database.lng
+++ b/interface/web/sites/lib/lang/cz_database.lng
@@ -22,7 +22,7 @@
 $wb['database_charset_change_txt'] = 'Znaková sada databáze nemůže být změněna';
 $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['parent_domain_id_txt'] = 'Přiřadit k webové doméně';
 $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';
@@ -38,12 +38,13 @@
 $wb['globalsearch_searchfield_watermark_txt'] = 'Hledat';
 $wb['globalsearch_suggestions_text_txt'] = 'Návrhy';
 $wb['database_ro_user_txt'] = 'Uživatel databáze - jen právo ke čtení';
-$wb['optional_txt'] = 'Volitelný';
+$wb['optional_txt'] = 'Volitelně';
 $wb['select_dbuser_txt'] = 'Vyberte uživatele databáze';
 $wb['no_dbuser_txt'] = 'Žádný';
 $wb['database_client_differs_txt'] = 'Klient mateřského webu a databáze se neshodují.';
 $wb['database_user_missing_txt'] = 'Prosím vyberte uživatele databáze pro tuto databázi.';
-$wb['limit_database_quota_txt'] = 'Database quota';
+$wb['limit_database_quota_txt'] = 'Kvóta databáze';
 $wb['limit_database_quota_error_notint'] = 'The database quota limit must be a number.';
 $wb['limit_database_quota_free_txt'] = 'Max. available DB quota ';
 ?>
+
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 eb7970a..c79d180 100644
--- a/interface/web/sites/lib/lang/cz_database_admin_list.lng
+++ b/interface/web/sites/lib/lang/cz_database_admin_list.lng
@@ -5,8 +5,9 @@
 $wb['server_id_txt'] = 'Server';
 $wb['database_user_txt'] = 'Uživatel databáze';
 $wb['database_name_txt'] = 'Jméno databáze';
-$wb['add_new_record_txt'] = 'Přidat nové databáze';
+$wb['add_new_record_txt'] = 'Vytvořit databázi';
 $wb['sys_groupid_txt'] = 'Klient';
 $wb['parent_domain_id_txt'] = 'Webové stránky';
-$wb['type_txt'] = 'Type';
+$wb['type_txt'] = 'Typ';
 ?>
+
diff --git a/interface/web/sites/lib/lang/cz_database_list.lng b/interface/web/sites/lib/lang/cz_database_list.lng
index 68640bf..e1deb29 100644
--- a/interface/web/sites/lib/lang/cz_database_list.lng
+++ b/interface/web/sites/lib/lang/cz_database_list.lng
@@ -5,7 +5,8 @@
 $wb['server_id_txt'] = 'Server';
 $wb['database_user_txt'] = 'Uživatel databáze';
 $wb['database_name_txt'] = 'Název databáze';
-$wb['add_new_record_txt'] = 'Přidat databázi';
+$wb['add_new_record_txt'] = 'Vytvořit databázi';
 $wb['parent_domain_id_txt'] = 'Webové stránky';
-$wb['type_txt'] = 'Type';
+$wb['type_txt'] = 'Typ';
 ?>
+
diff --git a/interface/web/sites/lib/lang/cz_database_quota_stats_list.lng b/interface/web/sites/lib/lang/cz_database_quota_stats_list.lng
index 4f92576..752db7f 100644
--- a/interface/web/sites/lib/lang/cz_database_quota_stats_list.lng
+++ b/interface/web/sites/lib/lang/cz_database_quota_stats_list.lng
@@ -1,8 +1,9 @@
 <?php
-$wb['database_txt'] = 'Database';
+$wb['database_txt'] = 'Databáze';
 $wb['server_name_txt'] = 'Server';
-$wb['client_txt'] = 'Client';
-$wb['used_txt'] = 'Used space';
-$wb['quota_txt'] = 'Quota';
-$wb['percentage_txt'] = 'Used in %';
+$wb['client_txt'] = 'Klient';
+$wb['used_txt'] = 'Využité místo';
+$wb['quota_txt'] = 'Kvóta';
+$wb['percentage_txt'] = 'Využito v %';
 ?>
+
diff --git a/interface/web/sites/lib/lang/cz_database_user.lng b/interface/web/sites/lib/lang/cz_database_user.lng
index 81c77a1..fbf9aa6 100644
--- a/interface/web/sites/lib/lang/cz_database_user.lng
+++ b/interface/web/sites/lib/lang/cz_database_user.lng
@@ -22,3 +22,4 @@
 $wb['globalsearch_suggestions_text_txt'] = 'Návrhy';
 $wb['limit_database_user_txt'] = 'The max. number of database users is reached.';
 ?>
+
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 df7bf45..85f1f45 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
@@ -1,6 +1,7 @@
 <?php
 $wb['list_head_txt'] = 'Uživatelé databáze';
 $wb['database_user_txt'] = 'Uživatel databáze';
-$wb['add_new_record_txt'] = 'Vytvořit nového uživatele databáze';
+$wb['add_new_record_txt'] = 'Vytvořit 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 42cf36d..38777a3 100644
--- a/interface/web/sites/lib/lang/cz_database_user_list.lng
+++ b/interface/web/sites/lib/lang/cz_database_user_list.lng
@@ -1,5 +1,6 @@
 <?php
 $wb['list_head_txt'] = 'Uživatelé databáze';
 $wb['database_user_txt'] = 'Uživatelé databáze';
-$wb['add_new_record_txt'] = 'Přidat nového uživatele databáze';
+$wb['add_new_record_txt'] = 'Vytvořit uživatele databáze';
 ?>
+
diff --git a/interface/web/sites/lib/lang/cz_ftp_sites_stats_list.lng b/interface/web/sites/lib/lang/cz_ftp_sites_stats_list.lng
index 0389460..c691ba9 100644
--- a/interface/web/sites/lib/lang/cz_ftp_sites_stats_list.lng
+++ b/interface/web/sites/lib/lang/cz_ftp_sites_stats_list.lng
@@ -1,10 +1,11 @@
 <?php
-$wb["list_head_txt"] = 'FTP traffic';
-$wb["domain_txt"] = 'Domain';
-$wb["this_month_txt"] = 'This month';
-$wb["last_month_txt"] = 'Last month';
-$wb["this_year_txt"] = 'This year';
-$wb["last_year_txt"] = 'Last year';
-$wb["sum_txt"] = 'Sum (Download + Upload)';
-$wb["in_out_txt"] = 'DL/UL';
-?>
\ No newline at end of file
+$wb['list_head_txt'] = 'FTP traffic';
+$wb['domain_txt'] = 'Doména';
+$wb['this_month_txt'] = 'This month';
+$wb['last_month_txt'] = 'Last month';
+$wb['this_year_txt'] = 'This year';
+$wb['last_year_txt'] = 'Last year';
+$wb['sum_txt'] = 'Sum (Download + Upload)';
+$wb['in_out_txt'] = 'DL/UL';
+?>
+
diff --git a/interface/web/sites/lib/lang/cz_ftp_user.lng b/interface/web/sites/lib/lang/cz_ftp_user.lng
index 768a05a..ae12e41 100644
--- a/interface/web/sites/lib/lang/cz_ftp_user.lng
+++ b/interface/web/sites/lib/lang/cz_ftp_user.lng
@@ -33,3 +33,4 @@
 $wb['password_match_txt'] = 'Hesla se shodují.';
 $wb['expires_txt'] = 'Expire at';
 ?>
+
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 79ec083..13c4d7c 100644
--- a/interface/web/sites/lib/lang/cz_ftp_user_list.lng
+++ b/interface/web/sites/lib/lang/cz_ftp_user_list.lng
@@ -4,5 +4,6 @@
 $wb['server_id_txt'] = 'Server';
 $wb['parent_domain_id_txt'] = 'Webové stránky';
 $wb['username_txt'] = 'Uživatelské jméno';
-$wb['add_new_record_txt'] = 'Přidat FTP uživatele';
+$wb['add_new_record_txt'] = 'Vytvořit 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 eb66108..76814af 100644
--- a/interface/web/sites/lib/lang/cz_shell_user.lng
+++ b/interface/web/sites/lib/lang/cz_shell_user.lng
@@ -34,3 +34,4 @@
 $wb['invalid_username_txt'] = 'Invalid Username';
 $wb['directory_error_notinweb'] = 'The directory has to be inside the web root.';
 ?>
+
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 8a4ea40..3c46ea3 100644
--- a/interface/web/sites/lib/lang/cz_shell_user_list.lng
+++ b/interface/web/sites/lib/lang/cz_shell_user_list.lng
@@ -4,5 +4,6 @@
 $wb['server_id_txt'] = 'Server';
 $wb['parent_domain_id_txt'] = 'Stránka';
 $wb['username_txt'] = 'Uživatelské jméno';
-$wb['add_new_record_txt'] = 'Přidat shell uživatele';
+$wb['add_new_record_txt'] = 'Vytvořit 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 8e3a8cc..f7c3b1f 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
@@ -7,3 +7,4 @@
 $wb['soft_txt'] = 'Kvóta pro upozornění';
 $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 1b9fc20..b27a034 100644
--- a/interface/web/sites/lib/lang/cz_web_aliasdomain.lng
+++ b/interface/web/sites/lib/lang/cz_web_aliasdomain.lng
@@ -1,11 +1,11 @@
 <?php
-$wb['domain_txt'] = 'Alias domény pro webové stránky';
+$wb['domain_txt'] = 'Přezdívky domén webové stránky';
 $wb['backup_interval_txt'] = 'Interval zálohování';
 $wb['backup_copies_txt'] = 'Počet kopií zálohy';
-$wb['ssl_state_txt'] = 'State';
-$wb['ssl_locality_txt'] = 'Locality';
-$wb['ssl_organisation_txt'] = 'Organisation';
-$wb['ssl_organisation_unit_txt'] = 'Organisation Unit';
+$wb['ssl_state_txt'] = 'Stát (např. Czech Republic)';
+$wb['ssl_locality_txt'] = 'Název města';
+$wb['ssl_organisation_txt'] = 'Organizace (společnost)';
+$wb['ssl_organisation_unit_txt'] = 'Organizační jednotka (pobočka,oddělení)';
 $wb['ssl_country_txt'] = 'Country';
 $wb['ssl_key_txt'] = 'SSL Key';
 $wb['ssl_request_txt'] = 'SSL Request';
@@ -15,7 +15,7 @@
 $wb['ssl_domain_txt'] = 'SSL Domain';
 $wb['server_id_txt'] = 'Server';
 $wb['web_folder_error_regex'] = 'Invalid folder entered. Please do not enter a slash.';
-$wb['type_txt'] = 'Type';
+$wb['type_txt'] = 'Typ';
 $wb['parent_domain_id_txt'] = 'Rodičovské webové stránky';
 $wb['redirect_type_txt'] = 'Typ přesměrování';
 $wb['redirect_path_txt'] = 'Cesta přesměrování';
@@ -56,9 +56,9 @@
 $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 .,-_';
-$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_state_error_regex'] = 'Neplatný SSL řádek - Stát. Platné znaky jsou: a-z, 0-9 a .,-_ (žádná diakritika)';
+$wb['ssl_locality_error_regex'] = 'Neplatný SSL řádek - Název města. Platné znaky jsou: a-z, 0-9 a .,-_ (žádná diakritika)';
+$wb['ssl_organisation_error_regex'] = 'Neplatný SSL řádek - Organizace. Platné znaky jsou: a-z, 0-9 a .,-_ (žádná diakritika)';
 $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';
@@ -111,5 +111,6 @@
 $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:';
-$wb['Domain'] = 'Alias domény pro webové stránky';
+$wb['Domain'] = 'Přezdívky domén webové stránky';
 ?>
+
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 a20b415..2491709 100644
--- a/interface/web/sites/lib/lang/cz_web_aliasdomain_list.lng
+++ b/interface/web/sites/lib/lang/cz_web_aliasdomain_list.lng
@@ -1,10 +1,10 @@
 <?php
-$wb['list_head_txt'] = 'Alias domény pro webové stránky';
+$wb['list_head_txt'] = 'Přezdívky domén webové stránky';
 $wb['active_txt'] = 'Aktivní';
 $wb['server_id_txt'] = 'Server';
 $wb['parent_domain_id_txt'] = 'Webové stránky';
 $wb['domain_txt'] = 'Alias doména';
-$wb['add_new_record_txt'] = 'Přidat alias doménu';
+$wb['add_new_record_txt'] = 'Vytvořit alias doménu';
 $wb['domain_error_empty'] = 'Doména je prázdná.';
 $wb['domain_error_unique'] = 'Doména musí být unkátní.';
 $wb['domain_error_regex'] = 'Doménové jméno je chybné.';
@@ -12,3 +12,4 @@
 $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 48dbd1f..467aa0a 100644
--- a/interface/web/sites/lib/lang/cz_web_backup_list.lng
+++ b/interface/web/sites/lib/lang/cz_web_backup_list.lng
@@ -10,12 +10,13 @@
 $wb['restore_confirm_txt'] = 'Obnovení přepíše existující soubory na Vaší webové stránce. Opravdu chcete obnovit tuto zálohu ?';
 $wb['download_pending_txt'] = 'Shodný požadavek na vytvoření zálohy pro stažení již čeká ve frontě na serveru ke zpracování.';
 $wb['restore_pending_txt'] = 'Shodný požadavek na obnovu dat ze zálohy již čeká ve frontě na serveru ke zpracování.';
-$wb['delete_backup_txt'] = 'Delete Backup';
+$wb['backup_type_mysql'] = 'MySQL Databáze';
+$wb['backup_type_web'] = 'Soubory webových stránek';
+$wb['filesize_txt'] = 'Velikost souboru';
+$wb['delete_backup_txt'] = 'Smazat zálohu';
 $wb['delete_info_txt'] = 'Delete of the backup has been started. This action takes several minutes to be completed.';
 $wb['delete_confirm_txt'] = 'Really delete this backup?';
 $wb['delete_pending_txt'] = 'There is already a pending backup delete job.';
-$wb['backup_type_mysql'] = 'MySQL Databáze';
-$wb['backup_type_web'] = 'Soubory webových stránek';
-$wb['filesize_txt'] = 'Filesize';
 $wb['backup_type_mongodb'] = 'MongoDB Database';
 ?>
+
diff --git a/interface/web/sites/lib/lang/cz_web_childdomain.lng b/interface/web/sites/lib/lang/cz_web_childdomain.lng
index a33ab1a..8b9058d 100644
--- a/interface/web/sites/lib/lang/cz_web_childdomain.lng
+++ b/interface/web/sites/lib/lang/cz_web_childdomain.lng
@@ -1,11 +1,11 @@
 <?php
-$wb['domain_txt'] = 'Alias domény pro webové stránky';
+$wb['domain_txt'] = 'Přezdívky domén webové stránky';
 $wb['backup_interval_txt'] = 'Interval zálohování';
 $wb['backup_copies_txt'] = 'Počet kopií zálohy';
-$wb['ssl_state_txt'] = 'State';
-$wb['ssl_locality_txt'] = 'Locality';
-$wb['ssl_organisation_txt'] = 'Organisation';
-$wb['ssl_organisation_unit_txt'] = 'Organisation Unit';
+$wb['ssl_state_txt'] = 'Stát (např. Czech Republic)';
+$wb['ssl_locality_txt'] = 'Název města';
+$wb['ssl_organisation_txt'] = 'Organizace (společnost)';
+$wb['ssl_organisation_unit_txt'] = 'Organizační jednotka (pobočka,oddělení)';
 $wb['ssl_country_txt'] = 'Country';
 $wb['ssl_key_txt'] = 'SSL Key';
 $wb['ssl_request_txt'] = 'SSL Request';
@@ -15,7 +15,7 @@
 $wb['ssl_domain_txt'] = 'SSL Domain';
 $wb['server_id_txt'] = 'Server';
 $wb['web_folder_error_regex'] = 'Invalid folder entered. Please do not enter a slash.';
-$wb['type_txt'] = 'Type';
+$wb['type_txt'] = 'Typ';
 $wb['parent_domain_id_txt'] = 'Rodičovské webové stránky';
 $wb['redirect_type_txt'] = 'Typ přesměrování';
 $wb['redirect_path_txt'] = 'Cesta přesměrování';
@@ -64,9 +64,9 @@
 $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 .,-_';
-$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_state_error_regex'] = 'Neplatný SSL řádek - Stát. Platné znaky jsou: a-z, 0-9 a .,-_ (žádná diakritika)';
+$wb['ssl_locality_error_regex'] = 'Neplatný SSL řádek - Název města. Platné znaky jsou: a-z, 0-9 a .,-_ (žádná diakritika)';
+$wb['ssl_organisation_error_regex'] = 'Neplatný SSL řádek - Organizace. Platné znaky jsou: a-z, 0-9 a .,-_ (žádná diakritika)';
 $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';
@@ -114,5 +114,6 @@
 $wb['available_php_directive_snippets_txt'] = 'Available PHP Directive Snippets:';
 $wb['available_apache_directive_snippets_txt'] = 'Available Apache Directive Snippets:';
 $wb['available_nginx_directive_snippets_txt'] = 'Available nginx Directive Snippets:';
-$wb['Domain'] = 'Alias domény pro webové stránky';
+$wb['Domain'] = 'Přezdívky domén webové stránky';
 ?>
+
diff --git a/interface/web/sites/lib/lang/cz_web_childdomain_list.lng b/interface/web/sites/lib/lang/cz_web_childdomain_list.lng
index 94831d3..8c45530 100644
--- a/interface/web/sites/lib/lang/cz_web_childdomain_list.lng
+++ b/interface/web/sites/lib/lang/cz_web_childdomain_list.lng
@@ -1,5 +1,5 @@
 <?php
-$wb['list_head_txt'] = 'Alias domény pro webové stránky';
+$wb['list_head_txt'] = 'Přezdívky domén webové stránky';
 $wb['active_txt'] = 'Aktivní';
 $wb['server_id_txt'] = 'Server';
 $wb['parent_domain_id_txt'] = 'Webové stránky';
@@ -10,6 +10,7 @@
 $wb['no_redirect_txt'] = 'Žádné přesměrování';
 $wb['no_flag_txt'] = 'Žádný příznak';
 $wb['none_txt'] = 'Žádná';
-$wb['add_new_subdomain_txt'] = 'Add new Subdomain';
-$wb['add_new_aliasdomain_txt'] = 'Add new Aliasdomain';
+$wb['add_new_subdomain_txt'] = 'Vytvořit subdoménu';
+$wb['add_new_aliasdomain_txt'] = 'Vytvořit přezdívku domény';
 ?>
+
diff --git a/interface/web/sites/lib/lang/cz_web_directive_snippets.lng b/interface/web/sites/lib/lang/cz_web_directive_snippets.lng
index fc74e4c..a17efa2 100644
--- a/interface/web/sites/lib/lang/cz_web_directive_snippets.lng
+++ b/interface/web/sites/lib/lang/cz_web_directive_snippets.lng
@@ -1,3 +1,4 @@
 <?php
 $wb['directive_snippets_id_txt'] = 'Desired configuration';
-?>
\ No newline at end of file
+?>
+
diff --git a/interface/web/sites/lib/lang/cz_web_domain.lng b/interface/web/sites/lib/lang/cz_web_domain.lng
index db8f37f..71e367a 100644
--- a/interface/web/sites/lib/lang/cz_web_domain.lng
+++ b/interface/web/sites/lib/lang/cz_web_domain.lng
@@ -1,8 +1,8 @@
 <?php
-$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_state_txt'] = 'Stát (např. Czech Republic)';
+$wb['ssl_locality_txt'] = 'Název města';
+$wb['ssl_organisation_txt'] = 'Organizace (společnost)';
+$wb['ssl_organisation_unit_txt'] = 'Organizační jednotka (pobočka,oddělení)';
 $wb['ssl_country_txt'] = 'Země';
 $wb['ssl_request_txt'] = 'SSL požadavek';
 $wb['ssl_cert_txt'] = 'SSL certifikát';
@@ -48,9 +48,9 @@
 $wb['stats_password_txt'] = 'Heslo k webovým statistikám';
 $wb['allow_override_txt'] = 'Povolit přepis (Allow Override)';
 $wb['limit_web_quota_free_txt'] = 'Max. dostupná disková kvóta';
-$wb['ssl_state_error_regex'] = 'Neplatný SSL stav. Platné znaky jsou: a-z, 0-9 a .,-_';
-$wb['ssl_locality_error_regex'] = 'Neplatná SSL lokalita. Platné znaky jsou: a-z, 0-9 a .,-_';
-$wb['ssl_organisation_error_regex'] = 'Neplatná SSL organizace. Platné znaky jsou: a-z, 0-9 a .,-_';
+$wb['ssl_state_error_regex'] = 'Neplatný SSL řádek - Stát. Platné znaky jsou: a-z, 0-9 a .,-_ (žádná diakritika)';
+$wb['ssl_locality_error_regex'] = 'Neplatný SSL řádek - Název města. Platné znaky jsou: a-z, 0-9 a .,-_ (žádná diakritika)';
+$wb['ssl_organisation_error_regex'] = 'Neplatný SSL řádek - Organizace. Platné znaky jsou: a-z, 0-9 a .,-_ (žádná diakritika)';
 $wb['ssl_organistaion_unit_error_regex'] = 'Neplatná SSL organizační jednotka. Platné znaky jsou: a-z, 0-9 a .,-_';
 $wb['ssl_country_error_regex'] = 'Neplatná SSL země. Platné znaky jsou: A-Z';
 $wb['limit_traffic_quota_free_txt'] = 'Max. dostupná přenosová kvóta';
@@ -61,8 +61,8 @@
 $wb['backup_copies_txt'] = 'Počet kopií zálohy';
 $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';
+$wb['stats_user_txt'] = 'Webové statistiky - uživatelské jméno';
+$wb['stats_type_txt'] = 'Webové statistiky - výběr aplikace';
 $wb['custom_php_ini_txt'] = 'Vlastní nastavení php.ini';
 $wb['none_txt'] = 'Žádná';
 $wb['disabled_txt'] = 'Zakázáno';
@@ -130,3 +130,4 @@
 $wb['invalid_system_user_or_group_txt'] = 'Invalid system user or group';
 $wb['apache_directive_blocked_error'] = 'Apache directive blocked by security settings:';
 ?>
+
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 e52a794..ce2e3b2 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
@@ -5,5 +5,6 @@
 $wb['active_txt'] = 'Aktivní';
 $wb['server_id_txt'] = 'Server';
 $wb['domain_txt'] = 'Doména';
-$wb['add_new_record_txt'] = 'Přidat webovou stránku';
+$wb['add_new_record_txt'] = 'Vytvořit 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 cbf025e..d718ab1 100644
--- a/interface/web/sites/lib/lang/cz_web_domain_list.lng
+++ b/interface/web/sites/lib/lang/cz_web_domain_list.lng
@@ -4,5 +4,6 @@
 $wb['active_txt'] = 'Aktivní';
 $wb['server_id_txt'] = 'Server';
 $wb['domain_txt'] = 'Doména';
-$wb['add_new_record_txt'] = 'Přidat webovou stránku';
+$wb['add_new_record_txt'] = 'Vytvořit 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 69310b5..7d520e0 100644
--- a/interface/web/sites/lib/lang/cz_web_folder.lng
+++ b/interface/web/sites/lib/lang/cz_web_folder.lng
@@ -6,3 +6,4 @@
 $wb['path_error_regex'] = 'Neplatná cesta ke složce.';
 $wb['error_folder_already_protected_txt'] = 'Záznam pro tuto složku již existuje';
 ?>
+
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 d7c39c0..a7f8998 100644
--- a/interface/web/sites/lib/lang/cz_web_folder_list.lng
+++ b/interface/web/sites/lib/lang/cz_web_folder_list.lng
@@ -4,5 +4,6 @@
 $wb['server_id_txt'] = 'Server';
 $wb['parent_domain_id_txt'] = 'Webové stránky';
 $wb['path_txt'] = 'Cesta';
-$wb['add_new_record_txt'] = 'Přidat novou složku';
+$wb['add_new_record_txt'] = 'Vytvořit složku';
 ?>
+
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 ca4cf5d..1c8a018 100644
--- a/interface/web/sites/lib/lang/cz_web_folder_user.lng
+++ b/interface/web/sites/lib/lang/cz_web_folder_user.lng
@@ -12,3 +12,4 @@
 $wb['no_folder_perm'] = 'Nemáte oprávnění pro tuto složku.';
 $wb['error_user_exists_already_txt'] = 'There is already a record for this user.';
 ?>
+
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 1f09657..3d44486 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
@@ -3,5 +3,6 @@
 $wb['active_txt'] = 'Aktivní';
 $wb['web_folder_id_txt'] = 'Složka';
 $wb['username_txt'] = 'Uživatelské jméno';
-$wb['add_new_record_txt'] = 'Přidat nového uživatele složky';
+$wb['add_new_record_txt'] = 'Vytvořit uživatele složky';
 ?>
+
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 ed93596..a70ccfb 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
@@ -7,3 +7,4 @@
 $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 de1445f..3066d4a 100644
--- a/interface/web/sites/lib/lang/cz_web_subdomain.lng
+++ b/interface/web/sites/lib/lang/cz_web_subdomain.lng
@@ -1,8 +1,8 @@
 <?php
-$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_state_txt'] = 'Stát (např. Czech Republic)';
+$wb['ssl_locality_txt'] = 'Název města';
+$wb['ssl_organisation_txt'] = 'Organizace (společnost)';
+$wb['ssl_organisation_unit_txt'] = 'Organizační jednotka (pobočka,oddělení)';
 $wb['ssl_country_txt'] = 'Země';
 $wb['ssl_request_txt'] = 'SSL požadavek';
 $wb['ssl_cert_txt'] = 'SSL certifikát';
@@ -44,3 +44,4 @@
 $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 cfe56c1..a23ed8f 100644
--- a/interface/web/sites/lib/lang/cz_web_subdomain_list.lng
+++ b/interface/web/sites/lib/lang/cz_web_subdomain_list.lng
@@ -4,5 +4,6 @@
 $wb['server_id_txt'] = 'Server';
 $wb['parent_domain_id_txt'] = 'Webové stránky';
 $wb['domain_txt'] = 'Subdoména';
-$wb['add_new_record_txt'] = 'Přidat subdoménu';
+$wb['add_new_record_txt'] = 'Vytvořit subdoménu';
 ?>
+
diff --git a/interface/web/sites/lib/lang/cz_web_vhost_domain.lng b/interface/web/sites/lib/lang/cz_web_vhost_domain.lng
index e786fad..135c257 100644
--- a/interface/web/sites/lib/lang/cz_web_vhost_domain.lng
+++ b/interface/web/sites/lib/lang/cz_web_vhost_domain.lng
@@ -5,10 +5,10 @@
 $wb['web_folder_unique_txt'] = 'The web folder is already used, please choose a different one.';
 $wb['backup_interval_txt'] = 'Interval zálohování';
 $wb['backup_copies_txt'] = 'Počet kopií zálohy';
-$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_state_txt'] = 'Stát (např. Czech Republic)';
+$wb['ssl_locality_txt'] = 'Název města';
+$wb['ssl_organisation_txt'] = 'Organizace (společnost)';
+$wb['ssl_organisation_unit_txt'] = 'Organizační jednotka (pobočka,oddělení)';
 $wb['ssl_country_txt'] = 'Země';
 $wb['ssl_request_txt'] = 'SSL požadavek';
 $wb['ssl_cert_txt'] = 'SSL certifikát';
@@ -18,7 +18,7 @@
 $wb['server_id_txt'] = 'Server';
 $wb['domain_txt'] = 'Doména';
 $wb['type_txt'] = 'Verze';
-$wb['host_txt'] = 'Hostname';
+$wb['host_txt'] = 'Název hostitele';
 $wb['web_folder_error_regex'] = 'Invalid folder entered. Please do not enter a slash.';
 $wb['redirect_type_txt'] = 'Typ přesměrování';
 $wb['redirect_path_txt'] = 'Cesta přesměrování';
@@ -55,9 +55,9 @@
 $wb['stats_password_txt'] = 'Heslo k webovým statistikám';
 $wb['allow_override_txt'] = 'Povolit přepis (Allow Override)';
 $wb['limit_web_quota_free_txt'] = 'Max. dostupná disková kvóta';
-$wb['ssl_state_error_regex'] = 'Neplatný SSL stav. Platné znaky jsou: a-z, 0-9 a .,-_';
-$wb['ssl_locality_error_regex'] = 'Neplatná SSL lokalita. Platné znaky jsou: a-z, 0-9 a .,-_';
-$wb['ssl_organisation_error_regex'] = 'Neplatná SSL organizace. Platné znaky jsou: a-z, 0-9 a .,-_';
+$wb['ssl_state_error_regex'] = 'Neplatný SSL řádek - Stát. Platné znaky jsou: a-z, 0-9 a .,-_ (žádná diakritika)';
+$wb['ssl_locality_error_regex'] = 'Neplatný SSL řádek - Název města. Platné znaky jsou: a-z, 0-9 a .,-_ (žádná diakritika)';
+$wb['ssl_organisation_error_regex'] = 'Neplatný SSL řádek - Organizace. Platné znaky jsou: a-z, 0-9 a .,-_ (žádná diakritika)';
 $wb['ssl_organistaion_unit_error_regex'] = 'Neplatná SSL organizační jednotka. Platné znaky jsou: a-z, 0-9 a .,-_';
 $wb['ssl_country_error_regex'] = 'Neplatná SSL země. Platné znaky jsou: A-Z';
 $wb['limit_traffic_quota_free_txt'] = 'Max. dostupná přenosová kvóta';
@@ -66,8 +66,8 @@
 $wb['traffic_quota_exceeded_txt'] = 'Přenosová kvóta překročena';
 $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';
+$wb['stats_user_txt'] = 'Webové statistiky - uživatelské jméno';
+$wb['stats_type_txt'] = 'Webové statistiky - výběr aplikace';
 $wb['custom_php_ini_txt'] = 'Vlastní nastavení php.ini';
 $wb['none_txt'] = 'Žádná';
 $wb['disabled_txt'] = 'Zakázáno';
@@ -128,18 +128,20 @@
 $wb['variables_txt'] = 'Proměnné';
 $wb['added_by_txt'] = 'Kdo vytvořil účet';
 $wb['added_date_txt'] = 'Datum vytvoření účtu';
-$wb['backup_excludes_txt'] = 'Excluded Directories';
+$wb['backup_excludes_txt'] = 'Vyloučené adresáře';
 $wb['backup_excludes_note_txt'] = '(Separate multiple directories with commas. Example: web/cache/*,web/backup)';
 $wb['backup_excludes_error_regex'] = 'The excluded directories contain invalid characters.';
 $wb['server_chosen_not_ok'] = 'The selected server is not allowed for this account.';
 $wb['subdomain_error_empty'] = 'The subdommain field is empty or contains invalid characters.';
-$wb['btn_save_txt'] = 'Save';
-$wb['btn_cancel_txt'] = 'Cancel';
+$wb['btn_save_txt'] = 'Uložit';
+$wb['btn_cancel_txt'] = 'Zrušit';
 $wb['enable_spdy_txt'] = 'Enable SPDY';
-$wb['load_client_data_txt'] = 'Load client details';
+$wb['load_client_data_txt'] = 'Nahrát údaje z podrobností registrovaného klienta';
 $wb['load_my_data_txt'] = 'Load my contact details';
-$wb['reset_client_data_txt'] = 'Reset data';
+$wb['reset_client_data_txt'] = 'Obnovit údaje (resetovat)';
 $wb['ssl_letsencrypt_txt'] = 'Let\'s Encrypt SSL';
-$wb['rewrite_to_https_txt'] = 'Rewrite HTTP to HTTPS';
-$wb['password_strength_txt'] = 'Password strength';
+$wb['rewrite_to_https_txt'] = 'Přesměrovat HTTP na HTTPS';
+$wb['password_strength_txt'] = 'Síla hesla';
+$wb['directive_snippets_id_txt'] = 'Web server config';
 ?>
+
diff --git a/interface/web/sites/lib/lang/cz_web_vhost_domain_admin_list.lng b/interface/web/sites/lib/lang/cz_web_vhost_domain_admin_list.lng
index e8825ae..2393928 100644
--- a/interface/web/sites/lib/lang/cz_web_vhost_domain_admin_list.lng
+++ b/interface/web/sites/lib/lang/cz_web_vhost_domain_admin_list.lng
@@ -1,9 +1,10 @@
 <?php
-$wb["sys_groupid_txt"] = 'Client';
-$wb["list_head_txt"] = 'Websites';
-$wb["domain_id_txt"] = 'ID';
-$wb["active_txt"] = 'Active';
-$wb["server_id_txt"] = 'Server';
-$wb["domain_txt"] = 'Domain';
-$wb["add_new_record_txt"] = 'Add new website';
-?>
\ No newline at end of file
+$wb['sys_groupid_txt'] = 'Klient';
+$wb['list_head_txt'] = 'Webové stránky';
+$wb['domain_id_txt'] = 'ID';
+$wb['active_txt'] = 'Aktivní';
+$wb['server_id_txt'] = 'Server';
+$wb['domain_txt'] = 'Doména';
+$wb['add_new_record_txt'] = 'Vytvořit webové stránky';
+?>
+
diff --git a/interface/web/sites/lib/lang/cz_web_vhost_domain_list.lng b/interface/web/sites/lib/lang/cz_web_vhost_domain_list.lng
index d691664..6cdd8e0 100644
--- a/interface/web/sites/lib/lang/cz_web_vhost_domain_list.lng
+++ b/interface/web/sites/lib/lang/cz_web_vhost_domain_list.lng
@@ -4,6 +4,7 @@
 $wb['active_txt'] = 'Aktivní';
 $wb['server_id_txt'] = 'Server';
 $wb['domain_txt'] = 'Doména';
-$wb['add_new_record_txt'] = 'Přidat webovou stránku';
+$wb['add_new_record_txt'] = 'Vytvořit webovou stránku';
 $wb['parent_domain_id_txt'] = 'Webové stránky';
 ?>
+
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 9401e97..5c29277 100644
--- a/interface/web/sites/lib/lang/cz_web_vhost_subdomain.lng
+++ b/interface/web/sites/lib/lang/cz_web_vhost_subdomain.lng
@@ -4,11 +4,11 @@
 $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'] = '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['backup_copies_txt'] = 'Počet kopií zálohy';
+$wb['ssl_state_txt'] = 'Stát (např. Czech Republic)';
+$wb['ssl_locality_txt'] = 'Název města';
+$wb['ssl_organisation_txt'] = 'Organizace (společnost)';
+$wb['ssl_organisation_unit_txt'] = 'Organizační jednotka (pobočka,oddělení)';
 $wb['ssl_country_txt'] = 'Země';
 $wb['ssl_key_txt'] = 'SSL klíč';
 $wb['ssl_request_txt'] = 'SSL požadavek';
@@ -18,7 +18,7 @@
 $wb['ssl_domain_txt'] = 'SSL Doména';
 $wb['server_id_txt'] = 'Server';
 $wb['domain_txt'] = 'Doména';
-$wb['host_txt'] = 'Hostname';
+$wb['host_txt'] = 'Název hostitele';
 $wb['web_folder_error_regex'] = 'Invalid folder entered. Please do not enter a slash.';
 $wb['type_txt'] = 'Verze';
 $wb['redirect_type_txt'] = 'Typ přesměrování';
@@ -60,9 +60,9 @@
 $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_state_error_regex'] = 'Neplatný SSL řádek - Stát. Platné znaky jsou: a-z, 0-9 a .,-_ (žádná diakritika)';
+$wb['ssl_locality_error_regex'] = 'Neplatný SSL řádek - Název města. Platné znaky jsou: a-z, 0-9 a .,-_ (žádná diakritika)';
+$wb['ssl_organisation_error_regex'] = 'Neplatný SSL řádek - Organizace. Platné znaky jsou: a-z, 0-9 a .,-_ (žádná diakritika)';
 $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';
@@ -125,3 +125,4 @@
 $wb['backup_excludes_error_regex'] = 'Vyloučené adresáře obsahují neplatné znaky.';
 $wb['subdomain_error_empty'] = 'The subdommain field is empty or contains invalid characters.';
 ?>
+
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 a54e19a..dd21be7 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
@@ -4,5 +4,6 @@
 $wb['server_id_txt'] = 'Server';
 $wb['parent_domain_id_txt'] = 'Webové stránky';
 $wb['domain_txt'] = 'Subdoména';
-$wb['add_new_record_txt'] = 'Přidat novou poddoménu';
+$wb['add_new_record_txt'] = 'Vytvořit 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 659cf3e..8870c36 100644
--- a/interface/web/sites/lib/lang/cz_webdav_user.lng
+++ b/interface/web/sites/lib/lang/cz_webdav_user.lng
@@ -19,3 +19,4 @@
 $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 7bb8017..febe510 100644
--- a/interface/web/sites/lib/lang/cz_webdav_user_list.lng
+++ b/interface/web/sites/lib/lang/cz_webdav_user_list.lng
@@ -4,5 +4,6 @@
 $wb['server_id_txt'] = 'Server';
 $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';
+$wb['add_new_record_txt'] = 'Vytvořit WebDAV uživatele';
 ?>
+
diff --git a/interface/web/sites/lib/lang/en_web_domain.lng b/interface/web/sites/lib/lang/en_web_domain.lng
index 14b3d52..940053b 100644
--- a/interface/web/sites/lib/lang/en_web_domain.lng
+++ b/interface/web/sites/lib/lang/en_web_domain.lng
@@ -129,4 +129,8 @@
 $wb['invalid_custom_php_ini_settings_txt'] = 'Invalid php.ini settings';
 $wb['invalid_system_user_or_group_txt'] = 'Invalid system user or group';
 $wb['apache_directive_blocked_error'] = 'Apache directive blocked by security settings:';
+$wb['http_port_txt'] = 'HTTP Port';
+$wb['https_port_txt'] = 'HTTPS Port';
+$wb['http_port_error_regex'] = 'HTTP Port invalid.';
+$wb['https_port_error_regex'] = 'HTTPS Port invalid.';
 ?>
\ No newline at end of file
diff --git a/interface/web/sites/lib/lang/en_web_subdomain.lng b/interface/web/sites/lib/lang/en_web_subdomain.lng
index cd1c1fb..91476e9 100644
--- a/interface/web/sites/lib/lang/en_web_subdomain.lng
+++ b/interface/web/sites/lib/lang/en_web_subdomain.lng
@@ -43,4 +43,8 @@
 $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.';
+$wb['http_port_txt'] = 'HTTP Port';
+$wb['https_port_txt'] = 'HTTPS Port';
+$wb['http_port_error_regex'] = 'HTTP Port invalid.';
+$wb['https_port_error_regex'] = 'HTTPS Port invalid.';
 ?>
diff --git a/interface/web/sites/lib/lang/en_web_vhost_domain.lng b/interface/web/sites/lib/lang/en_web_vhost_domain.lng
index a10b9b6..7e77d42 100644
--- a/interface/web/sites/lib/lang/en_web_vhost_domain.lng
+++ b/interface/web/sites/lib/lang/en_web_vhost_domain.lng
@@ -148,4 +148,8 @@
 $wb['rewrite_to_https_txt'] = 'Rewrite HTTP to HTTPS';
 $wb['password_strength_txt'] = 'Password strength';
 $wb['directive_snippets_id_txt'] = 'Web server config';
+$wb['http_port_txt'] = 'HTTP Port';
+$wb['https_port_txt'] = 'HTTPS Port';
+$wb['http_port_error_regex'] = 'HTTP Port invalid.';
+$wb['https_port_error_regex'] = 'HTTPS Port invalid.';
 ?>
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 1322801..0c7ac92 100644
--- a/interface/web/sites/lib/lang/en_web_vhost_subdomain.lng
+++ b/interface/web/sites/lib/lang/en_web_vhost_subdomain.lng
@@ -125,4 +125,8 @@
 $wb['backup_excludes_note_txt'] = '(Separate multiple directories with commas. Example: web/cache/*,web/backup)';
 $wb['backup_excludes_error_regex'] = 'The excluded directories contain invalid characters.';
 $wb['subdomain_error_empty'] = 'The subdommain field is empty or contains invalid characters.';
+$wb['http_port_txt'] = 'HTTP Port';
+$wb['https_port_txt'] = 'HTTPS Port';
+$wb['http_port_error_regex'] = 'HTTP Port invalid.';
+$wb['https_port_error_regex'] = 'HTTPS Port invalid.';
 ?>
\ No newline at end of file
diff --git a/interface/web/sites/shell_user_edit.php b/interface/web/sites/shell_user_edit.php
index 2b606c2..77c4509 100644
--- a/interface/web/sites/shell_user_edit.php
+++ b/interface/web/sites/shell_user_edit.php
@@ -95,12 +95,6 @@
 		} else {
 			$app->tpl->setVar("edit_disabled", 0);
 		}
-		
-		if($this->dataRecord['chroot'] == 'jailkit'){
-			$app->tpl->setVar("is_jailkit", true);
-		} else {
-			$app->tpl->setVar("is_jailkit", false);
-		}
 
 		parent::onShowEnd();
 	}
@@ -170,11 +164,7 @@
 		$web = $app->db->queryOneRecord("SELECT * FROM web_domain WHERE domain_id = ?", $this->dataRecord["parent_domain_id"]);
 
 		$server_id = $app->functions->intval($web["server_id"]);
-		if($this->dataRecord['chroot'] == 'jailkit'){
-			$dir = $app->db->quote($web["document_root"]);
-		} else {
-			$dir = $app->db->quote($web["document_root"].'/home/'.$this->dataRecord['username']);
-		}
+		$dir = $web["document_root"];
 		$uid = $web["system_user"];
 		$gid = $web["system_group"];
 		
@@ -228,18 +218,7 @@
 	function onAfterUpdate() {
 		global $app, $conf;
 
-		if(isset($this->dataRecord['chroot'])){
-			$shell_user = $app->db->queryOneRecord("SELECT * FROM shell_user WHERE shell_user_id = ".$this->id);
-			$web = $app->db->queryOneRecord("SELECT * FROM web_domain WHERE domain_id = ".$app->functions->intval($this->dataRecord["parent_domain_id"]));
-			$dir = $shell_user['dir'];
-			if($this->dataRecord['chroot'] == 'jailkit'){
-				$dir = $app->db->quote($web["document_root"]);
-			} else {
-				if($this->oldDataRecord['chroot'] == 'jailkit') $dir = $app->db->quote($web["document_root"].'/home/'.$this->dataRecord['username']);
-			}
 
-			if($dir != $shell_user['dir']) $app->db->query("UPDATE shell_user SET dir = '$dir' WHERE shell_user_id = ".$this->id);
-		}
 	}
 
 }
diff --git a/interface/web/sites/templates/web_vhost_domain_advanced.htm b/interface/web/sites/templates/web_vhost_domain_advanced.htm
index 04825cb..2ef8c7d 100644
--- a/interface/web/sites/templates/web_vhost_domain_advanced.htm
+++ b/interface/web/sites/templates/web_vhost_domain_advanced.htm
@@ -23,12 +23,16 @@
                 <div class="col-sm-9"><input type="text" name="added_by" id="added_by" value="{tmpl_var name='added_by'}" class="form-control" /></div></div>
 			<div class="form-group">
                 <label for="system_user" class="col-sm-3 control-label">{tmpl_var name='system_user_txt'}</label>
-                <p class="value">&nbsp; &nbsp;{tmpl_var name='system_user'}</p>
+                <div class="col-sm-9">
+                <div class="checkbox">&nbsp; &nbsp;{tmpl_var name='system_user'}</div>
+                </div>
                 <input name="system_user" id="system_user" value="{tmpl_var name='system_user'}" type="hidden" />
             </div>
             <div class="form-group">
                 <label for="system_group" class="col-sm-3 control-label">{tmpl_var name='system_group_txt'}</label>
-                <p class="value">&nbsp; &nbsp;{tmpl_var name='system_group'}</p>
+                <div class="col-sm-9">
+                <div class="checkbox">&nbsp; &nbsp;{tmpl_var name='system_group'}</div>
+                </div>
                 <input name="system_group" id="system_group" value="{tmpl_var name='system_group'}" type="hidden" />
             </div>
             <div class="form-group apache">
diff --git a/interface/web/sites/templates/web_vhost_domain_stats.htm b/interface/web/sites/templates/web_vhost_domain_stats.htm
index f66ecfb..e4e505a 100644
--- a/interface/web/sites/templates/web_vhost_domain_stats.htm
+++ b/interface/web/sites/templates/web_vhost_domain_stats.htm
@@ -13,7 +13,7 @@
 </tmpl_if>
             <div class="form-group">
                 <label class="col-sm-3 control-label">{tmpl_var name='stats_user_txt'}</label>
-				<p class="value">&nbsp; &nbsp;admin</p>
+				<div class="col-sm-9"><div class="checkbox">&nbsp; &nbsp;admin</div></div>
             </div>
 			<div class="form-group">
                 <label for="stats_password" class="col-sm-3 control-label">{tmpl_var name='stats_password_txt'}</label>
diff --git a/interface/web/strengthmeter/lib/lang/cz_strengthmeter.lng b/interface/web/strengthmeter/lib/lang/cz_strengthmeter.lng
index 59a146c..136f5e2 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_5_txt'] = 'Velmi silné';
 ?>
 
-
diff --git a/interface/web/themes/default/assets/javascripts/ispconfig.js b/interface/web/themes/default/assets/javascripts/ispconfig.js
index 7d7dd3f..21c8c1b 100644
--- a/interface/web/themes/default/assets/javascripts/ispconfig.js
+++ b/interface/web/themes/default/assets/javascripts/ispconfig.js
@@ -364,9 +364,11 @@
 	},
 
 	loadInitContent: function() {
+		var startpage = $('#pageContent').attr('data-startpage');
+		if(!startpage) startpage = 'dashboard/dashboard.php';
 		var pageContentObject = $.ajax({
 			type: "GET",
-			url: "dashboard/dashboard.php",
+			url: startpage,
 			data: "",
 			dataType: "html",
 			beforeSend: function() {
diff --git a/interface/web/themes/default/assets/javascripts/ispconfig.min.js b/interface/web/themes/default/assets/javascripts/ispconfig.min.js
index 247c83f..a54f3cb 100644
--- a/interface/web/themes/default/assets/javascripts/ispconfig.min.js
+++ b/interface/web/themes/default/assets/javascripts/ispconfig.min.js
@@ -1 +1 @@
-var ISPConfig={pageFormChanged:false,tabChangeWarningTxt:"",tabChangeDiscardTxt:"",tabChangeWarning:false,tabChangeDiscard:false,requestsRunning:0,indicatorCompleted:false,registeredHooks:new Array(),new_tpl_add_id:0,options:{useLoadIndicator:false,useComboBox:false},setOption:function(a,b){ISPConfig.options[a]=b},setOptions:function(a){$.extend(ISPConfig.options,a)},reportError:function(a){},registerHook:function(a,c){if(!ISPConfig.registeredHooks[a]){ISPConfig.registeredHooks[a]=new Array()}var b=ISPConfig.registeredHooks[a].length;ISPConfig.registeredHooks[a][b]=c},callHook:function(a,c){if(!ISPConfig.registeredHooks[a]){return}for(var b=0;b<ISPConfig.registeredHooks[a].length;b++){var d=ISPConfig.registeredHooks[a][b];d(a,c)}},resetFormChanged:function(){ISPConfig.pageFormChanged=false},showLoadIndicator:function(){document.body.style.cursor="wait";if(ISPConfig.options.useLoadIndicator==true){ISPConfig.requestsRunning+=1;if(ISPConfig.requestsRunning<2){var a=$("#ajaxloader");if(a.length<1){a=$('<div id="ajaxloader" style="display: none;"></div>');a.appendTo("body")}var b=$("#content");if(b.length<1){return}ISPConfig.indicatorCompleted=false;var d=b.offset().left+150;var c=b.offset().top+150;a.css({left:d,top:c}).fadeIn("fast",function(){ISPConfig.indicatorCompleted=true;if(ISPConfig.requestsRunning<1){$(this).fadeOut("fast",function(){$(this).hide()})}})}}},hideLoadIndicator:function(){document.body.style.cursor="";ISPConfig.requestsRunning-=1;if(ISPConfig.requestsRunning<1){ISPConfig.requestsRunning=0;if(ISPConfig.indicatorCompleted==true){$("#ajaxloader").fadeOut("fast",function(){$("#ajaxloader").hide()})}}},onAfterSideNavLoaded:function(){if(ISPConfig.options.useComboBox==true){$("#sidebar").find("select:not(.chosen-select)").select2({placeholder:"",width:"element",selectOnBlur:true,allowClear:true})}},onAfterContentLoad:function(a,b){if(!b){b=""}else{b="&"+b}if(ISPConfig.options.useComboBox==true){$("#pageContent").find("select:not(.chosen-select)").select2({placeholder:"",width:"element",selectOnBlur:true,allowClear:true,formatResult:function(c){if(c.id&&$(c.element).parent().hasClass("flags")){return'<span class="flags flag-'+c.id.toLowerCase()+'">'+c.text+"</span>"}else{return c.text}},formatSelection:function(c){if(c.id&&$(c.element).parent().hasClass("flags")){return'<span class="flags flag-'+c.id.toLowerCase()+'">'+c.text+"</span>"}else{return c.text}}}).on("change",function(c){if($("#pageForm .table #Filter").length>0){$("#pageForm .table #Filter").trigger("click")}})}$('input[data-input-element="date"]').datetimepicker({language:"en",todayHighlight:true,todayBtn:"linked",bootcssVer:3,fontAwesome:true,autoclose:true,minView:"month"});$('input[data-input-element="datetime"]').datetimepicker({language:"en",todayHighlight:true,todayBtn:"linked",bootcssVer:3,fontAwesome:true,autoclose:true});ISPConfig.callHook("onAfterContentLoad",{url:a,data:b})},submitForm:function(d,e,c){var b=arguments[3];if(!c){c=false}if(!c||window.confirm(c)){var a=$.ajax({type:"POST",url:e,data:$("#"+d).serialize(),dataType:"html",beforeSend:function(){ISPConfig.showLoadIndicator()},success:function(g,i,f){if(b){alert(b)}if(f.responseText.indexOf("HEADER_REDIRECT:")>-1){var h=f.responseText.split(":");ISPConfig.loadContent(h[1])}else{if(f.responseText.indexOf("LOGIN_REDIRECT:")>-1){document.location.href="/index.php"}else{$("#pageContent").html(f.responseText);ISPConfig.onAfterContentLoad(e,$("#"+d).serialize());ISPConfig.pageFormChanged=false}}ISPConfig.hideLoadIndicator()},error:function(f,i,h){ISPConfig.hideLoadIndicator();var g=f.responseText.split(":");ISPConfig.reportError("Ajax Request was not successful. 111")}})}},submitUploadForm:function(c,d){var b=function(n){var h,j=n.contentWindow.document.body.innerHTML;try{h=JSON.parse(j)}catch(k){h=j}var o=$("<div></div>").html(h);var f="";var l=o.find("#OKMsg").html();if(l){f='<div id="OKMsg">'+l+"</div>"}var i=o.find("#errorMsg").html();if(i){f=f+'<div id="errorMsg">'+i+"</div>"}var m=o.find('input[name="_csrf_key"]').val();var g=o.find('input[name="_csrf_id"]').val();f=f+'<input type="hidden" name="_csrf_id" value="'+g+'" /><input type="hidden" name="_csrf_key" value="'+m+'" />';return f};var a="ajaxUploader-iframe-"+Math.round(new Date().getTime()/1000);$("body").append('<iframe width="0" height="0" style="display:none;" name="'+a+'" id="'+a+'"/>');$("#"+a).load(function(){var e=b(this);$("#errorMsg").remove();$("#OKMsg").remove();$('input[name="_csrf_key"]').remove();$('input[name="_csrf_id"]').remove();$('input[name="id"]').before(e);$(this).remove()});$('input[type="file"]').closest("form").attr({target:a,action:d}).submit()},capp:function(b,c){var a=$.ajax({type:"GET",url:"capp.php",data:"mod="+b+((c!=undefined)?"&redirect="+c:""),dataType:"html",beforeSend:function(){ISPConfig.showLoadIndicator()},success:function(e,h,d){if(d.responseText!=""){if(d.responseText.indexOf("HEADER_REDIRECT:")>-1){var g=d.responseText.split(":");ISPConfig.loadContent(g[1])}else{if(d.responseText.indexOf("URL_REDIRECT:")>-1){var f=d.responseText.substr(d.responseText.indexOf("URL_REDIRECT:")+"URL_REDIRECT:".length);document.location.href=f}else{}}}ISPConfig.loadMenus();ISPConfig.hideLoadIndicator()},error:function(){ISPConfig.hideLoadIndicator();ISPConfig.reportError("Ajax Request was not successful."+b)}})},loadContent:function(b){var c=arguments[1];var a=$.ajax({type:"GET",url:b,data:(c?c:null),dataType:"html",beforeSend:function(){ISPConfig.showLoadIndicator()},success:function(e,h,d){if(d.responseText.indexOf("HEADER_REDIRECT:")>-1){var g=d.responseText.split(":");ISPConfig.loadContent(g[1])}else{if(d.responseText.indexOf("URL_REDIRECT:")>-1){var f=d.responseText.substr(d.responseText.indexOf("URL_REDIRECT:")+"URL_REDIRECT:".length);document.location.href=f}else{$("#pageContent").html(d.responseText);ISPConfig.onAfterContentLoad(b,(c?c:null));ISPConfig.pageFormChanged=false}}ISPConfig.hideLoadIndicator()},error:function(){ISPConfig.hideLoadIndicator();ISPConfig.reportError("Ajax Request was not successful. 113")}})},loadContentRefresh:function(b){if($("#refreshinterval").val()>0){var a=$.ajax({type:"GET",url:b,data:"refresh="+document.getElementById("refreshinterval").value,dataType:"html",beforeSend:function(){ISPConfig.showLoadIndicator()},success:function(d,e,c){ISPConfig.hideLoadIndicator();$("#pageContent").html(c.responseText);ISPConfig.onAfterContentLoad(b,"refresh="+document.getElementById("refreshinterval").value);ISPConfig.pageFormChanged=false},error:function(){ISPConfig.hideLoadIndicator();ISPConfig.reportError("Ajax Request was not successful."+b)}});setTimeout("ISPConfig.loadContentRefresh('"+b+"&refresh="+document.getElementById("refreshinterval").value+"')",document.getElementById("refreshinterval").value*1000*60)}},loadInitContent:function(){var a=$.ajax({type:"GET",url:"dashboard/dashboard.php",data:"",dataType:"html",beforeSend:function(){ISPConfig.showLoadIndicator()},success:function(c,e,b){if(b.responseText.indexOf("HEADER_REDIRECT:")>-1){var d=b.responseText.split(":");ISPConfig.loadContent(d[1])}else{$("#pageContent").html(b.responseText);ISPConfig.onAfterContentLoad("dashboard/dashboard.php","");ISPConfig.pageFormChanged=false}ISPConfig.hideLoadIndicator()},error:function(){ISPConfig.hideLoadIndicator();ISPConfig.reportError("Ajax Request was not successful. 114")}});ISPConfig.loadMenus();ISPConfig.keepalive();setTimeout(function(){try{$("form#pageForm").find('input[name="username"]').focus()}catch(b){}},1000)},loadMenus:function(){var b=$.ajax({type:"GET",url:"nav.php",data:"nav=side",dataType:"html",beforeSend:function(){ISPConfig.showLoadIndicator()},success:function(d,e,c){ISPConfig.hideLoadIndicator();$("#sidebar").html(c.responseText);ISPConfig.onAfterSideNavLoaded();ISPConfig.loadPushyMenu()},error:function(){ISPConfig.hideLoadIndicator();ISPConfig.reportError("Ajax Request was not successful. 115")}});var a=$.ajax({type:"GET",url:"nav.php",data:"nav=top",dataType:"html",beforeSend:function(){ISPConfig.showLoadIndicator()},success:function(d,e,c){ISPConfig.hideLoadIndicator();$("#topnav-container").html(c.responseText);ISPConfig.loadPushyMenu()},error:function(c){ISPConfig.hideLoadIndicator();ISPConfig.reportError("Ajax Request was not successful. 116")}})},changeTab:function(c,e,d){if(ISPConfig.requestsRunning>0){return false}document.pageForm.next_tab.value=c;var b=$("form#pageForm").find('[name="id"]');var f=null;if(b.length>0){f=b.val()}if(ISPConfig.tabChangeDiscard=="y"&&!d){if((b.length<1||f)&&(ISPConfig.pageFormChanged==false||window.confirm(ISPConfig.tabChangeDiscardTxt))){var a=c;if(f){ISPConfig.loadContent(e,{next_tab:a,id:f})}else{ISPConfig.loadContent(e,{next_tab:a})}}else{return false}}else{if(f&&ISPConfig.tabChangeWarning=="y"&&ISPConfig.pageFormChanged==true){if(window.confirm(ISPConfig.tabChangeWarningTxt)){ISPConfig.submitForm("pageForm",e)}else{var a=c;if(f){ISPConfig.loadContent(e,{next_tab:a,id:f})}else{ISPConfig.loadContent(e,{next_tab:a})}}}else{ISPConfig.submitForm("pageForm",e)}}},confirm_action:function(b,a){if(window.confirm(a)){ISPConfig.loadContent(b)}},loadContentInto:function(b,c){var a=$.ajax({type:"GET",url:c,dataType:"html",beforeSend:function(){},success:function(e,f,d){$("#"+b).html(d.responseText)},error:function(){ISPConfig.reportError("Ajax Request was not successful. 118")}})},loadOptionInto:function(b,c,d){var a=$.ajax({type:"GET",url:c,dataType:"html",beforeSend:function(){},success:function(h,l,g){var j=g.responseText;var k=j.split("#");el=document.getElementById(b);el.innerHTML="";for(var f=0;f<k.length;++f){var e=document.createElement("option");e.appendChild(document.createTextNode(k[f]));e.value=k[f];el.appendChild(e)}if(typeof(d)!="undefined"){d(b,c)}},error:function(){ISPConfig.reportError("Ajax Request was not successful. 119")}})},keepalive:function(){var a=$.ajax({type:"GET",url:"keepalive.php",dataType:"html",success:function(c,d,b){setTimeout(function(){ISPConfig.keepalive()},1000000)},error:function(){ISPConfig.reportError("Session expired. Please login again.")}})},addAdditionalTemplate:function(){var e=$("#template_additional").val();var a=$("#tpl_add_select").val().split("|",2);var d=a[0];var f=a[1];if(d>0){var c=e.split("/");ISPConfig.new_tpl_add_id+=1;var b=$('<a href="#"></a>').attr("class","button icons16 icoDelete").click(function(g){g.preventDefault();ISPConfig.delAdditionalTemplate($(this).parent().attr("rel"))});c[c.length]="n"+ISPConfig.new_tpl_add_id+":"+d;$("<li>"+f+"</li>").attr("rel","n"+new_tpl_add_id).append(b).appendTo("#template_additional_list ul");$("#template_additional").val(c.join("/"));alert("additional template "+f+" added to customer")}else{alert("no additional template selcted")}},delAdditionalTemplate:function(d){var a=$("#template_additional").val();if(d){var l=$("#template_additional_list ul").find('li[rel="'+d+'"]').eq(0);var k=l.text();l.remove();var j=a.split("/");var b=new Array();for(var e=0;e<j.length;e++){var f=j[e].split(":",2);if(f.length==2&&f[0]==d){continue}b[b.length]=j[e]}$("#template_additional").val(b.join("/"));alert("additional template "+k+" deleted from customer")}else{if(a!=""){var c=document.getElementById("tpl_add_select").value.split("|",2);var h=c[0];var k=c[1];$("#template_additional_list ul").find("li:not([rel])").each(function(){var i=$(this).text();if(i==k){$(this).remove();return false}return this});var b=a;var g=new RegExp("(^|/)"+h+"(/|$)");b=b.replace(g,"");b=b.replace("//","/");$("#template_additional").val(b);alert("additional template "+k+" deleted from customer")}else{alert("no additional template selcted")}}}};$(document).on("change",function(a){var b=a.target.localName;if($("#pageForm .table #Filter").length>0&&b=="select"){a.preventDefault();$("#pageForm .table #Filter").trigger("click")}if(b=="select"||b=="input"||b=="textarea"){if($(a.target).hasClass("no-page-form-change")==false){ISPConfig.pageFormChanged=true}}});$(document).on("click","a[data-load-content],button[data-load-content]",function(b){b.preventDefault();$("html, body").animate({scrollTop:0},1000);var a=$(this).attr("data-load-content");if(!a){return this}ISPConfig.loadContent(a)});$(document).on("click","a[data-capp],button[data-capp]",function(b){b.preventDefault();$("html, body").animate({scrollTop:0},1000);var a=$(this).attr("data-capp");if(!a){return this}ISPConfig.capp(a)});$(document).on("click","a[data-submit-form],button[data-submit-form]",function(d){d.preventDefault();$("html, body").animate({scrollTop:0},1000);var b=$(this);var a=b.attr("data-form-action");var c=b.attr("data-submit-form");if(b.attr("data-form-upload")=="true"){ISPConfig.submitUploadForm(c,a)}else{ISPConfig.submitForm(c,a)}});$(document).bind("keypress",function(a){if(a.which=="13"&&$("#pageForm .table #Filter").length>0&&$(a.target).hasClass("ui-autocomplete-input")==false){a.preventDefault();$("#pageForm .table #Filter").trigger("click")}if(a.which=="13"&&$(".tab-content button.formbutton-success").length>0&&a.target.localName!="textarea"&&$(a.target).is(":input")){a.preventDefault();$(".tab-content button.formbutton-success").not("[disabled='disabled']").trigger("click")}});$(document).on("click","th[data-column]",function(h){var i=$(this);var d=i.attr("data-column");if(!d){return this}if($("#pageForm .table #Filter").length>0&&i.attr("data-sortable")!="false"){var c=$("#Filter");var a=c.attr("data-form-action");var f=c.attr("data-submit-form");var b=i.attr("data-ordered");var g="?";if(a.indexOf("?")>=0){g="&"}a=a+g+"orderby="+d;ISPConfig.submitForm(f,a);$(document).ajaxComplete(function(){var e=$('#pageForm .table th[data-column="'+d+'"]');e.parent().children("th[data-column]").removeAttr("data-ordered");if(b&&b=="asc"){e.attr("data-ordered","desc")}else{e.attr("data-ordered","asc")}})}});$(document).on("click",".addPlaceholder",function(){var a=$(this).text();var b=$(this).siblings(":input");b.insertAtCaret(a)});$(document).on("click",".addPlaceholderContent",function(){var b=$(this).find(".addPlaceholderContent").text();var a=$(this).siblings(":input");a.insertAtCaret(b)});$(document).on("click","[data-check-fields] > input[type='checkbox']",function(){if($(this).is(":checked")){var c=$(this).parent().attr("data-check-fields");var b=c.split(/,/);for(var a=0;a<b.length;a++){var d=b[a];$('input[type="checkbox"][name="'+d+'"]').prop("checked",true)}}});$(document).on("click","[data-uncheck-fields] > input[type='checkbox']",function(){if($(this).is(":checked")==false){var c=$(this).parent().attr("data-uncheck-fields");var b=c.split(/,/);for(var a=0;a<b.length;a++){var d=b[a];$('input[type="checkbox"][name="'+d+'"]').prop("checked",false)}}});$(document).on("ready",function(){$.fn.extend({insertAtCaret:function(a){return this.each(function(d){if(document.selection){this.focus();sel=document.selection.createRange();sel.text=a;this.focus()}else{if(this.selectionStart||this.selectionStart=="0"){var c=this.selectionStart;var b=this.selectionEnd;var e=this.scrollTop;this.value=this.value.substring(0,c)+a+this.value.substring(b,this.value.length);this.focus();this.selectionStart=c+a.length;this.selectionEnd=c+a.length;this.scrollTop=e}else{this.value+=a;this.focus()}}})}});$(".progress .progress-bar").css("width",function(){return $(this).attr("aria-valuenow")+"%"});ISPConfig.loadInitContent();$("#searchform").submit(function(a){a.preventDefault()});$("#pageForm").submit(function(a){if($("#pageForm .table #Filter").length>0){a.preventDefault()}});$.fn.setCursorPosition=function(c){var b=$(this).get(0);if(b.setSelectionRange){b.setSelectionRange(c,c)}else{if(b.createTextRange){var a=b.createTextRange();a.collapse(true);if(c<0){c=$(this).val().length+c}a.moveEnd("character",c);a.moveStart("character",c);a.select()}}};$.fn.getCursorPosition=function(){var c=0;var b=$(this).get(0);if(typeof b.selectionStart==="number"){c=b.selectionDirection=="backward"?b.selectionStart:b.selectionEnd}else{if(document.selection){this.focus();var a=document.selection.createRange();a.moveStart("character",-b.value.length);c=a.text.length}}return c}});
\ No newline at end of file
+var ISPConfig={pageFormChanged:false,tabChangeWarningTxt:"",tabChangeDiscardTxt:"",tabChangeWarning:false,tabChangeDiscard:false,requestsRunning:0,indicatorCompleted:false,registeredHooks:new Array(),new_tpl_add_id:0,options:{useLoadIndicator:false,useComboBox:false},setOption:function(a,b){ISPConfig.options[a]=b},setOptions:function(a){$.extend(ISPConfig.options,a)},reportError:function(a){},registerHook:function(a,c){if(!ISPConfig.registeredHooks[a]){ISPConfig.registeredHooks[a]=new Array()}var b=ISPConfig.registeredHooks[a].length;ISPConfig.registeredHooks[a][b]=c},callHook:function(a,c){if(!ISPConfig.registeredHooks[a]){return}for(var b=0;b<ISPConfig.registeredHooks[a].length;b++){var d=ISPConfig.registeredHooks[a][b];d(a,c)}},resetFormChanged:function(){ISPConfig.pageFormChanged=false},showLoadIndicator:function(){document.body.style.cursor="wait";if(ISPConfig.options.useLoadIndicator==true){ISPConfig.requestsRunning+=1;if(ISPConfig.requestsRunning<2){var a=$("#ajaxloader");if(a.length<1){a=$('<div id="ajaxloader" style="display: none;"></div>');a.appendTo("body")}var b=$("#content");if(b.length<1){return}ISPConfig.indicatorCompleted=false;var d=b.offset().left+150;var c=b.offset().top+150;a.css({left:d,top:c}).fadeIn("fast",function(){ISPConfig.indicatorCompleted=true;if(ISPConfig.requestsRunning<1){$(this).fadeOut("fast",function(){$(this).hide()})}})}}},hideLoadIndicator:function(){document.body.style.cursor="";ISPConfig.requestsRunning-=1;if(ISPConfig.requestsRunning<1){ISPConfig.requestsRunning=0;if(ISPConfig.indicatorCompleted==true){$("#ajaxloader").fadeOut("fast",function(){$("#ajaxloader").hide()})}}},onAfterSideNavLoaded:function(){if(ISPConfig.options.useComboBox==true){$("#sidebar").find("select:not(.chosen-select)").select2({placeholder:"",width:"element",selectOnBlur:true,allowClear:true})}},onAfterContentLoad:function(a,b){if(!b){b=""}else{b="&"+b}if(ISPConfig.options.useComboBox==true){$("#pageContent").find("select:not(.chosen-select)").select2({placeholder:"",width:"element",selectOnBlur:true,allowClear:true,formatResult:function(c){if(c.id&&$(c.element).parent().hasClass("flags")){return'<span class="flags flag-'+c.id.toLowerCase()+'">'+c.text+"</span>"}else{return c.text}},formatSelection:function(c){if(c.id&&$(c.element).parent().hasClass("flags")){return'<span class="flags flag-'+c.id.toLowerCase()+'">'+c.text+"</span>"}else{return c.text}}}).on("change",function(c){if($("#pageForm .table #Filter").length>0){$("#pageForm .table #Filter").trigger("click")}})}$('input[data-input-element="date"]').datetimepicker({language:"en",todayHighlight:true,todayBtn:"linked",bootcssVer:3,fontAwesome:true,autoclose:true,minView:"month"});$('input[data-input-element="datetime"]').datetimepicker({language:"en",todayHighlight:true,todayBtn:"linked",bootcssVer:3,fontAwesome:true,autoclose:true});ISPConfig.callHook("onAfterContentLoad",{url:a,data:b})},submitForm:function(d,e,c){var b=arguments[3];if(!c){c=false}if(!c||window.confirm(c)){var a=$.ajax({type:"POST",url:e,data:$("#"+d).serialize(),dataType:"html",beforeSend:function(){ISPConfig.showLoadIndicator()},success:function(g,i,f){if(b){alert(b)}if(f.responseText.indexOf("HEADER_REDIRECT:")>-1){var h=f.responseText.split(":");ISPConfig.loadContent(h[1])}else{if(f.responseText.indexOf("LOGIN_REDIRECT:")>-1){document.location.href="/index.php"}else{$("#pageContent").html(f.responseText);ISPConfig.onAfterContentLoad(e,$("#"+d).serialize());ISPConfig.pageFormChanged=false}}ISPConfig.hideLoadIndicator()},error:function(f,i,h){ISPConfig.hideLoadIndicator();var g=f.responseText.split(":");ISPConfig.reportError("Ajax Request was not successful. 111")}})}},submitUploadForm:function(c,d){var b=function(n){var h,j=n.contentWindow.document.body.innerHTML;try{h=JSON.parse(j)}catch(k){h=j}var o=$("<div></div>").html(h);var f="";var l=o.find("#OKMsg").html();if(l){f='<div id="OKMsg">'+l+"</div>"}var i=o.find("#errorMsg").html();if(i){f=f+'<div id="errorMsg">'+i+"</div>"}var m=o.find('input[name="_csrf_key"]').val();var g=o.find('input[name="_csrf_id"]').val();f=f+'<input type="hidden" name="_csrf_id" value="'+g+'" /><input type="hidden" name="_csrf_key" value="'+m+'" />';return f};var a="ajaxUploader-iframe-"+Math.round(new Date().getTime()/1000);$("body").append('<iframe width="0" height="0" style="display:none;" name="'+a+'" id="'+a+'"/>');$("#"+a).load(function(){var e=b(this);$("#errorMsg").remove();$("#OKMsg").remove();$('input[name="_csrf_key"]').remove();$('input[name="_csrf_id"]').remove();$('input[name="id"]').before(e);$(this).remove()});$('input[type="file"]').closest("form").attr({target:a,action:d}).submit()},capp:function(b,c){var a=$.ajax({type:"GET",url:"capp.php",data:"mod="+b+((c!=undefined)?"&redirect="+c:""),dataType:"html",beforeSend:function(){ISPConfig.showLoadIndicator()},success:function(e,h,d){if(d.responseText!=""){if(d.responseText.indexOf("HEADER_REDIRECT:")>-1){var g=d.responseText.split(":");ISPConfig.loadContent(g[1])}else{if(d.responseText.indexOf("URL_REDIRECT:")>-1){var f=d.responseText.substr(d.responseText.indexOf("URL_REDIRECT:")+"URL_REDIRECT:".length);document.location.href=f}else{}}}ISPConfig.loadMenus();ISPConfig.hideLoadIndicator()},error:function(){ISPConfig.hideLoadIndicator();ISPConfig.reportError("Ajax Request was not successful."+b)}})},loadContent:function(b){var c=arguments[1];var a=$.ajax({type:"GET",url:b,data:(c?c:null),dataType:"html",beforeSend:function(){ISPConfig.showLoadIndicator()},success:function(e,h,d){if(d.responseText.indexOf("HEADER_REDIRECT:")>-1){var g=d.responseText.split(":");ISPConfig.loadContent(g[1])}else{if(d.responseText.indexOf("URL_REDIRECT:")>-1){var f=d.responseText.substr(d.responseText.indexOf("URL_REDIRECT:")+"URL_REDIRECT:".length);document.location.href=f}else{$("#pageContent").html(d.responseText);ISPConfig.onAfterContentLoad(b,(c?c:null));ISPConfig.pageFormChanged=false}}ISPConfig.hideLoadIndicator()},error:function(){ISPConfig.hideLoadIndicator();ISPConfig.reportError("Ajax Request was not successful. 113")}})},loadContentRefresh:function(b){if($("#refreshinterval").val()>0){var a=$.ajax({type:"GET",url:b,data:"refresh="+document.getElementById("refreshinterval").value,dataType:"html",beforeSend:function(){ISPConfig.showLoadIndicator()},success:function(d,e,c){ISPConfig.hideLoadIndicator();$("#pageContent").html(c.responseText);ISPConfig.onAfterContentLoad(b,"refresh="+document.getElementById("refreshinterval").value);ISPConfig.pageFormChanged=false},error:function(){ISPConfig.hideLoadIndicator();ISPConfig.reportError("Ajax Request was not successful."+b)}});setTimeout("ISPConfig.loadContentRefresh('"+b+"&refresh="+document.getElementById("refreshinterval").value+"')",document.getElementById("refreshinterval").value*1000*60)}},loadInitContent:function(){var b=$("#pageContent").attr("data-startpage");if(!b){b="dashboard/dashboard.php"}var a=$.ajax({type:"GET",url:b,data:"",dataType:"html",beforeSend:function(){ISPConfig.showLoadIndicator()},success:function(d,f,c){if(c.responseText.indexOf("HEADER_REDIRECT:")>-1){var e=c.responseText.split(":");ISPConfig.loadContent(e[1])}else{$("#pageContent").html(c.responseText);ISPConfig.onAfterContentLoad("dashboard/dashboard.php","");ISPConfig.pageFormChanged=false}ISPConfig.hideLoadIndicator()},error:function(){ISPConfig.hideLoadIndicator();ISPConfig.reportError("Ajax Request was not successful. 114")}});ISPConfig.loadMenus();ISPConfig.keepalive();setTimeout(function(){try{$("form#pageForm").find('input[name="username"]').focus()}catch(c){}},1000)},loadMenus:function(){var b=$.ajax({type:"GET",url:"nav.php",data:"nav=side",dataType:"html",beforeSend:function(){ISPConfig.showLoadIndicator()},success:function(d,e,c){ISPConfig.hideLoadIndicator();$("#sidebar").html(c.responseText);ISPConfig.onAfterSideNavLoaded();ISPConfig.loadPushyMenu()},error:function(){ISPConfig.hideLoadIndicator();ISPConfig.reportError("Ajax Request was not successful. 115")}});var a=$.ajax({type:"GET",url:"nav.php",data:"nav=top",dataType:"html",beforeSend:function(){ISPConfig.showLoadIndicator()},success:function(d,e,c){ISPConfig.hideLoadIndicator();$("#topnav-container").html(c.responseText);ISPConfig.loadPushyMenu()},error:function(c){ISPConfig.hideLoadIndicator();ISPConfig.reportError("Ajax Request was not successful. 116")}})},changeTab:function(c,e,d){if(ISPConfig.requestsRunning>0){return false}document.pageForm.next_tab.value=c;var b=$("form#pageForm").find('[name="id"]');var f=null;if(b.length>0){f=b.val()}if(ISPConfig.tabChangeDiscard=="y"&&!d){if((b.length<1||f)&&(ISPConfig.pageFormChanged==false||window.confirm(ISPConfig.tabChangeDiscardTxt))){var a=c;if(f){ISPConfig.loadContent(e,{next_tab:a,id:f})}else{ISPConfig.loadContent(e,{next_tab:a})}}else{return false}}else{if(f&&ISPConfig.tabChangeWarning=="y"&&ISPConfig.pageFormChanged==true){if(window.confirm(ISPConfig.tabChangeWarningTxt)){ISPConfig.submitForm("pageForm",e)}else{var a=c;if(f){ISPConfig.loadContent(e,{next_tab:a,id:f})}else{ISPConfig.loadContent(e,{next_tab:a})}}}else{ISPConfig.submitForm("pageForm",e)}}},confirm_action:function(b,a){if(window.confirm(a)){ISPConfig.loadContent(b)}},loadContentInto:function(b,c){var a=$.ajax({type:"GET",url:c,dataType:"html",beforeSend:function(){},success:function(e,f,d){$("#"+b).html(d.responseText)},error:function(){ISPConfig.reportError("Ajax Request was not successful. 118")}})},loadOptionInto:function(b,c,d){var a=$.ajax({type:"GET",url:c,dataType:"html",beforeSend:function(){},success:function(h,l,g){var j=g.responseText;var k=j.split("#");el=document.getElementById(b);el.innerHTML="";for(var f=0;f<k.length;++f){var e=document.createElement("option");e.appendChild(document.createTextNode(k[f]));e.value=k[f];el.appendChild(e)}if(typeof(d)!="undefined"){d(b,c)}},error:function(){ISPConfig.reportError("Ajax Request was not successful. 119")}})},keepalive:function(){var a=$.ajax({type:"GET",url:"keepalive.php",dataType:"html",success:function(c,d,b){setTimeout(function(){ISPConfig.keepalive()},1000000)},error:function(){ISPConfig.reportError("Session expired. Please login again.")}})},addAdditionalTemplate:function(){var e=$("#template_additional").val();var a=$("#tpl_add_select").val().split("|",2);var d=a[0];var f=a[1];if(d>0){var c=e.split("/");ISPConfig.new_tpl_add_id+=1;var b=$('<a href="#"></a>').attr("class","button icons16 icoDelete").click(function(g){g.preventDefault();ISPConfig.delAdditionalTemplate($(this).parent().attr("rel"))});c[c.length]="n"+ISPConfig.new_tpl_add_id+":"+d;$("<li>"+f+"</li>").attr("rel","n"+new_tpl_add_id).append(b).appendTo("#template_additional_list ul");$("#template_additional").val(c.join("/"));alert("additional template "+f+" added to customer")}else{alert("no additional template selcted")}},delAdditionalTemplate:function(d){var a=$("#template_additional").val();if(d){var l=$("#template_additional_list ul").find('li[rel="'+d+'"]').eq(0);var k=l.text();l.remove();var j=a.split("/");var b=new Array();for(var e=0;e<j.length;e++){var f=j[e].split(":",2);if(f.length==2&&f[0]==d){continue}b[b.length]=j[e]}$("#template_additional").val(b.join("/"));alert("additional template "+k+" deleted from customer")}else{if(a!=""){var c=document.getElementById("tpl_add_select").value.split("|",2);var h=c[0];var k=c[1];$("#template_additional_list ul").find("li:not([rel])").each(function(){var i=$(this).text();if(i==k){$(this).remove();return false}return this});var b=a;var g=new RegExp("(^|/)"+h+"(/|$)");b=b.replace(g,"");b=b.replace("//","/");$("#template_additional").val(b);alert("additional template "+k+" deleted from customer")}else{alert("no additional template selcted")}}}};$(document).on("change",function(a){var b=a.target.localName;if($("#pageForm .table #Filter").length>0&&b=="select"){a.preventDefault();$("#pageForm .table #Filter").trigger("click")}if(b=="select"||b=="input"||b=="textarea"){if($(a.target).hasClass("no-page-form-change")==false){ISPConfig.pageFormChanged=true}}});$(document).on("click","a[data-load-content],button[data-load-content]",function(b){b.preventDefault();$("html, body").animate({scrollTop:0},1000);var a=$(this).attr("data-load-content");if(!a){return this}ISPConfig.loadContent(a)});$(document).on("click","a[data-capp],button[data-capp]",function(b){b.preventDefault();$("html, body").animate({scrollTop:0},1000);var a=$(this).attr("data-capp");if(!a){return this}ISPConfig.capp(a)});$(document).on("click","a[data-submit-form],button[data-submit-form]",function(d){d.preventDefault();$("html, body").animate({scrollTop:0},1000);var b=$(this);var a=b.attr("data-form-action");var c=b.attr("data-submit-form");if(b.attr("data-form-upload")=="true"){ISPConfig.submitUploadForm(c,a)}else{ISPConfig.submitForm(c,a)}});$(document).bind("keypress",function(a){if(a.which=="13"&&$("#pageForm .table #Filter").length>0&&$(a.target).hasClass("ui-autocomplete-input")==false){a.preventDefault();$("#pageForm .table #Filter").trigger("click")}if(a.which=="13"&&$(".tab-content button.formbutton-success").length>0&&a.target.localName!="textarea"&&$(a.target).is(":input")){a.preventDefault();$(".tab-content button.formbutton-success").not("[disabled='disabled']").trigger("click")}});$(document).on("click","th[data-column]",function(h){var i=$(this);var d=i.attr("data-column");if(!d){return this}if($("#pageForm .table #Filter").length>0&&i.attr("data-sortable")!="false"){var c=$("#Filter");var a=c.attr("data-form-action");var f=c.attr("data-submit-form");var b=i.attr("data-ordered");var g="?";if(a.indexOf("?")>=0){g="&"}a=a+g+"orderby="+d;ISPConfig.submitForm(f,a);$(document).ajaxComplete(function(){var e=$('#pageForm .table th[data-column="'+d+'"]');e.parent().children("th[data-column]").removeAttr("data-ordered");if(b&&b=="asc"){e.attr("data-ordered","desc")}else{e.attr("data-ordered","asc")}})}});$(document).on("click",".addPlaceholder",function(){var a=$(this).text();var b=$(this).siblings(":input");b.insertAtCaret(a)});$(document).on("click",".addPlaceholderContent",function(){var b=$(this).find(".addPlaceholderContent").text();var a=$(this).siblings(":input");a.insertAtCaret(b)});$(document).on("click","[data-check-fields] > input[type='checkbox']",function(){if($(this).is(":checked")){var c=$(this).parent().attr("data-check-fields");var b=c.split(/,/);for(var a=0;a<b.length;a++){var d=b[a];$('input[type="checkbox"][name="'+d+'"]').prop("checked",true)}}});$(document).on("click","[data-uncheck-fields] > input[type='checkbox']",function(){if($(this).is(":checked")==false){var c=$(this).parent().attr("data-uncheck-fields");var b=c.split(/,/);for(var a=0;a<b.length;a++){var d=b[a];$('input[type="checkbox"][name="'+d+'"]').prop("checked",false)}}});$(document).on("ready",function(){$.fn.extend({insertAtCaret:function(a){return this.each(function(d){if(document.selection){this.focus();sel=document.selection.createRange();sel.text=a;this.focus()}else{if(this.selectionStart||this.selectionStart=="0"){var c=this.selectionStart;var b=this.selectionEnd;var e=this.scrollTop;this.value=this.value.substring(0,c)+a+this.value.substring(b,this.value.length);this.focus();this.selectionStart=c+a.length;this.selectionEnd=c+a.length;this.scrollTop=e}else{this.value+=a;this.focus()}}})}});$(".progress .progress-bar").css("width",function(){return $(this).attr("aria-valuenow")+"%"});ISPConfig.loadInitContent();$("#searchform").submit(function(a){a.preventDefault()});$("#pageForm").submit(function(a){if($("#pageForm .table #Filter").length>0){a.preventDefault()}});$.fn.setCursorPosition=function(c){var b=$(this).get(0);if(b.setSelectionRange){b.setSelectionRange(c,c)}else{if(b.createTextRange){var a=b.createTextRange();a.collapse(true);if(c<0){c=$(this).val().length+c}a.moveEnd("character",c);a.moveStart("character",c);a.select()}}};$.fn.getCursorPosition=function(){var c=0;var b=$(this).get(0);if(typeof b.selectionStart==="number"){c=b.selectionDirection=="backward"?b.selectionStart:b.selectionEnd}else{if(document.selection){this.focus();var a=document.selection.createRange();a.moveStart("character",-b.value.length);c=a.text.length}}return c}});
\ No newline at end of file
diff --git a/interface/web/themes/default/assets/stylesheets/fonts.css b/interface/web/themes/default/assets/stylesheets/fonts.css
index f631bda..4218564 100644
--- a/interface/web/themes/default/assets/stylesheets/fonts.css
+++ b/interface/web/themes/default/assets/stylesheets/fonts.css
@@ -62,7 +62,7 @@
 .icon-help:before {
 	content: "\e607";
 }
-.icon-mail:before {
+.icon-mail:before, .icon-mailuser:before {
 	content: "\e608";
 }
 .icon-dns:before {
diff --git a/interface/web/themes/default/assets/stylesheets/fonts.min.css b/interface/web/themes/default/assets/stylesheets/fonts.min.css
index 9d1c9d0..98cf94f 100644
--- a/interface/web/themes/default/assets/stylesheets/fonts.min.css
+++ b/interface/web/themes/default/assets/stylesheets/fonts.min.css
@@ -1 +1 @@
-@font-face{font-family:'ispconfig';src:url('../fonts/ispconfig.eot?-drlkxz');src:url('../fonts/ispconfig.eot?#iefix-drlkxz') format('embedded-opentype'),url('../fonts/ispconfig.woff?-drlkxz') format('woff'),url('../fonts/ispconfig.ttf?-drlkxz') format('truetype'),url('../fonts/ispconfig.svg?-drlkxz#ispconfig') format('svg');font-weight:normal;font-style:normal}.icon{font-family:'ispconfig';speak:none;font-style:normal;font-weight:normal;font-variant:normal;text-transform:none;line-height:1;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.icon:before{vertical-align:middle}.icon-calendar:before{content:"\e60e"}.icon-billing:before{content:"\e60d"}.icon-lens:before{content:"\e60b"}.icon-bulb:before{content:"\e60c"}.icon-vm2:before{content:"\e600"}.icon-vm:before{content:"\e601"}.icon-tools:before{content:"\e602"}.icon-admin:before{content:"\e603"}.icon-sites:before{content:"\e604"}.icon-monitor:before{content:"\e605"}.icon-dashboard:before{content:"\e606"}.icon-help:before{content:"\e607"}.icon-mail:before{content:"\e608"}.icon-dns:before{content:"\e609"}.icon-client:before{content:"\e60a"}.icon-edit:before{content:"\e615"}.icon-filter:before{content:"\e614"}.icon-link:before{content:"\e60f"}.icon-action:before{content:"\e610"}.icon-dbadmin:before{content:"\e612"}.icon-loginas:before{content:"\e611"}.icon-delete:before{content:"\e613"}
\ No newline at end of file
+@font-face{font-family:'ispconfig';src:url('../fonts/ispconfig.eot?-drlkxz');src:url('../fonts/ispconfig.eot?#iefix-drlkxz') format('embedded-opentype'),url('../fonts/ispconfig.woff?-drlkxz') format('woff'),url('../fonts/ispconfig.ttf?-drlkxz') format('truetype'),url('../fonts/ispconfig.svg?-drlkxz#ispconfig') format('svg');font-weight:normal;font-style:normal}.icon{font-family:'ispconfig';speak:none;font-style:normal;font-weight:normal;font-variant:normal;text-transform:none;line-height:1;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.icon:before{vertical-align:middle}.icon-calendar:before{content:"\e60e"}.icon-billing:before{content:"\e60d"}.icon-lens:before{content:"\e60b"}.icon-bulb:before{content:"\e60c"}.icon-vm2:before{content:"\e600"}.icon-vm:before{content:"\e601"}.icon-tools:before{content:"\e602"}.icon-admin:before{content:"\e603"}.icon-sites:before{content:"\e604"}.icon-monitor:before{content:"\e605"}.icon-dashboard:before{content:"\e606"}.icon-help:before{content:"\e607"}.icon-mail:before,.icon-mailuser:before{content:"\e608"}.icon-dns:before{content:"\e609"}.icon-client:before{content:"\e60a"}.icon-edit:before{content:"\e615"}.icon-filter:before{content:"\e614"}.icon-link:before{content:"\e60f"}.icon-action:before{content:"\e610"}.icon-dbadmin:before{content:"\e612"}.icon-loginas:before{content:"\e611"}.icon-delete:before{content:"\e613"}
\ No newline at end of file
diff --git a/interface/web/themes/default/templates/main.tpl.htm b/interface/web/themes/default/templates/main.tpl.htm
index 53b760e..058eec3 100644
--- a/interface/web/themes/default/templates/main.tpl.htm
+++ b/interface/web/themes/default/templates/main.tpl.htm
@@ -67,7 +67,7 @@
           <!-- content -->
           <div id='content' class='right'>
 			<form method="post" action="" id="pageForm" name="pageForm" enctype="multipart/form-data" class='form-horizontal' role='form'>
-				<div id="pageContent"><!-- AJAX CONTENT --></div>
+				<div id="pageContent" data-startpage="{tmpl_var name="startpage"}"><!-- AJAX CONTENT --></div>
 			</form>
           </div>
           <!-- news sidebar -->
diff --git a/interface/web/tools/import_vpopmail.php b/interface/web/tools/import_vpopmail.php
index 3c8db20..242ea5f 100644
--- a/interface/web/tools/import_vpopmail.php
+++ b/interface/web/tools/import_vpopmail.php
@@ -231,8 +231,8 @@
 						"cc" => '',
 						"homedir" => '/var/vmail',
 						"autoresponder" => 'n',
-						"autoresponder_start_date" => '0000-00-00 00:00:00',
-						"autoresponder_end_date" => '0000-00-00 00:00:00',
+						"autoresponder_start_date" => null,
+						"autoresponder_end_date" => null,
 						"autoresponder_subject" => 'Out of office reply',
 						"autoresponder_text" => '',
 						"move_junk" => 'n',
diff --git a/interface/web/tools/lib/lang/cz.lng b/interface/web/tools/lib/lang/cz.lng
index 66bcaf4..2379ffb 100644
--- a/interface/web/tools/lib/lang/cz.lng
+++ b/interface/web/tools/lib/lang/cz.lng
@@ -11,3 +11,4 @@
 $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 8ebf717..97d213a 100644
--- a/interface/web/tools/lib/lang/cz_import_ispconfig.lng
+++ b/interface/web/tools/lib/lang/cz_import_ispconfig.lng
@@ -21,3 +21,4 @@
 $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_import_vpopmail.lng b/interface/web/tools/lib/lang/cz_import_vpopmail.lng
index 1e4dd28..bbe5153 100644
--- a/interface/web/tools/lib/lang/cz_import_vpopmail.lng
+++ b/interface/web/tools/lib/lang/cz_import_vpopmail.lng
@@ -3,6 +3,6 @@
 $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';
-
+$wb['btn_cancel_txt'] = 'Zrušit';
 ?>
+
diff --git a/interface/web/tools/lib/lang/cz_index.lng b/interface/web/tools/lib/lang/cz_index.lng
index 5ebf1ec..c3db96e 100644
--- a/interface/web/tools/lib/lang/cz_index.lng
+++ b/interface/web/tools/lib/lang/cz_index.lng
@@ -2,3 +2,4 @@
 $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 507b7c3..1ac22ec 100644
--- a/interface/web/tools/lib/lang/cz_interface.lng
+++ b/interface/web/tools/lib/lang/cz_interface.lng
@@ -5,3 +5,4 @@
 $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 364a432..d479867 100644
--- a/interface/web/tools/lib/lang/cz_resync.lng
+++ b/interface/web/tools/lib/lang/cz_resync.lng
@@ -1,4 +1,22 @@
 <?php
+$wb['head_txt'] = 'Resynchronizační nástroje';
+$wb['legend_txt'] = 'Resynchronizace';
+$wb['resync_sites_txt'] = 'Resynchronizovat webové stránky';
+$wb['resync_ftp_txt'] = 'Resynchronizovat FTP uživatele';
+$wb['resync_shell_txt'] = 'Resynchronizovat shell uživatele';
+$wb['resync_cron_txt'] = 'Resynchronizovat cron úlohy';
+$wb['resync_db_txt'] = 'Resynchronizovat clientdb konfigurace';
+$wb['resync_mailbox_txt'] = 'Resynchronizovat e-mailové schránky';
+$wb['resync_dns_txt'] = 'DNS záznamy';
+$wb['btn_start_txt'] = 'Zahájit';
+$wb['btn_cancel_txt'] = 'Zrušit';
+$wb['resync_client_txt'] = 'Resync Client records';
+$wb['resync_all_txt'] = 'Všechny služby';
+$wb['resync_webdav_txt'] = 'WebDAV-Users';
+$wb['resync_mail_txt'] = 'Maildomains';
+$wb['resync_mailfilter_txt'] = 'Mailfilter';
+$wb['resync_mailinglist_txt'] = 'Mailinglist';
+$wb['resync_vserver_txt'] = 'vServer';
 $wb['all_active_txt'] = 'All active server';
 $wb['all_active_mail_txt'] = 'All active Mail-Server';
 $wb['all_active_web_txt'] = 'All active Web-Server';
@@ -23,27 +41,10 @@
 $wb['do_dns_txt'] = 'Resynced DNS zone';
 $wb['do_vserver_txt'] = 'Resynced vServer';
 $wb['do_clients_txt'] = 'Resynced clients and reseller';
-$wb['no_results_txt'] = 'Nothing found';
+$wb['no_results_txt'] = 'Nic nebylo nalezeno';
 $wb['do_mail_spamfilter_policy_txt'] = 'Resynced Spamfilter Policies';
 $wb['do_mail_spamfilter_txt'] = 'Resynced Spamfilter';
 $wb['do_mailget_txt'] = 'Resynced Fetchmail';
 $wb['resync_mailget_txt'] = 'Fetchmail';
-$wb['head_txt'] = 'Resynchronizační nástroje';
-$wb['legend_txt'] = 'Resynchronizace';
-$wb['resync_sites_txt'] = 'Resynchronizovat webové stránky';
-$wb['resync_ftp_txt'] = 'Resynchronizovat FTP uživatele';
-$wb['resync_shell_txt'] = 'Resynchronizovat shell uživatele';
-$wb['resync_cron_txt'] = 'Resynchronizovat cron úlohy';
-$wb['resync_db_txt'] = 'Resynchronizovat clientdb konfigurace';
-$wb['resync_mailbox_txt'] = 'Resynchronizovat e-mailové schránky';
-$wb['resync_dns_txt'] = 'Resynchronizovat DNS záznamy';
-$wb['btn_start_txt'] = 'Zahájit';
-$wb['btn_cancel_txt'] = 'Zrušit';
-$wb['resync_client_txt'] = 'Resync Client records';
-$wb['resync_all_txt'] = 'All services';
-$wb['resync_webdav_txt'] = 'WebDAV-Users';
-$wb['resync_mail_txt'] = 'Maildomains';
-$wb['resync_mailfilter_txt'] = 'Mailfilter';
-$wb['resync_mailinglist_txt'] = 'Mailinglist';
-$wb['resync_vserver_txt'] = 'vServer';
 ?>
+
diff --git a/interface/web/tools/lib/lang/cz_tpl_default.lng b/interface/web/tools/lib/lang/cz_tpl_default.lng
index 0f037f1..e6da4e7 100644
--- a/interface/web/tools/lib/lang/cz_tpl_default.lng
+++ b/interface/web/tools/lib/lang/cz_tpl_default.lng
@@ -3,5 +3,6 @@
 $wb['list_desc_txt'] = 'Upravit výchozí téma - specifické volby';
 $wb['no_settings_txt'] = 'Nejsou žádné nastavení pro výchozí motiv.';
 $wb['btn_start_txt'] = 'Uložit';
-$wb['btn_cancel_txt'] = 'Zpět';
+$wb['btn_cancel_txt'] = 'Zrušit';
 ?>
+
diff --git a/interface/web/tools/lib/lang/cz_usersettings.lng b/interface/web/tools/lib/lang/cz_usersettings.lng
index dec46b7..eb3599b 100644
--- a/interface/web/tools/lib/lang/cz_usersettings.lng
+++ b/interface/web/tools/lib/lang/cz_usersettings.lng
@@ -10,3 +10,4 @@
 $wb['password_mismatch_txt'] = 'Hesla se neshodují.';
 $wb['password_match_txt'] = 'Hesla se shodují.';
 ?>
+
diff --git a/interface/web/tools/templates/user_settings.htm b/interface/web/tools/templates/user_settings.htm
index 1db877d..1f817ca 100644
--- a/interface/web/tools/templates/user_settings.htm
+++ b/interface/web/tools/templates/user_settings.htm
@@ -4,12 +4,12 @@
 <p><tmpl_var name="list_desc_txt"></p>
 
 			<div class="form-group">
-                <label for="password" class="col-sm-3 control-label">{tmpl_var name='password_txt'}</label>
+                <label for="passwort" class="col-sm-3 control-label">{tmpl_var name='password_txt'}</label>
                 <div class="col-sm-9">
 				<div class="input-group">
-					<input type="password" name="password" id="password" value="{tmpl_var name='password'}" class="form-control" autocomplete="off" onkeyup="pass_check(this.value);checkPassMatch('password','repeat_password');" />
+					<input type="password" name="passwort" id="passwort" value="{tmpl_var name='passwort'}" class="form-control" autocomplete="off" onkeyup="pass_check(this.value);checkPassMatch('passwort','repeat_password');" />
 					<span class="input-group-btn">
-						<button class="btn btn-default" type="button" onclick="generatePassword('password','repeat_password');">{tmpl_var name='generate_password_txt'}</button>
+						<button class="btn btn-default" type="button" onclick="generatePassword('passwort','repeat_password');">{tmpl_var name='generate_password_txt'}</button>
 					</span>
 				</div>
 				</div>
diff --git a/interface/web/vm/lib/lang/cz.lng b/interface/web/vm/lib/lang/cz.lng
index 4167e14..e1a28bc 100644
--- a/interface/web/vm/lib/lang/cz.lng
+++ b/interface/web/vm/lib/lang/cz.lng
@@ -1,7 +1,8 @@
 <?php
 $wb['Virtual Servers'] = 'Virtual Servers';
-$wb['OS Templates'] = 'OS Templates';
-$wb['VM Templates'] = 'VM Templates';
+$wb['OS Templates'] = 'OS Šablony';
+$wb['VM Templates'] = 'VM Šablony';
 $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 3e2e3e0..84682fc 100644
--- a/interface/web/vm/lib/lang/cz_openvz_action.lng
+++ b/interface/web/vm/lib/lang/cz_openvz_action.lng
@@ -14,3 +14,4 @@
 $wb['ostemplate_name_unique_error'] = 'There is already a OSTemplate with that name.';
 $wb['ostemplate_exec_txt'] = 'The command to create a OSTemplate has been sent to the host server. It will take several minutes until the OSTemplate has been created.';
 ?>
+
diff --git a/interface/web/vm/lib/lang/cz_openvz_ip.lng b/interface/web/vm/lib/lang/cz_openvz_ip.lng
index 6016681..67f6885 100644
--- a/interface/web/vm/lib/lang/cz_openvz_ip.lng
+++ b/interface/web/vm/lib/lang/cz_openvz_ip.lng
@@ -7,3 +7,4 @@
 $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 e6a3a68..37c1d62e 100644
--- a/interface/web/vm/lib/lang/cz_openvz_ip_list.lng
+++ b/interface/web/vm/lib/lang/cz_openvz_ip_list.lng
@@ -5,3 +5,4 @@
 $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 72838a2..9774110 100644
--- a/interface/web/vm/lib/lang/cz_openvz_ostemplate.lng
+++ b/interface/web/vm/lib/lang/cz_openvz_ostemplate.lng
@@ -9,3 +9,4 @@
 $wb['template_file_error_empty'] = 'Template filename is empty.';
 $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 7705a4d..930b33f 100644
--- a/interface/web/vm/lib/lang/cz_openvz_ostemplate_list.lng
+++ b/interface/web/vm/lib/lang/cz_openvz_ostemplate_list.lng
@@ -6,3 +6,4 @@
 $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 9273783..2a61b86 100644
--- a/interface/web/vm/lib/lang/cz_openvz_template.lng
+++ b/interface/web/vm/lib/lang/cz_openvz_template.lng
@@ -21,7 +21,6 @@
 $wb['dcachesize_txt'] = 'Dcachesize';
 $wb['numiptent_txt'] = 'Numiptent';
 $wb['swappages_txt'] = 'Swappages';
-$wb['hostname_txt'] = 'Název hostitele';
 $wb['nameserver_txt'] = 'Nameserver(s)';
 $wb['nameserver_desc_txt'] = '(separated by whitespace)';
 $wb['capability_txt'] = 'Capability';
@@ -94,4 +93,6 @@
 $wb['iptables_txt'] = 'IP Tables';
 $wb['custom_txt'] = 'Custom settings';
 $wb['custom_error'] = 'Not allowed in Custom settings: ';
+$wb['hostname_txt'] = 'Hostname';
 ?>
+
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 89c11ef..353e760 100644
--- a/interface/web/vm/lib/lang/cz_openvz_template_list.lng
+++ b/interface/web/vm/lib/lang/cz_openvz_template_list.lng
@@ -3,3 +3,4 @@
 $wb['active_txt'] = 'Aktivní';
 $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 dd730de..44cca49 100644
--- a/interface/web/vm/lib/lang/cz_openvz_vm.lng
+++ b/interface/web/vm/lib/lang/cz_openvz_vm.lng
@@ -13,7 +13,6 @@
 $wb['ostemplate_id_txt'] = 'OSTemplate';
 $wb['template_id_txt'] = 'Šablona';
 $wb['ip_address_txt'] = 'IP address';
-$wb['hostname_txt'] = 'Název hostitele';
 $wb['vm_password_txt'] = 'VM Password';
 $wb['start_boot_txt'] = 'Start at boot';
 $wb['active_txt'] = 'Aktivní';
@@ -23,7 +22,6 @@
 $wb['create_dns_txt'] = 'Create DNS for hostname';
 $wb['active_until_date_txt'] = 'Active until date';
 $wb['ip_address_error_empty'] = 'IP address is empty.';
-$wb['hostname_error_empty'] = 'Hostname is empty.';
 $wb['vm_password_error_empty'] = 'VM Password is empty.';
 $wb['veid_error_empty'] = 'VEID is empty.';
 $wb['veid_error_unique'] = 'VEID does already exist.';
@@ -42,4 +40,7 @@
 $wb['custom_txt'] = 'Custom settings';
 $wb['bootorder_txt'] = 'Boot order priority';
 $wb['bootorder_error_notpositive'] = 'Only positive integers are allowed for Boot order priority';
+$wb['hostname_txt'] = 'Hostname';
+$wb['hostname_error_empty'] = 'Hostname is empty.';
 ?>
+
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 bb52bfe..760478b 100644
--- a/interface/web/vm/lib/lang/cz_openvz_vm_list.lng
+++ b/interface/web/vm/lib/lang/cz_openvz_vm_list.lng
@@ -4,7 +4,8 @@
 $wb['server_id_txt'] = 'Hostserver';
 $wb['ostemplate_id_txt'] = 'OSTemplate';
 $wb['template_id_txt'] = 'Šablona';
-$wb['hostname_txt'] = 'Název hostitele';
 $wb['ip_address_txt'] = 'IP address';
 $wb['veid_txt'] = 'VEID';
+$wb['hostname_txt'] = 'Hostname';
 ?>
+
diff --git a/server/lib/classes/cron.d/400-openvz.inc.php b/server/lib/classes/cron.d/400-openvz.inc.php
index 5eba8d2..c88e0e6 100644
--- a/server/lib/classes/cron.d/400-openvz.inc.php
+++ b/server/lib/classes/cron.d/400-openvz.inc.php
@@ -56,7 +56,7 @@
 
 		if ($app->dbmaster == $app->db) {
 			//* Check which virtual machines have to be deactivated
-			$sql = "SELECT * FROM openvz_vm WHERE active = 'y' AND active_until_date != '0000-00-00' AND active_until_date < CURDATE()";
+			$sql = "SELECT * FROM openvz_vm WHERE active = 'y' AND active_until_date IS NOT NULL AND active_until_date < CURDATE()";
 			$records = $app->db->queryAllRecords($sql);
 			if(is_array($records)) {
 				foreach($records as $rec) {
diff --git a/server/lib/classes/cron.d/550-bind_dnssec.inc.php b/server/lib/classes/cron.d/550-bind_dnssec.inc.php
index 2d238c7..abf6427 100644
--- a/server/lib/classes/cron.d/550-bind_dnssec.inc.php
+++ b/server/lib/classes/cron.d/550-bind_dnssec.inc.php
@@ -35,6 +35,27 @@
 
 	// job schedule
 	protected $_schedule = '30 3 * * *'; //daily at 3:30 a.m.
+	
+	private function increase_serial($serial){
+		global $app, $conf;
+
+		// increase serial
+		$serial_date = $app->functions->intval(substr($serial, 0, 8));
+		$count = $app->functions->intval(substr($serial, 8, 2));
+		$current_date = date("Ymd");
+		if($serial_date >= $current_date){
+			$count += 1;
+			if ($count > 99) {
+				$serial_date += 1;
+				$count = 0;
+			}
+			$count = str_pad($count, 2, "0", STR_PAD_LEFT);
+			$new_serial = $serial_date.$count;
+		} else {
+			$new_serial = $current_date.'01';
+		}
+		return $new_serial;
+	}
 
 	public function onRunJob() {
 		global $app, $conf;
@@ -47,38 +68,14 @@
 		
 		//TODO : change this when distribution information has been integrated into server record
 		$filespre = (file_exists('/etc/gentoo-release')) ? 'pri/' : 'pri.';
-		
-		$soas = $app->db->queryAllRecords('SELECT * FROM dns_soa WHERE dnssec_wanted=\'Y\' AND dnssec_initialized=\'Y\' AND dnssec_last_signed < '.(time()-(3600*24*5)+900)); //Resign zones every 5 days (expiry is 16 days so we have enough safety, 15 minutes tolerance)
-		
+		$soas = $app->db->queryAllRecords('SELECT `id`,`serial`,`origin` FROM dns_soa WHERE server_id=? AND active=\'Y\' AND dnssec_wanted=\'Y\' AND dnssec_initialized=\'Y\' AND (dnssec_last_signed < ? OR dnssec_last_signed > ?)', intval($conf['server_id']), time()-(3600*24*5)+900, time()+900); //Resign zones every 5 days (expiry is 16 days so we have enough safety, 15 minutes tolerance)
+
 		foreach ($soas as $data) {
 			$domain = substr($data['origin'], 0, strlen($data['origin'])-1);
-			if (!file_exists($dns_config['bind_zonefiles_dir'].'/'.$filespre.$domain)) return false;
+			if (!file_exists($dns_config['bind_zonefiles_dir'].'/'.$filespre.$domain)) continue;
 			
-			$app->log('DNSSEC Auto-Resign: Resigning zone '.$domain, LOGLEVEL_INFO);
-			
-			$zonefile = file_get_contents($dns_config['bind_zonefiles_dir'].'/'.$filespre.$domain);
-			$keycount=0;
-			foreach (glob($dns_config['bind_zonefiles_dir'].'/K'.$domain.'*.key') as $keyfile) {
-				$includeline = '$INCLUDE '.basename($keyfile);
-				if (!preg_match('@'.preg_quote($includeline).'@', $zonefile)) $zonefile .= "\n".$includeline."\n";
-				$keycount++;
-			}
-			if ($keycount != 2) $app->log('DNSSEC Warning: There are more or less than 2 keyfiles for zone '.$domain, LOGLEVEL_WARN);
-			file_put_contents($dns_config['bind_zonefiles_dir'].'/'.$filespre.$domain, $zonefile);
-			
-			//Sign the zone and set it valid for max. 16 days
-			exec('cd '.escapeshellcmd($dns_config['bind_zonefiles_dir']).';'.
-				 '/usr/sbin/dnssec-signzone -A -e +1382400 -3 $(head -c 1000 /dev/random | sha1sum | cut -b 1-16) -N increment -o '.escapeshellcmd($domain).' -t '.$filespre.escapeshellcmd($domain));
-				 
-			//Write Data back into DB
-			$dnssecdata = "DS-Records:\n".file_get_contents($dns_config['bind_zonefiles_dir'].'/dsset-'.$domain.'.');
-			$dnssecdata .= "\n------------------------------------\n\nDNSKEY-Records:\n";
-			foreach (glob($dns_config['bind_zonefiles_dir'].'/K'.$domain.'*.key') as $keyfile) {
-				$dnssecdata .= file_get_contents($keyfile)."\n\n";
-			}
-			
-			$app->db->query('UPDATE dns_soa SET dnssec_info=\''.$dnssecdata.'\', dnssec_initialized=\'Y\', dnssec_last_signed=\''.time().'\' WHERE id='.$data['id']);
-			$data = next($soas);
+			$app->log('DNSSEC Auto-Resign: Touching zone '.$domain, LOGLEVEL_DEBUG);
+			$app->db->datalogUpdate('dns_soa', array("serial" => $this->increase_serial($data['serial'])), 'id', $data['id']);
 		}
 		
 		parent::onRunJob();
@@ -86,4 +83,4 @@
 
 }
 
-?>
+?>
\ No newline at end of file
diff --git a/server/plugins-available/bind_plugin.inc.php b/server/plugins-available/bind_plugin.inc.php
index cede1cb..3b3179b 100644
--- a/server/plugins-available/bind_plugin.inc.php
+++ b/server/plugins-available/bind_plugin.inc.php
@@ -95,6 +95,7 @@
 		//* Check Entropy
 		if (file_get_contents('/proc/sys/kernel/random/entropy_avail') < 400) {
 			$app->log('DNSSEC ERROR: We are low on entropy. Not generating new Keys for '.$domain.'. Please consider installing package haveged.', LOGLEVEL_WARN);
+			echo "DNSSEC ERROR: We are low on entropy. Not generating new Keys for $domain. Please consider installing package haveged.\n";
 			return false;
 		}
 		
@@ -157,7 +158,8 @@
 			$dnssecdata .= file_get_contents($keyfile)."\n\n";
 		}
 		
-		$app->db->query('UPDATE dns_soa SET dnssec_info=\''.$dnssecdata.'\', dnssec_initialized=\'Y\', dnssec_last_signed=\''.time().'\' WHERE id='.$data['new']['id']);
+		if ($app->dbmaster !== $app->db) $app->dbmaster->query('UPDATE dns_soa SET dnssec_info=?, dnssec_initialized=\'Y\', dnssec_last_signed=? WHERE id=?', $dnssecdata, intval(time()), intval($data['new']['id']));
+		$app->db->query('UPDATE dns_soa SET dnssec_info=?, dnssec_initialized=\'Y\', dnssec_last_signed=? WHERE id=?', $dnssecdata, intval(time()), intval($data['new']['id']));
 	}
 	
 	function soa_dnssec_update(&$data, $new=false) {
@@ -178,12 +180,13 @@
 		//* Check for available entropy
 		if (file_get_contents('/proc/sys/kernel/random/entropy_avail') < 200) {
 			$app->log('DNSSEC ERROR: We are low on entropy. This could cause server script to fail. Please consider installing package haveged.', LOGLEVEL_ERR);
+			echo "DNSSEC ERROR: We are low on entropy. This could cause server script to fail. Please consider installing package haveged.\n";
 			return false;
 		}
 		
 		if (!$new && !file_exists($dns_config['bind_zonefiles_dir'].'/dsset-'.$domain.'.')) $this->soa_dnssec_create($data);
 		
-		$dbdata = $app->db->queryOneRecord('SELECT id,serial FROM dns_soa WHERE id='.$data['new']['id']);
+		$dbdata = $app->db->queryOneRecord('SELECT id,serial FROM dns_soa WHERE id=?', intval($data['new']['id']));
 		exec('cd '.escapeshellcmd($dns_config['bind_zonefiles_dir']).';'.
 			 'named-checkzone '.escapeshellcmd($domain).' '.escapeshellcmd($dns_config['bind_zonefiles_dir']).'/'.$filespre.escapeshellcmd($domain).' | egrep -ho \'[0-9]{10}\'', $serial, $retState);
 		if ($retState != 0) {
@@ -212,7 +215,8 @@
 		unlink($dns_config['bind_zonefiles_dir'].'/'.$filespre.$domain.'.signed');
 		unlink($dns_config['bind_zonefiles_dir'].'/dsset-'.$domain.'.');
 		
-		$app->db->query('UPDATE dns_soa SET dnssec_info=\'\', dnssec_initialized=\'N\' WHERE id='.$data['new']['id']);
+		if ($app->dbmaster !== $app->db) $app->dbmaster->query('UPDATE dns_soa SET dnssec_info=\'\', dnssec_initialized=\'N\' WHERE id=?', intval($data['new']['id']));
+		$app->db->query('UPDATE dns_soa SET dnssec_info=\'\', dnssec_initialized=\'N\' WHERE id=?', intval($data['new']['id']));
 	}
 
 	function soa_insert($event_name, $data) {
diff --git a/server/plugins-available/maildeliver_plugin.inc.php b/server/plugins-available/maildeliver_plugin.inc.php
index a6f9ae5..35001a4 100644
--- a/server/plugins-available/maildeliver_plugin.inc.php
+++ b/server/plugins-available/maildeliver_plugin.inc.php
@@ -138,7 +138,7 @@
 			$tpl->setVar('move_junk', $data["new"]["move_junk"]);
 
 			// Check autoresponder dates
-			if($data["new"]["autoresponder_start_date"] == '0000-00-00 00:00:00' && $data["new"]["autoresponder_end_date"] == '0000-00-00 00:00:00') {
+			if((!$data['new']['autoresponder_start_date'] || $data["new"]["autoresponder_start_date"] == '0000-00-00 00:00:00') && (!$data['new']['autoresponder_end_date'] || $data["new"]["autoresponder_end_date"] == '0000-00-00 00:00:00')) {
 				$tpl->setVar('autoresponder_date_limit', 0);
 			} else {
 				$tpl->setVar('autoresponder_date_limit', 1);
diff --git a/server/plugins-available/maildrop_plugin.inc.php b/server/plugins-available/maildrop_plugin.inc.php
index 5e05bc3..1ebb677 100644
--- a/server/plugins-available/maildrop_plugin.inc.php
+++ b/server/plugins-available/maildrop_plugin.inc.php
@@ -144,7 +144,7 @@
 				}
 				$tpl = str_replace('{vmail_mailbox_base}', $mail_config["homedir_path"], $tpl);
 
-				if ($data["new"]["autoresponder_start_date"] != '0000-00-00 00:00:00') { // Dates have been set
+				if ($data['new']['autoresponder_start_date'] && $data["new"]["autoresponder_start_date"] != '0000-00-00 00:00:00') { // Dates have been set
 					$tpl = str_replace('{start_date}', strtotime($data["new"]["autoresponder_start_date"]), $tpl);
 					$tpl = str_replace('{end_date}', strtotime($data["new"]["autoresponder_end_date"]), $tpl);
 				} else {
diff --git a/server/plugins-available/shelluser_base_plugin.inc.php b/server/plugins-available/shelluser_base_plugin.inc.php
index 24b3469..71275d2 100755
--- a/server/plugins-available/shelluser_base_plugin.inc.php
+++ b/server/plugins-available/shelluser_base_plugin.inc.php
@@ -113,16 +113,20 @@
 					$homedir = $data['new']['dir'].'/home/'.$data['new']['username'];
 				}
 				
+				// Create home base directory if it does not exist
 				if(!is_dir($data['new']['dir'].'/home')){
-					$app->file->mkdirs(escapeshellcmd($data['new']['dir'].'/home'), '0750');
-					$app->system->chown(escapeshellcmd($data['new']['dir'].'/home'),escapeshellcmd($data['new']['puser']));
-					$app->system->chgrp(escapeshellcmd($data['new']['dir'].'/home'),escapeshellcmd($data['new']['pgroup']));
+					$app->file->mkdirs(escapeshellcmd($data['new']['dir'].'/home'), '0755');
 				}
+				
+				// Change ownership of home base dir to root user
+				$app->system->chown(escapeshellcmd($data['new']['dir'].'/home'),'root');
+				$app->system->chgrp(escapeshellcmd($data['new']['dir'].'/home'),'root');
+				$app->system->chmod(escapeshellcmd($data['new']['dir'].'/home'),0755);
 				
 				if(!is_dir($homedir)){
 					$app->file->mkdirs(escapeshellcmd($homedir), '0750');
-					$app->system->chown(escapeshellcmd($homedir),escapeshellcmd($data['new']['puser']));
-					$app->system->chgrp(escapeshellcmd($homedir),escapeshellcmd($data['new']['pgroup']));
+					$app->system->chown(escapeshellcmd($homedir),escapeshellcmd($data['new']['puser']),false);
+					$app->system->chgrp(escapeshellcmd($homedir),escapeshellcmd($data['new']['pgroup']),false);
 				}
 				$command = 'useradd';
 				$command .= ' -d '.escapeshellcmd($homedir);
@@ -137,8 +141,8 @@
 				$app->log("Executed command: ".$command, LOGLEVEL_DEBUG);
 				$app->log("Added shelluser: ".$data['new']['username'], LOGLEVEL_DEBUG);
 				
-				$app->system->chown(escapeshellcmd($data['new']['dir']),escapeshellcmd($data['new']['username']));
-				$app->system->chgrp(escapeshellcmd($data['new']['dir']),escapeshellcmd($data['new']['pgroup']));
+				$app->system->chown(escapeshellcmd($data['new']['dir']),escapeshellcmd($data['new']['username']),false);
+				$app->system->chgrp(escapeshellcmd($data['new']['dir']),escapeshellcmd($data['new']['pgroup']),false);
 				
 
 				// call the ssh-rsa update function
@@ -149,7 +153,7 @@
 
 				//* Create .bash_history file
 				$app->system->touch(escapeshellcmd($homedir).'/.bash_history');
-				$app->system->chmod(escapeshellcmd($homedir).'/.bash_history', 0755);
+				$app->system->chmod(escapeshellcmd($homedir).'/.bash_history', 0750);
 				$app->system->chown(escapeshellcmd($homedir).'/.bash_history', $data['new']['username']);
 				$app->system->chgrp(escapeshellcmd($homedir).'/.bash_history', $data['new']['pgroup']);
 
@@ -249,17 +253,17 @@
 							$app->system->chown(escapeshellcmd($data['new']['dir'].'/home'),escapeshellcmd($data['new']['puser']));
 							$app->system->chgrp(escapeshellcmd($data['new']['dir'].'/home'),escapeshellcmd($data['new']['pgroup']));
 						}
-						$app->file->mkdirs(escapeshellcmd($homedir), '0750');
-						$app->system->chown(escapeshellcmd($homedir),escapeshellcmd($data['new']['puser']));
-						$app->system->chgrp(escapeshellcmd($homedir),escapeshellcmd($data['new']['pgroup']));
+						$app->file->mkdirs(escapeshellcmd($homedir), '0755');
+						$app->system->chown(escapeshellcmd($homedir),'root');
+						$app->system->chgrp(escapeshellcmd($homedir),'root');
 						$app->system->web_folder_protection($web['document_root'], true);
 					} else {
 						if(!is_dir($homedir)){
 							$app->system->web_folder_protection($web['document_root'], false);
 							if(!is_dir($data['new']['dir'].'/home')){
-								$app->file->mkdirs(escapeshellcmd($data['new']['dir'].'/home'), '0750');
-								$app->system->chown(escapeshellcmd($data['new']['dir'].'/home'),escapeshellcmd($data['new']['puser']));
-								$app->system->chgrp(escapeshellcmd($data['new']['dir'].'/home'),escapeshellcmd($data['new']['pgroup']));
+								$app->file->mkdirs(escapeshellcmd($data['new']['dir'].'/home'), '0755');
+								$app->system->chown(escapeshellcmd($data['new']['dir'].'/home'),'root');
+								$app->system->chgrp(escapeshellcmd($data['new']['dir'].'/home'),'root');
 							}
 							$app->file->mkdirs(escapeshellcmd($homedir), '0750');
 							$app->system->chown(escapeshellcmd($homedir),escapeshellcmd($data['new']['puser']));
@@ -279,7 +283,7 @@
 					//* Create .bash_history file
 					if(!is_file($data['new']['dir']).'/.bash_history') {
 						$app->system->touch(escapeshellcmd($homedir).'/.bash_history');
-						$app->system->chmod(escapeshellcmd($homedir).'/.bash_history', 0755);
+						$app->system->chmod(escapeshellcmd($homedir).'/.bash_history', 0750);
 						$app->system->chown(escapeshellcmd($homedir).'/.bash_history', escapeshellcmd($data['new']['username']));
 						$app->system->chgrp(escapeshellcmd($homedir).'/.bash_history', escapeshellcmd($data['new']['pgroup']));
 					}

--
Gitblit v1.9.1