From ad4f17dfd6d09557fa20286071a5c895da408461 Mon Sep 17 00:00:00 2001 From: Herman van Rink <rink@initfour.nl> Date: Thu, 20 Dec 2018 21:27:11 +0100 Subject: [PATCH 001/215] Add descriptive comments to table definition --- install/sql/incremental/upd_dev_collection.sql | 2 ++ install/sql/ispconfig3.sql | 4 ++-- 2 files changed, 4 insertions(+), 2 deletions(-) diff --git a/install/sql/incremental/upd_dev_collection.sql b/install/sql/incremental/upd_dev_collection.sql index 872ebfb465..f06e449746 100644 --- a/install/sql/incremental/upd_dev_collection.sql +++ b/install/sql/incremental/upd_dev_collection.sql @@ -1 +1,3 @@ ALTER TABLE `sys_datalog` ADD `session_id` varchar(64) NOT NULL DEFAULT '' AFTER `error`; +ALTER TABLE `sys_user` CHANGE `sys_userid` `sys_userid` INT(11) UNSIGNED NOT NULL DEFAULT '1' COMMENT 'Created by userid'; +ALTER TABLE `sys_user` CHANGE `sys_groupid` `sys_groupid` INT(11) UNSIGNED NOT NULL DEFAULT '1' COMMENT 'Created by groupid'; diff --git a/install/sql/ispconfig3.sql b/install/sql/ispconfig3.sql index aacd2ecdb6..79dfde3275 100644 --- a/install/sql/ispconfig3.sql +++ b/install/sql/ispconfig3.sql @@ -1785,8 +1785,8 @@ CREATE TABLE IF NOT EXISTS `sys_theme` ( CREATE TABLE `sys_user` ( `userid` int(11) unsigned NOT NULL auto_increment, - `sys_userid` int(11) unsigned NOT NULL default '1', - `sys_groupid` int(11) unsigned NOT NULL default '1', + `sys_userid` int(11) unsigned NOT NULL default '1' COMMENT 'Created by userid', + `sys_groupid` int(11) unsigned NOT NULL default '1' COMMENT 'Created by groupid', `sys_perm_user` varchar(5) NOT NULL default 'riud', `sys_perm_group` varchar(5) NOT NULL default 'riud', `sys_perm_other` varchar(5) NOT NULL default '', -- GitLab From 3f9c6a3a929694715d756e023de4447de554e4c4 Mon Sep 17 00:00:00 2001 From: Webslice <webslice@bixels.nl> Date: Thu, 17 Jan 2019 20:16:53 +0100 Subject: [PATCH 002/215] Add support for powerdns 4.x, fixes #5223 --- .../plugins-available/powerdns_plugin.inc.php | 108 +++++++++++------- 1 file changed, 67 insertions(+), 41 deletions(-) diff --git a/server/plugins-available/powerdns_plugin.inc.php b/server/plugins-available/powerdns_plugin.inc.php index f5f5158c44..1ecdfaf501 100644 --- a/server/plugins-available/powerdns_plugin.inc.php +++ b/server/plugins-available/powerdns_plugin.inc.php @@ -7,14 +7,14 @@ All rights reserved. Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met: - * Redistributions of source code must retain the above copyright notice, - this list of conditions and the following disclaimer. - * Redistributions in binary form must reproduce the above copyright notice, - this list of conditions and the following disclaimer in the documentation - and/or other materials provided with the distribution. - * Neither the name of ISPConfig nor the names of its contributors - may be used to endorse or promote products derived from this software without - specific prior written permission. + * Redistributions of source code must retain the above copyright notice, + this list of conditions and the following disclaimer. + * Redistributions in binary form must reproduce the above copyright notice, + this list of conditions and the following disclaimer in the documentation + and/or other materials provided with the distribution. + * Neither the name of ISPConfig nor the names of its contributors + may be used to endorse or promote products derived from this software without + specific prior written permission. THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED @@ -97,7 +97,7 @@ class powerdns_plugin { /* - This function is called when the plugin is loaded + This function is called when the plugin is loaded */ function onLoad() { @@ -421,15 +421,23 @@ class powerdns_plugin { } } - function find_pdns_pdnssec() { + function find_pdns_pdnssec_or_pdnsutil() { $output = array(); $retval = ''; + + // The command is named pdnssec in PowerDNS 3 exec("type -p pdnssec", $output, $retval); if ($retval == 0 && is_file($output[0])){ return $output[0]; - } else { - return false; } + + // But in PowerNDS 4 they renamed it to pdnsutil + exec("type -p pdnsutil", $output, $retval); + if ($retval == 0 && is_file($output[0])){ + return $output[0]; + } + + return false; } function zoneRediscover() { @@ -466,6 +474,14 @@ class powerdns_plugin { } } + function is_pdns_version_supported() { + if (preg_match('/^[34]/',$this->get_pdns_version())) { + return true; + } + + return false; + } + function handle_dnssec($data) { // If origin changed, delete keys first if ($data['old']['origin'] != $data['new']['origin']) { @@ -475,14 +491,14 @@ class powerdns_plugin { } // If DNSSEC is disabled, but was enabled before, just disable DNSSEC but leave the keys in dns_info - if ($data['new']['dnssec_wanted'] === 'N' && $data['old']['dnssec_initialized'] === 'Y') { + if ($data['new']['dnssec_wanted'] === 'N' && $data['old']['dnssec_wanted'] === 'Y') { $this->soa_dnssec_disable($data); return; } // If DNSSEC is wanted, enable it - if ($data['new']['dnssec_wanted'] === 'Y') { + if ($data['new']['dnssec_wanted'] === 'Y' && $data['old']['dnssec_wanted'] === 'N') { $this->soa_dnssec_create($data); } } @@ -490,11 +506,11 @@ class powerdns_plugin { function soa_dnssec_create($data) { global $app; - if (!preg_match('/^3/',$this->get_pdns_version()) ) { + if (false === $this->is_pdns_version_supported()) { return; } - $pdns_pdnssec = $this->find_pdns_pdnssec(); + $pdns_pdnssec = $this->find_pdns_pdnssec_or_pdnsutil(); if ($pdns_pdnssec === false) { return; } @@ -504,9 +520,13 @@ class powerdns_plugin { // We don't log the actual commands here, because having commands in the dnssec_info field will trigger // the IDS if you try to save the record using the interface afterwards. - $cmd_secure_zone = sprintf('%s secure-zone %s 2>&1', $pdns_pdnssec, $zone); - $log[] = sprintf("\r\n%s %s", date('c'), 'Running secure-zone command...'); - exec($cmd_secure_zone, $log); + $cmd_add_zone_key_ksk = sprintf('%s add-zone-key %s ksk active 2048 rsasha256', $pdns_pdnssec, $zone); + $log[] = sprintf("\r\n%s %s", date('c'), 'Running add-zone-key ksk command...'); + exec($cmd_add_zone_key_ksk, $log); + + $cmd_add_zone_key_zsk = sprintf('%s add-zone-key %s zsk active 1024 rsasha256', $pdns_pdnssec, $zone); + $log[] = sprintf("\r\n%s %s", date('c'), 'Running add-zone-key zsk command...'); + exec($cmd_add_zone_key_zsk, $log); $cmd_set_nsec3 = sprintf('%s set-nsec3 %s "1 0 10 deadbeef" 2>&1', $pdns_pdnssec, $zone); $log[] = sprintf("\r\n%s %s", date('c'), 'Running set-nsec3 command...'); @@ -539,17 +559,19 @@ class powerdns_plugin { switch ($part = substr($line, 0, 3)) { case 'ID ': // Only process active keys - if (!strpos($line, 'Active: 1')) { - continue; + // 'Active: 1' is pdnssec (PowerDNS 3.x) output + // 'Active (' is pdnsutil (PowerDNS 4.x) output + if (!strpos($line, 'Active: 1') && !strpos($line, 'Active ( ')) { + break; } - // Determine key type (KSK or ZSK) - preg_match('/(KSK|ZSK)/', $line, $matches_key_type); + // Determine key type (KSK, ZSK or CSK) + preg_match('/(KSK|ZSK|CSK)/', $line, $matches_key_type); $key_type = $matches_key_type[1]; - // We only care about the KSK - if ('ZSK' === $key_type) { - continue; + // We only care about the KSK or CSK + if (!in_array($key_type, ['KSK', 'CSK'], true)) { + break; } // Determine key tag @@ -568,6 +590,7 @@ class powerdns_plugin { break; case 'KSK': + case 'CSK': // Determine DNSKEY preg_match('/ IN DNSKEY \d+ \d+ \d+ (.*) ;/', $line, $matches_dnskey); $formatted[] = sprintf('DNSKEY: %s', $matches_dnskey[1]); @@ -604,11 +627,11 @@ class powerdns_plugin { function soa_dnssec_disable($data) { global $app; - if (!preg_match('/^3/',$this->get_pdns_version()) ) { + if (false === $this->is_pdns_version_supported()) { return; } - $pdns_pdnssec = $this->find_pdns_pdnssec(); + $pdns_pdnssec = $this->find_pdns_pdnssec_or_pdnsutil(); if ($pdns_pdnssec === false) { return; } @@ -631,11 +654,11 @@ class powerdns_plugin { function soa_dnssec_delete($data) { global $app; - if (!preg_match('/^3/',$this->get_pdns_version()) ) { + if (false === $this->is_pdns_version_supported()) { return; } - $pdns_pdnssec = $this->find_pdns_pdnssec(); + $pdns_pdnssec = $this->find_pdns_pdnssec_or_pdnsutil(); if ($pdns_pdnssec === false) { return; } @@ -661,17 +684,20 @@ class powerdns_plugin { function rectifyZone($data) { global $app, $conf; - if ( preg_match('/^3/',$this->get_pdns_version()) ) { - $pdns_pdnssec = $this->find_pdns_pdnssec(); - if ( $pdns_pdnssec != false ) { - if (isset($data["new"]["origin"])) { - //* data has origin field only for SOA recordtypes - exec($pdns_pdnssec . ' rectify-zone ' . rtrim($data["new"]["origin"],".")); - } else { - // get origin from DB for all other recordtypes - $zn = $app->db->queryOneRecord("SELECT d.name AS name FROM powerdns.domains d, powerdns.records r WHERE r.ispconfig_id=? AND r.domain_id = d.id", $data["new"]["id"]); - exec($pdns_pdnssec . ' rectify-zone ' . trim($zn["name"])); - } + + if (false === $this->is_pdns_version_supported()) { + return; + } + + $pdns_pdnssec = $this->find_pdns_pdnssec_or_pdnsutil(); + if ( $pdns_pdnssec != false ) { + if (isset($data["new"]["origin"])) { + //* data has origin field only for SOA recordtypes + exec($pdns_pdnssec . ' rectify-zone ' . rtrim($data["new"]["origin"],".")); + } else { + // get origin from DB for all other recordtypes + $zn = $app->db->queryOneRecord("SELECT d.name AS name FROM powerdns.domains d, powerdns.records r WHERE r.ispconfig_id=? AND r.domain_id = d.id", $data["new"]["id"]); + exec($pdns_pdnssec . ' rectify-zone ' . trim($zn["name"])); } } } -- GitLab From 04d8e6f6e9290755522d915213bd9d6e52b90b6d Mon Sep 17 00:00:00 2001 From: Marius Burkard <m.burkard@pixcept.de> Date: Fri, 25 Jan 2019 10:11:49 +0100 Subject: [PATCH 003/215] - fixed update serial on delete RR via remoting - reduced duplicate code in dns remoting function --- interface/lib/classes/remote.d/dns.inc.php | 573 ++++++--------------- 1 file changed, 155 insertions(+), 418 deletions(-) diff --git a/interface/lib/classes/remote.d/dns.inc.php b/interface/lib/classes/remote.d/dns.inc.php index faae06dc2e..e640145c69 100644 --- a/interface/lib/classes/remote.d/dns.inc.php +++ b/interface/lib/classes/remote.d/dns.inc.php @@ -42,8 +42,7 @@ class remoting_dns extends remoting { // DNS Function -------------------------------------------------------------------------------------------------- //* Create Zone with Template - public function dns_templatezone_add($session_id, $client_id, $template_id, $domain, $ip, $ns1, $ns2, $email) - { + public function dns_templatezone_add($session_id, $client_id, $template_id, $domain, $ip, $ns1, $ns2, $email) { global $app, $conf; if(!$this->checkPerm($session_id, 'dns_templatezone_add')) { throw new SoapFault('permission_denied', 'You do not have the permissions to access this function.'); @@ -184,8 +183,7 @@ class remoting_dns extends remoting { //* Get record details - public function dns_zone_get($session_id, $primary_id) - { + public function dns_zone_get($session_id, $primary_id) { global $app; if(!$this->checkPerm($session_id, 'dns_zone_get')) { @@ -198,8 +196,7 @@ class remoting_dns extends remoting { } //* Get slave zone details - public function dns_slave_get($session_id, $primary_id) - { + public function dns_slave_get($session_id, $primary_id) { global $app; if(!$this->checkPerm($session_id, 'dns_zone_get')) { @@ -213,8 +210,7 @@ class remoting_dns extends remoting { //* Add a slave zone - public function dns_slave_add($session_id, $client_id, $params) - { + public function dns_slave_add($session_id, $client_id, $params) { if(!$this->checkPerm($session_id, 'dns_zone_add')) { throw new SoapFault('permission_denied', 'You do not have the permissions to access this function.'); return false; @@ -223,8 +219,7 @@ class remoting_dns extends remoting { } //* Update a slave zone - public function dns_slave_update($session_id, $client_id, $primary_id, $params) - { + public function dns_slave_update($session_id, $client_id, $primary_id, $params) { if(!$this->checkPerm($session_id, 'dns_zone_update')) { throw new SoapFault('permission_denied', 'You do not have the permissions to access this function.'); return false; @@ -234,8 +229,7 @@ class remoting_dns extends remoting { } //* Delete a slave zone - public function dns_slave_delete($session_id, $primary_id) - { + public function dns_slave_delete($session_id, $primary_id) { if(!$this->checkPerm($session_id, 'dns_zone_delete')) { throw new SoapFault('permission_denied', 'You do not have the permissions to access this function.'); return false; @@ -244,8 +238,7 @@ class remoting_dns extends remoting { } //* Get record id by origin - public function dns_zone_get_id($session_id, $origin) - { + public function dns_zone_get_id($session_id, $origin) { global $app; if(!$this->checkPerm($session_id, 'dns_zone_get_id')) { @@ -268,8 +261,7 @@ class remoting_dns extends remoting { } //* Add a record - public function dns_zone_add($session_id, $client_id, $params) - { + public function dns_zone_add($session_id, $client_id, $params) { if(!$this->checkPerm($session_id, 'dns_zone_add')) { throw new SoapFault('permission_denied', 'You do not have the permissions to access this function.'); return false; @@ -278,8 +270,7 @@ class remoting_dns extends remoting { } //* Update a record - public function dns_zone_update($session_id, $client_id, $primary_id, $params) - { + public function dns_zone_update($session_id, $client_id, $primary_id, $params) { if(!$this->checkPerm($session_id, 'dns_zone_update')) { throw new SoapFault('permission_denied', 'You do not have the permissions to access this function.'); return false; @@ -289,8 +280,7 @@ class remoting_dns extends remoting { } //* Delete a record - public function dns_zone_delete($session_id, $primary_id) - { + public function dns_zone_delete($session_id, $primary_id) { if(!$this->checkPerm($session_id, 'dns_zone_delete')) { throw new SoapFault('permission_denied', 'You do not have the permissions to access this function.'); return false; @@ -301,563 +291,312 @@ class remoting_dns extends remoting { // ---------------------------------------------------------------------------------------------------------------- - //* Get record details - public function dns_aaaa_get($session_id, $primary_id) - { + private function dns_rr_get($session_id, $primary_id, $rr_type = 'A') { global $app; - - if(!$this->checkPerm($session_id, 'dns_aaaa_get')) { + + $rr_type = strtolower($rr_type); + if(!preg_match('/^[a-z]+$/', $rr_type)) { + throw new SoapFault('permission denied', 'Invalid rr type'); + } + + if(!$this->checkPerm($session_id, 'dns_' . $rr_type . '_get')) { throw new SoapFault('permission_denied', 'You do not have the permissions to access this function.'); - return false; } $app->uses('remoting_lib'); - $app->remoting_lib->loadFormDef('../dns/form/dns_aaaa.tform.php'); + $app->remoting_lib->loadFormDef('../dns/form/dns_' . $rr_type . '.tform.php'); return $app->remoting_lib->getDataRecord($primary_id); } - + //* Add a record - public function dns_aaaa_add($session_id, $client_id, $params, $update_serial=false) - { - if(!$this->checkPerm($session_id, 'dns_aaaa_add')) { + private function dns_rr_add($session_id, $client_id, $params, $update_serial=false, $rr_type = 'A') { + $rr_type = strtolower($rr_type); + if(!preg_match('/^[a-z]+$/', $rr_type)) { + throw new SoapFault('permission denied', 'Invalid rr type'); + } + + if(!$this->checkPerm($session_id, 'dns_' . $rr_type . '_add')) { throw new SoapFault('permission_denied', 'You do not have the permissions to access this function.'); - return false; } - if($update_serial) $this->increase_serial($session_id, $client_id, $params); - return $this->insertQuery('../dns/form/dns_aaaa.tform.php', $client_id, $params); + if($update_serial) { + $this->increase_serial($session_id, $client_id, $params); + } + return $this->insertQuery('../dns/form/dns_' . $rr_type . '.tform.php', $client_id, $params); } //* Update a record - public function dns_aaaa_update($session_id, $client_id, $primary_id, $params, $update_serial=false) - { - if(!$this->checkPerm($session_id, 'dns_aaaa_update')) { + private function dns_rr_update($session_id, $client_id, $primary_id, $params, $update_serial=false, $rr_type = 'A') { + $rr_type = strtolower($rr_type); + if(!preg_match('/^[a-z]+$/', $rr_type)) { + throw new SoapFault('permission denied', 'Invalid rr type'); + } + + if(!$this->checkPerm($session_id, 'dns_' . $rr_type . '_update')) { throw new SoapFault('permission_denied', 'You do not have the permissions to access this function.'); return false; } - $affected_rows = $this->updateQuery('../dns/form/dns_aaaa.tform.php', $client_id, $primary_id, $params); - if($update_serial) $this->increase_serial($session_id, $client_id, $params); + $affected_rows = $this->updateQuery('../dns/form/dns_' . $rr_type . '.tform.php', $client_id, $primary_id, $params); + if($update_serial) { + $this->increase_serial($session_id, $client_id, $params); + } return $affected_rows; } - + //* Delete a record - public function dns_aaaa_delete($session_id, $primary_id, $update_serial=false) - { - if(!$this->checkPerm($session_id, 'dns_aaaa_delete')) { + private function dns_rr_delete($session_id, $primary_id, $update_serial=false, $rr_type = 'A') { + $rr_type = strtolower($rr_type); + if(!preg_match('/^[a-z]+$/', $rr_type)) { + throw new SoapFault('permission denied', 'Invalid rr type'); + } + if(!$this->checkPerm($session_id, 'dns_' . $rr_type . '_delete')) { throw new SoapFault('permission_denied', 'You do not have the permissions to access this function.'); - return false; } - $affected_rows = $this->deleteQuery('../dns/form/dns_aaaa.tform.php', $primary_id); - if($update_serial) $this->increase_serial($session_id, $client_id, array('dns_rr_id' => $primary_id)); + if($update_serial) { + $this->increase_serial($session_id, 0, array('dns_rr_id' => $primary_id)); + } + $affected_rows = $this->deleteQuery('../dns/form/dns_' . $rr_type . '.tform.php', $primary_id); return $affected_rows; } + + // ---------------------------------------------------------------------------------------------------------------- + + //* Get record details + public function dns_aaaa_get($session_id, $primary_id) { + return $this->dns_rr_get($session_id, $primary_id, 'AAAA'); + } + + //* Add a record + public function dns_aaaa_add($session_id, $client_id, $params, $update_serial=false) { + return $this->dns_rr_add($session_id, $client_id, $params, $update_serial, 'AAAA'); + } + + //* Update a record + public function dns_aaaa_update($session_id, $client_id, $primary_id, $params, $update_serial=false) { + return $this->dns_rr_update($session_id, $client_id, $primary_id, $params, $update_serial, 'AAAA'); + } + + //* Delete a record + public function dns_aaaa_delete($session_id, $primary_id, $update_serial=false) { + return $this->dns_rr_delete($session_id, $primary_id, $update_serial, 'AAAA'); + } // ---------------------------------------------------------------------------------------------------------------- //* Get record details - public function dns_a_get($session_id, $primary_id) - { - global $app; - - if(!$this->checkPerm($session_id, 'dns_a_get')) { - throw new SoapFault('permission_denied', 'You do not have the permissions to access this function.'); - return false; - } - $app->uses('remoting_lib'); - $app->remoting_lib->loadFormDef('../dns/form/dns_a.tform.php'); - return $app->remoting_lib->getDataRecord($primary_id); + public function dns_a_get($session_id, $primary_id) { + return $this->dns_rr_get($session_id, $primary_id, 'A'); } //* Add a record - public function dns_a_add($session_id, $client_id, $params, $update_serial=false) - { - if(!$this->checkPerm($session_id, 'dns_a_add')) { - throw new SoapFault('permission_denied', 'You do not have the permissions to access this function.'); - return false; - } - if($update_serial) $this->increase_serial($session_id, $client_id, $params); - return $this->insertQuery('../dns/form/dns_a.tform.php', $client_id, $params); + public function dns_a_add($session_id, $client_id, $params, $update_serial=false) { + return $this->dns_rr_add($session_id, $client_id, $params, $update_serial, 'A'); } //* Update a record - public function dns_a_update($session_id, $client_id, $primary_id, $params, $update_serial=false) - { - if(!$this->checkPerm($session_id, 'dns_a_update')) { - throw new SoapFault('permission_denied', 'You do not have the permissions to access this function.'); - return false; - } - if($update_serial) $this->increase_serial($session_id, $client_id, $params); - $affected_rows = $this->updateQuery('../dns/form/dns_a.tform.php', $client_id, $primary_id, $params); - return $affected_rows; + public function dns_a_update($session_id, $client_id, $primary_id, $params, $update_serial=false) { + return $this->dns_rr_update($session_id, $client_id, $primary_id, $params, $update_serial, 'A'); } //* Delete a record - public function dns_a_delete($session_id, $primary_id, $update_serial=false) - { - if(!$this->checkPerm($session_id, 'dns_a_delete')) { - throw new SoapFault('permission_denied', 'You do not have the permissions to access this function.'); - return false; - } - $affected_rows = $this->deleteQuery('../dns/form/dns_a.tform.php', $primary_id); - if($update_serial) $this->increase_serial($session_id, $client_id, array('dns_rr_id' => $primary_id)); - return $affected_rows; + public function dns_a_delete($session_id, $primary_id, $update_serial=false) { + return $this->dns_rr_delete($session_id, $primary_id, $update_serial, 'A'); } // ---------------------------------------------------------------------------------------------------------------- //* Get record details - public function dns_alias_get($session_id, $primary_id) - { - global $app; - - if(!$this->checkPerm($session_id, 'dns_alias_get')) { - throw new SoapFault('permission_denied', 'You do not have the permissions to access this function.'); - return false; - } - $app->uses('remoting_lib'); - $app->remoting_lib->loadFormDef('../dns/form/dns_alias.tform.php'); - return $app->remoting_lib->getDataRecord($primary_id); + public function dns_alias_get($session_id, $primary_id) { + return $this->dns_rr_get($session_id, $primary_id, 'ALIAS'); } //* Add a record - public function dns_alias_add($session_id, $client_id, $params, $update_serial=false) - { - if(!$this->checkPerm($session_id, 'dns_alias_add')) { - throw new SoapFault('permission_denied', 'You do not have the permissions to access this function.'); - return false; - } - if($update_serial) $this->increase_serial($session_id, $client_id, $params); - return $this->insertQuery('../dns/form/dns_alias.tform.php', $client_id, $params); + public function dns_alias_add($session_id, $client_id, $params, $update_serial=false) { + return $this->dns_rr_add($session_id, $client_id, $params, $update_serial, 'ALIAS'); } //* Update a record - public function dns_alias_update($session_id, $client_id, $primary_id, $params, $update_serial=false) - { - if(!$this->checkPerm($session_id, 'dns_alias_update')) { - throw new SoapFault('permission_denied', 'You do not have the permissions to access this function.'); - return false; - } - if($update_serial) $this->increase_serial($session_id, $client_id, $params); - $affected_rows = $this->updateQuery('../dns/form/dns_alias.tform.php', $client_id, $primary_id, $params); - return $affected_rows; + public function dns_alias_update($session_id, $client_id, $primary_id, $params, $update_serial=false) { + return $this->dns_rr_update($session_id, $client_id, $primary_id, $params, $update_serial, 'ALIAS'); } //* Delete a record - public function dns_alias_delete($session_id, $primary_id, $update_serial=false) - { - if(!$this->checkPerm($session_id, 'dns_alias_delete')) { - throw new SoapFault('permission_denied', 'You do not have the permissions to access this function.'); - return false; - } - $affected_rows = $this->deleteQuery('../dns/form/dns_alias.tform.php', $primary_id); - if($update_serial) $this->increase_serial($session_id, $client_id, array('dns_rr_id' => $primary_id)); - return $affected_rows; + public function dns_alias_delete($session_id, $primary_id, $update_serial=false) { + return $this->dns_rr_delete($session_id, $primary_id, $update_serial, 'ALIAS'); } // ---------------------------------------------------------------------------------------------------------------- //* Get record details - public function dns_cname_get($session_id, $primary_id) - { - global $app; - - if(!$this->checkPerm($session_id, 'dns_cname_get')) { - throw new SoapFault('permission_denied', 'You do not have the permissions to access this function.'); - return false; - } - $app->uses('remoting_lib'); - $app->remoting_lib->loadFormDef('../dns/form/dns_cname.tform.php'); - return $app->remoting_lib->getDataRecord($primary_id); + public function dns_cname_get($session_id, $primary_id) { + return $this->dns_rr_get($session_id, $primary_id, 'CNAME'); } //* Add a record - public function dns_cname_add($session_id, $client_id, $params, $update_serial=false) - { - if(!$this->checkPerm($session_id, 'dns_cname_add')) { - throw new SoapFault('permission_denied', 'You do not have the permissions to access this function.'); - return false; - } - if($update_serial) $this->increase_serial($session_id, $client_id, $params); - return $this->insertQuery('../dns/form/dns_cname.tform.php', $client_id, $params); + public function dns_cname_add($session_id, $client_id, $params, $update_serial=false) { + return $this->dns_rr_add($session_id, $client_id, $params, $update_serial, 'CNAME'); } //* Update a record - public function dns_cname_update($session_id, $client_id, $primary_id, $params, $update_serial=false) - { - if(!$this->checkPerm($session_id, 'dns_cname_update')) { - throw new SoapFault('permission_denied', 'You do not have the permissions to access this function.'); - return false; - } - if($update_serial) $this->increase_serial($session_id, $client_id, $params); - $affected_rows = $this->updateQuery('../dns/form/dns_cname.tform.php', $client_id, $primary_id, $params); - return $affected_rows; + public function dns_cname_update($session_id, $client_id, $primary_id, $params, $update_serial=false) { + return $this->dns_rr_update($session_id, $client_id, $primary_id, $params, $update_serial, 'CNAME'); } //* Delete a record - public function dns_cname_delete($session_id, $primary_id, $update_serial=false) - { - if(!$this->checkPerm($session_id, 'dns_cname_delete')) { - throw new SoapFault('permission_denied', 'You do not have the permissions to access this function.'); - return false; - } - $affected_rows = $this->deleteQuery('../dns/form/dns_cname.tform.php', $primary_id); - if($update_serial) $this->increase_serial($session_id, $client_id, array('dns_rr_id' => $primary_id)); - return $affected_rows; + public function dns_cname_delete($session_id, $primary_id, $update_serial=false) { + return $this->dns_rr_delete($session_id, $primary_id, $update_serial, 'CNAME'); } // ---------------------------------------------------------------------------------------------------------------- //* Get record details - public function dns_hinfo_get($session_id, $primary_id) - { - global $app; - - if(!$this->checkPerm($session_id, 'dns_hinfo_get')) { - throw new SoapFault('permission_denied', 'You do not have the permissions to access this function.'); - return false; - } - $app->uses('remoting_lib'); - $app->remoting_lib->loadFormDef('../dns/form/dns_hinfo.tform.php'); - return $app->remoting_lib->getDataRecord($primary_id); + public function dns_hinfo_get($session_id, $primary_id) { + return $this->dns_rr_get($session_id, $primary_id, 'HINFO'); } //* Add a record - public function dns_hinfo_add($session_id, $client_id, $params, $update_serial=false) - { - if(!$this->checkPerm($session_id, 'dns_hinfo_add')) { - throw new SoapFault('permission_denied', 'You do not have the permissions to access this function.'); - return false; - } - if($update_serial) $this->increase_serial($session_id, $client_id, $params); - return $this->insertQuery('../dns/form/dns_hinfo.tform.php', $client_id, $params); + public function dns_hinfo_add($session_id, $client_id, $params, $update_serial=false) { + return $this->dns_rr_add($session_id, $client_id, $params, $update_serial, 'HINFO'); } //* Update a record - public function dns_hinfo_update($session_id, $client_id, $primary_id, $params, $update_serial=false) - { - if(!$this->checkPerm($session_id, 'dns_hinfo_update')) { - throw new SoapFault('permission_denied', 'You do not have the permissions to access this function.'); - return false; - } - if($update_serial) $this->increase_serial($session_id, $client_id, $params); - $affected_rows = $this->updateQuery('../dns/form/dns_hinfo.tform.php', $client_id, $primary_id, $params); - return $affected_rows; + public function dns_hinfo_update($session_id, $client_id, $primary_id, $params, $update_serial=false) { + return $this->dns_rr_update($session_id, $client_id, $primary_id, $params, $update_serial, 'HINFO'); } //* Delete a record - public function dns_hinfo_delete($session_id, $primary_id, $update_serial=false) - { - if(!$this->checkPerm($session_id, 'dns_hinfo_delete')) { - throw new SoapFault('permission_denied', 'You do not have the permissions to access this function.'); - return false; - } - $affected_rows = $this->deleteQuery('../dns/form/dns_hinfo.tform.php', $primary_id); - if($update_serial) $this->increase_serial($session_id, $client_id, array('dns_rr_id' => $primary_id)); - return $affected_rows; + public function dns_hinfo_delete($session_id, $primary_id, $update_serial=false) { + return $this->dns_rr_delete($session_id, $primary_id, $update_serial, 'HINFO'); } // ---------------------------------------------------------------------------------------------------------------- //* Get record details - public function dns_mx_get($session_id, $primary_id) - { - global $app; - - if(!$this->checkPerm($session_id, 'dns_mx_get')) { - throw new SoapFault('permission_denied', 'You do not have the permissions to access this function.'); - return false; - } - $app->uses('remoting_lib'); - $app->remoting_lib->loadFormDef('../dns/form/dns_mx.tform.php'); - return $app->remoting_lib->getDataRecord($primary_id); + public function dns_mx_get($session_id, $primary_id) { + return $this->dns_rr_get($session_id, $primary_id, 'MX'); } //* Add a record - public function dns_mx_add($session_id, $client_id, $params, $update_serial=false) - { - if(!$this->checkPerm($session_id, 'dns_mx_add')) { - throw new SoapFault('permission_denied', 'You do not have the permissions to access this function.'); - return false; - } - if($update_serial) $this->increase_serial($session_id, $client_id, $params); - return $this->insertQuery('../dns/form/dns_mx.tform.php', $client_id, $params); + public function dns_mx_add($session_id, $client_id, $params, $update_serial=false) { + return $this->dns_rr_add($session_id, $client_id, $params, $update_serial, 'MX'); } //* Update a record - public function dns_mx_update($session_id, $client_id, $primary_id, $params, $update_serial=false) - { - if(!$this->checkPerm($session_id, 'dns_mx_update')) { - throw new SoapFault('permission_denied', 'You do not have the permissions to access this function.'); - return false; - } - if($update_serial) $this->increase_serial($session_id, $client_id, $params); - $affected_rows = $this->updateQuery('../dns/form/dns_mx.tform.php', $client_id, $primary_id, $params); - return $affected_rows; + public function dns_mx_update($session_id, $client_id, $primary_id, $params, $update_serial=false) { + return $this->dns_rr_update($session_id, $client_id, $primary_id, $params, $update_serial, 'MX'); } //* Delete a record - public function dns_mx_delete($session_id, $primary_id, $update_serial=false) - { - if(!$this->checkPerm($session_id, 'dns_mx_delete')) { - throw new SoapFault('permission_denied', 'You do not have the permissions to access this function.'); - return false; - } - $affected_rows = $this->deleteQuery('../dns/form/dns_mx.tform.php', $primary_id); - if($update_serial) $this->increase_serial($session_id, $client_id, array('dns_rr_id' => $primary_id)); - return $affected_rows; + public function dns_mx_delete($session_id, $primary_id, $update_serial=false) { + return $this->dns_rr_delete($session_id, $primary_id, $update_serial, 'MX'); } // ---------------------------------------------------------------------------------------------------------------- //* Get record details - public function dns_ns_get($session_id, $primary_id) - { - global $app; - - if(!$this->checkPerm($session_id, 'dns_ns_get')) { - throw new SoapFault('permission_denied', 'You do not have the permissions to access this function.'); - return false; - } - $app->uses('remoting_lib'); - $app->remoting_lib->loadFormDef('../dns/form/dns_ns.tform.php'); - return $app->remoting_lib->getDataRecord($primary_id); + public function dns_ns_get($session_id, $primary_id) { + return $this->dns_rr_get($session_id, $primary_id, 'NS'); } //* Add a record - public function dns_ns_add($session_id, $client_id, $params, $update_serial=false) - { - if(!$this->checkPerm($session_id, 'dns_ns_add')) { - throw new SoapFault('permission_denied', 'You do not have the permissions to access this function.'); - return false; - } - if($update_serial) $this->increase_serial($session_id, $client_id, $params); - return $this->insertQuery('../dns/form/dns_ns.tform.php', $client_id, $params); + public function dns_ns_add($session_id, $client_id, $params, $update_serial=false) { + return $this->dns_rr_add($session_id, $client_id, $params, $update_serial, 'NS'); } //* Update a record - public function dns_ns_update($session_id, $client_id, $primary_id, $params, $update_serial=false) - { - if(!$this->checkPerm($session_id, 'dns_ns_update')) { - throw new SoapFault('permission_denied', 'You do not have the permissions to access this function.'); - return false; - } - if($update_serial) $this->increase_serial($session_id, $client_id, $params); - $affected_rows = $this->updateQuery('../dns/form/dns_ns.tform.php', $client_id, $primary_id, $params); - return $affected_rows; + public function dns_ns_update($session_id, $client_id, $primary_id, $params, $update_serial=false) { + return $this->dns_rr_update($session_id, $client_id, $primary_id, $params, $update_serial, 'NS'); } //* Delete a record - public function dns_ns_delete($session_id, $primary_id, $update_serial=false) - { - if(!$this->checkPerm($session_id, 'dns_ns_delete')) { - throw new SoapFault('permission_denied', 'You do not have the permissions to access this function.'); - return false; - } - $affected_rows = $this->deleteQuery('../dns/form/dns_ns.tform.php', $primary_id); - if($update_serial) $this->increase_serial($session_id, $client_id, array('dns_rr_id' => $primary_id)); - return $affected_rows; + public function dns_ns_delete($session_id, $primary_id, $update_serial=false) { + return $this->dns_rr_delete($session_id, $primary_id, $update_serial, 'NS'); } // ---------------------------------------------------------------------------------------------------------------- //* Get record details - public function dns_ptr_get($session_id, $primary_id) - { - global $app; - - if(!$this->checkPerm($session_id, 'dns_ptr_get')) { - throw new SoapFault('permission_denied', 'You do not have the permissions to access this function.'); - return false; - } - $app->uses('remoting_lib'); - $app->remoting_lib->loadFormDef('../dns/form/dns_ptr.tform.php'); - return $app->remoting_lib->getDataRecord($primary_id); + public function dns_ptr_get($session_id, $primary_id) { + return $this->dns_rr_get($session_id, $primary_id, 'PTR'); } //* Add a record - public function dns_ptr_add($session_id, $client_id, $params, $update_serial=false) - { - if(!$this->checkPerm($session_id, 'dns_ptr_add')) { - throw new SoapFault('permission_denied', 'You do not have the permissions to access this function.'); - return false; - } - if($update_serial) $this->increase_serial($session_id, $client_id, $params); - return $this->insertQuery('../dns/form/dns_ptr.tform.php', $client_id, $params); + public function dns_ptr_add($session_id, $client_id, $params, $update_serial=false) { + return $this->dns_rr_add($session_id, $client_id, $params, $update_serial, 'PTR'); } //* Update a record - public function dns_ptr_update($session_id, $client_id, $primary_id, $params, $update_serial=false) - { - if(!$this->checkPerm($session_id, 'dns_ptr_update')) { - throw new SoapFault('permission_denied', 'You do not have the permissions to access this function.'); - return false; - } - if($update_serial) $this->increase_serial($session_id, $client_id, $params); - $affected_rows = $this->updateQuery('../dns/form/dns_ptr.tform.php', $client_id, $primary_id, $params); - return $affected_rows; + public function dns_ptr_update($session_id, $client_id, $primary_id, $params, $update_serial=false) { + return $this->dns_rr_update($session_id, $client_id, $primary_id, $params, $update_serial, 'PTR'); } //* Delete a record - public function dns_ptr_delete($session_id, $primary_id, $update_serial=false) - { - if(!$this->checkPerm($session_id, 'dns_ptr_delete')) { - throw new SoapFault('permission_denied', 'You do not have the permissions to access this function.'); - return false; - } - $affected_rows = $this->deleteQuery('../dns/form/dns_ptr.tform.php', $primary_id); - if($update_serial) $this->increase_serial($session_id, $client_id, array('dns_rr_id' => $primary_id)); - return $affected_rows; + public function dns_ptr_delete($session_id, $primary_id, $update_serial=false) { + return $this->dns_rr_delete($session_id, $primary_id, $update_serial, 'PTR'); } // ---------------------------------------------------------------------------------------------------------------- //* Get record details - public function dns_rp_get($session_id, $primary_id) - { - global $app; - - if(!$this->checkPerm($session_id, 'dns_rp_get')) { - throw new SoapFault('permission_denied', 'You do not have the permissions to access this function.'); - return false; - } - $app->uses('remoting_lib'); - $app->remoting_lib->loadFormDef('../dns/form/dns_rp.tform.php'); - return $app->remoting_lib->getDataRecord($primary_id); + public function dns_rp_get($session_id, $primary_id) { + return $this->dns_rr_get($session_id, $primary_id, 'RP'); } //* Add a record - public function dns_rp_add($session_id, $client_id, $params, $update_serial=false) - { - if(!$this->checkPerm($session_id, 'dns_rp_add')) { - throw new SoapFault('permission_denied', 'You do not have the permissions to access this function.'); - return false; - } - if($update_serial) $this->increase_serial($session_id, $client_id, $params); - return $this->insertQuery('../dns/form/dns_rp.tform.php', $client_id, $params); + public function dns_rp_add($session_id, $client_id, $params, $update_serial=false) { + return $this->dns_rr_add($session_id, $client_id, $params, $update_serial, 'RP'); } //* Update a record - public function dns_rp_update($session_id, $client_id, $primary_id, $params, $update_serial=false) - { - if(!$this->checkPerm($session_id, 'dns_rp_update')) { - throw new SoapFault('permission_denied', 'You do not have the permissions to access this function.'); - return false; - } - if($update_serial) $this->increase_serial($session_id, $client_id, $params); - $affected_rows = $this->updateQuery('../dns/form/dns_rp.tform.php', $client_id, $primary_id, $params); - return $affected_rows; + public function dns_rp_update($session_id, $client_id, $primary_id, $params, $update_serial=false) { + return $this->dns_rr_update($session_id, $client_id, $primary_id, $params, $update_serial, 'RP'); } //* Delete a record - public function dns_rp_delete($session_id, $primary_id, $update_serial=false) - { - if(!$this->checkPerm($session_id, 'dns_rp_delete')) { - throw new SoapFault('permission_denied', 'You do not have the permissions to access this function.'); - return false; - } - $affected_rows = $this->deleteQuery('../dns/form/dns_rp.tform.php', $primary_id); - if($update_serial) $this->increase_serial($session_id, $client_id, array('dns_rr_id' => $primary_id)); - return $affected_rows; + public function dns_rp_delete($session_id, $primary_id, $update_serial=false) { + return $this->dns_rr_delete($session_id, $primary_id, $update_serial, 'RP'); } // ---------------------------------------------------------------------------------------------------------------- //* Get record details - public function dns_srv_get($session_id, $primary_id) - { - global $app; - - if(!$this->checkPerm($session_id, 'dns_srv_get')) { - throw new SoapFault('permission_denied', 'You do not have the permissions to access this function.'); - return false; - } - $app->uses('remoting_lib'); - $app->remoting_lib->loadFormDef('../dns/form/dns_srv.tform.php'); - return $app->remoting_lib->getDataRecord($primary_id); + public function dns_srv_get($session_id, $primary_id) { + return $this->dns_rr_get($session_id, $primary_id, 'SRV'); } //* Add a record - public function dns_srv_add($session_id, $client_id, $params, $update_serial=false) - { - if(!$this->checkPerm($session_id, 'dns_srv_add')) { - throw new SoapFault('permission_denied', 'You do not have the permissions to access this function.'); - return false; - } - if($update_serial) $this->increase_serial($session_id, $client_id, $params); - return $this->insertQuery('../dns/form/dns_srv.tform.php', $client_id, $params); + public function dns_srv_add($session_id, $client_id, $params, $update_serial=false) { + return $this->dns_rr_add($session_id, $client_id, $params, $update_serial, 'SRV'); } //* Update a record - public function dns_srv_update($session_id, $client_id, $primary_id, $params, $update_serial=false) - { - if(!$this->checkPerm($session_id, 'dns_srv_update')) { - throw new SoapFault('permission_denied', 'You do not have the permissions to access this function.'); - return false; - } - if($update_serial) $this->increase_serial($session_id, $client_id, $params); - $affected_rows = $this->updateQuery('../dns/form/dns_srv.tform.php', $client_id, $primary_id, $params); - return $affected_rows; + public function dns_srv_update($session_id, $client_id, $primary_id, $params, $update_serial=false) { + return $this->dns_rr_update($session_id, $client_id, $primary_id, $params, $update_serial, 'SRV'); } //* Delete a record - public function dns_srv_delete($session_id, $primary_id, $update_serial=false) - { - if(!$this->checkPerm($session_id, 'dns_srv_delete')) { - throw new SoapFault('permission_denied', 'You do not have the permissions to access this function.'); - return false; - } - $affected_rows = $this->deleteQuery('../dns/form/dns_srv.tform.php', $primary_id); - if($update_serial) $this->increase_serial($session_id, $client_id, array('dns_rr_id' => $primary_id)); - return $affected_rows; + public function dns_srv_delete($session_id, $primary_id, $update_serial=false) { + return $this->dns_rr_delete($session_id, $primary_id, $update_serial, 'SRV'); } // ---------------------------------------------------------------------------------------------------------------- //* Get record details - public function dns_txt_get($session_id, $primary_id) - { - global $app; - - if(!$this->checkPerm($session_id, 'dns_txt_get')) { - throw new SoapFault('permission_denied', 'You do not have the permissions to access this function.'); - return false; - } - $app->uses('remoting_lib'); - $app->remoting_lib->loadFormDef('../dns/form/dns_txt.tform.php'); - return $app->remoting_lib->getDataRecord($primary_id); + public function dns_txt_get($session_id, $primary_id) { + return $this->dns_rr_get($session_id, $primary_id, 'TXT'); } //* Add a record - public function dns_txt_add($session_id, $client_id, $params, $update_serial=false) - { - if(!$this->checkPerm($session_id, 'dns_txt_add')) { - throw new SoapFault('permission_denied', 'You do not have the permissions to access this function.'); - return false; - } - if($update_serial) $this->increase_serial($session_id, $client_id, $params); - return $this->insertQuery('../dns/form/dns_txt.tform.php', $client_id, $params); + public function dns_txt_add($session_id, $client_id, $params, $update_serial=false) { + return $this->dns_rr_add($session_id, $client_id, $params, $update_serial, 'TXT'); } //* Update a record - public function dns_txt_update($session_id, $client_id, $primary_id, $params, $update_serial=false) - { - if(!$this->checkPerm($session_id, 'dns_txt_update')) { - throw new SoapFault('permission_denied', 'You do not have the permissions to access this function.'); - return false; - } - if($update_serial) $this->increase_serial($session_id, $client_id, $params); - $affected_rows = $this->updateQuery('../dns/form/dns_txt.tform.php', $client_id, $primary_id, $params); - return $affected_rows; + public function dns_txt_update($session_id, $client_id, $primary_id, $params, $update_serial=false) { + return $this->dns_rr_update($session_id, $client_id, $primary_id, $params, $update_serial, 'TXT'); } //* Delete a record - public function dns_txt_delete($session_id, $primary_id, $update_serial=false) - { - if(!$this->checkPerm($session_id, 'dns_txt_delete')) { - throw new SoapFault('permission_denied', 'You do not have the permissions to access this function.'); - return false; - } - $affected_rows = $this->deleteQuery('../dns/form/dns_txt.tform.php', $primary_id); - if($update_serial) $this->increase_serial($session_id, $client_id, array('dns_rr_id' => $primary_id)); - return $affected_rows; + public function dns_txt_delete($session_id, $primary_id, $update_serial=false) { + return $this->dns_rr_delete($session_id, $primary_id, $update_serial, 'TXT'); } /** @@ -957,5 +696,3 @@ class remoting_dns extends remoting { $this->dns_zone_update($session_id, $client_id, $soa['id'], $soa); } } - -?> -- GitLab From 74b3b31fe887ee752cef655aa42b20008a2b8af7 Mon Sep 17 00:00:00 2001 From: Herman van Rink <rink@initfour.nl> Date: Mon, 28 Jan 2019 13:54:07 +0100 Subject: [PATCH 004/215] Config option for jailkit authorized keys, #4901 --- install/tpl/server.ini.master | 1 + server/plugins-available/shelluser_jailkit_plugin.inc.php | 3 ++- 2 files changed, 3 insertions(+), 1 deletion(-) diff --git a/install/tpl/server.ini.master b/install/tpl/server.ini.master index 079d634488..406881010e 100644 --- a/install/tpl/server.ini.master +++ b/install/tpl/server.ini.master @@ -140,6 +140,7 @@ jailkit_chroot_home=/home/[username] jailkit_chroot_app_sections=basicshell editors extendedshell netutils ssh sftp scp groups jk_lsh jailkit_chroot_app_programs=/usr/bin/groups /usr/bin/id /usr/bin/dircolors /usr/bin/lesspipe /usr/bin/basename /usr/bin/dirname /usr/bin/nano /usr/bin/pico /usr/bin/mysql /usr/bin/mysqldump /usr/bin/git /usr/bin/git-receive-pack /usr/bin/git-upload-pack /usr/bin/unzip /usr/bin/zip /bin/tar /bin/rm /usr/bin/patch /usr/bin/which /usr/lib/x86_64-linux-gnu/libmemcached.so.11 /usr/lib/x86_64-linux-gnu/libmemcachedutil.so.2 /usr/lib/x86_64-linux-gnu/libMagickWand-6.Q16.so.2 /opt/php-5.6.8/bin/php /opt/php-5.6.8/include /opt/php-5.6.8/lib jailkit_chroot_cron_programs=/usr/bin/php /usr/bin/perl /usr/share/perl /usr/share/php +jailkit_chroot_authorized_keys_template=/root/.ssh/authorized_keys [vlogger] config_dir=/etc diff --git a/server/plugins-available/shelluser_jailkit_plugin.inc.php b/server/plugins-available/shelluser_jailkit_plugin.inc.php index 147d39d571..db1d2b676b 100755 --- a/server/plugins-available/shelluser_jailkit_plugin.inc.php +++ b/server/plugins-available/shelluser_jailkit_plugin.inc.php @@ -489,7 +489,8 @@ class shelluser_jailkit_plugin { if (!file_exists($sshkeys)){ // add root's key $app->file->mkdirs($sshdir, '0755'); - if(is_file('/root/.ssh/authorized_keys')) $app->system->file_put_contents($sshkeys, $app->system->file_get_contents('/root/.ssh/authorized_keys')); + $authorized_keys_template = $this->jailkit_config['jailkit_chroot_authorized_keys_template']; + if(is_file('/root/.ssh/authorized_keys')) $app->system->file_put_contents($sshkeys, $app->system->file_get_contents($authorized_keys_template)); // Remove duplicate keys $existing_keys = @file($sshkeys, FILE_IGNORE_NEW_LINES); -- GitLab From 061583cf13b53d5f99dc89a8bd3f9119d21acb5a Mon Sep 17 00:00:00 2001 From: Till Brehm <tbrehm@ispconfig.org> Date: Wed, 30 Jan 2019 12:18:33 +0100 Subject: [PATCH 005/215] Script to generate Let's encrypt certificates for the mail system. --- helper_scripts/fixcerts | 151 ++++++++++++++++++++++++++++++++++++++++ 1 file changed, 151 insertions(+) create mode 100644 helper_scripts/fixcerts diff --git a/helper_scripts/fixcerts b/helper_scripts/fixcerts new file mode 100644 index 0000000000..9136d1e715 --- /dev/null +++ b/helper_scripts/fixcerts @@ -0,0 +1,151 @@ + #!/bin/bash +##################################################################################### +# # +# Syntax: fixcerts DOMAIN # +# # +# Use: Extend Letsencrypt SSl certificates for commonly grouped services such as # +# Apache,Postfix,Dovecot using Certbot. Useful for keeping all client # +# applications referencing the same virtual domain name, such as auto-config # +# email clients on phones, i.e. mailuser@mydomain.TLD smtp.mydomain.TLD # +# imaps.mydomain.TLD instead of mailuser@mydomain.TLD mail.ISPmaildomain.TLD # +# Also useful when sending mail through services like Gmail that will # +# validate sender through a negotiated TLS encrypted connection. # +# # +# Ex: sh fixcerts myhosteddomain.com # +# # +# Prerequisites: # +# - A Letsencrypt certificate for the DOMAIN must already exist # +# - A seperate certificate each for Dovecot and Postfix were previously generated # +# - All new host names to add MUST already exist in DNS at least as a CNAME # +# - Edit the Dovecot/Postfix conf to use the alternate certificate # +# - Set the variable wr_file to a directory that certbot can read and write from # +# - Set the dom_cert=,dv_cert=,pf_cert=,dv_file=, and pf_file= variables # +# # +# In my case, I ran: # +# certbot certonly -webroot /usr/local/ispconfig/interface/acme -d dc.hrst.xyz # +# certbot certonly -webroot /usr/local/ispconfig/interface/acme -d pf.hrst.xyz # +# to create the separate Dovecot and Postscript certificates, then edited and # +# ran the script to extend those certificate, once per hosted domain # +# # +# If you use only one alternate certifcate for both mail services, set both dv_file # +# and pf_file to the same file name and set one of _cert files="" and # +# use the other. If you don't wish to add to a particular certificate, set the # +# variable ="", such as dom_cert # +# TODO: Pre-validate desired additions as already existing in DNS # +# Generate SRV Records and add to DNS to autoconfig clients # +# # +# Author: tad.hasse@gmail.com # +# # +##################################################################################### + +#bail out on error +set -e + +# Hostnames to add to the main domain certificate +dom_cert="webmail" + +# Hostnames to add to the Dovecot domain certificate +dv_cert="pop3s imap" + +# Hostnames to add to the Postfix domain certificate +pf_cert="mail smtp smtps" + +# Name of the certificate file that handles Dovecot +dv_file="dc.hrst.xyz" + +# Name of the certificate file that handles Postfix +pf_file="pf.hrst.xyz" + +# Writeable webroot for certbot (I use ISPConfig, +wr_file="/usr/local/ispconfig/interface/acme" + +new_cert="" +nanobot="" +affected_services="" + +if [ -z "$1" ] # Is parameter #1 zero length? + then + echo "-No DOMAIN specified" # Or no parameter passed. + exit 1 + fi + +#live_check='/etc/letsencrypt/live/'$1 +if [[ ! -d '/etc/letsencrypt/live/'$1 ]]; then + echo "- DOMAIN certificate for \"$1\" not found -" + exit 1 + fi + +if [[ ! -d '/etc/letsencrypt/live/'${dv_file} ]]; then + echo "- Dovecot/postoffice certificate" ${dv_file}" for \"$1\" not found -" + exit 1 + fi + +if [[ ! -d '/etc/letsencrypt/live/'${pf_file} ]]; then + echo "- Postfix/mail certificate" ${pf_file}" for \"$1\" not found -" + exit 1 + fi + +# Have certbot generate its current certificate list for use as input +certbot certificates >~/certfile + +# Extend base domain certificate which typically only contains the domain.TLD and www.domain.TLD +if [[ ! -z "${dom_cert}" ]]; then + echo + new_cert=$(echo $dom_cert| sed -e "s/ /.$1 /g" -e 's/ / -d /g' -e "s/$/.$1 /g" -e 's/^/-d /g') + echo "Adding" ${new_cert} " to "$1 + nanobot=$(grep -A1 "Certificate Name: "$1 certfile |awk -F': ' '{ {getline}; $1=""; print }'|sed 's/ / -d /g') + doit_cert=$(echo "certbot certonly --webroot -w ${wr_file}${nanobot} ${new_cert}") + ${doit_cert} + affected_services=${affected_services}+"A" +else + echo "Domain Certificate unaffected" + fi + +# Extend the Dovecot certificate +if [[ ! -z "${dv_cert}" ]]; then + echo + new_cert=$(echo $dv_cert| sed -e "s/ /.$1 /g" -e 's/ / -d /g' -e "s/$/.$1 /g" -e 's/^/-d /g') + echo "Adding" ${new_cert} " to "${dv_file} + nanobot=$(grep -A1 "Certificate Name: "${dv_file} certfile |awk -F': ' '{ {getline}; $1=""; print }'|sed 's/ / -d /g') + doit_cert=$(echo "certbot certonly --webroot -w ${wr_file}${nanobot} ${new_cert}") + ${doit_cert} + affected_services=${affected_services}+"D" +else + echo "Dovecot Certificate unaffected" + fi + +# Extend the Postscript certificate +if [[ ! -z "{$pf_cert}" ]]; then + echo + new_cert=$(echo $pf_cert| sed -e "s/ /.$1 /g" -e 's/ / -d /g' -e "s/$/.$1 /g" -e 's/^/-d /g') + echo "Adding" ${new_cert} " to " ${pf_file} + nanobot=$(grep -A1 "Certificate Name: "${pf_file} certfile |awk -F': ' '{ {getline}; $1=""; print }'|sed 's/ / -d /g') + doit_cert=$(echo "certbot certonly --webroot -w ${wr_file}${nanobot} ${new_cert}") + ${doit_cert} + affected_services=${affected_services}+"P" +else + echo "Postfix Certificate unaffected" + fi + + if [[ $affected_services == *"A"* ]]; then + echo "Remember to restart the httpd service" + fi + if [[ $affected_services == *"D"* ]]; then + echo "Remember to restart the dovecot/postoffice service" + fi + if [[ $affected_services == *"P"* ]]; then + echo "Remember to restart the postfix/sendmail service" + fi + +echo +echo +echo "Add the following SRV records to DNS for client setup for "$1 + if [[ $affected_services == *"D"* ]]; then + echo "_imaps._tcp."$1 "SRV 3600 4 60 993 imaps" + echo "_pop3s._tcp."$1 "SRV 3600 6 60 995 pop3s" + echo "_imap._tcp."$1 " SRV 3600 8 60 143 imap" + fi +if [[ $affected_services == *"P"* ]]; then + echo "_smtps._tcp."$1 "SRV 3600 8 60 465 smtps" + echo "_smtp._tcp."$1 " SRV 3600 10 60 587 smtp" + fi \ No newline at end of file -- GitLab From f3c28d373662a6b281e8d28284949adbc33a5a34 Mon Sep 17 00:00:00 2001 From: Webslice <webslice@bixels.nl> Date: Mon, 4 Feb 2019 10:35:45 +0100 Subject: [PATCH 006/215] Add support for chrooted php-fpm, implements #3220 --- install/sql/incremental/upd_0087.sql | 1 + .../web/sites/form/web_vhost_domain.tform.php | 6 +++++ .../sites/lib/lang/ar_web_vhost_domain.lng | 1 + .../sites/lib/lang/bg_web_vhost_domain.lng | 1 + .../sites/lib/lang/br_web_vhost_domain.lng | 1 + .../sites/lib/lang/ca_web_vhost_domain.lng | 1 + .../sites/lib/lang/cz_web_vhost_domain.lng | 1 + .../sites/lib/lang/de_web_vhost_domain.lng | 1 + .../sites/lib/lang/dk_web_vhost_domain.lng | 1 + .../sites/lib/lang/el_web_vhost_domain.lng | 1 + .../sites/lib/lang/en_web_vhost_domain.lng | 1 + .../sites/lib/lang/es_web_vhost_domain.lng | 1 + .../sites/lib/lang/fi_web_vhost_domain.lng | 1 + .../sites/lib/lang/fr_web_vhost_domain.lng | 1 + .../sites/lib/lang/hr_web_vhost_domain.lng | 1 + .../sites/lib/lang/hu_web_vhost_domain.lng | 1 + .../sites/lib/lang/id_web_vhost_domain.lng | 1 + .../sites/lib/lang/it_web_vhost_domain.lng | 1 + .../sites/lib/lang/ja_web_vhost_domain.lng | 1 + .../sites/lib/lang/nl_web_vhost_domain.lng | 1 + .../sites/lib/lang/pl_web_vhost_domain.lng | 1 + .../sites/lib/lang/pt_web_vhost_domain.lng | 1 + .../sites/lib/lang/ro_web_vhost_domain.lng | 1 + .../sites/lib/lang/ru_web_vhost_domain.lng | 1 + .../sites/lib/lang/se_web_vhost_domain.lng | 1 + .../sites/lib/lang/sk_web_vhost_domain.lng | 1 + .../sites/lib/lang/tr_web_vhost_domain.lng | 1 + .../templates/web_vhost_domain_advanced.htm | 6 +++++ server/conf/nginx_vhost.conf.master | 24 +++++++++++++++++++ server/conf/php_fpm_pool.conf.master | 5 ++++ server/conf/vhost.conf.master | 6 +++++ .../plugins-available/apache2_plugin.inc.php | 9 +++++++ server/plugins-available/nginx_plugin.inc.php | 9 +++++++ 33 files changed, 91 insertions(+) create mode 100644 install/sql/incremental/upd_0087.sql diff --git a/install/sql/incremental/upd_0087.sql b/install/sql/incremental/upd_0087.sql new file mode 100644 index 0000000000..e1b35b0387 --- /dev/null +++ b/install/sql/incremental/upd_0087.sql @@ -0,0 +1 @@ +ALTER TABLE `web_domain` ADD COLUMN `php_fpm_chroot` enum('n','y') NOT NULL DEFAULT 'n' AFTER `php_fpm_use_socket`; diff --git a/interface/web/sites/form/web_vhost_domain.tform.php b/interface/web/sites/form/web_vhost_domain.tform.php index be06d34634..e7698cbe87 100644 --- a/interface/web/sites/form/web_vhost_domain.tform.php +++ b/interface/web/sites/form/web_vhost_domain.tform.php @@ -772,6 +772,12 @@ if($_SESSION["s"]["user"]["typ"] == 'admin' 'default' => 'n', 'value' => array(0 => 'n', 1 => 'y') ), + 'php_fpm_chroot' => array ( + 'datatype' => 'VARCHAR', + 'formtype' => 'CHECKBOX', + 'default' => 'n', + 'value' => array(0 => 'n', 1 => 'y') + ), 'pm' => array ( 'datatype' => 'VARCHAR', 'formtype' => 'SELECT', diff --git a/interface/web/sites/lib/lang/ar_web_vhost_domain.lng b/interface/web/sites/lib/lang/ar_web_vhost_domain.lng index ff063e88c9..bfaf07f226 100644 --- a/interface/web/sites/lib/lang/ar_web_vhost_domain.lng +++ b/interface/web/sites/lib/lang/ar_web_vhost_domain.lng @@ -80,6 +80,7 @@ $wb['seo_redirect_txt'] = 'SEO Redirect'; $wb['non_www_to_www_txt'] = 'Non-www -> www'; $wb['www_to_non_www_txt'] = 'www -> non-www'; $wb['php_fpm_use_socket_txt'] = 'Use Socket For PHP-FPM'; +$wb['php_fpm_chroot_txt'] = 'Chroot PHP-FPM'; $wb['error_no_sni_txt'] = 'SNI for SSL is not activated on this server. You can enable only one SSL certificate on each IP address.'; $wb['python_txt'] = 'Python'; $wb['pm_max_children_txt'] = 'PHP-FPM pm.max_children'; diff --git a/interface/web/sites/lib/lang/bg_web_vhost_domain.lng b/interface/web/sites/lib/lang/bg_web_vhost_domain.lng index e1dce797cf..0c01cbfdac 100644 --- a/interface/web/sites/lib/lang/bg_web_vhost_domain.lng +++ b/interface/web/sites/lib/lang/bg_web_vhost_domain.lng @@ -79,6 +79,7 @@ $wb['seo_redirect_txt'] = 'SEO редирект'; $wb['non_www_to_www_txt'] = 'Non-www -> www'; $wb['www_to_non_www_txt'] = 'www -> non-www'; $wb['php_fpm_use_socket_txt'] = 'Използвай Ñокет за PHP-FPM'; +$wb['php_fpm_chroot_txt'] = 'Chroot PHP-FPM'; $wb['error_no_sni_txt'] = 'SNI for SSL is not activated on this server. You can enable only one SSL certificate on each IP address.'; $wb['python_txt'] = 'Python'; $wb['pm_max_children_txt'] = 'PHP-FPM pm.max_children'; diff --git a/interface/web/sites/lib/lang/br_web_vhost_domain.lng b/interface/web/sites/lib/lang/br_web_vhost_domain.lng index 171a34f95b..413863f1eb 100644 --- a/interface/web/sites/lib/lang/br_web_vhost_domain.lng +++ b/interface/web/sites/lib/lang/br_web_vhost_domain.lng @@ -79,6 +79,7 @@ $wb['seo_redirect_txt'] = 'Redirecionamento SEO'; $wb['non_www_to_www_txt'] = 'Diretivas Non-www -> www'; $wb['www_to_non_www_txt'] = 'Diretivas www -> non-www'; $wb['php_fpm_use_socket_txt'] = 'Usar soquete para o PHP-FPM'; +$wb['php_fpm_chroot_txt'] = 'Chroot PHP-FPM'; $wb['error_no_sni_txt'] = 'O SNI para SSL não está ativo neste servidor. Você só pode habilitar um certificado para cada endereço IP.'; $wb['python_txt'] = 'Python'; $wb['pm_max_children_txt'] = 'Diretiva PHP-FPM pm.max_children'; diff --git a/interface/web/sites/lib/lang/ca_web_vhost_domain.lng b/interface/web/sites/lib/lang/ca_web_vhost_domain.lng index c7cb4ac849..c9cdb68c9a 100644 --- a/interface/web/sites/lib/lang/ca_web_vhost_domain.lng +++ b/interface/web/sites/lib/lang/ca_web_vhost_domain.lng @@ -82,6 +82,7 @@ $wb['seo_redirect_txt'] = 'SEO Redirect'; $wb['non_www_to_www_txt'] = 'Non-www -> www'; $wb['www_to_non_www_txt'] = 'www -> non-www'; $wb['php_fpm_use_socket_txt'] = 'Use Socket For PHP-FPM'; +$wb['php_fpm_chroot_txt'] = 'Chroot PHP-FPM'; $wb['error_no_sni_txt'] = 'SNI for SSL is not activated on this server. You can enable only one SSL certificate on each IP address.'; $wb['python_txt'] = 'Python'; $wb['perl_txt'] = 'Perl'; 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 6353f713f0..9f40aaec68 100644 --- a/interface/web/sites/lib/lang/cz_web_vhost_domain.lng +++ b/interface/web/sites/lib/lang/cz_web_vhost_domain.lng @@ -83,6 +83,7 @@ $wb['seo_redirect_txt'] = 'SEO pÅ™esmÄ›rovánÃ'; $wb['non_www_to_www_txt'] = 'Non-www -> www'; $wb['www_to_non_www_txt'] = 'www -> non-www'; $wb['php_fpm_use_socket_txt'] = 'Use Socket For PHP-FPM'; +$wb['php_fpm_chroot_txt'] = 'Chroot PHP-FPM'; $wb['error_no_sni_txt'] = 'SNI for SSL is not activated on this server. You can enable only one SSL certificate on each IP address.'; $wb['python_txt'] = 'Python'; $wb['pm_max_children_txt'] = 'PHP-FPM pm.max_children'; diff --git a/interface/web/sites/lib/lang/de_web_vhost_domain.lng b/interface/web/sites/lib/lang/de_web_vhost_domain.lng index bf29fb953f..1b334bb298 100644 --- a/interface/web/sites/lib/lang/de_web_vhost_domain.lng +++ b/interface/web/sites/lib/lang/de_web_vhost_domain.lng @@ -82,6 +82,7 @@ $wb['seo_redirect_txt'] = 'SEO Redirect'; $wb['non_www_to_www_txt'] = 'Nicht-www -> www'; $wb['www_to_non_www_txt'] = 'www -> Nicht-www'; $wb['php_fpm_use_socket_txt'] = 'Benutze Socket für PHP-FPM'; +$wb['php_fpm_chroot_txt'] = 'Chroot PHP-FPM'; $wb['ipv6_address_txt'] = 'IPv6 Adresse'; $wb['error_no_sni_txt'] = 'SNI für SSL ist auf diesem Server nicht aktiviert. Sie können daher nur ein SSL Zertifikat pro IP Adresse eintragen.'; $wb['python_txt'] = 'Python'; diff --git a/interface/web/sites/lib/lang/dk_web_vhost_domain.lng b/interface/web/sites/lib/lang/dk_web_vhost_domain.lng index c7cb4ac849..c9cdb68c9a 100644 --- a/interface/web/sites/lib/lang/dk_web_vhost_domain.lng +++ b/interface/web/sites/lib/lang/dk_web_vhost_domain.lng @@ -82,6 +82,7 @@ $wb['seo_redirect_txt'] = 'SEO Redirect'; $wb['non_www_to_www_txt'] = 'Non-www -> www'; $wb['www_to_non_www_txt'] = 'www -> non-www'; $wb['php_fpm_use_socket_txt'] = 'Use Socket For PHP-FPM'; +$wb['php_fpm_chroot_txt'] = 'Chroot PHP-FPM'; $wb['error_no_sni_txt'] = 'SNI for SSL is not activated on this server. You can enable only one SSL certificate on each IP address.'; $wb['python_txt'] = 'Python'; $wb['perl_txt'] = 'Perl'; diff --git a/interface/web/sites/lib/lang/el_web_vhost_domain.lng b/interface/web/sites/lib/lang/el_web_vhost_domain.lng index 7de00581c7..1d238b64e9 100644 --- a/interface/web/sites/lib/lang/el_web_vhost_domain.lng +++ b/interface/web/sites/lib/lang/el_web_vhost_domain.lng @@ -80,6 +80,7 @@ $wb['seo_redirect_txt'] = 'ΑνακατεÏθυνση SEO'; $wb['non_www_to_www_txt'] = 'Non-www -> www'; $wb['www_to_non_www_txt'] = 'www -> non-www'; $wb['php_fpm_use_socket_txt'] = 'Use Socket For PHP-FPM'; +$wb['php_fpm_chroot_txt'] = 'Chroot PHP-FPM'; $wb['error_no_sni_txt'] = 'SNI for SSL is not activated on this server. You can enable only one SSL certificate on each IP address.'; $wb['python_txt'] = 'Python'; $wb['pm_max_children_txt'] = 'PHP-FPM pm.max_children'; 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 b508e57836..97d1c932ca 100644 --- a/interface/web/sites/lib/lang/en_web_vhost_domain.lng +++ b/interface/web/sites/lib/lang/en_web_vhost_domain.lng @@ -82,6 +82,7 @@ $wb['seo_redirect_txt'] = 'SEO Redirect'; $wb['non_www_to_www_txt'] = 'Non-www -> www'; $wb['www_to_non_www_txt'] = 'www -> non-www'; $wb['php_fpm_use_socket_txt'] = 'Use Socket For PHP-FPM'; +$wb['php_fpm_chroot_txt'] = 'Chroot PHP-FPM'; $wb['error_no_sni_txt'] = 'SNI for SSL is not activated on this server. You can enable only one SSL certificate on each IP address.'; $wb['python_txt'] = 'Python'; $wb['perl_txt'] = 'Perl'; diff --git a/interface/web/sites/lib/lang/es_web_vhost_domain.lng b/interface/web/sites/lib/lang/es_web_vhost_domain.lng index 398aef500f..8421966c0e 100644 --- a/interface/web/sites/lib/lang/es_web_vhost_domain.lng +++ b/interface/web/sites/lib/lang/es_web_vhost_domain.lng @@ -78,6 +78,7 @@ $wb['seo_redirect_txt'] = 'Redirección SEO'; $wb['non_www_to_www_txt'] = 'Non-www -> www'; $wb['www_to_non_www_txt'] = 'www -> non-www'; $wb['php_fpm_use_socket_txt'] = 'Usar Socket para PHP-FPM'; +$wb['php_fpm_chroot_txt'] = 'Chroot PHP-FPM'; $wb['error_no_sni_txt'] = 'SNI para SSL no está activado en este servidor. Sólo es posible activar un certificado SSL en cada dirección IP.'; $wb['python_txt'] = 'Python'; $wb['pm_max_children_txt'] = 'PHP-FPM pm.max_children'; diff --git a/interface/web/sites/lib/lang/fi_web_vhost_domain.lng b/interface/web/sites/lib/lang/fi_web_vhost_domain.lng index 94ba05bdd1..1a4d753b56 100644 --- a/interface/web/sites/lib/lang/fi_web_vhost_domain.lng +++ b/interface/web/sites/lib/lang/fi_web_vhost_domain.lng @@ -79,6 +79,7 @@ $wb['seo_redirect_txt'] = 'SEO Redirect'; $wb['non_www_to_www_txt'] = 'Non-www -> www'; $wb['www_to_non_www_txt'] = 'www -> non-www'; $wb['php_fpm_use_socket_txt'] = 'Use Socket For PHP-FPM'; +$wb['php_fpm_chroot_txt'] = 'Chroot PHP-FPM'; $wb['error_no_sni_txt'] = 'SNI for SSL is not activated on this server. You can enable only one SSL certificate on each IP address.'; $wb['python_txt'] = 'Python'; $wb['pm_max_children_txt'] = 'PHP-FPM pm.max_children'; diff --git a/interface/web/sites/lib/lang/fr_web_vhost_domain.lng b/interface/web/sites/lib/lang/fr_web_vhost_domain.lng index 97a0dd0ac0..ab34cdf35e 100644 --- a/interface/web/sites/lib/lang/fr_web_vhost_domain.lng +++ b/interface/web/sites/lib/lang/fr_web_vhost_domain.lng @@ -79,6 +79,7 @@ $wb['seo_redirect_txt'] = 'Redirection SEO'; $wb['non_www_to_www_txt'] = 'Non-www -> www'; $wb['www_to_non_www_txt'] = 'www -> non-www'; $wb['php_fpm_use_socket_txt'] = 'Utiliser Socket pour PHP-FPM'; +$wb['php_fpm_chroot_txt'] = 'Chroot PHP-FPM'; $wb['error_no_sni_txt'] = 'SNI pour SSL n\'est pas activé sur ce serveur. Vous ne pouvez activer qu\'un seul certificat SSL par adresse IP.'; $wb['python_txt'] = 'Python'; $wb['pm_max_children_txt'] = 'PHP-FPM pm.max_children'; diff --git a/interface/web/sites/lib/lang/hr_web_vhost_domain.lng b/interface/web/sites/lib/lang/hr_web_vhost_domain.lng index 54d5e1f3bb..0ef7e93851 100644 --- a/interface/web/sites/lib/lang/hr_web_vhost_domain.lng +++ b/interface/web/sites/lib/lang/hr_web_vhost_domain.lng @@ -79,6 +79,7 @@ $wb['seo_redirect_txt'] = 'SEO redirekcija'; $wb['non_www_to_www_txt'] = 'Non-www -> www'; $wb['www_to_non_www_txt'] = 'www -> non-www'; $wb['php_fpm_use_socket_txt'] = 'Koristi socket za PHP-FPM'; +$wb['php_fpm_chroot_txt'] = 'Chroot PHP-FPM'; $wb['error_no_sni_txt'] = 'SNI za SSL nije aktiviran na ovom serveru. Možete omogućiti samo jedan SSL certifikat na svakoj IP adresi.'; $wb['python_txt'] = 'Python'; $wb['pm_max_children_txt'] = 'PHP-FPM pm.max_children'; diff --git a/interface/web/sites/lib/lang/hu_web_vhost_domain.lng b/interface/web/sites/lib/lang/hu_web_vhost_domain.lng index 13e1c54b53..da4391a926 100644 --- a/interface/web/sites/lib/lang/hu_web_vhost_domain.lng +++ b/interface/web/sites/lib/lang/hu_web_vhost_domain.lng @@ -79,6 +79,7 @@ $wb['seo_redirect_txt'] = 'SEO Redirect'; $wb['non_www_to_www_txt'] = 'Non-www -> www'; $wb['www_to_non_www_txt'] = 'www -> non-www'; $wb['php_fpm_use_socket_txt'] = 'Use Socket For PHP-FPM'; +$wb['php_fpm_chroot_txt'] = 'Chroot PHP-FPM'; $wb['error_no_sni_txt'] = 'SNI for SSL is not activated on this server. You can enable only one SSL certificate on each IP address.'; $wb['python_txt'] = 'Python'; $wb['pm_max_children_txt'] = 'PHP-FPM pm.max_children'; diff --git a/interface/web/sites/lib/lang/id_web_vhost_domain.lng b/interface/web/sites/lib/lang/id_web_vhost_domain.lng index 10b32ea1cc..6d16061cfe 100644 --- a/interface/web/sites/lib/lang/id_web_vhost_domain.lng +++ b/interface/web/sites/lib/lang/id_web_vhost_domain.lng @@ -79,6 +79,7 @@ $wb['seo_redirect_txt'] = 'SEO Redirect'; $wb['non_www_to_www_txt'] = 'Non-www -> www'; $wb['www_to_non_www_txt'] = 'www -> non-www'; $wb['php_fpm_use_socket_txt'] = 'Use Socket For PHP-FPM'; +$wb['php_fpm_chroot_txt'] = 'Chroot PHP-FPM'; $wb['error_no_sni_txt'] = 'SNI for SSL is not activated on this server. You can enable only one SSL certificate on each IP address.'; $wb['python_txt'] = 'Python'; $wb['pm_max_children_txt'] = 'PHP-FPM pm.max_children'; diff --git a/interface/web/sites/lib/lang/it_web_vhost_domain.lng b/interface/web/sites/lib/lang/it_web_vhost_domain.lng index 831b29c5d0..adb557f390 100644 --- a/interface/web/sites/lib/lang/it_web_vhost_domain.lng +++ b/interface/web/sites/lib/lang/it_web_vhost_domain.lng @@ -80,6 +80,7 @@ $wb['seo_redirect_txt'] = 'SEO Redirect'; $wb['non_www_to_www_txt'] = 'Non-www -> www'; $wb['www_to_non_www_txt'] = 'www -> non-www'; $wb['php_fpm_use_socket_txt'] = 'Use Socket For PHP-FPM'; +$wb['php_fpm_chroot_txt'] = 'Chroot PHP-FPM'; $wb['error_no_sni_txt'] = 'SNI for SSL is not activated on this server. You can enable only one SSL certificate on each IP address.'; $wb['python_txt'] = 'Python'; $wb['pm_max_children_txt'] = 'PHP-FPM pm.max_children'; diff --git a/interface/web/sites/lib/lang/ja_web_vhost_domain.lng b/interface/web/sites/lib/lang/ja_web_vhost_domain.lng index 8cf4971860..9dd8cd7aff 100644 --- a/interface/web/sites/lib/lang/ja_web_vhost_domain.lng +++ b/interface/web/sites/lib/lang/ja_web_vhost_domain.lng @@ -79,6 +79,7 @@ $wb['seo_redirect_txt'] = 'SEO Redirect'; $wb['non_www_to_www_txt'] = 'Non-www -> www'; $wb['www_to_non_www_txt'] = 'www -> non-www'; $wb['php_fpm_use_socket_txt'] = 'Use Socket For PHP-FPM'; +$wb['php_fpm_chroot_txt'] = 'Chroot PHP-FPM'; $wb['error_no_sni_txt'] = 'SNI for SSL is not activated on this server. You can enable only one SSL certificate on each IP address.'; $wb['python_txt'] = 'Python'; $wb['pm_max_children_txt'] = 'PHP-FPM pm.max_children'; diff --git a/interface/web/sites/lib/lang/nl_web_vhost_domain.lng b/interface/web/sites/lib/lang/nl_web_vhost_domain.lng index 1952769faf..1301001bd1 100644 --- a/interface/web/sites/lib/lang/nl_web_vhost_domain.lng +++ b/interface/web/sites/lib/lang/nl_web_vhost_domain.lng @@ -79,6 +79,7 @@ $wb['seo_redirect_txt'] = 'SEO Redirect'; $wb['non_www_to_www_txt'] = 'Non-www -> www'; $wb['www_to_non_www_txt'] = 'www -> non-www'; $wb['php_fpm_use_socket_txt'] = 'Use Socket For PHP-FPM'; +$wb['php_fpm_chroot_txt'] = 'Chroot PHP-FPM'; $wb['error_no_sni_txt'] = 'SNI for SSL is not activated on this server. You can enable only one SSL certificate on each IP address.'; $wb['python_txt'] = 'Python'; $wb['pm_max_children_txt'] = 'PHP-FPM pm.max_children'; diff --git a/interface/web/sites/lib/lang/pl_web_vhost_domain.lng b/interface/web/sites/lib/lang/pl_web_vhost_domain.lng index f3aa864f69..e6fd601125 100644 --- a/interface/web/sites/lib/lang/pl_web_vhost_domain.lng +++ b/interface/web/sites/lib/lang/pl_web_vhost_domain.lng @@ -79,6 +79,7 @@ $wb['seo_redirect_txt'] = 'Przekierowanie SEO'; $wb['non_www_to_www_txt'] = 'bez www -> www'; $wb['www_to_non_www_txt'] = 'www -> bez www'; $wb['php_fpm_use_socket_txt'] = 'Użyj gniazda dla PHP-FPM'; +$wb['php_fpm_chroot_txt'] = 'Chroot PHP-FPM'; $wb['error_no_sni_txt'] = 'SNI dla SSL nie jest aktywowane na tym serwerze. Możesz utworzyć tylko jeden certyfikat SSL dla jednego adresu IP.'; $wb['python_txt'] = 'Python'; $wb['pm_max_children_txt'] = 'PHP-FPM pm.max_children'; diff --git a/interface/web/sites/lib/lang/pt_web_vhost_domain.lng b/interface/web/sites/lib/lang/pt_web_vhost_domain.lng index dcbdf40864..a33ac11fc1 100644 --- a/interface/web/sites/lib/lang/pt_web_vhost_domain.lng +++ b/interface/web/sites/lib/lang/pt_web_vhost_domain.lng @@ -79,6 +79,7 @@ $wb['seo_redirect_txt'] = 'SEO Redirect'; $wb['non_www_to_www_txt'] = 'Non-www -> www'; $wb['www_to_non_www_txt'] = 'www -> non-www'; $wb['php_fpm_use_socket_txt'] = 'Use Socket For PHP-FPM'; +$wb['php_fpm_chroot_txt'] = 'Chroot PHP-FPM'; $wb['error_no_sni_txt'] = 'SNI for SSL is not activated on this server. You can enable only one SSL certificate on each IP address.'; $wb['python_txt'] = 'Python'; $wb['pm_max_children_txt'] = 'PHP-FPM pm.max_children'; diff --git a/interface/web/sites/lib/lang/ro_web_vhost_domain.lng b/interface/web/sites/lib/lang/ro_web_vhost_domain.lng index d93152e24e..cb5fc4d82b 100644 --- a/interface/web/sites/lib/lang/ro_web_vhost_domain.lng +++ b/interface/web/sites/lib/lang/ro_web_vhost_domain.lng @@ -80,6 +80,7 @@ $wb['seo_redirect_txt'] = 'SEO Redirect'; $wb['non_www_to_www_txt'] = 'Non-www -> www'; $wb['www_to_non_www_txt'] = 'www -> non-www'; $wb['php_fpm_use_socket_txt'] = 'Use Socket For PHP-FPM'; +$wb['php_fpm_chroot_txt'] = 'Chroot PHP-FPM'; $wb['error_no_sni_txt'] = 'SNI for SSL is not activated on this server. You can enable only one SSL certificate on each IP address.'; $wb['python_txt'] = 'Python'; $wb['pm_max_children_txt'] = 'PHP-FPM pm.max_children'; diff --git a/interface/web/sites/lib/lang/ru_web_vhost_domain.lng b/interface/web/sites/lib/lang/ru_web_vhost_domain.lng index f525fe2025..b8a3b41759 100644 --- a/interface/web/sites/lib/lang/ru_web_vhost_domain.lng +++ b/interface/web/sites/lib/lang/ru_web_vhost_domain.lng @@ -79,6 +79,7 @@ $wb['seo_redirect_txt'] = 'SEO редирект'; $wb['non_www_to_www_txt'] = 'Без-www -> www'; $wb['www_to_non_www_txt'] = 'www -> без-www'; $wb['php_fpm_use_socket_txt'] = 'ИÑпользовать Ñокет Ð´Ð»Ñ PHP-FPM'; +$wb['php_fpm_chroot_txt'] = 'Chroot PHP-FPM'; $wb['error_no_sni_txt'] = 'SNI Ð´Ð»Ñ SSL не активирован на Ñтом Ñервере. Ð’Ñ‹ можете включить только один SSL Ñертификат на каждом IP-адреÑе.'; $wb['python_txt'] = 'Python'; $wb['pm_max_children_txt'] = 'PHP-FPM pm.max_children'; diff --git a/interface/web/sites/lib/lang/se_web_vhost_domain.lng b/interface/web/sites/lib/lang/se_web_vhost_domain.lng index d8b671daea..2a67966577 100644 --- a/interface/web/sites/lib/lang/se_web_vhost_domain.lng +++ b/interface/web/sites/lib/lang/se_web_vhost_domain.lng @@ -80,6 +80,7 @@ $wb['seo_redirect_txt'] = 'SEO Redirect'; $wb['non_www_to_www_txt'] = 'Non-www -> www'; $wb['www_to_non_www_txt'] = 'www -> non-www'; $wb['php_fpm_use_socket_txt'] = 'Use Socket For PHP-FPM'; +$wb['php_fpm_chroot_txt'] = 'Chroot PHP-FPM'; $wb['error_no_sni_txt'] = 'SNI for SSL is not activated on this server. You can enable only one SSL certificate on each IP address.'; $wb['python_txt'] = 'Python'; $wb['pm_max_children_txt'] = 'PHP-FPM pm.max_children'; diff --git a/interface/web/sites/lib/lang/sk_web_vhost_domain.lng b/interface/web/sites/lib/lang/sk_web_vhost_domain.lng index cdb1c2627f..2d354ce9dc 100644 --- a/interface/web/sites/lib/lang/sk_web_vhost_domain.lng +++ b/interface/web/sites/lib/lang/sk_web_vhost_domain.lng @@ -79,6 +79,7 @@ $wb['seo_redirect_txt'] = 'SEO Redirect'; $wb['non_www_to_www_txt'] = 'Non-www -> www'; $wb['www_to_non_www_txt'] = 'www -> non-www'; $wb['php_fpm_use_socket_txt'] = 'Use Socket For PHP-FPM'; +$wb['php_fpm_chroot_txt'] = 'Chroot PHP-FPM'; $wb['error_no_sni_txt'] = 'SNI for SSL is not activated on this server. You can enable only one SSL certificate on each IP address.'; $wb['python_txt'] = 'Python'; $wb['pm_max_children_txt'] = 'PHP-FPM pm.max_children'; diff --git a/interface/web/sites/lib/lang/tr_web_vhost_domain.lng b/interface/web/sites/lib/lang/tr_web_vhost_domain.lng index 52b86ba657..8a04a244e6 100644 --- a/interface/web/sites/lib/lang/tr_web_vhost_domain.lng +++ b/interface/web/sites/lib/lang/tr_web_vhost_domain.lng @@ -81,6 +81,7 @@ $wb['seo_redirect_txt'] = 'AMD Yönlendirme'; $wb['non_www_to_www_txt'] = 'Non-www -> www'; $wb['www_to_non_www_txt'] = 'www -> non-www'; $wb['php_fpm_use_socket_txt'] = 'PHP-FPM İçin Soket Kullanılsın'; +$wb['php_fpm_chroot_txt'] = 'Chroot PHP-FPM'; $wb['error_no_sni_txt'] = 'Bu sunucuda SSL için SNI etkinleÅŸtirilmemiÅŸ. Bir IP adresi için yalnız bir SSL sertifikası etkinleÅŸtirebilirsiniz.'; $wb['python_txt'] = 'Python'; $wb['perl_txt'] = 'Perl'; diff --git a/interface/web/sites/templates/web_vhost_domain_advanced.htm b/interface/web/sites/templates/web_vhost_domain_advanced.htm index 1def0ecb65..0b5ddfbd8b 100644 --- a/interface/web/sites/templates/web_vhost_domain_advanced.htm +++ b/interface/web/sites/templates/web_vhost_domain_advanced.htm @@ -57,6 +57,12 @@ {tmpl_var name='php_fpm_use_socket'} </div> </div> + <div class="form-group"> + <label class="col-sm-3 control-label">{tmpl_var name='php_fpm_chroot_txt'}</label> + <div class="col-sm-9"> + {tmpl_var name='php_fpm_chroot'} + </div> + </div> <div class="form-group"> <label for="pm" class="col-sm-3 control-label">{tmpl_var name='pm_txt'}</label> <div class="col-sm-9"><select name="pm" id="pm" class="form-control"> diff --git a/server/conf/nginx_vhost.conf.master b/server/conf/nginx_vhost.conf.master index 1fd98a5899..7a4e743797 100644 --- a/server/conf/nginx_vhost.conf.master +++ b/server/conf/nginx_vhost.conf.master @@ -173,7 +173,13 @@ server { fastcgi_pass unix:<tmpl_var name='fpm_socket'>; </tmpl_if> fastcgi_index index.php; +<tmpl_if name='php_fpm_chroot' op='==' value='y'> + fastcgi_param DOCUMENT_ROOT /web; + fastcgi_param HOME /web; + fastcgi_param SCRIPT_FILENAME /web$fastcgi_script_name; +<tmpl_else> fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; +</tmpl_if> #fastcgi_param PATH_INFO $fastcgi_script_name; fastcgi_intercept_errors on; } @@ -184,7 +190,13 @@ server { include /etc/nginx/fastcgi_params; fastcgi_pass unix:/var/run/hhvm/hhvm.<tmpl_var name='system_user'>.sock; fastcgi_index index.php; +<tmpl_if name='php_fpm_chroot'> + fastcgi_param DOCUMENT_ROOT /web; + fastcgi_param HOME /web; + fastcgi_param SCRIPT_FILENAME /web$fastcgi_script_name; +<tmpl_else> fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; +</tmpl_if> #fastcgi_param PATH_INFO $fastcgi_script_name; fastcgi_intercept_errors on; error_page 500 501 502 503 = @phpfallback; @@ -200,7 +212,13 @@ server { fastcgi_pass unix:<tmpl_var name='fpm_socket'>; </tmpl_if> fastcgi_index index.php; +<tmpl_if name='php_fpm_chroot'> + fastcgi_param DOCUMENT_ROOT /web; + fastcgi_param HOME /web; + fastcgi_param SCRIPT_FILENAME /web$fastcgi_script_name; +<tmpl_else> fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; +</tmpl_if> #fastcgi_param PATH_INFO $fastcgi_script_name; fastcgi_intercept_errors on; } @@ -220,7 +238,13 @@ server { gzip off; fastcgi_pass unix:/var/run/fcgiwrap.socket; fastcgi_index index.cgi; +<tmpl_if name='php_fpm_chroot'> + fastcgi_param DOCUMENT_ROOT /web; + fastcgi_param HOME /web; + fastcgi_param SCRIPT_FILENAME /web$fastcgi_script_name; +<tmpl_else> fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; +</tmpl_if> fastcgi_intercept_errors on; } </tmpl_if> diff --git a/server/conf/php_fpm_pool.conf.master b/server/conf/php_fpm_pool.conf.master index fd7e996a76..8081c994ae 100644 --- a/server/conf/php_fpm_pool.conf.master +++ b/server/conf/php_fpm_pool.conf.master @@ -27,6 +27,11 @@ pm.process_idle_timeout = <tmpl_var name='pm_process_idle_timeout'>s; pm.max_requests = <tmpl_var name='pm_max_requests'> chdir = / +<tmpl_if name='php_fpm_chroot'> +chroot = <tmpl_var name='php_fpm_chroot_dir'> +php_admin_value[doc_root] = /web +php_admin_value[cgi.fix_pathinfo] = 0 +</tmpl_if> env[HOSTNAME] = $HOSTNAME env[TMP] = <tmpl_var name='document_root'>/tmp diff --git a/server/conf/vhost.conf.master b/server/conf/vhost.conf.master index a6fd2f95b1..1426961bb3 100644 --- a/server/conf/vhost.conf.master +++ b/server/conf/vhost.conf.master @@ -377,6 +377,12 @@ </tmpl_if> </IfModule> <IfModule mod_proxy_fcgi.c> +<tmpl_if name='php_fpm_chroot' op='==' value='y'> + ProxyFCGISetEnvIf "true" DOCUMENT_ROOT "/web" + ProxyFCGISetEnvIf "true" CONTEXT_DOCUMENT_ROOT "%{reqenv:DOCUMENT_ROOT}" + ProxyFCGISetEnvIf "true" HOME "%{reqenv:DOCUMENT_ROOT}" + ProxyFCGISetEnvIf "true" SCRIPT_FILENAME "%{reqenv:DOCUMENT_ROOT}%{reqenv:SCRIPT_NAME}" +</tmpl_if> <tmpl_if name='use_tcp'> #ProxyPassMatch ^/(.*\.php[345]?(/.*)?)$ fcgi://127.0.0.1:<tmpl_var name='fpm_port'><tmpl_var name='web_document_root'>/$1 <Directory {tmpl_var name='web_document_root'}> diff --git a/server/plugins-available/apache2_plugin.inc.php b/server/plugins-available/apache2_plugin.inc.php index bfa4526fc3..dad2a26f3e 100644 --- a/server/plugins-available/apache2_plugin.inc.php +++ b/server/plugins-available/apache2_plugin.inc.php @@ -1580,6 +1580,7 @@ class apache2_plugin { } $tpl->setVar('use_tcp', $use_tcp); $tpl->setVar('use_socket', $use_socket); + $tpl->setVar('php_fpm_chroot', $data['new']['php_fpm_chroot']); $fpm_socket = $socket_dir.$pool_name.'.sock'; $tpl->setVar('fpm_socket', $fpm_socket); $tpl->setVar('fpm_port', $web_config['php_fpm_start_port'] + $data['new']['domain_id'] - 1); @@ -3110,6 +3111,14 @@ class apache2_plugin { $tpl->setVar('enable_php_open_basedir', ';'); } + // Chrooted PHP-FPM + if ($data['new']['php_fpm_chroot'] === 'y') { + $tpl->setVar('php_fpm_chroot', $data['new']['php_fpm_chroot']); + $tpl->setVar('php_fpm_chroot_dir', $data['new']['document_root']); + $tpl->setVar('php_open_basedir', str_replace($tpl->getVar('document_root'), '', $tpl->getVar('php_open_basedir'))); + $tpl->setVar('document_root', ''); + } + // Custom php.ini settings $final_php_ini_settings = array(); $custom_php_ini_settings = trim($data['new']['custom_php_ini']); diff --git a/server/plugins-available/nginx_plugin.inc.php b/server/plugins-available/nginx_plugin.inc.php index 4df2f84317..fb9712b1e6 100644 --- a/server/plugins-available/nginx_plugin.inc.php +++ b/server/plugins-available/nginx_plugin.inc.php @@ -1041,6 +1041,7 @@ class nginx_plugin { } $tpl->setVar('use_tcp', $use_tcp); $tpl->setVar('use_socket', $use_socket); + $tpl->setVar('php_fpm_chroot', $data['new']['php_fpm_chroot']); $fpm_socket = $socket_dir.$pool_name.'.sock'; $tpl->setVar('fpm_socket', $fpm_socket); $tpl->setVar('rnd_php_dummy_file', '/'.md5(uniqid(microtime(), 1)).'.htm'); @@ -2743,6 +2744,14 @@ class nginx_plugin { $tpl->setVar('enable_php_open_basedir', ';'); } + // Chrooted PHP-FPM + if ($data['new']['php_fpm_chroot'] === 'y') { + $tpl->setVar('php_fpm_chroot', $data['new']['php_fpm_chroot']); + $tpl->setVar('php_fpm_chroot_dir', $data['new']['document_root']); + $tpl->setVar('php_open_basedir', str_replace($tpl->getVar('document_root'), '', $tpl->getVar('php_open_basedir'))); + $tpl->setVar('document_root', ''); + } + // Custom php.ini settings $final_php_ini_settings = array(); $custom_php_ini_settings = trim($data['new']['custom_php_ini']); -- GitLab From 4ec880f36ac90b5919e1e12b06fc81eb7508a239 Mon Sep 17 00:00:00 2001 From: Webslice <webslice@bixels.nl> Date: Mon, 14 Jan 2019 20:16:44 +0100 Subject: [PATCH 007/215] Add incron_plugin, fixes #5218 --- .../plugins-available/incron_plugin.inc.php | 162 ++++++++++++++++++ 1 file changed, 162 insertions(+) create mode 100644 server/plugins-available/incron_plugin.inc.php diff --git a/server/plugins-available/incron_plugin.inc.php b/server/plugins-available/incron_plugin.inc.php new file mode 100644 index 0000000000..eddcee169a --- /dev/null +++ b/server/plugins-available/incron_plugin.inc.php @@ -0,0 +1,162 @@ +<?php + +/** + * If your websites use PHP-FPM and you have incron installed, you can use this plugin to automatically add incron + * configuration which will take care of reloading the php-fpm pool when the file /private/php-fpm.reload is touched. + * Projects which use deployment tools can use this to reload php-fpm to clear the opcache at deploy time, without + * requiring superuser privileges. + */ +class incron_plugin { + + var $plugin_name = 'incron_plugin'; + var $class_name = 'incron_plugin'; + + function onInstall() { + global $conf; + + if ($conf['services']['web'] !== true) { + return false; + } + + if ($this->isIncronAvailable() === false) { + return false; + } + + return true; + } + + function onLoad() { + global $app; + + $app->plugins->registerEvent('web_domain_insert', $this->plugin_name, 'incronInsert'); + $app->plugins->registerEvent('web_domain_update', $this->plugin_name, 'incronUpdate'); + $app->plugins->registerEvent('web_domain_delete', $this->plugin_name, 'incronDelete'); + } + + function incronInsert($eventName, $data) { + $this->setup($data['new']); + } + + function incronUpdate($eventName, $data) { + global $app; + + if ($data['new']['document_root'] === $data['old']['document_root']) { + $app->log('Document root unchanged. Not updating incron configuration.', LOGLEVEL_DEBUG); + + return; + } + + $this->teardown($data['old']); + $this->setup($data['new']); + } + + function incronDelete($eventName, $data) { + $this->teardown($data['old']); + } + + private function setup($data) + { + $triggerFile = $this->getTriggerFilePath($data['document_root']); + + $this->createTriggerFile($triggerFile, $data['system_user'], $data['system_group']); + $this->createIncronConfiguration( + $triggerFile, + $data['system_user'], + $data['fastcgi_php_version'] + ); + + $this->restartIncronService(); + } + + private function teardown($data) { + $this->deleteIncronConfiguration($data['system_user']); + $this->deleteTriggerFile($this->getTriggerFilePath($data['document_root'])); + + $file = sprintf('/etc/incron.d/%s.conf', $data['system_user']); + + @unlink($file); + + $this->restartIncronService(); + } + + private function isIncronAvailable() { + exec('which incrond', $output, $retval); + + return $retval === 0; + } + + private function createIncronConfiguration($triggerFile, $systemUser, $fastcgiPhpVersion) { + global $app; + + $phpService = $this->getPhpService($fastcgiPhpVersion); + $configFile = $this->getIncronConfigurationFilePath($systemUser); + + $content = sprintf( + '%s %s %s', + $triggerFile, + 'IN_CLOSE_WRITE', + $app->system->getinitcommand($phpService, 'reload') + ); + + file_put_contents($configFile, $content); + + $app->log(sprintf('Created incron configuration "%s"', $configFile), LOGLEVEL_DEBUG); + } + + private function createTriggerFile($triggerFile, $systemUser, $systemGroup) { + global $app; + + if (!file_exists($triggerFile)) { + exec(sprintf('touch %s', $triggerFile)); + } + + exec(sprintf('chown %s:%s %s', $systemUser, $systemGroup, $triggerFile)); + + $app->log(sprintf('Ensured incron trigger file "%s"', $triggerFile), LOGLEVEL_DEBUG); + } + + private function deleteIncronConfiguration($systemUser) { + global $app; + + $configFile = $this->getIncronConfigurationFilePath($systemUser); + unlink($configFile); + + $app->log(sprintf('Deleted incron configuration "%s"', $configFile), LOGLEVEL_DEBUG); + } + + private function deleteTriggerFile($triggerFile) { + global $app; + + unlink($triggerFile); + + $app->log(sprintf('Deleted incron trigger file "%s"', $triggerFile), LOGLEVEL_DEBUG); + } + + private function getTriggerFilePath($documentRoot) { + return sprintf('%s/private/php-fpm.reload', $documentRoot); + } + + private function getIncronConfigurationFilePath($systemUser) { + return sprintf('/etc/incron.d/%s.conf', $systemUser); + } + + private function getPhpService($fastcgiPhpVersion) { + $phpInfo = explode(':', $fastcgiPhpVersion); + if (empty($phpInfo)) { + return null; + } + + $phpService = $phpInfo[1]; + if (empty($phpService)) { + return null; + } + + return $phpService; + } + + private function restartIncronService() { + global $app; + + exec($app->system->getinitcommand('incrond', 'restart')); + } +} \ No newline at end of file -- GitLab From af92be13d2b217a728205b8d7c1e12a20103ede6 Mon Sep 17 00:00:00 2001 From: Webslice <webslice@bixels.nl> Date: Mon, 4 Feb 2019 11:22:33 +0100 Subject: [PATCH 008/215] #5218 set chattr +i on trigger file --- server/plugins-available/incron_plugin.inc.php | 2 ++ 1 file changed, 2 insertions(+) diff --git a/server/plugins-available/incron_plugin.inc.php b/server/plugins-available/incron_plugin.inc.php index eddcee169a..f072a850b6 100644 --- a/server/plugins-available/incron_plugin.inc.php +++ b/server/plugins-available/incron_plugin.inc.php @@ -111,6 +111,7 @@ class incron_plugin { } exec(sprintf('chown %s:%s %s', $systemUser, $systemGroup, $triggerFile)); + exec(sprintf('chattr +i %s', $triggerFile)); $app->log(sprintf('Ensured incron trigger file "%s"', $triggerFile), LOGLEVEL_DEBUG); } @@ -127,6 +128,7 @@ class incron_plugin { private function deleteTriggerFile($triggerFile) { global $app; + exec(sprintf('chattr -i %s', $triggerFile)); unlink($triggerFile); $app->log(sprintf('Deleted incron trigger file "%s"', $triggerFile), LOGLEVEL_DEBUG); -- GitLab From 7e2cecabe3d0ca698c29e6cd471f78feb0753743 Mon Sep 17 00:00:00 2001 From: Webslice <webslice@bixels.nl> Date: Mon, 4 Feb 2019 11:22:51 +0100 Subject: [PATCH 009/215] #5218 incrond service is called 'incron' on debian --- server/plugins-available/incron_plugin.inc.php | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/server/plugins-available/incron_plugin.inc.php b/server/plugins-available/incron_plugin.inc.php index f072a850b6..3b771de633 100644 --- a/server/plugins-available/incron_plugin.inc.php +++ b/server/plugins-available/incron_plugin.inc.php @@ -159,6 +159,11 @@ class incron_plugin { private function restartIncronService() { global $app; - exec($app->system->getinitcommand('incrond', 'restart')); + $serviceName = 'incrond'; + if (file_exists('/etc/debian_version')) { + $serviceName = 'incron'; + } + + exec($app->system->getinitcommand($serviceName, 'restart')); } } \ No newline at end of file -- GitLab From cddd060ed64959fc0c16ca78c3f6e135a4265f14 Mon Sep 17 00:00:00 2001 From: Webslice <webslice@bixels.nl> Date: Mon, 4 Feb 2019 11:39:33 +0100 Subject: [PATCH 010/215] #5218 remove chattr +i If the plugin runs at the end, and you are deleting a Site, the deletion will not run completely because the trigger file still exists --- ...{incron_plugin.inc.php => z_incron_plugin.inc.php} | 11 ++++++----- 1 file changed, 6 insertions(+), 5 deletions(-) rename server/plugins-available/{incron_plugin.inc.php => z_incron_plugin.inc.php} (93%) diff --git a/server/plugins-available/incron_plugin.inc.php b/server/plugins-available/z_incron_plugin.inc.php similarity index 93% rename from server/plugins-available/incron_plugin.inc.php rename to server/plugins-available/z_incron_plugin.inc.php index 3b771de633..dfde5235ff 100644 --- a/server/plugins-available/incron_plugin.inc.php +++ b/server/plugins-available/z_incron_plugin.inc.php @@ -5,11 +5,14 @@ * configuration which will take care of reloading the php-fpm pool when the file /private/php-fpm.reload is touched. * Projects which use deployment tools can use this to reload php-fpm to clear the opcache at deploy time, without * requiring superuser privileges. + * + * The plugin is called `z_incron_plugin` because plugins are executed alphabetically, and this plugin can only run + * when apache2/nginx plugins have already run so the directories and user/group exist. */ -class incron_plugin { +class z_incron_plugin { - var $plugin_name = 'incron_plugin'; - var $class_name = 'incron_plugin'; + var $plugin_name = 'z_incron_plugin'; + var $class_name = 'z_incron_plugin'; function onInstall() { global $conf; @@ -111,7 +114,6 @@ class incron_plugin { } exec(sprintf('chown %s:%s %s', $systemUser, $systemGroup, $triggerFile)); - exec(sprintf('chattr +i %s', $triggerFile)); $app->log(sprintf('Ensured incron trigger file "%s"', $triggerFile), LOGLEVEL_DEBUG); } @@ -128,7 +130,6 @@ class incron_plugin { private function deleteTriggerFile($triggerFile) { global $app; - exec(sprintf('chattr -i %s', $triggerFile)); unlink($triggerFile); $app->log(sprintf('Deleted incron trigger file "%s"', $triggerFile), LOGLEVEL_DEBUG); -- GitLab From 80ef57a63482c8f22c3ee6bfaa722c942cd1b594 Mon Sep 17 00:00:00 2001 From: Webslice <webslice@bixels.nl> Date: Tue, 5 Feb 2019 12:49:32 +0100 Subject: [PATCH 011/215] 5218 rename plugin and only run if checkbox in config is ticked --- .../web/admin/form/server_config.tform.php | 6 +++ .../web/admin/lib/lang/ar_server_config.lng | 1 + .../web/admin/lib/lang/bg_server_config.lng | 1 + .../web/admin/lib/lang/br_server_config.lng | 1 + .../web/admin/lib/lang/ca_server_config.lng | 1 + .../web/admin/lib/lang/cz_server_config.lng | 1 + .../web/admin/lib/lang/de_server_config.lng | 1 + .../web/admin/lib/lang/dk_server_config.lng | 1 + .../web/admin/lib/lang/el_server_config.lng | 1 + .../web/admin/lib/lang/en_server_config.lng | 1 + .../web/admin/lib/lang/es_server_config.lng | 1 + .../web/admin/lib/lang/fi_server_config.lng | 1 + .../web/admin/lib/lang/fr_server_config.lng | 1 + .../web/admin/lib/lang/hr_server_config.lng | 1 + .../web/admin/lib/lang/hu_server_config.lng | 1 + .../web/admin/lib/lang/id_server_config.lng | 1 + .../web/admin/lib/lang/it_server_config.lng | 1 + .../web/admin/lib/lang/ja_server_config.lng | 1 + .../web/admin/lib/lang/nl_server_config.lng | 1 + .../web/admin/lib/lang/pl_server_config.lng | 1 + .../web/admin/lib/lang/pt_server_config.lng | 1 + .../web/admin/lib/lang/ro_server_config.lng | 1 + .../web/admin/lib/lang/ru_server_config.lng | 1 + .../web/admin/lib/lang/se_server_config.lng | 1 + .../web/admin/lib/lang/sk_server_config.lng | 1 + .../web/admin/lib/lang/tr_server_config.lng | 1 + .../templates/server_config_web_edit.htm | 6 +++ ...=> z_php_fpm_incron_reload_plugin.inc.php} | 47 +++++++++++++------ 28 files changed, 70 insertions(+), 14 deletions(-) rename server/plugins-available/{z_incron_plugin.inc.php => z_php_fpm_incron_reload_plugin.inc.php} (82%) diff --git a/interface/web/admin/form/server_config.tform.php b/interface/web/admin/form/server_config.tform.php index a127430494..e0cf897abd 100644 --- a/interface/web/admin/form/server_config.tform.php +++ b/interface/web/admin/form/server_config.tform.php @@ -1211,6 +1211,12 @@ $form["tabs"]['web'] = array( 'value' => array('no' => 'disabled_txt', 'fast-cgi' => 'Fast-CGI', 'cgi' => 'CGI', 'mod' => 'Mod-PHP', 'suphp' => 'SuPHP', 'php-fpm' => 'PHP-FPM', 'hhvm' => 'HHVM'), 'searchable' => 2 ), + 'php_fpm_incron_reload' => array( + 'datatype' => 'VARCHAR', + 'formtype' => 'CHECKBOX', + 'default' => 'y', + 'value' => array(0 => 'n', 1 => 'y') + ), 'nginx_cgi_socket' => array( 'datatype' => 'VARCHAR', 'formtype' => 'TEXT', diff --git a/interface/web/admin/lib/lang/ar_server_config.lng b/interface/web/admin/lib/lang/ar_server_config.lng index b7e75ffd44..00e94f766b 100644 --- a/interface/web/admin/lib/lang/ar_server_config.lng +++ b/interface/web/admin/lib/lang/ar_server_config.lng @@ -261,6 +261,7 @@ $wb['backup_dir_mount_cmd_txt'] = 'Mount command, if backup directory not mounte $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['php_fpm_incron_reload_txt'] = 'Install incron trigger file to reload PHP-FPM'; $wb['disabled_txt'] = 'Disabled'; $wb['dkim_strength_txt'] = 'DKIM strength'; $wb['php_ini_check_minutes_txt'] = 'Check php.ini every X minutes for changes'; diff --git a/interface/web/admin/lib/lang/bg_server_config.lng b/interface/web/admin/lib/lang/bg_server_config.lng index 37f654d5a6..7c6ae9f2dc 100644 --- a/interface/web/admin/lib/lang/bg_server_config.lng +++ b/interface/web/admin/lib/lang/bg_server_config.lng @@ -261,6 +261,7 @@ $wb['backup_dir_mount_cmd_txt'] = 'Mount command, if backup directory not mounte $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['php_fpm_incron_reload_txt'] = 'Install incron trigger file to reload PHP-FPM'; $wb['disabled_txt'] = 'Disabled'; $wb['dkim_strength_txt'] = 'DKIM strength'; $wb['php_ini_check_minutes_txt'] = 'Check php.ini every X minutes for changes'; diff --git a/interface/web/admin/lib/lang/br_server_config.lng b/interface/web/admin/lib/lang/br_server_config.lng index b016ad04c3..9175790eb3 100644 --- a/interface/web/admin/lib/lang/br_server_config.lng +++ b/interface/web/admin/lib/lang/br_server_config.lng @@ -261,6 +261,7 @@ $wb['backup_dir_mount_cmd_txt'] = 'Usar o comando mount, se o diretório de back $wb['overquota_db_notify_admin_txt'] = 'Enviar mensagens de alerta de cota do banco de dados para o administrador'; $wb['overquota_db_notify_client_txt'] = 'Enviar mensagens de alerta de cota do banco de dados para o cliente'; $wb['php_handler_txt'] = 'Manipulador padrão PHP'; +$wb['php_fpm_incron_reload_txt'] = 'Install incron trigger file to reload PHP-FPM'; $wb['disabled_txt'] = 'Desabilitado'; $wb['dkim_strength_txt'] = 'Dificuldade do DKIM'; $wb['php_ini_check_minutes_txt'] = 'Verificar modificações do php.ini a cada N minutos'; diff --git a/interface/web/admin/lib/lang/ca_server_config.lng b/interface/web/admin/lib/lang/ca_server_config.lng index a83144b334..dc44dd340c 100644 --- a/interface/web/admin/lib/lang/ca_server_config.lng +++ b/interface/web/admin/lib/lang/ca_server_config.lng @@ -208,6 +208,7 @@ $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['monitor_system_updates_txt'] = 'Check for Linux updates'; $wb['php_handler_txt'] = 'Default PHP Handler'; +$wb['php_fpm_incron_reload_txt'] = 'Install incron trigger file to reload PHP-FPM'; $wb['disabled_txt'] = 'Disabled'; $wb['dkim_strength_txt'] = 'DKIM strength'; $wb['invalid_apache_user_txt'] = 'Invalid apache user.'; diff --git a/interface/web/admin/lib/lang/cz_server_config.lng b/interface/web/admin/lib/lang/cz_server_config.lng index 9a76563522..e219a7b3e4 100644 --- a/interface/web/admin/lib/lang/cz_server_config.lng +++ b/interface/web/admin/lib/lang/cz_server_config.lng @@ -257,6 +257,7 @@ $wb['backup_delete_txt'] = 'Odstranit zálohy pokud byla smazána doména/webov $wb['overquota_db_notify_admin_txt'] = 'Poslat varovánà o pÅ™ekroÄenà nebo vyÄerpánà DB kvót adminovi'; $wb['overquota_db_notify_client_txt'] = 'Poslat varovánà o pÅ™ekroÄenà nebo vyÄerpánà DB kvót klientovi'; $wb['php_handler_txt'] = 'Výchozà PHP obslužná rutina'; +$wb['php_fpm_incron_reload_txt'] = 'Install incron trigger file to reload PHP-FPM'; $wb['disabled_txt'] = 'Vypnuto'; $wb['php_ini_check_minutes_txt'] = 'ProvádÄ›t kontrolu zmÄ›ny obsahu souboru php.ini každých X minut'; $wb['php_ini_check_minutes_error_empty'] = 'Please specify a value how often php.ini should be checked for changes.'; diff --git a/interface/web/admin/lib/lang/de_server_config.lng b/interface/web/admin/lib/lang/de_server_config.lng index 1d8109e8e1..73c6609a1a 100644 --- a/interface/web/admin/lib/lang/de_server_config.lng +++ b/interface/web/admin/lib/lang/de_server_config.lng @@ -267,6 +267,7 @@ $wb['php_ini_check_minutes_txt'] = 'Prüfe php.ini alle X Minuten auf Änderunge $wb['php_ini_check_minutes_error_empty'] = 'Bitte geben Sie einen Wert an, wie oft die php.ini auf Änderungen geprüft werden soll.'; $wb['php_ini_check_minutes_info_txt'] = '0 = keine Prüfung'; $wb['php_handler_txt'] = 'Standard-PHP-Handler'; +$wb['php_fpm_incron_reload_txt'] = 'Install incron trigger file to reload PHP-FPM'; $wb['enable_spdy_txt'] = 'Stellt SPDY/HTTP2 zur Verfügung'; $wb['disable_bind_log_txt'] = 'Disable bind9 messages for Loglevel WARN'; $wb['apps_vhost_enabled_txt'] = 'Apps-vhost enabled'; diff --git a/interface/web/admin/lib/lang/dk_server_config.lng b/interface/web/admin/lib/lang/dk_server_config.lng index 26f953d5b4..47daacd86a 100644 --- a/interface/web/admin/lib/lang/dk_server_config.lng +++ b/interface/web/admin/lib/lang/dk_server_config.lng @@ -260,6 +260,7 @@ $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['php_fpm_incron_reload_txt'] = 'Install incron trigger file to reload PHP-FPM'; $wb['disabled_txt'] = 'Disabled'; $wb['dkim_strength_txt'] = 'DKIM strength'; $wb['php_ini_check_minutes_txt'] = 'Check php.ini every X minutes for changes'; diff --git a/interface/web/admin/lib/lang/el_server_config.lng b/interface/web/admin/lib/lang/el_server_config.lng index 1298ea71ae..2755ade7c2 100644 --- a/interface/web/admin/lib/lang/el_server_config.lng +++ b/interface/web/admin/lib/lang/el_server_config.lng @@ -261,6 +261,7 @@ $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['php_fpm_incron_reload_txt'] = 'Install incron trigger file to reload PHP-FPM'; $wb['disabled_txt'] = 'Disabled'; $wb['dkim_strength_txt'] = 'DKIM strength'; $wb['php_ini_check_minutes_txt'] = 'Check php.ini every X minutes for changes'; diff --git a/interface/web/admin/lib/lang/en_server_config.lng b/interface/web/admin/lib/lang/en_server_config.lng index fe35d1c5ed..7ca9967922 100644 --- a/interface/web/admin/lib/lang/en_server_config.lng +++ b/interface/web/admin/lib/lang/en_server_config.lng @@ -212,6 +212,7 @@ $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['monitor_system_updates_txt'] = 'Check for Linux updates'; $wb['php_handler_txt'] = "Default PHP Handler"; +$wb['php_fpm_incron_reload_txt'] = 'Install incron trigger file to reload PHP-FPM'; $wb['disabled_txt'] = 'Disabled'; $wb['dkim_strength_txt'] = 'DKIM strength'; $wb['monitor_system_updates_txt'] = 'Check for Linux updates'; diff --git a/interface/web/admin/lib/lang/es_server_config.lng b/interface/web/admin/lib/lang/es_server_config.lng index 5ce3381d98..042671e594 100755 --- a/interface/web/admin/lib/lang/es_server_config.lng +++ b/interface/web/admin/lib/lang/es_server_config.lng @@ -206,6 +206,7 @@ $wb['php_fpm_socket_dir_txt'] = 'Directorio para el socket de PHP-FPM'; $wb['php_fpm_start_port_error_empty'] = 'El puerto de inicio de PHP-FPM está vacÃo.'; $wb['php_fpm_start_port_txt'] = 'Puerto de inicio de PHP-FPM'; $wb['php_handler_txt'] = 'Controlador PHP por defecto'; +$wb['php_fpm_incron_reload_txt'] = 'Install incron trigger file to reload PHP-FPM'; $wb['php_ini_check_minutes_error_empty'] = 'Por favor especifique un valor para definir con qué frecuencia se deberÃan buscar cambios en el archivo php.ini.'; $wb['php_ini_check_minutes_info_txt'] = '0 = no comprobar'; $wb['php_ini_check_minutes_txt'] = 'Comprobar cambios en php.ini cada X minutos'; diff --git a/interface/web/admin/lib/lang/fi_server_config.lng b/interface/web/admin/lib/lang/fi_server_config.lng index 4609ce5b13..4d76c3f5eb 100755 --- a/interface/web/admin/lib/lang/fi_server_config.lng +++ b/interface/web/admin/lib/lang/fi_server_config.lng @@ -261,6 +261,7 @@ $wb['backup_dir_mount_cmd_txt'] = 'Mount command, if backup directory not mounte $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['php_fpm_incron_reload_txt'] = 'Install incron trigger file to reload PHP-FPM'; $wb['disabled_txt'] = 'Disabled'; $wb['dkim_strength_txt'] = 'DKIM strength'; $wb['php_ini_check_minutes_txt'] = 'Check php.ini every X minutes for changes'; diff --git a/interface/web/admin/lib/lang/fr_server_config.lng b/interface/web/admin/lib/lang/fr_server_config.lng index e31d68383e..d1e229e7ce 100644 --- a/interface/web/admin/lib/lang/fr_server_config.lng +++ b/interface/web/admin/lib/lang/fr_server_config.lng @@ -259,6 +259,7 @@ $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['php_fpm_incron_reload_txt'] = 'Install incron trigger file to reload PHP-FPM'; $wb['disabled_txt'] = 'Disabled'; $wb['dkim_strength_txt'] = 'DKIM strength'; $wb['php_ini_check_minutes_txt'] = 'Check php.ini every X minutes for changes'; diff --git a/interface/web/admin/lib/lang/hr_server_config.lng b/interface/web/admin/lib/lang/hr_server_config.lng index c54a67659d..ebfe30a16d 100644 --- a/interface/web/admin/lib/lang/hr_server_config.lng +++ b/interface/web/admin/lib/lang/hr_server_config.lng @@ -261,6 +261,7 @@ $wb['do_not_try_rescue_mongodb_txt'] = 'Disable MongoDB monitoring'; $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['php_fpm_incron_reload_txt'] = 'Install incron trigger file to reload PHP-FPM'; $wb['disabled_txt'] = 'Disabled'; $wb['dkim_strength_txt'] = 'DKIM strength'; $wb['php_ini_check_minutes_txt'] = 'Check php.ini every X minutes for changes'; diff --git a/interface/web/admin/lib/lang/hu_server_config.lng b/interface/web/admin/lib/lang/hu_server_config.lng index 1ac1cd2685..f491b4b2da 100644 --- a/interface/web/admin/lib/lang/hu_server_config.lng +++ b/interface/web/admin/lib/lang/hu_server_config.lng @@ -261,6 +261,7 @@ $wb['backup_dir_mount_cmd_txt'] = 'Mount command, if backup directory not mounte $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['php_fpm_incron_reload_txt'] = 'Install incron trigger file to reload PHP-FPM'; $wb['disabled_txt'] = 'Disabled'; $wb['dkim_strength_txt'] = 'DKIM strength'; $wb['php_ini_check_minutes_txt'] = 'Check php.ini every X minutes for changes'; diff --git a/interface/web/admin/lib/lang/id_server_config.lng b/interface/web/admin/lib/lang/id_server_config.lng index a473891964..f56204188a 100644 --- a/interface/web/admin/lib/lang/id_server_config.lng +++ b/interface/web/admin/lib/lang/id_server_config.lng @@ -261,6 +261,7 @@ $wb['backup_dir_mount_cmd_txt'] = 'Mount command, if backup directory not mounte $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['php_fpm_incron_reload_txt'] = 'Install incron trigger file to reload PHP-FPM'; $wb['disabled_txt'] = 'Disabled'; $wb['dkim_strength_txt'] = 'DKIM strength'; $wb['php_ini_check_minutes_txt'] = 'Check php.ini every X minutes for changes'; diff --git a/interface/web/admin/lib/lang/it_server_config.lng b/interface/web/admin/lib/lang/it_server_config.lng index 8c563853c7..24b89ee8bd 100644 --- a/interface/web/admin/lib/lang/it_server_config.lng +++ b/interface/web/admin/lib/lang/it_server_config.lng @@ -259,6 +259,7 @@ $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['php_fpm_incron_reload_txt'] = 'Install incron trigger file to reload PHP-FPM'; $wb['disabled_txt'] = 'Disabled'; $wb['dkim_strength_txt'] = 'DKIM strength'; $wb['php_ini_check_minutes_txt'] = 'Check php.ini every X minutes for changes'; diff --git a/interface/web/admin/lib/lang/ja_server_config.lng b/interface/web/admin/lib/lang/ja_server_config.lng index 76c400728b..72cecbcccd 100644 --- a/interface/web/admin/lib/lang/ja_server_config.lng +++ b/interface/web/admin/lib/lang/ja_server_config.lng @@ -261,6 +261,7 @@ $wb['backup_dir_mount_cmd_txt'] = 'Mount command, if backup directory not mounte $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['php_fpm_incron_reload_txt'] = 'Install incron trigger file to reload PHP-FPM'; $wb['disabled_txt'] = 'Disabled'; $wb['dkim_strength_txt'] = 'DKIM strength'; $wb['php_ini_check_minutes_txt'] = 'Check php.ini every X minutes for changes'; diff --git a/interface/web/admin/lib/lang/nl_server_config.lng b/interface/web/admin/lib/lang/nl_server_config.lng index 350a06ba36..389a0ea877 100644 --- a/interface/web/admin/lib/lang/nl_server_config.lng +++ b/interface/web/admin/lib/lang/nl_server_config.lng @@ -261,6 +261,7 @@ $wb['backup_dir_mount_cmd_txt'] = 'Mount command, if backup directory not mounte $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['php_fpm_incron_reload_txt'] = 'Install incron trigger file to reload PHP-FPM'; $wb['disabled_txt'] = 'Disabled'; $wb['dkim_strength_txt'] = 'DKIM strength'; $wb['php_ini_check_minutes_txt'] = 'Check php.ini every X minutes for changes'; diff --git a/interface/web/admin/lib/lang/pl_server_config.lng b/interface/web/admin/lib/lang/pl_server_config.lng index c052b7f373..a05df05752 100644 --- a/interface/web/admin/lib/lang/pl_server_config.lng +++ b/interface/web/admin/lib/lang/pl_server_config.lng @@ -261,6 +261,7 @@ $wb['backup_dir_mount_cmd_txt'] = 'Mount command, if backup directory not mounte $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['php_fpm_incron_reload_txt'] = 'Install incron trigger file to reload PHP-FPM'; $wb['disabled_txt'] = 'Disabled'; $wb['dkim_strength_txt'] = 'DKIM strength'; $wb['php_ini_check_minutes_txt'] = 'Check php.ini every X minutes for changes'; diff --git a/interface/web/admin/lib/lang/pt_server_config.lng b/interface/web/admin/lib/lang/pt_server_config.lng index 4767022e49..ba5bd38248 100644 --- a/interface/web/admin/lib/lang/pt_server_config.lng +++ b/interface/web/admin/lib/lang/pt_server_config.lng @@ -261,6 +261,7 @@ $wb['backup_dir_mount_cmd_txt'] = 'Mount command, if backup directory not mounte $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['php_fpm_incron_reload_txt'] = 'Install incron trigger file to reload PHP-FPM'; $wb['disabled_txt'] = 'Disabled'; $wb['dkim_strength_txt'] = 'DKIM strength'; $wb['php_ini_check_minutes_txt'] = 'Check php.ini every X minutes for changes'; diff --git a/interface/web/admin/lib/lang/ro_server_config.lng b/interface/web/admin/lib/lang/ro_server_config.lng index 41b967b735..5a29d0eff0 100644 --- a/interface/web/admin/lib/lang/ro_server_config.lng +++ b/interface/web/admin/lib/lang/ro_server_config.lng @@ -261,6 +261,7 @@ $wb['backup_dir_mount_cmd_txt'] = 'Mount command, if backup directory not mounte $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['php_fpm_incron_reload_txt'] = 'Install incron trigger file to reload PHP-FPM'; $wb['disabled_txt'] = 'Disabled'; $wb['dkim_strength_txt'] = 'DKIM strength'; $wb['php_ini_check_minutes_txt'] = 'Check php.ini every X minutes for changes'; diff --git a/interface/web/admin/lib/lang/ru_server_config.lng b/interface/web/admin/lib/lang/ru_server_config.lng index 0775ab7f88..7ed1fb88ab 100644 --- a/interface/web/admin/lib/lang/ru_server_config.lng +++ b/interface/web/admin/lib/lang/ru_server_config.lng @@ -261,6 +261,7 @@ $wb['backup_dir_mount_cmd_txt'] = 'Выполните команду монти $wb['overquota_db_notify_admin_txt'] = 'ПриÑылать Ð¿Ñ€ÐµÐ´ÑƒÐ¿Ñ€ÐµÐ¶Ð´ÐµÐ½Ð¸Ñ ÐºÐ²Ð¾Ñ‚Ñ‹ DB админиÑтратору'; $wb['overquota_db_notify_client_txt'] = 'ПриÑылать Ð¿Ñ€ÐµÐ´ÑƒÐ¿Ñ€ÐµÐ¶Ð´ÐµÐ½Ð¸Ñ ÐºÐ²Ð¾Ñ‚Ñ‹ DB клиенту'; $wb['php_handler_txt'] = 'Обработчик PHP по умолчанию'; +$wb['php_fpm_incron_reload_txt'] = 'Install incron trigger file to reload PHP-FPM'; $wb['disabled_txt'] = 'Отключено'; $wb['dkim_strength_txt'] = 'СтойкоÑÑ‚ÑŒ DKIM'; $wb['php_ini_check_minutes_txt'] = 'ПроверÑÑ‚ÑŒ Ð¸Ð·Ð¼ÐµÐ½ÐµÐ½Ð¸Ñ Ð² PHP.ini файле каждые Ð¥ минут'; diff --git a/interface/web/admin/lib/lang/se_server_config.lng b/interface/web/admin/lib/lang/se_server_config.lng index 5808fb2f5e..196fe3ffd0 100644 --- a/interface/web/admin/lib/lang/se_server_config.lng +++ b/interface/web/admin/lib/lang/se_server_config.lng @@ -261,6 +261,7 @@ $wb['backup_dir_mount_cmd_txt'] = 'Mount command, if backup directory not mounte $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['php_fpm_incron_reload_txt'] = 'Install incron trigger file to reload PHP-FPM'; $wb['disabled_txt'] = 'Disabled'; $wb['dkim_strength_txt'] = 'DKIM strength'; $wb['php_ini_check_minutes_txt'] = 'Check php.ini every X minutes for changes'; diff --git a/interface/web/admin/lib/lang/sk_server_config.lng b/interface/web/admin/lib/lang/sk_server_config.lng index d5b1f92bf0..9d4703c4b3 100644 --- a/interface/web/admin/lib/lang/sk_server_config.lng +++ b/interface/web/admin/lib/lang/sk_server_config.lng @@ -261,6 +261,7 @@ $wb['backup_dir_mount_cmd_txt'] = 'Mount command, if backup directory not mounte $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['php_fpm_incron_reload_txt'] = 'Install incron trigger file to reload PHP-FPM'; $wb['disabled_txt'] = 'Disabled'; $wb['dkim_strength_txt'] = 'DKIM strength'; $wb['php_ini_check_minutes_txt'] = 'Check php.ini every X minutes for changes'; diff --git a/interface/web/admin/lib/lang/tr_server_config.lng b/interface/web/admin/lib/lang/tr_server_config.lng index c7be379260..b6a742781d 100644 --- a/interface/web/admin/lib/lang/tr_server_config.lng +++ b/interface/web/admin/lib/lang/tr_server_config.lng @@ -260,6 +260,7 @@ $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['php_fpm_incron_reload_txt'] = 'Install incron trigger file to reload PHP-FPM'; $wb['disabled_txt'] = 'Disabled'; $wb['dkim_strength_txt'] = 'DKIM strength'; $wb['php_ini_check_minutes_txt'] = 'Check php.ini every X minutes for changes'; diff --git a/interface/web/admin/templates/server_config_web_edit.htm b/interface/web/admin/templates/server_config_web_edit.htm index bb61d866ca..8cc8dc4340 100644 --- a/interface/web/admin/templates/server_config_web_edit.htm +++ b/interface/web/admin/templates/server_config_web_edit.htm @@ -293,6 +293,12 @@ {tmpl_var name='php_handler'} </select></div> </div> + <div class="form-group"> + <label class="col-sm-3 control-label">{tmpl_var name='php_fpm_incron_reload_txt'}</label> + <div class="col-sm-9"> + {tmpl_var name='php_fpm_incron_reload'} + </div> + </div> <!-- End content --> </div> </div> diff --git a/server/plugins-available/z_incron_plugin.inc.php b/server/plugins-available/z_php_fpm_incron_reload_plugin.inc.php similarity index 82% rename from server/plugins-available/z_incron_plugin.inc.php rename to server/plugins-available/z_php_fpm_incron_reload_plugin.inc.php index dfde5235ff..bc88f4a198 100644 --- a/server/plugins-available/z_incron_plugin.inc.php +++ b/server/plugins-available/z_php_fpm_incron_reload_plugin.inc.php @@ -6,31 +6,33 @@ * Projects which use deployment tools can use this to reload php-fpm to clear the opcache at deploy time, without * requiring superuser privileges. * - * The plugin is called `z_incron_plugin` because plugins are executed alphabetically, and this plugin can only run - * when apache2/nginx plugins have already run so the directories and user/group exist. + * The plugin is prefixed with `z_` because plugins are executed alphabetically, and this plugin + * must only run after apache2/nginx plugins so we are sure the directories and user/group exist. */ -class z_incron_plugin { +class z_php_fpm_incron_reload_plugin { - var $plugin_name = 'z_incron_plugin'; - var $class_name = 'z_incron_plugin'; + var $plugin_name = 'z_php_fpm_incron_reload_plugin'; + var $class_name = 'z_php_fpm_incron_reload_plugin'; function onInstall() { global $conf; - if ($conf['services']['web'] !== true) { - return false; - } - - if ($this->isIncronAvailable() === false) { - return false; - } - - return true; + return $conf['services']['web'] === true; } function onLoad() { global $app; + if ($this->isPluginEnabled() === false) { + return; + } + + if ($this->isIncronAvailable() === false) { + $app->log('You must install incron in order to use this plugin', LOGLEVEL_DEBUG); + + return; + } + $app->plugins->registerEvent('web_domain_insert', $this->plugin_name, 'incronInsert'); $app->plugins->registerEvent('web_domain_update', $this->plugin_name, 'incronUpdate'); $app->plugins->registerEvent('web_domain_delete', $this->plugin_name, 'incronDelete'); @@ -88,6 +90,15 @@ class z_incron_plugin { return $retval === 0; } + private function isPluginEnabled() { + global $app, $conf; + + $app->uses('getconf'); + $serverConfig = $app->getconf->get_server_config($conf['server_id'], 'web'); + + return $serverConfig['php_fpm_incron_reload'] === 'y'; + } + private function createIncronConfiguration($triggerFile, $systemUser, $fastcgiPhpVersion) { global $app; @@ -122,6 +133,10 @@ class z_incron_plugin { global $app; $configFile = $this->getIncronConfigurationFilePath($systemUser); + if (!file_exists($configFile)) { + return; + } + unlink($configFile); $app->log(sprintf('Deleted incron configuration "%s"', $configFile), LOGLEVEL_DEBUG); @@ -130,6 +145,10 @@ class z_incron_plugin { private function deleteTriggerFile($triggerFile) { global $app; + if (!file_exists($triggerFile)) { + return; + } + unlink($triggerFile); $app->log(sprintf('Deleted incron trigger file "%s"', $triggerFile), LOGLEVEL_DEBUG); -- GitLab From b26dcd0575f22111a0c0cf9c4df5ca24dddeaea2 Mon Sep 17 00:00:00 2001 From: Rajko Albrecht <ral@alwins-world.de> Date: Thu, 7 Feb 2019 15:48:31 +0100 Subject: [PATCH 012/215] Ticket #5236 First workflow for allow reverse proxy with different site names for ispconfig panel. TODO: Allow only for sites known to the system itself instead of all or none. --- interface/lib/app.inc.php | 69 +++++++++++++++++++++------------- security/security_settings.ini | 4 +- 2 files changed, 46 insertions(+), 27 deletions(-) diff --git a/interface/lib/app.inc.php b/interface/lib/app.inc.php index 7af764f92b..e546521224 100755 --- a/interface/lib/app.inc.php +++ b/interface/lib/app.inc.php @@ -68,20 +68,31 @@ class app { $this->db = false; } } + $this->uses('functions'); // we need this before all others! + $this->uses('auth,plugin,ini_parser,getconf'); + + } + public function __get($prop) { + if(property_exists($this, $prop)) return $this->{$prop}; + + $this->uses($prop); + if(property_exists($this, $prop)) return $this->{$prop}; + else return null; + } + + public function __destruct() { + session_write_close(); + } + + public function initialize_session() { //* Start the session if($this->_conf['start_session'] == true) { - $this->uses('session'); $sess_timeout = $this->conf('interface', 'session_timeout'); - $cookie_domain = (isset($_SERVER['SERVER_NAME']) ? $_SERVER['SERVER_NAME'] : $_SERVER['HTTP_HOST']); - - // Workaround for Nginx servers - if($cookie_domain == '_') { - $tmp = explode(':',$_SERVER["HTTP_HOST"]); - $cookie_domain = $tmp[0]; - unset($tmp); - } + $cookie_domain = $this->get_cookie_domain(); + $this->log("cookie_domain is ".$cookie_domain,0); + $cookie_domain = ''; $cookie_secure = ($_SERVER["HTTPS"] == 'on')?true:false; if($sess_timeout) { /* check if user wants to stay logged in */ @@ -122,23 +133,8 @@ class app { if(empty($_SESSION['s']['language'])) $_SESSION['s']['language'] = $conf['language']; } - $this->uses('functions'); // we need this before all others! - $this->uses('auth,plugin,ini_parser,getconf'); - - } - - public function __get($prop) { - if(property_exists($this, $prop)) return $this->{$prop}; - - $this->uses($prop); - if(property_exists($this, $prop)) return $this->{$prop}; - else return null; } - public function __destruct() { - session_write_close(); - } - public function uses($classes) { $cl = explode(',', $classes); if(is_array($cl)) { @@ -192,7 +188,7 @@ class app { $tstamp = time(); $msg = '[INTERFACE]: '.$msg; $this->db->query("INSERT INTO sys_log (server_id,datalog_id,loglevel,tstamp,message) VALUES (?, 0, ?, ?, ?)", $server_id, $priority,$tstamp,$msg); - /* + if (is_writable($this->_conf['log_file'])) { if (!$fp = fopen ($this->_conf['log_file'], 'a')) { $this->error('Unable to open logfile: ' . $this->_conf['log_file']); @@ -204,7 +200,7 @@ class app { } else { $this->error('Unable to write to logfile: ' . $this->_conf['log_file']); } - */ + } } @@ -336,12 +332,33 @@ class app { $this->tpl->setVar('globalsearch_noresults_limit_txt', $this->lng('globalsearch_noresults_limit_txt')); $this->tpl->setVar('globalsearch_searchfield_watermark_txt', $this->lng('globalsearch_searchfield_watermark_txt')); } + + private function get_cookie_domain() { + $proxy_panel_allowed = $this->getconf->get_security_config('permissions')['reverse_proxy_panel_allowed']; + $cookie_domain = (isset($_SERVER['SERVER_NAME']) ? $_SERVER['SERVER_NAME'] : $_SERVER['HTTP_HOST']); + // Workaround for Nginx servers + if($cookie_domain == '_') { + $tmp = explode(':',$_SERVER["HTTP_HOST"]); + $cookie_domain = $tmp[0]; + unset($tmp); + } + $this->log("Server: ".print_r($_SERVER,true)); + if ($proxy_panel_allowed == 'all') { + return ''; + } + return $cookie_domain; + } } // end class //** Initialize application (app) object //* possible future = new app($conf); $app = new app(); +/* split session creation out of constructor is IMHO better. + otherwise we have some circular references to global $app like in + getconfig property of App - RA +*/ +$app->initialize_session(); // load and enable PHP Intrusion Detection System (PHPIDS) $ids_security_config = $app->getconf->get_security_config('ids'); diff --git a/security/security_settings.ini b/security/security_settings.ini index 24f4e38d20..c135652e17 100644 --- a/security/security_settings.ini +++ b/security/security_settings.ini @@ -17,6 +17,7 @@ admin_allow_software_repo=superadmin remote_api_allowed=yes password_reset_allowed=yes session_regenerate_id=yes +reverse_proxy_panel_allowed=none [ids] ids_anon_enabled=yes @@ -42,4 +43,5 @@ security_admin_email_subject=Security alert from server warn_new_admin=yes warn_passwd_change=no warn_shadow_change=no -warn_group_change=no \ No newline at end of file +warn_group_change=no + -- GitLab From 0344bc5218a6057c15c93530de5a645f1756c147 Mon Sep 17 00:00:00 2001 From: Rajko Albrecht <ral@alwins-world.de> Date: Fri, 8 Feb 2019 12:47:12 +0100 Subject: [PATCH 013/215] Ticket #5236 Start checks against local sites list for allowed reverse proxy forwards --- interface/lib/app.inc.php | 17 ++++++++++++++--- 1 file changed, 14 insertions(+), 3 deletions(-) diff --git a/interface/lib/app.inc.php b/interface/lib/app.inc.php index e546521224..dddbb20613 100755 --- a/interface/lib/app.inc.php +++ b/interface/lib/app.inc.php @@ -335,6 +335,9 @@ class app { private function get_cookie_domain() { $proxy_panel_allowed = $this->getconf->get_security_config('permissions')['reverse_proxy_panel_allowed']; + if ($proxy_panel_allowed == 'all') { + return ''; + } $cookie_domain = (isset($_SERVER['SERVER_NAME']) ? $_SERVER['SERVER_NAME'] : $_SERVER['HTTP_HOST']); // Workaround for Nginx servers if($cookie_domain == '_') { @@ -342,10 +345,18 @@ class app { $cookie_domain = $tmp[0]; unset($tmp); } - $this->log("Server: ".print_r($_SERVER,true)); - if ($proxy_panel_allowed == 'all') { - return ''; + if($proxy_panel_allowed == 'sites') { + $forwarded_host = (isset($_SERVER['HTTP_X_FORWARDED_HOST']) ? $_SERVER['HTTP_X_FORWARDED_HOST'] : null ); + if($forwarded_host !== null && $forwarded_host !== $cookie_domain) { + $sql = "SELECT domain_id from web_domain where domain = '$forwarded_host'"; + $recs = $this->db->queryOneRecord($sql); + if($recs !== null) { + $cookie_domain = $forwarded_host; + } + unset($forwarded_host); + } } + return $cookie_domain; } -- GitLab From e42fd8321dd041cf7a692dc955e6fde3a569e03a Mon Sep 17 00:00:00 2001 From: Rajko Albrecht <ral@alwins-world.de> Date: Mon, 11 Feb 2019 12:44:00 +0100 Subject: [PATCH 014/215] Comments --- interface/lib/app.inc.php | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/interface/lib/app.inc.php b/interface/lib/app.inc.php index dddbb20613..79be4c9abb 100755 --- a/interface/lib/app.inc.php +++ b/interface/lib/app.inc.php @@ -338,6 +338,11 @@ class app { if ($proxy_panel_allowed == 'all') { return ''; } + /* + * See ticket #5238: It should be ensured, that _SERVER_NAME is always set. + * Otherwise the security improvement doesn't work with nginx. If this is done, + * the check for HTTP_HOST and workaround for nginx is obsolete. + */ $cookie_domain = (isset($_SERVER['SERVER_NAME']) ? $_SERVER['SERVER_NAME'] : $_SERVER['HTTP_HOST']); // Workaround for Nginx servers if($cookie_domain == '_') { @@ -348,6 +353,7 @@ class app { if($proxy_panel_allowed == 'sites') { $forwarded_host = (isset($_SERVER['HTTP_X_FORWARDED_HOST']) ? $_SERVER['HTTP_X_FORWARDED_HOST'] : null ); if($forwarded_host !== null && $forwarded_host !== $cookie_domain) { + // Just check for complete domain name and not auto subdomains $sql = "SELECT domain_id from web_domain where domain = '$forwarded_host'"; $recs = $this->db->queryOneRecord($sql); if($recs !== null) { @@ -365,7 +371,8 @@ class app { //** Initialize application (app) object //* possible future = new app($conf); $app = new app(); -/* split session creation out of constructor is IMHO better. +/* + split session creation out of constructor is IMHO better. otherwise we have some circular references to global $app like in getconfig property of App - RA */ -- GitLab From bb4bf2800c846e44b7c342322ebe9739e2bd69ec Mon Sep 17 00:00:00 2001 From: Rajko Albrecht <ral@alwins-world.de> Date: Mon, 11 Feb 2019 13:24:12 +0100 Subject: [PATCH 015/215] Re-disable log to logfile as before. --- interface/lib/app.inc.php | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/interface/lib/app.inc.php b/interface/lib/app.inc.php index 79be4c9abb..f8b59317d0 100755 --- a/interface/lib/app.inc.php +++ b/interface/lib/app.inc.php @@ -188,7 +188,7 @@ class app { $tstamp = time(); $msg = '[INTERFACE]: '.$msg; $this->db->query("INSERT INTO sys_log (server_id,datalog_id,loglevel,tstamp,message) VALUES (?, 0, ?, ?, ?)", $server_id, $priority,$tstamp,$msg); - + /* if (is_writable($this->_conf['log_file'])) { if (!$fp = fopen ($this->_conf['log_file'], 'a')) { $this->error('Unable to open logfile: ' . $this->_conf['log_file']); @@ -200,7 +200,7 @@ class app { } else { $this->error('Unable to write to logfile: ' . $this->_conf['log_file']); } - + */ } } -- GitLab From 60b01b24c31901bd7dfe5836b3a3d77ef83708ed Mon Sep 17 00:00:00 2001 From: Rajko Albrecht <ral@alwins-world.de> Date: Tue, 12 Feb 2019 08:29:56 +0100 Subject: [PATCH 016/215] Don't use real textinputs for login_as and logout_from workflow. Some browser(-variants) fill them with stored username/passwords and ignore the "value" attribute on post. --- interface/web/login/login_as.php | 6 ++---- interface/web/login/logout.php | 6 ++---- 2 files changed, 4 insertions(+), 8 deletions(-) diff --git a/interface/web/login/login_as.php b/interface/web/login/login_as.php index 159f15b77e..4c2fb33393 100644 --- a/interface/web/login/login_as.php +++ b/interface/web/login/login_as.php @@ -90,10 +90,8 @@ echo ' <br /> <br /> <br /> <br /> '.$wb['login_1_txt'].' ' . $dbData['username'] . '?<br /> '.$wb['login_2_txt'].'<br /> - <div style="visibility:hidden"> - <input type="text" name="username" value="' . $dbData['username'] . '" /> - <input type="password" name="password" value="' . $dbData['passwort'] .'" /> - </div> + <input type="hidden" name="username" value="' . $dbData['username'] . '" /> + <input type="hidden" name="password" value="' . $dbData['passwort'] .'" /> <input type="hidden" name="s_mod" value="dashboard" /> <input type="hidden" name="s_pg" value="dashboard" /> <input type="hidden" name="login_as" value="1" /> diff --git a/interface/web/login/logout.php b/interface/web/login/logout.php index dc1c9e4a42..dadd871bab 100644 --- a/interface/web/login/logout.php +++ b/interface/web/login/logout.php @@ -48,10 +48,8 @@ if ((isset($_SESSION['s_old']) && ($_SESSION['s_old']['user']['typ'] == 'admin' echo ' <br /> <br /> <br /> <br /> '.str_replace('{UTYPE}', $utype, $wb['login_as_or_logout_txt']).'<br /> - <div style="visibility:hidden"> - <input type="text" name="username" value="' . $_SESSION['s_old']['user']['username'] . '" /> - <input type="password" name="password" value="' . $_SESSION['s_old']['user']['passwort'] .'" /> - </div> + <input type="hidden" name="username" value="' . $_SESSION['s_old']['user']['username'] . '" /> + <input type="hidden" name="password" value="' . $_SESSION['s_old']['user']['passwort'] .'" /> <input type="hidden" name="s_mod" value="login" /> <input type="hidden" name="s_pg" value="index" /> <input type="hidden" name="login_as" value="1" /> -- GitLab From ee40c2cdcca659775dfccd207364ee75189d5277 Mon Sep 17 00:00:00 2001 From: Till Brehm <tbrehm@ispconfig.org> Date: Thu, 14 Feb 2019 16:01:33 +0100 Subject: [PATCH 017/215] Fixed problem with php-fpm-chroot field in web_domain table. --- install/sql/incremental/upd_0087.sql | 1 - install/sql/incremental/upd_dev_collection.sql | 1 + install/sql/ispconfig3.sql | 1 + 3 files changed, 2 insertions(+), 1 deletion(-) delete mode 100644 install/sql/incremental/upd_0087.sql diff --git a/install/sql/incremental/upd_0087.sql b/install/sql/incremental/upd_0087.sql deleted file mode 100644 index e1b35b0387..0000000000 --- a/install/sql/incremental/upd_0087.sql +++ /dev/null @@ -1 +0,0 @@ -ALTER TABLE `web_domain` ADD COLUMN `php_fpm_chroot` enum('n','y') NOT NULL DEFAULT 'n' AFTER `php_fpm_use_socket`; diff --git a/install/sql/incremental/upd_dev_collection.sql b/install/sql/incremental/upd_dev_collection.sql index f06e449746..98e8abdf97 100644 --- a/install/sql/incremental/upd_dev_collection.sql +++ b/install/sql/incremental/upd_dev_collection.sql @@ -1,3 +1,4 @@ ALTER TABLE `sys_datalog` ADD `session_id` varchar(64) NOT NULL DEFAULT '' AFTER `error`; ALTER TABLE `sys_user` CHANGE `sys_userid` `sys_userid` INT(11) UNSIGNED NOT NULL DEFAULT '1' COMMENT 'Created by userid'; ALTER TABLE `sys_user` CHANGE `sys_groupid` `sys_groupid` INT(11) UNSIGNED NOT NULL DEFAULT '1' COMMENT 'Created by groupid'; +ALTER TABLE `web_domain` ADD COLUMN `php_fpm_chroot` enum('n','y') NOT NULL DEFAULT 'n' AFTER `php_fpm_use_socket`; diff --git a/install/sql/ispconfig3.sql b/install/sql/ispconfig3.sql index 79dfde3275..88eff32ff0 100644 --- a/install/sql/ispconfig3.sql +++ b/install/sql/ispconfig3.sql @@ -1965,6 +1965,7 @@ CREATE TABLE `web_domain` ( `apache_directives` mediumtext, `nginx_directives` mediumtext, `php_fpm_use_socket` ENUM('n','y') NOT NULL DEFAULT 'y', + `php_fpm_chroot` enum('n','y') NOT NULL DEFAULT 'n', `pm` enum('static','dynamic','ondemand') NOT NULL DEFAULT 'dynamic', `pm_max_children` int(11) NOT NULL DEFAULT '10', `pm_start_servers` int(11) NOT NULL DEFAULT '2', -- GitLab From 19513efa8cdb2f0e44470c7d119a1ed901624b8b Mon Sep 17 00:00:00 2001 From: Till Brehm <tbrehm@ispconfig.org> Date: Thu, 14 Feb 2019 18:27:21 +0100 Subject: [PATCH 018/215] Implemented #5241 Add a {docroot] variable for apache directive snippets --- interface/web/admin/templates/directive_snippets_edit.htm | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/interface/web/admin/templates/directive_snippets_edit.htm b/interface/web/admin/templates/directive_snippets_edit.htm index eab53c79bb..72eb82369c 100644 --- a/interface/web/admin/templates/directive_snippets_edit.htm +++ b/interface/web/admin/templates/directive_snippets_edit.htm @@ -18,7 +18,9 @@ <div class="form-group"> <label for="snippet" class="col-sm-3 control-label">{tmpl_var name='snippet_txt'}</label> <tmpl_if name='is_master'><div class="col-sm-9 col-text"><pre>{tmpl_var name='snippet'}</pre></div></tmpl_else><div class="col-sm-9"><textarea class="form-control" name="snippet" id="snippet" rows='10' cols='50'>{tmpl_var name='snippet'}</textarea> - Nginx {tmpl_var name='variables_txt'}: <a href="javascript:void(0);" class="addPlaceholder">{DOCROOT}</a>, <a href="javascript:void(0);" class="addPlaceholder">{FASTCGIPASS}</a>, <a href="javascript:void(0);" class="addPlaceholder">{PHPFALLBACKFASTCGIPASS}</a></div></tmpl_if> + Nginx {tmpl_var name='variables_txt'}: <a href="javascript:void(0);" class="addPlaceholder">{DOCROOT}</a>, <a href="javascript:void(0);" class="addPlaceholder">{FASTCGIPASS}</a>, <a href="javascript:void(0);" class="addPlaceholder">{PHPFALLBACKFASTCGIPASS}</a><br /> + Apache {tmpl_var name='variables_txt'}: <a href="javascript:void(0);" class="addPlaceholder">{DOCROOT}</a>, <a href="javascript:void(0);" class="addPlaceholder">{DOCROOT_CLIENT}</a> + </div></tmpl_if> </div> <tmpl_if name='is_master'></tmpl_else> <div class="form-group php"> -- GitLab From 3729a0cd27b59921bbf9f8e7303d9fb88886e3b9 Mon Sep 17 00:00:00 2001 From: Till Brehm <tbrehm@ispconfig.org> Date: Thu, 14 Feb 2019 18:47:19 +0100 Subject: [PATCH 019/215] Implemented #5246 Mail traffic update - handle different syslog timestamps when parsing logs --- .../classes/cron.d/100-mailbox_stats.inc.php | 38 +++++++++---------- 1 file changed, 18 insertions(+), 20 deletions(-) diff --git a/server/lib/classes/cron.d/100-mailbox_stats.inc.php b/server/lib/classes/cron.d/100-mailbox_stats.inc.php index e347330c4c..e5a0065a5b 100644 --- a/server/lib/classes/cron.d/100-mailbox_stats.inc.php +++ b/server/lib/classes/cron.d/100-mailbox_stats.inc.php @@ -107,25 +107,6 @@ class cronjob_mailbox_stats extends cronjob { $mail_boxes = array(); $mail_rewrites = array(); // we need to read all mail aliases and forwards because the address in amavis is not always the mailbox address - function parse_mail_log_line($line) { - //Oct 31 17:35:48 mx01 amavis[32014]: (32014-05) Passed CLEAN, [IPv6:xxxxx] [IPv6:xxxxx] <xxx@yyyy> -> <aaaa@bbbb>, Message-ID: <xxxx@yyyyy>, mail_id: xxxxxx, Hits: -1.89, size: 1591, queued_as: xxxxxxx, 946 ms - - if(preg_match('/^(\w+\s+\d+\s+\d+:\d+:\d+)\s+[^ ]+\s+amavis.* <([^>]+)>\s+->\s+((<[^>]+>,)+) .*Message-ID:\s+<([^>]+)>.* size:\s+(\d+),.*$/', $line, $matches) == false) return false; - - $timestamp = strtotime($matches[1]); - if(!$timestamp) return false; - - $to = array(); - $recipients = explode(',', $matches[3]); - foreach($recipients as $recipient) { - $recipient = substr($recipient, 1, -1); - if(!$recipient || $recipient == $matches[2]) continue; - $to[] = $recipient; - } - - return array('line' => $line, 'timestamp' => $timestamp, 'size' => $matches[6], 'from' => $matches[2], 'to' => $to, 'message-id' => $matches[5]); - } - function add_mailbox_traffic(&$traffic_array, $address, $traffic,$mail_boxes, $mail_rewrites) { //global $mail_boxes, $mail_rewrites; //echo '##'.print_r($mail_boxes).'##'; @@ -275,9 +256,26 @@ class cronjob_mailbox_stats extends cronjob { private function parse_mail_log_line($line) { //Oct 31 17:35:48 mx01 amavis[32014]: (32014-05) Passed CLEAN, [IPv6:xxxxx] [IPv6:xxxxx] <xxx@yyyy> -> <aaaa@bbbb>, Message-ID: <xxxx@yyyyy>, mail_id: xxxxxx, Hits: -1.89, size: 1591, queued_as: xxxxxxx, 946 ms - if(preg_match('/^(\w+\s+\d+\s+\d+:\d+:\d+)\s+[^ ]+\s+amavis.* <([^>]+)>\s+->\s+((<[^>]+>,)+) .*Message-ID:\s+<([^>]+)>.* size:\s+(\d+),.*$/', $line, $matches) == false) return false; + // Oct 31 17:35:48 + $timestampSyslog = '\w+\s+\d+\s+\d+:\d+:\d+'; + $timePatternRsyslog = 'Y-m-d\TH:i:sT'; + // 2019-02-12T18:17:19+01:00 + $timestampRsyslog = '\d{4}-\d{2}-\d{2}T\d{2}:\d{2}:\d{2}[\+-]\d{2}:\d{2}'; + // 2019-02-12T18:17:19.203313+01:00 + $timestampHighPrecision = '\d{4}-\d{2}-\d{2}T\d{2}:\d{2}:\d{2}\.\d+[\+-]\d{2}:\d{2}'; + $timePatternHighPrecision = 'Y-m-d\TH:i:s.uT'; + + $timestampAll = $timestampSyslog . '|' . $timestampRsyslog . '|' . $timestampHighPrecision; + + if(preg_match('/^('. $timestampAll .')\s+[^ ]+\s+amavis.* <([^>]+)>\s+->\s+((<[^>]+>,)+) .*Message-ID:\s+<([^>]+)>.* size:\s+(\d+),.*$/', $line, $matches) == false) return false; $timestamp = strtotime($matches[1]); + if(!$timestamp) { + $timestamp = DateTime::createFromFormat($timePatternRsyslog, $matches[1]); + } + if(!$timestamp) { + $timestamp = DateTime::createFromFormat($timePatternHighPrecision, $matches[1]); + } if(!$timestamp) return false; $to = array(); -- GitLab From c0b64b22f61177051b89b449ca7f721acde05581 Mon Sep 17 00:00:00 2001 From: Till Brehm <tbrehm@ispconfig.org> Date: Fri, 15 Feb 2019 17:47:49 +0100 Subject: [PATCH 020/215] Fixed #5227 SOAP API "dns_templatezone_add" error "Column 'xfer' cannot be null" --- interface/lib/classes/remote.d/dns.inc.php | 1 + 1 file changed, 1 insertion(+) diff --git a/interface/lib/classes/remote.d/dns.inc.php b/interface/lib/classes/remote.d/dns.inc.php index e640145c69..7e0b230d7f 100644 --- a/interface/lib/classes/remote.d/dns.inc.php +++ b/interface/lib/classes/remote.d/dns.inc.php @@ -113,6 +113,7 @@ class remoting_dns extends remoting { if($vars['expire'] == '') $error .= $app->lng('error_expire_empty').'<br />'; if($vars['minimum'] == '') $error .= $app->lng('error_minimum_empty').'<br />'; if($vars['ttl'] == '') $error .= $app->lng('error_ttl_empty').'<br />'; + if(!isset($vars['xfer'])) $vars['xfer'] = ''; if($error == '') { // Insert the soa record -- GitLab From e13f43c59a2318ee4c98bb8e82996339b3269799 Mon Sep 17 00:00:00 2001 From: Till Brehm <tbrehm@ispconfig.org> Date: Tue, 19 Feb 2019 09:50:05 +0100 Subject: [PATCH 021/215] Fixed #5250 Error in Debian version detection code --- install/lib/install.lib.php | 4 ++-- server/lib/classes/monitor_tools.inc.php | 4 ++-- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/install/lib/install.lib.php b/install/lib/install.lib.php index 9e2afe76c4..933c30fe38 100644 --- a/install/lib/install.lib.php +++ b/install/lib/install.lib.php @@ -214,13 +214,13 @@ function get_distname() { $distid = 'debian60'; $distbaseid = 'debian'; swriteln("Operating System: Debian 7.0 (Wheezy/Sid) or compatible\n"); - } elseif(strstr(trim(file_get_contents('/etc/debian_version')), '8') || substr(trim(file_get_contents('/etc/debian_version')),0,1) == '8') { + } elseif(substr(trim(file_get_contents('/etc/debian_version')),0,1) == '8') { $distname = 'Debian'; $distver = 'Jessie'; $distid = 'debian60'; $distbaseid = 'debian'; swriteln("Operating System: Debian 8.0 (Jessie) or compatible\n"); - } elseif(strstr(trim(file_get_contents('/etc/debian_version')), '9') || substr(trim(file_get_contents('/etc/debian_version')),0,1) == '9') { + } elseif(substr(trim(file_get_contents('/etc/debian_version')),0,1) == '9') { $distname = 'Debian'; $distver = 'Stretch'; $distconfid = 'debian90'; diff --git a/server/lib/classes/monitor_tools.inc.php b/server/lib/classes/monitor_tools.inc.php index 7cc37f94f2..c4a60702b2 100644 --- a/server/lib/classes/monitor_tools.inc.php +++ b/server/lib/classes/monitor_tools.inc.php @@ -200,12 +200,12 @@ class monitor_tools { $distver = 'Wheezy/Sid'; $distid = 'debian60'; $distbaseid = 'debian'; - } elseif(strstr(trim(file_get_contents('/etc/debian_version')), '8') || substr(trim(file_get_contents('/etc/debian_version')),0,1) == '8') { + } elseif(substr(trim(file_get_contents('/etc/debian_version')),0,1) == '8') { $distname = 'Debian'; $distver = 'Jessie'; $distid = 'debian60'; $distbaseid = 'debian'; - } elseif(strstr(trim(file_get_contents('/etc/debian_version')), '9') || substr(trim(file_get_contents('/etc/debian_version')),0,1) == '9') { + } elseif(substr(trim(file_get_contents('/etc/debian_version')),0,1) == '9') { $distname = 'Debian'; $distver = 'Stretch'; $distconfid = 'debian90'; -- GitLab From b7b2bfe7ffd2b5083a808f6b10c0dfe19955cc8a Mon Sep 17 00:00:00 2001 From: Helmo <rink@initfour.nl> Date: Thu, 21 Feb 2019 15:25:03 +0100 Subject: [PATCH 022/215] Purge the LOGLEVEL_INFO constant to avoid `Use of undefined constant` warnings --- interface/lib/classes/db_mysql.inc.php | 6 +++--- server/lib/classes/db_mysql.inc.php | 6 +++--- 2 files changed, 6 insertions(+), 6 deletions(-) diff --git a/interface/lib/classes/db_mysql.inc.php b/interface/lib/classes/db_mysql.inc.php index c4764cb555..7d7b568980 100644 --- a/interface/lib/classes/db_mysql.inc.php +++ b/interface/lib/classes/db_mysql.inc.php @@ -514,16 +514,16 @@ class db public function escape($sString) { global $app; if(!is_string($sString) && !is_numeric($sString)) { - $app->log('NON-String given in escape function! (' . gettype($sString) . ')', LOGLEVEL_INFO); + $app->log('NON-String given in escape function! (' . gettype($sString) . ')', LOGLEVEL_DEBUG); //$sAddMsg = getDebugBacktrace(); - $app->log($sAddMsg, LOGLEVEL_DEBUG); + //$app->log($sAddMsg, LOGLEVEL_DEBUG); $sString = ''; } $cur_encoding = mb_detect_encoding($sString); if($cur_encoding != "UTF-8") { if($cur_encoding != 'ASCII') { - if(is_object($app) && method_exists($app, 'log')) $app->log('String ' . substr($sString, 0, 25) . '... is ' . $cur_encoding . '.', LOGLEVEL_INFO); + if(is_object($app) && method_exists($app, 'log')) $app->log('String ' . substr($sString, 0, 25) . '... is ' . $cur_encoding . '.', LOGLEVEL_DEBUG); if($cur_encoding) $sString = mb_convert_encoding($sString, 'UTF-8', $cur_encoding); else $sString = mb_convert_encoding($sString, 'UTF-8'); } diff --git a/server/lib/classes/db_mysql.inc.php b/server/lib/classes/db_mysql.inc.php index b03ad55676..0bae3f92d3 100644 --- a/server/lib/classes/db_mysql.inc.php +++ b/server/lib/classes/db_mysql.inc.php @@ -514,16 +514,16 @@ class db public function escape($sString) { global $app; if(!is_string($sString) && !is_numeric($sString)) { - $app->log('NON-String given in escape function! (' . gettype($sString) . ')', LOGLEVEL_INFO); + $app->log('NON-String given in escape function! (' . gettype($sString) . ')', LOGLEVEL_DEBUG); //$sAddMsg = getDebugBacktrace(); - $app->log($sAddMsg, LOGLEVEL_DEBUG); + //$app->log($sAddMsg, LOGLEVEL_DEBUG); $sString = ''; } $cur_encoding = mb_detect_encoding($sString); if($cur_encoding != "UTF-8") { if($cur_encoding != 'ASCII') { - if(is_object($app) && method_exists($app, 'log')) $app->log('String ' . substr($sString, 0, 25) . '... is ' . $cur_encoding . '.', LOGLEVEL_INFO); + if(is_object($app) && method_exists($app, 'log')) $app->log('String ' . substr($sString, 0, 25) . '... is ' . $cur_encoding . '.', LOGLEVEL_DEBUG); if($cur_encoding) $sString = mb_convert_encoding($sString, 'UTF-8', $cur_encoding); else $sString = mb_convert_encoding($sString, 'UTF-8'); } -- GitLab From 5f812a70ad3820d80c813abbded887254c64b359 Mon Sep 17 00:00:00 2001 From: Florian Schaal <florian@schaal-24.de> Date: Sun, 24 Feb 2019 08:42:35 +0100 Subject: [PATCH 023/215] Problems Configuration Enable PageSpeed and HTTP2 with nginx (Fixes #5242) --- interface/web/sites/web_vhost_domain_edit.php | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/interface/web/sites/web_vhost_domain_edit.php b/interface/web/sites/web_vhost_domain_edit.php index 19e4c4c23b..8d43e21fad 100644 --- a/interface/web/sites/web_vhost_domain_edit.php +++ b/interface/web/sites/web_vhost_domain_edit.php @@ -275,7 +275,6 @@ class page_action extends tform_actions { // add limits to template to be able to hide settings foreach($read_limits as $limit) $app->tpl->setVar($limit, $client[$limit]); - //* Reseller: If the logged in user is not admin and has sub clients (is a reseller) } elseif ($_SESSION["s"]["user"]["typ"] != 'admin' && $app->auth->has_clients($_SESSION['s']['user']['userid'])) { @@ -940,6 +939,13 @@ class page_action extends tform_actions { } } $app->tpl->setLoop('folder_directive_snippets', $folder_directive_snippets); + if(is_array($web_config[$server_id])) { + $app->tpl->setVar('is_spdy_enabled', ($web_config[$server_id]['enable_spdy'] === 'y')); + $app->tpl->setVar('is_pagespeed_enabled', ($web_config[$server_id]['nginx_enable_pagespeed'])); + } else { + $app->tpl->setVar('is_spdy_enabled', ($web_config['enable_spdy'] === 'y')); + $app->tpl->setVar('is_pagespeed_enabled', ($web_config['nginx_enable_pagespeed'])); + } parent::onShowEnd(); } -- GitLab From e2940f4c1b3029a0e9a07e95836d9d16d6fed72d Mon Sep 17 00:00:00 2001 From: Florian Schaal <florian@schaal-24.de> Date: Sun, 24 Feb 2019 11:26:24 +0100 Subject: [PATCH 024/215] Backport CAA record feature from 3.2 to 3.1.14 (Fixes #5249) --- .../sql/incremental/upd_dev_collection.sql | 75 ++++++ install/sql/ispconfig3.sql | 81 ++++++- .../plugin_system_config_dns_ca.inc.php | 91 +++++++ .../plugin_system_config_dns_ca_list.inc.php | 81 +++++++ .../system_config_dns_ca_plugin.inc.php | 103 ++++++++ .../web/admin/form/system_config.tform.php | 16 ++ .../web/admin/lib/lang/ar_system_config.lng | 8 + .../web/admin/lib/lang/bg_system_config.lng | 8 + .../web/admin/lib/lang/br_system_config.lng | 28 ++- .../web/admin/lib/lang/ca_system_config.lng | 8 + .../web/admin/lib/lang/cz_system_config.lng | 8 + .../web/admin/lib/lang/de_system_config.lng | 10 + .../web/admin/lib/lang/dk_system_config.lng | 8 + .../web/admin/lib/lang/el_system_config.lng | 8 + .../web/admin/lib/lang/en_system_config.lng | 8 + .../web/admin/lib/lang/es_system_config.lng | 8 + .../web/admin/lib/lang/fi_system_config.lng | 8 + .../web/admin/lib/lang/fr_system_config.lng | 8 + .../web/admin/lib/lang/hr_system_config.lng | 8 + .../web/admin/lib/lang/hu_system_config.lng | 8 + .../web/admin/lib/lang/id_system_config.lng | 8 + .../web/admin/lib/lang/it_system_config.lng | 8 + .../web/admin/lib/lang/ja_system_config.lng | 8 + .../web/admin/lib/lang/nl_system_config.lng | 8 + .../web/admin/lib/lang/pl_system_config.lng | 8 + .../web/admin/lib/lang/pt_system_config.lng | 8 + .../web/admin/lib/lang/ro_system_config.lng | 8 + .../web/admin/lib/lang/ru_system_config.lng | 13 +- .../web/admin/lib/lang/se_system_config.lng | 8 + .../web/admin/lib/lang/sk_system_config.lng | 8 + .../web/admin/lib/lang/tr_system_config.lng | 8 + interface/web/dns/ajax_get_json.php | 12 + interface/web/dns/dns_caa_edit.php | 222 ++++++++++++++++++ interface/web/dns/form/dns_caa.tform.php | 117 +++++++++ interface/web/dns/lib/lang/ar_dns_caa.lng | 19 ++ interface/web/dns/lib/lang/bg_dns_caa.lng | 19 ++ interface/web/dns/lib/lang/br_dns_caa.lng | 19 ++ interface/web/dns/lib/lang/ca_dns_caa.lng | 19 ++ interface/web/dns/lib/lang/cz_dns_caa.lng | 19 ++ interface/web/dns/lib/lang/de_dns_caa.lng | 19 ++ interface/web/dns/lib/lang/dk_dns_caa.lng | 19 ++ interface/web/dns/lib/lang/el_dns_caa.lng | 19 ++ interface/web/dns/lib/lang/en_dns_caa.lng | 19 ++ interface/web/dns/lib/lang/es_dns_caa.lng | 19 ++ interface/web/dns/lib/lang/fi_dns_caa.lng | 19 ++ interface/web/dns/lib/lang/fr_dns_caa.lng | 19 ++ interface/web/dns/lib/lang/hr_dns_caa.lng | 19 ++ interface/web/dns/lib/lang/hu_dns_caa.lng | 19 ++ interface/web/dns/lib/lang/id_dns_caa.lng | 19 ++ interface/web/dns/lib/lang/it_dns_caa.lng | 19 ++ interface/web/dns/lib/lang/ja_dns_caa.lng | 19 ++ interface/web/dns/lib/lang/nl_dns_caa.lng | 19 ++ interface/web/dns/lib/lang/pl_dns_caa.lng | 19 ++ interface/web/dns/lib/lang/pt_dns_caa.lng | 19 ++ interface/web/dns/lib/lang/ro_dns_caa.lng | 19 ++ interface/web/dns/lib/lang/ru_dns_caa.lng | 19 ++ interface/web/dns/lib/lang/se_dns_caa.lng | 19 ++ interface/web/dns/lib/lang/sk_dns_caa.lng | 19 ++ interface/web/dns/lib/lang/tr_dns_caa.lng | 19 ++ interface/web/dns/list/dns_a.list.php | 2 +- interface/web/dns/templates/dns_a_list.htm | 1 + interface/web/dns/templates/dns_caa_edit.htm | 74 ++++++ 62 files changed, 1563 insertions(+), 14 deletions(-) create mode 100644 interface/lib/classes/plugin_system_config_dns_ca.inc.php create mode 100644 interface/lib/classes/plugin_system_config_dns_ca_list.inc.php create mode 100644 interface/lib/plugins/system_config_dns_ca_plugin.inc.php create mode 100644 interface/web/dns/dns_caa_edit.php create mode 100644 interface/web/dns/form/dns_caa.tform.php create mode 100644 interface/web/dns/lib/lang/ar_dns_caa.lng create mode 100644 interface/web/dns/lib/lang/bg_dns_caa.lng create mode 100644 interface/web/dns/lib/lang/br_dns_caa.lng create mode 100644 interface/web/dns/lib/lang/ca_dns_caa.lng create mode 100644 interface/web/dns/lib/lang/cz_dns_caa.lng create mode 100644 interface/web/dns/lib/lang/de_dns_caa.lng create mode 100644 interface/web/dns/lib/lang/dk_dns_caa.lng create mode 100644 interface/web/dns/lib/lang/el_dns_caa.lng create mode 100644 interface/web/dns/lib/lang/en_dns_caa.lng create mode 100644 interface/web/dns/lib/lang/es_dns_caa.lng create mode 100644 interface/web/dns/lib/lang/fi_dns_caa.lng create mode 100644 interface/web/dns/lib/lang/fr_dns_caa.lng create mode 100644 interface/web/dns/lib/lang/hr_dns_caa.lng create mode 100644 interface/web/dns/lib/lang/hu_dns_caa.lng create mode 100644 interface/web/dns/lib/lang/id_dns_caa.lng create mode 100644 interface/web/dns/lib/lang/it_dns_caa.lng create mode 100644 interface/web/dns/lib/lang/ja_dns_caa.lng create mode 100644 interface/web/dns/lib/lang/nl_dns_caa.lng create mode 100644 interface/web/dns/lib/lang/pl_dns_caa.lng create mode 100644 interface/web/dns/lib/lang/pt_dns_caa.lng create mode 100644 interface/web/dns/lib/lang/ro_dns_caa.lng create mode 100644 interface/web/dns/lib/lang/ru_dns_caa.lng create mode 100644 interface/web/dns/lib/lang/se_dns_caa.lng create mode 100644 interface/web/dns/lib/lang/sk_dns_caa.lng create mode 100644 interface/web/dns/lib/lang/tr_dns_caa.lng create mode 100644 interface/web/dns/templates/dns_caa_edit.htm diff --git a/install/sql/incremental/upd_dev_collection.sql b/install/sql/incremental/upd_dev_collection.sql index 98e8abdf97..45d5a2e007 100644 --- a/install/sql/incremental/upd_dev_collection.sql +++ b/install/sql/incremental/upd_dev_collection.sql @@ -2,3 +2,78 @@ ALTER TABLE `sys_datalog` ADD `session_id` varchar(64) NOT NULL DEFAULT '' AFTER ALTER TABLE `sys_user` CHANGE `sys_userid` `sys_userid` INT(11) UNSIGNED NOT NULL DEFAULT '1' COMMENT 'Created by userid'; ALTER TABLE `sys_user` CHANGE `sys_groupid` `sys_groupid` INT(11) UNSIGNED NOT NULL DEFAULT '1' COMMENT 'Created by groupid'; ALTER TABLE `web_domain` ADD COLUMN `php_fpm_chroot` enum('n','y') NOT NULL DEFAULT 'n' AFTER `php_fpm_use_socket`; + +CREATE TABLE IF NOT EXISTS `dns_ssl_ca` ( + `id` int(10) unsigned NOT NULL AUTO_INCREMENT, + `sys_userid` int(11) unsigned NOT NULL DEFAULT '0', + `sys_groupid` int(11) unsigned NOT NULL DEFAULT '0', + `sys_perm_user` varchar(5) NOT NULL DEFAULT '', + `sys_perm_group` varchar(5) NOT NULL DEFAULT '', + `sys_perm_other` varchar(5) NOT NULL DEFAULT '', + `active` enum('N','Y') NOT NULL DEFAULT 'N', + `ca_name` varchar(255) NOT NULL DEFAULT '', + `ca_issue` varchar(255) NOT NULL DEFAULT '', + `ca_wildcard` enum('Y','N') NOT NULL DEFAULT 'N', + `ca_iodef` text NOT NULL, + `ca_critical` tinyint(1) NOT NULL DEFAULT '0', + PRIMARY KEY (`id`), + UNIQUE KEY (`ca_issue`) +) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ; + +ALTER TABLE `dns_ssl_ca` ADD UNIQUE(`ca_issue`); + +UPDATE `dns_ssl_ca` SET `ca_issue` = 'comodo.com' WHERE `ca_issue` = 'comodoca.com'; +DELETE FROM `dns_ssl_ca` WHERE `ca_issue` = 'geotrust.com'; +DELETE FROM `dns_ssl_ca` WHERE `ca_issue` = 'thawte.com'; +UPDATE `dns_ssl_ca` SET `ca_name` = 'Symantec / Thawte / GeoTrust' WHERE `ca_issue` = 'symantec.com'; + +INSERT IGNORE INTO `dns_ssl_ca` (`id`, `sys_userid`, `sys_groupid`, `sys_perm_user`, `sys_perm_group`, `sys_perm_other`, `active`, `ca_name`, `ca_issue`, `ca_wildcard`, `ca_iodef`, `ca_critical`) VALUES +(NULL, 1, 1, 'riud', 'riud', '', 'Y', 'AC Camerfirma', 'camerfirma.com', 'Y', '', 0), +(NULL, 1, 1, 'riud', 'riud', '', 'Y', 'ACCV', 'accv.es', 'Y', '', 0), +(NULL, 1, 1, 'riud', 'riud', '', 'Y', 'Actalis', 'actalis.it', 'Y', '', 0), +(NULL, 1, 1, 'riud', 'riud', '', 'Y', 'Amazon', 'amazon.com', 'Y', '', 0), +(NULL, 1, 1, 'riud', 'riud', '', 'Y', 'Asseco', 'certum.pl', 'Y', '', 0), +(NULL, 1, 1, 'riud', 'riud', '', 'Y', 'Buypass', 'buypass.com', 'Y', '', 0), +(NULL, 1, 1, 'riud', 'riud', '', 'Y', 'CA Disig', 'disig.sk', 'Y', '', 0), +(NULL, 1, 1, 'riud', 'riud', '', 'Y', 'CATCert', 'aoc.cat', 'Y', '', 0), +(NULL, 1, 1, 'riud', 'riud', '', 'Y', 'Certinomis', 'www.certinomis.com', 'Y', '', 0), +(NULL, 1, 1, 'riud', 'riud', '', 'Y', 'Certizen', 'hongkongpost.gov.hk', 'Y', '', 0), +(NULL, 1, 1, 'riud', 'riud', '', 'Y', 'certSIGN', 'certsign.ro', 'Y', '', 0), +(NULL, 1, 1, 'riud', 'riud', '', 'Y', 'CFCA', 'cfca.com.cn', 'Y', '', 0), +(NULL, 1, 1, 'riud', 'riud', '', 'Y', 'Chunghwa Telecom', 'cht.com.tw', 'Y', '', 0), +(NULL, 1, 1, 'riud', 'riud', '', 'Y', 'Comodo', 'comodoca.com', 'Y', '', 0), +(NULL, 1, 1, 'riud', 'riud', '', 'Y', 'D-TRUST', 'd-trust.net', 'Y', '', 0), +(NULL, 1, 1, 'riud', 'riud', '', 'Y', 'DigiCert', 'digicert.com', 'Y', '', 0), +(NULL, 1, 1, 'riud', 'riud', '', 'Y', 'DocuSign', 'docusign.fr', 'Y', '', 0), +(NULL, 1, 1, 'riud', 'riud', '', 'Y', 'e-tugra', 'e-tugra.com', 'Y', '', 0), +(NULL, 1, 1, 'riud', 'riud', '', 'Y', 'EDICOM', 'edicomgroup.com', 'Y', '', 0), +(NULL, 1, 1, 'riud', 'riud', '', 'Y', 'Entrust', 'entrust.net', 'Y', '', 0), +(NULL, 1, 1, 'riud', 'riud', '', 'Y', 'Firmaprofesional', 'firmaprofesional.com', 'Y', '', 0), +(NULL, 1, 1, 'riud', 'riud', '', 'Y', 'FNMT', 'fnmt.es', 'Y', '', 0), +(NULL, 1, 1, 'riud', 'riud', '', 'Y', 'GlobalSign', 'globalsign.com', 'Y', '', 0), +(NULL, 1, 1, 'riud', 'riud', '', 'Y', 'GoDaddy', 'godaddy.com', 'Y', '', 0), +(NULL, 1, 1, 'riud', 'riud', '', 'Y', 'Google Trust Services', 'pki.goog', 'Y', '', 0), +(NULL, 1, 1, 'riud', 'riud', '', 'Y', 'GRCA', 'gca.nat.gov.tw', 'Y', '', 0), +(NULL, 1, 1, 'riud', 'riud', '', 'Y', 'HARICA', 'harica.gr', 'Y', '', 0), +(NULL, 1, 1, 'riud', 'riud', '', 'Y', 'IdenTrust', 'identrust.com', 'Y', '', 0), +(NULL, 1, 1, 'riud', 'riud', '', 'Y', 'Izenpe', 'izenpe.com', 'Y', '', 0), +(NULL, 1, 1, 'riud', 'riud', '', 'Y', 'Kamu SM', 'kamusm.gov.tr', 'Y', '', 0), +(NULL, 1, 1, 'riud', 'riud', '', 'Y', 'Let''s Encrypt', 'letsencrypt.org', 'Y', '', 0), +(NULL, 1, 1, 'riud', 'riud', '', 'Y', 'Microsec e-Szigno', 'e-szigno.hu', 'Y', '', 0), +(NULL, 1, 1, 'riud', 'riud', '', 'Y', 'NetLock', 'netlock.hu', 'Y', '', 0), +(NULL, 1, 1, 'riud', 'riud', '', 'Y', 'PKIoverheid', 'www.pkioverheid.nl', 'Y', '', 0), +(NULL, 1, 1, 'riud', 'riud', '', 'Y', 'PROCERT', 'procert.net.ve', 'Y', '', 0), +(NULL, 1, 1, 'riud', 'riud', '', 'Y', 'QuoVadis', 'quovadisglobal.com', 'Y', '', 0), +(NULL, 1, 1, 'riud', 'riud', '', 'Y', 'SECOM', 'secomtrust.net', 'Y', '', 0), +(NULL, 1, 1, 'riud', 'riud', '', 'Y', 'Sertifitseerimiskeskuse', 'sk.ee', 'Y', '', 0), +(NULL, 1, 1, 'riud', 'riud', '', 'Y', 'StartCom', 'startcomca.com', 'Y', '', 0), +(NULL, 1, 1, 'riud', 'riud', '', 'Y', 'SwissSign', 'swisssign.com', 'Y', '', 0), +(NULL, 1, 1, 'riud', 'riud', '', 'Y', 'Symantec / Thawte / GeoTrust', 'symantec.com', 'Y', '', 0), +(NULL, 1, 1, 'riud', 'riud', '', 'Y', 'T-Systems', 'telesec.de', 'Y', '', 0), +(NULL, 1, 1, 'riud', 'riud', '', 'Y', 'Telia', 'telia.com', 'Y', '', 0), +(NULL, 1, 1, 'riud', 'riud', '', 'Y', 'Trustwave', 'trustwave.com', 'Y', '', 0), +(NULL, 1, 1, 'riud', 'riud', '', 'Y', 'Web.com', 'web.com', 'Y', '', 0), +(NULL, 1, 1, 'riud', 'riud', '', 'Y', 'WISeKey', 'wisekey.com', 'Y', '', 0), +(NULL, 1, 1, 'riud', 'riud', '', 'Y', 'WoSign', 'wosign.com', 'Y', '', 0); + +ALTER TABLE `dns_rr` CHANGE `type` `type` ENUM('A','AAAA','ALIAS','CAA','CNAME','DS','HINFO','LOC','MX','NAPTR','NS','PTR','RP','SRV','TXT','TLSA','DNSKEY') CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL; diff --git a/install/sql/ispconfig3.sql b/install/sql/ispconfig3.sql index 88eff32ff0..757247392f 100644 --- a/install/sql/ispconfig3.sql +++ b/install/sql/ispconfig3.sql @@ -489,7 +489,7 @@ CREATE TABLE `dns_rr` ( `server_id` int(11) NOT NULL default '1', `zone` int(11) unsigned NOT NULL DEFAULT '0', `name` varchar(255) NOT NULL DEFAULT '', - `type` enum('A','AAAA','ALIAS','CNAME','DS','HINFO','LOC','MX','NAPTR','NS','PTR','RP','SRV','TXT','TLSA','DNSKEY') default NULL, + `type` enum('A','AAAA','ALIAS','CNAME','CAA','DS','HINFO','LOC','MX','NAPTR','NS','PTR','RP','SRV','TXT','TLSA','DNSKEY') default NULL, `data` TEXT NOT NULL, `aux` int(11) unsigned NOT NULL default '0', `ttl` int(11) unsigned NOT NULL default '3600', @@ -525,6 +525,85 @@ CREATE TABLE `dns_slave` ( -- -------------------------------------------------------- +-- +-- Table structure for table `dns_ssl_ca` +-- + +CREATE TABLE IF NOT EXISTS `dns_ssl_ca` ( + `id` int(10) unsigned NOT NULL AUTO_INCREMENT, + `sys_userid` int(11) unsigned NOT NULL DEFAULT '0', + `sys_groupid` int(11) unsigned NOT NULL DEFAULT '0', + `sys_perm_user` varchar(5) NOT NULL DEFAULT '', + `sys_perm_group` varchar(5) NOT NULL DEFAULT '', + `sys_perm_other` varchar(5) NOT NULL DEFAULT '', + `active` enum('N','Y') NOT NULL DEFAULT 'N', + `ca_name` varchar(255) NOT NULL DEFAULT '', + `ca_issue` varchar(255) NOT NULL DEFAULT '', + `ca_wildcard` enum('Y','N') NOT NULL DEFAULT 'N', + `ca_iodef` text NOT NULL, + `ca_critical` tinyint(1) NOT NULL DEFAULT '0', + PRIMARY KEY (`id`), + UNIQUE KEY (`ca_issue`) +) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ; + +ALTER TABLE `dns_ssl_ca` ADD UNIQUE(`ca_issue`); + +UPDATE `dns_ssl_ca` SET `ca_issue` = 'comodo.com' WHERE `ca_issue` = 'comodoca.com'; +DELETE FROM `dns_ssl_ca` WHERE `ca_issue` = 'geotrust.com'; +DELETE FROM `dns_ssl_ca` WHERE `ca_issue` = 'thawte.com'; +UPDATE `dns_ssl_ca` SET `ca_name` = 'Symantec / Thawte / GeoTrust' WHERE `ca_issue` = 'symantec.com'; + +INSERT IGNORE INTO `dns_ssl_ca` (`id`, `sys_userid`, `sys_groupid`, `sys_perm_user`, `sys_perm_group`, `sys_perm_other`, `active`, `ca_name`, `ca_issue`, `ca_wildcard`, `ca_iodef`, `ca_critical`) VALUES +(NULL, 1, 1, 'riud', 'riud', '', 'Y', 'AC Camerfirma', 'camerfirma.com', 'Y', '', 0), +(NULL, 1, 1, 'riud', 'riud', '', 'Y', 'ACCV', 'accv.es', 'Y', '', 0), +(NULL, 1, 1, 'riud', 'riud', '', 'Y', 'Actalis', 'actalis.it', 'Y', '', 0), +(NULL, 1, 1, 'riud', 'riud', '', 'Y', 'Amazon', 'amazon.com', 'Y', '', 0), +(NULL, 1, 1, 'riud', 'riud', '', 'Y', 'Asseco', 'certum.pl', 'Y', '', 0), +(NULL, 1, 1, 'riud', 'riud', '', 'Y', 'Buypass', 'buypass.com', 'Y', '', 0), +(NULL, 1, 1, 'riud', 'riud', '', 'Y', 'CA Disig', 'disig.sk', 'Y', '', 0), +(NULL, 1, 1, 'riud', 'riud', '', 'Y', 'CATCert', 'aoc.cat', 'Y', '', 0), +(NULL, 1, 1, 'riud', 'riud', '', 'Y', 'Certinomis', 'www.certinomis.com', 'Y', '', 0), +(NULL, 1, 1, 'riud', 'riud', '', 'Y', 'Certizen', 'hongkongpost.gov.hk', 'Y', '', 0), +(NULL, 1, 1, 'riud', 'riud', '', 'Y', 'certSIGN', 'certsign.ro', 'Y', '', 0), +(NULL, 1, 1, 'riud', 'riud', '', 'Y', 'CFCA', 'cfca.com.cn', 'Y', '', 0), +(NULL, 1, 1, 'riud', 'riud', '', 'Y', 'Chunghwa Telecom', 'cht.com.tw', 'Y', '', 0), +(NULL, 1, 1, 'riud', 'riud', '', 'Y', 'Comodo', 'comodoca.com', 'Y', '', 0), +(NULL, 1, 1, 'riud', 'riud', '', 'Y', 'D-TRUST', 'd-trust.net', 'Y', '', 0), +(NULL, 1, 1, 'riud', 'riud', '', 'Y', 'DigiCert', 'digicert.com', 'Y', '', 0), +(NULL, 1, 1, 'riud', 'riud', '', 'Y', 'DocuSign', 'docusign.fr', 'Y', '', 0), +(NULL, 1, 1, 'riud', 'riud', '', 'Y', 'e-tugra', 'e-tugra.com', 'Y', '', 0), +(NULL, 1, 1, 'riud', 'riud', '', 'Y', 'EDICOM', 'edicomgroup.com', 'Y', '', 0), +(NULL, 1, 1, 'riud', 'riud', '', 'Y', 'Entrust', 'entrust.net', 'Y', '', 0), +(NULL, 1, 1, 'riud', 'riud', '', 'Y', 'Firmaprofesional', 'firmaprofesional.com', 'Y', '', 0), +(NULL, 1, 1, 'riud', 'riud', '', 'Y', 'FNMT', 'fnmt.es', 'Y', '', 0), +(NULL, 1, 1, 'riud', 'riud', '', 'Y', 'GlobalSign', 'globalsign.com', 'Y', '', 0), +(NULL, 1, 1, 'riud', 'riud', '', 'Y', 'GoDaddy', 'godaddy.com', 'Y', '', 0), +(NULL, 1, 1, 'riud', 'riud', '', 'Y', 'Google Trust Services', 'pki.goog', 'Y', '', 0), +(NULL, 1, 1, 'riud', 'riud', '', 'Y', 'GRCA', 'gca.nat.gov.tw', 'Y', '', 0), +(NULL, 1, 1, 'riud', 'riud', '', 'Y', 'HARICA', 'harica.gr', 'Y', '', 0), +(NULL, 1, 1, 'riud', 'riud', '', 'Y', 'IdenTrust', 'identrust.com', 'Y', '', 0), +(NULL, 1, 1, 'riud', 'riud', '', 'Y', 'Izenpe', 'izenpe.com', 'Y', '', 0), +(NULL, 1, 1, 'riud', 'riud', '', 'Y', 'Kamu SM', 'kamusm.gov.tr', 'Y', '', 0), +(NULL, 1, 1, 'riud', 'riud', '', 'Y', 'Let''s Encrypt', 'letsencrypt.org', 'Y', '', 0), +(NULL, 1, 1, 'riud', 'riud', '', 'Y', 'Microsec e-Szigno', 'e-szigno.hu', 'Y', '', 0), +(NULL, 1, 1, 'riud', 'riud', '', 'Y', 'NetLock', 'netlock.hu', 'Y', '', 0), +(NULL, 1, 1, 'riud', 'riud', '', 'Y', 'PKIoverheid', 'www.pkioverheid.nl', 'Y', '', 0), +(NULL, 1, 1, 'riud', 'riud', '', 'Y', 'PROCERT', 'procert.net.ve', 'Y', '', 0), +(NULL, 1, 1, 'riud', 'riud', '', 'Y', 'QuoVadis', 'quovadisglobal.com', 'Y', '', 0), +(NULL, 1, 1, 'riud', 'riud', '', 'Y', 'SECOM', 'secomtrust.net', 'Y', '', 0), +(NULL, 1, 1, 'riud', 'riud', '', 'Y', 'Sertifitseerimiskeskuse', 'sk.ee', 'Y', '', 0), +(NULL, 1, 1, 'riud', 'riud', '', 'Y', 'StartCom', 'startcomca.com', 'Y', '', 0), +(NULL, 1, 1, 'riud', 'riud', '', 'Y', 'SwissSign', 'swisssign.com', 'Y', '', 0), +(NULL, 1, 1, 'riud', 'riud', '', 'Y', 'Symantec / Thawte / GeoTrust', 'symantec.com', 'Y', '', 0), +(NULL, 1, 1, 'riud', 'riud', '', 'Y', 'T-Systems', 'telesec.de', 'Y', '', 0), +(NULL, 1, 1, 'riud', 'riud', '', 'Y', 'Telia', 'telia.com', 'Y', '', 0), +(NULL, 1, 1, 'riud', 'riud', '', 'Y', 'Trustwave', 'trustwave.com', 'Y', '', 0), +(NULL, 1, 1, 'riud', 'riud', '', 'Y', 'Web.com', 'web.com', 'Y', '', 0), +(NULL, 1, 1, 'riud', 'riud', '', 'Y', 'WISeKey', 'wisekey.com', 'Y', '', 0), +(NULL, 1, 1, 'riud', 'riud', '', 'Y', 'WoSign', 'wosign.com', 'Y', '', 0); + +-- -------------------------------------------------------- + -- -- Table structure for table `dns_soa` -- diff --git a/interface/lib/classes/plugin_system_config_dns_ca.inc.php b/interface/lib/classes/plugin_system_config_dns_ca.inc.php new file mode 100644 index 0000000000..f53662d822 --- /dev/null +++ b/interface/lib/classes/plugin_system_config_dns_ca.inc.php @@ -0,0 +1,91 @@ +<?php + +/* +Copyright (c) 2017, Florian Schaal, schaal @it UG +All rights reserved. + +Redistribution and use in source and binary forms, with or without modification, +are permitted provided that the following conditions are met: + + * Redistributions of source code must retain the above copyright notice, + this list of conditions and the following disclaimer. + * Redistributions in binary form must reproduce the above copyright notice, + this list of conditions and the following disclaimer in the documentation + and/or other materials provided with the distribution. + * Neither the name of ISPConfig nor the names of its contributors + may be used to endorse or promote products derived from this software without + specific prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND +ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED +WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. +IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, +INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, +BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY +OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING +NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, +EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. +*/ + +class plugin_system_config_dns_ca extends plugin_base { + + var $module; + var $form; + var $tab; + var $record_id; + var $formdef; + var $options; + var $error = ''; + + function onShow() { + global $app; + + $pluginTpl = new tpl; + $pluginTpl->newTemplate('templates/system_config_dns_ca_edit.htm'); + include 'lib/lang/'.$_SESSION['s']['language'].'_system_config.lng'; + $pluginTpl->setVar($wb); + $ca_id = $app->functions->intval($_GET['id']); + if(isset($_GET['action']) && ($_GET['action'] == 'edit') && $ca_id > 0) { + $pluginTpl->setVar('edit_record', 1); + $rec = $app->db->queryOneRecord("SELECT * FROM dns_ssl_ca WHERE id = ?", $ca_id); + $pluginTpl->setVar('id', $rec['id']); + $pluginTpl->setVar('ca_name', $rec['ca_name']); + $pluginTpl->setVar('ca_issue', $rec['ca_issue']); + $pluginTpl->setVar('ca_wildcard', $rec['ca_wildcard']); + $pluginTpl->setVar('ca_critical', $rec['ca_critical']); + $pluginTpl->setVar('ca_iodef', $rec['ca_iodef']); + $pluginTpl->setVar('active', $rec['active']); + } elseif(isset($_GET['action']) && ($_GET['action'] == 'save') && $ca_id > 0) { + $pluginTpl->setVar('edit_record', 0); + $pluginTpl->setVar('id', $ca_id); + $pluginTpl->setVar('ca_name', $_POST['ca_name']); + $pluginTpl->setVar('ca_issue', $_POST['ca_issue']); + $pluginTpl->setVar('ca_wildcard', $_POST['ca_wildcard']); + $pluginTpl->setVar('ca_critical', $_POST['ca_critical']); + $pluginTpl->setVar('ca_iodef', $_POST['ca_iodef']); + $pluginTpl->setVar('active', $_POST['active']); + } else { + $pluginTpl->setVar('edit_record', 0); + } + + return $pluginTpl->grab(); + + } + + function onUpdate() { + global $app; + + $ca_id = $app->functions->intval($_GET['id']); + if(isset($_GET['action']) && $_GET['action'] == 'save') { + if($ca_id > 0) { + $app->db->query("UPDATE dns_ssl_ca SET ca_name = ?, ca_issue = ?, ca_wildcard = ?, ca_iodef = ?, active = ? WHERE id = ?", $_POST['ca_name'], $_POST['ca_issue'], $_POST['ca_wildcard'], $_POST['ca_iodef'], $_POST['active'], $ca_id); + } else { + $app->db->query("INSERT INTO (sys_userid, sys_groupid, sys_perm_user, sys_perm_group, sys_perm_other, ca_name, ca_issue, ca_wildcard, ca_iodef, active) VALUES(1, 1, 'riud', 'riud', '', ?, ?, ?, ?, ?", $_POST['ca_name'], $_POST['ca_issue'], $_POST['ca_wildcard'], $_POST['ca_iodef'], $_POST['active']); + } + } + } + +} + +?> diff --git a/interface/lib/classes/plugin_system_config_dns_ca_list.inc.php b/interface/lib/classes/plugin_system_config_dns_ca_list.inc.php new file mode 100644 index 0000000000..eb5882bd3b --- /dev/null +++ b/interface/lib/classes/plugin_system_config_dns_ca_list.inc.php @@ -0,0 +1,81 @@ +<?php + +/* +Copyright (c) 2017, Florian Schaal, schaal @it UG +All rights reserved. + +Redistribution and use in source and binary forms, with or without modification, +are permitted provided that the following conditions are met: + + * Redistributions of source code must retain the above copyright notice, + this list of conditions and the following disclaimer. + * Redistributions in binary form must reproduce the above copyright notice, + this list of conditions and the following disclaimer in the documentation + and/or other materials provided with the distribution. + * Neither the name of ISPConfig nor the names of its contributors + may be used to endorse or promote products derived from this software without + specific prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND +ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED +WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. +IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, +INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, +BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY +OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING +NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, +EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. +*/ + +class plugin_system_config_dns_ca_list extends plugin_base { + + var $module; + var $form; + var $tab; + var $record_id; + var $formdef; + var $options; + + function onShow() { + global $app; + + $listTpl = new tpl; + $listTpl->newTemplate('templates/system_config_dns_ca_list.htm'); + + //* Loading language file + $lng_file = 'lib/lang/'.$_SESSION['s']['language'].'_system_config.lng'; + include $lng_file; + $listTpl->setVar($wb); + if($_SESSION['s']['user']['typ'] == 'admin') { + if(isset($_GET['action'])) { + $ca_id = $app->functions->intval($_GET['id']); + if($_GET['action'] == 'delete' && $ca_id > 0) { + $app->db->query("DELETE FROM dns_ssl_ca WHERE id = ?", $ca_id); + } + } + } + + if(isset($_GET['action']) && $_GET['action'] == 'edit' && $_GET['id'] > 0) $listTpl->setVar('edit_record', 1); + + // Getting Datasets from DB + $ca_records = $app->db->queryAllRecords("SELECT * FROM dns_ssl_ca ORDER BY ca_name ASC"); + $records=array(); + if(is_array($ca_records) && count($ca_records) > 0) { + foreach($ca_records as $ca) { + $rec['ca_id'] = $ca['id']; + $rec['name'] = $ca['ca_name']; + $rec['active'] = $ca['active']; + $records[] = $rec; + unset($rec); + } + $listTpl->setLoop('ca_records', @$records); + } + $listTpl->setVar('parent_id', $this->form->id); + + return $listTpl->grab(); + } + +} + +?> diff --git a/interface/lib/plugins/system_config_dns_ca_plugin.inc.php b/interface/lib/plugins/system_config_dns_ca_plugin.inc.php new file mode 100644 index 0000000000..c35934e5bf --- /dev/null +++ b/interface/lib/plugins/system_config_dns_ca_plugin.inc.php @@ -0,0 +1,103 @@ +<?php + +/* +Copyright (c) 2017, Florian Schaal, schaal @it UG +All rights reserved. + +Redistribution and use in source and binary forms, with or without modification, +are permitted provided that the following conditions are met: + + * Redistributions of source code must retain the above copyright notice, + this list of conditions and the following disclaimer. + * Redistributions in binary form must reproduce the above copyright notice, + this list of conditions and the following disclaimer in the documentation + and/or other materials provided with the distribution. + * Neither the name of ISPConfig nor the names of its contributors + may be used to endorse or promote products derived from this software without + specific prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND +ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED +WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. +IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, +INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, +BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY +OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING +NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, +EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. +*/ + +class system_config_dns_ca_plugin { + + var $plugin_name = 'system_config_dns_ca_plugin'; + var $class_name = 'system_config_dns_ca_plugin'; + + function onLoad() { + global $app; + + $app->plugin->registerEvent('dns:dns_caa:on_after_update', 'system_config_dns_ca_plugin', 'caa_update'); + $app->plugin->registerEvent('dns:dns_caa:on_after_insert', 'system_config_dns_ca_plugin', 'caa_update'); + + $app->plugin->registerEvent('sites:web_vhost_domain:on_after_insert', 'system_config_dns_ca_plugin', 'web_vhost_domain_edit'); + $app->plugin->registerEvent('sites:web_vhost_domain:on_after_update', 'system_config_dns_ca_plugin', 'web_vhost_domain_edit'); + } + + function caa_update($event_name, $page_form) { + global $app; + + if(trim($page_form->dataRecord['additional'] != '')) { + $rec = $app->db->queryOneRecord("SELECT * FROM dns_rr WHERE id = ?", $page_form->id); + unset($rec['id']); + $zone = $app->db->queryOneRecord("SELECT origin FROM dns_soa WHERE id = ?", $rec['zone']); + $host=str_replace($zone['origin'], '', $page_form->dataRecord['name']); + $host=rtrim($host,'.'); + $page_form->dataRecord['additional']=str_replace($host, '', $page_form->dataRecord['additional']); + $additional=explode(',', $page_form->dataRecord['additional']); + foreach($additional as $new) { + if($new != '') { + $insert_data = $rec; + $insert_data['name'] = $new.'.'.$zone['origin']; + $app->db->datalogInsert('dns_rr', $insert_data, 'id'); + } + } + } + } + + function web_vhost_domain_edit($event_name, $page_form) { + global $app; + + if($page_form->dataRecord['ssl_letsencrypt'] == 'y') { + $domain = $page_form->dataRecord['domain']; + $subdomain = $page_form->dataRecord['subdomain']; + $temp=$app->db->queryAllRecords("SELECT * FROM dns_rr WHERE type = 'CAA' AND (name = ? OR name = ?) AND data like ?", $domain.'.', $subdomain.'.'.$domain.'.', '%letsencrypt%'); + if(count($temp) == 0) { + $caa = $app->db->queryOneRecord("SELECT * FROM dns_ssl_ca WHERE ca_issue = 'letsencrypt.org' AND active = 'Y'"); + $soa = $app->db->queryOneRecord("SELECT * FROM dns_soa WHERE origin = ?", $domain.'.'); + if(is_array($caa) && is_array($soa)) { + $records = array(); + $records[] = $domain.'.';; + if($subdomain != '' && $subdomain != 'www') $records[] = $subdomain.'.'.$domain; + foreach($records as $record) { + $new_rr = $app->db->queryOneRecord("SELECT * FROM dns_rr WHERE name = ?", $soa['origin']); + unset($new_rr['id']); + $new_rr['type'] = 'CAA'; + $new_rr['name'] = $record; + $new_rr['data'] = "0 issue \"$caa[ca_issue]\""; + $new_rr['ttl'] = $soa['ttl']; + $new_rr['active'] = 'Y'; + $new_rr['stamp'] = date('Y-m-d H:i:s'); + $new_rr['serial'] = $app->validate_dns->increase_serial($new_rr['serial']); + $app->db->datalogInsert('dns_rr', $new_rr, 'id', $new_rr['zone']); + $zone = $app->db->queryOneRecord("SELECT id, serial FROM dns_soa WHERE active = 'Y' AND id = ?", $new_rr['zone']); + $new_serial = $app->validate_dns->increase_serial($zone['serial']); + $app->db->datalogUpdate('dns_soa', array("serial" => $new_serial), 'id', $zone['id']); + } + } + } + } + } + +} // End class + +?> diff --git a/interface/web/admin/form/system_config.tform.php b/interface/web/admin/form/system_config.tform.php index 449805f3c1..d718e4ef82 100644 --- a/interface/web/admin/form/system_config.tform.php +++ b/interface/web/admin/form/system_config.tform.php @@ -730,5 +730,21 @@ $form["tabs"]['misc'] = array ( ) ); +$form['tabs']['dns_ca'] = array ( + 'title' => 'DNS CAs', + 'width' => 100, + 'template' => 'templates/system_config_dns_ca.htm', + 'fields' => array (), + 'plugins' => array ( + 'dns_ca' => array ( + 'class' => 'plugin_system_config_dns_ca', + 'options' => array() + ), + 'dns_ca_list' => array ( + 'class' => 'plugin_system_config_dns_ca_list', + 'options' => array() + ) + ) +); ?> diff --git a/interface/web/admin/lib/lang/ar_system_config.lng b/interface/web/admin/lib/lang/ar_system_config.lng index 45fb0fa9e9..6bebcf39ad 100644 --- a/interface/web/admin/lib/lang/ar_system_config.lng +++ b/interface/web/admin/lib/lang/ar_system_config.lng @@ -81,4 +81,12 @@ $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['ca_name_txt'] = 'Name'; +$wb['ca_issue_txt'] = 'Issue'; +$wb['ca_wildcard_txt'] = 'Use Wildcard'; +$wb['ca_critical_txt'] = 'Strict Check'; //For future use. At this time, CA’s do not recognize any other flag values as described in RFC 6844 +$wb['ca_iodef_txt'] = 'iodef'; +$wb['active_txt'] = 'Aktive'; +$wb['btn_save_txt'] = 'Save'; +$wb['btn_cancel_txt'] = 'Cancel'; ?> diff --git a/interface/web/admin/lib/lang/bg_system_config.lng b/interface/web/admin/lib/lang/bg_system_config.lng index 2f4eb86d3c..8c3444e9cb 100644 --- a/interface/web/admin/lib/lang/bg_system_config.lng +++ b/interface/web/admin/lib/lang/bg_system_config.lng @@ -81,4 +81,12 @@ $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['ca_name_txt'] = 'Name'; +$wb['ca_issue_txt'] = 'Issue'; +$wb['ca_wildcard_txt'] = 'Use Wildcard'; +$wb['ca_critical_txt'] = 'Strict Check'; //For future use. At this time, CA’s do not recognize any other flag values as described in RFC 6844 +$wb['ca_iodef_txt'] = 'iodef'; +$wb['active_txt'] = 'Aktive'; +$wb['btn_save_txt'] = 'Save'; +$wb['btn_cancel_txt'] = 'Cancel'; ?> diff --git a/interface/web/admin/lib/lang/br_system_config.lng b/interface/web/admin/lib/lang/br_system_config.lng index 02e3249d5f..887dffb6e3 100644 --- a/interface/web/admin/lib/lang/br_system_config.lng +++ b/interface/web/admin/lib/lang/br_system_config.lng @@ -1,6 +1,6 @@ <?php $wb['system_config_desc_txt'] = ''; -$wb['warning'] = 'Edite estes valores com cuidado! Não remova os prefixos em um sistema com mais de um cliente!'; +$wb['warning'] = 'Edite estes valores com cuidado! Não remova os prefixos em um sistema com mais de um cliente!!'; $wb['dbname_prefix_txt'] = 'Prefixo do banco de dados'; $wb['dbuser_prefix_txt'] = 'Prefixo do usuário do banco de dados'; $wb['shelluser_prefix_txt'] = 'Prefixo do usuário shell'; @@ -24,16 +24,16 @@ $wb['webdavuser_prefix_error_regex'] = 'Caractere não permitido no prefixo do u $wb['webftp_url_txt'] = 'URL do webFTP'; $wb['mailmailinglist_link_txt'] = 'Link para lista de e-mails'; $wb['mailmailinglist_url_txt'] = 'URL para lista de e-mails'; -$wb['admin_mail_txt'] = 'e-Mail do administrador'; +$wb['admin_mail_txt'] = 'E-mail do administrador'; $wb['admin_name_txt'] = 'Nome do administrador'; $wb['enable_custom_login_txt'] = 'Permite nome de acesso personalizado'; $wb['monitor_key_txt'] = 'Monitorar palavra reservada'; $wb['maintenance_mode_txt'] = 'Modo manutenção'; $wb['smtp_enabled_txt'] = 'Usar SMPT para enviar e-mails do sistema'; -$wb['smtp_host_txt'] = 'Servidor SMTP'; -$wb['smtp_port_txt'] = 'Porta'; -$wb['smtp_user_txt'] = 'Usuário'; -$wb['smtp_pass_txt'] = 'Senha'; +$wb['smtp_host_txt'] = 'Hospedeiro SMTP'; +$wb['smtp_port_txt'] = 'Porta SMTP'; +$wb['smtp_user_txt'] = 'Usuário SMTP'; +$wb['smtp_pass_txt'] = 'Senha SMTP'; $wb['smtp_crypt_txt'] = 'Usar criptografia SSL/TLS para conexões SMTP'; $wb['smtp_missing_admin_mail_txt'] = 'Por favor, insira um nome e e-mail do administrador se você usar smtp para envio dos e-mails do sistema.'; $wb['tab_change_discard_txt'] = 'Descartar modificações nesta aba'; @@ -67,7 +67,7 @@ $wb['customer_no_template_error_regex_txt'] = 'O número do gabarito do cliente $wb['customer_no_start_txt'] = 'Valor inicial do código do cliente'; $wb['customer_no_counter_txt'] = 'Contador de código do cliente'; $wb['session_timeout_txt'] = 'Duração da sessão (minutos)'; -$wb['session_allow_endless_txt'] = 'Habilitar \"Manter-me conectado\"'; +$wb['session_allow_endless_txt'] = 'Habilitar \\"manter-me conectado\\"'; $wb['min_password_length_txt'] = 'Comprimento mÃnimo da senha'; $wb['min_password_strength_txt'] = 'Dificuldade mÃnima da senha'; $wb['company_name_txt'] = 'Nome da empresa no tÃtulo da página'; @@ -76,9 +76,17 @@ $wb['custom_login_text_txt'] = 'Texto personalizado para página de acesso'; $wb['custom_login_link_txt'] = 'Link personalizado para página de acesso'; $wb['login_link_error_regex'] = 'Link personalizado para acesso inválido'; $wb['default_mailserver_txt'] = 'Servidor de e-mails padrão'; -$wb['default_webserver_txt'] = 'Servidor web padrão'; +$wb['default_webserver_txt'] = 'Servidor de páginas padrão'; $wb['default_dnsserver_txt'] = 'Servidor dns padrão'; $wb['default_slave_dnsserver_txt'] = 'Servidor dns secundário padrão'; -$wb['default_dbserver_txt'] = 'Servidor de banco de dados padrão'; -$wb['No'] = 'Não'; +$wb['default_dbserver_txt'] = 'Seridor de banco de dados padrão'; +$wb['No'] = 'No'; +$wb['ca_name_txt'] = 'Name'; +$wb['ca_issue_txt'] = 'Issue'; +$wb['ca_wildcard_txt'] = 'Use Wildcard'; +$wb['ca_critical_txt'] = 'Strict Check'; //For future use. At this time, CA’s do not recognize any other flag values as described in RFC 6844 +$wb['ca_iodef_txt'] = 'iodef'; +$wb['active_txt'] = 'Aktive'; +$wb['btn_save_txt'] = 'Save'; +$wb['btn_cancel_txt'] = 'Cancel'; ?> diff --git a/interface/web/admin/lib/lang/ca_system_config.lng b/interface/web/admin/lib/lang/ca_system_config.lng index 5809cc97b2..ff46470f59 100644 --- a/interface/web/admin/lib/lang/ca_system_config.lng +++ b/interface/web/admin/lib/lang/ca_system_config.lng @@ -81,4 +81,12 @@ $wb['reseller_can_use_options_txt'] = 'Reseller can use the option-tab for websi $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['ca_name_txt'] = 'Name'; +$wb['ca_issue_txt'] = 'Issue'; +$wb['ca_wildcard_txt'] = 'Use Wildcard'; +$wb['ca_critical_txt'] = 'Strict Check'; //For future use. At this time, CA’s do not recognize any other flag values as described in RFC 6844 +$wb['ca_iodef_txt'] = 'iodef'; +$wb['active_txt'] = 'Aktive'; +$wb['btn_save_txt'] = 'Save'; +$wb['btn_cancel_txt'] = 'Cancel'; ?> diff --git a/interface/web/admin/lib/lang/cz_system_config.lng b/interface/web/admin/lib/lang/cz_system_config.lng index 930e3ebbfb..4f0468833f 100644 --- a/interface/web/admin/lib/lang/cz_system_config.lng +++ b/interface/web/admin/lib/lang/cz_system_config.lng @@ -81,4 +81,12 @@ $wb['reseller_can_use_options_txt'] = 'Reseller can use the option-tab for websi $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'; +$wb['ca_name_txt'] = 'Name'; +$wb['ca_issue_txt'] = 'Issue'; +$wb['ca_wildcard_txt'] = 'Use Wildcard'; +$wb['ca_critical_txt'] = 'Strict Check'; //For future use. At this time, CA’s do not recognize any other flag values as described in RFC 6844 +$wb['ca_iodef_txt'] = 'iodef'; +$wb['active_txt'] = 'Aktive'; +$wb['btn_save_txt'] = 'Save'; +$wb['btn_cancel_txt'] = 'Cancel'; ?> diff --git a/interface/web/admin/lib/lang/de_system_config.lng b/interface/web/admin/lib/lang/de_system_config.lng index 8620491ad4..683291b1fb 100644 --- a/interface/web/admin/lib/lang/de_system_config.lng +++ b/interface/web/admin/lib/lang/de_system_config.lng @@ -81,4 +81,14 @@ $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['ca_name_txt'] = 'Name'; +$wb['ca_issue_txt'] = 'Issue'; +$wb['ca_wildcard_txt'] = 'Wildcard verwenden'; +$wb['ca_critical_txt'] = 'Strikte Ãœberprüfung'; //For future use. At this time, CA’s do not recognize any other flag values as described in RFC 6844 +$wb['ca_iodef_txt'] = 'iodef'; +$wb['active_txt'] = 'Aktiv'; +$wb['btn_save_txt'] = 'Speichern'; +$wb['btn_cancel_txt'] = 'Abbrechen'; ?> diff --git a/interface/web/admin/lib/lang/dk_system_config.lng b/interface/web/admin/lib/lang/dk_system_config.lng index 2834cacad6..5e96639d2c 100644 --- a/interface/web/admin/lib/lang/dk_system_config.lng +++ b/interface/web/admin/lib/lang/dk_system_config.lng @@ -81,4 +81,12 @@ $wb['reseller_can_use_options_txt'] = 'Reseller can use the option-tab for websi $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['ca_name_txt'] = 'Name'; +$wb['ca_issue_txt'] = 'Issue'; +$wb['ca_wildcard_txt'] = 'Use Wildcard'; +$wb['ca_critical_txt'] = 'Strict Check'; //For future use. At this time, CA’s do not recognize any other flag values as described in RFC 6844 +$wb['ca_iodef_txt'] = 'iodef'; +$wb['active_txt'] = 'Aktive'; +$wb['btn_save_txt'] = 'Save'; +$wb['btn_cancel_txt'] = 'Cancel'; ?> diff --git a/interface/web/admin/lib/lang/el_system_config.lng b/interface/web/admin/lib/lang/el_system_config.lng index 4dadc1290b..0191eb85e7 100644 --- a/interface/web/admin/lib/lang/el_system_config.lng +++ b/interface/web/admin/lib/lang/el_system_config.lng @@ -81,4 +81,12 @@ $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['ca_name_txt'] = 'Name'; +$wb['ca_issue_txt'] = 'Issue'; +$wb['ca_wildcard_txt'] = 'Use Wildcard'; +$wb['ca_critical_txt'] = 'Strict Check'; //For future use. At this time, CA’s do not recognize any other flag values as described in RFC 6844 +$wb['ca_iodef_txt'] = 'iodef'; +$wb['active_txt'] = 'Aktive'; +$wb['btn_save_txt'] = 'Save'; +$wb['btn_cancel_txt'] = 'Cancel'; ?> diff --git a/interface/web/admin/lib/lang/en_system_config.lng b/interface/web/admin/lib/lang/en_system_config.lng index 38f178f9f5..29732e4169 100644 --- a/interface/web/admin/lib/lang/en_system_config.lng +++ b/interface/web/admin/lib/lang/en_system_config.lng @@ -84,4 +84,12 @@ $wb["reseller_can_use_options_txt"] = "Reseller can use the option-tab for websi $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['ca_name_txt'] = 'Name'; +$wb['ca_issue_txt'] = 'Issue'; +$wb['ca_wildcard_txt'] = 'Use Wildcard'; +$wb['ca_critical_txt'] = 'Strict Check'; //For future use. At this time, CA’s do not recognize any other flag values as described in RFC 6844 +$wb['ca_iodef_txt'] = 'iodef'; +$wb['active_txt'] = 'Active'; +$wb['btn_save_txt'] = 'Save'; +$wb['btn_cancel_txt'] = 'Cancel'; ?> diff --git a/interface/web/admin/lib/lang/es_system_config.lng b/interface/web/admin/lib/lang/es_system_config.lng index cc81939cb3..21575571f0 100755 --- a/interface/web/admin/lib/lang/es_system_config.lng +++ b/interface/web/admin/lib/lang/es_system_config.lng @@ -81,4 +81,12 @@ $wb['webftp_url_txt'] = 'Enlace al cliente FTP por web'; $wb['webmail_url_error_regex'] = 'Dirección del correo web inválida'; $wb['webmail_url_note_txt'] = 'Marcador de posición:'; $wb['webmail_url_txt'] = 'URL de correo web'; +$wb['ca_name_txt'] = 'Name'; +$wb['ca_issue_txt'] = 'Issue'; +$wb['ca_wildcard_txt'] = 'Use Wildcard'; +$wb['ca_critical_txt'] = 'Strict Check'; //For future use. At this time, CA’s do not recognize any other flag values as described in RFC 6844 +$wb['ca_iodef_txt'] = 'iodef'; +$wb['active_txt'] = 'Aktive'; +$wb['btn_save_txt'] = 'Save'; +$wb['btn_cancel_txt'] = 'Cancel'; ?> diff --git a/interface/web/admin/lib/lang/fi_system_config.lng b/interface/web/admin/lib/lang/fi_system_config.lng index c4987d01a3..7fe364c972 100644 --- a/interface/web/admin/lib/lang/fi_system_config.lng +++ b/interface/web/admin/lib/lang/fi_system_config.lng @@ -81,4 +81,12 @@ $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['ca_name_txt'] = 'Name'; +$wb['ca_issue_txt'] = 'Issue'; +$wb['ca_wildcard_txt'] = 'Use Wildcard'; +$wb['ca_critical_txt'] = 'Strict Check'; //For future use. At this time, CA’s do not recognize any other flag values as described in RFC 6844 +$wb['ca_iodef_txt'] = 'iodef'; +$wb['active_txt'] = 'Aktive'; +$wb['btn_save_txt'] = 'Save'; +$wb['btn_cancel_txt'] = 'Cancel'; ?> diff --git a/interface/web/admin/lib/lang/fr_system_config.lng b/interface/web/admin/lib/lang/fr_system_config.lng index 5892e3a269..0d9d27d14f 100644 --- a/interface/web/admin/lib/lang/fr_system_config.lng +++ b/interface/web/admin/lib/lang/fr_system_config.lng @@ -81,4 +81,12 @@ $wb['reseller_can_use_options_txt'] = 'Reseller can use the option-tab for websi $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['ca_name_txt'] = 'Name'; +$wb['ca_issue_txt'] = 'Issue'; +$wb['ca_wildcard_txt'] = 'Use Wildcard'; +$wb['ca_critical_txt'] = 'Strict Check'; //For future use. At this time, CA’s do not recognize any other flag values as described in RFC 6844 +$wb['ca_iodef_txt'] = 'iodef'; +$wb['active_txt'] = 'Aktive'; +$wb['btn_save_txt'] = 'Save'; +$wb['btn_cancel_txt'] = 'Cancel'; ?> diff --git a/interface/web/admin/lib/lang/hr_system_config.lng b/interface/web/admin/lib/lang/hr_system_config.lng index e02ae57a20..ba926e3a71 100644 --- a/interface/web/admin/lib/lang/hr_system_config.lng +++ b/interface/web/admin/lib/lang/hr_system_config.lng @@ -81,4 +81,12 @@ $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['ca_name_txt'] = 'Name'; +$wb['ca_issue_txt'] = 'Issue'; +$wb['ca_wildcard_txt'] = 'Use Wildcard'; +$wb['ca_critical_txt'] = 'Strict Check'; //For future use. At this time, CA’s do not recognize any other flag values as described in RFC 6844 +$wb['ca_iodef_txt'] = 'iodef'; +$wb['active_txt'] = 'Aktive'; +$wb['btn_save_txt'] = 'Save'; +$wb['btn_cancel_txt'] = 'Cancel'; ?> diff --git a/interface/web/admin/lib/lang/hu_system_config.lng b/interface/web/admin/lib/lang/hu_system_config.lng index d26fc5be2d..9944f68b78 100644 --- a/interface/web/admin/lib/lang/hu_system_config.lng +++ b/interface/web/admin/lib/lang/hu_system_config.lng @@ -81,4 +81,12 @@ $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['ca_name_txt'] = 'Name'; +$wb['ca_issue_txt'] = 'Issue'; +$wb['ca_wildcard_txt'] = 'Use Wildcard'; +$wb['ca_critical_txt'] = 'Strict Check'; //For future use. At this time, CA’s do not recognize any other flag values as described in RFC 6844 +$wb['ca_iodef_txt'] = 'iodef'; +$wb['active_txt'] = 'Aktive'; +$wb['btn_save_txt'] = 'Save'; +$wb['btn_cancel_txt'] = 'Cancel'; ?> diff --git a/interface/web/admin/lib/lang/id_system_config.lng b/interface/web/admin/lib/lang/id_system_config.lng index c865dff3d8..65c1768354 100644 --- a/interface/web/admin/lib/lang/id_system_config.lng +++ b/interface/web/admin/lib/lang/id_system_config.lng @@ -81,4 +81,12 @@ $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['ca_name_txt'] = 'Name'; +$wb['ca_issue_txt'] = 'Issue'; +$wb['ca_wildcard_txt'] = 'Use Wildcard'; +$wb['ca_critical_txt'] = 'Strict Check'; //For future use. At this time, CA’s do not recognize any other flag values as described in RFC 6844 +$wb['ca_iodef_txt'] = 'iodef'; +$wb['active_txt'] = 'Aktive'; +$wb['btn_save_txt'] = 'Save'; +$wb['btn_cancel_txt'] = 'Cancel'; ?> diff --git a/interface/web/admin/lib/lang/it_system_config.lng b/interface/web/admin/lib/lang/it_system_config.lng index 396503f02e..e3c4fcaae7 100644 --- a/interface/web/admin/lib/lang/it_system_config.lng +++ b/interface/web/admin/lib/lang/it_system_config.lng @@ -81,4 +81,12 @@ $wb['reseller_can_use_options_txt'] = 'Reseller can use the option-tab for websi $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['ca_name_txt'] = 'Name'; +$wb['ca_issue_txt'] = 'Issue'; +$wb['ca_wildcard_txt'] = 'Use Wildcard'; +$wb['ca_critical_txt'] = 'Strict Check'; //For future use. At this time, CA’s do not recognize any other flag values as described in RFC 6844 +$wb['ca_iodef_txt'] = 'iodef'; +$wb['active_txt'] = 'Aktive'; +$wb['btn_save_txt'] = 'Save'; +$wb['btn_cancel_txt'] = 'Cancel'; ?> diff --git a/interface/web/admin/lib/lang/ja_system_config.lng b/interface/web/admin/lib/lang/ja_system_config.lng index fc32081d96..ce16ad15bb 100644 --- a/interface/web/admin/lib/lang/ja_system_config.lng +++ b/interface/web/admin/lib/lang/ja_system_config.lng @@ -81,4 +81,12 @@ $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['ca_name_txt'] = 'Name'; +$wb['ca_issue_txt'] = 'Issue'; +$wb['ca_wildcard_txt'] = 'Use Wildcard'; +$wb['ca_critical_txt'] = 'Strict Check'; //For future use. At this time, CA’s do not recognize any other flag values as described in RFC 6844 +$wb['ca_iodef_txt'] = 'iodef'; +$wb['active_txt'] = 'Aktive'; +$wb['btn_save_txt'] = 'Save'; +$wb['btn_cancel_txt'] = 'Cancel'; ?> diff --git a/interface/web/admin/lib/lang/nl_system_config.lng b/interface/web/admin/lib/lang/nl_system_config.lng index 5177888bb0..20df45f2bc 100644 --- a/interface/web/admin/lib/lang/nl_system_config.lng +++ b/interface/web/admin/lib/lang/nl_system_config.lng @@ -81,4 +81,12 @@ $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['ca_name_txt'] = 'Name'; +$wb['ca_issue_txt'] = 'Issue'; +$wb['ca_wildcard_txt'] = 'Use Wildcard'; +$wb['ca_critical_txt'] = 'Strict Check'; //For future use. At this time, CA’s do not recognize any other flag values as described in RFC 6844 +$wb['ca_iodef_txt'] = 'iodef'; +$wb['active_txt'] = 'Aktive'; +$wb['btn_save_txt'] = 'Save'; +$wb['btn_cancel_txt'] = 'Cancel'; ?> diff --git a/interface/web/admin/lib/lang/pl_system_config.lng b/interface/web/admin/lib/lang/pl_system_config.lng index cea6345e63..1c51b949a7 100644 --- a/interface/web/admin/lib/lang/pl_system_config.lng +++ b/interface/web/admin/lib/lang/pl_system_config.lng @@ -81,4 +81,12 @@ $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['ca_name_txt'] = 'Name'; +$wb['ca_issue_txt'] = 'Issue'; +$wb['ca_wildcard_txt'] = 'Use Wildcard'; +$wb['ca_critical_txt'] = 'Strict Check'; //For future use. At this time, CA’s do not recognize any other flag values as described in RFC 6844 +$wb['ca_iodef_txt'] = 'iodef'; +$wb['active_txt'] = 'Aktive'; +$wb['btn_save_txt'] = 'Save'; +$wb['btn_cancel_txt'] = 'Cancel'; ?> diff --git a/interface/web/admin/lib/lang/pt_system_config.lng b/interface/web/admin/lib/lang/pt_system_config.lng index 24ff94fca2..4a28e49a75 100644 --- a/interface/web/admin/lib/lang/pt_system_config.lng +++ b/interface/web/admin/lib/lang/pt_system_config.lng @@ -81,4 +81,12 @@ $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['ca_name_txt'] = 'Name'; +$wb['ca_issue_txt'] = 'Issue'; +$wb['ca_wildcard_txt'] = 'Use Wildcard'; +$wb['ca_critical_txt'] = 'Strict Check'; //For future use. At this time, CA’s do not recognize any other flag values as described in RFC 6844 +$wb['ca_iodef_txt'] = 'iodef'; +$wb['active_txt'] = 'Aktive'; +$wb['btn_save_txt'] = 'Save'; +$wb['btn_cancel_txt'] = 'Cancel'; ?> diff --git a/interface/web/admin/lib/lang/ro_system_config.lng b/interface/web/admin/lib/lang/ro_system_config.lng index b258ee1870..efbc6bf263 100644 --- a/interface/web/admin/lib/lang/ro_system_config.lng +++ b/interface/web/admin/lib/lang/ro_system_config.lng @@ -81,4 +81,12 @@ $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['ca_name_txt'] = 'Name'; +$wb['ca_issue_txt'] = 'Issue'; +$wb['ca_wildcard_txt'] = 'Use Wildcard'; +$wb['ca_critical_txt'] = 'Strict Check'; //For future use. At this time, CA’s do not recognize any other flag values as described in RFC 6844 +$wb['ca_iodef_txt'] = 'iodef'; +$wb['active_txt'] = 'Aktive'; +$wb['btn_save_txt'] = 'Save'; +$wb['btn_cancel_txt'] = 'Cancel'; ?> diff --git a/interface/web/admin/lib/lang/ru_system_config.lng b/interface/web/admin/lib/lang/ru_system_config.lng index c1909f3ba6..33f62e1161 100644 --- a/interface/web/admin/lib/lang/ru_system_config.lng +++ b/interface/web/admin/lib/lang/ru_system_config.lng @@ -1,4 +1,5 @@ <?php +$wb['System Config'] = 'ÐšÐ¾Ð½Ñ„Ð¸Ð³ÑƒÑ€Ð°Ñ†Ð¸Ñ ÑиÑтемы'; $wb['system_config_desc_txt'] = 'ÐаÑтройка параметров по умолчанию'; $wb['warning'] = 'ИзменÑйте Ñти Ð·Ð½Ð°Ñ‡ÐµÐ½Ð¸Ñ Ð°ÐºÐºÑƒÑ€Ð°Ñ‚Ð½Ð¾! Ðе удалÑйте префикÑÑ‹ на ÑиÑтемах где более одного пользователÑ.'; $wb['dbname_prefix_txt'] = 'ÐŸÑ€ÐµÑ„Ð¸ÐºÑ Ð±Ð°Ð·Ñ‹ данных'; @@ -14,7 +15,7 @@ $wb['mailboxlist_webmail_link_txt'] = 'СÑылка на веб-почту в Ñ $wb['webmail_url_txt'] = 'URL веб-почты'; $wb['phpmyadmin_url_txt'] = 'URL PHPMyAdmin'; $wb['use_domain_module_txt'] = 'ИÑпользовать модуль домена, чтобы добавить новые домены'; -$wb['use_domain_module_hint'] = 'При иÑпользовании Ñтого модулÑ, Ваши клиенты Ñмогут выбрать только один из доменов, Ñозданных Ð´Ð»Ñ Ð½Ð¸Ñ… админиÑтратором. Они не могут Ñвободно редактировать поле \"домен\". Чтобы Ñделать Ñти Ð¸Ð·Ð¼ÐµÐ½ÐµÐ½Ð¸Ñ Ð²Ð¸Ð´Ð¸Ð¼Ñ‹Ð¼Ð¸, Ð’Ñ‹ должны выйти и повторно войти в панель поÑле Ð¸Ð·Ð¼ÐµÐ½ÐµÐ½Ð¸Ñ Ñтого значениÑ.'; +$wb['use_domain_module_hint'] = 'При иÑпользовании Ñтого модулÑ, Ваши клиенты Ñмогут выбрать только один из доменов, Ñозданных Ð´Ð»Ñ Ð½Ð¸Ñ… админиÑтратором. Они не могут Ñвободно редактировать поле "домен". Чтобы Ñделать Ñти Ð¸Ð·Ð¼ÐµÐ½ÐµÐ½Ð¸Ñ Ð²Ð¸Ð´Ð¸Ð¼Ñ‹Ð¼Ð¸, Ð’Ñ‹ должны выйти и повторно войти в панель поÑле Ð¸Ð·Ð¼ÐµÐ½ÐµÐ½Ð¸Ñ Ñтого значениÑ.'; $wb['new_domain_txt'] = 'HTML текÑÑ‚, чтобы Ñоздать новый домен'; $wb['webdavuser_prefix_txt'] = 'ÐŸÑ€ÐµÑ„Ð¸ÐºÑ Ð¿Ð¾Ð»ÑŒÐ·Ð¾Ð²Ð°Ñ‚ÐµÐ»Ñ WebDAV'; $wb['webdavuser_prefix_error_regex'] = 'Ðекорректный Ñимвол в префикÑе Ð¿Ð¾Ð»ÑŒÐ·Ð¾Ð²Ð°Ñ‚ÐµÐ»Ñ WebDAV.'; @@ -67,7 +68,7 @@ $wb['customer_no_template_error_regex_txt'] = 'Шаблон номера Кли $wb['customer_no_start_txt'] = 'Ðачальное значение номера Клиента'; $wb['customer_no_counter_txt'] = 'Счётчик номера Клиента'; $wb['session_timeout_txt'] = 'Тайм-аут ÑеÑÑии (в минутах)'; -$wb['session_allow_endless_txt'] = 'Включить \"оÑтаватьÑÑ Ð² ÑиÑтеме\"'; +$wb['session_allow_endless_txt'] = 'Включить "оÑтаватьÑÑ Ð² ÑиÑтеме"'; $wb['No'] = 'Ðет'; $wb['min_password_length_txt'] = 'ÐœÐ¸Ð½Ð¸Ð¼Ð°Ð»ÑŒÐ½Ð°Ñ Ð´Ð»Ð¸Ð½Ð° паролÑ'; $wb['min_password_strength_txt'] = 'ÐœÐ¸Ð½Ð¸Ð¼Ð°Ð»ÑŒÐ½Ð°Ñ ÑтойкоÑÑ‚ÑŒ паролÑ'; @@ -81,4 +82,12 @@ $wb['default_webserver_txt'] = 'Web-Ñервер по умолчанию'; $wb['default_dnsserver_txt'] = 'DNS-Ñервер по умолчанию'; $wb['default_slave_dnsserver_txt'] = 'Вторичный DNS-Ñервер по умолчанию'; $wb['default_dbserver_txt'] = 'Сервер базы данных по умолчанию'; +$wb['ca_name_txt'] = 'Name'; +$wb['ca_issue_txt'] = 'Issue'; +$wb['ca_wildcard_txt'] = 'Use Wildcard'; +$wb['ca_critical_txt'] = 'Strict Check'; //For future use. At this time, CA’s do not recognize any other flag values as described in RFC 6844 +$wb['ca_iodef_txt'] = 'iodef'; +$wb['active_txt'] = 'Aktive'; +$wb['btn_save_txt'] = 'Save'; +$wb['btn_cancel_txt'] = 'Cancel'; ?> diff --git a/interface/web/admin/lib/lang/se_system_config.lng b/interface/web/admin/lib/lang/se_system_config.lng index 285f7807e8..c9ccca89e9 100644 --- a/interface/web/admin/lib/lang/se_system_config.lng +++ b/interface/web/admin/lib/lang/se_system_config.lng @@ -81,4 +81,12 @@ $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['ca_name_txt'] = 'Name'; +$wb['ca_issue_txt'] = 'Issue'; +$wb['ca_wildcard_txt'] = 'Use Wildcard'; +$wb['ca_critical_txt'] = 'Strict Check'; //For future use. At this time, CA’s do not recognize any other flag values as described in RFC 6844 +$wb['ca_iodef_txt'] = 'iodef'; +$wb['active_txt'] = 'Aktive'; +$wb['btn_save_txt'] = 'Save'; +$wb['btn_cancel_txt'] = 'Cancel'; ?> diff --git a/interface/web/admin/lib/lang/sk_system_config.lng b/interface/web/admin/lib/lang/sk_system_config.lng index be8789a803..fdeb1648c4 100644 --- a/interface/web/admin/lib/lang/sk_system_config.lng +++ b/interface/web/admin/lib/lang/sk_system_config.lng @@ -81,4 +81,12 @@ $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['ca_name_txt'] = 'Name'; +$wb['ca_issue_txt'] = 'Issue'; +$wb['ca_wildcard_txt'] = 'Use Wildcard'; +$wb['ca_critical_txt'] = 'Strict Check'; //For future use. At this time, CA’s do not recognize any other flag values as described in RFC 6844 +$wb['ca_iodef_txt'] = 'iodef'; +$wb['active_txt'] = 'Aktive'; +$wb['btn_save_txt'] = 'Save'; +$wb['btn_cancel_txt'] = 'Cancel'; ?> diff --git a/interface/web/admin/lib/lang/tr_system_config.lng b/interface/web/admin/lib/lang/tr_system_config.lng index 8f5bef0e4d..18657743ec 100644 --- a/interface/web/admin/lib/lang/tr_system_config.lng +++ b/interface/web/admin/lib/lang/tr_system_config.lng @@ -81,4 +81,12 @@ $wb['reseller_can_use_options_txt'] = 'Reseller can use the option-tab for websi $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['ca_name_txt'] = 'Name'; +$wb['ca_issue_txt'] = 'Issue'; +$wb['ca_wildcard_txt'] = 'Use Wildcard'; +$wb['ca_critical_txt'] = 'Strict Check'; //For future use. At this time, CA’s do not recognize any other flag values as described in RFC 6844 +$wb['ca_iodef_txt'] = 'iodef'; +$wb['active_txt'] = 'Aktive'; +$wb['btn_save_txt'] = 'Save'; +$wb['btn_cancel_txt'] = 'Cancel'; ?> diff --git a/interface/web/dns/ajax_get_json.php b/interface/web/dns/ajax_get_json.php index c2da4dce63..b2c381f3e4 100644 --- a/interface/web/dns/ajax_get_json.php +++ b/interface/web/dns/ajax_get_json.php @@ -35,6 +35,7 @@ require_once '../../lib/app.inc.php'; $app->auth->check_module_permissions('dns'); $type = $_GET["type"]; +$ca_id = $_GET['ca_id']; if($type == 'get_ipv4'){ $result = array(); @@ -54,6 +55,17 @@ if($type == 'get_ipv6'){ $json = $app->functions->json_encode($result); } +if($type == 'ca_wildcard'){ + $json = '{'; + $json .= '"ca_wildcard":"'; + $tmp = $app->db->queryOneRecord("SELECT ca_wildcard, ca_issue, ca_critical FROM dns_ssl_ca WHERE id = ?", $ca_id); + $json .= $tmp['ca_wildcard'].'"'; + $json .= ',"ca_issue":"'.$tmp['ca_issue'].'"'; + $json .= ',"ca_critical":"'.$tmp['ca_critical'].'"'; + unset($tmp); + $json .= '}'; +} + header('Content-type: application/json'); echo $json; ?> diff --git a/interface/web/dns/dns_caa_edit.php b/interface/web/dns/dns_caa_edit.php new file mode 100644 index 0000000000..c3d8618414 --- /dev/null +++ b/interface/web/dns/dns_caa_edit.php @@ -0,0 +1,222 @@ +<?php +/* +Copyright (c) 2017, Florian Schaal, schaal @it UG +All rights reserved. + +Redistribution and use in source and binary forms, with or without modification, +are permitted provided that the following conditions are met: + + * Redistributions of source code must retain the above copyright notice, + this list of conditions and the following disclaimer. + * Redistributions in binary form must reproduce the above copyright notice, + this list of conditions and the following disclaimer in the documentation + and/or other materials provided with the distribution. + * Neither the name of ISPConfig nor the names of its contributors + may be used to endorse or promote products derived from this software without + specific prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND +ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED +WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. +IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, +INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, +BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY +OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING +NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, +EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. +*/ + +/****************************************** +* Begin Form configuration +******************************************/ + +$tform_def_file = 'form/dns_caa.tform.php'; + +/****************************************** +* End Form configuration +******************************************/ + +require_once '../../lib/config.inc.php'; +require_once '../../lib/app.inc.php'; + +//* Check permissions for module +$app->auth->check_module_permissions('dns'); + +// Loading classes +$app->uses('tpl,tform,tform_actions,validate_dns'); +$app->load('tform_actions'); + +class page_action extends tform_actions { + + function onShowNew() { + global $app; + // we will check only users, not admins + if($_SESSION['s']['user']['typ'] == 'user') { + // Get the limits of the client + $client_group_id = intval($_SESSION['s']['user']['default_group']); + $client = $app->db->queryOneRecord("SELECT limit_dns_record FROM sys_group, client WHERE sys_group.client_id = client.client_id and sys_group.groupid = ?", $client_group_id); + + // Check if the user may add another record. + if($client['limit_dns_record'] >= 0) { + $tmp = $app->db->queryOneRecord("SELECT count(id) as number FROM dns_rr WHERE sys_groupid = ?", $client_group_id); + if($tmp['number'] >= $client['limit_dns_record']) { + $app->error($app->tform->wordbook['limit_dns_record_txt']); + } + } + } + + parent::onShowNew(); + } + + function onShowEnd() { + global $app; + + $zone = @(!isset($this->dataRecord['zone']))?$app->functions->intval($_GET['zone']):$this->dataRecord['zone']; + + // get domain-name + $sql = "SELECT * FROM dns_soa WHERE id = ? AND " . $app->tform->getAuthSQL('r'); + $soa = $app->db->queryOneRecord($sql, $zone); + $domain_name = rtrim($soa['origin'], '.'); + $app->tpl->setVar('name', $domain_name); + if($this->id > 0) { + $temp = $this->dataRecord['name']; + $temp = str_replace($soa['origin'], '', $this->dataRecord['name']); + $temp = trim($temp,'.'); + if(trim($temp != '')) $app->tpl->setVar('additional', $temp); + unset($temp); + } + + //create ca-list + $rec = $app->db->QueryAllRecords("SELECT * FROM dns_ssl_ca WHERE active = 'Y' AND ca_issue != '' ORDER by ca_name ASC"); + $ca_select = "<option value='0' >".$app->tform->wordbook['select_txt']."</option>"; + if(count($rec) > 0) { + foreach($rec as $ca) { + if(strpos($this->dataRecord['data'], $ca['ca_issue']) !== FALSE) $selected = ' selected'; else $selected=''; + $ca_select .= "<option value='$ca[id]'$selected>$ca[ca_name]</option>\r\n"; + } + } + $app->tpl->setVar('ca_list', $ca_select); + $app->tpl->setVar('type', 'CAA'); + if($this->id > 0) { + if(stristr($this->dataRecord['data'], 'issuewild') !== FALSE) $app->tpl->setVar('allow_wildcard', 'CHECKED'); else $app->tpl->setVar('allow_wildcard', 'UNCHECKED'); + if(strpos($this->dataRecord['data'], '128') === 0) $app->tpl->setVar('allow_critical', 'CHECKED'); else $app->tpl->setVar('allow_critical', 'UNCHECKED'); + $app->tpl->setVar('edit_disabled', 1); + } else { + $app->tpl->setVar('ttl', $soa['ttl']); + } + + parent::onShowEnd(); + } + + function onSubmit() { + global $app; + + // Check the client limits, if user is not the admin + if($_SESSION['s']['user']['typ'] != 'admin') { // if user is not admin + // Get the limits of the client + $client_group_id = intval($_SESSION['s']['user']['default_group']); + $client = $app->db->queryOneRecord("SELECT limit_dns_record FROM sys_group, client WHERE sys_group.client_id = client.client_id and sys_group.groupid = ?", $client_group_id); + + // Check if the user may add another record. + if($this->id == 0 && $client['limit_dns_record'] >= 0) { + $tmp = $app->db->queryOneRecord("SELECT count(id) as number FROM dns_rr WHERE sys_groupid = ?", $client_group_id); + if($tmp['number'] >= $client['limit_dns_record']) { + $app->error($app->tform->wordbook['limit_dns_record_txt']); + } + } + } // end if user is not admin + + // Check CA + if($this->dataRecord['ca_issue'] == '') $this->error('ca_error_txt'); + + // Get the parent soa record of the domain + $soa = $app->db->queryOneRecord("SELECT * FROM dns_soa WHERE id = ? AND " . $app->tform->getAuthSQL('r'), $_POST['zone']); + $this->dataRecord['name'] = $soa['origin']; + + // Check if Domain belongs to user + if($soa['id'] != $_POST['zone']) $this->error('no_zone_perm'); + + // Set the server ID of the rr record to the same server ID as the parent record. + $this->dataRecord['server_id'] = $soa['server_id']; + + // Set issue + $critical = 0; //* To use critical > 0, uncommented "<div class="critical form-group">" in the template + if(isset($this->dataRecord['allow_critical']) && $this->dataRecord['allow_critical'] == 'on' && isset($this->dataRecord['ca_critical']) && $this->dataRecord['ca_critical'] == 1) $critical = 128; + if(isset($this->dataRecord['allow_wildcard']) && $this->dataRecord['allow_wildcard'] == "on") { + $this->dataRecord['data'] = $critical.' issuewild "'.$this->dataRecord['ca_issue']; + } else { + $this->dataRecord['data'] = $critical.' issue "'.$this->dataRecord['ca_issue']; + } + unset($critical); + if(isset($this->dataRecord['options']) && $this->dataRecord['options'] != '') { + $options=explode(',', $this->dataRecord['options']); + foreach($options as $option) { + if(trim($option) != '') { + if(preg_match('/^(\w+|d\+)=(\w+|d\+)/', $option)) { + $this->dataRecord['data'] = $this->dataRecord['data'] . '; '.$option; + } else { + $this->error('ca_option_error'); + } + } + } + } + $this->dataRecord['data'] = $this->dataRecord['data'].'"'; + + // Set name + if($this->dataRecord['additional'] != '') { + $temp = explode(',', $this->dataRecord['additional'])[0]; // if we have more hostnames the interface-plugin will be used + $temp = trim($temp,'.'); + if(trim($temp != '')) $this->dataRecord['name'] = $temp.'.'.$this->dataRecord['name']; + unset($temp); + } + + // Check for duplicate + $temp = $app->db->queryOneRecord("SELECT * FROM dns_rr WHERE type = 'CAA' AND name = ? AND data = ? AND active = ?", $this->dataRecord['name'], $this->dataRecord['data'], $POST['active']); + if(is_array($temp)) $this->error('caa_exists_error'); + unset($temp); + + // Update the serial number and timestamp of the RR record + $dns_rr = $app->db->queryOneRecord("SELECT serial FROM dns_rr WHERE id = ?", $this->id); + $this->dataRecord['serial'] = $app->validate_dns->increase_serial($dns_rr['serial']); + $this->dataRecord['stamp'] = date('Y-m-d H:i:s'); + + parent::onSubmit(); + } + + function onAfterInsert() { + global $app; + + //* Set the sys_groupid of the rr record to be the same then the sys_groupid of the soa record + $soa = $app->db->queryOneRecord("SELECT sys_groupid,serial FROM dns_soa WHERE id = ? AND " . $app->tform->getAuthSQL('r'), $this->dataRecord['zone']); + $app->db->datalogUpdate('dns_rr', array('sys_groupid' => $soa['sys_groupid']), 'id', $this->id); + + //* Update the serial number of the SOA record + $soa_id = $app->functions->intval($_POST["zone"]); + $serial = $app->validate_dns->increase_serial($soa['serial']); + $app->db->datalogUpdate('dns_soa', array('serial' => $serial), 'id', $soa_id); + + } + + function onAfterUpdate() { + global $app; + + //* Update the serial number of the SOA record + $soa = $app->db->queryOneRecord("SELECT serial FROM dns_soa WHERE id = ? AND " . $app->tform->getAuthSQL('r'), $this->dataRecord['zone']); + $soa_id = $app->functions->intval($_POST['zone']); + $serial = $app->validate_dns->increase_serial($soa['serial']); + $app->db->datalogUpdate('dns_soa', array('serial' => $serial), 'id', $soa_id); + } + + private function error($errmsg) { + global $app; + if (isset($app->tform->errorMessage)) $app->tform->errorMessage = '<br/>' . $app->tform->errorMessage; + $app->tform->errorMessage .= $app->tform->wordbook[$errmsg]; + } + +} + +$page = new page_action; +$page->onLoad(); + +?> diff --git a/interface/web/dns/form/dns_caa.tform.php b/interface/web/dns/form/dns_caa.tform.php new file mode 100644 index 0000000000..aa297f29d7 --- /dev/null +++ b/interface/web/dns/form/dns_caa.tform.php @@ -0,0 +1,117 @@ +<?php + +global $app; + +$form['title'] = 'DNS CAA Record'; +$form['description'] = ''; +$form['name'] = 'dns_caa'; +$form['action'] = 'dns_caa_edit.php'; +$form['db_table'] = 'dns_rr'; +$form['db_table_idx'] = 'id'; +$form['db_history'] = 'yes'; +$form['tab_default'] = 'dns'; +$form['list_default'] = 'dns_a_list.php'; +$form['auth'] = 'yes'; + +$form['auth_preset']['userid'] = 0; +$form['auth_preset']['groupid'] = 0; +$form['auth_preset']['perm_user'] = 'riud'; +$form['auth_preset']['perm_group'] = 'riud'; +$form['auth_preset']['perm_other'] = ''; + +$form['tabs']['dns'] = array ( + 'title' => 'DNS CAA', + 'width' => 100, + 'template' => 'templates/dns_caa_edit.htm', + 'fields' => array ( + 'server_id' => array ( + 'datatype' => 'INTEGER', + 'formtype' => 'SELECT', + 'default' => '', + 'value' => '', + 'width' => '30', + 'maxlength' => '255' + ), + 'zone' => array ( + 'datatype' => 'INTEGER', + 'formtype' => 'TEXT', + 'default' => @$app->functions->intval($_REQUEST['zone']), + 'value' => '', + 'width' => '30', + 'maxlength' => '255' + ), + 'name' => array ( + 'datatype' => 'VARCHAR', + 'formtype' => 'TEXT', + 'filters' => array( 0 => array( 'event' => 'SAVE', + 'type' => 'IDNTOASCII'), + 1 => array( 'event' => 'SHOW', + 'type' => 'IDNTOUTF8'), + 2 => array( 'event' => 'SAVE', + 'type' => 'TOLOWER') + ), + 'validators' => array ( 0 => array ( 'type' => 'REGEX', + 'regex' => '/^[a-zA-Z0-9\.\-\_]{0,255}$/', + 'errmsg'=> 'name_error_regex'), + ), + 'default' => '', + 'value' => '', + 'width' => '30', + 'maxlength' => '255' + ), + 'type' => array ( + 'datatype' => 'VARCHAR', + 'formtype' => 'TEXT', + 'default' => 'CAA', + 'value' => '', + 'width' => '5', + 'maxlength' => '5' + ), + 'data' => array ( + 'datatype' => 'VARCHAR', + 'formtype' => 'TEXT', + 'default' => '', + 'value' => '', + 'width' => '30', + 'maxlength' => '255' + ), + 'ttl' => array ( + 'datatype' => 'INTEGER', + 'formtype' => 'TEXT', + 'validators' => array ( 0 => array ( 'type' => 'RANGE', + 'range' => '60:', + 'errmsg'=> 'ttl_range_error'), + ), + 'default' => '3600', + 'value' => '', + 'width' => '10', + 'maxlength' => '10' + ), + 'active' => array ( + 'datatype' => 'VARCHAR', + 'formtype' => 'CHECKBOX', + 'default' => 'Y', + 'value' => array(0 => 'N', 1 => 'Y') + ), + 'stamp' => array ( + 'datatype' => 'VARCHAR', + 'formtype' => 'TEXT', + 'default' => '', + 'value' => '', + 'width' => '30', + 'maxlength' => '255' + ), + 'serial' => array ( + 'datatype' => 'INTEGER', + 'formtype' => 'TEXT', + 'default' => '', + 'value' => '', + 'width' => '10', + 'maxlength' => '10' + ), + ) +); + + + +?> diff --git a/interface/web/dns/lib/lang/ar_dns_caa.lng b/interface/web/dns/lib/lang/ar_dns_caa.lng new file mode 100644 index 0000000000..1fa7dcb7d5 --- /dev/null +++ b/interface/web/dns/lib/lang/ar_dns_caa.lng @@ -0,0 +1,19 @@ +<?php +$wb['ca_list_txt'] = 'Certifiction Authority'; +$wb['ca_domain_txt'] = 'Domain'; +$wb['ca_hostname_txt'] = 'Additional Hostnamen'; +$wb['ca_hostname_note_txt'] = '(Sepearated list with commas - empty for all hostnames)'; +$wb['ca_options_txt'] = 'Additional Options'; +$wb['ca_options_note_txt'] = 'requested by the CA (Sepearated list with commas)'; +$wb['ca_wildcard_txt'] = 'Use Wildcard SSL'; +$wb['ca_critical_txt'] = 'Strict check'; //For future use. At this time, CAAs do not recognize any other flag values as described in RFC 6844 +$wb['ttl_txt'] = 'TTL'; +$wb['active_txt'] = 'Active'; +$wb['select_txt'] = 'Select Certifiction Authority'; +$wb['no_zone_perm'] = 'You do not have the permission to add a record to this DNS zone.'; +$wb['limit_dns_record_txt'] = 'The max. number of DNS records for your account is reached.'; +$wb['ca_error_txt'] = 'No Certifiction Authority selected'; +$wb['caa_exists_error'] = 'CAA Record already exists'; +$wb['ca_option_error'] = 'Invalid format for additional options; OPTION=VALUE'; +$wb['ttl_range_error'] = 'Min. TTL time is 60 seconds.'; +?> diff --git a/interface/web/dns/lib/lang/bg_dns_caa.lng b/interface/web/dns/lib/lang/bg_dns_caa.lng new file mode 100644 index 0000000000..1fa7dcb7d5 --- /dev/null +++ b/interface/web/dns/lib/lang/bg_dns_caa.lng @@ -0,0 +1,19 @@ +<?php +$wb['ca_list_txt'] = 'Certifiction Authority'; +$wb['ca_domain_txt'] = 'Domain'; +$wb['ca_hostname_txt'] = 'Additional Hostnamen'; +$wb['ca_hostname_note_txt'] = '(Sepearated list with commas - empty for all hostnames)'; +$wb['ca_options_txt'] = 'Additional Options'; +$wb['ca_options_note_txt'] = 'requested by the CA (Sepearated list with commas)'; +$wb['ca_wildcard_txt'] = 'Use Wildcard SSL'; +$wb['ca_critical_txt'] = 'Strict check'; //For future use. At this time, CAAs do not recognize any other flag values as described in RFC 6844 +$wb['ttl_txt'] = 'TTL'; +$wb['active_txt'] = 'Active'; +$wb['select_txt'] = 'Select Certifiction Authority'; +$wb['no_zone_perm'] = 'You do not have the permission to add a record to this DNS zone.'; +$wb['limit_dns_record_txt'] = 'The max. number of DNS records for your account is reached.'; +$wb['ca_error_txt'] = 'No Certifiction Authority selected'; +$wb['caa_exists_error'] = 'CAA Record already exists'; +$wb['ca_option_error'] = 'Invalid format for additional options; OPTION=VALUE'; +$wb['ttl_range_error'] = 'Min. TTL time is 60 seconds.'; +?> diff --git a/interface/web/dns/lib/lang/br_dns_caa.lng b/interface/web/dns/lib/lang/br_dns_caa.lng new file mode 100644 index 0000000000..1fa7dcb7d5 --- /dev/null +++ b/interface/web/dns/lib/lang/br_dns_caa.lng @@ -0,0 +1,19 @@ +<?php +$wb['ca_list_txt'] = 'Certifiction Authority'; +$wb['ca_domain_txt'] = 'Domain'; +$wb['ca_hostname_txt'] = 'Additional Hostnamen'; +$wb['ca_hostname_note_txt'] = '(Sepearated list with commas - empty for all hostnames)'; +$wb['ca_options_txt'] = 'Additional Options'; +$wb['ca_options_note_txt'] = 'requested by the CA (Sepearated list with commas)'; +$wb['ca_wildcard_txt'] = 'Use Wildcard SSL'; +$wb['ca_critical_txt'] = 'Strict check'; //For future use. At this time, CAAs do not recognize any other flag values as described in RFC 6844 +$wb['ttl_txt'] = 'TTL'; +$wb['active_txt'] = 'Active'; +$wb['select_txt'] = 'Select Certifiction Authority'; +$wb['no_zone_perm'] = 'You do not have the permission to add a record to this DNS zone.'; +$wb['limit_dns_record_txt'] = 'The max. number of DNS records for your account is reached.'; +$wb['ca_error_txt'] = 'No Certifiction Authority selected'; +$wb['caa_exists_error'] = 'CAA Record already exists'; +$wb['ca_option_error'] = 'Invalid format for additional options; OPTION=VALUE'; +$wb['ttl_range_error'] = 'Min. TTL time is 60 seconds.'; +?> diff --git a/interface/web/dns/lib/lang/ca_dns_caa.lng b/interface/web/dns/lib/lang/ca_dns_caa.lng new file mode 100644 index 0000000000..1fa7dcb7d5 --- /dev/null +++ b/interface/web/dns/lib/lang/ca_dns_caa.lng @@ -0,0 +1,19 @@ +<?php +$wb['ca_list_txt'] = 'Certifiction Authority'; +$wb['ca_domain_txt'] = 'Domain'; +$wb['ca_hostname_txt'] = 'Additional Hostnamen'; +$wb['ca_hostname_note_txt'] = '(Sepearated list with commas - empty for all hostnames)'; +$wb['ca_options_txt'] = 'Additional Options'; +$wb['ca_options_note_txt'] = 'requested by the CA (Sepearated list with commas)'; +$wb['ca_wildcard_txt'] = 'Use Wildcard SSL'; +$wb['ca_critical_txt'] = 'Strict check'; //For future use. At this time, CAAs do not recognize any other flag values as described in RFC 6844 +$wb['ttl_txt'] = 'TTL'; +$wb['active_txt'] = 'Active'; +$wb['select_txt'] = 'Select Certifiction Authority'; +$wb['no_zone_perm'] = 'You do not have the permission to add a record to this DNS zone.'; +$wb['limit_dns_record_txt'] = 'The max. number of DNS records for your account is reached.'; +$wb['ca_error_txt'] = 'No Certifiction Authority selected'; +$wb['caa_exists_error'] = 'CAA Record already exists'; +$wb['ca_option_error'] = 'Invalid format for additional options; OPTION=VALUE'; +$wb['ttl_range_error'] = 'Min. TTL time is 60 seconds.'; +?> diff --git a/interface/web/dns/lib/lang/cz_dns_caa.lng b/interface/web/dns/lib/lang/cz_dns_caa.lng new file mode 100644 index 0000000000..1fa7dcb7d5 --- /dev/null +++ b/interface/web/dns/lib/lang/cz_dns_caa.lng @@ -0,0 +1,19 @@ +<?php +$wb['ca_list_txt'] = 'Certifiction Authority'; +$wb['ca_domain_txt'] = 'Domain'; +$wb['ca_hostname_txt'] = 'Additional Hostnamen'; +$wb['ca_hostname_note_txt'] = '(Sepearated list with commas - empty for all hostnames)'; +$wb['ca_options_txt'] = 'Additional Options'; +$wb['ca_options_note_txt'] = 'requested by the CA (Sepearated list with commas)'; +$wb['ca_wildcard_txt'] = 'Use Wildcard SSL'; +$wb['ca_critical_txt'] = 'Strict check'; //For future use. At this time, CAAs do not recognize any other flag values as described in RFC 6844 +$wb['ttl_txt'] = 'TTL'; +$wb['active_txt'] = 'Active'; +$wb['select_txt'] = 'Select Certifiction Authority'; +$wb['no_zone_perm'] = 'You do not have the permission to add a record to this DNS zone.'; +$wb['limit_dns_record_txt'] = 'The max. number of DNS records for your account is reached.'; +$wb['ca_error_txt'] = 'No Certifiction Authority selected'; +$wb['caa_exists_error'] = 'CAA Record already exists'; +$wb['ca_option_error'] = 'Invalid format for additional options; OPTION=VALUE'; +$wb['ttl_range_error'] = 'Min. TTL time is 60 seconds.'; +?> diff --git a/interface/web/dns/lib/lang/de_dns_caa.lng b/interface/web/dns/lib/lang/de_dns_caa.lng new file mode 100644 index 0000000000..88dbf6e47a --- /dev/null +++ b/interface/web/dns/lib/lang/de_dns_caa.lng @@ -0,0 +1,19 @@ +<?php +$wb['ca_list_txt'] = 'Zertifizierungsstelle'; +$wb['ca_domain_txt'] = 'Domain'; +$wb['ca_hostname_txt'] = 'zusätzliche Hostnamen'; +$wb['ca_hostname_note_txt'] = '(mit Komma getrennte Liste - leer für alle Namen)'; +$wb['ca_options_txt'] = 'zusätzliche Angaben'; +$wb['ca_options_note_txt'] = 'von der Zertifizierungsstelle vorgegeben (mit Komma getrennte Liste)'; +$wb['ca_wildcard_txt'] = 'Wildcard verwenden'; +$wb['ca_critical_txt'] = 'Strikte Ãœberprüfung durch die Zertifizierungsstelle'; //For future use. At this time, CA’s do not recognize any other flag values as described in RFC 6844 +$wb['ttl_txt'] = 'TTL'; +$wb['active_txt'] = 'Aktiv'; +$wb['select_txt'] = 'Zertifizierungstelle auswählen'; +$wb['no_zone_perm'] = 'Sie haben nicht die Berechtigung, einen Eintrag zu dieser DNS Zone hinzuzufügen.'; +$wb['limit_dns_record_txt'] = 'Die maximale Anzahl an DNS Einträgen für Ihr Konto wurde erreicht.'; +$wb['ca_error_txt'] = 'Keine Zertifizierungsstelle gewählt'; +$wb['caa_exists_error'] = 'Eintrag bereits vorhanden'; +$wb['ca_option_error'] = 'Ungültiges Format für zusätzliche Angaben. OPTION=WERT'; +$wb['ttl_range_error'] = 'Min. TTL ist 60 Sekunden.'; +?> diff --git a/interface/web/dns/lib/lang/dk_dns_caa.lng b/interface/web/dns/lib/lang/dk_dns_caa.lng new file mode 100644 index 0000000000..1fa7dcb7d5 --- /dev/null +++ b/interface/web/dns/lib/lang/dk_dns_caa.lng @@ -0,0 +1,19 @@ +<?php +$wb['ca_list_txt'] = 'Certifiction Authority'; +$wb['ca_domain_txt'] = 'Domain'; +$wb['ca_hostname_txt'] = 'Additional Hostnamen'; +$wb['ca_hostname_note_txt'] = '(Sepearated list with commas - empty for all hostnames)'; +$wb['ca_options_txt'] = 'Additional Options'; +$wb['ca_options_note_txt'] = 'requested by the CA (Sepearated list with commas)'; +$wb['ca_wildcard_txt'] = 'Use Wildcard SSL'; +$wb['ca_critical_txt'] = 'Strict check'; //For future use. At this time, CAAs do not recognize any other flag values as described in RFC 6844 +$wb['ttl_txt'] = 'TTL'; +$wb['active_txt'] = 'Active'; +$wb['select_txt'] = 'Select Certifiction Authority'; +$wb['no_zone_perm'] = 'You do not have the permission to add a record to this DNS zone.'; +$wb['limit_dns_record_txt'] = 'The max. number of DNS records for your account is reached.'; +$wb['ca_error_txt'] = 'No Certifiction Authority selected'; +$wb['caa_exists_error'] = 'CAA Record already exists'; +$wb['ca_option_error'] = 'Invalid format for additional options; OPTION=VALUE'; +$wb['ttl_range_error'] = 'Min. TTL time is 60 seconds.'; +?> diff --git a/interface/web/dns/lib/lang/el_dns_caa.lng b/interface/web/dns/lib/lang/el_dns_caa.lng new file mode 100644 index 0000000000..1fa7dcb7d5 --- /dev/null +++ b/interface/web/dns/lib/lang/el_dns_caa.lng @@ -0,0 +1,19 @@ +<?php +$wb['ca_list_txt'] = 'Certifiction Authority'; +$wb['ca_domain_txt'] = 'Domain'; +$wb['ca_hostname_txt'] = 'Additional Hostnamen'; +$wb['ca_hostname_note_txt'] = '(Sepearated list with commas - empty for all hostnames)'; +$wb['ca_options_txt'] = 'Additional Options'; +$wb['ca_options_note_txt'] = 'requested by the CA (Sepearated list with commas)'; +$wb['ca_wildcard_txt'] = 'Use Wildcard SSL'; +$wb['ca_critical_txt'] = 'Strict check'; //For future use. At this time, CAAs do not recognize any other flag values as described in RFC 6844 +$wb['ttl_txt'] = 'TTL'; +$wb['active_txt'] = 'Active'; +$wb['select_txt'] = 'Select Certifiction Authority'; +$wb['no_zone_perm'] = 'You do not have the permission to add a record to this DNS zone.'; +$wb['limit_dns_record_txt'] = 'The max. number of DNS records for your account is reached.'; +$wb['ca_error_txt'] = 'No Certifiction Authority selected'; +$wb['caa_exists_error'] = 'CAA Record already exists'; +$wb['ca_option_error'] = 'Invalid format for additional options; OPTION=VALUE'; +$wb['ttl_range_error'] = 'Min. TTL time is 60 seconds.'; +?> diff --git a/interface/web/dns/lib/lang/en_dns_caa.lng b/interface/web/dns/lib/lang/en_dns_caa.lng new file mode 100644 index 0000000000..bf5b2ac8e1 --- /dev/null +++ b/interface/web/dns/lib/lang/en_dns_caa.lng @@ -0,0 +1,19 @@ +<?php +$wb['ca_list_txt'] = 'Certifiction Authority'; +$wb['ca_domain_txt'] = 'Domain'; +$wb['ca_hostname_txt'] = 'Additional Hostnames'; +$wb['ca_hostname_note_txt'] = '(Sepearated list with commas - empty for all hostnames)'; +$wb['ca_options_txt'] = 'Additional Options'; +$wb['ca_options_note_txt'] = 'requested by the CA (Sepearated list with commas)'; +$wb['ca_wildcard_txt'] = 'Use Wildcard SSL'; +$wb['ca_critical_txt'] = 'Strict check'; //For future use. At this time, CAAs do not recognize any other flag values as described in RFC 6844 +$wb['ttl_txt'] = 'TTL'; +$wb['active_txt'] = 'Active'; +$wb['select_txt'] = 'Select Certifiction Authority'; +$wb['no_zone_perm'] = 'You do not have the permission to add a record to this DNS zone.'; +$wb['limit_dns_record_txt'] = 'The max. number of DNS records for your account is reached.'; +$wb['ca_error_txt'] = 'No Certifiction Authority selected'; +$wb['caa_exists_error'] = 'CAA Record already exists'; +$wb['ca_option_error'] = 'Invalid format for additional options; OPTION=VALUE'; +$wb['ttl_range_error'] = 'Min. TTL time is 60 seconds.'; +?> diff --git a/interface/web/dns/lib/lang/es_dns_caa.lng b/interface/web/dns/lib/lang/es_dns_caa.lng new file mode 100644 index 0000000000..bf5b2ac8e1 --- /dev/null +++ b/interface/web/dns/lib/lang/es_dns_caa.lng @@ -0,0 +1,19 @@ +<?php +$wb['ca_list_txt'] = 'Certifiction Authority'; +$wb['ca_domain_txt'] = 'Domain'; +$wb['ca_hostname_txt'] = 'Additional Hostnames'; +$wb['ca_hostname_note_txt'] = '(Sepearated list with commas - empty for all hostnames)'; +$wb['ca_options_txt'] = 'Additional Options'; +$wb['ca_options_note_txt'] = 'requested by the CA (Sepearated list with commas)'; +$wb['ca_wildcard_txt'] = 'Use Wildcard SSL'; +$wb['ca_critical_txt'] = 'Strict check'; //For future use. At this time, CAAs do not recognize any other flag values as described in RFC 6844 +$wb['ttl_txt'] = 'TTL'; +$wb['active_txt'] = 'Active'; +$wb['select_txt'] = 'Select Certifiction Authority'; +$wb['no_zone_perm'] = 'You do not have the permission to add a record to this DNS zone.'; +$wb['limit_dns_record_txt'] = 'The max. number of DNS records for your account is reached.'; +$wb['ca_error_txt'] = 'No Certifiction Authority selected'; +$wb['caa_exists_error'] = 'CAA Record already exists'; +$wb['ca_option_error'] = 'Invalid format for additional options; OPTION=VALUE'; +$wb['ttl_range_error'] = 'Min. TTL time is 60 seconds.'; +?> diff --git a/interface/web/dns/lib/lang/fi_dns_caa.lng b/interface/web/dns/lib/lang/fi_dns_caa.lng new file mode 100644 index 0000000000..bf5b2ac8e1 --- /dev/null +++ b/interface/web/dns/lib/lang/fi_dns_caa.lng @@ -0,0 +1,19 @@ +<?php +$wb['ca_list_txt'] = 'Certifiction Authority'; +$wb['ca_domain_txt'] = 'Domain'; +$wb['ca_hostname_txt'] = 'Additional Hostnames'; +$wb['ca_hostname_note_txt'] = '(Sepearated list with commas - empty for all hostnames)'; +$wb['ca_options_txt'] = 'Additional Options'; +$wb['ca_options_note_txt'] = 'requested by the CA (Sepearated list with commas)'; +$wb['ca_wildcard_txt'] = 'Use Wildcard SSL'; +$wb['ca_critical_txt'] = 'Strict check'; //For future use. At this time, CAAs do not recognize any other flag values as described in RFC 6844 +$wb['ttl_txt'] = 'TTL'; +$wb['active_txt'] = 'Active'; +$wb['select_txt'] = 'Select Certifiction Authority'; +$wb['no_zone_perm'] = 'You do not have the permission to add a record to this DNS zone.'; +$wb['limit_dns_record_txt'] = 'The max. number of DNS records for your account is reached.'; +$wb['ca_error_txt'] = 'No Certifiction Authority selected'; +$wb['caa_exists_error'] = 'CAA Record already exists'; +$wb['ca_option_error'] = 'Invalid format for additional options; OPTION=VALUE'; +$wb['ttl_range_error'] = 'Min. TTL time is 60 seconds.'; +?> diff --git a/interface/web/dns/lib/lang/fr_dns_caa.lng b/interface/web/dns/lib/lang/fr_dns_caa.lng new file mode 100644 index 0000000000..bf5b2ac8e1 --- /dev/null +++ b/interface/web/dns/lib/lang/fr_dns_caa.lng @@ -0,0 +1,19 @@ +<?php +$wb['ca_list_txt'] = 'Certifiction Authority'; +$wb['ca_domain_txt'] = 'Domain'; +$wb['ca_hostname_txt'] = 'Additional Hostnames'; +$wb['ca_hostname_note_txt'] = '(Sepearated list with commas - empty for all hostnames)'; +$wb['ca_options_txt'] = 'Additional Options'; +$wb['ca_options_note_txt'] = 'requested by the CA (Sepearated list with commas)'; +$wb['ca_wildcard_txt'] = 'Use Wildcard SSL'; +$wb['ca_critical_txt'] = 'Strict check'; //For future use. At this time, CAAs do not recognize any other flag values as described in RFC 6844 +$wb['ttl_txt'] = 'TTL'; +$wb['active_txt'] = 'Active'; +$wb['select_txt'] = 'Select Certifiction Authority'; +$wb['no_zone_perm'] = 'You do not have the permission to add a record to this DNS zone.'; +$wb['limit_dns_record_txt'] = 'The max. number of DNS records for your account is reached.'; +$wb['ca_error_txt'] = 'No Certifiction Authority selected'; +$wb['caa_exists_error'] = 'CAA Record already exists'; +$wb['ca_option_error'] = 'Invalid format for additional options; OPTION=VALUE'; +$wb['ttl_range_error'] = 'Min. TTL time is 60 seconds.'; +?> diff --git a/interface/web/dns/lib/lang/hr_dns_caa.lng b/interface/web/dns/lib/lang/hr_dns_caa.lng new file mode 100644 index 0000000000..bf5b2ac8e1 --- /dev/null +++ b/interface/web/dns/lib/lang/hr_dns_caa.lng @@ -0,0 +1,19 @@ +<?php +$wb['ca_list_txt'] = 'Certifiction Authority'; +$wb['ca_domain_txt'] = 'Domain'; +$wb['ca_hostname_txt'] = 'Additional Hostnames'; +$wb['ca_hostname_note_txt'] = '(Sepearated list with commas - empty for all hostnames)'; +$wb['ca_options_txt'] = 'Additional Options'; +$wb['ca_options_note_txt'] = 'requested by the CA (Sepearated list with commas)'; +$wb['ca_wildcard_txt'] = 'Use Wildcard SSL'; +$wb['ca_critical_txt'] = 'Strict check'; //For future use. At this time, CAAs do not recognize any other flag values as described in RFC 6844 +$wb['ttl_txt'] = 'TTL'; +$wb['active_txt'] = 'Active'; +$wb['select_txt'] = 'Select Certifiction Authority'; +$wb['no_zone_perm'] = 'You do not have the permission to add a record to this DNS zone.'; +$wb['limit_dns_record_txt'] = 'The max. number of DNS records for your account is reached.'; +$wb['ca_error_txt'] = 'No Certifiction Authority selected'; +$wb['caa_exists_error'] = 'CAA Record already exists'; +$wb['ca_option_error'] = 'Invalid format for additional options; OPTION=VALUE'; +$wb['ttl_range_error'] = 'Min. TTL time is 60 seconds.'; +?> diff --git a/interface/web/dns/lib/lang/hu_dns_caa.lng b/interface/web/dns/lib/lang/hu_dns_caa.lng new file mode 100644 index 0000000000..bf5b2ac8e1 --- /dev/null +++ b/interface/web/dns/lib/lang/hu_dns_caa.lng @@ -0,0 +1,19 @@ +<?php +$wb['ca_list_txt'] = 'Certifiction Authority'; +$wb['ca_domain_txt'] = 'Domain'; +$wb['ca_hostname_txt'] = 'Additional Hostnames'; +$wb['ca_hostname_note_txt'] = '(Sepearated list with commas - empty for all hostnames)'; +$wb['ca_options_txt'] = 'Additional Options'; +$wb['ca_options_note_txt'] = 'requested by the CA (Sepearated list with commas)'; +$wb['ca_wildcard_txt'] = 'Use Wildcard SSL'; +$wb['ca_critical_txt'] = 'Strict check'; //For future use. At this time, CAAs do not recognize any other flag values as described in RFC 6844 +$wb['ttl_txt'] = 'TTL'; +$wb['active_txt'] = 'Active'; +$wb['select_txt'] = 'Select Certifiction Authority'; +$wb['no_zone_perm'] = 'You do not have the permission to add a record to this DNS zone.'; +$wb['limit_dns_record_txt'] = 'The max. number of DNS records for your account is reached.'; +$wb['ca_error_txt'] = 'No Certifiction Authority selected'; +$wb['caa_exists_error'] = 'CAA Record already exists'; +$wb['ca_option_error'] = 'Invalid format for additional options; OPTION=VALUE'; +$wb['ttl_range_error'] = 'Min. TTL time is 60 seconds.'; +?> diff --git a/interface/web/dns/lib/lang/id_dns_caa.lng b/interface/web/dns/lib/lang/id_dns_caa.lng new file mode 100644 index 0000000000..bf5b2ac8e1 --- /dev/null +++ b/interface/web/dns/lib/lang/id_dns_caa.lng @@ -0,0 +1,19 @@ +<?php +$wb['ca_list_txt'] = 'Certifiction Authority'; +$wb['ca_domain_txt'] = 'Domain'; +$wb['ca_hostname_txt'] = 'Additional Hostnames'; +$wb['ca_hostname_note_txt'] = '(Sepearated list with commas - empty for all hostnames)'; +$wb['ca_options_txt'] = 'Additional Options'; +$wb['ca_options_note_txt'] = 'requested by the CA (Sepearated list with commas)'; +$wb['ca_wildcard_txt'] = 'Use Wildcard SSL'; +$wb['ca_critical_txt'] = 'Strict check'; //For future use. At this time, CAAs do not recognize any other flag values as described in RFC 6844 +$wb['ttl_txt'] = 'TTL'; +$wb['active_txt'] = 'Active'; +$wb['select_txt'] = 'Select Certifiction Authority'; +$wb['no_zone_perm'] = 'You do not have the permission to add a record to this DNS zone.'; +$wb['limit_dns_record_txt'] = 'The max. number of DNS records for your account is reached.'; +$wb['ca_error_txt'] = 'No Certifiction Authority selected'; +$wb['caa_exists_error'] = 'CAA Record already exists'; +$wb['ca_option_error'] = 'Invalid format for additional options; OPTION=VALUE'; +$wb['ttl_range_error'] = 'Min. TTL time is 60 seconds.'; +?> diff --git a/interface/web/dns/lib/lang/it_dns_caa.lng b/interface/web/dns/lib/lang/it_dns_caa.lng new file mode 100644 index 0000000000..bf5b2ac8e1 --- /dev/null +++ b/interface/web/dns/lib/lang/it_dns_caa.lng @@ -0,0 +1,19 @@ +<?php +$wb['ca_list_txt'] = 'Certifiction Authority'; +$wb['ca_domain_txt'] = 'Domain'; +$wb['ca_hostname_txt'] = 'Additional Hostnames'; +$wb['ca_hostname_note_txt'] = '(Sepearated list with commas - empty for all hostnames)'; +$wb['ca_options_txt'] = 'Additional Options'; +$wb['ca_options_note_txt'] = 'requested by the CA (Sepearated list with commas)'; +$wb['ca_wildcard_txt'] = 'Use Wildcard SSL'; +$wb['ca_critical_txt'] = 'Strict check'; //For future use. At this time, CAAs do not recognize any other flag values as described in RFC 6844 +$wb['ttl_txt'] = 'TTL'; +$wb['active_txt'] = 'Active'; +$wb['select_txt'] = 'Select Certifiction Authority'; +$wb['no_zone_perm'] = 'You do not have the permission to add a record to this DNS zone.'; +$wb['limit_dns_record_txt'] = 'The max. number of DNS records for your account is reached.'; +$wb['ca_error_txt'] = 'No Certifiction Authority selected'; +$wb['caa_exists_error'] = 'CAA Record already exists'; +$wb['ca_option_error'] = 'Invalid format for additional options; OPTION=VALUE'; +$wb['ttl_range_error'] = 'Min. TTL time is 60 seconds.'; +?> diff --git a/interface/web/dns/lib/lang/ja_dns_caa.lng b/interface/web/dns/lib/lang/ja_dns_caa.lng new file mode 100644 index 0000000000..bf5b2ac8e1 --- /dev/null +++ b/interface/web/dns/lib/lang/ja_dns_caa.lng @@ -0,0 +1,19 @@ +<?php +$wb['ca_list_txt'] = 'Certifiction Authority'; +$wb['ca_domain_txt'] = 'Domain'; +$wb['ca_hostname_txt'] = 'Additional Hostnames'; +$wb['ca_hostname_note_txt'] = '(Sepearated list with commas - empty for all hostnames)'; +$wb['ca_options_txt'] = 'Additional Options'; +$wb['ca_options_note_txt'] = 'requested by the CA (Sepearated list with commas)'; +$wb['ca_wildcard_txt'] = 'Use Wildcard SSL'; +$wb['ca_critical_txt'] = 'Strict check'; //For future use. At this time, CAAs do not recognize any other flag values as described in RFC 6844 +$wb['ttl_txt'] = 'TTL'; +$wb['active_txt'] = 'Active'; +$wb['select_txt'] = 'Select Certifiction Authority'; +$wb['no_zone_perm'] = 'You do not have the permission to add a record to this DNS zone.'; +$wb['limit_dns_record_txt'] = 'The max. number of DNS records for your account is reached.'; +$wb['ca_error_txt'] = 'No Certifiction Authority selected'; +$wb['caa_exists_error'] = 'CAA Record already exists'; +$wb['ca_option_error'] = 'Invalid format for additional options; OPTION=VALUE'; +$wb['ttl_range_error'] = 'Min. TTL time is 60 seconds.'; +?> diff --git a/interface/web/dns/lib/lang/nl_dns_caa.lng b/interface/web/dns/lib/lang/nl_dns_caa.lng new file mode 100644 index 0000000000..bf5b2ac8e1 --- /dev/null +++ b/interface/web/dns/lib/lang/nl_dns_caa.lng @@ -0,0 +1,19 @@ +<?php +$wb['ca_list_txt'] = 'Certifiction Authority'; +$wb['ca_domain_txt'] = 'Domain'; +$wb['ca_hostname_txt'] = 'Additional Hostnames'; +$wb['ca_hostname_note_txt'] = '(Sepearated list with commas - empty for all hostnames)'; +$wb['ca_options_txt'] = 'Additional Options'; +$wb['ca_options_note_txt'] = 'requested by the CA (Sepearated list with commas)'; +$wb['ca_wildcard_txt'] = 'Use Wildcard SSL'; +$wb['ca_critical_txt'] = 'Strict check'; //For future use. At this time, CAAs do not recognize any other flag values as described in RFC 6844 +$wb['ttl_txt'] = 'TTL'; +$wb['active_txt'] = 'Active'; +$wb['select_txt'] = 'Select Certifiction Authority'; +$wb['no_zone_perm'] = 'You do not have the permission to add a record to this DNS zone.'; +$wb['limit_dns_record_txt'] = 'The max. number of DNS records for your account is reached.'; +$wb['ca_error_txt'] = 'No Certifiction Authority selected'; +$wb['caa_exists_error'] = 'CAA Record already exists'; +$wb['ca_option_error'] = 'Invalid format for additional options; OPTION=VALUE'; +$wb['ttl_range_error'] = 'Min. TTL time is 60 seconds.'; +?> diff --git a/interface/web/dns/lib/lang/pl_dns_caa.lng b/interface/web/dns/lib/lang/pl_dns_caa.lng new file mode 100644 index 0000000000..bf5b2ac8e1 --- /dev/null +++ b/interface/web/dns/lib/lang/pl_dns_caa.lng @@ -0,0 +1,19 @@ +<?php +$wb['ca_list_txt'] = 'Certifiction Authority'; +$wb['ca_domain_txt'] = 'Domain'; +$wb['ca_hostname_txt'] = 'Additional Hostnames'; +$wb['ca_hostname_note_txt'] = '(Sepearated list with commas - empty for all hostnames)'; +$wb['ca_options_txt'] = 'Additional Options'; +$wb['ca_options_note_txt'] = 'requested by the CA (Sepearated list with commas)'; +$wb['ca_wildcard_txt'] = 'Use Wildcard SSL'; +$wb['ca_critical_txt'] = 'Strict check'; //For future use. At this time, CAAs do not recognize any other flag values as described in RFC 6844 +$wb['ttl_txt'] = 'TTL'; +$wb['active_txt'] = 'Active'; +$wb['select_txt'] = 'Select Certifiction Authority'; +$wb['no_zone_perm'] = 'You do not have the permission to add a record to this DNS zone.'; +$wb['limit_dns_record_txt'] = 'The max. number of DNS records for your account is reached.'; +$wb['ca_error_txt'] = 'No Certifiction Authority selected'; +$wb['caa_exists_error'] = 'CAA Record already exists'; +$wb['ca_option_error'] = 'Invalid format for additional options; OPTION=VALUE'; +$wb['ttl_range_error'] = 'Min. TTL time is 60 seconds.'; +?> diff --git a/interface/web/dns/lib/lang/pt_dns_caa.lng b/interface/web/dns/lib/lang/pt_dns_caa.lng new file mode 100644 index 0000000000..bf5b2ac8e1 --- /dev/null +++ b/interface/web/dns/lib/lang/pt_dns_caa.lng @@ -0,0 +1,19 @@ +<?php +$wb['ca_list_txt'] = 'Certifiction Authority'; +$wb['ca_domain_txt'] = 'Domain'; +$wb['ca_hostname_txt'] = 'Additional Hostnames'; +$wb['ca_hostname_note_txt'] = '(Sepearated list with commas - empty for all hostnames)'; +$wb['ca_options_txt'] = 'Additional Options'; +$wb['ca_options_note_txt'] = 'requested by the CA (Sepearated list with commas)'; +$wb['ca_wildcard_txt'] = 'Use Wildcard SSL'; +$wb['ca_critical_txt'] = 'Strict check'; //For future use. At this time, CAAs do not recognize any other flag values as described in RFC 6844 +$wb['ttl_txt'] = 'TTL'; +$wb['active_txt'] = 'Active'; +$wb['select_txt'] = 'Select Certifiction Authority'; +$wb['no_zone_perm'] = 'You do not have the permission to add a record to this DNS zone.'; +$wb['limit_dns_record_txt'] = 'The max. number of DNS records for your account is reached.'; +$wb['ca_error_txt'] = 'No Certifiction Authority selected'; +$wb['caa_exists_error'] = 'CAA Record already exists'; +$wb['ca_option_error'] = 'Invalid format for additional options; OPTION=VALUE'; +$wb['ttl_range_error'] = 'Min. TTL time is 60 seconds.'; +?> diff --git a/interface/web/dns/lib/lang/ro_dns_caa.lng b/interface/web/dns/lib/lang/ro_dns_caa.lng new file mode 100644 index 0000000000..bf5b2ac8e1 --- /dev/null +++ b/interface/web/dns/lib/lang/ro_dns_caa.lng @@ -0,0 +1,19 @@ +<?php +$wb['ca_list_txt'] = 'Certifiction Authority'; +$wb['ca_domain_txt'] = 'Domain'; +$wb['ca_hostname_txt'] = 'Additional Hostnames'; +$wb['ca_hostname_note_txt'] = '(Sepearated list with commas - empty for all hostnames)'; +$wb['ca_options_txt'] = 'Additional Options'; +$wb['ca_options_note_txt'] = 'requested by the CA (Sepearated list with commas)'; +$wb['ca_wildcard_txt'] = 'Use Wildcard SSL'; +$wb['ca_critical_txt'] = 'Strict check'; //For future use. At this time, CAAs do not recognize any other flag values as described in RFC 6844 +$wb['ttl_txt'] = 'TTL'; +$wb['active_txt'] = 'Active'; +$wb['select_txt'] = 'Select Certifiction Authority'; +$wb['no_zone_perm'] = 'You do not have the permission to add a record to this DNS zone.'; +$wb['limit_dns_record_txt'] = 'The max. number of DNS records for your account is reached.'; +$wb['ca_error_txt'] = 'No Certifiction Authority selected'; +$wb['caa_exists_error'] = 'CAA Record already exists'; +$wb['ca_option_error'] = 'Invalid format for additional options; OPTION=VALUE'; +$wb['ttl_range_error'] = 'Min. TTL time is 60 seconds.'; +?> diff --git a/interface/web/dns/lib/lang/ru_dns_caa.lng b/interface/web/dns/lib/lang/ru_dns_caa.lng new file mode 100644 index 0000000000..bf5b2ac8e1 --- /dev/null +++ b/interface/web/dns/lib/lang/ru_dns_caa.lng @@ -0,0 +1,19 @@ +<?php +$wb['ca_list_txt'] = 'Certifiction Authority'; +$wb['ca_domain_txt'] = 'Domain'; +$wb['ca_hostname_txt'] = 'Additional Hostnames'; +$wb['ca_hostname_note_txt'] = '(Sepearated list with commas - empty for all hostnames)'; +$wb['ca_options_txt'] = 'Additional Options'; +$wb['ca_options_note_txt'] = 'requested by the CA (Sepearated list with commas)'; +$wb['ca_wildcard_txt'] = 'Use Wildcard SSL'; +$wb['ca_critical_txt'] = 'Strict check'; //For future use. At this time, CAAs do not recognize any other flag values as described in RFC 6844 +$wb['ttl_txt'] = 'TTL'; +$wb['active_txt'] = 'Active'; +$wb['select_txt'] = 'Select Certifiction Authority'; +$wb['no_zone_perm'] = 'You do not have the permission to add a record to this DNS zone.'; +$wb['limit_dns_record_txt'] = 'The max. number of DNS records for your account is reached.'; +$wb['ca_error_txt'] = 'No Certifiction Authority selected'; +$wb['caa_exists_error'] = 'CAA Record already exists'; +$wb['ca_option_error'] = 'Invalid format for additional options; OPTION=VALUE'; +$wb['ttl_range_error'] = 'Min. TTL time is 60 seconds.'; +?> diff --git a/interface/web/dns/lib/lang/se_dns_caa.lng b/interface/web/dns/lib/lang/se_dns_caa.lng new file mode 100644 index 0000000000..bf5b2ac8e1 --- /dev/null +++ b/interface/web/dns/lib/lang/se_dns_caa.lng @@ -0,0 +1,19 @@ +<?php +$wb['ca_list_txt'] = 'Certifiction Authority'; +$wb['ca_domain_txt'] = 'Domain'; +$wb['ca_hostname_txt'] = 'Additional Hostnames'; +$wb['ca_hostname_note_txt'] = '(Sepearated list with commas - empty for all hostnames)'; +$wb['ca_options_txt'] = 'Additional Options'; +$wb['ca_options_note_txt'] = 'requested by the CA (Sepearated list with commas)'; +$wb['ca_wildcard_txt'] = 'Use Wildcard SSL'; +$wb['ca_critical_txt'] = 'Strict check'; //For future use. At this time, CAAs do not recognize any other flag values as described in RFC 6844 +$wb['ttl_txt'] = 'TTL'; +$wb['active_txt'] = 'Active'; +$wb['select_txt'] = 'Select Certifiction Authority'; +$wb['no_zone_perm'] = 'You do not have the permission to add a record to this DNS zone.'; +$wb['limit_dns_record_txt'] = 'The max. number of DNS records for your account is reached.'; +$wb['ca_error_txt'] = 'No Certifiction Authority selected'; +$wb['caa_exists_error'] = 'CAA Record already exists'; +$wb['ca_option_error'] = 'Invalid format for additional options; OPTION=VALUE'; +$wb['ttl_range_error'] = 'Min. TTL time is 60 seconds.'; +?> diff --git a/interface/web/dns/lib/lang/sk_dns_caa.lng b/interface/web/dns/lib/lang/sk_dns_caa.lng new file mode 100644 index 0000000000..bf5b2ac8e1 --- /dev/null +++ b/interface/web/dns/lib/lang/sk_dns_caa.lng @@ -0,0 +1,19 @@ +<?php +$wb['ca_list_txt'] = 'Certifiction Authority'; +$wb['ca_domain_txt'] = 'Domain'; +$wb['ca_hostname_txt'] = 'Additional Hostnames'; +$wb['ca_hostname_note_txt'] = '(Sepearated list with commas - empty for all hostnames)'; +$wb['ca_options_txt'] = 'Additional Options'; +$wb['ca_options_note_txt'] = 'requested by the CA (Sepearated list with commas)'; +$wb['ca_wildcard_txt'] = 'Use Wildcard SSL'; +$wb['ca_critical_txt'] = 'Strict check'; //For future use. At this time, CAAs do not recognize any other flag values as described in RFC 6844 +$wb['ttl_txt'] = 'TTL'; +$wb['active_txt'] = 'Active'; +$wb['select_txt'] = 'Select Certifiction Authority'; +$wb['no_zone_perm'] = 'You do not have the permission to add a record to this DNS zone.'; +$wb['limit_dns_record_txt'] = 'The max. number of DNS records for your account is reached.'; +$wb['ca_error_txt'] = 'No Certifiction Authority selected'; +$wb['caa_exists_error'] = 'CAA Record already exists'; +$wb['ca_option_error'] = 'Invalid format for additional options; OPTION=VALUE'; +$wb['ttl_range_error'] = 'Min. TTL time is 60 seconds.'; +?> diff --git a/interface/web/dns/lib/lang/tr_dns_caa.lng b/interface/web/dns/lib/lang/tr_dns_caa.lng new file mode 100644 index 0000000000..bf5b2ac8e1 --- /dev/null +++ b/interface/web/dns/lib/lang/tr_dns_caa.lng @@ -0,0 +1,19 @@ +<?php +$wb['ca_list_txt'] = 'Certifiction Authority'; +$wb['ca_domain_txt'] = 'Domain'; +$wb['ca_hostname_txt'] = 'Additional Hostnames'; +$wb['ca_hostname_note_txt'] = '(Sepearated list with commas - empty for all hostnames)'; +$wb['ca_options_txt'] = 'Additional Options'; +$wb['ca_options_note_txt'] = 'requested by the CA (Sepearated list with commas)'; +$wb['ca_wildcard_txt'] = 'Use Wildcard SSL'; +$wb['ca_critical_txt'] = 'Strict check'; //For future use. At this time, CAAs do not recognize any other flag values as described in RFC 6844 +$wb['ttl_txt'] = 'TTL'; +$wb['active_txt'] = 'Active'; +$wb['select_txt'] = 'Select Certifiction Authority'; +$wb['no_zone_perm'] = 'You do not have the permission to add a record to this DNS zone.'; +$wb['limit_dns_record_txt'] = 'The max. number of DNS records for your account is reached.'; +$wb['ca_error_txt'] = 'No Certifiction Authority selected'; +$wb['caa_exists_error'] = 'CAA Record already exists'; +$wb['ca_option_error'] = 'Invalid format for additional options; OPTION=VALUE'; +$wb['ttl_range_error'] = 'Min. TTL time is 60 seconds.'; +?> diff --git a/interface/web/dns/list/dns_a.list.php b/interface/web/dns/list/dns_a.list.php index 748bc405d8..1c6999511d 100644 --- a/interface/web/dns/list/dns_a.list.php +++ b/interface/web/dns/list/dns_a.list.php @@ -132,7 +132,7 @@ $liste["item"][] = array( 'field' => "type", 'prefix' => "", 'suffix' => "", 'width' => "", - 'value' => array('A'=>'A', 'AAAA' => 'AAAA', 'ALIAS'=>'ALIAS', 'CNAME'=>'CNAME', 'DS'=>'DS', 'HINFO'=>'HINFO', 'LOC'=>'LOC', 'MX'=>'MX', 'NS'=>'NS', 'PTR'=>'PTR', 'RP'=>'RP', 'SRV'=>'SRV', 'TLSA'=>'TLSA', 'TXT'=>'TXT')); + 'value' => array('A'=>'A', 'AAAA' => 'AAAA', 'ALIAS'=>'ALIAS', 'CAA'=>'CAA', 'CNAME'=>'CNAME', 'DS'=>'DS', 'HINFO'=>'HINFO', 'LOC'=>'LOC', 'MX'=>'MX', 'NS'=>'NS', 'PTR'=>'PTR', 'RP'=>'RP', 'SRV'=>'SRV', 'TLSA'=>'TLSA', 'TXT'=>'TXT')); ?> diff --git a/interface/web/dns/templates/dns_a_list.htm b/interface/web/dns/templates/dns_a_list.htm index b8d57401bb..67bf8ac910 100644 --- a/interface/web/dns/templates/dns_a_list.htm +++ b/interface/web/dns/templates/dns_a_list.htm @@ -20,6 +20,7 @@ <button class="btn btn-default formbutton-success" type="button" data-load-content="dns/dns_a_edit.php?zone={tmpl_var name='parent_id'}">A</button> <button class="btn btn-default formbutton-success" type="button" data-load-content="dns/dns_aaaa_edit.php?zone={tmpl_var name='parent_id'}">AAAA</button> <button class="btn btn-default formbutton-success" type="button" data-load-content="dns/dns_alias_edit.php?zone={tmpl_var name='parent_id'}">ALIAS</button> + <button class="btn btn-default formbutton-success" type="button" data-load-content="dns/dns_caa_edit.php?zone={tmpl_var name='parent_id'}">CAA</button> <button class="btn btn-default formbutton-success" type="button" data-load-content="dns/dns_cname_edit.php?zone={tmpl_var name='parent_id'}">CNAME</button> <button class="btn btn-default formbutton-success" type="button" data-load-content="dns/dns_dkim_edit.php?zone={tmpl_var name='parent_id'}">DKIM</button> <button class="btn btn-default formbutton-success" type="button" data-load-content="dns/dns_ds_edit.php?zone={tmpl_var name='parent_id'}">DS</button> diff --git a/interface/web/dns/templates/dns_caa_edit.htm b/interface/web/dns/templates/dns_caa_edit.htm new file mode 100644 index 0000000000..3de64818b4 --- /dev/null +++ b/interface/web/dns/templates/dns_caa_edit.htm @@ -0,0 +1,74 @@ +<div class='page-header'><h1><tmpl_var name="list_head_txt"></h1></div> +<p><tmpl_var name="list_desc_txt"></p> + +<div class="form-group"> + <label for="ca_list" class="col-sm-2 control-label">{tmpl_var name='ca_list_txt'}</label> + <div class="col-sm-4"><select name="ca_list" id="ca_list" class="form-control">{tmpl_var name='ca_list'}</select></div> +</div> + +<div class="wildcard form-group"> + <label class="col-sm-2 control-label">{tmpl_var name='ca_wildcard_txt'}</label> + <div class="col-sm-4"> <input type="checkbox" id="allow_wildcard" name="allow_wildcard" {tmpl_var name='allow_wildcard'}/></div> +</div> + +<!-- +For future use. At this time, CA’s do not recognize any other flag values as described in RFC 6844 +<div class="critical form-group"> + <label class="col-sm-2 control-label">{tmpl_var name='ca_critical_txt'}</label> + <div class="col-sm-4"> <input type="checkbox" id="allow_critical" name="allow_critical" {tmpl_var name='allow_critical'}/></div> +</div> +--> + +<div class="form-group"> + <label for="name" class="col-sm-2 control-label">{tmpl_var name='ca_domain_txt'}</label> + <div class="col-sm-4"><input disabled type="text" name="name" id="name" value="{tmpl_var name='name'}" class="form-control" /></div> +</div> + +<div class="form-group"> + <label for="name" class="col-sm-2 control-label">{tmpl_var name='ca_hostname_txt'}</label> + <div class="col-sm-4"><input type="text" name="additional" id="additional" value="{tmpl_var name='additional'}" class="form-control" <tmpl_if name="edit_disabled">readonly</tmpl_if> /> </div> + <div class="input-sm">{tmpl_var name='ca_hostname_note_txt'}</div> +</div> + +<div class="form-group"> + <label for="name" class="col-sm-2 control-label">{tmpl_var name='ca_options_txt'}</label> + <div class="col-sm-4"><input type="text" name="options" id="options" value="{tmpl_var name='options'}" class="form-control" /></div> + <div class="input-sm">{tmpl_var name='ca_options_note_txt'}</div> +</div> + +<div class="form-group"> + <label for="ttl" class="col-sm-2 control-label">{tmpl_var name='ttl_txt'}</label> + <div class="col-sm-4"><input type="text" name="ttl" id="ttl" value="{tmpl_var name='ttl'}" class="form-control" /></div> +</div> + +<div class="form-group"> + <label class="col-sm-2 control-label">{tmpl_var name='active_txt'}</label> + <div class="col-sm-4">{tmpl_var name='active'}</div> +</div> + +<input type="hidden" name="id" value="{tmpl_var name='id'}"> +<input type="hidden" name="zone" value="{tmpl_var name='zone'}" id="zone"> +<input type="hidden" name="type" value="{tmpl_var name='type'}"> +<input type="hidden" name="ca_issue" value="{tmpl_var name='ca_issue'}"> +<input type="hidden" name="ca_critical" value="{tmpl_var name='ca_critical'}"> + +<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="dns/dns_caa_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="dns/dns_soa_edit.php?id={tmpl_var name='zone'}">{tmpl_var name='btn_cancel_txt'}</button> +</div></div> + +<script language="JavaScript" type="text/javascript"> + $(document).ready(function() { reloadForm(); }); + jQuery('#ca_list').change(function(){ reloadForm(); }); + function reloadForm(){ + var caID = jQuery('#ca_list').val(); + jQuery.getJSON('dns/ajax_get_json.php'+ '?' + Math.round(new Date().getTime()), {ca_id : caID, type : "ca_wildcard"}, function(data) { + if(data.ca_wildcard == "Y"){ jQuery('.wildcard').show(); } else { jQuery('.wildcard').hide(); } + if(data.ca_critical == "1"){ jQuery('.critical').show(); } else { jQuery('.critical').hide(); } + $('input[name="ca_issue"]').val(data.ca_issue); + $('input[name="ca_critical"]').val(data.ca_critical); + }); + } +</script> + + -- GitLab From d606add9df2ad1465e24f2ecd160c8cb6d48635b Mon Sep 17 00:00:00 2001 From: Florian Schaal <florian@schaal-24.de> Date: Sun, 24 Feb 2019 11:48:52 +0100 Subject: [PATCH 025/215] add server for last commit --- server/conf/bind_pri.domain.master | 7 ++++++ server/plugins-available/bind_plugin.inc.php | 24 ++++++++++++++++++++ 2 files changed, 31 insertions(+) diff --git a/server/conf/bind_pri.domain.master b/server/conf/bind_pri.domain.master index ed395064af..fb867901dc 100644 --- a/server/conf/bind_pri.domain.master +++ b/server/conf/bind_pri.domain.master @@ -20,6 +20,9 @@ $TTL {tmpl_var name='ttl'} <tmpl_if name="type" op='==' value='ALIAS'> {tmpl_var name='name'} {tmpl_var name='ttl'} CNAME {tmpl_var name='data'} </tmpl_if> +<tmpl_if name="type" op='==' value='CAA'> +{tmpl_var name='name'} {tmpl_var name='ttl'} CAA {tmpl_var name='data'} +</tmpl_if> <tmpl_if name="type" op='==' value='CNAME'> {tmpl_var name='name'} {tmpl_var name='ttl'} CNAME {tmpl_var name='data'} </tmpl_if> @@ -53,5 +56,9 @@ $TTL {tmpl_var name='ttl'} <tmpl_if name="type" op='==' value='TXT'> {tmpl_var name='name'} {tmpl_var name='ttl'} TXT "{tmpl_var name='data'}" </tmpl_if> +<tmpl_if name="type" op='==' value='TYPE257'> +{tmpl_var name='name'} {tmpl_var name='ttl'} TYPE257 {tmpl_var name='data'} +</tmpl_if> </tmpl_loop> + diff --git a/server/plugins-available/bind_plugin.inc.php b/server/plugins-available/bind_plugin.inc.php index 23856f0c86..edf7b93d9f 100644 --- a/server/plugins-available/bind_plugin.inc.php +++ b/server/plugins-available/bind_plugin.inc.php @@ -236,6 +236,17 @@ class bind_plugin { //* load the server configuration options $dns_config = $app->getconf->get_server_config($conf["server_id"], 'dns'); + //* Get the bind version + $bind_caa = false; + $bind = explode("\n", shell_exec('which named bind')); + $bind = reset($bind); + if(is_executable($bind)) { + exec($bind . ' -v 2>&1', $tmp); + $bind_caa = @(version_compare($tmp[0],"BIND 9.9.6", '>='))?true:false; + unset($tmp); + } + unset($bind); + //* Write the domain file if(!empty($data['new']['id'])) { $tpl = new tpl(); @@ -253,6 +264,19 @@ class bind_plugin { if($records[$i]['type'] == 'TXT' && strlen($records[$i]['data']) > 255) { $records[$i]['data'] = implode('" "',str_split( $records[$i]['data'], 255)); } + //* CAA-Records - Type257 for older bind-versions + if($records[$i]['type'] == 'CAA' && !$bind_caa) { + $records[$i]['type'] = 'TYPE257'; + $temp = explode(' ', $records[$i]['data']); + unset($temp[0]); + $records[$i]['data'] = implode(' ', $temp); + $data_new = str_replace(array('"', ' '), '', $records[$i]['data']); + $hex = unpack('H*', $data_new); + $hex[1] = '0005'.strtoupper($hex[1]); + $length = strlen($hex[1])/2; + $data_new = "\# $length $hex[1]"; + $records[$i]['data'] = $data_new; + } } } $tpl->setLoop('zones', $records); -- GitLab From ed9f9e9f08ac0e66b105c65742b4359d7cf246b4 Mon Sep 17 00:00:00 2001 From: Florian Schaal <florian@schaal-24.de> Date: Mon, 25 Feb 2019 08:35:51 +0100 Subject: [PATCH 026/215] update some lng-files from caa-backport --- .../web/admin/lib/lang/br_system_config.lng | 28 ++++++++++++------- .../web/admin/lib/lang/de_system_config.lng | 2 -- .../web/admin/lib/lang/ru_system_config.lng | 13 +++++++-- 3 files changed, 28 insertions(+), 15 deletions(-) diff --git a/interface/web/admin/lib/lang/br_system_config.lng b/interface/web/admin/lib/lang/br_system_config.lng index 887dffb6e3..8b5b6d0164 100644 --- a/interface/web/admin/lib/lang/br_system_config.lng +++ b/interface/web/admin/lib/lang/br_system_config.lng @@ -1,6 +1,6 @@ <?php $wb['system_config_desc_txt'] = ''; -$wb['warning'] = 'Edite estes valores com cuidado! Não remova os prefixos em um sistema com mais de um cliente!!'; +$wb['warning'] = 'Edite estes valores com cuidado! Não remova os prefixos em um sistema com mais de um cliente!'; $wb['dbname_prefix_txt'] = 'Prefixo do banco de dados'; $wb['dbuser_prefix_txt'] = 'Prefixo do usuário do banco de dados'; $wb['shelluser_prefix_txt'] = 'Prefixo do usuário shell'; @@ -24,16 +24,16 @@ $wb['webdavuser_prefix_error_regex'] = 'Caractere não permitido no prefixo do u $wb['webftp_url_txt'] = 'URL do webFTP'; $wb['mailmailinglist_link_txt'] = 'Link para lista de e-mails'; $wb['mailmailinglist_url_txt'] = 'URL para lista de e-mails'; -$wb['admin_mail_txt'] = 'E-mail do administrador'; +$wb['admin_mail_txt'] = 'e-Mail do administrador'; $wb['admin_name_txt'] = 'Nome do administrador'; $wb['enable_custom_login_txt'] = 'Permite nome de acesso personalizado'; $wb['monitor_key_txt'] = 'Monitorar palavra reservada'; $wb['maintenance_mode_txt'] = 'Modo manutenção'; $wb['smtp_enabled_txt'] = 'Usar SMPT para enviar e-mails do sistema'; -$wb['smtp_host_txt'] = 'Hospedeiro SMTP'; -$wb['smtp_port_txt'] = 'Porta SMTP'; -$wb['smtp_user_txt'] = 'Usuário SMTP'; -$wb['smtp_pass_txt'] = 'Senha SMTP'; +$wb['smtp_host_txt'] = 'Servidor SMTP'; +$wb['smtp_port_txt'] = 'Porta'; +$wb['smtp_user_txt'] = 'Usuário'; +$wb['smtp_pass_txt'] = 'Senha'; $wb['smtp_crypt_txt'] = 'Usar criptografia SSL/TLS para conexões SMTP'; $wb['smtp_missing_admin_mail_txt'] = 'Por favor, insira um nome e e-mail do administrador se você usar smtp para envio dos e-mails do sistema.'; $wb['tab_change_discard_txt'] = 'Descartar modificações nesta aba'; @@ -67,7 +67,7 @@ $wb['customer_no_template_error_regex_txt'] = 'O número do gabarito do cliente $wb['customer_no_start_txt'] = 'Valor inicial do código do cliente'; $wb['customer_no_counter_txt'] = 'Contador de código do cliente'; $wb['session_timeout_txt'] = 'Duração da sessão (minutos)'; -$wb['session_allow_endless_txt'] = 'Habilitar \\"manter-me conectado\\"'; +$wb['session_allow_endless_txt'] = 'Habilitar \"Manter-me conectado\"'; $wb['min_password_length_txt'] = 'Comprimento mÃnimo da senha'; $wb['min_password_strength_txt'] = 'Dificuldade mÃnima da senha'; $wb['company_name_txt'] = 'Nome da empresa no tÃtulo da página'; @@ -76,11 +76,19 @@ $wb['custom_login_text_txt'] = 'Texto personalizado para página de acesso'; $wb['custom_login_link_txt'] = 'Link personalizado para página de acesso'; $wb['login_link_error_regex'] = 'Link personalizado para acesso inválido'; $wb['default_mailserver_txt'] = 'Servidor de e-mails padrão'; -$wb['default_webserver_txt'] = 'Servidor de páginas padrão'; +$wb['default_webserver_txt'] = 'Servidor web padrão'; $wb['default_dnsserver_txt'] = 'Servidor dns padrão'; $wb['default_slave_dnsserver_txt'] = 'Servidor dns secundário padrão'; -$wb['default_dbserver_txt'] = 'Seridor de banco de dados padrão'; -$wb['No'] = 'No'; +$wb['ca_name_txt'] = 'Name'; +$wb['ca_issue_txt'] = 'Issue'; +$wb['ca_wildcard_txt'] = 'Use Wildcard'; +$wb['ca_critical_txt'] = 'Strict Check'; //For future use. At this time, CA<E2><80><99>s do not recognize any other flag values as described in RFC 6844 +$wb['ca_iodef_txt'] = 'iodef'; +$wb['active_txt'] = 'Aktive'; +$wb['btn_save_txt'] = 'Save'; +$wb['btn_cancel_txt'] = 'Cancel'; +$wb['default_dbserver_txt'] = 'Servidor de banco de dados padrão'; +$wb['No'] = 'Não'; $wb['ca_name_txt'] = 'Name'; $wb['ca_issue_txt'] = 'Issue'; $wb['ca_wildcard_txt'] = 'Use Wildcard'; diff --git a/interface/web/admin/lib/lang/de_system_config.lng b/interface/web/admin/lib/lang/de_system_config.lng index 683291b1fb..0771322ef9 100644 --- a/interface/web/admin/lib/lang/de_system_config.lng +++ b/interface/web/admin/lib/lang/de_system_config.lng @@ -81,8 +81,6 @@ $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['ca_name_txt'] = 'Name'; $wb['ca_issue_txt'] = 'Issue'; $wb['ca_wildcard_txt'] = 'Wildcard verwenden'; diff --git a/interface/web/admin/lib/lang/ru_system_config.lng b/interface/web/admin/lib/lang/ru_system_config.lng index 33f62e1161..301827893e 100644 --- a/interface/web/admin/lib/lang/ru_system_config.lng +++ b/interface/web/admin/lib/lang/ru_system_config.lng @@ -1,5 +1,4 @@ <?php -$wb['System Config'] = 'ÐšÐ¾Ð½Ñ„Ð¸Ð³ÑƒÑ€Ð°Ñ†Ð¸Ñ ÑиÑтемы'; $wb['system_config_desc_txt'] = 'ÐаÑтройка параметров по умолчанию'; $wb['warning'] = 'ИзменÑйте Ñти Ð·Ð½Ð°Ñ‡ÐµÐ½Ð¸Ñ Ð°ÐºÐºÑƒÑ€Ð°Ñ‚Ð½Ð¾! Ðе удалÑйте префикÑÑ‹ на ÑиÑтемах где более одного пользователÑ.'; $wb['dbname_prefix_txt'] = 'ÐŸÑ€ÐµÑ„Ð¸ÐºÑ Ð±Ð°Ð·Ñ‹ данных'; @@ -15,7 +14,7 @@ $wb['mailboxlist_webmail_link_txt'] = 'СÑылка на веб-почту в Ñ $wb['webmail_url_txt'] = 'URL веб-почты'; $wb['phpmyadmin_url_txt'] = 'URL PHPMyAdmin'; $wb['use_domain_module_txt'] = 'ИÑпользовать модуль домена, чтобы добавить новые домены'; -$wb['use_domain_module_hint'] = 'При иÑпользовании Ñтого модулÑ, Ваши клиенты Ñмогут выбрать только один из доменов, Ñозданных Ð´Ð»Ñ Ð½Ð¸Ñ… админиÑтратором. Они не могут Ñвободно редактировать поле "домен". Чтобы Ñделать Ñти Ð¸Ð·Ð¼ÐµÐ½ÐµÐ½Ð¸Ñ Ð²Ð¸Ð´Ð¸Ð¼Ñ‹Ð¼Ð¸, Ð’Ñ‹ должны выйти и повторно войти в панель поÑле Ð¸Ð·Ð¼ÐµÐ½ÐµÐ½Ð¸Ñ Ñтого значениÑ.'; +$wb['use_domain_module_hint'] = 'При иÑпользовании Ñтого модулÑ, Ваши клиенты Ñмогут выбрать только один из доменов, Ñозданных Ð´Ð»Ñ Ð½Ð¸Ñ… админиÑтратором. Они не могут Ñвободно редактировать поле \"домен\". Чтобы Ñделать Ñти Ð¸Ð·Ð¼ÐµÐ½ÐµÐ½Ð¸Ñ Ð²Ð¸Ð´Ð¸Ð¼Ñ‹Ð¼Ð¸, Ð’Ñ‹ должны выйти и повторно войти в панель поÑле Ð¸Ð·Ð¼ÐµÐ½ÐµÐ½Ð¸Ñ Ñтого значениÑ.'; $wb['new_domain_txt'] = 'HTML текÑÑ‚, чтобы Ñоздать новый домен'; $wb['webdavuser_prefix_txt'] = 'ÐŸÑ€ÐµÑ„Ð¸ÐºÑ Ð¿Ð¾Ð»ÑŒÐ·Ð¾Ð²Ð°Ñ‚ÐµÐ»Ñ WebDAV'; $wb['webdavuser_prefix_error_regex'] = 'Ðекорректный Ñимвол в префикÑе Ð¿Ð¾Ð»ÑŒÐ·Ð¾Ð²Ð°Ñ‚ÐµÐ»Ñ WebDAV.'; @@ -68,7 +67,7 @@ $wb['customer_no_template_error_regex_txt'] = 'Шаблон номера Кли $wb['customer_no_start_txt'] = 'Ðачальное значение номера Клиента'; $wb['customer_no_counter_txt'] = 'Счётчик номера Клиента'; $wb['session_timeout_txt'] = 'Тайм-аут ÑеÑÑии (в минутах)'; -$wb['session_allow_endless_txt'] = 'Включить "оÑтаватьÑÑ Ð² ÑиÑтеме"'; +$wb['session_allow_endless_txt'] = 'Включить \"оÑтаватьÑÑ Ð² ÑиÑтеме\"'; $wb['No'] = 'Ðет'; $wb['min_password_length_txt'] = 'ÐœÐ¸Ð½Ð¸Ð¼Ð°Ð»ÑŒÐ½Ð°Ñ Ð´Ð»Ð¸Ð½Ð° паролÑ'; $wb['min_password_strength_txt'] = 'ÐœÐ¸Ð½Ð¸Ð¼Ð°Ð»ÑŒÐ½Ð°Ñ ÑтойкоÑÑ‚ÑŒ паролÑ'; @@ -85,6 +84,14 @@ $wb['default_dbserver_txt'] = 'Сервер базы данных по умол $wb['ca_name_txt'] = 'Name'; $wb['ca_issue_txt'] = 'Issue'; $wb['ca_wildcard_txt'] = 'Use Wildcard'; +$wb['ca_critical_txt'] = 'Strict Check'; //For future use. At this time, CA<E2><80><99>s do not recognize any other flag values as described in RFC 6844 +$wb['ca_iodef_txt'] = 'iodef'; +$wb['active_txt'] = 'Aktive'; +$wb['btn_save_txt'] = 'Save'; +$wb['btn_cancel_txt'] = 'Cancel'; +$wb['ca_name_txt'] = 'Name'; +$wb['ca_issue_txt'] = 'Issue'; +$wb['ca_wildcard_txt'] = 'Use Wildcard'; $wb['ca_critical_txt'] = 'Strict Check'; //For future use. At this time, CA’s do not recognize any other flag values as described in RFC 6844 $wb['ca_iodef_txt'] = 'iodef'; $wb['active_txt'] = 'Aktive'; -- GitLab From 08795acfff0be58e4a1ac6f9ee8dd982920ab1cb Mon Sep 17 00:00:00 2001 From: Florian Schaal <florian@schaal-24.de> Date: Mon, 25 Feb 2019 08:57:49 +0100 Subject: [PATCH 027/215] update sql-files --- install/sql/incremental/upd_dev_collection.sql | 3 ++- install/sql/ispconfig3.sql | 7 +------ 2 files changed, 3 insertions(+), 7 deletions(-) diff --git a/install/sql/incremental/upd_dev_collection.sql b/install/sql/incremental/upd_dev_collection.sql index 45d5a2e007..4c436eec7a 100644 --- a/install/sql/incremental/upd_dev_collection.sql +++ b/install/sql/incremental/upd_dev_collection.sql @@ -27,6 +27,8 @@ DELETE FROM `dns_ssl_ca` WHERE `ca_issue` = 'geotrust.com'; DELETE FROM `dns_ssl_ca` WHERE `ca_issue` = 'thawte.com'; UPDATE `dns_ssl_ca` SET `ca_name` = 'Symantec / Thawte / GeoTrust' WHERE `ca_issue` = 'symantec.com'; +ALTER TABLE `dns_rr` CHANGE `type` `type` ENUM('A','AAAA','ALIAS','CAA','CNAME','DS','HINFO','LOC','MX','NAPTR','NS','PTR','RP','SRV','TXT','TLSA','DNSKEY') CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL; + INSERT IGNORE INTO `dns_ssl_ca` (`id`, `sys_userid`, `sys_groupid`, `sys_perm_user`, `sys_perm_group`, `sys_perm_other`, `active`, `ca_name`, `ca_issue`, `ca_wildcard`, `ca_iodef`, `ca_critical`) VALUES (NULL, 1, 1, 'riud', 'riud', '', 'Y', 'AC Camerfirma', 'camerfirma.com', 'Y', '', 0), (NULL, 1, 1, 'riud', 'riud', '', 'Y', 'ACCV', 'accv.es', 'Y', '', 0), @@ -76,4 +78,3 @@ INSERT IGNORE INTO `dns_ssl_ca` (`id`, `sys_userid`, `sys_groupid`, `sys_perm_us (NULL, 1, 1, 'riud', 'riud', '', 'Y', 'WISeKey', 'wisekey.com', 'Y', '', 0), (NULL, 1, 1, 'riud', 'riud', '', 'Y', 'WoSign', 'wosign.com', 'Y', '', 0); -ALTER TABLE `dns_rr` CHANGE `type` `type` ENUM('A','AAAA','ALIAS','CAA','CNAME','DS','HINFO','LOC','MX','NAPTR','NS','PTR','RP','SRV','TXT','TLSA','DNSKEY') CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL; diff --git a/install/sql/ispconfig3.sql b/install/sql/ispconfig3.sql index 757247392f..80a2165be2 100644 --- a/install/sql/ispconfig3.sql +++ b/install/sql/ispconfig3.sql @@ -548,12 +548,7 @@ CREATE TABLE IF NOT EXISTS `dns_ssl_ca` ( ALTER TABLE `dns_ssl_ca` ADD UNIQUE(`ca_issue`); -UPDATE `dns_ssl_ca` SET `ca_issue` = 'comodo.com' WHERE `ca_issue` = 'comodoca.com'; -DELETE FROM `dns_ssl_ca` WHERE `ca_issue` = 'geotrust.com'; -DELETE FROM `dns_ssl_ca` WHERE `ca_issue` = 'thawte.com'; -UPDATE `dns_ssl_ca` SET `ca_name` = 'Symantec / Thawte / GeoTrust' WHERE `ca_issue` = 'symantec.com'; - -INSERT IGNORE INTO `dns_ssl_ca` (`id`, `sys_userid`, `sys_groupid`, `sys_perm_user`, `sys_perm_group`, `sys_perm_other`, `active`, `ca_name`, `ca_issue`, `ca_wildcard`, `ca_iodef`, `ca_critical`) VALUES +INSERT INTO `dns_ssl_ca` (`id`, `sys_userid`, `sys_groupid`, `sys_perm_user`, `sys_perm_group`, `sys_perm_other`, `active`, `ca_name`, `ca_issue`, `ca_wildcard`, `ca_iodef`, `ca_critical`) VALUES (NULL, 1, 1, 'riud', 'riud', '', 'Y', 'AC Camerfirma', 'camerfirma.com', 'Y', '', 0), (NULL, 1, 1, 'riud', 'riud', '', 'Y', 'ACCV', 'accv.es', 'Y', '', 0), (NULL, 1, 1, 'riud', 'riud', '', 'Y', 'Actalis', 'actalis.it', 'Y', '', 0), -- GitLab From d3cde6cb21f3a3685cf6aa2d12ebea56b273554c Mon Sep 17 00:00:00 2001 From: Florian Schaal <florian@schaal-24.de> Date: Mon, 25 Feb 2019 13:02:31 +0100 Subject: [PATCH 028/215] templates for caa --- .../sql/incremental/upd_dev_collection.sql | 2 +- install/sql/ispconfig3.sql | 1 - .../admin/templates/system_config_dns_ca.htm | 15 +++++++ .../templates/system_config_dns_ca_edit.htm | 41 +++++++++++++++++++ .../templates/system_config_dns_ca_list.htm | 25 +++++++++++ 5 files changed, 82 insertions(+), 2 deletions(-) create mode 100644 interface/web/admin/templates/system_config_dns_ca.htm create mode 100644 interface/web/admin/templates/system_config_dns_ca_edit.htm create mode 100644 interface/web/admin/templates/system_config_dns_ca_list.htm diff --git a/install/sql/incremental/upd_dev_collection.sql b/install/sql/incremental/upd_dev_collection.sql index 4c436eec7a..ea0011b5a0 100644 --- a/install/sql/incremental/upd_dev_collection.sql +++ b/install/sql/incremental/upd_dev_collection.sql @@ -28,7 +28,7 @@ DELETE FROM `dns_ssl_ca` WHERE `ca_issue` = 'thawte.com'; UPDATE `dns_ssl_ca` SET `ca_name` = 'Symantec / Thawte / GeoTrust' WHERE `ca_issue` = 'symantec.com'; ALTER TABLE `dns_rr` CHANGE `type` `type` ENUM('A','AAAA','ALIAS','CAA','CNAME','DS','HINFO','LOC','MX','NAPTR','NS','PTR','RP','SRV','TXT','TLSA','DNSKEY') CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL; - +ALTER TABLE `dns_rr` CHANGE `data` `data` TEXT NOT NULL; INSERT IGNORE INTO `dns_ssl_ca` (`id`, `sys_userid`, `sys_groupid`, `sys_perm_user`, `sys_perm_group`, `sys_perm_other`, `active`, `ca_name`, `ca_issue`, `ca_wildcard`, `ca_iodef`, `ca_critical`) VALUES (NULL, 1, 1, 'riud', 'riud', '', 'Y', 'AC Camerfirma', 'camerfirma.com', 'Y', '', 0), (NULL, 1, 1, 'riud', 'riud', '', 'Y', 'ACCV', 'accv.es', 'Y', '', 0), diff --git a/install/sql/ispconfig3.sql b/install/sql/ispconfig3.sql index 80a2165be2..c521245039 100644 --- a/install/sql/ispconfig3.sql +++ b/install/sql/ispconfig3.sql @@ -478,7 +478,6 @@ CREATE TABLE IF NOT EXISTS `directive_snippets` ( -- -- Table structure for table `dns_rr` -- - CREATE TABLE `dns_rr` ( `id` int(11) unsigned NOT NULL auto_increment, `sys_userid` int(11) unsigned NOT NULL DEFAULT '0', diff --git a/interface/web/admin/templates/system_config_dns_ca.htm b/interface/web/admin/templates/system_config_dns_ca.htm new file mode 100644 index 0000000000..7f430a85e3 --- /dev/null +++ b/interface/web/admin/templates/system_config_dns_ca.htm @@ -0,0 +1,15 @@ +<h2><tmpl_var name="list_head_txt"></h2> +<p><tmpl_var name="list_desc_txt"></p> +<!-- +<div class="clear"> + <div class="left"> + <div class="buttonHolder buttons"> + <button class="btn btn-default formbutton-success" type="button" value="{tmpl_var name='btn_new_txt'}" onClick="ISPConfig.changeTab('dns_ca','admin/system_config_edit.php?action=edit&id={tmpl_var name='id'}', true);">{tmpl_var name='btn_new_txt'}</button> + </div> + </div> +</div> +<br> +--> +{tmpl_var name='dns_ca'} +{tmpl_var name='dns_ca_list'} +<input type="hidden" name="id" value="{tmpl_var name='id'}"> diff --git a/interface/web/admin/templates/system_config_dns_ca_edit.htm b/interface/web/admin/templates/system_config_dns_ca_edit.htm new file mode 100644 index 0000000000..739c3f93fe --- /dev/null +++ b/interface/web/admin/templates/system_config_dns_ca_edit.htm @@ -0,0 +1,41 @@ +<tmpl_if name="edit_record"> +<tmpl_if name="error"> + <div style="background: #ffdfdf; border: 1px solid #df7d7d; border-width: 1px 0; margin: 1.5em 0 1.5em 0; padding: 7px;">{tmpl_var name='error'}</div> +</tmpl_if> +<input type="hidden" name="id" value="{tmpl_var name='id'}"> +<div class="form-group"> + <label for="ca_name" class="col-sm-2 control-label">{tmpl_var name='ca_name_txt'}</label> + <div class='col-sm-6'><input type='text' class="form-control" name="ca_name" id="ca_name" value="{tmpl_var name='ca_name'}"/></div> +</div> + +<div class="form-group"> + <label for="ca_issue" class="col-sm-2 control-label">{tmpl_var name='ca_issue_txt'}</label> + <div class="col-sm-6"><input name="ca_issue" id="ca_issue" value="{tmpl_var name='ca_issue'}" size="" maxlength="" type="text" class="form-control" /></div> +</div> + +<div class="form-group"> + <label class="col-sm-2 control-label">{tmpl_var name='ca_wildcard_txt'}</label> + <div class="col-sm-6"><input type="checkbox" value="{tmpl_var name='ca_wildcard'}" id="ca_wildcard" name="ca_wildcard" <tmpl_if name='ca_wildcard' op='==' value='Y'>checked</tmpl_if> /></div> +</div> + +<div class="form-group"> + <label class="col-sm-2 control-label">{tmpl_var name='ca_critical_txt'}</label> + <div class="col-sm-6"><input type="checkbox" value="{tmpl_var name='ca_critical'}" id="ca_critical" name="ca_critical" <tmpl_if name='ca_critical'>checked</tmpl_if> /></div> +</div> +<!-- +<div class="form-group"> + <label for="ca_iodef" class="col-sm-2 control-label">{tmpl_var name='ca_iodef_txt'}</label> + <div class="col-sm-6"><textarea class="form-control" name="ca_iodef" id="ca_iodef" rows='5' cols='30'>{tmpl_var name='ca_iodef'}</textarea></div> +</div> +--> +<div class="form-group"> + <label class="col-sm-2 control-label">{tmpl_var name='active_txt'}</label> + <div class="col-sm-6"><input type="checkbox" value="{tmpl_var name='active'}" id="active" name="active" <tmpl_if name='active' op='==' value='Y'>checked</tmpl_if> /></div> +</div> + +</div> +<div class="clear"><div class="right"> + <button class="btn btn-default formbutton-success" type="button" value="{tmpl_var name='btn_save_txt'}" onClick="ISPConfig.changeTab('dns_ca','admin/system_config_edit.php?action=save&id={tmpl_var name='id'}', true);"><span class="icon icon-edit"></span>{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="admin/users_list.php">{tmpl_var name='btn_cancel_txt'}</button> +</div></div> +</tmpl_if> diff --git a/interface/web/admin/templates/system_config_dns_ca_list.htm b/interface/web/admin/templates/system_config_dns_ca_list.htm new file mode 100644 index 0000000000..7af2b78d13 --- /dev/null +++ b/interface/web/admin/templates/system_config_dns_ca_list.htm @@ -0,0 +1,25 @@ +<tmpl_if name="edit_record"> +<tmpl_else> +<table class="table"> + <thead class="dark form-group-sm"> + <tr> + <th data-column="active"><tmpl_var name="active_txt"></th> + <th data-column="name"><tmpl_var name="ca_name_txt"></th> + <th></th> + </tr> + + </thead> + <tbody> + <tmpl_loop name="ca_records"> + <tr> + <td>{tmpl_var name="active"}</td> + <td>{tmpl_var name="name"}</td> + <td class="text-right"> + <button class="btn btn-default formbutton-default formbutton-narrow" type="button" onClick="ISPConfig.changeTab('dns_ca','admin/system_config_edit.php?action=edit&id={tmpl_var name='ca_id'}', true);"><span class="icon icon-edit"></span></button> + <button class="btn btn-default formbutton-danger formbutton-narrow" type="button" onClick="ISPConfig.changeTab('dns_ca','admin/system_config_edit.php?action=delete&id={tmpl_var name='ca_id'}', true);"><span class="icon icon-delete"></span></button> + </td> + </tr> + </tmpl_loop> + </tbody> +</table> +</tmpl_if> -- GitLab From c1fa1d92a7473856281ce0d632da0c28e8da53c0 Mon Sep 17 00:00:00 2001 From: Till Brehm <tbrehm@ispconfig.org> Date: Mon, 25 Feb 2019 16:14:42 +0100 Subject: [PATCH 029/215] Update plugin_system_config_dns_ca.inc.php --- .../classes/plugin_system_config_dns_ca.inc.php | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) diff --git a/interface/lib/classes/plugin_system_config_dns_ca.inc.php b/interface/lib/classes/plugin_system_config_dns_ca.inc.php index f53662d822..d9a9949655 100644 --- a/interface/lib/classes/plugin_system_config_dns_ca.inc.php +++ b/interface/lib/classes/plugin_system_config_dns_ca.inc.php @@ -43,7 +43,7 @@ class plugin_system_config_dns_ca extends plugin_base { $pluginTpl = new tpl; $pluginTpl->newTemplate('templates/system_config_dns_ca_edit.htm'); - include 'lib/lang/'.$_SESSION['s']['language'].'_system_config.lng'; + include 'lib/lang/'.$app->functions->check_language($_SESSION['s']['language']).'_system_config.lng'; $pluginTpl->setVar($wb); $ca_id = $app->functions->intval($_GET['id']); if(isset($_GET['action']) && ($_GET['action'] == 'edit') && $ca_id > 0) { @@ -59,12 +59,12 @@ class plugin_system_config_dns_ca extends plugin_base { } elseif(isset($_GET['action']) && ($_GET['action'] == 'save') && $ca_id > 0) { $pluginTpl->setVar('edit_record', 0); $pluginTpl->setVar('id', $ca_id); - $pluginTpl->setVar('ca_name', $_POST['ca_name']); - $pluginTpl->setVar('ca_issue', $_POST['ca_issue']); - $pluginTpl->setVar('ca_wildcard', $_POST['ca_wildcard']); - $pluginTpl->setVar('ca_critical', $_POST['ca_critical']); - $pluginTpl->setVar('ca_iodef', $_POST['ca_iodef']); - $pluginTpl->setVar('active', $_POST['active']); + $pluginTpl->setVar('ca_name', $app->functions->htmlentities($_POST['ca_name'])); + $pluginTpl->setVar('ca_issue', $app->functions->htmlentities($_POST['ca_issue'])); + $pluginTpl->setVar('ca_wildcard', $app->functions->htmlentities($_POST['ca_wildcard'])); + $pluginTpl->setVar('ca_critical', $app->functions->htmlentities($_POST['ca_critical'])); + $pluginTpl->setVar('ca_iodef', $app->functions->htmlentities($_POST['ca_iodef'])); + $pluginTpl->setVar('active', $app->functions->htmlentities($_POST['active'])); } else { $pluginTpl->setVar('edit_record', 0); } -- GitLab From 3372811c15abd369d7dcc62a73dc7d03a1d40873 Mon Sep 17 00:00:00 2001 From: Till Brehm <tbrehm@ispconfig.org> Date: Mon, 25 Feb 2019 16:16:21 +0100 Subject: [PATCH 030/215] Update plugin_system_config_dns_ca_list.inc.php --- interface/lib/classes/plugin_system_config_dns_ca_list.inc.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/interface/lib/classes/plugin_system_config_dns_ca_list.inc.php b/interface/lib/classes/plugin_system_config_dns_ca_list.inc.php index eb5882bd3b..6b82c06043 100644 --- a/interface/lib/classes/plugin_system_config_dns_ca_list.inc.php +++ b/interface/lib/classes/plugin_system_config_dns_ca_list.inc.php @@ -44,7 +44,7 @@ class plugin_system_config_dns_ca_list extends plugin_base { $listTpl->newTemplate('templates/system_config_dns_ca_list.htm'); //* Loading language file - $lng_file = 'lib/lang/'.$_SESSION['s']['language'].'_system_config.lng'; + $lng_file = 'lib/lang/'.$app->functions->check_language($_SESSION['s']['language']).'_system_config.lng'; include $lng_file; $listTpl->setVar($wb); if($_SESSION['s']['user']['typ'] == 'admin') { -- GitLab From 547fd262bcd00d4ba1932f72bf23bfb77971c953 Mon Sep 17 00:00:00 2001 From: Till Brehm <tbrehm@ispconfig.org> Date: Mon, 25 Feb 2019 16:21:11 +0100 Subject: [PATCH 031/215] Update ajax_get_json.php --- interface/web/dns/ajax_get_json.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/interface/web/dns/ajax_get_json.php b/interface/web/dns/ajax_get_json.php index b2c381f3e4..1dd9c518f9 100644 --- a/interface/web/dns/ajax_get_json.php +++ b/interface/web/dns/ajax_get_json.php @@ -35,7 +35,7 @@ require_once '../../lib/app.inc.php'; $app->auth->check_module_permissions('dns'); $type = $_GET["type"]; -$ca_id = $_GET['ca_id']; +$ca_id = $app->functions->intval($_GET['ca_id']); if($type == 'get_ipv4'){ $result = array(); -- GitLab From 75854d8ab11037eb3bf34c701bccdcc4f2d39989 Mon Sep 17 00:00:00 2001 From: Florian Schaal <florian@schaal-24.de> Date: Tue, 26 Feb 2019 13:33:12 +0100 Subject: [PATCH 032/215] Placeholder for DNS-Templates --- interface/web/dns/lib/lang/ar_dns_template.lng | 1 + interface/web/dns/lib/lang/bg_dns_template.lng | 1 + interface/web/dns/lib/lang/br_dns_template.lng | 1 + interface/web/dns/lib/lang/ca_dns_template.lng | 1 + interface/web/dns/lib/lang/cz_dns_template.lng | 1 + interface/web/dns/lib/lang/de_dns_template.lng | 1 + interface/web/dns/lib/lang/dk_dns_template.lng | 1 + interface/web/dns/lib/lang/el_dns_template.lng | 1 + interface/web/dns/lib/lang/en_dns_template.lng | 1 + interface/web/dns/lib/lang/es_dns_template.lng | 1 + interface/web/dns/lib/lang/fi_dns_template.lng | 1 + interface/web/dns/lib/lang/fr_dns_template.lng | 1 + interface/web/dns/lib/lang/hr_dns_template.lng | 1 + interface/web/dns/lib/lang/hu_dns_template.lng | 1 + interface/web/dns/lib/lang/id_dns_template.lng | 1 + interface/web/dns/lib/lang/it_dns_template.lng | 1 + interface/web/dns/lib/lang/ja_dns_template.lng | 1 + interface/web/dns/lib/lang/nl_dns_template.lng | 1 + interface/web/dns/lib/lang/pl_dns_template.lng | 1 + interface/web/dns/lib/lang/pt_dns_template.lng | 1 + interface/web/dns/lib/lang/ro_dns_template.lng | 1 + interface/web/dns/lib/lang/ru_dns_template.lng | 1 + interface/web/dns/lib/lang/se_dns_template.lng | 1 + interface/web/dns/lib/lang/sk_dns_template.lng | 1 + interface/web/dns/lib/lang/tr_dns_template.lng | 1 + interface/web/dns/templates/dns_template_edit.htm | 7 +++++-- 26 files changed, 30 insertions(+), 2 deletions(-) diff --git a/interface/web/dns/lib/lang/ar_dns_template.lng b/interface/web/dns/lib/lang/ar_dns_template.lng index 3a09e3bb71..b598d0f0f1 100644 --- a/interface/web/dns/lib/lang/ar_dns_template.lng +++ b/interface/web/dns/lib/lang/ar_dns_template.lng @@ -3,4 +3,5 @@ $wb['name_txt'] = 'Name'; $wb['fields_txt'] = 'Fields'; $wb['template_txt'] = 'Template'; $wb['visible_txt'] = 'Visible'; +$wb['placeholder_txt'] = 'Placeholder'; ?> diff --git a/interface/web/dns/lib/lang/bg_dns_template.lng b/interface/web/dns/lib/lang/bg_dns_template.lng index 808010e6e0..37fcdcd617 100644 --- a/interface/web/dns/lib/lang/bg_dns_template.lng +++ b/interface/web/dns/lib/lang/bg_dns_template.lng @@ -3,4 +3,5 @@ $wb['name_txt'] = 'Име'; $wb['fields_txt'] = 'Полета'; $wb['template_txt'] = 'Шаблон'; $wb['visible_txt'] = 'Видим'; +$wb['placeholder_txt'] = 'Placeholder'; ?> diff --git a/interface/web/dns/lib/lang/br_dns_template.lng b/interface/web/dns/lib/lang/br_dns_template.lng index 9d7331b795..8b099ceb14 100644 --- a/interface/web/dns/lib/lang/br_dns_template.lng +++ b/interface/web/dns/lib/lang/br_dns_template.lng @@ -3,4 +3,5 @@ $wb['name_txt'] = 'Nome'; $wb['fields_txt'] = 'Campos'; $wb['template_txt'] = 'Gabarito'; $wb['visible_txt'] = 'VisÃvel'; +$wb['placeholder_txt'] = 'Placeholder'; ?> diff --git a/interface/web/dns/lib/lang/ca_dns_template.lng b/interface/web/dns/lib/lang/ca_dns_template.lng index 1202cfd768..ff1b0a8e74 100644 --- a/interface/web/dns/lib/lang/ca_dns_template.lng +++ b/interface/web/dns/lib/lang/ca_dns_template.lng @@ -3,4 +3,5 @@ $wb['name_txt'] = 'Nom'; $wb['fields_txt'] = 'Champs'; $wb['template_txt'] = 'Modèle'; $wb['visible_txt'] = 'Visible'; +$wb['placeholder_txt'] = 'Placeholder'; ?> diff --git a/interface/web/dns/lib/lang/cz_dns_template.lng b/interface/web/dns/lib/lang/cz_dns_template.lng index be4ac0e949..5927faef53 100644 --- a/interface/web/dns/lib/lang/cz_dns_template.lng +++ b/interface/web/dns/lib/lang/cz_dns_template.lng @@ -3,4 +3,5 @@ $wb['name_txt'] = 'Název'; $wb['fields_txt'] = 'Pole'; $wb['template_txt'] = 'Å ablona'; $wb['visible_txt'] = 'Viditelný'; +$wb['placeholder_txt'] = 'Placeholder'; ?> diff --git a/interface/web/dns/lib/lang/de_dns_template.lng b/interface/web/dns/lib/lang/de_dns_template.lng index 33d1090cba..f35b22fd09 100644 --- a/interface/web/dns/lib/lang/de_dns_template.lng +++ b/interface/web/dns/lib/lang/de_dns_template.lng @@ -3,4 +3,5 @@ $wb['name_txt'] = 'Name'; $wb['fields_txt'] = 'Felder'; $wb['template_txt'] = 'Vorlage'; $wb['visible_txt'] = 'Sichtbar'; +$wb['placeholder_txt'] = 'Platzhalter'; ?> diff --git a/interface/web/dns/lib/lang/dk_dns_template.lng b/interface/web/dns/lib/lang/dk_dns_template.lng index c9e8e7b28b..e444295eda 100644 --- a/interface/web/dns/lib/lang/dk_dns_template.lng +++ b/interface/web/dns/lib/lang/dk_dns_template.lng @@ -3,4 +3,5 @@ $wb['name_txt'] = 'Navn'; $wb['fields_txt'] = 'Felter'; $wb['template_txt'] = 'Skabelon'; $wb['visible_txt'] = 'Synlig'; +$wb['placeholder_txt'] = 'Placeholder'; ?> diff --git a/interface/web/dns/lib/lang/el_dns_template.lng b/interface/web/dns/lib/lang/el_dns_template.lng index 20e9bf81bc..7d00994bb1 100644 --- a/interface/web/dns/lib/lang/el_dns_template.lng +++ b/interface/web/dns/lib/lang/el_dns_template.lng @@ -3,4 +3,5 @@ $wb['name_txt'] = 'Όνομα'; $wb['fields_txt'] = 'Πεδία'; $wb['template_txt'] = 'Î Ïότυπο'; $wb['visible_txt'] = 'ΕνεÏγό'; +$wb['placeholder_txt'] = 'Placeholder'; ?> diff --git a/interface/web/dns/lib/lang/en_dns_template.lng b/interface/web/dns/lib/lang/en_dns_template.lng index 37643e1192..426ff2c420 100644 --- a/interface/web/dns/lib/lang/en_dns_template.lng +++ b/interface/web/dns/lib/lang/en_dns_template.lng @@ -3,4 +3,5 @@ $wb["name_txt"] = 'Name'; $wb["fields_txt"] = 'Fields'; $wb["template_txt"] = 'Template'; $wb["visible_txt"] = 'Visible'; +$wb['placeholder_txt'] = 'Placeholder'; ?> \ No newline at end of file diff --git a/interface/web/dns/lib/lang/es_dns_template.lng b/interface/web/dns/lib/lang/es_dns_template.lng index b0fa12ba02..ffab71445f 100755 --- a/interface/web/dns/lib/lang/es_dns_template.lng +++ b/interface/web/dns/lib/lang/es_dns_template.lng @@ -3,4 +3,5 @@ $wb['fields_txt'] = 'Campos'; $wb['name_txt'] = 'Nombre'; $wb['template_txt'] = 'Plantilla'; $wb['visible_txt'] = 'Visible'; +$wb['placeholder_txt'] = 'Placeholder'; ?> diff --git a/interface/web/dns/lib/lang/fi_dns_template.lng b/interface/web/dns/lib/lang/fi_dns_template.lng index b34a92d6a9..57910455ec 100755 --- a/interface/web/dns/lib/lang/fi_dns_template.lng +++ b/interface/web/dns/lib/lang/fi_dns_template.lng @@ -3,4 +3,5 @@ $wb['name_txt'] = 'Nimi'; $wb['fields_txt'] = 'Kentät'; $wb['template_txt'] = 'Malli'; $wb['visible_txt'] = 'Näkyvissä'; +$wb['placeholder_txt'] = 'Placeholder'; ?> diff --git a/interface/web/dns/lib/lang/fr_dns_template.lng b/interface/web/dns/lib/lang/fr_dns_template.lng index 1202cfd768..ff1b0a8e74 100644 --- a/interface/web/dns/lib/lang/fr_dns_template.lng +++ b/interface/web/dns/lib/lang/fr_dns_template.lng @@ -3,4 +3,5 @@ $wb['name_txt'] = 'Nom'; $wb['fields_txt'] = 'Champs'; $wb['template_txt'] = 'Modèle'; $wb['visible_txt'] = 'Visible'; +$wb['placeholder_txt'] = 'Placeholder'; ?> diff --git a/interface/web/dns/lib/lang/hr_dns_template.lng b/interface/web/dns/lib/lang/hr_dns_template.lng index 100c5c8239..b55a0138f3 100644 --- a/interface/web/dns/lib/lang/hr_dns_template.lng +++ b/interface/web/dns/lib/lang/hr_dns_template.lng @@ -3,4 +3,5 @@ $wb['name_txt'] = 'Naziv'; $wb['fields_txt'] = 'Polja'; $wb['template_txt'] = 'Predložak'; $wb['visible_txt'] = 'Vidljivo'; +$wb['placeholder_txt'] = 'Placeholder'; ?> diff --git a/interface/web/dns/lib/lang/hu_dns_template.lng b/interface/web/dns/lib/lang/hu_dns_template.lng index 22589ea24f..8bbf0fcf20 100644 --- a/interface/web/dns/lib/lang/hu_dns_template.lng +++ b/interface/web/dns/lib/lang/hu_dns_template.lng @@ -3,4 +3,5 @@ $wb['name_txt'] = 'Név'; $wb['fields_txt'] = 'MezÅ‘k'; $wb['template_txt'] = 'Template'; $wb['visible_txt'] = 'Látható'; +$wb['placeholder_txt'] = 'Placeholder'; ?> diff --git a/interface/web/dns/lib/lang/id_dns_template.lng b/interface/web/dns/lib/lang/id_dns_template.lng index b0451ce1bb..4337e82879 100644 --- a/interface/web/dns/lib/lang/id_dns_template.lng +++ b/interface/web/dns/lib/lang/id_dns_template.lng @@ -3,4 +3,5 @@ $wb['name_txt'] = 'Nama'; $wb['fields_txt'] = 'Kolom'; $wb['template_txt'] = 'Template'; $wb['visible_txt'] = 'Terlihat'; +$wb['placeholder_txt'] = 'Placeholder'; ?> diff --git a/interface/web/dns/lib/lang/it_dns_template.lng b/interface/web/dns/lib/lang/it_dns_template.lng index 290cf3e4b9..ee07983b28 100644 --- a/interface/web/dns/lib/lang/it_dns_template.lng +++ b/interface/web/dns/lib/lang/it_dns_template.lng @@ -3,4 +3,5 @@ $wb['name_txt'] = 'Nome'; $wb['fields_txt'] = 'Fields'; $wb['template_txt'] = 'Template'; $wb['visible_txt'] = 'Visible'; +$wb['placeholder_txt'] = 'Placeholder'; ?> diff --git a/interface/web/dns/lib/lang/ja_dns_template.lng b/interface/web/dns/lib/lang/ja_dns_template.lng index 7c05ae1cc4..e2c2e84059 100644 --- a/interface/web/dns/lib/lang/ja_dns_template.lng +++ b/interface/web/dns/lib/lang/ja_dns_template.lng @@ -3,4 +3,5 @@ $wb['name_txt'] = 'åå‰'; $wb['fields_txt'] = 'フィールド'; $wb['template_txt'] = 'テンプレート'; $wb['visible_txt'] = '公開ã™ã‚‹'; +$wb['placeholder_txt'] = 'Placeholder'; ?> diff --git a/interface/web/dns/lib/lang/nl_dns_template.lng b/interface/web/dns/lib/lang/nl_dns_template.lng index ebf45549af..6bfa3a12dd 100644 --- a/interface/web/dns/lib/lang/nl_dns_template.lng +++ b/interface/web/dns/lib/lang/nl_dns_template.lng @@ -3,4 +3,5 @@ $wb['name_txt'] = 'Naam'; $wb['fields_txt'] = 'Velden'; $wb['template_txt'] = 'Template'; $wb['visible_txt'] = 'Zichtbaar'; +$wb['placeholder_txt'] = 'Placeholder'; ?> diff --git a/interface/web/dns/lib/lang/pl_dns_template.lng b/interface/web/dns/lib/lang/pl_dns_template.lng index f3e7563577..042f11823b 100644 --- a/interface/web/dns/lib/lang/pl_dns_template.lng +++ b/interface/web/dns/lib/lang/pl_dns_template.lng @@ -3,4 +3,5 @@ $wb['name_txt'] = 'Nazwa'; $wb['fields_txt'] = 'Pola'; $wb['template_txt'] = 'Szablon'; $wb['visible_txt'] = 'Widoczność'; +$wb['placeholder_txt'] = 'Placeholder'; ?> diff --git a/interface/web/dns/lib/lang/pt_dns_template.lng b/interface/web/dns/lib/lang/pt_dns_template.lng index c3cc3a13d5..211e319076 100644 --- a/interface/web/dns/lib/lang/pt_dns_template.lng +++ b/interface/web/dns/lib/lang/pt_dns_template.lng @@ -3,4 +3,5 @@ $wb['name_txt'] = 'Nome'; $wb['fields_txt'] = 'Campos'; $wb['template_txt'] = 'Template'; $wb['visible_txt'] = 'VisÃvel'; +$wb['placeholder_txt'] = 'Placeholder'; ?> diff --git a/interface/web/dns/lib/lang/ro_dns_template.lng b/interface/web/dns/lib/lang/ro_dns_template.lng index f097bb3a00..13db8c7a22 100644 --- a/interface/web/dns/lib/lang/ro_dns_template.lng +++ b/interface/web/dns/lib/lang/ro_dns_template.lng @@ -3,4 +3,5 @@ $wb['name_txt'] = 'Nume'; $wb['fields_txt'] = 'Campuri'; $wb['template_txt'] = 'Template'; $wb['visible_txt'] = 'Vizibil'; +$wb['placeholder_txt'] = 'Placeholder'; ?> diff --git a/interface/web/dns/lib/lang/ru_dns_template.lng b/interface/web/dns/lib/lang/ru_dns_template.lng index a187abdad3..e3cee369db 100644 --- a/interface/web/dns/lib/lang/ru_dns_template.lng +++ b/interface/web/dns/lib/lang/ru_dns_template.lng @@ -3,4 +3,5 @@ $wb['name_txt'] = 'ИмÑ'; $wb['fields_txt'] = 'ПолÑ'; $wb['template_txt'] = 'Шаблон'; $wb['visible_txt'] = 'Видимый'; +$wb['placeholder_txt'] = 'Placeholder'; ?> diff --git a/interface/web/dns/lib/lang/se_dns_template.lng b/interface/web/dns/lib/lang/se_dns_template.lng index 516d5c2759..9a3e01c9f3 100644 --- a/interface/web/dns/lib/lang/se_dns_template.lng +++ b/interface/web/dns/lib/lang/se_dns_template.lng @@ -3,4 +3,5 @@ $wb['name_txt'] = 'Namn'; $wb['fields_txt'] = 'Fält'; $wb['template_txt'] = 'Mall'; $wb['visible_txt'] = 'Synlig'; +$wb['placeholder_txt'] = 'Placeholder'; ?> diff --git a/interface/web/dns/lib/lang/sk_dns_template.lng b/interface/web/dns/lib/lang/sk_dns_template.lng index dab503e9b4..bcd50f15d2 100644 --- a/interface/web/dns/lib/lang/sk_dns_template.lng +++ b/interface/web/dns/lib/lang/sk_dns_template.lng @@ -3,4 +3,5 @@ $wb['name_txt'] = 'Meno'; $wb['fields_txt'] = 'Polia'; $wb['template_txt'] = 'Å ablóna'; $wb['visible_txt'] = 'Viditeľné'; +$wb['placeholder_txt'] = 'Placeholder'; ?> diff --git a/interface/web/dns/lib/lang/tr_dns_template.lng b/interface/web/dns/lib/lang/tr_dns_template.lng index 37ba3b5883..3ca594f62e 100644 --- a/interface/web/dns/lib/lang/tr_dns_template.lng +++ b/interface/web/dns/lib/lang/tr_dns_template.lng @@ -3,4 +3,5 @@ $wb['name_txt'] = 'Ad'; $wb['fields_txt'] = 'Alanlar'; $wb['template_txt'] = 'Kalıp'; $wb['visible_txt'] = 'Görünür'; +$wb['placeholder_txt'] = 'Placeholder'; ?> diff --git a/interface/web/dns/templates/dns_template_edit.htm b/interface/web/dns/templates/dns_template_edit.htm index 132cc92810..9de8c93447 100644 --- a/interface/web/dns/templates/dns_template_edit.htm +++ b/interface/web/dns/templates/dns_template_edit.htm @@ -16,7 +16,10 @@ </div> <div class="form-group"> <label for="template" class="col-sm-3 control-label">{tmpl_var name='template_txt'}</label> - <div class="col-sm-9"><textarea class="form-control" name="template" id="template" rows='15' cols='40'>{tmpl_var name='template'}</textarea></div> + <div class="col-sm-9"><textarea class="form-control" name="template" id="template" rows='15' cols='40'>{tmpl_var name='template'}</textarea> + DNS {tmpl_var name='placeholder_txt'}: <a href="javascript:void(0);" class="addPlaceholder">{DOMAIN}</a>, <a href="javascript:void(0);" class="addPlaceholder">{IP}</a>, <a href="javascript:void(0);" class="addPlaceholder">{IPV6}</a>, <a href="javascript:void(0);" class="addPlaceholder">{NS1}</a>, <a href="javascript:void(0);" class="addPlaceholder">{NS2}</a>, <a href="javascript:void(0);" class="addPlaceholder">{EMAIL}</a> + +</div> </div> <div class="form-group"> <label class="col-sm-3 control-label">{tmpl_var name='visible_txt'}</label> @@ -31,4 +34,4 @@ <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="dns/dns_template_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="dns/dns_template_list.php">{tmpl_var name='btn_cancel_txt'}</button> - </div></div> \ No newline at end of file + </div></div> -- GitLab From 44d34be61eb7f9c99c1504bf8640d31dd1cb30ec Mon Sep 17 00:00:00 2001 From: Florian Schaal <florian@schaal-24.de> Date: Tue, 26 Feb 2019 13:50:30 +0100 Subject: [PATCH 033/215] DNS: xfer / also_notify fields too short (Fixes #5237) --- install/sql/incremental/upd_dev_collection.sql | 1 + install/sql/ispconfig3.sql | 2 +- 2 files changed, 2 insertions(+), 1 deletion(-) diff --git a/install/sql/incremental/upd_dev_collection.sql b/install/sql/incremental/upd_dev_collection.sql index ea0011b5a0..4c855b541c 100644 --- a/install/sql/incremental/upd_dev_collection.sql +++ b/install/sql/incremental/upd_dev_collection.sql @@ -78,3 +78,4 @@ INSERT IGNORE INTO `dns_ssl_ca` (`id`, `sys_userid`, `sys_groupid`, `sys_perm_us (NULL, 1, 1, 'riud', 'riud', '', 'Y', 'WISeKey', 'wisekey.com', 'Y', '', 0), (NULL, 1, 1, 'riud', 'riud', '', 'Y', 'WoSign', 'wosign.com', 'Y', '', 0); +ALTER TABLE `dns_soa` CHANGE `xfer` `xfer` TEXT NOT NULL DEFAULT ''; diff --git a/install/sql/ispconfig3.sql b/install/sql/ispconfig3.sql index c521245039..dd45aa2091 100644 --- a/install/sql/ispconfig3.sql +++ b/install/sql/ispconfig3.sql @@ -620,7 +620,7 @@ CREATE TABLE `dns_soa` ( `minimum` int(11) unsigned NOT NULL default '3600', `ttl` int(11) unsigned NOT NULL default '3600', `active` enum('N','Y') NOT NULL DEFAULT 'N', - `xfer` varchar(255) NOT NULL DEFAULT '', + `xfer` TEXT NOT NULL DEFAULT '', `also_notify` varchar(255) default NULL, `update_acl` varchar(255) default NULL, `dnssec_initialized` ENUM('Y','N') NOT NULL DEFAULT 'N', -- GitLab From 3fa01645a653dbfcc75c0db9dd20e2381a0e06b4 Mon Sep 17 00:00:00 2001 From: Till Brehm <tbrehm@ispconfig.org> Date: Tue, 26 Feb 2019 14:49:36 +0100 Subject: [PATCH 034/215] Fixes #5254 Cronjob locking not working properly --- server/lib/classes/cronjob.inc.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/server/lib/classes/cronjob.inc.php b/server/lib/classes/cronjob.inc.php index 23b3c766e8..9fba5af3c5 100644 --- a/server/lib/classes/cronjob.inc.php +++ b/server/lib/classes/cronjob.inc.php @@ -86,8 +86,8 @@ class cronjob { if($run_it == true) { $this->onRunJob(); $this->onAfterRun(); + $this->onCompleted(); } - $this->onCompleted(); return; } -- GitLab From 0f947a1a9ac8e6447770e7843707e6382caa46c7 Mon Sep 17 00:00:00 2001 From: Webslice <webslice@bixels.nl> Date: Mon, 4 Mar 2019 14:13:00 +0100 Subject: [PATCH 035/215] Don't hardcode /web folder for php-fpm-chroot, fixes #3220 --- server/conf/nginx_vhost.conf.master | 28 +++++++++---------- server/conf/php_fpm_pool.conf.master | 2 +- server/conf/vhost.conf.master | 2 +- .../plugins-available/apache2_plugin.inc.php | 6 ++-- server/plugins-available/nginx_plugin.inc.php | 6 ++-- 5 files changed, 24 insertions(+), 20 deletions(-) diff --git a/server/conf/nginx_vhost.conf.master b/server/conf/nginx_vhost.conf.master index 7a4e743797..63c9260354 100644 --- a/server/conf/nginx_vhost.conf.master +++ b/server/conf/nginx_vhost.conf.master @@ -174,9 +174,9 @@ server { </tmpl_if> fastcgi_index index.php; <tmpl_if name='php_fpm_chroot' op='==' value='y'> - fastcgi_param DOCUMENT_ROOT /web; - fastcgi_param HOME /web; - fastcgi_param SCRIPT_FILENAME /web$fastcgi_script_name; + fastcgi_param DOCUMENT_ROOT <tmpl_var name='php_fpm_chroot_web_folder'>; + fastcgi_param HOME <tmpl_var name='php_fpm_chroot_web_folder'>; + fastcgi_param SCRIPT_FILENAME <tmpl_var name='php_fpm_chroot_web_folder'>$fastcgi_script_name; <tmpl_else> fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; </tmpl_if> @@ -191,9 +191,9 @@ server { fastcgi_pass unix:/var/run/hhvm/hhvm.<tmpl_var name='system_user'>.sock; fastcgi_index index.php; <tmpl_if name='php_fpm_chroot'> - fastcgi_param DOCUMENT_ROOT /web; - fastcgi_param HOME /web; - fastcgi_param SCRIPT_FILENAME /web$fastcgi_script_name; + fastcgi_param DOCUMENT_ROOT <tmpl_var name='php_fpm_chroot_web_folder'>; + fastcgi_param HOME <tmpl_var name='php_fpm_chroot_web_folder'>; + fastcgi_param SCRIPT_FILENAME <tmpl_var name='php_fpm_chroot_web_folder'>$fastcgi_script_name; <tmpl_else> fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; </tmpl_if> @@ -201,7 +201,7 @@ server { fastcgi_intercept_errors on; error_page 500 501 502 503 = @phpfallback; } - + location @phpfallback { try_files $uri =404; include /etc/nginx/fastcgi_params; @@ -213,9 +213,9 @@ server { </tmpl_if> fastcgi_index index.php; <tmpl_if name='php_fpm_chroot'> - fastcgi_param DOCUMENT_ROOT /web; - fastcgi_param HOME /web; - fastcgi_param SCRIPT_FILENAME /web$fastcgi_script_name; + fastcgi_param DOCUMENT_ROOT <tmpl_var name='php_fpm_chroot_web_folder'>; + fastcgi_param HOME <tmpl_var name='php_fpm_chroot_web_folder'>; + fastcgi_param SCRIPT_FILENAME <tmpl_var name='php_fpm_chroot_web_folder'>$fastcgi_script_name; <tmpl_else> fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; </tmpl_if> @@ -229,7 +229,7 @@ server { } </tmpl_if> </tmpl_if> - + <tmpl_if name='cgi' op='==' value='y'> location /cgi-bin/ { try_files $uri =404; @@ -239,9 +239,9 @@ server { fastcgi_pass unix:/var/run/fcgiwrap.socket; fastcgi_index index.cgi; <tmpl_if name='php_fpm_chroot'> - fastcgi_param DOCUMENT_ROOT /web; - fastcgi_param HOME /web; - fastcgi_param SCRIPT_FILENAME /web$fastcgi_script_name; + fastcgi_param DOCUMENT_ROOT <tmpl_var name='php_fpm_chroot_web_folder'>; + fastcgi_param HOME <tmpl_var name='php_fpm_chroot_web_folder'>; + fastcgi_param SCRIPT_FILENAME <tmpl_var name='php_fpm_chroot_web_folder'>$fastcgi_script_name; <tmpl_else> fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; </tmpl_if> diff --git a/server/conf/php_fpm_pool.conf.master b/server/conf/php_fpm_pool.conf.master index 8081c994ae..fb5c4b44d9 100644 --- a/server/conf/php_fpm_pool.conf.master +++ b/server/conf/php_fpm_pool.conf.master @@ -29,7 +29,7 @@ pm.max_requests = <tmpl_var name='pm_max_requests'> chdir = / <tmpl_if name='php_fpm_chroot'> chroot = <tmpl_var name='php_fpm_chroot_dir'> -php_admin_value[doc_root] = /web +php_admin_value[doc_root] = <tmpl_var name='php_fpm_chroot_web_folder'> php_admin_value[cgi.fix_pathinfo] = 0 </tmpl_if> diff --git a/server/conf/vhost.conf.master b/server/conf/vhost.conf.master index 1426961bb3..a259c29906 100644 --- a/server/conf/vhost.conf.master +++ b/server/conf/vhost.conf.master @@ -378,7 +378,7 @@ </IfModule> <IfModule mod_proxy_fcgi.c> <tmpl_if name='php_fpm_chroot' op='==' value='y'> - ProxyFCGISetEnvIf "true" DOCUMENT_ROOT "/web" + ProxyFCGISetEnvIf "true" DOCUMENT_ROOT "<tmpl_var name='php_fpm_chroot_web_folder'>" ProxyFCGISetEnvIf "true" CONTEXT_DOCUMENT_ROOT "%{reqenv:DOCUMENT_ROOT}" ProxyFCGISetEnvIf "true" HOME "%{reqenv:DOCUMENT_ROOT}" ProxyFCGISetEnvIf "true" SCRIPT_FILENAME "%{reqenv:DOCUMENT_ROOT}%{reqenv:SCRIPT_NAME}" diff --git a/server/plugins-available/apache2_plugin.inc.php b/server/plugins-available/apache2_plugin.inc.php index dad2a26f3e..8ebe11d92a 100644 --- a/server/plugins-available/apache2_plugin.inc.php +++ b/server/plugins-available/apache2_plugin.inc.php @@ -1581,6 +1581,7 @@ class apache2_plugin { $tpl->setVar('use_tcp', $use_tcp); $tpl->setVar('use_socket', $use_socket); $tpl->setVar('php_fpm_chroot', $data['new']['php_fpm_chroot']); + $tpl->setVar('php_fpm_chroot_web_folder', sprintf('/%s', trim($web_folder, '/'))); $fpm_socket = $socket_dir.$pool_name.'.sock'; $tpl->setVar('fpm_socket', $fpm_socket); $tpl->setVar('fpm_port', $web_config['php_fpm_start_port'] + $data['new']['domain_id'] - 1); @@ -1823,7 +1824,7 @@ class apache2_plugin { $this->awstats_update($data, $web_config); } - $this->php_fpm_pool_update($data, $web_config, $pool_dir, $pool_name, $socket_dir); + $this->php_fpm_pool_update($data, $web_config, $pool_dir, $pool_name, $socket_dir, $web_folder); $this->hhvm_update($data, $web_config); if($web_config['check_apache_config'] == 'y') { @@ -3024,7 +3025,7 @@ class apache2_plugin { } //* Update the PHP-FPM pool configuration file - private function php_fpm_pool_update ($data, $web_config, $pool_dir, $pool_name, $socket_dir) { + private function php_fpm_pool_update ($data, $web_config, $pool_dir, $pool_name, $socket_dir, $web_folder = null) { global $app, $conf; $pool_dir = trim($pool_dir); //$reload = false; @@ -3115,6 +3116,7 @@ class apache2_plugin { if ($data['new']['php_fpm_chroot'] === 'y') { $tpl->setVar('php_fpm_chroot', $data['new']['php_fpm_chroot']); $tpl->setVar('php_fpm_chroot_dir', $data['new']['document_root']); + $tpl->setVar('php_fpm_chroot_web_folder', sprintf('/%s', trim($web_folder, '/'))); $tpl->setVar('php_open_basedir', str_replace($tpl->getVar('document_root'), '', $tpl->getVar('php_open_basedir'))); $tpl->setVar('document_root', ''); } diff --git a/server/plugins-available/nginx_plugin.inc.php b/server/plugins-available/nginx_plugin.inc.php index fb9712b1e6..adac20c78a 100644 --- a/server/plugins-available/nginx_plugin.inc.php +++ b/server/plugins-available/nginx_plugin.inc.php @@ -1042,6 +1042,7 @@ class nginx_plugin { $tpl->setVar('use_tcp', $use_tcp); $tpl->setVar('use_socket', $use_socket); $tpl->setVar('php_fpm_chroot', $data['new']['php_fpm_chroot']); + $tpl->setVar('php_fpm_chroot_web_folder', sprintf('/%s', trim($web_folder, '/'))); $fpm_socket = $socket_dir.$pool_name.'.sock'; $tpl->setVar('fpm_socket', $fpm_socket); $tpl->setVar('rnd_php_dummy_file', '/'.md5(uniqid(microtime(), 1)).'.htm'); @@ -1888,7 +1889,7 @@ class nginx_plugin { $this->awstats_update($data, $web_config); } - $this->php_fpm_pool_update($data, $web_config, $pool_dir, $pool_name, $socket_dir); + $this->php_fpm_pool_update($data, $web_config, $pool_dir, $pool_name, $socket_dir, $web_folder); $this->hhvm_update($data, $web_config); if($web_config['check_apache_config'] == 'y') { @@ -2641,7 +2642,7 @@ class nginx_plugin { } //* Update the PHP-FPM pool configuration file - private function php_fpm_pool_update ($data, $web_config, $pool_dir, $pool_name, $socket_dir) { + private function php_fpm_pool_update ($data, $web_config, $pool_dir, $pool_name, $socket_dir, $web_folder = null) { global $app, $conf; $pool_dir = trim($pool_dir); $rh_releasefiles = array('/etc/centos-release', '/etc/redhat-release'); @@ -2748,6 +2749,7 @@ class nginx_plugin { if ($data['new']['php_fpm_chroot'] === 'y') { $tpl->setVar('php_fpm_chroot', $data['new']['php_fpm_chroot']); $tpl->setVar('php_fpm_chroot_dir', $data['new']['document_root']); + $tpl->setVar('php_fpm_chroot_web_folder', sprintf('/%s', trim($web_folder, '/'))); $tpl->setVar('php_open_basedir', str_replace($tpl->getVar('document_root'), '', $tpl->getVar('php_open_basedir'))); $tpl->setVar('document_root', ''); } -- GitLab From cd18454906aa688af34030e45402edaa94076bce Mon Sep 17 00:00:00 2001 From: Webslice <webslice@bixels.nl> Date: Mon, 4 Mar 2019 15:20:09 +0100 Subject: [PATCH 036/215] Use 127.0.0.1 as APS db host if php_fpm_chroot, fixes #5235 --- interface/lib/classes/aps_guicontroller.inc.php | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/interface/lib/classes/aps_guicontroller.inc.php b/interface/lib/classes/aps_guicontroller.inc.php index 80e011f4af..c895e40d0b 100644 --- a/interface/lib/classes/aps_guicontroller.inc.php +++ b/interface/lib/classes/aps_guicontroller.inc.php @@ -249,6 +249,15 @@ class ApsGUIController extends ApsBase $settings['main_database_host'] = 'localhost'; $mysql_db_remote_access = 'n'; $mysql_db_remote_ips = ''; + + // If we are dealing with chrooted PHP-FPM, use a network connection instead because the MySQL socket file + // does not exist within the chroot. + $php_fpm_chroot = $app->db->queryOneRecord("SELECT php_fpm_chroot FROM web_domain WHERE domain_id = ?", $websrv['domain_id']); + if ($php_fpm_chroot['php_fpm_chroot'] === 'y') { + $settings['main_database_host'] = '127.0.0.1'; + $mysql_db_remote_access = 'y'; + $mysql_db_remote_ips = '127.0.0.1'; + } } else { //* get the default database server of the client $client = $app->db->queryOneRecord("SELECT default_dbserver FROM sys_group, client WHERE sys_group.client_id = client.client_id and sys_group.groupid = ?", $websrv['sys_groupid']); -- GitLab From 8c993eb7d082af85c5c168bb3420e19539f2886f Mon Sep 17 00:00:00 2001 From: Till Brehm <tbrehm@ispconfig.org> Date: Mon, 4 Mar 2019 19:26:11 +0100 Subject: [PATCH 037/215] Fixeed #5262 Nginx ssl directive deprecated warning in ispconfig.vhost file --- install/dist/lib/fedora.lib.php | 4 ++-- install/dist/lib/gentoo.lib.php | 6 +++--- install/dist/lib/opensuse.lib.php | 4 ++-- install/lib/installer_base.lib.php | 6 +++--- install/tpl/nginx_apps.vhost.master | 6 +++--- install/tpl/nginx_ispconfig.vhost.master | 6 +++--- 6 files changed, 16 insertions(+), 16 deletions(-) diff --git a/install/dist/lib/fedora.lib.php b/install/dist/lib/fedora.lib.php index f1d57f9c83..889bd4288d 100644 --- a/install/dist/lib/fedora.lib.php +++ b/install/dist/lib/fedora.lib.php @@ -1253,11 +1253,11 @@ class installer_dist extends installer_base { $content = str_replace('{vhost_port}', $conf['nginx']['vhost_port'], $content); if(is_file($install_dir.'/interface/ssl/ispserver.crt') && is_file($install_dir.'/interface/ssl/ispserver.key')) { - $content = str_replace('{ssl_on}', ' on', $content); + $content = str_replace('{ssl_on}', 'ssl', $content); $content = str_replace('{ssl_comment}', '', $content); $content = str_replace('{fastcgi_ssl}', 'on', $content); } else { - $content = str_replace('{ssl_on}', ' off', $content); + $content = str_replace('{ssl_on}', '', $content); $content = str_replace('{ssl_comment}', '#', $content); $content = str_replace('{fastcgi_ssl}', 'off', $content); } diff --git a/install/dist/lib/gentoo.lib.php b/install/dist/lib/gentoo.lib.php index af692b1689..5bb0d9df19 100644 --- a/install/dist/lib/gentoo.lib.php +++ b/install/dist/lib/gentoo.lib.php @@ -785,7 +785,7 @@ class installer extends installer_base $content = str_replace('{cgi_socket}', $cgi_socket, $content); // SSL in apps vhost is off by default. Might change later. - $content = str_replace('{ssl_on}', 'off', $content); + $content = str_replace('{ssl_on}', 'ssl', $content); $content = str_replace('{ssl_comment}', '#', $content); wf($vhost_conf_dir.'/apps.vhost', $content); @@ -1139,11 +1139,11 @@ class installer extends installer_base $content = str_replace('{vhost_port}', $conf['nginx']['vhost_port'], $content); if(is_file($install_dir.'/interface/ssl/ispserver.crt') && is_file($install_dir.'/interface/ssl/ispserver.key')) { - $content = str_replace('{ssl_on}', ' on', $content); + $content = str_replace('{ssl_on}', 'ssl', $content); $content = str_replace('{ssl_comment}', '', $content); $content = str_replace('{fastcgi_ssl}', 'on', $content); } else { - $content = str_replace('{ssl_on}', ' off', $content); + $content = str_replace('{ssl_on}', '', $content); $content = str_replace('{ssl_comment}', '#', $content); $content = str_replace('{fastcgi_ssl}', 'off', $content); } diff --git a/install/dist/lib/opensuse.lib.php b/install/dist/lib/opensuse.lib.php index 6856317f93..21cfd9f2ba 100644 --- a/install/dist/lib/opensuse.lib.php +++ b/install/dist/lib/opensuse.lib.php @@ -1264,11 +1264,11 @@ class installer_dist extends installer_base { $content = str_replace('{vhost_port}', $conf['nginx']['vhost_port'], $content); if(is_file($install_dir.'/interface/ssl/ispserver.crt') && is_file($install_dir.'/interface/ssl/ispserver.key')) { - $content = str_replace('{ssl_on}', ' on', $content); + $content = str_replace('{ssl_on}', 'ssl', $content); $content = str_replace('{ssl_comment}', '', $content); $content = str_replace('{fastcgi_ssl}', 'on', $content); } else { - $content = str_replace('{ssl_on}', ' off', $content); + $content = str_replace('{ssl_on}', '', $content); $content = str_replace('{ssl_comment}', '#', $content); $content = str_replace('{fastcgi_ssl}', 'off', $content); } diff --git a/install/lib/installer_base.lib.php b/install/lib/installer_base.lib.php index 10cfbaf965..385b6e13bd 100644 --- a/install/lib/installer_base.lib.php +++ b/install/lib/installer_base.lib.php @@ -2131,7 +2131,7 @@ class installer_base { $content = str_replace('{use_socket}', $use_socket, $content); // SSL in apps vhost is off by default. Might change later. - $content = str_replace('{ssl_on}', 'off', $content); + $content = str_replace('{ssl_on}', '', $content); $content = str_replace('{ssl_comment}', '#', $content); // Fix socket path on PHP 7 systems @@ -2564,11 +2564,11 @@ class installer_base { $content = str_replace('{vhost_port}', $conf['nginx']['vhost_port'], $content); if(is_file($install_dir.'/interface/ssl/ispserver.crt') && is_file($install_dir.'/interface/ssl/ispserver.key')) { - $content = str_replace('{ssl_on}', 'on', $content); + $content = str_replace('{ssl_on}', 'ssl', $content); $content = str_replace('{ssl_comment}', '', $content); $content = str_replace('{fastcgi_ssl}', 'on', $content); } else { - $content = str_replace('{ssl_on}', 'off', $content); + $content = str_replace('{ssl_on}', '', $content); $content = str_replace('{ssl_comment}', '#', $content); $content = str_replace('{fastcgi_ssl}', 'off', $content); } diff --git a/install/tpl/nginx_apps.vhost.master b/install/tpl/nginx_apps.vhost.master index e1bb6d1849..3d00d11106 100644 --- a/install/tpl/nginx_apps.vhost.master +++ b/install/tpl/nginx_apps.vhost.master @@ -1,7 +1,7 @@ server { - listen {apps_vhost_port}; - listen [::]:{apps_vhost_port} ipv6only=on; - ssl {ssl_on}; + listen {apps_vhost_port} {ssl_on}; + listen [::]:{apps_vhost_port} {ssl_on} ipv6only=on; + {ssl_comment}ssl_protocols TLSv1 TLSv1.1 TLSv1.2; {ssl_comment}ssl_certificate /usr/local/ispconfig/interface/ssl/ispserver.crt; {ssl_comment}ssl_certificate_key /usr/local/ispconfig/interface/ssl/ispserver.key; diff --git a/install/tpl/nginx_ispconfig.vhost.master b/install/tpl/nginx_ispconfig.vhost.master index 3c8bf5dbaf..aad670e97a 100644 --- a/install/tpl/nginx_ispconfig.vhost.master +++ b/install/tpl/nginx_ispconfig.vhost.master @@ -1,7 +1,7 @@ server { - listen {vhost_port}; - listen [::]:{vhost_port} ipv6only=on; - ssl {ssl_on}; + listen {vhost_port} {ssl_on}; + listen [::]:{vhost_port} {ssl_on} ipv6only=on; + {ssl_comment}ssl_protocols TLSv1 TLSv1.1 TLSv1.2; {ssl_comment}ssl_certificate /usr/local/ispconfig/interface/ssl/ispserver.crt; {ssl_comment}ssl_certificate_key /usr/local/ispconfig/interface/ssl/ispserver.key; -- GitLab From 6591fc38e88b705ca984f2df4eec981a9852c2e8 Mon Sep 17 00:00:00 2001 From: Till Brehm <tbrehm@ispconfig.org> Date: Mon, 4 Mar 2019 19:27:28 +0100 Subject: [PATCH 038/215] Set custom name for ISPConfig session to prevent collisions with other PHP applications. --- interface/lib/app.inc.php | 1 + 1 file changed, 1 insertion(+) diff --git a/interface/lib/app.inc.php b/interface/lib/app.inc.php index f8b59317d0..ccc80fd254 100755 --- a/interface/lib/app.inc.php +++ b/interface/lib/app.inc.php @@ -88,6 +88,7 @@ class app { public function initialize_session() { //* Start the session if($this->_conf['start_session'] == true) { + session_name('ISPCSESS'); $this->uses('session'); $sess_timeout = $this->conf('interface', 'session_timeout'); $cookie_domain = $this->get_cookie_domain(); -- GitLab From 3f7f1e898a4314b57b895a2db75080296aed4e66 Mon Sep 17 00:00:00 2001 From: Till Brehm <tbrehm@ispconfig.org> Date: Mon, 4 Mar 2019 19:33:27 +0100 Subject: [PATCH 039/215] Avoid apps vhost symlink warnings --- install/lib/installer_base.lib.php | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/install/lib/installer_base.lib.php b/install/lib/installer_base.lib.php index 385b6e13bd..2c99f1bd0b 100644 --- a/install/lib/installer_base.lib.php +++ b/install/lib/installer_base.lib.php @@ -2047,8 +2047,8 @@ class installer_base { //copy('tpl/apache_ispconfig.vhost.master', "$vhost_conf_dir/ispconfig.vhost"); //* and create the symlink if(@is_link($vhost_conf_enabled_dir.'/apps.vhost')) unlink($vhost_conf_enabled_dir.'/apps.vhost'); - if(!@is_link($vhost_conf_enabled_dir.'/000-apps.vhost')) { - symlink($vhost_conf_dir.'/apps.vhost', $vhost_conf_enabled_dir.'/000-apps.vhost'); + if(!@is_link($vhost_conf_enabled_dir.'/000-apps.vhost') && @is_file($vhost_conf_dir.'/apps.vhost')) { + @symlink($vhost_conf_dir.'/apps.vhost', $vhost_conf_enabled_dir.'/000-apps.vhost'); } if(!is_file($conf['web']['website_basedir'].'/php-fcgi-scripts/apps/.php-fcgi-starter')) { -- GitLab From 2844e9b858800fa0e0e30bfadd19d06326a5d1d5 Mon Sep 17 00:00:00 2001 From: Till Brehm <tbrehm@ispconfig.org> Date: Tue, 5 Mar 2019 16:33:10 +0100 Subject: [PATCH 040/215] Fixes #5265 IDN Domain issues in email domain form Fixes #4972 Domain in spamfilter_user settings not punicode encoded --- .../plugins/mail_mail_domain_plugin.inc.php | 18 +++++---- interface/web/mail/mail_domain_edit.php | 38 +++++++++++-------- 2 files changed, 32 insertions(+), 24 deletions(-) diff --git a/interface/lib/plugins/mail_mail_domain_plugin.inc.php b/interface/lib/plugins/mail_mail_domain_plugin.inc.php index e72c4aa06b..df6e3ffeb0 100644 --- a/interface/lib/plugins/mail_mail_domain_plugin.inc.php +++ b/interface/lib/plugins/mail_mail_domain_plugin.inc.php @@ -26,6 +26,8 @@ class mail_mail_domain_plugin { */ function mail_mail_domain_edit($event_name, $page_form) { global $app, $conf; + + $domain = $app->functions->idn_encode($page_form->dataRecord['domain']); // make sure that the record belongs to the client group and not the admin group when a dmin inserts it // also make sure that the user can not delete entry created by an admin @@ -57,7 +59,7 @@ class mail_mail_domain_plugin { } //** If the domain name or owner has been changed, change the domain and owner in all mailbox records - if($page_form->oldDataRecord && ($page_form->oldDataRecord['domain'] != $page_form->dataRecord['domain'] || + if($page_form->oldDataRecord && ($page_form->oldDataRecord['domain'] != $domain || (isset($page_form->dataRecord['client_group_id']) && $page_form->oldDataRecord['sys_groupid'] != $page_form->dataRecord['client_group_id']))) { $app->uses('getconf'); $mail_config = $app->getconf->get_server_config($page_form->dataRecord["server_id"], 'mail'); @@ -71,9 +73,9 @@ class mail_mail_domain_plugin { foreach($mailusers as $rec) { // setting Maildir, Homedir, UID and GID $mail_parts = explode("@", $rec['email']); - $maildir = str_replace("[domain]", $page_form->dataRecord['domain'], $mail_config["maildir_path"]); + $maildir = str_replace("[domain]", $domain, $mail_config["maildir_path"]); $maildir = str_replace("[localpart]", $mail_parts[0], $maildir); - $email = $mail_parts[0].'@'.$page_form->dataRecord['domain']; + $email = $mail_parts[0].'@'.$domain; $app->db->datalogUpdate('mail_user', array("maildir" => $maildir, "email" => $email, "sys_userid" => $client_user_id, "sys_groupid" => $sys_groupid), 'mailuser_id', $rec['mailuser_id']); } } @@ -82,8 +84,8 @@ class mail_mail_domain_plugin { $forwardings = $app->db->queryAllRecords("SELECT * FROM mail_forwarding WHERE source LIKE ? OR destination LIKE ?", "%@" . $page_form->oldDataRecord['domain'], "%@" . $page_form->oldDataRecord['domain']); if(is_array($forwardings)) { foreach($forwardings as $rec) { - $destination = str_replace($page_form->oldDataRecord['domain'], $page_form->dataRecord['domain'], $rec['destination']); - $source = str_replace($page_form->oldDataRecord['domain'], $page_form->dataRecord['domain'], $rec['source']); + $destination = str_replace($page_form->oldDataRecord['domain'], $domain, $rec['destination']); + $source = str_replace($page_form->oldDataRecord['domain'], $domain, $rec['source']); $app->db->datalogUpdate('mail_forwarding', array("source" => $source, "destination" => $destination, "sys_userid" => $client_user_id, "sys_groupid" => $sys_groupid), 'forwarding_id', $rec['forwarding_id']); } } @@ -100,18 +102,18 @@ class mail_mail_domain_plugin { $mail_gets = $app->db->queryAllRecords("SELECT mailget_id, destination FROM mail_get WHERE destination LIKE ?", "%@" . $page_form->oldDataRecord['domain']); if(is_array($mail_gets)) { foreach($mail_gets as $rec) { - $destination = str_replace($page_form->oldDataRecord['domain'], $page_form->dataRecord['domain'], $rec['destination']); + $destination = str_replace($page_form->oldDataRecord['domain'], $domain, $rec['destination']); $app->db->datalogUpdate('mail_get', array("destination" => $destination, "sys_userid" => $client_user_id, "sys_groupid" => $sys_groupid), 'mailget_id', $rec['mailget_id']); } } - if ($page_form->oldDataRecord["domain"] != $page_form->dataRecord['domain']) { + if ($page_form->oldDataRecord["domain"] != $domain) { //* Delete the old spamfilter record $tmp = $app->db->queryOneRecord("SELECT id FROM spamfilter_users WHERE email = ?", "@" . $page_form->oldDataRecord["domain"]); $app->db->datalogDelete('spamfilter_users', 'id', $tmp["id"]); unset($tmp); } - $app->db->query("UPDATE spamfilter_users SET email=REPLACE(email, ?, ?), sys_userid = ?, sys_groupid = ? WHERE email LIKE ?", $page_form->oldDataRecord['domain'], $page_form->dataRecord['domain'], $client_user_id, $sys_groupid, "%@" . $page_form->oldDataRecord['domain']); + $app->db->query("UPDATE spamfilter_users SET email=REPLACE(email, ?, ?), sys_userid = ?, sys_groupid = ? WHERE email LIKE ?", $page_form->oldDataRecord['domain'], $domain, $client_user_id, $sys_groupid, "%@" . $page_form->oldDataRecord['domain']); } // end if domain name changed } diff --git a/interface/web/mail/mail_domain_edit.php b/interface/web/mail/mail_domain_edit.php index e39de91e0f..72877a774d 100644 --- a/interface/web/mail/mail_domain_edit.php +++ b/interface/web/mail/mail_domain_edit.php @@ -281,11 +281,13 @@ class page_action extends tform_actions { function onAfterInsert() { global $app, $conf; + + $domain = $app->functions->idn_encode($this->dataRecord["domain"]); // Spamfilter policy $policy_id = $app->functions->intval($this->dataRecord["policy"]); if($policy_id > 0) { - $tmp_user = $app->db->queryOneRecord("SELECT id FROM spamfilter_users WHERE email = ?", '@' . $this->dataRecord["domain"]); + $tmp_user = $app->db->queryOneRecord("SELECT id FROM spamfilter_users WHERE email = ?", '@' . $domain); if($tmp_user["id"] > 0) { // There is already a record that we will update $app->db->datalogUpdate('spamfilter_users', array("policy_id" => $policy_id), 'id', $tmp_user["id"]); @@ -301,8 +303,8 @@ class page_action extends tform_actions { "server_id" => $this->dataRecord["server_id"], "priority" => 5, "policy_id" => $policy_id, - "email" => '@' . $this->dataRecord["domain"], - "fullname" => '@' . $this->dataRecord["domain"], + "email" => '@' . $domain, + "fullname" => '@' . $domain, "local" => 'Y' ); $app->db->datalogInsert('spamfilter_users', $insert_data, 'id'); @@ -324,6 +326,8 @@ class page_action extends tform_actions { function onBeforeUpdate() { global $app, $conf; + + $domain = $app->functions->idn_encode($this->dataRecord["domain"]); //* Check if the server has been changed // We do this only for the admin or reseller users, as normal clients can not change the server ID anyway @@ -339,7 +343,7 @@ class page_action extends tform_actions { } else { //* We do not allow users to change a domain which has been created by the admin $rec = $app->db->queryOneRecord("SELECT domain from mail_domain WHERE domain_id = ?", $this->id); - if($rec['domain'] != $this->dataRecord["domain"] && !$app->tform->checkPerm($this->id, 'u')) { + if($rec['domain'] != $domain && !$app->tform->checkPerm($this->id, 'u')) { //* Add a error message and switch back to old server $app->tform->errorMessage .= $app->lng('The Domain can not be changed. Please ask your Administrator if you want to change the domain name.'); $this->dataRecord["domain"] = $rec['domain']; @@ -352,9 +356,11 @@ class page_action extends tform_actions { function onAfterUpdate() { global $app, $conf; + $domain = $app->functions->idn_encode($this->dataRecord["domain"]); + // Spamfilter policy $policy_id = $app->functions->intval($this->dataRecord["policy"]); - $tmp_user = $app->db->queryOneRecord("SELECT id FROM spamfilter_users WHERE email = ?", '@' . $this->dataRecord["domain"]); + $tmp_user = $app->db->queryOneRecord("SELECT id FROM spamfilter_users WHERE email = ?", '@' . $domain); if($policy_id > 0) { if($tmp_user["id"] > 0) { // There is already a record that we will update @@ -371,8 +377,8 @@ class page_action extends tform_actions { "server_id" => $this->dataRecord["server_id"], "priority" => 5, "policy_id" => $policy_id, - "email" => '@' . $this->dataRecord["domain"], - "fullname" => '@' . $this->dataRecord["domain"], + "email" => '@' . $domain, + "fullname" => '@' . $domain, "local" => 'Y' ); $app->db->datalogInsert('spamfilter_users', $insert_data, 'id'); @@ -385,7 +391,7 @@ class page_action extends tform_actions { } } // endif spamfilter policy //** If the domain name or owner has been changed, change the domain and owner in all mailbox records - if($this->oldDataRecord['domain'] != $this->dataRecord['domain'] || (isset($this->dataRecord['client_group_id']) && $this->oldDataRecord['sys_groupid'] != $this->dataRecord['client_group_id'])) { + if($this->oldDataRecord['domain'] != $domain || (isset($this->dataRecord['client_group_id']) && $this->oldDataRecord['sys_groupid'] != $this->dataRecord['client_group_id'])) { $app->uses('getconf'); $mail_config = $app->getconf->get_server_config($this->dataRecord["server_id"], 'mail'); @@ -398,7 +404,7 @@ class page_action extends tform_actions { foreach($mailusers as $rec) { // setting Maildir, Homedir, UID and GID $mail_parts = explode("@", $rec['email']); - $maildir = str_replace("[domain]", $this->dataRecord['domain'], $mail_config["maildir_path"]); + $maildir = str_replace("[domain]", $domain, $mail_config["maildir_path"]); $maildir = str_replace("[localpart]", $mail_parts[0], $maildir); $email = $mail_parts[0].'@'.$this->dataRecord['domain']; $app->db->datalogUpdate('mail_user', array("maildir" => $maildir, "email" => $email, "sys_userid" => $client_user_id, "sys_groupid" => $sys_groupid), 'mailuser_id', $rec['mailuser_id']); @@ -409,8 +415,8 @@ class page_action extends tform_actions { $forwardings = $app->db->queryAllRecords("SELECT * FROM mail_forwarding WHERE source like ? OR destination like ?", '%@' . $this->oldDataRecord['domain'], '%@' . $this->oldDataRecord['domain']); if(is_array($forwardings)) { foreach($forwardings as $rec) { - $destination = str_replace($this->oldDataRecord['domain'], $this->dataRecord['domain'], $rec['destination']); - $source = str_replace($this->oldDataRecord['domain'], $this->dataRecord['domain'], $rec['source']); + $destination = str_replace($this->oldDataRecord['domain'], $domain, $rec['destination']); + $source = str_replace($this->oldDataRecord['domain'], $domain, $rec['source']); $app->db->datalogUpdate('mail_forwarding', array("source" => $source, "destination" => $destination, "sys_userid" => $client_user_id, "sys_groupid" => $sys_groupid), 'forwarding_id', $rec['forwarding_id']); } } @@ -422,7 +428,7 @@ class page_action extends tform_actions { $fetchmail = $app->db->queryAllRecords("SELECT * FROM mail_get WHERE destination like ?", '%@' . $this->oldDataRecord['domain']); if(is_array($fetchmail)) { foreach($fetchmail as $rec) { - $destination = str_replace($this->oldDataRecord['domain'], $this->dataRecord['domain'], $rec['destination']); + $destination = str_replace($this->oldDataRecord['domain'], $domain, $rec['destination']); $app->db->datalogUpdate('mail_get', array("destination" => $destination, "sys_userid" => $client_user_id, "sys_groupid" => $sys_groupid), 'mailget_id', $rec['mailget_id']); } } @@ -436,15 +442,15 @@ class page_action extends tform_actions { //* update dns-record when the dkim record was changed // NOTE: only if the domain-name was not changed - if ( $this->dataRecord['active'] == 'y' && $this->dataRecord['domain'] == $this->oldDataRecord['domain'] ) { + if ( $this->dataRecord['active'] == 'y' && $domain == $this->oldDataRecord['domain'] ) { $dkim_active = @($this->dataRecord['dkim'] == 'y') ? true : false; $selector = @($this->dataRecord['dkim_selector'] != $this->oldDataRecord['dkim_selector']) ? true : false; $dkim_private = @($this->dataRecord['dkim_private'] != $this->oldDataRecord['dkim_private']) ? true : false; - $soaDomain = $this->dataRecord['domain'].'.'; + $soaDomain = $domain.'.'; while ((!isset($soa) && (substr_count($soaDomain,'.') > 1))) { $soa = $app->db->queryOneRecord("SELECT id AS zone, sys_userid, sys_groupid, sys_perm_user, sys_perm_group, sys_perm_other, server_id, ttl, serial FROM dns_soa WHERE active = 'Y' AND origin = ?", $soaDomain); - $soaDomain = preg_replace("/^\w+\./","",$soaDomain); + $soaDomain = preg_replace("/^[\w\-]+\./","",$soaDomain); } if ( ($selector || $dkim_private || $dkim_active) && $dkim_active ) @@ -455,7 +461,7 @@ class page_action extends tform_actions { if (! $dkim_active) { // updated existing dmarc-record to policy 'none' $sql = "SELECT * from dns_rr WHERE name = ? AND data LIKE 'v=DMARC1%' AND " . $app->tform->getAuthSQL('r'); - $rec = $app->db->queryOneRecord($sql, '_dmarc.'.$this->dataRecord['domain'].'.'); + $rec = $app->db->queryOneRecord($sql, '_dmarc.'.$domain.'.'); if (is_array($rec)) if (strpos($rec['data'], 'p=none=') === false) { $rec['data'] = str_replace(array('quarantine', 'reject'), 'none', $rec['data']); -- GitLab From 3785448ee207e33cdf4418384eeb2030c8b32a33 Mon Sep 17 00:00:00 2001 From: Till Brehm <tbrehm@ispconfig.org> Date: Tue, 5 Mar 2019 17:51:21 +0100 Subject: [PATCH 041/215] Implemented #5237 DNS: xfer / also_notify fields too short --- install/sql/incremental/upd_dev_collection.sql | 2 ++ install/sql/ispconfig3.sql | 4 ++-- 2 files changed, 4 insertions(+), 2 deletions(-) diff --git a/install/sql/incremental/upd_dev_collection.sql b/install/sql/incremental/upd_dev_collection.sql index 4c855b541c..b9fb91d46c 100644 --- a/install/sql/incremental/upd_dev_collection.sql +++ b/install/sql/incremental/upd_dev_collection.sql @@ -79,3 +79,5 @@ INSERT IGNORE INTO `dns_ssl_ca` (`id`, `sys_userid`, `sys_groupid`, `sys_perm_us (NULL, 1, 1, 'riud', 'riud', '', 'Y', 'WoSign', 'wosign.com', 'Y', '', 0); ALTER TABLE `dns_soa` CHANGE `xfer` `xfer` TEXT NOT NULL DEFAULT ''; +ALTER TABLE `dns_soa` CHANGE `also_notify` `also_notify` TEXT NOT NULL DEFAULT ''; +ALTER TABLE `dns_slave` CHANGE `xfer` `xfer` TEXT NOT NULL DEFAULT ''; \ No newline at end of file diff --git a/install/sql/ispconfig3.sql b/install/sql/ispconfig3.sql index dd45aa2091..f06a49b7ea 100644 --- a/install/sql/ispconfig3.sql +++ b/install/sql/ispconfig3.sql @@ -516,7 +516,7 @@ CREATE TABLE `dns_slave` ( `origin` varchar(255) NOT NULL DEFAULT '', `ns` varchar(255) NOT NULL DEFAULT '', `active` enum('N','Y') NOT NULL DEFAULT 'N', - `xfer` varchar(255) NOT NULL DEFAULT '', + `xfer` TEXT NOT NULL DEFAULT '', PRIMARY KEY (`id`), UNIQUE KEY `slave` (`origin`,`server_id`), KEY `active` (`active`) @@ -621,7 +621,7 @@ CREATE TABLE `dns_soa` ( `ttl` int(11) unsigned NOT NULL default '3600', `active` enum('N','Y') NOT NULL DEFAULT 'N', `xfer` TEXT NOT NULL DEFAULT '', - `also_notify` varchar(255) default NULL, + `also_notify` TEXT NOT NULL DEFAULT '', `update_acl` varchar(255) default NULL, `dnssec_initialized` ENUM('Y','N') NOT NULL DEFAULT 'N', `dnssec_wanted` ENUM('Y','N') NOT NULL DEFAULT 'N', -- GitLab From 26c7874eafc76f1873d01e69d091ebb0024ed2bc Mon Sep 17 00:00:00 2001 From: Webslice <4052-webslice@users.noreply.git.ispconfig.org> Date: Tue, 5 Mar 2019 17:53:46 +0100 Subject: [PATCH 042/215] Feature/password strength checker for aps --- .../lib/classes/aps_guicontroller.inc.php | 10 ++ interface/web/sites/lib/lang/ar_aps.lng | 5 + interface/web/sites/lib/lang/bg_aps.lng | 7 +- interface/web/sites/lib/lang/br_aps.lng | 7 +- interface/web/sites/lib/lang/ca_aps.lng | 7 +- interface/web/sites/lib/lang/cz_aps.lng | 7 +- interface/web/sites/lib/lang/de_aps.lng | 7 +- interface/web/sites/lib/lang/dk_aps.lng | 5 + interface/web/sites/lib/lang/el_aps.lng | 5 + interface/web/sites/lib/lang/en_aps.lng | 5 + interface/web/sites/lib/lang/es_aps.lng | 5 + interface/web/sites/lib/lang/fi_aps.lng | 5 + interface/web/sites/lib/lang/fr_aps.lng | 5 + interface/web/sites/lib/lang/hr_aps.lng | 5 + interface/web/sites/lib/lang/hu_aps.lng | 5 + interface/web/sites/lib/lang/id_aps.lng | 5 + interface/web/sites/lib/lang/it_aps.lng | 5 + interface/web/sites/lib/lang/ja_aps.lng | 5 + interface/web/sites/lib/lang/nl_aps.lng | 5 + interface/web/sites/lib/lang/pl_aps.lng | 5 + interface/web/sites/lib/lang/pt_aps.lng | 5 + interface/web/sites/lib/lang/ro_aps.lng | 5 + interface/web/sites/lib/lang/ru_aps.lng | 5 + interface/web/sites/lib/lang/se_aps.lng | 5 + interface/web/sites/lib/lang/sk_aps.lng | 5 + interface/web/sites/lib/lang/tr_aps.lng | 5 + .../sites/templates/aps_install_package.htm | 155 +++++++++++++----- 27 files changed, 251 insertions(+), 49 deletions(-) diff --git a/interface/lib/classes/aps_guicontroller.inc.php b/interface/lib/classes/aps_guicontroller.inc.php index c895e40d0b..8a764a9c5c 100644 --- a/interface/lib/classes/aps_guicontroller.inc.php +++ b/interface/lib/classes/aps_guicontroller.inc.php @@ -567,6 +567,16 @@ class ApsGUIController extends ApsBase } else $error[] = $app->lng('error_main_domain'); + if(isset($postinput['admin_password'])) + { + $app->uses('validate_password'); + + $passwordError = $app->validate_password->password_check('', $postinput['admin_password'], ''); + if ($passwordError) { + $error[] = $passwordError; + } + } + // Main location (not obligatory but must be supplied) if(isset($postinput['main_location'])) { diff --git a/interface/web/sites/lib/lang/ar_aps.lng b/interface/web/sites/lib/lang/ar_aps.lng index 29fb7b6a40..881c146a4d 100644 --- a/interface/web/sites/lib/lang/ar_aps.lng +++ b/interface/web/sites/lib/lang/ar_aps.lng @@ -55,4 +55,9 @@ $wb['packagelist_update_finished_txt'] = 'APS Packagelist update finished.'; $wb['btn_install_txt'] = 'Install'; $wb['btn_cancel_txt'] = 'Cancel'; $wb['limit_aps_txt'] = 'The max. number of APS instances for your account is reached.'; +$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['password_strength_txt'] = 'Password strength'; ?> diff --git a/interface/web/sites/lib/lang/bg_aps.lng b/interface/web/sites/lib/lang/bg_aps.lng index 29fb7b6a40..5313f2d910 100644 --- a/interface/web/sites/lib/lang/bg_aps.lng +++ b/interface/web/sites/lib/lang/bg_aps.lng @@ -55,4 +55,9 @@ $wb['packagelist_update_finished_txt'] = 'APS Packagelist update finished.'; $wb['btn_install_txt'] = 'Install'; $wb['btn_cancel_txt'] = 'Cancel'; $wb['limit_aps_txt'] = 'The max. number of APS instances for your account is reached.'; -?> +$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['password_strength_txt'] = 'Сила на паролата'; +?> \ No newline at end of file diff --git a/interface/web/sites/lib/lang/br_aps.lng b/interface/web/sites/lib/lang/br_aps.lng index 6c5be1da54..46cfabfb01 100644 --- a/interface/web/sites/lib/lang/br_aps.lng +++ b/interface/web/sites/lib/lang/br_aps.lng @@ -55,4 +55,9 @@ $wb['packagelist_update_finished_txt'] = 'Atualização da lista de pacotes fina $wb['btn_install_txt'] = 'Instalar'; $wb['btn_cancel_txt'] = 'Cancelar'; $wb['limit_aps_txt'] = 'O limite de instâncias de apps para esta conta foi alcançado.'; -?> +$wb['generate_password_txt'] = 'Gerar senha'; +$wb['repeat_password_txt'] = 'Repetir senha'; +$wb['password_mismatch_txt'] = 'A senhas não coincidem.'; +$wb['password_match_txt'] = 'A senhas coincidem.'; +$wb['password_strength_txt'] = 'Dificuldade da senha'; +?> \ No newline at end of file diff --git a/interface/web/sites/lib/lang/ca_aps.lng b/interface/web/sites/lib/lang/ca_aps.lng index 2c90556d66..bbf799bb39 100644 --- a/interface/web/sites/lib/lang/ca_aps.lng +++ b/interface/web/sites/lib/lang/ca_aps.lng @@ -55,4 +55,9 @@ $wb['packagelist_update_finished_txt'] = 'Mise à jour APS Packagelist terminée $wb['btn_install_txt'] = 'Installer'; $wb['btn_cancel_txt'] = 'Annuler'; $wb['limit_aps_txt'] = 'Le nombre max d\'instances APS pour votre compte a été atteint.'; -?> +$wb['generate_password_txt'] = 'Générer un mot de passe'; +$wb['repeat_password_txt'] = 'Vérification du mot de passe'; +$wb['password_mismatch_txt'] = 'Les mots de passe ne correspondent pas.'; +$wb['password_match_txt'] = 'Les mots de passe correspondent.'; +$wb['password_strength_txt'] = 'Force du mot de passe'; +?> \ No newline at end of file diff --git a/interface/web/sites/lib/lang/cz_aps.lng b/interface/web/sites/lib/lang/cz_aps.lng index 5ec94945d1..36bc6816f4 100644 --- a/interface/web/sites/lib/lang/cz_aps.lng +++ b/interface/web/sites/lib/lang/cz_aps.lng @@ -55,4 +55,9 @@ $wb['packagelist_update_finished_txt'] = 'APS aktualizace seznamu balÃÄků byl $wb['btn_install_txt'] = 'Instalovat'; $wb['btn_cancel_txt'] = 'ZruÅ¡it'; $wb['limit_aps_txt'] = 'Max. poÄet APS instancà u vaÅ¡eho úÄtu je dosaženo.'; -?> +$wb['generate_password_txt'] = 'Generovat heslo'; +$wb['repeat_password_txt'] = 'Opakujte heslo'; +$wb['password_mismatch_txt'] = 'Hesla se neshodujÃ.'; +$wb['password_match_txt'] = 'Hesla se shodujÃ.'; +$wb['password_strength_txt'] = 'BezpeÄnost hesla'; +?> \ No newline at end of file diff --git a/interface/web/sites/lib/lang/de_aps.lng b/interface/web/sites/lib/lang/de_aps.lng index aab6f4edf7..bb986b5c44 100644 --- a/interface/web/sites/lib/lang/de_aps.lng +++ b/interface/web/sites/lib/lang/de_aps.lng @@ -55,4 +55,9 @@ $wb['installation_success_txt'] = 'Installiert'; $wb['installation_remove_txt'] = 'Deinstallation vorgemerkt'; $wb['packagelist_update_finished_txt'] = 'APS Paketlistenupdate beendet.'; $wb['limit_aps_txt'] = 'Die maximale Anzahl an APS-Instanzen für Ihr Konto wurde erreicht.'; -?> +$wb['generate_password_txt'] = 'Passwort erzeugen'; +$wb['repeat_password_txt'] = 'Passwort wiederholen'; +$wb['password_mismatch_txt'] = 'Die Passwörter stimmen nicht überein.'; +$wb['password_match_txt'] = 'Die Passwörter stimmen überein.'; +$wb['password_strength_txt'] = 'Passwortkomplexität'; +?> \ No newline at end of file diff --git a/interface/web/sites/lib/lang/dk_aps.lng b/interface/web/sites/lib/lang/dk_aps.lng index 8350875354..ca006e2eb2 100644 --- a/interface/web/sites/lib/lang/dk_aps.lng +++ b/interface/web/sites/lib/lang/dk_aps.lng @@ -55,4 +55,9 @@ $wb['installation_success_txt'] = 'Installeret'; $wb['installation_remove_txt'] = 'Fjernelse planlagt'; $wb['packagelist_update_finished_txt'] = 'APS Pakke Liste opdatering er færdig.'; $wb['limit_aps_txt'] = 'Max. antal af APS forekomster for din konto er nÃ¥et.'; +$wb['generate_password_txt'] = 'Generer Adgangskode'; +$wb['repeat_password_txt'] = 'Gentage Adgangskode'; +$wb['password_mismatch_txt'] = 'Adgangskoderne stemmer ikke overens.'; +$wb['password_match_txt'] = 'Adgangskoderne stemmer overens.'; +$wb['password_strength_txt'] = 'Adgangskode styrke'; ?> diff --git a/interface/web/sites/lib/lang/el_aps.lng b/interface/web/sites/lib/lang/el_aps.lng index 29fb7b6a40..0209737f61 100644 --- a/interface/web/sites/lib/lang/el_aps.lng +++ b/interface/web/sites/lib/lang/el_aps.lng @@ -55,4 +55,9 @@ $wb['packagelist_update_finished_txt'] = 'APS Packagelist update finished.'; $wb['btn_install_txt'] = 'Install'; $wb['btn_cancel_txt'] = 'Cancel'; $wb['limit_aps_txt'] = 'The max. number of APS instances for your account is reached.'; +$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['password_strength_txt'] = 'ΔÏναμη συνθηματικοÏ'; ?> diff --git a/interface/web/sites/lib/lang/en_aps.lng b/interface/web/sites/lib/lang/en_aps.lng index bd33c1884a..b0300fe0cc 100644 --- a/interface/web/sites/lib/lang/en_aps.lng +++ b/interface/web/sites/lib/lang/en_aps.lng @@ -55,4 +55,9 @@ $wb['installation_success_txt'] = 'Installed'; $wb['installation_remove_txt'] = 'Removal planned'; $wb['packagelist_update_finished_txt'] = 'APS Packagelist update finished.'; $wb["limit_aps_txt"] = 'The max. number of APS instances for your account is reached.'; +$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["password_strength_txt"] = "Password strength"; ?> \ No newline at end of file diff --git a/interface/web/sites/lib/lang/es_aps.lng b/interface/web/sites/lib/lang/es_aps.lng index 7466310080..3780b32edd 100755 --- a/interface/web/sites/lib/lang/es_aps.lng +++ b/interface/web/sites/lib/lang/es_aps.lng @@ -55,4 +55,9 @@ $wb['supported_languages_txt'] = 'Idiomas soportados'; $wb['supported_php_versions_txt'] = 'Versiones de PHP soportadas'; $wb['version_txt'] = 'Versión'; $wb['yes_txt'] = 'SÃ'; +$wb['generate_password_txt'] = 'Generar contraseña'; +$wb['repeat_password_txt'] = 'Repetir contraseña'; +$wb['password_mismatch_txt'] = 'Las contraseñas no coinciden.'; +$wb['password_match_txt'] = 'Las contraseñas coinciden.'; +$wb['password_strength_txt'] = 'Fortaleza de la contraseña'; ?> diff --git a/interface/web/sites/lib/lang/fi_aps.lng b/interface/web/sites/lib/lang/fi_aps.lng index 29fb7b6a40..d78701f272 100644 --- a/interface/web/sites/lib/lang/fi_aps.lng +++ b/interface/web/sites/lib/lang/fi_aps.lng @@ -55,4 +55,9 @@ $wb['packagelist_update_finished_txt'] = 'APS Packagelist update finished.'; $wb['btn_install_txt'] = 'Install'; $wb['btn_cancel_txt'] = 'Cancel'; $wb['limit_aps_txt'] = 'The max. number of APS instances for your account is reached.'; +$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['password_strength_txt'] = 'Salasanan vahvuus'; ?> diff --git a/interface/web/sites/lib/lang/fr_aps.lng b/interface/web/sites/lib/lang/fr_aps.lng index 10b6edbcfd..6beef9939f 100644 --- a/interface/web/sites/lib/lang/fr_aps.lng +++ b/interface/web/sites/lib/lang/fr_aps.lng @@ -55,4 +55,9 @@ $wb['packagelist_update_finished_txt'] = 'Mise à jour APS Packagelist terminée $wb['btn_install_txt'] = 'Installer'; $wb['btn_cancel_txt'] = 'Annuler'; $wb['limit_aps_txt'] = 'Le nombre max d’instances APS pour votre compte a été atteint.'; +$wb['generate_password_txt'] = 'Générer un mot de passe'; +$wb['repeat_password_txt'] = 'Vérification du mot de passe'; +$wb['password_mismatch_txt'] = 'Les mots de passe ne correspondent pas.'; +$wb['password_match_txt'] = 'Les mots de passe correspondent.'; +$wb['password_strength_txt'] = 'Force du mot de passe'; ?> diff --git a/interface/web/sites/lib/lang/hr_aps.lng b/interface/web/sites/lib/lang/hr_aps.lng index 8b2fa6450e..79d31cf7fa 100644 --- a/interface/web/sites/lib/lang/hr_aps.lng +++ b/interface/web/sites/lib/lang/hr_aps.lng @@ -55,4 +55,9 @@ $wb['packagelist_update_finished_txt'] = 'Nadogradnja APS liste paketa je zavrÅ¡ $wb['btn_install_txt'] = 'Instaliraj'; $wb['btn_cancel_txt'] = 'Odustani'; $wb['limit_aps_txt'] = 'Iskoristili ste maksimalan broj APS instanci za vaÅ¡ raÄun.'; +$wb['generate_password_txt'] = 'Generiraj Å¡ifru'; +$wb['repeat_password_txt'] = 'Ponovi Å¡ifru'; +$wb['password_mismatch_txt'] = 'Å ifre nisu identiÄne.'; +$wb['password_match_txt'] = 'Å ifre su identiÄne.'; +$wb['password_strength_txt'] = 'JaÄina Å¡ifre'; ?> diff --git a/interface/web/sites/lib/lang/hu_aps.lng b/interface/web/sites/lib/lang/hu_aps.lng index 29fb7b6a40..88708732df 100644 --- a/interface/web/sites/lib/lang/hu_aps.lng +++ b/interface/web/sites/lib/lang/hu_aps.lng @@ -55,4 +55,9 @@ $wb['packagelist_update_finished_txt'] = 'APS Packagelist update finished.'; $wb['btn_install_txt'] = 'Install'; $wb['btn_cancel_txt'] = 'Cancel'; $wb['limit_aps_txt'] = 'The max. number of APS instances for your account is reached.'; +$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['password_strength_txt'] = 'Jelszó erÅ‘ssége'; ?> diff --git a/interface/web/sites/lib/lang/id_aps.lng b/interface/web/sites/lib/lang/id_aps.lng index 29fb7b6a40..b8c9af2152 100644 --- a/interface/web/sites/lib/lang/id_aps.lng +++ b/interface/web/sites/lib/lang/id_aps.lng @@ -55,4 +55,9 @@ $wb['packagelist_update_finished_txt'] = 'APS Packagelist update finished.'; $wb['btn_install_txt'] = 'Install'; $wb['btn_cancel_txt'] = 'Cancel'; $wb['limit_aps_txt'] = 'The max. number of APS instances for your account is reached.'; +$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['password_strength_txt'] = 'Kekuatan Sandi'; ?> diff --git a/interface/web/sites/lib/lang/it_aps.lng b/interface/web/sites/lib/lang/it_aps.lng index ced17becd3..0a6365f98f 100644 --- a/interface/web/sites/lib/lang/it_aps.lng +++ b/interface/web/sites/lib/lang/it_aps.lng @@ -55,4 +55,9 @@ $wb['packagelist_update_finished_txt'] = 'Elenco aggiornamenti APS terminato.'; $wb['btn_install_txt'] = 'Installa'; $wb['btn_cancel_txt'] = 'Annulla'; $wb['limit_aps_txt'] = 'Nmero massimo di istanza APS raggiunto per il tuo account.'; +$wb['generate_password_txt'] = 'Genera Password'; +$wb['repeat_password_txt'] = 'Ripeti Password'; +$wb['password_mismatch_txt'] = 'Le password non coincidono.'; +$wb['password_match_txt'] = 'Le password coincidono.'; +$wb['password_strength_txt'] = 'Livello sicurezza Password'; ?> diff --git a/interface/web/sites/lib/lang/ja_aps.lng b/interface/web/sites/lib/lang/ja_aps.lng index 29fb7b6a40..dc6b22edf7 100644 --- a/interface/web/sites/lib/lang/ja_aps.lng +++ b/interface/web/sites/lib/lang/ja_aps.lng @@ -55,4 +55,9 @@ $wb['packagelist_update_finished_txt'] = 'APS Packagelist update finished.'; $wb['btn_install_txt'] = 'Install'; $wb['btn_cancel_txt'] = 'Cancel'; $wb['limit_aps_txt'] = 'The max. number of APS instances for your account is reached.'; +$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['password_strength_txt'] = 'パスワードã®å¼·åº¦'; ?> diff --git a/interface/web/sites/lib/lang/nl_aps.lng b/interface/web/sites/lib/lang/nl_aps.lng index 9d51f7457b..c0adacee99 100644 --- a/interface/web/sites/lib/lang/nl_aps.lng +++ b/interface/web/sites/lib/lang/nl_aps.lng @@ -55,4 +55,9 @@ $wb['packagelist_update_finished_txt'] = 'APS Packagelist update finished.'; $wb['btn_install_txt'] = 'Installeren'; $wb['btn_cancel_txt'] = 'Annuleren'; $wb['limit_aps_txt'] = 'The max. number of APS instances for your account is reached.'; +$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['password_strength_txt'] = 'Wachtwoord sterkte'; ?> diff --git a/interface/web/sites/lib/lang/pl_aps.lng b/interface/web/sites/lib/lang/pl_aps.lng index 1a2ffad688..c17bbca532 100644 --- a/interface/web/sites/lib/lang/pl_aps.lng +++ b/interface/web/sites/lib/lang/pl_aps.lng @@ -55,4 +55,9 @@ $wb['packagelist_update_finished_txt'] = 'Aktualizacja listy pakietów APS zako $wb['btn_install_txt'] = 'Instaluj'; $wb['btn_cancel_txt'] = 'Anuluj'; $wb['limit_aps_txt'] = 'Maksymalna liczba instancji APS dla Twojego konta zostaÅ‚a wyczerpana.'; +$wb['generate_password_txt'] = 'Generuj hasÅ‚o'; +$wb['repeat_password_txt'] = 'Powtórz hasÅ‚o'; +$wb['password_mismatch_txt'] = 'HasÅ‚a nie pasujÄ… do siebie'; +$wb['password_match_txt'] = 'HasÅ‚a pasujÄ…'; +$wb['password_strength_txt'] = 'SiÅ‚a hasÅ‚a'; ?> diff --git a/interface/web/sites/lib/lang/pt_aps.lng b/interface/web/sites/lib/lang/pt_aps.lng index 29fb7b6a40..c17ef00914 100644 --- a/interface/web/sites/lib/lang/pt_aps.lng +++ b/interface/web/sites/lib/lang/pt_aps.lng @@ -55,4 +55,9 @@ $wb['packagelist_update_finished_txt'] = 'APS Packagelist update finished.'; $wb['btn_install_txt'] = 'Install'; $wb['btn_cancel_txt'] = 'Cancel'; $wb['limit_aps_txt'] = 'The max. number of APS instances for your account is reached.'; +$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['password_strength_txt'] = 'Dificuldade da senha'; ?> diff --git a/interface/web/sites/lib/lang/ro_aps.lng b/interface/web/sites/lib/lang/ro_aps.lng index 29fb7b6a40..881c146a4d 100644 --- a/interface/web/sites/lib/lang/ro_aps.lng +++ b/interface/web/sites/lib/lang/ro_aps.lng @@ -55,4 +55,9 @@ $wb['packagelist_update_finished_txt'] = 'APS Packagelist update finished.'; $wb['btn_install_txt'] = 'Install'; $wb['btn_cancel_txt'] = 'Cancel'; $wb['limit_aps_txt'] = 'The max. number of APS instances for your account is reached.'; +$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['password_strength_txt'] = 'Password strength'; ?> diff --git a/interface/web/sites/lib/lang/ru_aps.lng b/interface/web/sites/lib/lang/ru_aps.lng index f403143e59..3dd4ad0a8a 100644 --- a/interface/web/sites/lib/lang/ru_aps.lng +++ b/interface/web/sites/lib/lang/ru_aps.lng @@ -55,4 +55,9 @@ $wb['packagelist_update_finished_txt'] = 'Обновление ÑпиÑка па $wb['btn_install_txt'] = 'УÑтановка'; $wb['btn_cancel_txt'] = 'Отменить'; $wb['limit_aps_txt'] = 'МакÑ. количеÑтво ÑкземплÑров APS доÑтигнуто.'; +$wb['generate_password_txt'] = 'Создать пароль'; +$wb['repeat_password_txt'] = 'Повторить пароль'; +$wb['password_mismatch_txt'] = 'Пароли не Ñовпадают.'; +$wb['password_match_txt'] = 'Ðти пароли Ñовпадают.'; +$wb['password_strength_txt'] = 'СтойкоÑÑ‚ÑŒ паролÑ'; ?> diff --git a/interface/web/sites/lib/lang/se_aps.lng b/interface/web/sites/lib/lang/se_aps.lng index 1a21cd0fd2..3b32095d62 100644 --- a/interface/web/sites/lib/lang/se_aps.lng +++ b/interface/web/sites/lib/lang/se_aps.lng @@ -55,4 +55,9 @@ $wb['packagelist_update_finished_txt'] = 'APS Packagelist update finished.'; $wb['btn_install_txt'] = 'Installera'; $wb['btn_cancel_txt'] = 'Avbryt'; $wb['limit_aps_txt'] = 'The max. number of APS instances for your account is reached.'; +$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['password_strength_txt'] = 'Password strength'; ?> diff --git a/interface/web/sites/lib/lang/sk_aps.lng b/interface/web/sites/lib/lang/sk_aps.lng index 29fb7b6a40..d6e6c7f4ca 100644 --- a/interface/web/sites/lib/lang/sk_aps.lng +++ b/interface/web/sites/lib/lang/sk_aps.lng @@ -55,4 +55,9 @@ $wb['packagelist_update_finished_txt'] = 'APS Packagelist update finished.'; $wb['btn_install_txt'] = 'Install'; $wb['btn_cancel_txt'] = 'Cancel'; $wb['limit_aps_txt'] = 'The max. number of APS instances for your account is reached.'; +$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['password_strength_txt'] = 'PevnosÅ¥ hesla'; ?> diff --git a/interface/web/sites/lib/lang/tr_aps.lng b/interface/web/sites/lib/lang/tr_aps.lng index 534ee020a7..1c6ccd49a6 100644 --- a/interface/web/sites/lib/lang/tr_aps.lng +++ b/interface/web/sites/lib/lang/tr_aps.lng @@ -55,4 +55,9 @@ $wb['installation_success_txt'] = 'Yüklendi'; $wb['installation_remove_txt'] = 'Kaldırma planlandı'; $wb['packagelist_update_finished_txt'] = 'APS paket listesi güncellendi.'; $wb['limit_aps_txt'] = 'Hesabınıza ekleyebileceÄŸiniz en fazla APS kopyası sayısına ulaÅŸtınız.'; +$wb['generate_password_txt'] = 'Parola OluÅŸtur'; +$wb['repeat_password_txt'] = 'Parola Onayı'; +$wb['password_mismatch_txt'] = 'Parola ile onayı aynı deÄŸil.'; +$wb['password_match_txt'] = 'Parola ile onayı aynı.'; +$wb['password_strength_txt'] = 'Parola Güçlüğü'; ?> diff --git a/interface/web/sites/templates/aps_install_package.htm b/interface/web/sites/templates/aps_install_package.htm index d04d671534..2c4b48b9d3 100644 --- a/interface/web/sites/templates/aps_install_package.htm +++ b/interface/web/sites/templates/aps_install_package.htm @@ -1,58 +1,125 @@ <h1> - {tmpl_var name='installation_txt'}: {tmpl_var name='pkg_name'} {tmpl_var name='pkg_version'}-{tmpl_var name='pkg_release'} - <span style="float:right"> - <tmpl_if name='pkg_icon' op='!=' value=''> - <img src="{tmpl_var name='pkg_icon'}" height="32" width="32" alt="{tmpl_var name='pkg_name'}" style="vertical-align:text-bottom;" /> - </tmpl_if> - </span> + {tmpl_var name='installation_txt'}: {tmpl_var name='pkg_name'} {tmpl_var name='pkg_version'}-{tmpl_var name='pkg_release'} + <span style="float:right"> + <tmpl_if name='pkg_icon' op='!=' value=''> + <img src="{tmpl_var name='pkg_icon'}" height="32" width="32" alt="{tmpl_var name='pkg_name'}" style="vertical-align:text-bottom;" /> + </tmpl_if> + </span> </h1> - + <tmpl_if name='error'> - <div id="errorMsg"><h3>ERROR</h3><ol>{tmpl_var name='error'}</ol></div> + <div id="errorMsg"><h3>ERROR</h3><ol>{tmpl_var name='error'}</ol></div> </tmpl_if> - - <legend>{tmpl_var name='basic_settings_txt'}</legend> - <div class="form-group"> - <label class="col-sm-3 control-label">{tmpl_var name='install_location_txt'}</label> - <div class="col-sm-9"> - <div class='input-group'> + + <legend>{tmpl_var name='basic_settings_txt'}</legend> + <div class="form-group"> + <label class="col-sm-3 control-label">{tmpl_var name='install_location_txt'}</label> + <div class="col-sm-9"> + <div class='input-group'> <span class='input-group-addon'>http(s)://</span> <div class='input-group-field'> DOMAIN_LIST_SPACE </div> <span class='input-group-addon'>/</span> <input type="text" id="main_location" name="main_location" value="{tmpl_var name='inp_main_location'}" class="form-control" /> - </div> + </div> </div> - </div> + </div> <tmpl_if name='pkg_requirements_database' op='!=' value=''> - <div class="form-group"> - <label for="main_database_password" class="col-sm-3 control-label">{tmpl_var name='new_database_password_txt'}</label> - <div class="col-sm-9"><input type="text" class="form-control" name="main_database_password" id="main_database_password" value="{tmpl_var name='inp_main_database_password'}" /></div></div> - </tmpl_if> - - PKG_SETTINGS_SPACE - - <legend>{tmpl_var name='license_txt'}</legend> - <div class="form-group"> - <label for="license" class="col-sm-3 control-label">{tmpl_var name='license_txt'}</label> - <tmpl_if name='pkg_license_content' op='==' value=''>{tmpl_var name='pkg_license_name'}<br /></tmpl_if> - <tmpl_if name='pkg_license_type' op='==' value='url'> - <a href="{tmpl_var name='pkg_license_content'}" target="_blank">{tmpl_var name='pkg_license_content'}</a> - <tmpl_elseif name='pkg_license_content'> - <div class="col-sm-9"><textarea class="form-control" rows="10" cols="80" id="license_text">{tmpl_var name='pkg_license_content'}</textarea></div> - </tmpl_if> - </div> - <div class="form-group"> - <label for="license" class="col-sm-3 control-label">{tmpl_var name='acceptance_txt'}</label> - <div class="col-sm-6"><input type="checkbox" name="license" id="license" <tmpl_if name='inp_license' op='==' value='true'>checked</tmpl_if>/> {tmpl_var name='acceptance_text'} - </div> - - - <input type="hidden" name="install" value="0" /> - <div class="clear"><div class="right"> - <button class="btn btn-default formbutton-success" type="button" value="{tmpl_var name='btn_install_txt'}" name="btn_install" onclick="document.pageForm.install.value=1; ISPConfig.submitForm('pageForm','sites/aps_install_package.php?id={tmpl_var name='pkg_id'}');">{tmpl_var name='btn_install_txt'}</button> - <button class="btn btn-default formbutton-default" type="button" value="{tmpl_var name='btn_cancel_txt'}" data-load-content="sites/aps_availablepackages_list.php">{tmpl_var name='btn_cancel_txt'}</button> - </div></div> + <div class="form-group"> + <label for="main_database_password" class="col-sm-3 control-label">{tmpl_var name='new_database_password_txt'}</label> + <div class="col-sm-9"><input type="text" class="form-control" name="main_database_password" id="main_database_password" value="{tmpl_var name='inp_main_database_password'}" /></div> + </div> + </tmpl_if> + + PKG_SETTINGS_SPACE + + <legend>{tmpl_var name='license_txt'}</legend> + <div class="form-group"> + <label for="license" class="col-sm-3 control-label">{tmpl_var name='license_txt'}</label> + <tmpl_if name='pkg_license_content' op='==' value=''>{tmpl_var name='pkg_license_name'}<br /></tmpl_if> + <tmpl_if name='pkg_license_type' op='==' value='url'> + <a href="{tmpl_var name='pkg_license_content'}" target="_blank">{tmpl_var name='pkg_license_content'}</a> + <tmpl_elseif name='pkg_license_content'> + <div class="col-sm-9"><textarea class="form-control" rows="10" cols="80" id="license_text">{tmpl_var name='pkg_license_content'}</textarea></div> + </tmpl_if> + </div> + <div class="form-group"> + <label for="license" class="col-sm-3 control-label">{tmpl_var name='acceptance_txt'}</label> + <div class="col-sm-6"> + <input type="checkbox" name="license" id="license" <tmpl_if name='inp_license' op='==' value='true'>checked</tmpl_if>/> {tmpl_var name='acceptance_text'} + </div> + </div> + + + <input type="hidden" name="install" value="0" /> + <div class="clear"> + <div class="right"> + <button class="btn btn-default formbutton-success" type="button" value="{tmpl_var name='btn_install_txt'}" name="btn_install" onclick="document.pageForm.install.value=1; ISPConfig.submitForm('pageForm','sites/aps_install_package.php?id={tmpl_var name='pkg_id'}');">{tmpl_var name='btn_install_txt'}</button> + <button class="btn btn-default formbutton-default" type="button" value="{tmpl_var name='btn_cancel_txt'}" data-load-content="sites/aps_availablepackages_list.php">{tmpl_var name='btn_cancel_txt'}</button> + </div> + </div> + + <div class="hidden" id="passwordFieldWithChecks"> + <div class="form-group"> + <label for="password" 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');" /> + <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> + <p class="formHint"></p> + </div> + </div> + </div> + <div class="form-group"> + <label class="col-sm-3 control-label">{tmpl_var name='password_strength_txt'}</label> + <div class="col-sm-9 checkbox"> + <div id="passBar"></div> + <span id="passText"> </span> + </div> + </div> + <div class="form-group"> + <label for="repeat_password" class="col-sm-3 control-label">{tmpl_var name='repeat_password_txt'}</label> + <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 class="form-group"> + <div class="col-sm-offset-3 col-sm-9"> + <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> + </div> + </div> + </div> + + <script type="text/javascript"> + jQuery(document).ready(function () { + let passwordField = jQuery('[type=password]').first(); + if (!passwordField) { + return; + } + + let passwordFieldFormGroup = passwordField.closest('.form-group'); + let passwordFieldWithChecks = jQuery('#passwordFieldWithChecks'); + + let originalLabel = passwordFieldFormGroup.find('label').first().text(); + let originalName = passwordField.prop('name'); + let originalMaxLength = passwordField.prop('maxlength'); + let originalValue = passwordField.prop('value'); + let originalFormHint = passwordField.next('.formHint').text(); + + let passwordFieldWithChecksInputField = passwordFieldWithChecks.find('[type=password]').first(); + passwordFieldWithChecksInputField.prop('name', originalName); + passwordFieldWithChecksInputField.prop('value', originalValue); + passwordFieldWithChecksInputField.prop('name', originalName); + passwordFieldWithChecks.find('label').first().text(originalLabel); + passwordFieldWithChecks.find('.formHint').text(originalFormHint); + + if (originalMaxLength && originalMaxLength > 0) { + passwordFieldWithChecksInputField.prop('maxlength', originalMaxLength); + } + + passwordFieldFormGroup.replaceWith(passwordFieldWithChecks.children()); + }); + </script> -- GitLab From 1a83392810d3b2829409e59a72975c3839cde69b Mon Sep 17 00:00:00 2001 From: Till Brehm <tbrehm@ispconfig.org> Date: Tue, 5 Mar 2019 18:02:48 +0100 Subject: [PATCH 043/215] Fixed #5219 Run getmail only on master when server is a mirror --- server/plugins-available/getmail_plugin.inc.php | 3 +++ 1 file changed, 3 insertions(+) diff --git a/server/plugins-available/getmail_plugin.inc.php b/server/plugins-available/getmail_plugin.inc.php index 5b1edfbab9..a4481037f7 100644 --- a/server/plugins-available/getmail_plugin.inc.php +++ b/server/plugins-available/getmail_plugin.inc.php @@ -76,6 +76,9 @@ class getmail_plugin { function update($event_name, $data) { global $app, $conf; + + // Do not write getmail config files on mirror servers to avoid double fetching of emails. + if($conf['mirror_server_id'] > 0) return true; // load the server specific configuration options for getmail $app->uses("getconf"); -- GitLab From 40ce39d7df510fc6eb10c825d5f7b91fe9326484 Mon Sep 17 00:00:00 2001 From: Till Brehm <tbrehm@ispconfig.org> Date: Tue, 5 Mar 2019 18:13:21 +0100 Subject: [PATCH 044/215] Fixed #5253 Server Config is having an error 500 with ISPConfig Version: 3.1.13p1 --- interface/web/admin/server_config_edit.php | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/interface/web/admin/server_config_edit.php b/interface/web/admin/server_config_edit.php index 7eebb7f5b0..523671c0c7 100644 --- a/interface/web/admin/server_config_edit.php +++ b/interface/web/admin/server_config_edit.php @@ -83,8 +83,10 @@ class page_action extends tform_actions { function onShowEnd() { global $app; - - $app->tpl->setVar('server_name', $app->functions->htmlentities($app->db->queryOneRecord("SELECT server_name FROM server WHERE server_id = ? AND ((SELECT COUNT(*) FROM server) > 1)", $this->id)['server_name'])); + + $tmp = $app->db->queryOneRecord("SELECT server_name FROM server WHERE server_id = ? AND ((SELECT COUNT(*) FROM server) > 1)", $this->id); + $app->tpl->setVar('server_name', $app->functions->htmlentities($tmp['server_name'])); + unset($tmp); parent::onShowEnd(); } -- GitLab From 861a95c3315f36d9e1c8ea09aef7d87f33f9fc7c Mon Sep 17 00:00:00 2001 From: Herman van Rink <rink@initfour.nl> Date: Thu, 7 Mar 2019 15:01:36 +0100 Subject: [PATCH 045/215] Sync copies of db_mysql.inc.php --- server/lib/classes/db_mysql.inc.php | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/server/lib/classes/db_mysql.inc.php b/server/lib/classes/db_mysql.inc.php index 0bae3f92d3..7d7b568980 100644 --- a/server/lib/classes/db_mysql.inc.php +++ b/server/lib/classes/db_mysql.inc.php @@ -719,8 +719,8 @@ class db if($action == 'INSERT') $action = 'i'; if($action == 'UPDATE') $action = 'u'; if($action == 'DELETE') $action = 'd'; - $sql = "INSERT INTO sys_datalog (dbtable,dbidx,server_id,action,tstamp,user,data) VALUES (?, ?, ?, ?, ?, ?, ?)"; - $app->db->query($sql, $db_table, $dbidx, $server_id, $action, time(), $username, $diffstr); + $sql = "INSERT INTO sys_datalog (dbtable,dbidx,server_id,action,tstamp,user,data,session_id) VALUES (?, ?, ?, ?, ?, ?, ?, ?)"; + $app->db->query($sql, $db_table, $dbidx, $server_id, $action, time(), $username, $diffstr, session_id()); } return true; @@ -759,6 +759,9 @@ class db $old_rec = array(); $index_value = $this->insertID(); + if(!$index_value && isset($insert_data[$index_field])) { + $index_value = $insert_data[$index_field]; + } $new_rec = $this->queryOneRecord("SELECT * FROM ?? WHERE ?? = ?", $tablename, $index_field, $index_value); $this->datalogSave($tablename, 'INSERT', $index_field, $index_value, $old_rec, $new_rec); -- GitLab From 8394c29676f629c59df9f8364776f3f70345b0fd Mon Sep 17 00:00:00 2001 From: Herman van Rink <rink@initfour.nl> Date: Thu, 7 Mar 2019 15:12:54 +0100 Subject: [PATCH 046/215] Correct condition to use the new variable, #4901 --- server/plugins-available/shelluser_jailkit_plugin.inc.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/server/plugins-available/shelluser_jailkit_plugin.inc.php b/server/plugins-available/shelluser_jailkit_plugin.inc.php index db1d2b676b..c7112c497a 100755 --- a/server/plugins-available/shelluser_jailkit_plugin.inc.php +++ b/server/plugins-available/shelluser_jailkit_plugin.inc.php @@ -490,7 +490,7 @@ class shelluser_jailkit_plugin { // add root's key $app->file->mkdirs($sshdir, '0755'); $authorized_keys_template = $this->jailkit_config['jailkit_chroot_authorized_keys_template']; - if(is_file('/root/.ssh/authorized_keys')) $app->system->file_put_contents($sshkeys, $app->system->file_get_contents($authorized_keys_template)); + if(is_file($authorized_keys_template)) $app->system->file_put_contents($sshkeys, $app->system->file_get_contents($authorized_keys_template)); // Remove duplicate keys $existing_keys = @file($sshkeys, FILE_IGNORE_NEW_LINES); -- GitLab From 6ea7d4c89a477765fb2dea6025484712321eae74 Mon Sep 17 00:00:00 2001 From: Florian Schaal <florian@schaal-24.de> Date: Mon, 11 Mar 2019 11:16:35 +0100 Subject: [PATCH 047/215] stats Folder created even when Statistics set to none - Fixes #4977 --- .../plugins-available/apache2_plugin.inc.php | 35 +++++++++++-------- server/plugins-available/nginx_plugin.inc.php | 5 +++ 2 files changed, 26 insertions(+), 14 deletions(-) diff --git a/server/plugins-available/apache2_plugin.inc.php b/server/plugins-available/apache2_plugin.inc.php index 8ebe11d92a..e9845eec34 100644 --- a/server/plugins-available/apache2_plugin.inc.php +++ b/server/plugins-available/apache2_plugin.inc.php @@ -1801,21 +1801,23 @@ class apache2_plugin { //* Create .htaccess and .htpasswd file for website statistics //if(!is_file($data['new']['document_root'].'/' . $web_folder . '/stats/.htaccess') or $data['old']['document_root'] != $data['new']['document_root']) { - if(!is_dir($data['new']['document_root'].'/' . $web_folder . '/stats')) $app->system->mkdir($data['new']['document_root'].'/' . $web_folder . '/stats'); - $ht_file = "AuthType Basic\nAuthName \"Members Only\"\nAuthUserFile ".$data['new']['document_root']."/web/stats/.htpasswd_stats\nrequire valid-user"; - $app->system->file_put_contents($data['new']['document_root'].'/' . $web_folder . '/stats/.htaccess', $ht_file); - $app->system->chmod($data['new']['document_root'].'/' . $web_folder . '/stats/.htaccess', 0755); - unset($ht_file); - //} - if(!is_file($data['new']['document_root'].'/web/stats/.htpasswd_stats') || $data['new']['stats_password'] != $data['old']['stats_password']) { - if(trim($data['new']['stats_password']) != '') { - $htp_file = 'admin:'.trim($data['new']['stats_password']); - $app->system->web_folder_protection($data['new']['document_root'], false); - $app->system->file_put_contents($data['new']['document_root'].'/web/stats/.htpasswd_stats', $htp_file); - $app->system->web_folder_protection($data['new']['document_root'], true); - $app->system->chmod($data['new']['document_root'].'/web/stats/.htpasswd_stats', 0755); - unset($htp_file); + if($data['new']['stats_type'] != '') { + if(!is_dir($data['new']['document_root'].'/' . $web_folder . '/stats')) $app->system->mkdir($data['new']['document_root'].'/' . $web_folder . '/stats'); + $ht_file = "AuthType Basic\nAuthName \"Members Only\"\nAuthUserFile ".$data['new']['document_root']."/web/stats/.htpasswd_stats\nrequire valid-user"; + $app->system->file_put_contents($data['new']['document_root'].'/' . $web_folder . '/stats/.htaccess', $ht_file); + $app->system->chmod($data['new']['document_root'].'/' . $web_folder . '/stats/.htaccess', 0755); + unset($ht_file); + + if(!is_file($data['new']['document_root'].'/web/stats/.htpasswd_stats') || $data['new']['stats_password'] != $data['old']['stats_password']) { + if(trim($data['new']['stats_password']) != '') { + $htp_file = 'admin:'.trim($data['new']['stats_password']); + $app->system->web_folder_protection($data['new']['document_root'], false); + $app->system->file_put_contents($data['new']['document_root'].'/web/stats/.htpasswd_stats', $htp_file); + $app->system->web_folder_protection($data['new']['document_root'], true); + $app->system->chmod($data['new']['document_root'].'/web/stats/.htpasswd_stats', 0755); + unset($htp_file); + } } } @@ -1824,6 +1826,11 @@ class apache2_plugin { $this->awstats_update($data, $web_config); } + //* Remove Stats-Folder when Statistics set to none + if($data['new']['stats_type'] == '' && ($data['new']['type'] == 'vhost' || $data['new']['type'] == 'vhostsubdomain' || $data['new']['type'] == 'vhostalias')) { + exec('rm -rf '.$data['new']['document_root'].'/web/stats'); + } + $this->php_fpm_pool_update($data, $web_config, $pool_dir, $pool_name, $socket_dir, $web_folder); $this->hhvm_update($data, $web_config); diff --git a/server/plugins-available/nginx_plugin.inc.php b/server/plugins-available/nginx_plugin.inc.php index adac20c78a..94c588c8b9 100644 --- a/server/plugins-available/nginx_plugin.inc.php +++ b/server/plugins-available/nginx_plugin.inc.php @@ -1889,6 +1889,11 @@ class nginx_plugin { $this->awstats_update($data, $web_config); } + //* Remove Stats-Folder when Statistics set to none + if($data['new']['stats_type'] == '' && ($data['new']['type'] == 'vhost' || $data['new']['type'] == 'vhostsubdomain' || $data['new']['type'] == 'vhostalias')) { + exec('rm -rf '.$data['new']['document_root'].'/web/stats'); + } + $this->php_fpm_pool_update($data, $web_config, $pool_dir, $pool_name, $socket_dir, $web_folder); $this->hhvm_update($data, $web_config); -- GitLab From 5d019bf55f67d9b0f657f7de0f6a38af6c9234dc Mon Sep 17 00:00:00 2001 From: Marius Burkard <m.burkard@pixcept.de> Date: Mon, 11 Mar 2019 12:13:40 +0100 Subject: [PATCH 048/215] - added new webroot map argument to cli call of certbot on versions >= 0.31, should fix #5258 --- server/lib/classes/letsencrypt.inc.php | 12 +++++++++++- 1 file changed, 11 insertions(+), 1 deletion(-) diff --git a/server/lib/classes/letsencrypt.inc.php b/server/lib/classes/letsencrypt.inc.php index 4f681cc485..3807149c1c 100644 --- a/server/lib/classes/letsencrypt.inc.php +++ b/server/lib/classes/letsencrypt.inc.php @@ -284,7 +284,17 @@ class letsencrypt { } else { $acme_version = 'https://acme-v01.api.letsencrypt.org/directory'; } - $letsencrypt_cmd = $letsencrypt . " certonly -n --text --agree-tos --expand --authenticator webroot --server $acme_version --rsa-key-size 4096 --email postmaster@$domain $cli_domain_arg --webroot-path /usr/local/ispconfig/interface/acme"; + if ($letsencrypt_version >= 0.31) { + $webroot_map = array(); + for($i = 0; $i < count($temp_domains); $i++) { + $webroot_map[$temp_domains[$i]] = '/usr/local/ispconfig/interface/acme'; + } + $webroot_args = "--webroot-map " . escapeshellarg(str_replace(array("\r", "\n"), '', json_encode($webroot_map))); + } else { + $webroot_args = "$cli_domain_arg --webroot-path /usr/local/ispconfig/interface/acme"; + } + + $letsencrypt_cmd = $letsencrypt . " certonly -n --text --agree-tos --expand --authenticator webroot --server $acme_version --rsa-key-size 4096 --email postmaster@$domain $webroot_args"; $success = $app->system->_exec($letsencrypt_cmd); } } else { -- GitLab From 97d1dce043e4adccaee83f42a01f8cc7e828f049 Mon Sep 17 00:00:00 2001 From: Florian Schaal <florian@schaal-24.de> Date: Mon, 11 Mar 2019 12:32:23 +0100 Subject: [PATCH 049/215] Send emails to active customers and resellers only. - #5216 --- interface/web/client/client_message.php | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/interface/web/client/client_message.php b/interface/web/client/client_message.php index 2617bbe67d..a46aefa6b4 100644 --- a/interface/web/client/client_message.php +++ b/interface/web/client/client_message.php @@ -71,18 +71,18 @@ if(isset($_POST) && count($_POST) > 1) { $where[] = 'client_id = '.$app->functions->intval($tmp_client_id); } if(!empty($where)) $where_clause = ' AND ('.implode(' OR ', $where).')'; - $sql = "SELECT * FROM client WHERE email != ''".$where_clause; + $sql = "SELECT * FROM client WHERE canceled != 'y' AND email != ''".$where_clause; } else { - $sql = "SELECT * FROM client WHERE 0"; + $sql = "SELECT * FROM client WHERE canceled != 'y'"; } } else { //* Select all clients and resellers if($_SESSION["s"]["user"]["typ"] == 'admin'){ - $sql = "SELECT * FROM client WHERE email != ''"; + $sql = "SELECT * FROM client WHERE email != '' AND canceled != 'y'"; } else { $client_id = $app->functions->intval($_SESSION['s']['user']['client_id']); if($client_id == 0) die('Invalid Client ID.'); - $sql = "SELECT * FROM client WHERE email != '' AND parent_client_id = '$client_id'"; + $sql = "SELECT * FROM client WHERE email != '' AND canceled != 'y' AND parent_client_id = '$client_id'"; } } -- GitLab From 89284110eb20176699afe42bd0487516eb0f3f0c Mon Sep 17 00:00:00 2001 From: Till Brehm <tbrehm@ispconfig.org> Date: Mon, 11 Mar 2019 12:35:05 +0100 Subject: [PATCH 050/215] Update apache2_plugin.inc.php --- server/plugins-available/apache2_plugin.inc.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/server/plugins-available/apache2_plugin.inc.php b/server/plugins-available/apache2_plugin.inc.php index e9845eec34..3aa851f649 100644 --- a/server/plugins-available/apache2_plugin.inc.php +++ b/server/plugins-available/apache2_plugin.inc.php @@ -1828,7 +1828,7 @@ class apache2_plugin { //* Remove Stats-Folder when Statistics set to none if($data['new']['stats_type'] == '' && ($data['new']['type'] == 'vhost' || $data['new']['type'] == 'vhostsubdomain' || $data['new']['type'] == 'vhostalias')) { - exec('rm -rf '.$data['new']['document_root'].'/web/stats'); + $app->file->removeDirectory($data['new']['document_root'].'/web/stats'); } $this->php_fpm_pool_update($data, $web_config, $pool_dir, $pool_name, $socket_dir, $web_folder); -- GitLab From 9768d64e9044b9fb85de7689218d2ab8853c9a47 Mon Sep 17 00:00:00 2001 From: Till Brehm <tbrehm@ispconfig.org> Date: Mon, 11 Mar 2019 12:36:21 +0100 Subject: [PATCH 051/215] Update nginx_plugin.inc.php --- server/plugins-available/nginx_plugin.inc.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/server/plugins-available/nginx_plugin.inc.php b/server/plugins-available/nginx_plugin.inc.php index 94c588c8b9..189a6f88ea 100644 --- a/server/plugins-available/nginx_plugin.inc.php +++ b/server/plugins-available/nginx_plugin.inc.php @@ -1891,7 +1891,7 @@ class nginx_plugin { //* Remove Stats-Folder when Statistics set to none if($data['new']['stats_type'] == '' && ($data['new']['type'] == 'vhost' || $data['new']['type'] == 'vhostsubdomain' || $data['new']['type'] == 'vhostalias')) { - exec('rm -rf '.$data['new']['document_root'].'/web/stats'); + $app->file->removeDirectory($data['new']['document_root'].'/web/stats'); } $this->php_fpm_pool_update($data, $web_config, $pool_dir, $pool_name, $socket_dir, $web_folder); -- GitLab From f3087460f54521f331646bc6bb2b0a5f5c3cdefe Mon Sep 17 00:00:00 2001 From: Till Brehm <tbrehm@ispconfig.org> Date: Wed, 20 Mar 2019 18:44:03 +0100 Subject: [PATCH 052/215] Fixes #5275 DNS Wizard does not add new zone. --- install/sql/incremental/upd_dev_collection.sql | 6 +++--- install/sql/ispconfig3.sql | 6 +++--- 2 files changed, 6 insertions(+), 6 deletions(-) diff --git a/install/sql/incremental/upd_dev_collection.sql b/install/sql/incremental/upd_dev_collection.sql index b9fb91d46c..279d3ce211 100644 --- a/install/sql/incremental/upd_dev_collection.sql +++ b/install/sql/incremental/upd_dev_collection.sql @@ -78,6 +78,6 @@ INSERT IGNORE INTO `dns_ssl_ca` (`id`, `sys_userid`, `sys_groupid`, `sys_perm_us (NULL, 1, 1, 'riud', 'riud', '', 'Y', 'WISeKey', 'wisekey.com', 'Y', '', 0), (NULL, 1, 1, 'riud', 'riud', '', 'Y', 'WoSign', 'wosign.com', 'Y', '', 0); -ALTER TABLE `dns_soa` CHANGE `xfer` `xfer` TEXT NOT NULL DEFAULT ''; -ALTER TABLE `dns_soa` CHANGE `also_notify` `also_notify` TEXT NOT NULL DEFAULT ''; -ALTER TABLE `dns_slave` CHANGE `xfer` `xfer` TEXT NOT NULL DEFAULT ''; \ No newline at end of file +ALTER TABLE `dns_soa` CHANGE `xfer` `xfer` TEXT NULL; +ALTER TABLE `dns_soa` CHANGE `also_notify` `also_notify` TEXT NULL; +ALTER TABLE `dns_slave` CHANGE `xfer` `xfer` TEXT NULL; \ No newline at end of file diff --git a/install/sql/ispconfig3.sql b/install/sql/ispconfig3.sql index f06a49b7ea..4cfaebb396 100644 --- a/install/sql/ispconfig3.sql +++ b/install/sql/ispconfig3.sql @@ -516,7 +516,7 @@ CREATE TABLE `dns_slave` ( `origin` varchar(255) NOT NULL DEFAULT '', `ns` varchar(255) NOT NULL DEFAULT '', `active` enum('N','Y') NOT NULL DEFAULT 'N', - `xfer` TEXT NOT NULL DEFAULT '', + `xfer` TEXT NULL, PRIMARY KEY (`id`), UNIQUE KEY `slave` (`origin`,`server_id`), KEY `active` (`active`) @@ -620,8 +620,8 @@ CREATE TABLE `dns_soa` ( `minimum` int(11) unsigned NOT NULL default '3600', `ttl` int(11) unsigned NOT NULL default '3600', `active` enum('N','Y') NOT NULL DEFAULT 'N', - `xfer` TEXT NOT NULL DEFAULT '', - `also_notify` TEXT NOT NULL DEFAULT '', + `xfer` TEXT NULL, + `also_notify` TEXT NULL, `update_acl` varchar(255) default NULL, `dnssec_initialized` ENUM('Y','N') NOT NULL DEFAULT 'N', `dnssec_wanted` ENUM('Y','N') NOT NULL DEFAULT 'N', -- GitLab From 12f591327e3c6c8b6b3e475cd676a9f70801b173 Mon Sep 17 00:00:00 2001 From: Till Brehm <tbrehm@ispconfig.org> Date: Wed, 20 Mar 2019 18:45:43 +0100 Subject: [PATCH 053/215] Added INSTALLER_UPDATE constant in update.php to allow easier detection if installer run is an update or new installation. --- install/update.php | 1 + 1 file changed, 1 insertion(+) diff --git a/install/update.php b/install/update.php index 62e8d5ef4a..104aab57ff 100644 --- a/install/update.php +++ b/install/update.php @@ -59,6 +59,7 @@ EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. error_reporting(E_ALL|E_STRICT); define('INSTALLER_RUN', true); +define('INSTALLER_UPDATE', true); //** The banner on the command line echo "\n\n".str_repeat('-', 80)."\n"; -- GitLab From 14807bde32856093b7a50a0da25e3c143783b937 Mon Sep 17 00:00:00 2001 From: Till Brehm <tbrehm@ispconfig.org> Date: Mon, 8 Apr 2019 12:41:20 +0200 Subject: [PATCH 054/215] Fixed SQL query in DNS slave datasource component. --- interface/lib/classes/custom_datasource.inc.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/interface/lib/classes/custom_datasource.inc.php b/interface/lib/classes/custom_datasource.inc.php index 484d0fa055..c50d585027 100644 --- a/interface/lib/classes/custom_datasource.inc.php +++ b/interface/lib/classes/custom_datasource.inc.php @@ -72,7 +72,7 @@ class custom_datasource { $client = $app->db->queryOneRecord("SELECT default_slave_dnsserver FROM sys_group, client WHERE sys_group.client_id = client.client_id and sys_group.groupid = ?", $client_group_id); $sql = "SELECT server_id,server_name FROM server WHERE server_id = ?"; } else { - $sql = "SELECT server_id,server_name FROM server WHERE dns_server = 1 ORDER BY server_name AND mirror_server_id = 0"; + $sql = "SELECT server_id,server_name FROM server WHERE dns_server = 1 AND mirror_server_id = 0 ORDER BY server_name"; } $records = $app->db->queryAllRecords($sql, $client['default_slave_dnsserver']); $records_new = array(); -- GitLab From 03f54d5ebc557b408ed80e304d2c12dab4652597 Mon Sep 17 00:00:00 2001 From: Till Brehm <tbrehm@ispconfig.org> Date: Mon, 8 Apr 2019 13:28:36 +0200 Subject: [PATCH 055/215] Fixed: WARNING - assumed 'LOGLEVEL_WARNING' (this will throw an Error in a future version of PHP) in /usr/local/ispconfig/server/lib/classes/services.inc.php on line 44 --- server/lib/classes/services.inc.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/server/lib/classes/services.inc.php b/server/lib/classes/services.inc.php index 7a8841ece5..0914081672 100644 --- a/server/lib/classes/services.inc.php +++ b/server/lib/classes/services.inc.php @@ -41,7 +41,7 @@ class services { if(is_array($this->registered_services[$service_name])) { $this->delayed_restarts[$service_name] = $action; } else { - $app->log("Unable to add a delayed restart for '$service_name'. Service not registered.", LOGLEVEL_WARNING); + $app->log("Unable to add a delayed restart for '$service_name'. Service not registered.", LOGLEVEL_WARN); } } -- GitLab From c33bba3c53f913099b76d2cd7708c2cc073c18f0 Mon Sep 17 00:00:00 2001 From: Till Brehm <tbrehm@ispconfig.org> Date: Mon, 8 Apr 2019 18:33:44 +0200 Subject: [PATCH 056/215] Fixed #5288 Wrong permissions of dkim cert folder on CentOS 7 --- install/dist/lib/centos_base.lib.php | 19 +++++++++++++++++++ 1 file changed, 19 insertions(+) diff --git a/install/dist/lib/centos_base.lib.php b/install/dist/lib/centos_base.lib.php index 8e6741fd69..0fe988439d 100644 --- a/install/dist/lib/centos_base.lib.php +++ b/install/dist/lib/centos_base.lib.php @@ -111,6 +111,25 @@ class installer_centos extends installer_dist { removeLine('/etc/sysconfig/freshclam', 'FRESHCLAM_DELAY=disabled-warn # REMOVE ME', 1); replaceLine('/etc/freshclam.conf', 'Example', '# Example', 1); + + // get shell-group for amavis + $amavis_group=exec('grep -o "^amavis:\|^vscan:" /etc/group'); + if(!empty($amavis_group)) { + $amavis_group=rtrim($amavis_group, ":"); + } + // get shell-user for amavis + $amavis_user=exec('grep -o "^amavis:\|^vscan:" /etc/passwd'); + if(!empty($amavis_user)) { + $amavis_user=rtrim($amavis_user, ":"); + } + + // Create the director for DKIM-Keys + if(!is_dir('/var/lib/amavis')) mkdir('/var/lib/amavis', 0750, true); + if(!empty($amavis_user)) exec('chown '.$amavis_user.' /var/lib/amavis'); + if(!empty($amavis_group)) exec('chgrp '.$amavis_group.' /var/lib/amavis'); + if(!is_dir('/var/lib/amavis/dkim')) mkdir('/var/lib/amavis/dkim', 0750); + if(!empty($amavis_user)) exec('chown -R '.$amavis_user.' /var/lib/amavis/dkim'); + if(!empty($amavis_group)) exec('chgrp -R '.$amavis_group.' /var/lib/amavis/dkim'); } -- GitLab From 470bb76e8cb96617c8dfbc026b3f49e68f8dca72 Mon Sep 17 00:00:00 2001 From: Webslice <webslice@bixels.nl> Date: Wed, 10 Apr 2019 19:08:24 +0200 Subject: [PATCH 057/215] Fix: dont use strict comparison to install server plugin --- server/plugins-available/z_php_fpm_incron_reload_plugin.inc.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/server/plugins-available/z_php_fpm_incron_reload_plugin.inc.php b/server/plugins-available/z_php_fpm_incron_reload_plugin.inc.php index bc88f4a198..f88cbe9c0b 100644 --- a/server/plugins-available/z_php_fpm_incron_reload_plugin.inc.php +++ b/server/plugins-available/z_php_fpm_incron_reload_plugin.inc.php @@ -17,7 +17,7 @@ class z_php_fpm_incron_reload_plugin { function onInstall() { global $conf; - return $conf['services']['web'] === true; + return $conf['services']['web'] == true; } function onLoad() { -- GitLab From 249241ab586b402bf2357ea530ce9ec695ccca12 Mon Sep 17 00:00:00 2001 From: Marius Burkard <m.burkard@pixcept.de> Date: Mon, 15 Apr 2019 14:12:01 +0200 Subject: [PATCH 058/215] - using certificates command on certbot >= 0.30, fixes #5291 --- server/lib/classes/letsencrypt.inc.php | 64 +++++++++++++++++++++++--- 1 file changed, 57 insertions(+), 7 deletions(-) diff --git a/server/lib/classes/letsencrypt.inc.php b/server/lib/classes/letsencrypt.inc.php index 3807149c1c..ea1e745a77 100644 --- a/server/lib/classes/letsencrypt.inc.php +++ b/server/lib/classes/letsencrypt.inc.php @@ -265,26 +265,34 @@ class letsencrypt { unset($subdomains); unset($aliasdomains); + $letsencrypt_use_certcommand = false; $letsencrypt_cmd = ''; + $letsencrypt = false; $success = false; + + $letsencrypt = explode("\n", shell_exec('which letsencrypt certbot /root/.local/share/letsencrypt/bin/letsencrypt /opt/eff.org/certbot/venv/bin/certbot')); + $letsencrypt = reset($letsencrypt); + if(!is_executable($letsencrypt)) { + $letsencrypt = false; + } if(!empty($cli_domain_arg)) { if(!isset($server_config['migration_mode']) || $server_config['migration_mode'] != 'y') { $app->log("Create Let's Encrypt SSL Cert for: $domain", LOGLEVEL_DEBUG); $app->log("Let's Encrypt SSL Cert domains: $cli_domain_arg", LOGLEVEL_DEBUG); - $letsencrypt = explode("\n", shell_exec('which letsencrypt certbot /root/.local/share/letsencrypt/bin/letsencrypt /opt/eff.org/certbot/venv/bin/certbot')); - $letsencrypt = reset($letsencrypt); - if(is_executable($letsencrypt)) { + if($letsencrypt) { $letsencrypt_version = exec($letsencrypt . ' --version 2>&1', $ret, $val); if(preg_match('/^(\S+|\w+)\s+(\d+(\.\d+)+)$/', $letsencrypt_version, $matches)) { $letsencrypt_version = $matches[2]; } - if ($letsencrypt_version >=0.22) { + if (version_compare($letsencrypt_version, '0.22', '>=')) { $acme_version = 'https://acme-v02.api.letsencrypt.org/directory'; } else { $acme_version = 'https://acme-v01.api.letsencrypt.org/directory'; } - if ($letsencrypt_version >= 0.31) { + if (version_compare($letsencrypt_version, '0.30', '>=')) { + $app->log("LE version is " . $letsencrypt_version . ", so using certificates command", LOGLEVEL_DEBUG); + $letsencrypt_use_certcommand = true; $webroot_map = array(); for($i = 0; $i < count($temp_domains); $i++) { $webroot_map[$temp_domains[$i]] = '/usr/local/ispconfig/interface/acme'; @@ -302,8 +310,50 @@ class letsencrypt { $success = true; } } - - $le_files = $this->get_letsencrypt_certificate_paths($temp_domains); + $le_files = array(); + if($letsencrypt_use_certcommand === true && $letsencrypt) { + $letsencrypt_cmd = $letsencrypt . " certificates " . $cli_domain_arg; + $output = explode("\n", shell_exec($letsencrypt_cmd . " 2>/dev/null | grep -v '^\$'")); + $le_path = ''; + $skip_to_next = true; + foreach($output as $outline) { + $outline = trim($outline); + $app->log("LE CERT OUTPUT: " . $outline, LOGLEVEL_DEBUG); + + if($skip_to_next === true && !preg_match('/^\s*Certificate Name/', $outline)) { + continue; + } + $skip_to_next = false; + + if(preg_match('/^\s*Expiry.*?VALID:\s+\D/', $outline)) { + $app->log("Found LE path is expired or invalid: " . $matches[1], LOGLEVEL_DEBUG); + $skip_to_next = true; + continue; + } + + if(preg_match('/^\s*Certificate Path:\s*(\/.*?)\s*$/', $outline, $matches)) { + $app->log("Found LE path: " . $matches[1], LOGLEVEL_DEBUG); + $le_path = dirname($matches[1]); + if(is_dir($le_path)) { + break; + } else { + $le_path = false; + } + } + } + + if($le_path) { + $le_files = array( + 'privkey' => $le_path . '/privkey.pem', + 'chain' => $le_path . '/chain.pem', + 'cert' => $le_path . '/cert.pem', + 'fullchain' => $le_path . '/fullchain.pem' + ); + } + } + if(empty($le_files)) { + $le_files = $this->get_letsencrypt_certificate_paths($temp_domains); + } unset($temp_domains); if($server_type != 'apache' || version_compare($app->system->getapacheversion(true), '2.4.8', '>=')) { -- GitLab From 9490993f0712f22032cb102e8853dfbe1f8d4949 Mon Sep 17 00:00:00 2001 From: Till Brehm <tbrehm@ispconfig.org> Date: Mon, 15 Apr 2019 15:02:14 +0200 Subject: [PATCH 059/215] Implements #5290 in stable branch: Nginx - Allow certbot acme challenge on auth_basic protected websites --- server/conf/nginx_vhost.conf.master | 1 + 1 file changed, 1 insertion(+) diff --git a/server/conf/nginx_vhost.conf.master b/server/conf/nginx_vhost.conf.master index 63c9260354..d46da535ca 100644 --- a/server/conf/nginx_vhost.conf.master +++ b/server/conf/nginx_vhost.conf.master @@ -128,6 +128,7 @@ server { location ^~ /.well-known/acme-challenge/ { access_log off; log_not_found off; + auth_basic off; root /usr/local/ispconfig/interface/acme/; autoindex off; index index.html; -- GitLab From 5d1673ed91c4fd5bba49c11bc7eddad93b1be4ed Mon Sep 17 00:00:00 2001 From: Jesse Norell <jesse@kci.net> Date: Fri, 17 May 2019 17:44:17 +0200 Subject: [PATCH 060/215] Update rest.php to check if remote api is allowed. --- interface/web/remote/rest.php | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/interface/web/remote/rest.php b/interface/web/remote/rest.php index d579150045..4f202c6eee 100644 --- a/interface/web/remote/rest.php +++ b/interface/web/remote/rest.php @@ -6,7 +6,11 @@ require_once '../../lib/config.inc.php'; $conf['start_session'] = false; require_once '../../lib/app.inc.php'; -$app->load('rest_handler'); +$app->load('rest_handler,getconf'); + +$security_config = $app->getconf->get_security_config('permissions'); +if($security_config['remote_api_allowed'] != 'yes') die('Remote API is disabled in security settings.'); + $rest_handler = new ISPConfigRESTHandler(); $rest_handler->run(); -- GitLab From dda2b4745ef216566bf6acd6cfad9dc07770fdfb Mon Sep 17 00:00:00 2001 From: Marius Burkard <m.burkard@pixcept.de> Date: Wed, 26 Jun 2019 15:36:57 +0200 Subject: [PATCH 061/215] Renewal of letsencrypt does not restart/reload nginx, fixes #5033 --- server/cron.php | 5 ++++- server/lib/classes/modules.inc.php | 21 +++++++++++++++++++-- 2 files changed, 23 insertions(+), 3 deletions(-) diff --git a/server/cron.php b/server/cron.php index 6f74bd3570..cd8f08ef0a 100644 --- a/server/cron.php +++ b/server/cron.php @@ -69,9 +69,10 @@ $conf['server_id'] = intval($conf['server_id']); // Load required base-classes -$app->uses('ini_parser,file,services,getconf,system,cron,functions'); +$app->uses('modules,ini_parser,file,services,getconf,system,cron,functions'); $app->load('libdatetime,cronjob'); +$app->modules->loadModules('web'); // read all cron jobs $path = SCRIPT_PATH . '/lib/classes/cron.d'; @@ -114,6 +115,8 @@ foreach($files as $f) { } unset($files); +$app->services->processDelayedActions(); + // Remove lock @unlink($conf['temppath'] . $conf['fs_div'] . '.ispconfig_cron_lock'); $app->log('Remove Lock: ' . $conf['temppath'] . $conf['fs_div'] . '.ispconfig_cron_lock', LOGLEVEL_DEBUG); diff --git a/server/lib/classes/modules.inc.php b/server/lib/classes/modules.inc.php index aa95d473b2..3fd788d0a9 100644 --- a/server/lib/classes/modules.inc.php +++ b/server/lib/classes/modules.inc.php @@ -37,18 +37,32 @@ class modules { /* This function is called to load the modules from the mods-enabled or the mods-core folder */ - function loadModules($type) { + function loadModules($type = 'all') { global $app, $conf; $subPath = 'mods-enabled'; - if ($type == 'core') $subPath = 'mods-core'; + if ($type == 'core') { + $subPath = 'mods-core'; + } elseif ($type == 'all') { + $type = ''; + } elseif (!preg_match('/^\w+$/', $type)) { + $app->log('Invalid loadModules type ' . $type, LOGLEVEL_ERROR); + return false; + } else { + $subPath = 'mods-available'; + } + $loaded = false; $modules_dir = $conf['rootpath'].$conf['fs_div'].$subPath.$conf['fs_div']; if (is_dir($modules_dir)) { if ($dh = opendir($modules_dir)) { while (($file = readdir($dh)) !== false) { if($file != '.' && $file != '..' && substr($file, -8, 8) == '.inc.php') { $module_name = substr($file, 0, -8); + if($type && $type !== 'core' && $type != $module_name) { + continue; + } + $loaded = true; include_once $modules_dir.$file; if($this->debug) $app->log('Loading Module: '.$module_name, LOGLEVEL_DEBUG); $app->loaded_modules[$module_name] = new $module_name; @@ -60,6 +74,9 @@ class modules { $app->log('Modules directory missing: '.$modules_dir, LOGLEVEL_ERROR); } + if($type && $type !== 'core' && $loaded === false) { + $app->log('Module ' . $type . ' not found.', LOGLEVEL_ERROR); + } } /* -- GitLab From 9ceff3c13b9dbace5b4ee9acae2b76c8611fc603 Mon Sep 17 00:00:00 2001 From: Marius Burkard <m.burkard@pixcept.de> Date: Wed, 26 Jun 2019 15:44:08 +0200 Subject: [PATCH 062/215] LE Renewal issue on systems that use the relative symlink option for websites, fixes #5326 --- server/lib/classes/letsencrypt.inc.php | 24 ++++++------------------ server/lib/classes/system.inc.php | 2 +- 2 files changed, 7 insertions(+), 19 deletions(-) diff --git a/server/lib/classes/letsencrypt.inc.php b/server/lib/classes/letsencrypt.inc.php index ea1e745a77..583e1c25bb 100644 --- a/server/lib/classes/letsencrypt.inc.php +++ b/server/lib/classes/letsencrypt.inc.php @@ -388,12 +388,8 @@ class letsencrypt { $app->system->unlink($key_file); } - if ($web_config["website_symlinks_rel"] == 'y') { - $app->system->create_relative_link(escapeshellcmd($key_tmp_file), escapeshellcmd($key_file)); - } else { - if(@is_link($key_file)) $app->system->unlink($key_file); - if(@file_exists($key_tmp_file)) exec("ln -s ".escapeshellcmd($key_tmp_file)." ".escapeshellcmd($key_file)); - } + if(@is_link($key_file)) $app->system->unlink($key_file); + if(@file_exists($key_tmp_file)) exec("ln -s ".escapeshellcmd($key_tmp_file)." ".escapeshellcmd($key_file)); if(is_file($crt_file)) { $app->system->copy($crt_file, $crt_file.'.old.'.$date); @@ -401,12 +397,8 @@ class letsencrypt { $app->system->unlink($crt_file); } - if($web_config["website_symlinks_rel"] == 'y') { - $app->system->create_relative_link(escapeshellcmd($crt_tmp_file), escapeshellcmd($crt_file)); - } else { - if(@is_link($crt_file)) $app->system->unlink($crt_file); - if(@file_exists($crt_tmp_file))exec("ln -s ".escapeshellcmd($crt_tmp_file)." ".escapeshellcmd($crt_file)); - } + if(@is_link($crt_file)) $app->system->unlink($crt_file); + if(@file_exists($crt_tmp_file))exec("ln -s ".escapeshellcmd($crt_tmp_file)." ".escapeshellcmd($crt_file)); if(is_file($bundle_file)) { $app->system->copy($bundle_file, $bundle_file.'.old.'.$date); @@ -414,12 +406,8 @@ class letsencrypt { $app->system->unlink($bundle_file); } - if($web_config["website_symlinks_rel"] == 'y') { - $app->system->create_relative_link(escapeshellcmd($bundle_tmp_file), escapeshellcmd($bundle_file)); - } else { - if(@is_link($bundle_file)) $app->system->unlink($bundle_file); - if(@file_exists($bundle_tmp_file)) exec("ln -s ".escapeshellcmd($bundle_tmp_file)." ".escapeshellcmd($bundle_file)); - } + if(@is_link($bundle_file)) $app->system->unlink($bundle_file); + if(@file_exists($bundle_tmp_file)) exec("ln -s ".escapeshellcmd($bundle_tmp_file)." ".escapeshellcmd($bundle_file)); return true; } else { diff --git a/server/lib/classes/system.inc.php b/server/lib/classes/system.inc.php index f4d94743a1..5c277ada1a 100644 --- a/server/lib/classes/system.inc.php +++ b/server/lib/classes/system.inc.php @@ -918,7 +918,7 @@ class system{ // Add ($cnt_to-1) number of "../" elements to left side of $cfrom for ($c = 0; $c < (count($a2)-1); $c++) { $cfrom = '../'.$cfrom; } - if(strstr($to,'/etc/letsencrypt/archive/')) $to = str_replace('/etc/letsencrypt/archive/','/etc/letsencrypt/live/',$to); + //if(strstr($to,'/etc/letsencrypt/archive/')) $to = str_replace('/etc/letsencrypt/archive/','/etc/letsencrypt/live/',$to); return symlink($cfrom, $to); } -- GitLab From eab22adbf98b61b3c4802b0ee72640f76784a721 Mon Sep 17 00:00:00 2001 From: Marius Burkard <m.burkard@pixcept.de> Date: Wed, 26 Jun 2019 15:48:54 +0200 Subject: [PATCH 063/215] Addition to commit dda2b474 for #5033 --- server/cron.php | 2 -- server/lib/classes/cron.d/900-letsencrypt.inc.php | 1 + 2 files changed, 1 insertion(+), 2 deletions(-) diff --git a/server/cron.php b/server/cron.php index cd8f08ef0a..ba59ff4049 100644 --- a/server/cron.php +++ b/server/cron.php @@ -72,8 +72,6 @@ $conf['server_id'] = intval($conf['server_id']); $app->uses('modules,ini_parser,file,services,getconf,system,cron,functions'); $app->load('libdatetime,cronjob'); -$app->modules->loadModules('web'); - // read all cron jobs $path = SCRIPT_PATH . '/lib/classes/cron.d'; if(!is_dir($path)) die('Cron path missing!'); diff --git a/server/lib/classes/cron.d/900-letsencrypt.inc.php b/server/lib/classes/cron.d/900-letsencrypt.inc.php index d03d4a184a..30a23fe973 100644 --- a/server/lib/classes/cron.d/900-letsencrypt.inc.php +++ b/server/lib/classes/cron.d/900-letsencrypt.inc.php @@ -44,6 +44,7 @@ class cronjob_letsencrypt extends cronjob { public function onBeforeRun() { global $app; + $app->modules->loadModules('web_module'); return parent::onBeforeRun(); } -- GitLab From 7ca2762dc01c8aeb2f0fef6bb404a5468714bf5b Mon Sep 17 00:00:00 2001 From: Marius Burkard <m.burkard@pixcept.de> Date: Wed, 26 Jun 2019 16:05:30 +0200 Subject: [PATCH 064/215] Syntax errors in PHP 5.3.3, fixes #5129 --- interface/lib/app.inc.php | 3 ++- interface/web/dns/dns_caa_edit.php | 3 ++- interface/web/mail/ajax_get_json.php | 6 +++++- interface/web/sites/database_quota_stats.php | 3 ++- 4 files changed, 11 insertions(+), 4 deletions(-) diff --git a/interface/lib/app.inc.php b/interface/lib/app.inc.php index ccc80fd254..b02ae8526d 100755 --- a/interface/lib/app.inc.php +++ b/interface/lib/app.inc.php @@ -335,7 +335,8 @@ class app { } private function get_cookie_domain() { - $proxy_panel_allowed = $this->getconf->get_security_config('permissions')['reverse_proxy_panel_allowed']; + $sec_config = $this->getconf->get_security_config('permissions'); + $proxy_panel_allowed = $sec_config['reverse_proxy_panel_allowed']; if ($proxy_panel_allowed == 'all') { return ''; } diff --git a/interface/web/dns/dns_caa_edit.php b/interface/web/dns/dns_caa_edit.php index c3d8618414..0151600e48 100644 --- a/interface/web/dns/dns_caa_edit.php +++ b/interface/web/dns/dns_caa_edit.php @@ -165,7 +165,8 @@ class page_action extends tform_actions { // Set name if($this->dataRecord['additional'] != '') { - $temp = explode(',', $this->dataRecord['additional'])[0]; // if we have more hostnames the interface-plugin will be used + $temp = explode(',', $this->dataRecord['additional']); + $temp = $temp[0]; // if we have more hostnames the interface-plugin will be used $temp = trim($temp,'.'); if(trim($temp != '')) $this->dataRecord['name'] = $temp.'.'.$this->dataRecord['name']; unset($temp); diff --git a/interface/web/mail/ajax_get_json.php b/interface/web/mail/ajax_get_json.php index 2a1a756167..17fd4cf45a 100644 --- a/interface/web/mail/ajax_get_json.php +++ b/interface/web/mail/ajax_get_json.php @@ -40,7 +40,11 @@ $domain_id = $_GET['domain_id']; if($type == 'create_dkim' && $domain_id != ''){ $dkim_public = $_GET['dkim_public']; $dkim_selector = $_GET['dkim_selector']; - $domain=@(is_numeric($domain_id))?$app->db->queryOneRecord("SELECT domain FROM domain WHERE domain_id = ? AND ".$app->tform->getAuthSQL('r'), $domain_id)['domain']:$domain_id; + $domain = $domain_id; + if(is_numeric($domain_id)) { + $temp = $app->db->queryOneRecord("SELECT domain FROM domain WHERE domain_id = ? AND ".$app->tform->getAuthSQL('r'), $domain_id); + $domain = $temp['domain']; + } $rec = $app->db->queryOneRecord("SELECT server_id, domain FROM mail_domain WHERE domain = ?", $domain); $server_id = $rec['server_id']; $maildomain = $rec['domain']; diff --git a/interface/web/sites/database_quota_stats.php b/interface/web/sites/database_quota_stats.php index 148aa127ae..5f550cf8d1 100644 --- a/interface/web/sites/database_quota_stats.php +++ b/interface/web/sites/database_quota_stats.php @@ -83,7 +83,8 @@ class list_action extends listform_actions { } else { $web_database = $app->db->queryOneRecord("SELECT * FROM web_database WHERE database_id = ?", $rec[$this->idx_key]); $rec['database'] = $rec['database_name']; - $rec['server_name'] = $app->db->queryOneRecord("SELECT server_name FROM server WHERE server_id = ?", $web_database['server_id'])['server_name']; + $temp = $app->db->queryOneRecord("SELECT server_name FROM server WHERE server_id = ?", $web_database['server_id']); + $rec['server_name'] = $temp['server_name']; $sys_group = $app->db->queryOneRecord("SELECT * FROM sys_group WHERE groupid = ?", $web_database['sys_groupid']); $client = $app->db->queryOneRecord("SELECT * FROM client WHERE client_id = ?", $sys_group['client_id']); $rec['client'] = $client['username']; -- GitLab From 23ca8059e5407b7606b0b3e9df5a8c8d7cd915d8 Mon Sep 17 00:00:00 2001 From: Marius Burkard <m.burkard@pixcept.de> Date: Wed, 26 Jun 2019 17:05:00 +0200 Subject: [PATCH 065/215] - added missing load for modules lib --- server/cron_debug.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/server/cron_debug.php b/server/cron_debug.php index 615a56d743..2ab9289d26 100644 --- a/server/cron_debug.php +++ b/server/cron_debug.php @@ -39,7 +39,7 @@ ini_set('error_reporting', E_ALL & ~E_NOTICE); $conf['server_id'] = intval($conf['server_id']); // Load required base-classes -$app->uses('ini_parser,file,services,getconf,system,cron,functions'); +$app->uses('modules,ini_parser,file,services,getconf,system,cron,functions'); $app->load('libdatetime,cronjob'); // Path settings -- GitLab From cb984ca1d806d32fa7b334347ca846f4ba70fd80 Mon Sep 17 00:00:00 2001 From: Till Brehm <tbrehm@ispconfig.org> Date: Fri, 28 Jun 2019 16:03:48 +0200 Subject: [PATCH 066/215] Add support for Debian 10 (Buster) to OS detection code. --- install/dist/conf/debian100.conf.php | 234 +++++++++++++++++++++++ install/dist/conf/debiantesting.conf.php | 22 ++- install/lib/install.lib.php | 9 +- server/lib/classes/monitor_tools.inc.php | 12 +- 4 files changed, 266 insertions(+), 11 deletions(-) create mode 100644 install/dist/conf/debian100.conf.php diff --git a/install/dist/conf/debian100.conf.php b/install/dist/conf/debian100.conf.php new file mode 100644 index 0000000000..28d82b8079 --- /dev/null +++ b/install/dist/conf/debian100.conf.php @@ -0,0 +1,234 @@ +<?php + +/* +Copyright (c) 2016, Till Brehm, ISPConfig UG +All rights reserved. + +Redistribution and use in source and binary forms, with or without modification, +are permitted provided that the following conditions are met: + + * Redistributions of source code must retain the above copyright notice, + this list of conditions and the following disclaimer. + * Redistributions in binary form must reproduce the above copyright notice, + this list of conditions and the following disclaimer in the documentation + and/or other materials provided with the distribution. + * Neither the name of ISPConfig nor the names of its contributors + may be used to endorse or promote products derived from this software without + specific prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND +ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED +WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. +IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, +INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, +BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY +OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING +NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, +EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. +*/ + +//*** Debian 10 default settings + +//* Main +$conf['language'] = 'en'; +$conf['distname'] = 'debian100'; +$conf['hostname'] = 'server1.domain.tld'; // Full hostname +$conf['ispconfig_install_dir'] = '/usr/local/ispconfig'; +$conf['ispconfig_config_dir'] = '/usr/local/ispconfig'; +$conf['ispconfig_log_priority'] = 2; // 0 = Debug, 1 = Warning, 2 = Error +$conf['ispconfig_log_dir'] = '/var/log/ispconfig'; +$conf['server_id'] = 1; +$conf['init_scripts'] = '/etc/init.d'; +$conf['runlevel'] = '/etc'; +$conf['shells'] = '/etc/shells'; +$conf['pam'] = '/etc/pam.d'; + +//* Services provided by this server, this selection will be overridden by the expert mode +$conf['services']['mail'] = true; +$conf['services']['web'] = true; +$conf['services']['dns'] = true; +$conf['services']['file'] = true; +$conf['services']['db'] = true; +$conf['services']['vserver'] = true; +$conf['services']['proxy'] = false; +$conf['services']['firewall'] = false; + +//* MySQL +$conf['mysql']['installed'] = false; // will be detected automatically during installation +$conf['mysql']['init_script'] = 'mysql'; +$conf['mysql']['host'] = 'localhost'; +$conf['mysql']['ip'] = '127.0.0.1'; +$conf['mysql']['port'] = '3306'; +$conf['mysql']['database'] = 'dbispconfig'; +$conf['mysql']['admin_user'] = 'root'; +$conf['mysql']['admin_password'] = ''; +$conf['mysql']['charset'] = 'utf8'; +$conf['mysql']['ispconfig_user'] = 'ispconfig'; +$conf['mysql']['ispconfig_password'] = md5(uniqid(rand())); +$conf['mysql']['master_slave_setup'] = 'n'; +$conf['mysql']['master_host'] = ''; +$conf['mysql']['master_database'] = 'dbispconfig'; +$conf['mysql']['master_admin_user'] = 'root'; +$conf['mysql']['master_admin_password'] = ''; +$conf['mysql']['master_ispconfig_user'] = ''; +$conf['mysql']['master_ispconfig_password'] = md5(uniqid(rand())); + +//* Apache +$conf['apache']['installed'] = false; // will be detected automatically during installation +$conf['apache']['user'] = 'www-data'; +$conf['apache']['group'] = 'www-data'; +$conf['apache']['init_script'] = 'apache2'; +$conf['apache']['version'] = '2.4'; +$conf['apache']['vhost_conf_dir'] = '/etc/apache2/sites-available'; +$conf['apache']['vhost_conf_enabled_dir'] = '/etc/apache2/sites-enabled'; +$conf['apache']['vhost_port'] = '8080'; +$conf['apache']['php_ini_path_apache'] = '/etc/php/7.3/apache2/php.ini'; +$conf['apache']['php_ini_path_cgi'] = '/etc/php/7.3/cgi/php.ini'; + +//* Website base settings +$conf['web']['website_basedir'] = '/var/www'; +$conf['web']['website_path'] = '/var/www/clients/client[client_id]/web[website_id]'; +$conf['web']['website_symlinks'] = '/var/www/[website_domain]/:/var/www/clients/client[client_id]/[website_domain]/'; + +//* Apps base settings +$conf['web']['apps_vhost_ip'] = '_default_'; +$conf['web']['apps_vhost_port'] = '8081'; +$conf['web']['apps_vhost_servername'] = ''; +$conf['web']['apps_vhost_user'] = 'ispapps'; +$conf['web']['apps_vhost_group'] = 'ispapps'; + +//* Fastcgi +$conf['fastcgi']['fastcgi_phpini_path'] = '/etc/php/7.3/cgi/'; +$conf['fastcgi']['fastcgi_starter_path'] = '/var/www/php-fcgi-scripts/[system_user]/'; +$conf['fastcgi']['fastcgi_bin'] = '/usr/bin/php-cgi'; + +//* Postfix +$conf['postfix']['installed'] = false; // will be detected automatically during installation +$conf['postfix']['config_dir'] = '/etc/postfix'; +$conf['postfix']['init_script'] = 'postfix'; +$conf['postfix']['user'] = 'postfix'; +$conf['postfix']['group'] = 'postfix'; +$conf['postfix']['vmail_userid'] = '5000'; +$conf['postfix']['vmail_username'] = 'vmail'; +$conf['postfix']['vmail_groupid'] = '5000'; +$conf['postfix']['vmail_groupname'] = 'vmail'; +$conf['postfix']['vmail_mailbox_base'] = '/var/vmail'; + +//* Mailman +$conf['mailman']['installed'] = false; // will be detected automatically during installation +$conf['mailman']['config_dir'] = '/etc/mailman'; +$conf['mailman']['init_script'] = 'mailman'; + +//* mlmmj +$conf['mlmmj']['installed'] = false; // will be detected automatically during installation +$conf['mlmmj']['config_dir'] = '/etc/mlmmj'; + +//* Getmail +$conf['getmail']['installed'] = false; // will be detected automatically during installation +$conf['getmail']['config_dir'] = '/etc/getmail'; +$conf['getmail']['program'] = '/usr/bin/getmail'; + +//* Courier +$conf['courier']['installed'] = false; // will be detected automatically during installation +$conf['courier']['config_dir'] = '/etc/courier'; +$conf['courier']['courier-authdaemon'] = 'courier-authdaemon'; +$conf['courier']['courier-imap'] = 'courier-imap'; +$conf['courier']['courier-imap-ssl'] = 'courier-imap-ssl'; +$conf['courier']['courier-pop'] = 'courier-pop'; +$conf['courier']['courier-pop-ssl'] = 'courier-pop-ssl'; + +//* Dovecot +$conf['dovecot']['installed'] = false; // will be detected automatically during installation +$conf['dovecot']['config_dir'] = '/etc/dovecot'; +$conf['dovecot']['init_script'] = 'dovecot'; + +//* SASL +$conf['saslauthd']['installed'] = false; // will be detected automatically during installation +$conf['saslauthd']['config'] = '/etc/default/saslauthd'; +$conf['saslauthd']['init_script'] = 'saslauthd'; + +//* Amavisd +$conf['amavis']['installed'] = false; // will be detected automatically during installation +$conf['amavis']['config_dir'] = '/etc/amavis'; +$conf['amavis']['init_script'] = 'amavis'; + +//* ClamAV +$conf['clamav']['installed'] = false; // will be detected automatically during installation +$conf['clamav']['init_script'] = 'clamav-daemon'; + +//* Pureftpd +$conf['pureftpd']['installed'] = false; // will be detected automatically during installation +$conf['pureftpd']['config_dir'] = '/etc/pure-ftpd'; +$conf['pureftpd']['init_script'] = 'pure-ftpd-mysql'; + +//* MyDNS +$conf['mydns']['installed'] = false; // will be detected automatically during installation +$conf['mydns']['config_dir'] = '/etc'; +$conf['mydns']['init_script'] = 'mydns'; + +//* PowerDNS +$conf['powerdns']['installed'] = false; // will be detected automatically during installation +$conf['powerdns']['database'] = 'powerdns'; +$conf["powerdns"]["config_dir"] = '/etc/powerdns/pdns.d'; +$conf['powerdns']['init_script'] = 'pdns'; + +//* BIND DNS Server +$conf['bind']['installed'] = false; // will be detected automatically during installation +$conf['bind']['bind_user'] = 'root'; +$conf['bind']['bind_group'] = 'bind'; +$conf['bind']['bind_zonefiles_dir'] = '/etc/bind'; +$conf['bind']['named_conf_path'] = '/etc/bind/named.conf'; +$conf['bind']['named_conf_local_path'] = '/etc/bind/named.conf.local'; +$conf['bind']['init_script'] = 'bind9'; + +//* Jailkit +$conf['jailkit']['installed'] = false; // will be detected automatically during installation +$conf['jailkit']['config_dir'] = '/etc/jailkit'; +$conf['jailkit']['jk_init'] = 'jk_init.ini'; +$conf['jailkit']['jk_chrootsh'] = 'jk_chrootsh.ini'; +$conf['jailkit']['jailkit_chroot_app_programs'] = '/usr/bin/groups /usr/bin/id /usr/bin/dircolors /usr/bin/lesspipe /usr/bin/basename /usr/bin/dirname /usr/bin/nano /usr/bin/pico /usr/bin/mysql /usr/bin/mysqldump /usr/bin/git /usr/bin/git-receive-pack /usr/bin/git-upload-pack /usr/bin/unzip /usr/bin/zip /bin/tar /bin/rm /usr/bin/patch'; +$conf['jailkit']['jailkit_chroot_cron_programs'] = '/usr/bin/php /usr/bin/perl /usr/share/perl /usr/share/php'; + +//* Squid +$conf['squid']['installed'] = false; // will be detected automatically during installation +$conf['squid']['config_dir'] = '/etc/squid'; +$conf['squid']['init_script'] = 'squid'; + +//* Nginx +$conf['nginx']['installed'] = false; // will be detected automatically during installation +$conf['nginx']['user'] = 'www-data'; +$conf['nginx']['group'] = 'www-data'; +$conf['nginx']['config_dir'] = '/etc/nginx'; +$conf['nginx']['vhost_conf_dir'] = '/etc/nginx/sites-available'; +$conf['nginx']['vhost_conf_enabled_dir'] = '/etc/nginx/sites-enabled'; +$conf['nginx']['init_script'] = 'nginx'; +$conf['nginx']['vhost_port'] = '8080'; +$conf['nginx']['cgi_socket'] = '/var/run/fcgiwrap.socket'; +$conf['nginx']['php_fpm_init_script'] = 'php7.3-fpm'; +$conf['nginx']['php_fpm_ini_path'] = '/etc/php/7.3/fpm/php.ini'; +$conf['nginx']['php_fpm_pool_dir'] = '/etc/php/7.3/fpm/pool.d'; +$conf['nginx']['php_fpm_start_port'] = 9010; +$conf['nginx']['php_fpm_socket_dir'] = '/var/lib/php7.3-fpm'; + +//* OpenVZ +$conf['openvz']['installed'] = false; + +//*Bastille-Firwall +$conf['bastille']['installed'] = false; +$conf['bastille']['config_dir'] = '/etc/Bastille'; + +//* vlogger +$conf['vlogger']['config_dir'] = '/etc'; + +//* cron +$conf['cron']['init_script'] = 'cron'; +$conf['cron']['crontab_dir'] = '/etc/cron.d'; +$conf['cron']['wget'] = '/usr/bin/wget'; + +//* Metronome XMPP +$conf['xmpp']['installed'] = false; +$conf['xmpp']['init_script'] = 'metronome'; + + +?> diff --git a/install/dist/conf/debiantesting.conf.php b/install/dist/conf/debiantesting.conf.php index 92787bf428..5e5e32f474 100644 --- a/install/dist/conf/debiantesting.conf.php +++ b/install/dist/conf/debiantesting.conf.php @@ -28,11 +28,11 @@ NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ -//*** Ubuntu 16.04 default settings +//*** Debian Testing default settings //* Main $conf['language'] = 'en'; -$conf['distname'] = 'ubuntu1604'; +$conf['distname'] = 'debian100'; $conf['hostname'] = 'server1.domain.tld'; // Full hostname $conf['ispconfig_install_dir'] = '/usr/local/ispconfig'; $conf['ispconfig_config_dir'] = '/usr/local/ispconfig'; @@ -83,8 +83,8 @@ $conf['apache']['version'] = '2.4'; $conf['apache']['vhost_conf_dir'] = '/etc/apache2/sites-available'; $conf['apache']['vhost_conf_enabled_dir'] = '/etc/apache2/sites-enabled'; $conf['apache']['vhost_port'] = '8080'; -$conf['apache']['php_ini_path_apache'] = '/etc/php/7.0/apache2/php.ini'; -$conf['apache']['php_ini_path_cgi'] = '/etc/php/7.0/cgi/php.ini'; +$conf['apache']['php_ini_path_apache'] = '/etc/php/7.3/apache2/php.ini'; +$conf['apache']['php_ini_path_cgi'] = '/etc/php/7.3/cgi/php.ini'; //* Website base settings $conf['web']['website_basedir'] = '/var/www'; @@ -99,7 +99,7 @@ $conf['web']['apps_vhost_user'] = 'ispapps'; $conf['web']['apps_vhost_group'] = 'ispapps'; //* Fastcgi -$conf['fastcgi']['fastcgi_phpini_path'] = '/etc/php/7.0/cgi/'; +$conf['fastcgi']['fastcgi_phpini_path'] = '/etc/php/7.3/cgi/'; $conf['fastcgi']['fastcgi_starter_path'] = '/var/www/php-fcgi-scripts/[system_user]/'; $conf['fastcgi']['fastcgi_bin'] = '/usr/bin/php-cgi'; @@ -120,6 +120,10 @@ $conf['mailman']['installed'] = false; // will be detected automatically during $conf['mailman']['config_dir'] = '/etc/mailman'; $conf['mailman']['init_script'] = 'mailman'; +//* mlmmj +$conf['mlmmj']['installed'] = false; // will be detected automatically during installation +$conf['mlmmj']['config_dir'] = '/etc/mlmmj'; + //* Getmail $conf['getmail']['installed'] = false; // will be detected automatically during installation $conf['getmail']['config_dir'] = '/etc/getmail'; @@ -201,11 +205,11 @@ $conf['nginx']['vhost_conf_enabled_dir'] = '/etc/nginx/sites-enabled'; $conf['nginx']['init_script'] = 'nginx'; $conf['nginx']['vhost_port'] = '8080'; $conf['nginx']['cgi_socket'] = '/var/run/fcgiwrap.socket'; -$conf['nginx']['php_fpm_init_script'] = 'php7.0-fpm'; -$conf['nginx']['php_fpm_ini_path'] = '/etc/php/7.0/fpm/php.ini'; -$conf['nginx']['php_fpm_pool_dir'] = '/etc/php/7.0/fpm/pool.d'; +$conf['nginx']['php_fpm_init_script'] = 'php7.3-fpm'; +$conf['nginx']['php_fpm_ini_path'] = '/etc/php/7.3/fpm/php.ini'; +$conf['nginx']['php_fpm_pool_dir'] = '/etc/php/7.3/fpm/pool.d'; $conf['nginx']['php_fpm_start_port'] = 9010; -$conf['nginx']['php_fpm_socket_dir'] = '/var/lib/php7.0-fpm'; +$conf['nginx']['php_fpm_socket_dir'] = '/var/lib/php7.3-fpm'; //* OpenVZ $conf['openvz']['installed'] = false; diff --git a/install/lib/install.lib.php b/install/lib/install.lib.php index 933c30fe38..6b3a7cd623 100644 --- a/install/lib/install.lib.php +++ b/install/lib/install.lib.php @@ -227,6 +227,13 @@ function get_distname() { $distid = 'debian60'; $distbaseid = 'debian'; swriteln("Operating System: Debian 9.0 (Stretch) or compatible\n"); + } elseif(substr(trim(file_get_contents('/etc/debian_version')),0,2) == '10') { + $distname = 'Debian'; + $distver = 'Buster'; + $distconfid = 'debian100'; + $distid = 'debian60'; + $distbaseid = 'debian'; + swriteln("Operating System: Debian 10.0 (Buster) or compatible\n"); } elseif(strstr(trim(file_get_contents('/etc/debian_version')), '/sid')) { $distname = 'Debian'; $distver = 'Testing'; @@ -238,7 +245,7 @@ function get_distname() { $distname = 'Debian'; $distver = 'Unknown'; $distid = 'debian60'; - $distconfid = 'debian90'; + $distconfid = 'debian100'; $distbaseid = 'debian'; swriteln("Operating System: Debian or compatible, unknown version.\n"); } diff --git a/server/lib/classes/monitor_tools.inc.php b/server/lib/classes/monitor_tools.inc.php index c4a60702b2..a15514fd72 100644 --- a/server/lib/classes/monitor_tools.inc.php +++ b/server/lib/classes/monitor_tools.inc.php @@ -211,17 +211,27 @@ class monitor_tools { $distconfid = 'debian90'; $distid = 'debian60'; $distbaseid = 'debian'; + } elseif(substr(trim(file_get_contents('/etc/debian_version')),0,2) == '10') { + $distname = 'Debian'; + $distver = 'Buster'; + $distconfid = 'debian100'; + $distid = 'debian60'; + $distbaseid = 'debian'; + swriteln("Operating System: Debian 10.0 (Buster) or compatible\n"); } elseif(strstr(trim(file_get_contents('/etc/debian_version')), '/sid')) { $distname = 'Debian'; $distver = 'Testing'; $distid = 'debian60'; $distconfid = 'debiantesting'; $distbaseid = 'debian'; + swriteln("Operating System: Debian Testing\n"); } else { $distname = 'Debian'; $distver = 'Unknown'; - $distid = 'debian40'; + $distid = 'debian60'; + $distconfid = 'debian100'; $distbaseid = 'debian'; + swriteln("Operating System: Debian or compatible, unknown version.\n"); } } -- GitLab From 70c53657aa5ccf1eac53164a1ca941e2151382d4 Mon Sep 17 00:00:00 2001 From: Till Brehm <tbrehm@ispconfig.org> Date: Wed, 3 Jul 2019 12:01:43 +0200 Subject: [PATCH 067/215] Fixed #5313 Extend custom php.ini check regex --- interface/web/sites/web_vhost_domain_edit.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/interface/web/sites/web_vhost_domain_edit.php b/interface/web/sites/web_vhost_domain_edit.php index 8d43e21fad..3d6ecc6fb8 100644 --- a/interface/web/sites/web_vhost_domain_edit.php +++ b/interface/web/sites/web_vhost_domain_edit.php @@ -1301,7 +1301,7 @@ class page_action extends tform_actions { // value inside '' if(preg_match('@^\s*;*\s*[a-zA-Z0-9._]*\s*=\s*\'.*\'\s*;*\s*$@', $custom_php_ini_settings_line)) continue; // everything else - if(preg_match('@^\s*;*\s*[a-zA-Z0-9._]*\s*=\s*[-a-zA-Z0-9~&=_\@/,.#\s]*\s*;*\s*$@', $custom_php_ini_settings_line)) continue; + if(preg_match('@^\s*;*\s*[a-zA-Z0-9._]*\s*=\s*[-a-zA-Z0-9~&=_\@/,.#\s\|]*\s*;*\s*$@', $custom_php_ini_settings_line)) continue; $custom_php_ini_settings_are_valid = false; break; } -- GitLab From c6bf185c613df0f998c2858d0f0985feb1236edd Mon Sep 17 00:00:00 2001 From: Till Brehm <tbrehm@ispconfig.org> Date: Wed, 3 Jul 2019 12:02:29 +0200 Subject: [PATCH 068/215] Added SSL SMTP port 465 to default ports in ISPConfig Firewall. --- interface/web/admin/form/firewall.tform.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/interface/web/admin/form/firewall.tform.php b/interface/web/admin/form/firewall.tform.php index ce7d2dbd09..75f190b3f0 100644 --- a/interface/web/admin/form/firewall.tform.php +++ b/interface/web/admin/form/firewall.tform.php @@ -79,7 +79,7 @@ $form["tabs"]['firewall'] = array ( 'regex' => '/^[\s0-9\,\:]{0,255}$/', 'errmsg'=> 'tcp_ports_error_regex'), ), - 'default' => '20,21,22,25,53,80,110,143,443,587,993,995,3306,8080,8081,10000', + 'default' => '20,21,22,25,53,80,110,143,443,465,587,993,995,3306,8080,8081,10000', 'value' => '', 'width' => '30', 'maxlength' => '255' -- GitLab From b772b1b26c7fa3490997e67c271fba2c83bb1b38 Mon Sep 17 00:00:00 2001 From: Till Brehm <tbrehm@ispconfig.org> Date: Wed, 3 Jul 2019 12:26:58 +0200 Subject: [PATCH 069/215] Implemented #5303 database Backup including routines --- server/lib/classes/cron.d/500-backup.inc.php | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/server/lib/classes/cron.d/500-backup.inc.php b/server/lib/classes/cron.d/500-backup.inc.php index fa57431116..77b355fe6e 100644 --- a/server/lib/classes/cron.d/500-backup.inc.php +++ b/server/lib/classes/cron.d/500-backup.inc.php @@ -225,6 +225,11 @@ class cronjob_backup extends cronjob { if(is_array($records)) { include '/usr/local/ispconfig/server/lib/mysql_clientdb.conf'; + + //* Check mysqldump capabilities + exec('mysqldump --help',$tmp); + $mysqldump_routines = (strpos(implode($tmp),'--routines') !== false)?'--routines':''; + unset($tmp); foreach($records as $rec) { @@ -252,7 +257,7 @@ class cronjob_backup extends cronjob { $db_name = $rec['database_name']; $db_backup_file = 'db_'.$db_name.'_'.date('Y-m-d_H-i').'.sql'; //$command = "mysqldump -h '".escapeshellcmd($clientdb_host)."' -u '".escapeshellcmd($clientdb_user)."' -p'".escapeshellcmd($clientdb_password)."' -c --add-drop-table --create-options --quick --result-file='".$db_backup_dir.'/'.$db_backup_file."' '".$db_name."'"; - $command = "mysqldump -h ".escapeshellarg($clientdb_host)." -u ".escapeshellarg($clientdb_user)." -p".escapeshellarg($clientdb_password)." -c --add-drop-table --create-options --quick --max_allowed_packet=512M --result-file='".$db_backup_dir.'/'.$db_backup_file."' '".$db_name."'"; + $command = "mysqldump -h ".escapeshellarg($clientdb_host)." -u ".escapeshellarg($clientdb_user)." -p".escapeshellarg($clientdb_password)." -c --add-drop-table --create-options --quick --max_allowed_packet=512M ".$mysqldump_routines." --result-file='".$db_backup_dir.'/'.$db_backup_file."' '".$db_name."'"; exec($command, $tmp_output, $retval); //* Compress the backup with gzip / pigz -- GitLab From 8c08db9bf18f7fb2e126a06de63cda3bdc1e5ef7 Mon Sep 17 00:00:00 2001 From: Till Brehm <tbrehm@ispconfig.org> Date: Wed, 3 Jul 2019 12:31:09 +0200 Subject: [PATCH 070/215] Fixed #5293 If an email is submitted via SMTPUTF8 it will bounce --- install/tpl/amavisd_user_config.master | 1 - 1 file changed, 1 deletion(-) diff --git a/install/tpl/amavisd_user_config.master b/install/tpl/amavisd_user_config.master index 8663f07498..2738eac3a9 100644 --- a/install/tpl/amavisd_user_config.master +++ b/install/tpl/amavisd_user_config.master @@ -83,7 +83,6 @@ $notify_method = 'smtp:127.0.0.1:*'; $interface_policy{'10026'} = 'ORIGINATING'; $policy_bank{'ORIGINATING'} = { originating => 1, - smtpd_discard_ehlo_keywords => ['8BITMIME'], }; # IP-Addresses for internal networks => load policy MYNETS -- GitLab From 7a62b126634da6b1375ecff57d1ea34ef4590317 Mon Sep 17 00:00:00 2001 From: Till Brehm <tbrehm@ispconfig.org> Date: Wed, 3 Jul 2019 12:58:05 +0200 Subject: [PATCH 071/215] Fixed #5070 Firewall > Character not allowed in tcp port definition --- install/sql/incremental/upd_dev_collection.sql | 4 +++- install/sql/ispconfig3.sql | 4 ++-- 2 files changed, 5 insertions(+), 3 deletions(-) diff --git a/install/sql/incremental/upd_dev_collection.sql b/install/sql/incremental/upd_dev_collection.sql index 279d3ce211..55e3b846d7 100644 --- a/install/sql/incremental/upd_dev_collection.sql +++ b/install/sql/incremental/upd_dev_collection.sql @@ -80,4 +80,6 @@ INSERT IGNORE INTO `dns_ssl_ca` (`id`, `sys_userid`, `sys_groupid`, `sys_perm_us ALTER TABLE `dns_soa` CHANGE `xfer` `xfer` TEXT NULL; ALTER TABLE `dns_soa` CHANGE `also_notify` `also_notify` TEXT NULL; -ALTER TABLE `dns_slave` CHANGE `xfer` `xfer` TEXT NULL; \ No newline at end of file +ALTER TABLE `dns_slave` CHANGE `xfer` `xfer` TEXT NULL; +ALTER TABLE `firewall` CHANGE `tcp_port` `tcp_port` TEXT CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL; +ALTER TABLE `firewall` CHANGE `udp_port` `udp_port` TEXT CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL; \ No newline at end of file diff --git a/install/sql/ispconfig3.sql b/install/sql/ispconfig3.sql index 4cfaebb396..b547a93dfc 100644 --- a/install/sql/ispconfig3.sql +++ b/install/sql/ispconfig3.sql @@ -682,8 +682,8 @@ CREATE TABLE `firewall` ( `sys_perm_group` varchar(5) default NULL, `sys_perm_other` varchar(5) default NULL, `server_id` int(11) unsigned NOT NULL default '0', - `tcp_port` varchar(255) default NULL, - `udp_port` varchar(255) default NULL, + `tcp_port` text, + `udp_port` text, `active` enum('n','y') NOT NULL default 'y', PRIMARY KEY (`firewall_id`) ) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ; -- GitLab From f6150fe64813bd442bb09c69987ca38fcdaf9489 Mon Sep 17 00:00:00 2001 From: Till Brehm <tbrehm@ispconfig.org> Date: Wed, 3 Jul 2019 13:11:53 +0200 Subject: [PATCH 072/215] Fixed #4353 Layout Issues --- interface/lib/classes/listform_actions.inc.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/interface/lib/classes/listform_actions.inc.php b/interface/lib/classes/listform_actions.inc.php index a13c3fdb73..1b8426b894 100644 --- a/interface/lib/classes/listform_actions.inc.php +++ b/interface/lib/classes/listform_actions.inc.php @@ -264,7 +264,7 @@ class listform_actions { foreach($limits as $key => $val){ $options .= '<option value="'.$key.'" '.(isset($_SESSION['search']['limit']) && $_SESSION['search']['limit'] == $key ? 'selected="selected"':'' ).(!isset($_SESSION['search']['limit']) && $key == '15' ? 'selected="selected"':'').'>'.$val.'</option>'; } - $app->tpl->setVar('search_limit', '<select name="search_limit" class="search_limit">'.$options.'</select>'); + $app->tpl->setVar('search_limit', '<select name="search_limit" class="search_limit" style="width: 60px;">'.$options.'</select>'); $app->tpl->setVar('toolsarea_head_txt', $app->lng('toolsarea_head_txt')); $app->tpl->setVar($app->listform->wordbook); -- GitLab From b019e483854d7d634fafac06353659b6ba673b2b Mon Sep 17 00:00:00 2001 From: Till Brehm <tbrehm@ispconfig.org> Date: Wed, 3 Jul 2019 14:01:57 +0200 Subject: [PATCH 073/215] Fixed #4946 Problems with email starst not being written into the database. --- server/lib/classes/cron.d/100-mailbox_stats.inc.php | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/server/lib/classes/cron.d/100-mailbox_stats.inc.php b/server/lib/classes/cron.d/100-mailbox_stats.inc.php index e5a0065a5b..51c3a45489 100644 --- a/server/lib/classes/cron.d/100-mailbox_stats.inc.php +++ b/server/lib/classes/cron.d/100-mailbox_stats.inc.php @@ -173,6 +173,10 @@ class cronjob_mailbox_stats extends cronjob { continue; } } + + $this->mail_boxes = $mail_boxes; + $this->mail_rewrites = $mail_rewrites; + $this->add_mailbox_traffic($cur_line['from'], $cur_line['size'],$mail_boxes, $mail_rewrites); //echo "1\n"; //print_r($this->mailbox_traffic); @@ -221,6 +225,7 @@ class cronjob_mailbox_stats extends cronjob { $tstamp = date('Y-m'); $sql = "SELECT mailuser_id,email FROM mail_user WHERE server_id = ?"; $records = $app->db->queryAllRecords($sql, $conf['server_id']); + $mailbox_traffic = $this->mailbox_traffic; foreach($records as $rec) { if(array_key_exists($rec['email'], $mailbox_traffic)) { $sql = "SELECT * FROM mail_traffic WHERE month = ? AND mailuser_id = ?"; -- GitLab From 373a9f2b9fd5b011ebfc4bf5b70f6af3f15e1eb3 Mon Sep 17 00:00:00 2001 From: Till Brehm <tbrehm@ispconfig.org> Date: Wed, 3 Jul 2019 14:50:37 +0200 Subject: [PATCH 074/215] implemented #5116 Cronjob on Jailkit Environment is not executed --- server/scripts/create_jailkit_user.sh | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/server/scripts/create_jailkit_user.sh b/server/scripts/create_jailkit_user.sh index 5e1060be25..efefafe3ea 100755 --- a/server/scripts/create_jailkit_user.sh +++ b/server/scripts/create_jailkit_user.sh @@ -21,6 +21,12 @@ CHROOT_SHELL=$4 CHROOT_P_USER=$5 CHROOT_P_USER_HOMEDIR=$6 +### Check if USERHOMEDIR already exists ### +if [ ! -d $CHROOT_HOMEDIR/.$CHROOT_USERHOMEDIR ]; then + mkdir -p $CHROOT_HOMEDIR/.$CHROOT_USERHOMEDIR + chown -R $CHROOT_USERNAME $CHROOT_HOMEDIR/.$CHROOT_USERHOMEDIR +fi + ### Reconfigure the chroot home directory for the user ### usermod --home=$CHROOT_HOMEDIR/.$CHROOT_USERHOMEDIR $CHROOT_USERNAME 2>/dev/null -- GitLab From f1374f877a27ed182b072009260b1d5b40f9da29 Mon Sep 17 00:00:00 2001 From: Till Brehm <tbrehm@ispconfig.org> Date: Wed, 3 Jul 2019 15:50:34 +0200 Subject: [PATCH 075/215] Fixed #5225 ISPConfig fails to create ispconfig user during initial installation with MySQL 8.0 --- install/lib/installer_base.lib.php | 10 +++++++--- 1 file changed, 7 insertions(+), 3 deletions(-) diff --git a/install/lib/installer_base.lib.php b/install/lib/installer_base.lib.php index 2c99f1bd0b..1c32c64984 100644 --- a/install/lib/installer_base.lib.php +++ b/install/lib/installer_base.lib.php @@ -288,11 +288,15 @@ class installer_base { $this->db->query("DROP USER ?@?", $conf['mysql']['ispconfig_user'], $from_host); $this->db->query("DROP DATABASE IF EXISTS ?", $conf['mysql']['database']); - //* Create the ISPConfig database user in the local database - $query = 'GRANT SELECT, INSERT, UPDATE, DELETE ON ?? TO ?@? IDENTIFIED BY ?'; - if(!$this->db->query($query, $conf['mysql']['database'] . ".*", $conf['mysql']['ispconfig_user'], $from_host, $conf['mysql']['ispconfig_password'])) { + //* Create the ISPConfig database user and grant permissions in the local database + $query = 'CREATE USER ?@? IDENTIFIED BY ?'; + if(!$this->db->query($query, $conf['mysql']['ispconfig_user'], $from_host, $conf['mysql']['ispconfig_password'])) { $this->error('Unable to create database user: '.$conf['mysql']['ispconfig_user'].' Error: '.$this->db->errorMessage); } + $query = 'GRANT SELECT, INSERT, UPDATE, DELETE ON ?? TO ?@?'; + if(!$this->db->query($query, $conf['mysql']['database'] . ".*", $conf['mysql']['ispconfig_user'], $from_host)) { + $this->error('Unable to grant databse permissions to user: '.$conf['mysql']['ispconfig_user'].' Error: '.$this->db->errorMessage); + } //* Set the database name in the DB library $this->db->setDBName($conf['mysql']['database']); -- GitLab From de0ecf8f0a55e090ce0b5a66817437959b7c5848 Mon Sep 17 00:00:00 2001 From: Till Brehm <tbrehm@ispconfig.org> Date: Wed, 3 Jul 2019 16:48:36 +0200 Subject: [PATCH 076/215] Fixed #5248 ISPConfig user login database record not created on percona DB --- interface/web/client/client_edit.php | 2 +- interface/web/client/reseller_edit.php | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/interface/web/client/client_edit.php b/interface/web/client/client_edit.php index 8577a1b32d..bbc7849f1f 100644 --- a/interface/web/client/client_edit.php +++ b/interface/web/client/client_edit.php @@ -266,7 +266,7 @@ class page_action extends tform_actions { $app->functions->generate_ssh_key($this->id, $username); // Create the controlpaneluser for the client - $sql = "INSERT INTO sys_user (username,passwort,modules,startmodule,app_theme,typ,active,language,groups,default_group,client_id) + $sql = "INSERT INTO sys_user (`username`,`passwort`,`modules`,`startmodule`,`app_theme`,`typ`,`active`,`language`,`groups`,`default_group`,`client_id`) VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?)"; $app->db->query($sql, $username, $password, $modules, $startmodule, $usertheme, $type, $active, $language, $groups, $groupid, $this->id); diff --git a/interface/web/client/reseller_edit.php b/interface/web/client/reseller_edit.php index 7a84be5253..a089558cab 100644 --- a/interface/web/client/reseller_edit.php +++ b/interface/web/client/reseller_edit.php @@ -222,7 +222,7 @@ class page_action extends tform_actions { $password = crypt(stripslashes($password), $salt); // Create the controlpaneluser for the reseller - $sql = "INSERT INTO sys_user (username,passwort,modules,startmodule,app_theme,typ,active,language,groups,default_group,client_id) + $sql = "INSERT INTO sys_user (`username`,`passwort`,`modules`,`startmodule`,`app_theme`,`typ,active`,`language`,`groups`,`default_group`,`client_id`) VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?)"; $app->db->query($sql, $username, $password, $modules, $startmodule, $usertheme, $type, $active, $language, $groups, $groupid, $this->id); -- GitLab From cc87da34d2434a0e5d167d07034f19fcabe7c78f Mon Sep 17 00:00:00 2001 From: Herman van Rink <rink@initfour.nl> Date: Wed, 3 Jul 2019 17:01:12 +0200 Subject: [PATCH 077/215] Add a space after ***SPAM*** The spamassassin default also has a space, like in install/tpl/amavisd_user_config.master --- install/sql/ispconfig3.sql | 2 +- interface/web/mail/form/mail_spamfilter.tform.php | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/install/sql/ispconfig3.sql b/install/sql/ispconfig3.sql index b547a93dfc..2417ef0d21 100644 --- a/install/sql/ispconfig3.sql +++ b/install/sql/ispconfig3.sql @@ -2521,7 +2521,7 @@ INSERT INTO `spamfilter_policy` (`id`, `sys_userid`, `sys_groupid`, `sys_perm_us INSERT INTO `spamfilter_policy` (`id`, `sys_userid`, `sys_groupid`, `sys_perm_user`, `sys_perm_group`, `sys_perm_other`, `policy_name`, `virus_lover`, `spam_lover`, `banned_files_lover`, `bad_header_lover`, `bypass_virus_checks`, `bypass_spam_checks`, `bypass_banned_checks`, `bypass_header_checks`, `spam_modifies_subj`, `virus_quarantine_to`, `spam_quarantine_to`, `banned_quarantine_to`, `bad_header_quarantine_to`, `clean_quarantine_to`, `other_quarantine_to`, `spam_tag_level`, `spam_tag2_level`, `spam_kill_level`, `spam_dsn_cutoff_level`, `spam_quarantine_cutoff_level`, `addr_extension_virus`, `addr_extension_spam`, `addr_extension_banned`, `addr_extension_bad_header`, `warnvirusrecip`, `warnbannedrecip`, `warnbadhrecip`, `newvirus_admin`, `virus_admin`, `banned_admin`, `bad_header_admin`, `spam_admin`, `spam_subject_tag`, `spam_subject_tag2`, `message_size_limit`, `banned_rulenames`) VALUES(2, 1, 0, 'riud', 'riud', 'r', 'Uncensored', 'Y', 'Y', 'Y', 'Y', 'N', 'N', 'N', 'N', 'N', NULL, NULL, NULL, NULL, NULL, NULL, 3, 999, 999, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL); INSERT INTO `spamfilter_policy` (`id`, `sys_userid`, `sys_groupid`, `sys_perm_user`, `sys_perm_group`, `sys_perm_other`, `policy_name`, `virus_lover`, `spam_lover`, `banned_files_lover`, `bad_header_lover`, `bypass_virus_checks`, `bypass_spam_checks`, `bypass_banned_checks`, `bypass_header_checks`, `spam_modifies_subj`, `virus_quarantine_to`, `spam_quarantine_to`, `banned_quarantine_to`, `bad_header_quarantine_to`, `clean_quarantine_to`, `other_quarantine_to`, `spam_tag_level`, `spam_tag2_level`, `spam_kill_level`, `spam_dsn_cutoff_level`, `spam_quarantine_cutoff_level`, `addr_extension_virus`, `addr_extension_spam`, `addr_extension_banned`, `addr_extension_bad_header`, `warnvirusrecip`, `warnbannedrecip`, `warnbadhrecip`, `newvirus_admin`, `virus_admin`, `banned_admin`, `bad_header_admin`, `spam_admin`, `spam_subject_tag`, `spam_subject_tag2`, `message_size_limit`, `banned_rulenames`) VALUES(3, 1, 0, 'riud', 'riud', 'r', 'Wants all spam', 'N', 'Y', 'N', 'N', 'N', 'N', 'N', 'N', 'Y', NULL, NULL, NULL, NULL, NULL, NULL, 3, 999, 999, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL); INSERT INTO `spamfilter_policy` (`id`, `sys_userid`, `sys_groupid`, `sys_perm_user`, `sys_perm_group`, `sys_perm_other`, `policy_name`, `virus_lover`, `spam_lover`, `banned_files_lover`, `bad_header_lover`, `bypass_virus_checks`, `bypass_spam_checks`, `bypass_banned_checks`, `bypass_header_checks`, `spam_modifies_subj`, `virus_quarantine_to`, `spam_quarantine_to`, `banned_quarantine_to`, `bad_header_quarantine_to`, `clean_quarantine_to`, `other_quarantine_to`, `spam_tag_level`, `spam_tag2_level`, `spam_kill_level`, `spam_dsn_cutoff_level`, `spam_quarantine_cutoff_level`, `addr_extension_virus`, `addr_extension_spam`, `addr_extension_banned`, `addr_extension_bad_header`, `warnvirusrecip`, `warnbannedrecip`, `warnbadhrecip`, `newvirus_admin`, `virus_admin`, `banned_admin`, `bad_header_admin`, `spam_admin`, `spam_subject_tag`, `spam_subject_tag2`, `message_size_limit`, `banned_rulenames`) VALUES(4, 1, 0, 'riud', 'riud', 'r', 'Wants viruses', 'Y', 'N', 'Y', 'Y', 'N', 'N', 'N', 'N', 'Y', NULL, NULL, NULL, NULL, NULL, NULL, 3, 6.9, 6.9, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL); -INSERT INTO `spamfilter_policy` (`id`, `sys_userid`, `sys_groupid`, `sys_perm_user`, `sys_perm_group`, `sys_perm_other`, `policy_name`, `virus_lover`, `spam_lover`, `banned_files_lover`, `bad_header_lover`, `bypass_virus_checks`, `bypass_spam_checks`, `bypass_banned_checks`, `bypass_header_checks`, `spam_modifies_subj`, `virus_quarantine_to`, `spam_quarantine_to`, `banned_quarantine_to`, `bad_header_quarantine_to`, `clean_quarantine_to`, `other_quarantine_to`, `spam_tag_level`, `spam_tag2_level`, `spam_kill_level`, `spam_dsn_cutoff_level`, `spam_quarantine_cutoff_level`, `addr_extension_virus`, `addr_extension_spam`, `addr_extension_banned`, `addr_extension_bad_header`, `warnvirusrecip`, `warnbannedrecip`, `warnbadhrecip`, `newvirus_admin`, `virus_admin`, `banned_admin`, `bad_header_admin`, `spam_admin`, `spam_subject_tag`, `spam_subject_tag2`, `message_size_limit`, `banned_rulenames`) VALUES(5, 1, 0, 'riud', 'riud', 'r', 'Normal', 'N', 'N', 'N', 'N', 'N', 'N', 'N', 'N', 'Y', '', '', '', '', '', '', 1, 4.5, 50, 0, 0, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, '', '***SPAM***', NULL, NULL); +INSERT INTO `spamfilter_policy` (`id`, `sys_userid`, `sys_groupid`, `sys_perm_user`, `sys_perm_group`, `sys_perm_other`, `policy_name`, `virus_lover`, `spam_lover`, `banned_files_lover`, `bad_header_lover`, `bypass_virus_checks`, `bypass_spam_checks`, `bypass_banned_checks`, `bypass_header_checks`, `spam_modifies_subj`, `virus_quarantine_to`, `spam_quarantine_to`, `banned_quarantine_to`, `bad_header_quarantine_to`, `clean_quarantine_to`, `other_quarantine_to`, `spam_tag_level`, `spam_tag2_level`, `spam_kill_level`, `spam_dsn_cutoff_level`, `spam_quarantine_cutoff_level`, `addr_extension_virus`, `addr_extension_spam`, `addr_extension_banned`, `addr_extension_bad_header`, `warnvirusrecip`, `warnbannedrecip`, `warnbadhrecip`, `newvirus_admin`, `virus_admin`, `banned_admin`, `bad_header_admin`, `spam_admin`, `spam_subject_tag`, `spam_subject_tag2`, `message_size_limit`, `banned_rulenames`) VALUES(5, 1, 0, 'riud', 'riud', 'r', 'Normal', 'N', 'N', 'N', 'N', 'N', 'N', 'N', 'N', 'Y', '', '', '', '', '', '', 1, 4.5, 50, 0, 0, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, '', '***SPAM*** ', NULL, NULL); INSERT INTO `spamfilter_policy` (`id`, `sys_userid`, `sys_groupid`, `sys_perm_user`, `sys_perm_group`, `sys_perm_other`, `policy_name`, `virus_lover`, `spam_lover`, `banned_files_lover`, `bad_header_lover`, `bypass_virus_checks`, `bypass_spam_checks`, `bypass_banned_checks`, `bypass_header_checks`, `spam_modifies_subj`, `virus_quarantine_to`, `spam_quarantine_to`, `banned_quarantine_to`, `bad_header_quarantine_to`, `clean_quarantine_to`, `other_quarantine_to`, `spam_tag_level`, `spam_tag2_level`, `spam_kill_level`, `spam_dsn_cutoff_level`, `spam_quarantine_cutoff_level`, `addr_extension_virus`, `addr_extension_spam`, `addr_extension_banned`, `addr_extension_bad_header`, `warnvirusrecip`, `warnbannedrecip`, `warnbadhrecip`, `newvirus_admin`, `virus_admin`, `banned_admin`, `bad_header_admin`, `spam_admin`, `spam_subject_tag`, `spam_subject_tag2`, `message_size_limit`, `banned_rulenames`) VALUES(6, 1, 0, 'riud', 'riud', 'r', 'Trigger happy', 'N', 'N', 'N', 'N', 'N', 'N', 'N', 'N', 'Y', NULL, NULL, NULL, NULL, NULL, NULL, 3, 5, 5, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL); INSERT INTO `spamfilter_policy` (`id`, `sys_userid`, `sys_groupid`, `sys_perm_user`, `sys_perm_group`, `sys_perm_other`, `policy_name`, `virus_lover`, `spam_lover`, `banned_files_lover`, `bad_header_lover`, `bypass_virus_checks`, `bypass_spam_checks`, `bypass_banned_checks`, `bypass_header_checks`, `spam_modifies_subj`, `virus_quarantine_to`, `spam_quarantine_to`, `banned_quarantine_to`, `bad_header_quarantine_to`, `clean_quarantine_to`, `other_quarantine_to`, `spam_tag_level`, `spam_tag2_level`, `spam_kill_level`, `spam_dsn_cutoff_level`, `spam_quarantine_cutoff_level`, `addr_extension_virus`, `addr_extension_spam`, `addr_extension_banned`, `addr_extension_bad_header`, `warnvirusrecip`, `warnbannedrecip`, `warnbadhrecip`, `newvirus_admin`, `virus_admin`, `banned_admin`, `bad_header_admin`, `spam_admin`, `spam_subject_tag`, `spam_subject_tag2`, `message_size_limit`, `banned_rulenames`) VALUES(7, 1, 0, 'riud', 'riud', 'r', 'Permissive', 'N', 'N', 'N', 'Y', 'N', 'N', 'N', 'N', 'Y', NULL, NULL, NULL, NULL, NULL, NULL, 3, 10, 20, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL); diff --git a/interface/web/mail/form/mail_spamfilter.tform.php b/interface/web/mail/form/mail_spamfilter.tform.php index fb9a3c311b..d726a3eb74 100644 --- a/interface/web/mail/form/mail_spamfilter.tform.php +++ b/interface/web/mail/form/mail_spamfilter.tform.php @@ -114,7 +114,7 @@ $form["tabs"]['spamfilter'] = array ( 1 => array( 'event' => 'SAVE', 'type' => 'STRIPNL') ), - 'default' => '***SPAM***', + 'default' => '***SPAM*** ', 'value' => '', 'width' => '30', 'maxlength' => '255' -- GitLab From 1a5608d1320160e55e665146cfba6d8119199e59 Mon Sep 17 00:00:00 2001 From: Till Brehm <tbrehm@ispconfig.org> Date: Thu, 4 Jul 2019 18:07:18 +0200 Subject: [PATCH 078/215] Implemented #5330 Limit available PHP Handlers globally in ISPConfig UI --- install/tpl/system.ini.master | 1 + interface/lib/classes/tform_base.inc.php | 123 ++++++++++-------- .../web/admin/form/system_config.tform.php | 10 ++ .../web/admin/lib/lang/de_system_config.lng | 1 + .../web/admin/lib/lang/en_system_config.lng | 1 + .../web/admin/lib/lang/es_system_config.lng | 1 + .../templates/server_config_web_edit.htm | 2 +- .../templates/system_config_sites_edit.htm | 6 + interface/web/client/form/client.tform.php | 2 +- .../web/client/form/client_template.tform.php | 2 +- interface/web/client/form/reseller.tform.php | 1 + .../web/sites/form/web_vhost_domain.tform.php | 2 +- 12 files changed, 94 insertions(+), 58 deletions(-) diff --git a/install/tpl/system.ini.master b/install/tpl/system.ini.master index 42a003b9c1..c916a62547 100644 --- a/install/tpl/system.ini.master +++ b/install/tpl/system.ini.master @@ -33,6 +33,7 @@ vhost_aliasdomains=n client_username_web_check_disabled=n backups_include_into_web_quota=n reseller_can_use_options=n +web_php_options=no,fast-cgi,mod,php-fpm [tools] diff --git a/interface/lib/classes/tform_base.inc.php b/interface/lib/classes/tform_base.inc.php index 36de1371ab..e6174d2da7 100644 --- a/interface/lib/classes/tform_base.inc.php +++ b/interface/lib/classes/tform_base.inc.php @@ -336,69 +336,84 @@ class tform_base { } //* If the parameter 'valuelimit' is set - function applyValueLimit($limit, $values) { + function applyValueLimit($limit, $values, $current_value = '') { global $app; + + // we mas have multiple limits, therefore we explode by ; first + // Example: "system:sites:web_php_options;client:web_php_options" + $limits = explode(';',$limit); + + + foreach($limits as $limit) { - $limit_parts = explode(':', $limit); + $limit_parts = explode(':', $limit); - //* values are limited to a comma separated list - if($limit_parts[0] == 'list') { - $allowed = explode(',', $limit_parts[1]); - } - - //* values are limited to a field in the client settings - if($limit_parts[0] == 'client') { - if($_SESSION["s"]["user"]["typ"] == 'admin') { - return $values; - } else { - $client_group_id = $_SESSION["s"]["user"]["default_group"]; - $client = $app->db->queryOneRecord("SELECT ".$limit_parts[1]." as lm FROM sys_group, client WHERE sys_group.client_id = client.client_id and sys_group.groupid = ?", $client_group_id); - $allowed = explode(',', $client['lm']); + //* values are limited to a comma separated list + if($limit_parts[0] == 'list') { + $allowed = explode(',', $limit_parts[1]); } - } - //* values are limited to a field in the reseller settings - if($limit_parts[0] == 'reseller') { - if($_SESSION["s"]["user"]["typ"] == 'admin') { - return $values; - } else { - //* Get the limits of the client that is currently logged in - $client_group_id = $_SESSION["s"]["user"]["default_group"]; - $client = $app->db->queryOneRecord("SELECT parent_client_id FROM sys_group, client WHERE sys_group.client_id = client.client_id and sys_group.groupid = ?", $client_group_id); - //echo "SELECT parent_client_id FROM sys_group, client WHERE sys_group.client_id = client.client_id and sys_group.groupid = $client_group_id"; - //* If the client belongs to a reseller, we will check against the reseller Limit too - if($client['parent_client_id'] != 0) { - - //* first we need to know the groups of this reseller - $tmp = $app->db->queryOneRecord("SELECT userid, groups FROM sys_user WHERE client_id = ?", $client['parent_client_id']); - $reseller_groups = $tmp["groups"]; - $reseller_userid = $tmp["userid"]; - - // Get the limits of the reseller of the logged in client - $client_group_id = $_SESSION["s"]["user"]["default_group"]; - $reseller = $app->db->queryOneRecord("SELECT ".$limit_parts[1]." as lm FROM client WHERE client_id = ?", $client['parent_client_id']); - $allowed = explode(',', $reseller['lm']); - } else { + //* values are limited to a field in the client settings + if($limit_parts[0] == 'client') { + if($_SESSION["s"]["user"]["typ"] == 'admin') { return $values; + } else { + $client_group_id = $_SESSION["s"]["user"]["default_group"]; + $client = $app->db->queryOneRecord("SELECT ".$limit_parts[1]." as lm FROM sys_group, client WHERE sys_group.client_id = client.client_id and sys_group.groupid = ?", $client_group_id); + $allowed = explode(',', $client['lm']); } - } // end if admin - } // end if reseller - - //* values are limited to a field in the system settings - if($limit_parts[0] == 'system') { - $app->uses('getconf'); - $tmp_conf = $app->getconf->get_global_config($limit_parts[1]); - $tmp_key = $limit_parts[2]; - $allowed = $tmp_conf[$tmp_key]; - } + } + + //* values are limited to a field in the reseller settings + if($limit_parts[0] == 'reseller') { + if($_SESSION["s"]["user"]["typ"] == 'admin') { + return $values; + } else { + //* Get the limits of the client that is currently logged in + $client_group_id = $_SESSION["s"]["user"]["default_group"]; + $client = $app->db->queryOneRecord("SELECT parent_client_id FROM sys_group, client WHERE sys_group.client_id = client.client_id and sys_group.groupid = ?", $client_group_id); + //echo "SELECT parent_client_id FROM sys_group, client WHERE sys_group.client_id = client.client_id and sys_group.groupid = $client_group_id"; + //* If the client belongs to a reseller, we will check against the reseller Limit too + if($client['parent_client_id'] != 0) { + + //* first we need to know the groups of this reseller + $tmp = $app->db->queryOneRecord("SELECT userid, groups FROM sys_user WHERE client_id = ?", $client['parent_client_id']); + $reseller_groups = $tmp["groups"]; + $reseller_userid = $tmp["userid"]; + + // Get the limits of the reseller of the logged in client + $client_group_id = $_SESSION["s"]["user"]["default_group"]; + $reseller = $app->db->queryOneRecord("SELECT ".$limit_parts[1]." as lm FROM client WHERE client_id = ?", $client['parent_client_id']); + $allowed = explode(',', $reseller['lm']); + } else { + return $values; + } + } // end if admin + } // end if reseller + + //* values are limited to a field in the system settings + if($limit_parts[0] == 'system') { + $app->uses('getconf'); + $tmp_conf = $app->getconf->get_global_config($limit_parts[1]); + $tmp_key = $limit_parts[2]; + $allowed = $allowed = explode(',',$tmp_conf[$tmp_key]); + } + + // add the current value to the allowed array + $allowed[] = $current_value; + + // remove all values that are not allowed + $values_new = array(); + foreach($values as $key => $val) { + if(in_array($key, $allowed)) $values_new[$key] = $val; + } + + $values = $values_new; - $values_new = array(); - foreach($values as $key => $val) { - if(in_array($key, $allowed)) $values_new[$key] = $val; } - return $values_new; + return $values; } @@ -464,7 +479,7 @@ class tform_base { // If a limitation for the values is set if(isset($field['valuelimit']) && is_array($field["value"])) { - $field["value"] = $this->applyValueLimit($field['valuelimit'], $field["value"]); + $field["value"] = $this->applyValueLimit($field['valuelimit'], $field["value"], $val); } switch ($field['formtype']) { @@ -599,7 +614,7 @@ class tform_base { // If a limitation for the values is set if(isset($field['valuelimit']) && is_array($field["value"])) { - $field["value"] = $this->applyValueLimit($field['valuelimit'], $field["value"]); + $field["value"] = $this->applyValueLimit($field['valuelimit'], $field["value"], $field['default']); } switch ($field['formtype']) { diff --git a/interface/web/admin/form/system_config.tform.php b/interface/web/admin/form/system_config.tform.php index d718e4ef82..3fe7f0c7e3 100644 --- a/interface/web/admin/form/system_config.tform.php +++ b/interface/web/admin/form/system_config.tform.php @@ -200,6 +200,16 @@ $form["tabs"]['sites'] = array ( 'value' => '', 'name' => 'default_dbserver' ), + 'web_php_options' => array ( + 'datatype' => 'VARCHAR', + 'formtype' => 'CHECKBOXARRAY', + 'validators' => array ( 0 => array ( 'type' => 'NOTEMPTY', + 'errmsg'=> 'web_php_options_notempty'), + ), + 'default' => '', + 'separator' => ',', + 'value' => array('no' => 'Disabled', 'fast-cgi' => 'Fast-CGI', 'cgi' => 'CGI', 'mod' => 'Mod-PHP', 'suphp' => 'SuPHP', 'php-fpm' => 'PHP-FPM', 'hhvm' => 'HHVM') + ), //################################# // ENDE Datatable fields //################################# diff --git a/interface/web/admin/lib/lang/de_system_config.lng b/interface/web/admin/lib/lang/de_system_config.lng index 0771322ef9..59a3e8d111 100644 --- a/interface/web/admin/lib/lang/de_system_config.lng +++ b/interface/web/admin/lib/lang/de_system_config.lng @@ -89,4 +89,5 @@ $wb['ca_iodef_txt'] = 'iodef'; $wb['active_txt'] = 'Aktiv'; $wb['btn_save_txt'] = 'Speichern'; $wb['btn_cancel_txt'] = 'Abbrechen'; +$wb['web_php_options_txt'] = 'PHP Handler (Nur Apache)'; ?> diff --git a/interface/web/admin/lib/lang/en_system_config.lng b/interface/web/admin/lib/lang/en_system_config.lng index 29732e4169..ef34493c9d 100644 --- a/interface/web/admin/lib/lang/en_system_config.lng +++ b/interface/web/admin/lib/lang/en_system_config.lng @@ -92,4 +92,5 @@ $wb['ca_iodef_txt'] = 'iodef'; $wb['active_txt'] = 'Active'; $wb['btn_save_txt'] = 'Save'; $wb['btn_cancel_txt'] = 'Cancel'; +$wb['web_php_options_txt'] = 'PHP Handler (Apache only)'; ?> diff --git a/interface/web/admin/lib/lang/es_system_config.lng b/interface/web/admin/lib/lang/es_system_config.lng index 21575571f0..6dc07dfd5b 100755 --- a/interface/web/admin/lib/lang/es_system_config.lng +++ b/interface/web/admin/lib/lang/es_system_config.lng @@ -89,4 +89,5 @@ $wb['ca_iodef_txt'] = 'iodef'; $wb['active_txt'] = 'Aktive'; $wb['btn_save_txt'] = 'Save'; $wb['btn_cancel_txt'] = 'Cancel'; +$wb['web_php_options_txt'] = 'PHP Handler (Apache only)'; ?> diff --git a/interface/web/admin/templates/server_config_web_edit.htm b/interface/web/admin/templates/server_config_web_edit.htm index 8cc8dc4340..8231e45cb7 100644 --- a/interface/web/admin/templates/server_config_web_edit.htm +++ b/interface/web/admin/templates/server_config_web_edit.htm @@ -256,7 +256,7 @@ <div id="collapsePHP" class="panel-collapse collapse" role="tabpanel" aria-labelledby="headingPHP"> <div class="panel-body"> <!-- Begin content --> - <div class="form-group"> + <div class="form-group"> <label for="php_default_name" class="col-sm-3 control-label">{tmpl_var name='php_default_name_txt'}</label> <div class="col-sm-9"><input type="text" name="php_default_name" id="php_default_name" value="{tmpl_var name='php_default_name'}" class="form-control" /></div></div> <div class="form-group apache"> diff --git a/interface/web/admin/templates/system_config_sites_edit.htm b/interface/web/admin/templates/system_config_sites_edit.htm index 1c4c5c6f9a..a0f95e479a 100644 --- a/interface/web/admin/templates/system_config_sites_edit.htm +++ b/interface/web/admin/templates/system_config_sites_edit.htm @@ -63,6 +63,12 @@ {tmpl_var name='reseller_can_use_options'} </div> </div> + <div class="form-group"> + <label class="col-sm-3 control-label">{tmpl_var name='web_php_options_txt'}</label> + <div class="col-sm-9"> + {tmpl_var name='web_php_options'} + </div> + </div> <div class="form-group"> <label for="default_webserver" class="col-sm-3 control-label">{tmpl_var name='default_webserver_txt'}</label> <div class="col-sm-9"><select name="default_webserver" id="default_webserver" class="form-control"> diff --git a/interface/web/client/form/client.tform.php b/interface/web/client/form/client.tform.php index 151c5dc959..07ca813bf5 100644 --- a/interface/web/client/form/client.tform.php +++ b/interface/web/client/form/client.tform.php @@ -1087,7 +1087,7 @@ $form["tabs"]['limits'] = array ( ), 'default' => '', 'separator' => ',', - 'valuelimit' => 'client:web_php_options', + 'valuelimit' => 'system:sites:web_php_options', 'value' => array('no' => 'Disabled', 'fast-cgi' => 'Fast-CGI', 'cgi' => 'CGI', 'mod' => 'Mod-PHP', 'suphp' => 'SuPHP', 'php-fpm' => 'PHP-FPM', 'hhvm' => 'HHVM') ), 'limit_cgi' => array ( diff --git a/interface/web/client/form/client_template.tform.php b/interface/web/client/form/client_template.tform.php index 5d9f81de0b..1da5cdafcd 100644 --- a/interface/web/client/form/client_template.tform.php +++ b/interface/web/client/form/client_template.tform.php @@ -495,7 +495,7 @@ $form["tabs"]['limits'] = array ( 'formtype' => 'CHECKBOXARRAY', 'default' => '', 'separator' => ',', - 'valuelimit' => 'client:web_php_options', + 'valuelimit' => 'system:sites:web_php_options', 'value' => array('no' => 'Disabled', 'fast-cgi' => 'Fast-CGI', 'cgi' => 'CGI', 'mod' => 'Mod-PHP', 'suphp' => 'SuPHP', 'php-fpm' => 'PHP-FPM', 'hhvm' => 'HHVM') ), 'limit_cgi' => array ( diff --git a/interface/web/client/form/reseller.tform.php b/interface/web/client/form/reseller.tform.php index 706219f76a..6231895f28 100644 --- a/interface/web/client/form/reseller.tform.php +++ b/interface/web/client/form/reseller.tform.php @@ -1080,6 +1080,7 @@ $form["tabs"]['limits'] = array ( 'web_php_options' => array ( 'datatype' => 'VARCHAR', 'formtype' => 'CHECKBOXARRAY', + 'valuelimit' => 'system:sites:web_php_options', 'validators' => array ( 0 => array ( 'type' => 'NOTEMPTY', 'errmsg'=> 'web_php_options_notempty'), ), diff --git a/interface/web/sites/form/web_vhost_domain.tform.php b/interface/web/sites/form/web_vhost_domain.tform.php index e7698cbe87..e131a7cbaf 100644 --- a/interface/web/sites/form/web_vhost_domain.tform.php +++ b/interface/web/sites/form/web_vhost_domain.tform.php @@ -250,7 +250,7 @@ $form["tabs"]['domain'] = array ( 'datatype' => 'VARCHAR', 'formtype' => 'SELECT', 'default' => 'fast-cgi', - 'valuelimit' => 'client:web_php_options', + 'valuelimit' => 'system:sites:web_php_options;client:web_php_options', 'value' => array('no' => 'disabled_txt', 'fast-cgi' => 'Fast-CGI', 'cgi' => 'CGI', 'mod' => 'Mod-PHP', 'suphp' => 'SuPHP', 'php-fpm' => 'PHP-FPM', 'hhvm' => 'HHVM'), 'searchable' => 2 ), -- GitLab From 20bc613204d4973ab887010fb5202a599ae5b145 Mon Sep 17 00:00:00 2001 From: Till Brehm <tbrehm@ispconfig.org> Date: Thu, 4 Jul 2019 18:55:04 +0200 Subject: [PATCH 079/215] Fixed #5163 Databases still exists on reseller delete --- interface/web/client/reseller_del.php | 43 ++++++++++++++++++++++++++- 1 file changed, 42 insertions(+), 1 deletion(-) diff --git a/interface/web/client/reseller_del.php b/interface/web/client/reseller_del.php index 55872beabd..a77dc5659c 100644 --- a/interface/web/client/reseller_del.php +++ b/interface/web/client/reseller_del.php @@ -60,7 +60,48 @@ class page_action extends tform_actions { $client_id = $app->functions->intval($this->dataRecord['client_id']); $tmp = $app->db->queryOneRecord("SELECT count(client_id) as number FROM client WHERE parent_client_id = ?", $client_id); - if($tmp["number"] > 0) $app->error($app->lng('error_has_clients')); + if($tmp["number"] > 0) { + $app->error($app->lng('error_has_clients')); + } else { + $parent_client_id = $app->functions->intval($this->dataRecord['parent_client_id']); + $parent_user = $app->db->queryOneRecord("SELECT userid FROM sys_user WHERE client_id = ?", $parent_client_id); + $client_group = $app->db->queryOneRecord("SELECT groupid FROM sys_group WHERE client_id = ?", $client_id); + + // Delete all records (mail, web, etc....) of this reseller. + $tables = 'cron,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,spamfilter_wblist'; + $tables_array = explode(',', $tables); + $client_group_id = $app->functions->intval($client_group['groupid']); + if($client_group_id > 1) { + foreach($tables_array as $table) { + if($table != '') { + //* find the primary ID of the table + $table_info = $app->db->tableInfo($table); + $index_field = ''; + foreach($table_info as $tmp) { + if($tmp['option'] == 'primary') $index_field = $tmp['name']; + } + //* Delete the records + if($index_field != '') { + $records = $app->db->queryAllRecords("SELECT * FROM ?? WHERE sys_groupid = ? ORDER BY ?? DESC", $table, $client_group_id, $index_field); + if(is_array($records)) { + foreach($records as $rec) { + $app->db->datalogDelete($table, $index_field, $rec[$index_field]); + //* Delete traffic records that dont have a sys_groupid column + if($table == 'web_domain') { + $app->db->query("DELETE FROM web_traffic WHERE hostname = ?", $rec['domain']); + } + //* Delete mail_traffic records that dont have a sys_groupid + if($table == 'mail_user') { + $app->db->query("DELETE FROM mail_traffic WHERE mailuser_id = ?", $rec['mailuser_id']); + } + } + } + } + + } + } + } + } } -- GitLab From 568b977eadca233cd8d77aa7c17dc5a7af634b4e Mon Sep 17 00:00:00 2001 From: Florian Schaal <info@schaal-24.de> Date: Fri, 5 Jul 2019 07:22:17 +0200 Subject: [PATCH 080/215] nginx server listen ipv6 and ipv4 and SSL (Fixes #5190) --- server/conf/nginx_vhost.conf.master | 7 ++++++- server/plugins-available/nginx_plugin.inc.php | 1 + 2 files changed, 7 insertions(+), 1 deletion(-) diff --git a/server/conf/nginx_vhost.conf.master b/server/conf/nginx_vhost.conf.master index 63c9260354..c45ce0a98b 100644 --- a/server/conf/nginx_vhost.conf.master +++ b/server/conf/nginx_vhost.conf.master @@ -3,7 +3,9 @@ server { <tmpl_if name='ipv6_enabled'> listen [<tmpl_var name='ipv6_address'>]:<tmpl_var name='http_port'>; </tmpl_if> - +<tmpl_if name='ipv6_wildcard'> + listen [::]:<tmpl_var name='http_port'>; +</tmpl_if> <tmpl_if name='ssl_enabled'> listen <tmpl_var name='ip_address'>:<tmpl_var name='https_port'> ssl{tmpl_if name='enable_http2' op='==' value='y'} http2{/tmpl_if}{tmpl_if name='enable_spdy' op='==' value='y'} spdy{/tmpl_if}; ssl_protocols TLSv1 TLSv1.1 TLSv1.2; @@ -11,6 +13,9 @@ server { # ssl_prefer_server_ciphers on; <tmpl_if name='ipv6_enabled'> listen [<tmpl_var name='ipv6_address'>]:<tmpl_var name='https_port'> ssl{tmpl_if name='enable_http2' op='==' value='y'} http2{/tmpl_if}{tmpl_if name='enable_spdy' op='==' value='y'} spdy{/tmpl_if}; +</tmpl_if> +<tmpl_if name='ipv6_wildcard'> + listen [::]:<tmpl_var name='https_port'> ssl{tmpl_if name='enable_http2' op='==' value='y'} http2{/tmpl_if}{tmpl_if name='enable_spdy' op='==' value='y'} spdy{/tmpl_if}; </tmpl_if> ssl_certificate <tmpl_var name='ssl_crt_file'>; ssl_certificate_key <tmpl_var name='ssl_key_file'>; diff --git a/server/plugins-available/nginx_plugin.inc.php b/server/plugins-available/nginx_plugin.inc.php index 189a6f88ea..30f9501505 100644 --- a/server/plugins-available/nginx_plugin.inc.php +++ b/server/plugins-available/nginx_plugin.inc.php @@ -991,6 +991,7 @@ class nginx_plugin { } } } + if($data['new']['ip_address'] == '*' && $data['new']['ipv6_address'] == '') $tpl->setVar('ipv6_wildcard', 1); // PHP-FPM // Support for multiple PHP versions -- GitLab From d712ea46794aaf32f2c99fb97ac24a269ae042d6 Mon Sep 17 00:00:00 2001 From: Till Brehm <tbrehm@ispconfig.org> Date: Fri, 5 Jul 2019 10:56:27 +0200 Subject: [PATCH 081/215] Fixed #5146 disabled reseller still may login Fixed typo in SQL query. --- interface/web/client/reseller_edit.php | 120 ++++++++++++++++++++++++- 1 file changed, 119 insertions(+), 1 deletion(-) diff --git a/interface/web/client/reseller_edit.php b/interface/web/client/reseller_edit.php index a089558cab..59699ec163 100644 --- a/interface/web/client/reseller_edit.php +++ b/interface/web/client/reseller_edit.php @@ -222,7 +222,7 @@ class page_action extends tform_actions { $password = crypt(stripslashes($password), $salt); // Create the controlpaneluser for the reseller - $sql = "INSERT INTO sys_user (`username`,`passwort`,`modules`,`startmodule`,`app_theme`,`typ,active`,`language`,`groups`,`default_group`,`client_id`) + $sql = "INSERT INTO sys_user (`username`,`passwort`,`modules`,`startmodule`,`app_theme`,`typ`, `active`,`language`,`groups`,`default_group`,`client_id`) VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?)"; $app->db->query($sql, $username, $password, $modules, $startmodule, $usertheme, $type, $active, $language, $groups, $groupid, $this->id); @@ -368,6 +368,124 @@ class page_action extends tform_actions { $app->uses('client_templates'); $app->client_templates->update_client_templates($this->id, $this->_template_additional); } + + if(!isset($this->dataRecord['locked'])) $this->dataRecord['locked'] = 'n'; + if(isset($conf['demo_mode']) && $conf['demo_mode'] != true && $this->dataRecord["locked"] != $this->oldDataRecord['locked']) { + /** lock all the things like web, mail etc. - easy to extend */ + + + // get tmp_data of client + $client_data = $app->db->queryOneRecord('SELECT `tmp_data` FROM `client` WHERE `client_id` = ?', $this->id); + + if($client_data['tmp_data'] == '') $tmp_data = array(); + else $tmp_data = unserialize($client_data['tmp_data']); + + if(!is_array($tmp_data)) $tmp_data = array(); + + // database tables with their primary key columns + $to_disable = array('cron' => 'id', + 'ftp_user' => 'ftp_user_id', + 'mail_domain' => 'domain_id', + 'mail_user' => 'mailuser_id', + 'mail_user_smtp' => 'mailuser_id', + 'mail_forwarding' => 'forwarding_id', + 'mail_get' => 'mailget_id', + 'openvz_vm' => 'vm_id', + 'shell_user' => 'shell_user_id', + 'webdav_user' => 'webdav_user_id', + 'web_database' => 'database_id', + 'web_domain' => 'domain_id', + 'web_folder' => 'web_folder_id', + 'web_folder_user' => 'web_folder_user_id' + ); + + $udata = $app->db->queryOneRecord('SELECT `userid` FROM `sys_user` WHERE `client_id` = ?', $this->id); + $gdata = $app->db->queryOneRecord('SELECT `groupid` FROM `sys_group` WHERE `client_id` = ?', $this->id); + $sys_groupid = $gdata['groupid']; + $sys_userid = $udata['userid']; + + $entries = array(); + if($this->dataRecord['locked'] == 'y') { + $prev_active = array(); + $prev_sysuser = array(); + foreach($to_disable as $current => $keycolumn) { + $active_col = 'active'; + $reverse = false; + if($current == 'mail_user') { + $active_col = 'postfix'; + } elseif($current == 'mail_user_smtp') { + $current = 'mail_user'; + $active_col = 'disablesmtp'; + $reverse = true; + } + + if(!isset($prev_active[$current])) $prev_active[$current] = array(); + if(!isset($prev_sysuser[$current])) $prev_sysuser[$current] = array(); + + $entries = $app->db->queryAllRecords('SELECT ?? as `id`, `sys_userid`, ?? FROM ?? WHERE `sys_groupid` = ?', $keycolumn, $active_col, $current, $sys_groupid); + foreach($entries as $item) { + + if($item[$active_col] != 'y' && $reverse == false) $prev_active[$current][$item['id']][$active_col] = 'n'; + elseif($item[$active_col] == 'y' && $reverse == true) $prev_active[$current][$item['id']][$active_col] = 'y'; + if($item['sys_userid'] != $sys_userid) $prev_sysuser[$current][$item['id']] = $item['sys_userid']; + // we don't have to store these if y, as everything without previous state gets enabled later + + $app->db->datalogUpdate($current, array($active_col => ($reverse == true ? 'y' : 'n'), 'sys_userid' => $_SESSION["s"]["user"]["userid"]), $keycolumn, $item['id']); + } + } + + $tmp_data['prev_active'] = $prev_active; + $tmp_data['prev_sys_userid'] = $prev_sysuser; + $app->db->query("UPDATE `client` SET `tmp_data` = ? WHERE `client_id` = ?", serialize($tmp_data), $this->id); + unset($prev_active); + unset($prev_sysuser); + } elseif($this->dataRecord['locked'] == 'n') { + foreach($to_disable as $current => $keycolumn) { + $active_col = 'active'; + $reverse = false; + if($current == 'mail_user') { + $active_col = 'postfix'; + } elseif($current == 'mail_user_smtp') { + $current = 'mail_user'; + $active_col = 'disablesmtp'; + $reverse = true; + } + + $entries = $app->db->queryAllRecords('SELECT ?? as `id` FROM ?? WHERE `sys_groupid` = ?', $keycolumn, $current, $sys_groupid); + foreach($entries as $item) { + $set_active = ($reverse == true ? 'n' : 'y'); + $set_inactive = ($reverse == true ? 'y' : 'n'); + $set_sysuser = $sys_userid; + if(array_key_exists('prev_active', $tmp_data) == true + && array_key_exists($current, $tmp_data['prev_active']) == true + && array_key_exists($item['id'], $tmp_data['prev_active'][$current]) == true + && $tmp_data['prev_active'][$current][$item['id']][$active_col] == $set_inactive) $set_active = $set_inactive; + if(array_key_exists('prev_sysuser', $tmp_data) == true + && array_key_exists($current, $tmp_data['prev_sysuser']) == true + && array_key_exists($item['id'], $tmp_data['prev_sysuser'][$current]) == true + && $tmp_data['prev_sysuser'][$current][$item['id']] != $sys_userid) $set_sysuser = $tmp_data['prev_sysuser'][$current][$item['id']]; + + $app->db->datalogUpdate($current, array($active_col => $set_active, 'sys_userid' => $set_sysuser), $keycolumn, $item['id']); + } + } + if(array_key_exists('prev_active', $tmp_data)) unset($tmp_data['prev_active']); + $app->db->query("UPDATE `client` SET `tmp_data` = ? WHERE `client_id` = ?", serialize($tmp_data), $this->id); + } + unset($tmp_data); + unset($entries); + unset($to_disable); + } + + if(!isset($this->dataRecord['canceled'])) $this->dataRecord['canceled'] = 'n'; + if(isset($conf['demo_mode']) && $conf['demo_mode'] != true && $this->dataRecord["canceled"] != $this->oldDataRecord['canceled']) { + if($this->dataRecord['canceled'] == 'y') { + $sql = "UPDATE sys_user SET active = '0' WHERE client_id = ?"; + $app->db->query($sql, $this->id); + } elseif($this->dataRecord['canceled'] == 'n') { + $sql = "UPDATE sys_user SET active = '1' WHERE client_id = ?"; + $app->db->query($sql, $this->id); + } + } parent::onAfterUpdate(); } -- GitLab From b7ee5f0edfeb64382cd7580edffe9e760b58e27f Mon Sep 17 00:00:00 2001 From: Till Brehm <tbrehm@ispconfig.org> Date: Fri, 5 Jul 2019 12:15:57 +0200 Subject: [PATCH 082/215] Fixed #5331 Disallow 0 as website harddisk quota value --- interface/web/sites/lib/lang/de_web_vhost_domain.lng | 1 + interface/web/sites/lib/lang/en_web_vhost_domain.lng | 1 + interface/web/sites/web_vhost_domain_edit.php | 5 +++++ 3 files changed, 7 insertions(+) diff --git a/interface/web/sites/lib/lang/de_web_vhost_domain.lng b/interface/web/sites/lib/lang/de_web_vhost_domain.lng index 1b334bb298..d95b6d47e4 100644 --- a/interface/web/sites/lib/lang/de_web_vhost_domain.lng +++ b/interface/web/sites/lib/lang/de_web_vhost_domain.lng @@ -152,4 +152,5 @@ $wb['https_port_error_regex'] = 'HTTPS Port invalid.'; $wb['enable_pagespeed_txt'] = 'Enable PageSpeed'; $wb['log_retention_txt'] = 'Log-Dateien Aufbewahrungszeit'; $wb['log_retention_error_regex'] = 'Aufbewahrungszeit in Tagen (Erlaubte Werte: min. 0 - max. 9999)'; +$wb['limit_web_quota_not_0_txt'] = 'Harddisk Quota kann nicht 0 sein.'; ?> 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 97d1c932ca..ae546e1c4d 100644 --- a/interface/web/sites/lib/lang/en_web_vhost_domain.lng +++ b/interface/web/sites/lib/lang/en_web_vhost_domain.lng @@ -157,4 +157,5 @@ $wb['https_port_error_regex'] = 'HTTPS Port invalid.'; $wb['enable_pagespeed_txt'] = 'Enable PageSpeed'; $wb['log_retention_txt'] = 'Logfiles retention time'; $wb['log_retention_error_regex'] = 'Retention time in days (allowed values: min. 0 - max. 9999)'; +$wb['limit_web_quota_not_0_txt'] = 'Harddisk Quota cannot be set to 0.'; ?> diff --git a/interface/web/sites/web_vhost_domain_edit.php b/interface/web/sites/web_vhost_domain_edit.php index 3d6ecc6fb8..86deb5b2a5 100644 --- a/interface/web/sites/web_vhost_domain_edit.php +++ b/interface/web/sites/web_vhost_domain_edit.php @@ -1065,6 +1065,11 @@ class page_action extends tform_actions { } if($this->_vhostdomain_type == 'domain') { + //* ensure that quota value is not 0 when vhost type = domain + if(isset($_POST["hd_quota"]) && $_POST["hd_quota"] == 0) { + $app->tform->errorMessage .= $app->tform->lng("limit_web_quota_not_0_txt")."<br>"; + } + //* Check the website quota of the client if(isset($_POST["hd_quota"]) && $client["limit_web_quota"] >= 0 && $_POST["hd_quota"] != $old_web_values["hd_quota"]) { $tmp = $app->db->queryOneRecord("SELECT sum(hd_quota) as webquota FROM web_domain WHERE domain_id != ? AND type = 'vhost' AND ".$app->tform->getAuthSQL('u'), $this->id); -- GitLab From 3d4127ad47daf52cc1a8e914638e75f36341fd59 Mon Sep 17 00:00:00 2001 From: Marius Burkard <m.burkard@pixcept.de> Date: Fri, 5 Jul 2019 14:41:55 +0200 Subject: [PATCH 083/215] - fix problem with tls version on STARTTLS in mail class --- interface/lib/classes/ispcmail.inc.php | 8 +++++++- server/lib/classes/ispcmail.inc.php | 8 +++++++- 2 files changed, 14 insertions(+), 2 deletions(-) diff --git a/interface/lib/classes/ispcmail.inc.php b/interface/lib/classes/ispcmail.inc.php index b818e1e44a..522fd1a71b 100644 --- a/interface/lib/classes/ispcmail.inc.php +++ b/interface/lib/classes/ispcmail.inc.php @@ -599,10 +599,16 @@ class ispcmail { fputs($this->_smtp_conn, 'STARTTLS' . $this->_crlf); fgets($this->_smtp_conn, 515); + $crypto_method = STREAM_CRYPTO_METHOD_TLS_CLIENT; + + if (defined('STREAM_CRYPTO_METHOD_TLSv1_2_CLIENT')) { + $crypto_method |= STREAM_CRYPTO_METHOD_TLSv1_2_CLIENT; + $crypto_method |= STREAM_CRYPTO_METHOD_TLSv1_1_CLIENT; + } stream_context_set_option($this->_smtp_conn, 'ssl', 'verify_host', false); stream_context_set_option($this->_smtp_conn, 'ssl', 'verify_peer', false); stream_context_set_option($this->_smtp_conn, 'ssl', 'allow_self_signed', true); - stream_socket_enable_crypto($this->_smtp_conn, true, STREAM_CRYPTO_METHOD_TLS_CLIENT); + stream_socket_enable_crypto($this->_smtp_conn, true, $crypto_method); } //AUTH LOGIN diff --git a/server/lib/classes/ispcmail.inc.php b/server/lib/classes/ispcmail.inc.php index 305b39f35b..cc83c74137 100644 --- a/server/lib/classes/ispcmail.inc.php +++ b/server/lib/classes/ispcmail.inc.php @@ -598,7 +598,13 @@ class ispcmail { if($this->smtp_crypt == 'tls') { fputs($this->_smtp_conn, 'STARTTLS' . $this->_crlf); fgets($this->_smtp_conn, 515); - stream_socket_enable_crypto($this->_smtp_conn, true, STREAM_CRYPTO_METHOD_TLS_CLIENT); + $crypto_method = STREAM_CRYPTO_METHOD_TLS_CLIENT; + + if (defined('STREAM_CRYPTO_METHOD_TLSv1_2_CLIENT')) { + $crypto_method |= STREAM_CRYPTO_METHOD_TLSv1_2_CLIENT; + $crypto_method |= STREAM_CRYPTO_METHOD_TLSv1_1_CLIENT; + } + stream_socket_enable_crypto($this->_smtp_conn, true, $crypto_method); } //AUTH LOGIN -- GitLab From c31703b89585c255153631cacbab4a935009fdfd Mon Sep 17 00:00:00 2001 From: Till Brehm <tbrehm@ispconfig.org> Date: Fri, 5 Jul 2019 16:23:29 +0200 Subject: [PATCH 084/215] Implements #5007 Remove SSL bundle files if present on an apache 2.4 server --- server/conf/vhost.conf.master | 8 ++++---- server/plugins-available/apache2_plugin.inc.php | 5 +++-- 2 files changed, 7 insertions(+), 6 deletions(-) diff --git a/server/conf/vhost.conf.master b/server/conf/vhost.conf.master index a259c29906..ee7dcac076 100644 --- a/server/conf/vhost.conf.master +++ b/server/conf/vhost.conf.master @@ -75,15 +75,15 @@ # </IfModule> SSLCertificateFile <tmpl_var name='ssl_crt_file'> SSLCertificateKeyFile <tmpl_var name='ssl_key_file'> -<tmpl_if name='has_bundle_cert'> - <tmpl_if name='apache_version' op='<' value='2.4.8' format='version'> - SSLCertificateChainFile <tmpl_var name='ssl_bundle_file'> - </tmpl_if> <tmpl_if name='apache_version' op='>=' value='2.4' format='version'> SSLUseStapling on SSLStaplingResponderTimeout 5 SSLStaplingReturnResponderErrors off </tmpl_if> +<tmpl_if name='has_bundle_cert'> + <tmpl_if name='apache_version' op='<' value='2.4.8' format='version'> + SSLCertificateChainFile <tmpl_var name='ssl_bundle_file'> + </tmpl_if> </tmpl_if> </tmpl_if> </IfModule> diff --git a/server/plugins-available/apache2_plugin.inc.php b/server/plugins-available/apache2_plugin.inc.php index 3aa851f649..6fa3101ed7 100644 --- a/server/plugins-available/apache2_plugin.inc.php +++ b/server/plugins-available/apache2_plugin.inc.php @@ -1223,8 +1223,9 @@ class apache2_plugin { $app->dbmaster->query("UPDATE web_domain SET `ssl` = ?, `ssl_letsencrypt` = ? WHERE `domain` = ? AND `server_id` = ?", $data['new']['ssl'], 'n', $data['new']['domain'], $conf['server_id']); } } - - if(@is_file($bundle_file)) $vhost_data['has_bundle_cert'] = 1; + + // Use separate bundle file only for apache versions < 2.4.8 + if(@is_file($bundle_file) && version_compare($app->system->getapacheversion(true), '2.4.8', '<')) $vhost_data['has_bundle_cert'] = 1; // HTTP/2.0 ? $vhost_data['enable_http2'] = 'n'; -- GitLab From 3b0f4a4d8c30bc5c558b60147fbed0179d836ecf Mon Sep 17 00:00:00 2001 From: Till Brehm <tbrehm@ispconfig.org> Date: Fri, 5 Jul 2019 18:28:08 +0200 Subject: [PATCH 085/215] Added PHP-FPM Restart mode. See System > Interface config > Web > PHP-FPM reload mode. Fixes #4816 --- install/tpl/server.ini.master | 1 + .../web/admin/form/server_config.tform.php | 8 ++++++ .../web/admin/lib/lang/de_server_config.lng | 1 + .../web/admin/lib/lang/en_server_config.lng | 1 + .../templates/server_config_web_edit.htm | 6 +++++ .../plugins-available/apache2_plugin.inc.php | 27 ++++++++++++------- 6 files changed, 34 insertions(+), 10 deletions(-) diff --git a/install/tpl/server.ini.master b/install/tpl/server.ini.master index 406881010e..6441609cab 100644 --- a/install/tpl/server.ini.master +++ b/install/tpl/server.ini.master @@ -116,6 +116,7 @@ overquota_db_notify_admin=y overquota_db_notify_client=y overquota_notify_onok=n logging=yes +php_fpm_reload_mode=reload [dns] bind_user=root diff --git a/interface/web/admin/form/server_config.tform.php b/interface/web/admin/form/server_config.tform.php index e0cf897abd..1a6c8070cb 100644 --- a/interface/web/admin/form/server_config.tform.php +++ b/interface/web/admin/form/server_config.tform.php @@ -1376,6 +1376,14 @@ $form["tabs"]['web'] = array( 1 => 'y' ) ), + 'php_fpm_reload_mode' => array( + 'datatype' => 'VARCHAR', + 'formtype' => 'SELECT', + 'default' => 'reload', + 'value' => array('reload' => 'Reload', 'restart' => 'Restart'), + 'width' => '40', + 'maxlength' => '255' + ), //################################# // ENDE Datatable fields //################################# diff --git a/interface/web/admin/lib/lang/de_server_config.lng b/interface/web/admin/lib/lang/de_server_config.lng index 73c6609a1a..108bf96de8 100644 --- a/interface/web/admin/lib/lang/de_server_config.lng +++ b/interface/web/admin/lib/lang/de_server_config.lng @@ -295,4 +295,5 @@ $wb['log_retention_error_ispositive'] = 'Log retention must be a number > 0'; $wb['php_default_name_txt'] = 'Beschreibung Standard PHP'; $wb['php_default_name_error_empty'] = 'Beschreibung Standard PHP ist leer.'; $wb['error_mailbox_message_size_txt'] = 'Mailboxgröße muss gleich oder größer als max. Nachrichtengröße sein.'; +$wb['php_fpm_reload_mode_txt'] = 'PHP-FPM reload Modus'; ?> diff --git a/interface/web/admin/lib/lang/en_server_config.lng b/interface/web/admin/lib/lang/en_server_config.lng index 7ca9967922..ac0ee42b90 100644 --- a/interface/web/admin/lib/lang/en_server_config.lng +++ b/interface/web/admin/lib/lang/en_server_config.lng @@ -296,4 +296,5 @@ $wb['log_retention_error_ispositive'] = 'Log retention must be a number > 0'; $wb['php_default_name_txt'] = 'Description Default PHP-Version'; $wb['php_default_name_error_empty'] = 'Description Default PHP-Version must not be empty'; $wb['error_mailbox_message_size_txt'] = 'Mailbox size must be larger or equal to message size'; +$wb['php_fpm_reload_mode_txt'] = 'PHP-FPM reload mode'; ?> diff --git a/interface/web/admin/templates/server_config_web_edit.htm b/interface/web/admin/templates/server_config_web_edit.htm index 8231e45cb7..eb285bbc07 100644 --- a/interface/web/admin/templates/server_config_web_edit.htm +++ b/interface/web/admin/templates/server_config_web_edit.htm @@ -299,6 +299,12 @@ {tmpl_var name='php_fpm_incron_reload'} </div> </div> + <div class="form-group"> + <label class="col-sm-3 control-label">{tmpl_var name='php_fpm_reload_mode_txt'}</label> + <div class="col-sm-9"><select name="php_fpm_reload_mode" id="php_fpm_reload_mode" class="form-control"> + {tmpl_var name='php_fpm_reload_mode'} + </select></div> + </div> <!-- End content --> </div> </div> diff --git a/server/plugins-available/apache2_plugin.inc.php b/server/plugins-available/apache2_plugin.inc.php index 6fa3101ed7..7ecbb76109 100644 --- a/server/plugins-available/apache2_plugin.inc.php +++ b/server/plugins-available/apache2_plugin.inc.php @@ -3058,6 +3058,8 @@ class apache2_plugin { $app->uses("getconf"); $web_config = $app->getconf->get_server_config($conf["server_id"], 'web'); + + $php_fpm_reload_mode = ($web_config['php_fpm_reload_mode'] == 'reload')?'reload':'restart'; if($data['new']['php'] != 'php-fpm'){ if(@is_file($pool_dir.$pool_name.'.conf')){ @@ -3066,9 +3068,9 @@ class apache2_plugin { } if($data['old']['php'] == 'php-fpm'){ if(!$default_php_fpm){ - $app->services->restartService('php-fpm', 'reload:'.$custom_php_fpm_init_script); + $app->services->restartService('php-fpm', $php_fpm_reload_mode.':'.$custom_php_fpm_init_script); } else { - $app->services->restartService('php-fpm', 'reload:'.$conf['init_scripts'].'/'.$web_config['php_fpm_init_script']); + $app->services->restartService('php-fpm', $php_fpm_reload_mode.':'.$conf['init_scripts'].'/'.$web_config['php_fpm_init_script']); } } //if($reload == true) $app->services->restartService('php-fpm','reload'); @@ -3205,7 +3207,7 @@ class apache2_plugin { if ( @is_file($default_pool_dir.$pool_name.'.conf') ) { $app->system->unlink($default_pool_dir.$pool_name.'.conf'); $app->log('Removed PHP-FPM config file: '.$default_pool_dir.$pool_name.'.conf', LOGLEVEL_DEBUG); - $app->services->restartService('php-fpm', 'reload:'.$conf['init_scripts'].'/'.$web_config['php_fpm_init_script']); + $app->services->restartService('php-fpm', $php_fpm_reload_mode.':'.$conf['init_scripts'].'/'.$web_config['php_fpm_init_script']); } } $php_versions = $app->db->queryAllRecords("SELECT * FROM server_php WHERE php_fpm_init_script != '' AND php_fpm_ini_dir != '' AND php_fpm_pool_dir != '' AND server_id = ?", $conf["server_id"]); @@ -3217,7 +3219,7 @@ class apache2_plugin { if ( @is_file($php_version['php_fpm_pool_dir'].$pool_name.'.conf') ) { $app->system->unlink($php_version['php_fpm_pool_dir'].$pool_name.'.conf'); $app->log('Removed PHP-FPM config file: '.$php_version['php_fpm_pool_dir'].$pool_name.'.conf', LOGLEVEL_DEBUG); - $app->services->restartService('php-fpm', 'reload:'.$php_version['php_fpm_init_script']); + $app->services->restartService('php-fpm', $php_fpm_reload_mode.':'.$php_version['php_fpm_init_script']); } } } @@ -3225,9 +3227,9 @@ class apache2_plugin { // Reload current PHP-FPM after all others sleep(1); if(!$default_php_fpm){ - $app->services->restartService('php-fpm', 'reload:'.$custom_php_fpm_init_script); + $app->services->restartService('php-fpm', $php_fpm_reload_mode.':'.$custom_php_fpm_init_script); } else { - $app->services->restartService('php-fpm', 'reload:'.$conf['init_scripts'].'/'.$web_config['php_fpm_init_script']); + $app->services->restartService('php-fpm', $php_fpm_reload_mode.':'.$conf['init_scripts'].'/'.$web_config['php_fpm_init_script']); } //$reload = true; @@ -3238,6 +3240,11 @@ class apache2_plugin { //* Delete the PHP-FPM pool configuration file private function php_fpm_pool_delete ($data, $web_config) { global $app, $conf; + + $app->uses("getconf"); + $web_config = $app->getconf->get_server_config($conf["server_id"], 'web'); + + $php_fpm_reload_mode = ($web_config['php_fpm_reload_mode'] == 'reload')?'reload':'restart'; if(trim($data['old']['fastcgi_php_version']) != '' && $data['old']['php'] == 'php-fpm'){ $default_php_fpm = false; @@ -3271,7 +3278,7 @@ class apache2_plugin { if ( @is_file($default_pool_dir.$pool_name.'.conf') ) { $app->system->unlink($default_pool_dir.$pool_name.'.conf'); $app->log('Removed PHP-FPM config file: '.$default_pool_dir.$pool_name.'.conf', LOGLEVEL_DEBUG); - $app->services->restartService('php-fpm', 'reload:'.$conf['init_scripts'].'/'.$web_config['php_fpm_init_script']); + $app->services->restartService('php-fpm', $php_fpm_reload_mode.':'.$conf['init_scripts'].'/'.$web_config['php_fpm_init_script']); } } $php_versions = $app->db->queryAllRecords("SELECT * FROM server_php WHERE php_fpm_init_script != '' AND php_fpm_ini_dir != '' AND php_fpm_pool_dir != '' AND server_id = ?", $data['old']['server_id']); @@ -3283,7 +3290,7 @@ class apache2_plugin { if ( @is_file($php_version['php_fpm_pool_dir'].$pool_name.'.conf') ) { $app->system->unlink($php_version['php_fpm_pool_dir'].$pool_name.'.conf'); $app->log('Removed PHP-FPM config file: '.$php_version['php_fpm_pool_dir'].$pool_name.'.conf', LOGLEVEL_DEBUG); - $app->services->restartService('php-fpm', 'reload:'.$php_version['php_fpm_init_script']); + $app->services->restartService('php-fpm', $php_fpm_reload_mode.':'.$php_version['php_fpm_init_script']); } } } @@ -3292,9 +3299,9 @@ class apache2_plugin { // Reload current PHP-FPM after all others sleep(1); if(!$default_php_fpm){ - $app->services->restartService('php-fpm', 'reload:'.$custom_php_fpm_init_script); + $app->services->restartService('php-fpm', $php_fpm_reload_mode.':'.$custom_php_fpm_init_script); } else { - $app->services->restartService('php-fpm', 'reload:'.$conf['init_scripts'].'/'.$web_config['php_fpm_init_script']); + $app->services->restartService('php-fpm', $php_fpm_reload_mode.':'.$conf['init_scripts'].'/'.$web_config['php_fpm_init_script']); } } -- GitLab From 9545334c5a54215d0c8c1aba8cee776a9a090d30 Mon Sep 17 00:00:00 2001 From: Till Brehm <tbrehm@ispconfig.org> Date: Fri, 5 Jul 2019 18:35:55 +0200 Subject: [PATCH 086/215] Merged language files --- .../web/admin/lib/lang/ar_server_config.lng | 1 + .../web/admin/lib/lang/ar_server_php_list.lng | 1 + .../web/admin/lib/lang/ar_system_config.lng | 3 ++- .../web/admin/lib/lang/bg_server_config.lng | 1 + .../web/admin/lib/lang/bg_server_php_list.lng | 1 + .../web/admin/lib/lang/bg_system_config.lng | 3 ++- .../web/admin/lib/lang/br_server_config.lng | 2 ++ .../web/admin/lib/lang/br_server_php_list.lng | 1 + .../web/admin/lib/lang/br_system_config.lng | 13 +++------- .../web/admin/lib/lang/ca_server_config.lng | 1 + .../web/admin/lib/lang/ca_server_php_list.lng | 1 + .../web/admin/lib/lang/ca_system_config.lng | 3 ++- .../web/admin/lib/lang/cz_server_config.lng | 3 ++- .../web/admin/lib/lang/cz_server_php_list.lng | 1 + .../web/admin/lib/lang/cz_system_config.lng | 3 ++- .../web/admin/lib/lang/de_system_config.lng | 2 +- .../web/admin/lib/lang/dk_server_config.lng | 1 + .../web/admin/lib/lang/dk_server_php_list.lng | 1 + .../web/admin/lib/lang/dk_system_config.lng | 3 ++- .../web/admin/lib/lang/el_server_config.lng | 1 + .../web/admin/lib/lang/el_server_php_list.lng | 1 + .../web/admin/lib/lang/el_system_config.lng | 3 ++- .../web/admin/lib/lang/es_server_config.lng | 1 + .../web/admin/lib/lang/es_server_php_list.lng | 1 + .../web/admin/lib/lang/es_system_config.lng | 2 +- .../web/admin/lib/lang/fi_server_config.lng | 1 + .../web/admin/lib/lang/fi_server_php_list.lng | 1 + .../web/admin/lib/lang/fi_system_config.lng | 3 ++- .../web/admin/lib/lang/fr_server_config.lng | 1 + .../web/admin/lib/lang/fr_server_php_list.lng | 1 + .../web/admin/lib/lang/fr_system_config.lng | 3 ++- .../web/admin/lib/lang/hr_server_config.lng | 1 + .../web/admin/lib/lang/hr_server_php_list.lng | 1 + .../web/admin/lib/lang/hr_system_config.lng | 3 ++- .../web/admin/lib/lang/hu_server_config.lng | 1 + .../web/admin/lib/lang/hu_server_php_list.lng | 1 + .../web/admin/lib/lang/hu_system_config.lng | 3 ++- .../web/admin/lib/lang/id_server_config.lng | 1 + .../web/admin/lib/lang/id_server_php_list.lng | 1 + .../web/admin/lib/lang/id_system_config.lng | 3 ++- .../web/admin/lib/lang/it_server_config.lng | 1 + .../web/admin/lib/lang/it_server_php_list.lng | 1 + .../web/admin/lib/lang/it_system_config.lng | 3 ++- .../web/admin/lib/lang/ja_server_config.lng | 1 + .../web/admin/lib/lang/ja_server_php_list.lng | 1 + .../web/admin/lib/lang/ja_system_config.lng | 3 ++- .../web/admin/lib/lang/nl_server_config.lng | 1 + .../web/admin/lib/lang/nl_server_php_list.lng | 1 + .../web/admin/lib/lang/nl_system_config.lng | 3 ++- .../web/admin/lib/lang/pl_server_config.lng | 1 + .../web/admin/lib/lang/pl_server_php_list.lng | 1 + .../web/admin/lib/lang/pl_system_config.lng | 3 ++- .../web/admin/lib/lang/pt_server_config.lng | 1 + .../web/admin/lib/lang/pt_server_php_list.lng | 1 + .../web/admin/lib/lang/pt_system_config.lng | 3 ++- .../web/admin/lib/lang/ro_server_config.lng | 1 + .../web/admin/lib/lang/ro_server_php_list.lng | 1 + .../web/admin/lib/lang/ro_system_config.lng | 3 ++- interface/web/admin/lib/lang/ru_firewall.lng | 4 +-- .../web/admin/lib/lang/ru_server_config.lng | 3 ++- .../web/admin/lib/lang/ru_server_php_list.lng | 1 + .../web/admin/lib/lang/ru_system_config.lng | 15 +++-------- interface/web/admin/lib/lang/ru_users.lng | 2 +- .../web/admin/lib/lang/se_server_config.lng | 1 + .../web/admin/lib/lang/se_server_php_list.lng | 1 + .../web/admin/lib/lang/se_system_config.lng | 3 ++- .../web/admin/lib/lang/sk_server_config.lng | 1 + .../web/admin/lib/lang/sk_server_php_list.lng | 1 + .../web/admin/lib/lang/sk_system_config.lng | 3 ++- .../web/admin/lib/lang/tr_server_config.lng | 1 + .../web/admin/lib/lang/tr_server_php_list.lng | 1 + .../web/admin/lib/lang/tr_system_config.lng | 3 ++- .../lib/lang/ar_client_template_list.lng | 1 + .../lib/lang/bg_client_template_list.lng | 1 + interface/web/client/lib/lang/br_client.lng | 2 +- .../client/lib/lang/br_client_template.lng | 2 +- .../lib/lang/br_client_template_list.lng | 1 + .../lib/lang/ca_client_template_list.lng | 1 + .../lib/lang/cz_client_template_list.lng | 1 + .../lib/lang/de_client_template_list.lng | 2 +- .../lib/lang/dk_client_template_list.lng | 1 + .../lib/lang/el_client_template_list.lng | 1 + .../lib/lang/es_client_template_list.lng | 1 + .../lib/lang/fi_client_template_list.lng | 1 + .../lib/lang/fr_client_template_list.lng | 1 + .../lib/lang/hr_client_template_list.lng | 1 + .../lib/lang/hu_client_template_list.lng | 1 + .../lib/lang/id_client_template_list.lng | 1 + .../lib/lang/it_client_template_list.lng | 1 + .../lib/lang/ja_client_template_list.lng | 1 + .../lib/lang/nl_client_template_list.lng | 1 + .../lib/lang/pl_client_template_list.lng | 1 + .../lib/lang/pt_client_template_list.lng | 1 + .../lib/lang/ro_client_template_list.lng | 1 + interface/web/client/lib/lang/ru_client.lng | 4 +-- .../lib/lang/ru_client_template_list.lng | 1 + interface/web/client/lib/lang/ru_reseller.lng | 4 +-- .../lib/lang/se_client_template_list.lng | 1 + .../lib/lang/sk_client_template_list.lng | 1 + .../lib/lang/tr_client_template_list.lng | 1 + interface/web/dns/lib/lang/ar_dns_caa.lng | 2 +- interface/web/dns/lib/lang/bg_dns_caa.lng | 2 +- interface/web/dns/lib/lang/br_dns_caa.lng | 2 +- interface/web/dns/lib/lang/br_dns_dmarc.lng | 10 +++---- interface/web/dns/lib/lang/br_dns_tlsa.lng | 4 +-- interface/web/dns/lib/lang/ca_dns_caa.lng | 2 +- interface/web/dns/lib/lang/cz_dns_caa.lng | 2 +- interface/web/dns/lib/lang/de_dns_caa.lng | 2 +- interface/web/dns/lib/lang/dk_dns_caa.lng | 2 +- interface/web/dns/lib/lang/el_dns_caa.lng | 2 +- interface/web/dns/lib/lang/es_dns_caa.lng | 2 +- interface/web/dns/lib/lang/fi_dns_caa.lng | 2 +- interface/web/dns/lib/lang/fr_dns_caa.lng | 2 +- interface/web/dns/lib/lang/hr_dns_caa.lng | 2 +- interface/web/dns/lib/lang/hu_dns_caa.lng | 2 +- interface/web/dns/lib/lang/id_dns_caa.lng | 2 +- interface/web/dns/lib/lang/it_dns_caa.lng | 2 +- interface/web/dns/lib/lang/ja_dns_caa.lng | 2 +- interface/web/dns/lib/lang/nl_dns_caa.lng | 2 +- interface/web/dns/lib/lang/pl_dns_caa.lng | 2 +- interface/web/dns/lib/lang/pt_dns_caa.lng | 2 +- interface/web/dns/lib/lang/ro_dns_caa.lng | 2 +- interface/web/dns/lib/lang/ru_dns_caa.lng | 2 +- interface/web/dns/lib/lang/ru_dns_hinfo.lng | 2 +- interface/web/dns/lib/lang/se_dns_caa.lng | 2 +- interface/web/dns/lib/lang/sk_dns_caa.lng | 2 +- interface/web/dns/lib/lang/tr_dns_caa.lng | 2 +- .../web/help/lib/lang/br_support_message.lng | 2 +- interface/web/login/lib/lang/br_login_as.lng | 2 +- interface/web/login/lib/lang/ru_login_as.lng | 6 ++--- interface/web/mail/lib/lang/br_mail_user.lng | 4 +-- interface/web/mail/lib/lang/ru_mail_get.lng | 2 +- .../web/mail/lib/lang/ru_mail_user_filter.lng | 2 +- .../mailuser/lib/lang/ru_mail_user_filter.lng | 2 +- interface/web/monitor/lib/lang/ar.lng | 1 + .../lib/lang/ar_dataloghistory_list.lng | 8 ++++++ .../lib/lang/ar_dataloghistory_undo.lng | 7 +++++ .../lib/lang/ar_dataloghistory_view.lng | 26 +++++++++++++++++++ interface/web/monitor/lib/lang/bg.lng | 1 + .../lib/lang/bg_dataloghistory_list.lng | 8 ++++++ .../lib/lang/bg_dataloghistory_undo.lng | 7 +++++ .../lib/lang/bg_dataloghistory_view.lng | 26 +++++++++++++++++++ interface/web/monitor/lib/lang/br.lng | 1 + .../lib/lang/br_dataloghistory_list.lng | 8 ++++++ .../lib/lang/br_dataloghistory_undo.lng | 7 +++++ .../lib/lang/br_dataloghistory_view.lng | 26 +++++++++++++++++++ interface/web/monitor/lib/lang/ca.lng | 1 + .../lib/lang/ca_dataloghistory_list.lng | 8 ++++++ .../lib/lang/ca_dataloghistory_undo.lng | 7 +++++ .../lib/lang/ca_dataloghistory_view.lng | 26 +++++++++++++++++++ interface/web/monitor/lib/lang/cz.lng | 1 + .../lib/lang/cz_dataloghistory_list.lng | 8 ++++++ .../lib/lang/cz_dataloghistory_undo.lng | 7 +++++ .../lib/lang/cz_dataloghistory_view.lng | 26 +++++++++++++++++++ interface/web/monitor/lib/lang/dk.lng | 1 + .../lib/lang/dk_dataloghistory_list.lng | 8 ++++++ .../lib/lang/dk_dataloghistory_undo.lng | 7 +++++ .../lib/lang/dk_dataloghistory_view.lng | 26 +++++++++++++++++++ interface/web/monitor/lib/lang/el.lng | 1 + .../lib/lang/el_dataloghistory_list.lng | 8 ++++++ .../lib/lang/el_dataloghistory_undo.lng | 7 +++++ .../lib/lang/el_dataloghistory_view.lng | 26 +++++++++++++++++++ interface/web/monitor/lib/lang/es.lng | 1 + .../lib/lang/es_dataloghistory_list.lng | 8 ++++++ .../lib/lang/es_dataloghistory_undo.lng | 7 +++++ .../lib/lang/es_dataloghistory_view.lng | 26 +++++++++++++++++++ interface/web/monitor/lib/lang/fi.lng | 1 + .../lib/lang/fi_dataloghistory_list.lng | 8 ++++++ .../lib/lang/fi_dataloghistory_undo.lng | 7 +++++ .../lib/lang/fi_dataloghistory_view.lng | 26 +++++++++++++++++++ interface/web/monitor/lib/lang/fr.lng | 1 + .../lib/lang/fr_dataloghistory_list.lng | 8 ++++++ .../lib/lang/fr_dataloghistory_undo.lng | 7 +++++ .../lib/lang/fr_dataloghistory_view.lng | 26 +++++++++++++++++++ interface/web/monitor/lib/lang/hr.lng | 1 + .../lib/lang/hr_dataloghistory_list.lng | 8 ++++++ .../lib/lang/hr_dataloghistory_undo.lng | 7 +++++ .../lib/lang/hr_dataloghistory_view.lng | 26 +++++++++++++++++++ interface/web/monitor/lib/lang/hu.lng | 1 + .../lib/lang/hu_dataloghistory_list.lng | 8 ++++++ .../lib/lang/hu_dataloghistory_undo.lng | 7 +++++ .../lib/lang/hu_dataloghistory_view.lng | 26 +++++++++++++++++++ interface/web/monitor/lib/lang/id.lng | 1 + .../lib/lang/id_dataloghistory_list.lng | 8 ++++++ .../lib/lang/id_dataloghistory_undo.lng | 7 +++++ .../lib/lang/id_dataloghistory_view.lng | 26 +++++++++++++++++++ interface/web/monitor/lib/lang/it.lng | 1 + .../lib/lang/it_dataloghistory_list.lng | 8 ++++++ .../lib/lang/it_dataloghistory_undo.lng | 7 +++++ .../lib/lang/it_dataloghistory_view.lng | 26 +++++++++++++++++++ interface/web/monitor/lib/lang/ja.lng | 1 + .../lib/lang/ja_dataloghistory_list.lng | 8 ++++++ .../lib/lang/ja_dataloghistory_undo.lng | 7 +++++ .../lib/lang/ja_dataloghistory_view.lng | 26 +++++++++++++++++++ interface/web/monitor/lib/lang/nl.lng | 1 + .../lib/lang/nl_dataloghistory_list.lng | 8 ++++++ .../lib/lang/nl_dataloghistory_undo.lng | 7 +++++ .../lib/lang/nl_dataloghistory_view.lng | 26 +++++++++++++++++++ interface/web/monitor/lib/lang/pl.lng | 1 + .../lib/lang/pl_dataloghistory_list.lng | 8 ++++++ .../lib/lang/pl_dataloghistory_undo.lng | 7 +++++ .../lib/lang/pl_dataloghistory_view.lng | 26 +++++++++++++++++++ interface/web/monitor/lib/lang/pt.lng | 1 + .../lib/lang/pt_dataloghistory_list.lng | 8 ++++++ .../lib/lang/pt_dataloghistory_undo.lng | 7 +++++ .../lib/lang/pt_dataloghistory_view.lng | 26 +++++++++++++++++++ interface/web/monitor/lib/lang/ro.lng | 1 + .../lib/lang/ro_dataloghistory_list.lng | 8 ++++++ .../lib/lang/ro_dataloghistory_undo.lng | 7 +++++ .../lib/lang/ro_dataloghistory_view.lng | 26 +++++++++++++++++++ interface/web/monitor/lib/lang/ru.lng | 1 + .../lib/lang/ru_dataloghistory_list.lng | 8 ++++++ .../lib/lang/ru_dataloghistory_undo.lng | 7 +++++ .../lib/lang/ru_dataloghistory_view.lng | 26 +++++++++++++++++++ interface/web/monitor/lib/lang/se.lng | 1 + .../lib/lang/se_dataloghistory_list.lng | 8 ++++++ .../lib/lang/se_dataloghistory_undo.lng | 7 +++++ .../lib/lang/se_dataloghistory_view.lng | 26 +++++++++++++++++++ interface/web/monitor/lib/lang/sk.lng | 1 + .../lib/lang/sk_dataloghistory_list.lng | 8 ++++++ .../lib/lang/sk_dataloghistory_undo.lng | 7 +++++ .../lib/lang/sk_dataloghistory_view.lng | 26 +++++++++++++++++++ interface/web/monitor/lib/lang/tr.lng | 1 + .../lib/lang/tr_dataloghistory_list.lng | 8 ++++++ .../lib/lang/tr_dataloghistory_undo.lng | 7 +++++ .../lib/lang/tr_dataloghistory_view.lng | 26 +++++++++++++++++++ .../sites/lib/lang/ar_web_vhost_domain.lng | 1 + interface/web/sites/lib/lang/bg_aps.lng | 2 +- .../sites/lib/lang/bg_web_vhost_domain.lng | 1 + interface/web/sites/lib/lang/br.lng | 2 +- interface/web/sites/lib/lang/br_aps.lng | 2 +- interface/web/sites/lib/lang/br_cron.lng | 4 +-- interface/web/sites/lib/lang/br_database.lng | 2 +- .../web/sites/lib/lang/br_database_user.lng | 2 +- interface/web/sites/lib/lang/br_ftp_user.lng | 4 +-- .../web/sites/lib/lang/br_shell_user.lng | 4 +-- .../web/sites/lib/lang/br_web_aliasdomain.lng | 4 +-- .../web/sites/lib/lang/br_web_childdomain.lng | 6 ++--- .../web/sites/lib/lang/br_web_domain.lng | 2 +- .../web/sites/lib/lang/br_web_subdomain.lng | 2 +- .../sites/lib/lang/br_web_vhost_domain.lng | 5 ++-- .../sites/lib/lang/br_web_vhost_subdomain.lng | 10 +++---- .../web/sites/lib/lang/br_webdav_user.lng | 4 +-- interface/web/sites/lib/lang/ca_aps.lng | 2 +- .../sites/lib/lang/ca_web_vhost_domain.lng | 1 + interface/web/sites/lib/lang/cz_aps.lng | 2 +- .../sites/lib/lang/cz_web_vhost_domain.lng | 1 + interface/web/sites/lib/lang/de_aps.lng | 2 +- .../sites/lib/lang/dk_web_vhost_domain.lng | 1 + .../sites/lib/lang/el_web_vhost_domain.lng | 1 + .../sites/lib/lang/es_web_vhost_domain.lng | 1 + .../sites/lib/lang/fi_web_vhost_domain.lng | 1 + .../sites/lib/lang/fr_web_vhost_domain.lng | 1 + .../sites/lib/lang/hr_web_vhost_domain.lng | 1 + .../sites/lib/lang/hu_web_vhost_domain.lng | 1 + .../sites/lib/lang/id_web_vhost_domain.lng | 1 + .../sites/lib/lang/it_web_vhost_domain.lng | 1 + .../sites/lib/lang/ja_web_vhost_domain.lng | 1 + .../sites/lib/lang/nl_web_vhost_domain.lng | 1 + .../sites/lib/lang/pl_web_vhost_domain.lng | 1 + .../sites/lib/lang/pt_web_vhost_domain.lng | 1 + .../sites/lib/lang/ro_web_vhost_domain.lng | 1 + interface/web/sites/lib/lang/ru.lng | 2 +- interface/web/sites/lib/lang/ru_aps.lng | 16 ++++++------ interface/web/sites/lib/lang/ru_database.lng | 2 +- .../web/sites/lib/lang/ru_database_user.lng | 2 +- .../web/sites/lib/lang/ru_web_childdomain.lng | 2 +- .../web/sites/lib/lang/ru_web_subdomain.lng | 2 +- .../sites/lib/lang/ru_web_vhost_domain.lng | 1 + .../sites/lib/lang/se_web_vhost_domain.lng | 1 + .../sites/lib/lang/sk_web_vhost_domain.lng | 1 + .../sites/lib/lang/tr_web_vhost_domain.lng | 1 + 272 files changed, 1205 insertions(+), 140 deletions(-) create mode 100644 interface/web/monitor/lib/lang/ar_dataloghistory_list.lng create mode 100644 interface/web/monitor/lib/lang/ar_dataloghistory_undo.lng create mode 100644 interface/web/monitor/lib/lang/ar_dataloghistory_view.lng create mode 100644 interface/web/monitor/lib/lang/bg_dataloghistory_list.lng create mode 100644 interface/web/monitor/lib/lang/bg_dataloghistory_undo.lng create mode 100644 interface/web/monitor/lib/lang/bg_dataloghistory_view.lng create mode 100644 interface/web/monitor/lib/lang/br_dataloghistory_list.lng create mode 100644 interface/web/monitor/lib/lang/br_dataloghistory_undo.lng create mode 100644 interface/web/monitor/lib/lang/br_dataloghistory_view.lng create mode 100644 interface/web/monitor/lib/lang/ca_dataloghistory_list.lng create mode 100644 interface/web/monitor/lib/lang/ca_dataloghistory_undo.lng create mode 100644 interface/web/monitor/lib/lang/ca_dataloghistory_view.lng create mode 100644 interface/web/monitor/lib/lang/cz_dataloghistory_list.lng create mode 100644 interface/web/monitor/lib/lang/cz_dataloghistory_undo.lng create mode 100644 interface/web/monitor/lib/lang/cz_dataloghistory_view.lng create mode 100644 interface/web/monitor/lib/lang/dk_dataloghistory_list.lng create mode 100644 interface/web/monitor/lib/lang/dk_dataloghistory_undo.lng create mode 100644 interface/web/monitor/lib/lang/dk_dataloghistory_view.lng create mode 100644 interface/web/monitor/lib/lang/el_dataloghistory_list.lng create mode 100644 interface/web/monitor/lib/lang/el_dataloghistory_undo.lng create mode 100644 interface/web/monitor/lib/lang/el_dataloghistory_view.lng create mode 100644 interface/web/monitor/lib/lang/es_dataloghistory_list.lng create mode 100644 interface/web/monitor/lib/lang/es_dataloghistory_undo.lng create mode 100644 interface/web/monitor/lib/lang/es_dataloghistory_view.lng create mode 100644 interface/web/monitor/lib/lang/fi_dataloghistory_list.lng create mode 100644 interface/web/monitor/lib/lang/fi_dataloghistory_undo.lng create mode 100644 interface/web/monitor/lib/lang/fi_dataloghistory_view.lng create mode 100644 interface/web/monitor/lib/lang/fr_dataloghistory_list.lng create mode 100644 interface/web/monitor/lib/lang/fr_dataloghistory_undo.lng create mode 100644 interface/web/monitor/lib/lang/fr_dataloghistory_view.lng create mode 100644 interface/web/monitor/lib/lang/hr_dataloghistory_list.lng create mode 100644 interface/web/monitor/lib/lang/hr_dataloghistory_undo.lng create mode 100644 interface/web/monitor/lib/lang/hr_dataloghistory_view.lng create mode 100644 interface/web/monitor/lib/lang/hu_dataloghistory_list.lng create mode 100644 interface/web/monitor/lib/lang/hu_dataloghistory_undo.lng create mode 100644 interface/web/monitor/lib/lang/hu_dataloghistory_view.lng create mode 100644 interface/web/monitor/lib/lang/id_dataloghistory_list.lng create mode 100644 interface/web/monitor/lib/lang/id_dataloghistory_undo.lng create mode 100644 interface/web/monitor/lib/lang/id_dataloghistory_view.lng create mode 100644 interface/web/monitor/lib/lang/it_dataloghistory_list.lng create mode 100644 interface/web/monitor/lib/lang/it_dataloghistory_undo.lng create mode 100644 interface/web/monitor/lib/lang/it_dataloghistory_view.lng create mode 100644 interface/web/monitor/lib/lang/ja_dataloghistory_list.lng create mode 100644 interface/web/monitor/lib/lang/ja_dataloghistory_undo.lng create mode 100644 interface/web/monitor/lib/lang/ja_dataloghistory_view.lng create mode 100644 interface/web/monitor/lib/lang/nl_dataloghistory_list.lng create mode 100644 interface/web/monitor/lib/lang/nl_dataloghistory_undo.lng create mode 100644 interface/web/monitor/lib/lang/nl_dataloghistory_view.lng create mode 100644 interface/web/monitor/lib/lang/pl_dataloghistory_list.lng create mode 100644 interface/web/monitor/lib/lang/pl_dataloghistory_undo.lng create mode 100644 interface/web/monitor/lib/lang/pl_dataloghistory_view.lng create mode 100644 interface/web/monitor/lib/lang/pt_dataloghistory_list.lng create mode 100644 interface/web/monitor/lib/lang/pt_dataloghistory_undo.lng create mode 100644 interface/web/monitor/lib/lang/pt_dataloghistory_view.lng create mode 100644 interface/web/monitor/lib/lang/ro_dataloghistory_list.lng create mode 100644 interface/web/monitor/lib/lang/ro_dataloghistory_undo.lng create mode 100644 interface/web/monitor/lib/lang/ro_dataloghistory_view.lng create mode 100644 interface/web/monitor/lib/lang/ru_dataloghistory_list.lng create mode 100644 interface/web/monitor/lib/lang/ru_dataloghistory_undo.lng create mode 100644 interface/web/monitor/lib/lang/ru_dataloghistory_view.lng create mode 100644 interface/web/monitor/lib/lang/se_dataloghistory_list.lng create mode 100644 interface/web/monitor/lib/lang/se_dataloghistory_undo.lng create mode 100644 interface/web/monitor/lib/lang/se_dataloghistory_view.lng create mode 100644 interface/web/monitor/lib/lang/sk_dataloghistory_list.lng create mode 100644 interface/web/monitor/lib/lang/sk_dataloghistory_undo.lng create mode 100644 interface/web/monitor/lib/lang/sk_dataloghistory_view.lng create mode 100644 interface/web/monitor/lib/lang/tr_dataloghistory_list.lng create mode 100644 interface/web/monitor/lib/lang/tr_dataloghistory_undo.lng create mode 100644 interface/web/monitor/lib/lang/tr_dataloghistory_view.lng diff --git a/interface/web/admin/lib/lang/ar_server_config.lng b/interface/web/admin/lib/lang/ar_server_config.lng index 00e94f766b..55d3f8949c 100644 --- a/interface/web/admin/lib/lang/ar_server_config.lng +++ b/interface/web/admin/lib/lang/ar_server_config.lng @@ -295,4 +295,5 @@ $wb['log_retention_error_ispositive'] = 'Log retention must be a number > 0'; $wb['php_default_name_txt'] = 'Description Default PHP-Version'; $wb['php_default_name_error_empty'] = 'Description Default PHP-Version must not be empty'; $wb['error_mailbox_message_size_txt'] = 'Mailbox size must be larger or equal to message size'; +$wb['php_fpm_reload_mode_txt'] = 'PHP-FPM reload mode'; ?> diff --git a/interface/web/admin/lib/lang/ar_server_php_list.lng b/interface/web/admin/lib/lang/ar_server_php_list.lng index b402fd1ed1..62cbe61687 100644 --- a/interface/web/admin/lib/lang/ar_server_php_list.lng +++ b/interface/web/admin/lib/lang/ar_server_php_list.lng @@ -4,4 +4,5 @@ $wb['server_id_txt'] = 'Server'; $wb['add_new_record_txt'] = 'Add new PHP version'; $wb['client_id_txt'] = 'Client'; $wb['name_txt'] = 'PHP Name'; +$wb['active_txt'] = 'Active'; ?> diff --git a/interface/web/admin/lib/lang/ar_system_config.lng b/interface/web/admin/lib/lang/ar_system_config.lng index 6bebcf39ad..0a830014d8 100644 --- a/interface/web/admin/lib/lang/ar_system_config.lng +++ b/interface/web/admin/lib/lang/ar_system_config.lng @@ -84,9 +84,10 @@ $wb['default_dbserver_txt'] = 'Default Database Server'; $wb['ca_name_txt'] = 'Name'; $wb['ca_issue_txt'] = 'Issue'; $wb['ca_wildcard_txt'] = 'Use Wildcard'; -$wb['ca_critical_txt'] = 'Strict Check'; //For future use. At this time, CA’s do not recognize any other flag values as described in RFC 6844 +$wb['ca_critical_txt'] = 'Strict Check'; $wb['ca_iodef_txt'] = 'iodef'; $wb['active_txt'] = 'Aktive'; $wb['btn_save_txt'] = 'Save'; $wb['btn_cancel_txt'] = 'Cancel'; +$wb['web_php_options_txt'] = 'PHP Handler (Apache only)'; ?> diff --git a/interface/web/admin/lib/lang/bg_server_config.lng b/interface/web/admin/lib/lang/bg_server_config.lng index 7c6ae9f2dc..6b63770459 100644 --- a/interface/web/admin/lib/lang/bg_server_config.lng +++ b/interface/web/admin/lib/lang/bg_server_config.lng @@ -295,4 +295,5 @@ $wb['log_retention_error_ispositive'] = 'Log retention must be a number > 0'; $wb['php_default_name_txt'] = 'Description Default PHP-Version'; $wb['php_default_name_error_empty'] = 'Description Default PHP-Version must not be empty'; $wb['error_mailbox_message_size_txt'] = 'Mailbox size must be larger or equal to message size'; +$wb['php_fpm_reload_mode_txt'] = 'PHP-FPM reload mode'; ?> diff --git a/interface/web/admin/lib/lang/bg_server_php_list.lng b/interface/web/admin/lib/lang/bg_server_php_list.lng index b402fd1ed1..62cbe61687 100644 --- a/interface/web/admin/lib/lang/bg_server_php_list.lng +++ b/interface/web/admin/lib/lang/bg_server_php_list.lng @@ -4,4 +4,5 @@ $wb['server_id_txt'] = 'Server'; $wb['add_new_record_txt'] = 'Add new PHP version'; $wb['client_id_txt'] = 'Client'; $wb['name_txt'] = 'PHP Name'; +$wb['active_txt'] = 'Active'; ?> diff --git a/interface/web/admin/lib/lang/bg_system_config.lng b/interface/web/admin/lib/lang/bg_system_config.lng index 8c3444e9cb..130cb596aa 100644 --- a/interface/web/admin/lib/lang/bg_system_config.lng +++ b/interface/web/admin/lib/lang/bg_system_config.lng @@ -84,9 +84,10 @@ $wb['default_dbserver_txt'] = 'Default Database Server'; $wb['ca_name_txt'] = 'Name'; $wb['ca_issue_txt'] = 'Issue'; $wb['ca_wildcard_txt'] = 'Use Wildcard'; -$wb['ca_critical_txt'] = 'Strict Check'; //For future use. At this time, CA’s do not recognize any other flag values as described in RFC 6844 +$wb['ca_critical_txt'] = 'Strict Check'; $wb['ca_iodef_txt'] = 'iodef'; $wb['active_txt'] = 'Aktive'; $wb['btn_save_txt'] = 'Save'; $wb['btn_cancel_txt'] = 'Cancel'; +$wb['web_php_options_txt'] = 'PHP Handler (Apache only)'; ?> diff --git a/interface/web/admin/lib/lang/br_server_config.lng b/interface/web/admin/lib/lang/br_server_config.lng index 9175790eb3..088dac70be 100644 --- a/interface/web/admin/lib/lang/br_server_config.lng +++ b/interface/web/admin/lib/lang/br_server_config.lng @@ -294,4 +294,6 @@ $wb['log_retention_txt'] = 'Log retention (days)'; $wb['log_retention_error_ispositive'] = 'Log retention must be a number > 0'; $wb['php_default_name_txt'] = 'Description Default PHP-Version'; $wb['error_mailbox_message_size_txt'] = 'Mailbox size must be larger or equal to message size'; +$wb['php_default_name_error_empty'] = 'Description Default PHP-Version must not be empty'; +$wb['php_fpm_reload_mode_txt'] = 'PHP-FPM reload mode'; ?> diff --git a/interface/web/admin/lib/lang/br_server_php_list.lng b/interface/web/admin/lib/lang/br_server_php_list.lng index 31a2b13eb8..88f1e38d21 100644 --- a/interface/web/admin/lib/lang/br_server_php_list.lng +++ b/interface/web/admin/lib/lang/br_server_php_list.lng @@ -4,4 +4,5 @@ $wb['server_id_txt'] = 'Servidor'; $wb['add_new_record_txt'] = 'Adicionar nova versão do php'; $wb['client_id_txt'] = 'Cliente'; $wb['name_txt'] = 'Nome da versão do php'; +$wb['active_txt'] = 'Active'; ?> diff --git a/interface/web/admin/lib/lang/br_system_config.lng b/interface/web/admin/lib/lang/br_system_config.lng index 8b5b6d0164..8688ca53aa 100644 --- a/interface/web/admin/lib/lang/br_system_config.lng +++ b/interface/web/admin/lib/lang/br_system_config.lng @@ -67,7 +67,7 @@ $wb['customer_no_template_error_regex_txt'] = 'O número do gabarito do cliente $wb['customer_no_start_txt'] = 'Valor inicial do código do cliente'; $wb['customer_no_counter_txt'] = 'Contador de código do cliente'; $wb['session_timeout_txt'] = 'Duração da sessão (minutos)'; -$wb['session_allow_endless_txt'] = 'Habilitar \"Manter-me conectado\"'; +$wb['session_allow_endless_txt'] = 'Habilitar \\"Manter-me conectado\\"'; $wb['min_password_length_txt'] = 'Comprimento mÃnimo da senha'; $wb['min_password_strength_txt'] = 'Dificuldade mÃnima da senha'; $wb['company_name_txt'] = 'Nome da empresa no tÃtulo da página'; @@ -82,19 +82,12 @@ $wb['default_slave_dnsserver_txt'] = 'Servidor dns secundário padrão'; $wb['ca_name_txt'] = 'Name'; $wb['ca_issue_txt'] = 'Issue'; $wb['ca_wildcard_txt'] = 'Use Wildcard'; -$wb['ca_critical_txt'] = 'Strict Check'; //For future use. At this time, CA<E2><80><99>s do not recognize any other flag values as described in RFC 6844 +$wb['ca_critical_txt'] = 'Strict Check'; $wb['ca_iodef_txt'] = 'iodef'; $wb['active_txt'] = 'Aktive'; $wb['btn_save_txt'] = 'Save'; $wb['btn_cancel_txt'] = 'Cancel'; $wb['default_dbserver_txt'] = 'Servidor de banco de dados padrão'; $wb['No'] = 'Não'; -$wb['ca_name_txt'] = 'Name'; -$wb['ca_issue_txt'] = 'Issue'; -$wb['ca_wildcard_txt'] = 'Use Wildcard'; -$wb['ca_critical_txt'] = 'Strict Check'; //For future use. At this time, CA’s do not recognize any other flag values as described in RFC 6844 -$wb['ca_iodef_txt'] = 'iodef'; -$wb['active_txt'] = 'Aktive'; -$wb['btn_save_txt'] = 'Save'; -$wb['btn_cancel_txt'] = 'Cancel'; +$wb['web_php_options_txt'] = 'PHP Handler (Apache only)'; ?> diff --git a/interface/web/admin/lib/lang/ca_server_config.lng b/interface/web/admin/lib/lang/ca_server_config.lng index dc44dd340c..815dbd30b5 100644 --- a/interface/web/admin/lib/lang/ca_server_config.lng +++ b/interface/web/admin/lib/lang/ca_server_config.lng @@ -295,4 +295,5 @@ $wb['log_retention_error_ispositive'] = 'Log retention must be a number > 0'; $wb['php_default_name_txt'] = 'Description Default PHP-Version'; $wb['php_default_name_error_empty'] = 'Description Default PHP-Version must not be empty'; $wb['error_mailbox_message_size_txt'] = 'Mailbox size must be larger or equal to message size'; +$wb['php_fpm_reload_mode_txt'] = 'PHP-FPM reload mode'; ?> diff --git a/interface/web/admin/lib/lang/ca_server_php_list.lng b/interface/web/admin/lib/lang/ca_server_php_list.lng index b402fd1ed1..62cbe61687 100644 --- a/interface/web/admin/lib/lang/ca_server_php_list.lng +++ b/interface/web/admin/lib/lang/ca_server_php_list.lng @@ -4,4 +4,5 @@ $wb['server_id_txt'] = 'Server'; $wb['add_new_record_txt'] = 'Add new PHP version'; $wb['client_id_txt'] = 'Client'; $wb['name_txt'] = 'PHP Name'; +$wb['active_txt'] = 'Active'; ?> diff --git a/interface/web/admin/lib/lang/ca_system_config.lng b/interface/web/admin/lib/lang/ca_system_config.lng index ff46470f59..cc3c11c6c5 100644 --- a/interface/web/admin/lib/lang/ca_system_config.lng +++ b/interface/web/admin/lib/lang/ca_system_config.lng @@ -84,9 +84,10 @@ $wb['login_link_error_regex'] = 'Invalid Link for Custom Login'; $wb['ca_name_txt'] = 'Name'; $wb['ca_issue_txt'] = 'Issue'; $wb['ca_wildcard_txt'] = 'Use Wildcard'; -$wb['ca_critical_txt'] = 'Strict Check'; //For future use. At this time, CA’s do not recognize any other flag values as described in RFC 6844 +$wb['ca_critical_txt'] = 'Strict Check'; $wb['ca_iodef_txt'] = 'iodef'; $wb['active_txt'] = 'Aktive'; $wb['btn_save_txt'] = 'Save'; $wb['btn_cancel_txt'] = 'Cancel'; +$wb['web_php_options_txt'] = 'PHP Handler (Apache only)'; ?> diff --git a/interface/web/admin/lib/lang/cz_server_config.lng b/interface/web/admin/lib/lang/cz_server_config.lng index e219a7b3e4..ebccd8fce0 100644 --- a/interface/web/admin/lib/lang/cz_server_config.lng +++ b/interface/web/admin/lib/lang/cz_server_config.lng @@ -143,7 +143,7 @@ $wb['php_fpm_socket_dir_error_empty'] = 'PHP-FPM adresář pro socket je prázdn $wb['try_rescue_txt'] = 'Povolit monitorovánà služeb a restartovat pÅ™i selhánÃ'; $wb['do_not_try_rescue_mysql_txt'] = 'Zakázat MySQL monitorovánÃ'; $wb['do_not_try_rescue_mail_txt'] = 'Zakázat E-mail monitorovánÃ'; -$wb['rescue_description_txt'] = '<b>Informace:</b> Pokud chcete napÅ™. vypnout MySQL službu zatrhnÄ›te polÃÄko \"Zakázat MySQL monitorovánÃ\" zmÄ›na se provede do 2-3 minut.<br>Pokud nepoÄkáte 2-3 minuty, monitorovánà nastartuje službu MySQL automaticky znovu !'; +$wb['rescue_description_txt'] = '<b>Informace:</b> Pokud chcete napÅ™. vypnout MySQL službu zatrhnÄ›te polÃÄko \\"Zakázat MySQL monitorovánÃ\\" zmÄ›na se provede do 2-3 minut.<br>Pokud nepoÄkáte 2-3 minuty, monitorovánà nastartuje službu MySQL automaticky znovu !'; $wb['enable_sni_txt'] = 'Aktivovat SNI (Server Name Indication)'; $wb['do_not_try_rescue_httpd_txt'] = 'Zakázat HTTPD monitorovánÃ'; $wb['set_folder_permissions_on_update_txt'] = 'Nastavenà oprávnÄ›nà složky pÅ™i aktualizaci'; @@ -295,4 +295,5 @@ $wb['log_retention_error_ispositive'] = 'Log retention must be a number > 0'; $wb['php_default_name_txt'] = 'Description Default PHP-Version'; $wb['php_default_name_error_empty'] = 'Description Default PHP-Version must not be empty'; $wb['error_mailbox_message_size_txt'] = 'Mailbox size must be larger or equal to message size'; +$wb['php_fpm_reload_mode_txt'] = 'PHP-FPM reload mode'; ?> 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 655f9a92b2..f79d482190 100644 --- a/interface/web/admin/lib/lang/cz_server_php_list.lng +++ b/interface/web/admin/lib/lang/cz_server_php_list.lng @@ -4,4 +4,5 @@ $wb['server_id_txt'] = 'Server'; $wb['add_new_record_txt'] = 'PÅ™idat verzi PHP'; $wb['client_id_txt'] = 'Klient'; $wb['name_txt'] = 'Verze PHP'; +$wb['active_txt'] = 'Active'; ?> diff --git a/interface/web/admin/lib/lang/cz_system_config.lng b/interface/web/admin/lib/lang/cz_system_config.lng index 4f0468833f..a0abf26410 100644 --- a/interface/web/admin/lib/lang/cz_system_config.lng +++ b/interface/web/admin/lib/lang/cz_system_config.lng @@ -84,9 +84,10 @@ $wb['login_link_error_regex'] = 'Neplatný formát URL pro vlastnà odkaz na pÅ™ $wb['ca_name_txt'] = 'Name'; $wb['ca_issue_txt'] = 'Issue'; $wb['ca_wildcard_txt'] = 'Use Wildcard'; -$wb['ca_critical_txt'] = 'Strict Check'; //For future use. At this time, CA’s do not recognize any other flag values as described in RFC 6844 +$wb['ca_critical_txt'] = 'Strict Check'; $wb['ca_iodef_txt'] = 'iodef'; $wb['active_txt'] = 'Aktive'; $wb['btn_save_txt'] = 'Save'; $wb['btn_cancel_txt'] = 'Cancel'; +$wb['web_php_options_txt'] = 'PHP Handler (Apache only)'; ?> diff --git a/interface/web/admin/lib/lang/de_system_config.lng b/interface/web/admin/lib/lang/de_system_config.lng index 59a3e8d111..76910e1db3 100644 --- a/interface/web/admin/lib/lang/de_system_config.lng +++ b/interface/web/admin/lib/lang/de_system_config.lng @@ -84,7 +84,7 @@ $wb['default_dbserver_txt'] = 'Default Database Server'; $wb['ca_name_txt'] = 'Name'; $wb['ca_issue_txt'] = 'Issue'; $wb['ca_wildcard_txt'] = 'Wildcard verwenden'; -$wb['ca_critical_txt'] = 'Strikte Ãœberprüfung'; //For future use. At this time, CA’s do not recognize any other flag values as described in RFC 6844 +$wb['ca_critical_txt'] = 'Strikte Ãœberprüfung'; $wb['ca_iodef_txt'] = 'iodef'; $wb['active_txt'] = 'Aktiv'; $wb['btn_save_txt'] = 'Speichern'; diff --git a/interface/web/admin/lib/lang/dk_server_config.lng b/interface/web/admin/lib/lang/dk_server_config.lng index 47daacd86a..5bf2be008a 100644 --- a/interface/web/admin/lib/lang/dk_server_config.lng +++ b/interface/web/admin/lib/lang/dk_server_config.lng @@ -295,4 +295,5 @@ $wb['log_retention_error_ispositive'] = 'Log retention must be a number > 0'; $wb['php_default_name_txt'] = 'Description Default PHP-Version'; $wb['php_default_name_error_empty'] = 'Description Default PHP-Version must not be empty'; $wb['error_mailbox_message_size_txt'] = 'Mailbox size must be larger or equal to message size'; +$wb['php_fpm_reload_mode_txt'] = 'PHP-FPM reload mode'; ?> diff --git a/interface/web/admin/lib/lang/dk_server_php_list.lng b/interface/web/admin/lib/lang/dk_server_php_list.lng index 8dbcdd211f..43fb5fe211 100644 --- a/interface/web/admin/lib/lang/dk_server_php_list.lng +++ b/interface/web/admin/lib/lang/dk_server_php_list.lng @@ -4,4 +4,5 @@ $wb['server_id_txt'] = 'Server'; $wb['add_new_record_txt'] = 'Tilføj ny PHP version'; $wb['client_id_txt'] = 'Kunde'; $wb['name_txt'] = 'PHP Navn'; +$wb['active_txt'] = 'Active'; ?> diff --git a/interface/web/admin/lib/lang/dk_system_config.lng b/interface/web/admin/lib/lang/dk_system_config.lng index 5e96639d2c..26b0fe7e78 100644 --- a/interface/web/admin/lib/lang/dk_system_config.lng +++ b/interface/web/admin/lib/lang/dk_system_config.lng @@ -84,9 +84,10 @@ $wb['login_link_error_regex'] = 'Invalid Link for Custom Login'; $wb['ca_name_txt'] = 'Name'; $wb['ca_issue_txt'] = 'Issue'; $wb['ca_wildcard_txt'] = 'Use Wildcard'; -$wb['ca_critical_txt'] = 'Strict Check'; //For future use. At this time, CA’s do not recognize any other flag values as described in RFC 6844 +$wb['ca_critical_txt'] = 'Strict Check'; $wb['ca_iodef_txt'] = 'iodef'; $wb['active_txt'] = 'Aktive'; $wb['btn_save_txt'] = 'Save'; $wb['btn_cancel_txt'] = 'Cancel'; +$wb['web_php_options_txt'] = 'PHP Handler (Apache only)'; ?> diff --git a/interface/web/admin/lib/lang/el_server_config.lng b/interface/web/admin/lib/lang/el_server_config.lng index 2755ade7c2..ae0efc9e31 100644 --- a/interface/web/admin/lib/lang/el_server_config.lng +++ b/interface/web/admin/lib/lang/el_server_config.lng @@ -295,4 +295,5 @@ $wb['log_retention_error_ispositive'] = 'Log retention must be a number > 0'; $wb['php_default_name_txt'] = 'Description Default PHP-Version'; $wb['php_default_name_error_empty'] = 'Description Default PHP-Version must not be empty'; $wb['error_mailbox_message_size_txt'] = 'Mailbox size must be larger or equal to message size'; +$wb['php_fpm_reload_mode_txt'] = 'PHP-FPM reload mode'; ?> diff --git a/interface/web/admin/lib/lang/el_server_php_list.lng b/interface/web/admin/lib/lang/el_server_php_list.lng index b402fd1ed1..62cbe61687 100644 --- a/interface/web/admin/lib/lang/el_server_php_list.lng +++ b/interface/web/admin/lib/lang/el_server_php_list.lng @@ -4,4 +4,5 @@ $wb['server_id_txt'] = 'Server'; $wb['add_new_record_txt'] = 'Add new PHP version'; $wb['client_id_txt'] = 'Client'; $wb['name_txt'] = 'PHP Name'; +$wb['active_txt'] = 'Active'; ?> diff --git a/interface/web/admin/lib/lang/el_system_config.lng b/interface/web/admin/lib/lang/el_system_config.lng index 0191eb85e7..640d6f00a9 100644 --- a/interface/web/admin/lib/lang/el_system_config.lng +++ b/interface/web/admin/lib/lang/el_system_config.lng @@ -84,9 +84,10 @@ $wb['default_dbserver_txt'] = 'Default Database Server'; $wb['ca_name_txt'] = 'Name'; $wb['ca_issue_txt'] = 'Issue'; $wb['ca_wildcard_txt'] = 'Use Wildcard'; -$wb['ca_critical_txt'] = 'Strict Check'; //For future use. At this time, CA’s do not recognize any other flag values as described in RFC 6844 +$wb['ca_critical_txt'] = 'Strict Check'; $wb['ca_iodef_txt'] = 'iodef'; $wb['active_txt'] = 'Aktive'; $wb['btn_save_txt'] = 'Save'; $wb['btn_cancel_txt'] = 'Cancel'; +$wb['web_php_options_txt'] = 'PHP Handler (Apache only)'; ?> diff --git a/interface/web/admin/lib/lang/es_server_config.lng b/interface/web/admin/lib/lang/es_server_config.lng index 042671e594..95eaf9e8a0 100755 --- a/interface/web/admin/lib/lang/es_server_config.lng +++ b/interface/web/admin/lib/lang/es_server_config.lng @@ -295,4 +295,5 @@ $wb['log_retention_error_ispositive'] = 'Log retention must be a number > 0'; $wb['php_default_name_txt'] = 'Description Default PHP-Version'; $wb['php_default_name_error_empty'] = 'Description Default PHP-Version must not be empty'; $wb['error_mailbox_message_size_txt'] = 'Mailbox size must be larger or equal to message size'; +$wb['php_fpm_reload_mode_txt'] = 'PHP-FPM reload mode'; ?> diff --git a/interface/web/admin/lib/lang/es_server_php_list.lng b/interface/web/admin/lib/lang/es_server_php_list.lng index 2e6257cfac..111628b720 100755 --- a/interface/web/admin/lib/lang/es_server_php_list.lng +++ b/interface/web/admin/lib/lang/es_server_php_list.lng @@ -4,4 +4,5 @@ $wb['client_id_txt'] = 'Cliente'; $wb['list_head_txt'] = 'Versiones adicionales de PHP'; $wb['name_txt'] = 'Versión de PHP'; $wb['server_id_txt'] = 'Servidor'; +$wb['active_txt'] = 'Active'; ?> diff --git a/interface/web/admin/lib/lang/es_system_config.lng b/interface/web/admin/lib/lang/es_system_config.lng index 6dc07dfd5b..043c52cfdd 100755 --- a/interface/web/admin/lib/lang/es_system_config.lng +++ b/interface/web/admin/lib/lang/es_system_config.lng @@ -84,7 +84,7 @@ $wb['webmail_url_txt'] = 'URL de correo web'; $wb['ca_name_txt'] = 'Name'; $wb['ca_issue_txt'] = 'Issue'; $wb['ca_wildcard_txt'] = 'Use Wildcard'; -$wb['ca_critical_txt'] = 'Strict Check'; //For future use. At this time, CA’s do not recognize any other flag values as described in RFC 6844 +$wb['ca_critical_txt'] = 'Strict Check'; $wb['ca_iodef_txt'] = 'iodef'; $wb['active_txt'] = 'Aktive'; $wb['btn_save_txt'] = 'Save'; diff --git a/interface/web/admin/lib/lang/fi_server_config.lng b/interface/web/admin/lib/lang/fi_server_config.lng index 4d76c3f5eb..c1e43b276b 100755 --- a/interface/web/admin/lib/lang/fi_server_config.lng +++ b/interface/web/admin/lib/lang/fi_server_config.lng @@ -295,4 +295,5 @@ $wb['log_retention_error_ispositive'] = 'Log retention must be a number > 0'; $wb['php_default_name_txt'] = 'Description Default PHP-Version'; $wb['php_default_name_error_empty'] = 'Description Default PHP-Version must not be empty'; $wb['error_mailbox_message_size_txt'] = 'Mailbox size must be larger or equal to message size'; +$wb['php_fpm_reload_mode_txt'] = 'PHP-FPM reload mode'; ?> diff --git a/interface/web/admin/lib/lang/fi_server_php_list.lng b/interface/web/admin/lib/lang/fi_server_php_list.lng index b402fd1ed1..62cbe61687 100644 --- a/interface/web/admin/lib/lang/fi_server_php_list.lng +++ b/interface/web/admin/lib/lang/fi_server_php_list.lng @@ -4,4 +4,5 @@ $wb['server_id_txt'] = 'Server'; $wb['add_new_record_txt'] = 'Add new PHP version'; $wb['client_id_txt'] = 'Client'; $wb['name_txt'] = 'PHP Name'; +$wb['active_txt'] = 'Active'; ?> diff --git a/interface/web/admin/lib/lang/fi_system_config.lng b/interface/web/admin/lib/lang/fi_system_config.lng index 7fe364c972..c0972c49d8 100644 --- a/interface/web/admin/lib/lang/fi_system_config.lng +++ b/interface/web/admin/lib/lang/fi_system_config.lng @@ -84,9 +84,10 @@ $wb['default_dbserver_txt'] = 'Default Database Server'; $wb['ca_name_txt'] = 'Name'; $wb['ca_issue_txt'] = 'Issue'; $wb['ca_wildcard_txt'] = 'Use Wildcard'; -$wb['ca_critical_txt'] = 'Strict Check'; //For future use. At this time, CA’s do not recognize any other flag values as described in RFC 6844 +$wb['ca_critical_txt'] = 'Strict Check'; $wb['ca_iodef_txt'] = 'iodef'; $wb['active_txt'] = 'Aktive'; $wb['btn_save_txt'] = 'Save'; $wb['btn_cancel_txt'] = 'Cancel'; +$wb['web_php_options_txt'] = 'PHP Handler (Apache only)'; ?> diff --git a/interface/web/admin/lib/lang/fr_server_config.lng b/interface/web/admin/lib/lang/fr_server_config.lng index d1e229e7ce..418f633670 100644 --- a/interface/web/admin/lib/lang/fr_server_config.lng +++ b/interface/web/admin/lib/lang/fr_server_config.lng @@ -295,4 +295,5 @@ $wb['log_retention_error_ispositive'] = 'Log retention must be a number > 0'; $wb['php_default_name_txt'] = 'Description Default PHP-Version'; $wb['php_default_name_error_empty'] = 'Description Default PHP-Version must not be empty'; $wb['error_mailbox_message_size_txt'] = 'Mailbox size must be larger or equal to message size'; +$wb['php_fpm_reload_mode_txt'] = 'PHP-FPM reload mode'; ?> diff --git a/interface/web/admin/lib/lang/fr_server_php_list.lng b/interface/web/admin/lib/lang/fr_server_php_list.lng index b402fd1ed1..62cbe61687 100644 --- a/interface/web/admin/lib/lang/fr_server_php_list.lng +++ b/interface/web/admin/lib/lang/fr_server_php_list.lng @@ -4,4 +4,5 @@ $wb['server_id_txt'] = 'Server'; $wb['add_new_record_txt'] = 'Add new PHP version'; $wb['client_id_txt'] = 'Client'; $wb['name_txt'] = 'PHP Name'; +$wb['active_txt'] = 'Active'; ?> diff --git a/interface/web/admin/lib/lang/fr_system_config.lng b/interface/web/admin/lib/lang/fr_system_config.lng index 0d9d27d14f..18f0dbbed4 100644 --- a/interface/web/admin/lib/lang/fr_system_config.lng +++ b/interface/web/admin/lib/lang/fr_system_config.lng @@ -84,9 +84,10 @@ $wb['login_link_error_regex'] = 'Invalid Link for Custom Login'; $wb['ca_name_txt'] = 'Name'; $wb['ca_issue_txt'] = 'Issue'; $wb['ca_wildcard_txt'] = 'Use Wildcard'; -$wb['ca_critical_txt'] = 'Strict Check'; //For future use. At this time, CA’s do not recognize any other flag values as described in RFC 6844 +$wb['ca_critical_txt'] = 'Strict Check'; $wb['ca_iodef_txt'] = 'iodef'; $wb['active_txt'] = 'Aktive'; $wb['btn_save_txt'] = 'Save'; $wb['btn_cancel_txt'] = 'Cancel'; +$wb['web_php_options_txt'] = 'PHP Handler (Apache only)'; ?> diff --git a/interface/web/admin/lib/lang/hr_server_config.lng b/interface/web/admin/lib/lang/hr_server_config.lng index ebfe30a16d..78d9a57a5b 100644 --- a/interface/web/admin/lib/lang/hr_server_config.lng +++ b/interface/web/admin/lib/lang/hr_server_config.lng @@ -295,4 +295,5 @@ $wb['log_retention_error_ispositive'] = 'Log retention must be a number > 0'; $wb['php_default_name_txt'] = 'Description Default PHP-Version'; $wb['php_default_name_error_empty'] = 'Description Default PHP-Version must not be empty'; $wb['error_mailbox_message_size_txt'] = 'Mailbox size must be larger or equal to message size'; +$wb['php_fpm_reload_mode_txt'] = 'PHP-FPM reload mode'; ?> diff --git a/interface/web/admin/lib/lang/hr_server_php_list.lng b/interface/web/admin/lib/lang/hr_server_php_list.lng index 8fd3db7a05..9e9c0de986 100644 --- a/interface/web/admin/lib/lang/hr_server_php_list.lng +++ b/interface/web/admin/lib/lang/hr_server_php_list.lng @@ -4,4 +4,5 @@ $wb['server_id_txt'] = 'Server'; $wb['add_new_record_txt'] = 'Add new PHP version'; $wb['client_id_txt'] = 'Klijent'; $wb['name_txt'] = 'PHP Name'; +$wb['active_txt'] = 'Active'; ?> diff --git a/interface/web/admin/lib/lang/hr_system_config.lng b/interface/web/admin/lib/lang/hr_system_config.lng index ba926e3a71..a7735647b1 100644 --- a/interface/web/admin/lib/lang/hr_system_config.lng +++ b/interface/web/admin/lib/lang/hr_system_config.lng @@ -84,9 +84,10 @@ $wb['default_dbserver_txt'] = 'Default Database Server'; $wb['ca_name_txt'] = 'Name'; $wb['ca_issue_txt'] = 'Issue'; $wb['ca_wildcard_txt'] = 'Use Wildcard'; -$wb['ca_critical_txt'] = 'Strict Check'; //For future use. At this time, CA’s do not recognize any other flag values as described in RFC 6844 +$wb['ca_critical_txt'] = 'Strict Check'; $wb['ca_iodef_txt'] = 'iodef'; $wb['active_txt'] = 'Aktive'; $wb['btn_save_txt'] = 'Save'; $wb['btn_cancel_txt'] = 'Cancel'; +$wb['web_php_options_txt'] = 'PHP Handler (Apache only)'; ?> diff --git a/interface/web/admin/lib/lang/hu_server_config.lng b/interface/web/admin/lib/lang/hu_server_config.lng index f491b4b2da..c2adb3efb2 100644 --- a/interface/web/admin/lib/lang/hu_server_config.lng +++ b/interface/web/admin/lib/lang/hu_server_config.lng @@ -295,4 +295,5 @@ $wb['log_retention_error_ispositive'] = 'Log retention must be a number > 0'; $wb['php_default_name_txt'] = 'Description Default PHP-Version'; $wb['php_default_name_error_empty'] = 'Description Default PHP-Version must not be empty'; $wb['error_mailbox_message_size_txt'] = 'Mailbox size must be larger or equal to message size'; +$wb['php_fpm_reload_mode_txt'] = 'PHP-FPM reload mode'; ?> diff --git a/interface/web/admin/lib/lang/hu_server_php_list.lng b/interface/web/admin/lib/lang/hu_server_php_list.lng index b402fd1ed1..62cbe61687 100644 --- a/interface/web/admin/lib/lang/hu_server_php_list.lng +++ b/interface/web/admin/lib/lang/hu_server_php_list.lng @@ -4,4 +4,5 @@ $wb['server_id_txt'] = 'Server'; $wb['add_new_record_txt'] = 'Add new PHP version'; $wb['client_id_txt'] = 'Client'; $wb['name_txt'] = 'PHP Name'; +$wb['active_txt'] = 'Active'; ?> diff --git a/interface/web/admin/lib/lang/hu_system_config.lng b/interface/web/admin/lib/lang/hu_system_config.lng index 9944f68b78..cee497fe19 100644 --- a/interface/web/admin/lib/lang/hu_system_config.lng +++ b/interface/web/admin/lib/lang/hu_system_config.lng @@ -84,9 +84,10 @@ $wb['default_dbserver_txt'] = 'Default Database Server'; $wb['ca_name_txt'] = 'Name'; $wb['ca_issue_txt'] = 'Issue'; $wb['ca_wildcard_txt'] = 'Use Wildcard'; -$wb['ca_critical_txt'] = 'Strict Check'; //For future use. At this time, CA’s do not recognize any other flag values as described in RFC 6844 +$wb['ca_critical_txt'] = 'Strict Check'; $wb['ca_iodef_txt'] = 'iodef'; $wb['active_txt'] = 'Aktive'; $wb['btn_save_txt'] = 'Save'; $wb['btn_cancel_txt'] = 'Cancel'; +$wb['web_php_options_txt'] = 'PHP Handler (Apache only)'; ?> diff --git a/interface/web/admin/lib/lang/id_server_config.lng b/interface/web/admin/lib/lang/id_server_config.lng index f56204188a..36f3cd8535 100644 --- a/interface/web/admin/lib/lang/id_server_config.lng +++ b/interface/web/admin/lib/lang/id_server_config.lng @@ -295,4 +295,5 @@ $wb['log_retention_error_ispositive'] = 'Log retention must be a number > 0'; $wb['php_default_name_txt'] = 'Description Default PHP-Version'; $wb['php_default_name_error_empty'] = 'Description Default PHP-Version must not be empty'; $wb['error_mailbox_message_size_txt'] = 'Mailbox size must be larger or equal to message size'; +$wb['php_fpm_reload_mode_txt'] = 'PHP-FPM reload mode'; ?> diff --git a/interface/web/admin/lib/lang/id_server_php_list.lng b/interface/web/admin/lib/lang/id_server_php_list.lng index b402fd1ed1..62cbe61687 100644 --- a/interface/web/admin/lib/lang/id_server_php_list.lng +++ b/interface/web/admin/lib/lang/id_server_php_list.lng @@ -4,4 +4,5 @@ $wb['server_id_txt'] = 'Server'; $wb['add_new_record_txt'] = 'Add new PHP version'; $wb['client_id_txt'] = 'Client'; $wb['name_txt'] = 'PHP Name'; +$wb['active_txt'] = 'Active'; ?> diff --git a/interface/web/admin/lib/lang/id_system_config.lng b/interface/web/admin/lib/lang/id_system_config.lng index 65c1768354..344185b84d 100644 --- a/interface/web/admin/lib/lang/id_system_config.lng +++ b/interface/web/admin/lib/lang/id_system_config.lng @@ -84,9 +84,10 @@ $wb['default_dbserver_txt'] = 'Default Database Server'; $wb['ca_name_txt'] = 'Name'; $wb['ca_issue_txt'] = 'Issue'; $wb['ca_wildcard_txt'] = 'Use Wildcard'; -$wb['ca_critical_txt'] = 'Strict Check'; //For future use. At this time, CA’s do not recognize any other flag values as described in RFC 6844 +$wb['ca_critical_txt'] = 'Strict Check'; $wb['ca_iodef_txt'] = 'iodef'; $wb['active_txt'] = 'Aktive'; $wb['btn_save_txt'] = 'Save'; $wb['btn_cancel_txt'] = 'Cancel'; +$wb['web_php_options_txt'] = 'PHP Handler (Apache only)'; ?> diff --git a/interface/web/admin/lib/lang/it_server_config.lng b/interface/web/admin/lib/lang/it_server_config.lng index 24b89ee8bd..766b7fb1ae 100644 --- a/interface/web/admin/lib/lang/it_server_config.lng +++ b/interface/web/admin/lib/lang/it_server_config.lng @@ -295,4 +295,5 @@ $wb['log_retention_error_ispositive'] = 'Log retention must be a number > 0'; $wb['php_default_name_txt'] = 'Description Default PHP-Version'; $wb['php_default_name_error_empty'] = 'Description Default PHP-Version must not be empty'; $wb['error_mailbox_message_size_txt'] = 'Mailbox size must be larger or equal to message size'; +$wb['php_fpm_reload_mode_txt'] = 'PHP-FPM reload mode'; ?> diff --git a/interface/web/admin/lib/lang/it_server_php_list.lng b/interface/web/admin/lib/lang/it_server_php_list.lng index 36bfcbc40e..296de9d0a5 100644 --- a/interface/web/admin/lib/lang/it_server_php_list.lng +++ b/interface/web/admin/lib/lang/it_server_php_list.lng @@ -4,4 +4,5 @@ $wb['server_id_txt'] = 'Server'; $wb['add_new_record_txt'] = 'Aggiungi una nuova versione PHP'; $wb['client_id_txt'] = 'Cliente'; $wb['name_txt'] = 'Nome PHP'; +$wb['active_txt'] = 'Active'; ?> diff --git a/interface/web/admin/lib/lang/it_system_config.lng b/interface/web/admin/lib/lang/it_system_config.lng index e3c4fcaae7..311b7c957c 100644 --- a/interface/web/admin/lib/lang/it_system_config.lng +++ b/interface/web/admin/lib/lang/it_system_config.lng @@ -84,9 +84,10 @@ $wb['login_link_error_regex'] = 'Invalid Link for Custom Login'; $wb['ca_name_txt'] = 'Name'; $wb['ca_issue_txt'] = 'Issue'; $wb['ca_wildcard_txt'] = 'Use Wildcard'; -$wb['ca_critical_txt'] = 'Strict Check'; //For future use. At this time, CA’s do not recognize any other flag values as described in RFC 6844 +$wb['ca_critical_txt'] = 'Strict Check'; $wb['ca_iodef_txt'] = 'iodef'; $wb['active_txt'] = 'Aktive'; $wb['btn_save_txt'] = 'Save'; $wb['btn_cancel_txt'] = 'Cancel'; +$wb['web_php_options_txt'] = 'PHP Handler (Apache only)'; ?> diff --git a/interface/web/admin/lib/lang/ja_server_config.lng b/interface/web/admin/lib/lang/ja_server_config.lng index 72cecbcccd..ccabb127e6 100644 --- a/interface/web/admin/lib/lang/ja_server_config.lng +++ b/interface/web/admin/lib/lang/ja_server_config.lng @@ -295,4 +295,5 @@ $wb['log_retention_error_ispositive'] = 'Log retention must be a number > 0'; $wb['php_default_name_txt'] = 'Description Default PHP-Version'; $wb['php_default_name_error_empty'] = 'Description Default PHP-Version must not be empty'; $wb['error_mailbox_message_size_txt'] = 'Mailbox size must be larger or equal to message size'; +$wb['php_fpm_reload_mode_txt'] = 'PHP-FPM reload mode'; ?> diff --git a/interface/web/admin/lib/lang/ja_server_php_list.lng b/interface/web/admin/lib/lang/ja_server_php_list.lng index b402fd1ed1..62cbe61687 100644 --- a/interface/web/admin/lib/lang/ja_server_php_list.lng +++ b/interface/web/admin/lib/lang/ja_server_php_list.lng @@ -4,4 +4,5 @@ $wb['server_id_txt'] = 'Server'; $wb['add_new_record_txt'] = 'Add new PHP version'; $wb['client_id_txt'] = 'Client'; $wb['name_txt'] = 'PHP Name'; +$wb['active_txt'] = 'Active'; ?> diff --git a/interface/web/admin/lib/lang/ja_system_config.lng b/interface/web/admin/lib/lang/ja_system_config.lng index ce16ad15bb..aa5cc6a7a3 100644 --- a/interface/web/admin/lib/lang/ja_system_config.lng +++ b/interface/web/admin/lib/lang/ja_system_config.lng @@ -84,9 +84,10 @@ $wb['default_dbserver_txt'] = 'Default Database Server'; $wb['ca_name_txt'] = 'Name'; $wb['ca_issue_txt'] = 'Issue'; $wb['ca_wildcard_txt'] = 'Use Wildcard'; -$wb['ca_critical_txt'] = 'Strict Check'; //For future use. At this time, CA’s do not recognize any other flag values as described in RFC 6844 +$wb['ca_critical_txt'] = 'Strict Check'; $wb['ca_iodef_txt'] = 'iodef'; $wb['active_txt'] = 'Aktive'; $wb['btn_save_txt'] = 'Save'; $wb['btn_cancel_txt'] = 'Cancel'; +$wb['web_php_options_txt'] = 'PHP Handler (Apache only)'; ?> diff --git a/interface/web/admin/lib/lang/nl_server_config.lng b/interface/web/admin/lib/lang/nl_server_config.lng index 389a0ea877..187ea86ec1 100644 --- a/interface/web/admin/lib/lang/nl_server_config.lng +++ b/interface/web/admin/lib/lang/nl_server_config.lng @@ -295,4 +295,5 @@ $wb['log_retention_error_ispositive'] = 'Log retention must be a number > 0'; $wb['php_default_name_txt'] = 'Description Default PHP-Version'; $wb['php_default_name_error_empty'] = 'Description Default PHP-Version must not be empty'; $wb['error_mailbox_message_size_txt'] = 'Mailbox size must be larger or equal to message size'; +$wb['php_fpm_reload_mode_txt'] = 'PHP-FPM reload mode'; ?> diff --git a/interface/web/admin/lib/lang/nl_server_php_list.lng b/interface/web/admin/lib/lang/nl_server_php_list.lng index b402fd1ed1..62cbe61687 100644 --- a/interface/web/admin/lib/lang/nl_server_php_list.lng +++ b/interface/web/admin/lib/lang/nl_server_php_list.lng @@ -4,4 +4,5 @@ $wb['server_id_txt'] = 'Server'; $wb['add_new_record_txt'] = 'Add new PHP version'; $wb['client_id_txt'] = 'Client'; $wb['name_txt'] = 'PHP Name'; +$wb['active_txt'] = 'Active'; ?> diff --git a/interface/web/admin/lib/lang/nl_system_config.lng b/interface/web/admin/lib/lang/nl_system_config.lng index 20df45f2bc..44a58b7646 100644 --- a/interface/web/admin/lib/lang/nl_system_config.lng +++ b/interface/web/admin/lib/lang/nl_system_config.lng @@ -84,9 +84,10 @@ $wb['default_dbserver_txt'] = 'Default Database Server'; $wb['ca_name_txt'] = 'Name'; $wb['ca_issue_txt'] = 'Issue'; $wb['ca_wildcard_txt'] = 'Use Wildcard'; -$wb['ca_critical_txt'] = 'Strict Check'; //For future use. At this time, CA’s do not recognize any other flag values as described in RFC 6844 +$wb['ca_critical_txt'] = 'Strict Check'; $wb['ca_iodef_txt'] = 'iodef'; $wb['active_txt'] = 'Aktive'; $wb['btn_save_txt'] = 'Save'; $wb['btn_cancel_txt'] = 'Cancel'; +$wb['web_php_options_txt'] = 'PHP Handler (Apache only)'; ?> diff --git a/interface/web/admin/lib/lang/pl_server_config.lng b/interface/web/admin/lib/lang/pl_server_config.lng index a05df05752..a50e27b33e 100644 --- a/interface/web/admin/lib/lang/pl_server_config.lng +++ b/interface/web/admin/lib/lang/pl_server_config.lng @@ -295,4 +295,5 @@ $wb['log_retention_error_ispositive'] = 'Log retention must be a number > 0'; $wb['php_default_name_txt'] = 'Description Default PHP-Version'; $wb['php_default_name_error_empty'] = 'Description Default PHP-Version must not be empty'; $wb['error_mailbox_message_size_txt'] = 'Mailbox size must be larger or equal to message size'; +$wb['php_fpm_reload_mode_txt'] = 'PHP-FPM reload mode'; ?> diff --git a/interface/web/admin/lib/lang/pl_server_php_list.lng b/interface/web/admin/lib/lang/pl_server_php_list.lng index b402fd1ed1..62cbe61687 100644 --- a/interface/web/admin/lib/lang/pl_server_php_list.lng +++ b/interface/web/admin/lib/lang/pl_server_php_list.lng @@ -4,4 +4,5 @@ $wb['server_id_txt'] = 'Server'; $wb['add_new_record_txt'] = 'Add new PHP version'; $wb['client_id_txt'] = 'Client'; $wb['name_txt'] = 'PHP Name'; +$wb['active_txt'] = 'Active'; ?> diff --git a/interface/web/admin/lib/lang/pl_system_config.lng b/interface/web/admin/lib/lang/pl_system_config.lng index 1c51b949a7..a809251ec1 100644 --- a/interface/web/admin/lib/lang/pl_system_config.lng +++ b/interface/web/admin/lib/lang/pl_system_config.lng @@ -84,9 +84,10 @@ $wb['default_dbserver_txt'] = 'Default Database Server'; $wb['ca_name_txt'] = 'Name'; $wb['ca_issue_txt'] = 'Issue'; $wb['ca_wildcard_txt'] = 'Use Wildcard'; -$wb['ca_critical_txt'] = 'Strict Check'; //For future use. At this time, CA’s do not recognize any other flag values as described in RFC 6844 +$wb['ca_critical_txt'] = 'Strict Check'; $wb['ca_iodef_txt'] = 'iodef'; $wb['active_txt'] = 'Aktive'; $wb['btn_save_txt'] = 'Save'; $wb['btn_cancel_txt'] = 'Cancel'; +$wb['web_php_options_txt'] = 'PHP Handler (Apache only)'; ?> diff --git a/interface/web/admin/lib/lang/pt_server_config.lng b/interface/web/admin/lib/lang/pt_server_config.lng index ba5bd38248..96c16d3a2c 100644 --- a/interface/web/admin/lib/lang/pt_server_config.lng +++ b/interface/web/admin/lib/lang/pt_server_config.lng @@ -295,4 +295,5 @@ $wb['log_retention_error_ispositive'] = 'Log retention must be a number > 0'; $wb['php_default_name_txt'] = 'Description Default PHP-Version'; $wb['php_default_name_error_empty'] = 'Description Default PHP-Version must not be empty'; $wb['error_mailbox_message_size_txt'] = 'Mailbox size must be larger or equal to message size'; +$wb['php_fpm_reload_mode_txt'] = 'PHP-FPM reload mode'; ?> diff --git a/interface/web/admin/lib/lang/pt_server_php_list.lng b/interface/web/admin/lib/lang/pt_server_php_list.lng index b402fd1ed1..62cbe61687 100644 --- a/interface/web/admin/lib/lang/pt_server_php_list.lng +++ b/interface/web/admin/lib/lang/pt_server_php_list.lng @@ -4,4 +4,5 @@ $wb['server_id_txt'] = 'Server'; $wb['add_new_record_txt'] = 'Add new PHP version'; $wb['client_id_txt'] = 'Client'; $wb['name_txt'] = 'PHP Name'; +$wb['active_txt'] = 'Active'; ?> diff --git a/interface/web/admin/lib/lang/pt_system_config.lng b/interface/web/admin/lib/lang/pt_system_config.lng index 4a28e49a75..6fc26344c0 100644 --- a/interface/web/admin/lib/lang/pt_system_config.lng +++ b/interface/web/admin/lib/lang/pt_system_config.lng @@ -84,9 +84,10 @@ $wb['default_dbserver_txt'] = 'Default Database Server'; $wb['ca_name_txt'] = 'Name'; $wb['ca_issue_txt'] = 'Issue'; $wb['ca_wildcard_txt'] = 'Use Wildcard'; -$wb['ca_critical_txt'] = 'Strict Check'; //For future use. At this time, CA’s do not recognize any other flag values as described in RFC 6844 +$wb['ca_critical_txt'] = 'Strict Check'; $wb['ca_iodef_txt'] = 'iodef'; $wb['active_txt'] = 'Aktive'; $wb['btn_save_txt'] = 'Save'; $wb['btn_cancel_txt'] = 'Cancel'; +$wb['web_php_options_txt'] = 'PHP Handler (Apache only)'; ?> diff --git a/interface/web/admin/lib/lang/ro_server_config.lng b/interface/web/admin/lib/lang/ro_server_config.lng index 5a29d0eff0..239a87dc74 100644 --- a/interface/web/admin/lib/lang/ro_server_config.lng +++ b/interface/web/admin/lib/lang/ro_server_config.lng @@ -295,4 +295,5 @@ $wb['log_retention_error_ispositive'] = 'Log retention must be a number > 0'; $wb['php_default_name_txt'] = 'Description Default PHP-Version'; $wb['php_default_name_error_empty'] = 'Description Default PHP-Version must not be empty'; $wb['error_mailbox_message_size_txt'] = 'Mailbox size must be larger or equal to message size'; +$wb['php_fpm_reload_mode_txt'] = 'PHP-FPM reload mode'; ?> diff --git a/interface/web/admin/lib/lang/ro_server_php_list.lng b/interface/web/admin/lib/lang/ro_server_php_list.lng index b402fd1ed1..62cbe61687 100644 --- a/interface/web/admin/lib/lang/ro_server_php_list.lng +++ b/interface/web/admin/lib/lang/ro_server_php_list.lng @@ -4,4 +4,5 @@ $wb['server_id_txt'] = 'Server'; $wb['add_new_record_txt'] = 'Add new PHP version'; $wb['client_id_txt'] = 'Client'; $wb['name_txt'] = 'PHP Name'; +$wb['active_txt'] = 'Active'; ?> diff --git a/interface/web/admin/lib/lang/ro_system_config.lng b/interface/web/admin/lib/lang/ro_system_config.lng index efbc6bf263..2a39a454e8 100644 --- a/interface/web/admin/lib/lang/ro_system_config.lng +++ b/interface/web/admin/lib/lang/ro_system_config.lng @@ -84,9 +84,10 @@ $wb['default_dbserver_txt'] = 'Default Database Server'; $wb['ca_name_txt'] = 'Name'; $wb['ca_issue_txt'] = 'Issue'; $wb['ca_wildcard_txt'] = 'Use Wildcard'; -$wb['ca_critical_txt'] = 'Strict Check'; //For future use. At this time, CA’s do not recognize any other flag values as described in RFC 6844 +$wb['ca_critical_txt'] = 'Strict Check'; $wb['ca_iodef_txt'] = 'iodef'; $wb['active_txt'] = 'Aktive'; $wb['btn_save_txt'] = 'Save'; $wb['btn_cancel_txt'] = 'Cancel'; +$wb['web_php_options_txt'] = 'PHP Handler (Apache only)'; ?> diff --git a/interface/web/admin/lib/lang/ru_firewall.lng b/interface/web/admin/lib/lang/ru_firewall.lng index c30f26f2e8..70beb30437 100644 --- a/interface/web/admin/lib/lang/ru_firewall.lng +++ b/interface/web/admin/lib/lang/ru_firewall.lng @@ -6,6 +6,6 @@ $wb['tcp_port_help_txt'] = 'ПеречиÑлить порты TCP через з $wb['udp_port_help_txt'] = 'ПеречиÑлить порты UDP через запÑтую'; $wb['active_txt'] = 'Ðктивно'; $wb['firewall_error_unique'] = 'Уже еÑÑ‚ÑŒ Ñ‚Ð°ÐºÐ°Ñ Ð·Ð°Ð¿Ð¸ÑÑŒ брандмауÑра Ð´Ð»Ñ Ñтого Ñервера.'; -$wb['tcp_ports_error_regex'] = 'ÐедопуÑтимый Ñимвол в указании tcp порта. Корректные Ñиволы - цифры, \":\" и \",\"'; -$wb['udp_ports_error_regex'] = 'Ðекорректный Ñимвол в указании UDP порта. ДопуÑтимые Ñиволы - цифры, \":\" и \",\"'; +$wb['tcp_ports_error_regex'] = 'ÐедопуÑтимый Ñимвол в указании tcp порта. Корректные Ñиволы - цифры, \\":\\" и \\",\\"'; +$wb['udp_ports_error_regex'] = 'Ðекорректный Ñимвол в указании UDP порта. ДопуÑтимые Ñиволы - цифры, \\":\\" и \\",\\"'; ?> diff --git a/interface/web/admin/lib/lang/ru_server_config.lng b/interface/web/admin/lib/lang/ru_server_config.lng index 7ed1fb88ab..02edb659de 100644 --- a/interface/web/admin/lib/lang/ru_server_config.lng +++ b/interface/web/admin/lib/lang/ru_server_config.lng @@ -152,7 +152,7 @@ $wb['php_fpm_socket_dir_error_empty'] = 'Каталог PHP-FPM Ñокета п $wb['try_rescue_txt'] = 'Включить мониторинг Ñлужбы и перезапуÑк при Ñбое'; $wb['do_not_try_rescue_mysql_txt'] = 'Отключить мониторинг MySQL'; $wb['do_not_try_rescue_mail_txt'] = 'Отключить мониторинг Email'; -$wb['rescue_description_txt'] = '<b>ИнформациÑ:</b> ЕÑли вы хотите выключить MySQL, вы должны уÑтановить флажок \"Отключить мониторинг MySQL\" и подождать 2-3 минуты.<br>ЕÑли вы не подождёте 2-3 минуты, мониторинг будет пытатьÑÑ Ð¿ÐµÑ€ÐµÐ·Ð°Ð¿ÑƒÑтить MySQL!'; +$wb['rescue_description_txt'] = '<b>ИнформациÑ:</b> ЕÑли вы хотите выключить MySQL, вы должны уÑтановить флажок \\"Отключить мониторинг MySQL\\" и подождать 2-3 минуты.<br>ЕÑли вы не подождёте 2-3 минуты, мониторинг будет пытатьÑÑ Ð¿ÐµÑ€ÐµÐ·Ð°Ð¿ÑƒÑтить MySQL!'; $wb['enable_sni_txt'] = 'Включить SNI'; $wb['do_not_try_rescue_httpd_txt'] = 'Отключить мониторинг HTTPD'; $wb['set_folder_permissions_on_update_txt'] = 'УÑтановить Ñ€Ð°Ð·Ñ€ÐµÑˆÐµÐ½Ð¸Ñ Ð´Ð»Ñ Ð¿Ð°Ð¿ÐºÐ¸ на обновлениÑ'; @@ -295,4 +295,5 @@ $wb['log_retention_error_ispositive'] = 'Log retention must be a number > 0'; $wb['php_default_name_txt'] = 'Description Default PHP-Version'; $wb['php_default_name_error_empty'] = 'Description Default PHP-Version must not be empty'; $wb['error_mailbox_message_size_txt'] = 'Mailbox size must be larger or equal to message size'; +$wb['php_fpm_reload_mode_txt'] = 'PHP-FPM reload mode'; ?> diff --git a/interface/web/admin/lib/lang/ru_server_php_list.lng b/interface/web/admin/lib/lang/ru_server_php_list.lng index bb4cc308e4..5c84917f15 100644 --- a/interface/web/admin/lib/lang/ru_server_php_list.lng +++ b/interface/web/admin/lib/lang/ru_server_php_list.lng @@ -4,4 +4,5 @@ $wb['server_id_txt'] = 'Сервер'; $wb['add_new_record_txt'] = 'Добавить новую верÑию PHP'; $wb['client_id_txt'] = 'ID Клиента'; $wb['name_txt'] = 'Ð˜Ð¼Ñ PHP'; +$wb['active_txt'] = 'Active'; ?> diff --git a/interface/web/admin/lib/lang/ru_system_config.lng b/interface/web/admin/lib/lang/ru_system_config.lng index 301827893e..baed497b0e 100644 --- a/interface/web/admin/lib/lang/ru_system_config.lng +++ b/interface/web/admin/lib/lang/ru_system_config.lng @@ -14,7 +14,7 @@ $wb['mailboxlist_webmail_link_txt'] = 'СÑылка на веб-почту в Ñ $wb['webmail_url_txt'] = 'URL веб-почты'; $wb['phpmyadmin_url_txt'] = 'URL PHPMyAdmin'; $wb['use_domain_module_txt'] = 'ИÑпользовать модуль домена, чтобы добавить новые домены'; -$wb['use_domain_module_hint'] = 'При иÑпользовании Ñтого модулÑ, Ваши клиенты Ñмогут выбрать только один из доменов, Ñозданных Ð´Ð»Ñ Ð½Ð¸Ñ… админиÑтратором. Они не могут Ñвободно редактировать поле \"домен\". Чтобы Ñделать Ñти Ð¸Ð·Ð¼ÐµÐ½ÐµÐ½Ð¸Ñ Ð²Ð¸Ð´Ð¸Ð¼Ñ‹Ð¼Ð¸, Ð’Ñ‹ должны выйти и повторно войти в панель поÑле Ð¸Ð·Ð¼ÐµÐ½ÐµÐ½Ð¸Ñ Ñтого значениÑ.'; +$wb['use_domain_module_hint'] = 'При иÑпользовании Ñтого модулÑ, Ваши клиенты Ñмогут выбрать только один из доменов, Ñозданных Ð´Ð»Ñ Ð½Ð¸Ñ… админиÑтратором. Они не могут Ñвободно редактировать поле \\"домен\\". Чтобы Ñделать Ñти Ð¸Ð·Ð¼ÐµÐ½ÐµÐ½Ð¸Ñ Ð²Ð¸Ð´Ð¸Ð¼Ñ‹Ð¼Ð¸, Ð’Ñ‹ должны выйти и повторно войти в панель поÑле Ð¸Ð·Ð¼ÐµÐ½ÐµÐ½Ð¸Ñ Ñтого значениÑ.'; $wb['new_domain_txt'] = 'HTML текÑÑ‚, чтобы Ñоздать новый домен'; $wb['webdavuser_prefix_txt'] = 'ÐŸÑ€ÐµÑ„Ð¸ÐºÑ Ð¿Ð¾Ð»ÑŒÐ·Ð¾Ð²Ð°Ñ‚ÐµÐ»Ñ WebDAV'; $wb['webdavuser_prefix_error_regex'] = 'Ðекорректный Ñимвол в префикÑе Ð¿Ð¾Ð»ÑŒÐ·Ð¾Ð²Ð°Ñ‚ÐµÐ»Ñ WebDAV.'; @@ -67,7 +67,7 @@ $wb['customer_no_template_error_regex_txt'] = 'Шаблон номера Кли $wb['customer_no_start_txt'] = 'Ðачальное значение номера Клиента'; $wb['customer_no_counter_txt'] = 'Счётчик номера Клиента'; $wb['session_timeout_txt'] = 'Тайм-аут ÑеÑÑии (в минутах)'; -$wb['session_allow_endless_txt'] = 'Включить \"оÑтаватьÑÑ Ð² ÑиÑтеме\"'; +$wb['session_allow_endless_txt'] = 'Включить \\"оÑтаватьÑÑ Ð² ÑиÑтеме\\"'; $wb['No'] = 'Ðет'; $wb['min_password_length_txt'] = 'ÐœÐ¸Ð½Ð¸Ð¼Ð°Ð»ÑŒÐ½Ð°Ñ Ð´Ð»Ð¸Ð½Ð° паролÑ'; $wb['min_password_strength_txt'] = 'ÐœÐ¸Ð½Ð¸Ð¼Ð°Ð»ÑŒÐ½Ð°Ñ ÑтойкоÑÑ‚ÑŒ паролÑ'; @@ -84,17 +84,10 @@ $wb['default_dbserver_txt'] = 'Сервер базы данных по умол $wb['ca_name_txt'] = 'Name'; $wb['ca_issue_txt'] = 'Issue'; $wb['ca_wildcard_txt'] = 'Use Wildcard'; -$wb['ca_critical_txt'] = 'Strict Check'; //For future use. At this time, CA<E2><80><99>s do not recognize any other flag values as described in RFC 6844 -$wb['ca_iodef_txt'] = 'iodef'; -$wb['active_txt'] = 'Aktive'; -$wb['btn_save_txt'] = 'Save'; -$wb['btn_cancel_txt'] = 'Cancel'; -$wb['ca_name_txt'] = 'Name'; -$wb['ca_issue_txt'] = 'Issue'; -$wb['ca_wildcard_txt'] = 'Use Wildcard'; -$wb['ca_critical_txt'] = 'Strict Check'; //For future use. At this time, CA’s do not recognize any other flag values as described in RFC 6844 +$wb['ca_critical_txt'] = 'Strict Check'; $wb['ca_iodef_txt'] = 'iodef'; $wb['active_txt'] = 'Aktive'; $wb['btn_save_txt'] = 'Save'; $wb['btn_cancel_txt'] = 'Cancel'; +$wb['web_php_options_txt'] = 'PHP Handler (Apache only)'; ?> diff --git a/interface/web/admin/lib/lang/ru_users.lng b/interface/web/admin/lib/lang/ru_users.lng index bd1b8034ff..63f081f917 100644 --- a/interface/web/admin/lib/lang/ru_users.lng +++ b/interface/web/admin/lib/lang/ru_users.lng @@ -29,7 +29,7 @@ $wb['generate_password_txt'] = 'Создать пароль'; $wb['repeat_password_txt'] = 'Повторить пароль'; $wb['password_mismatch_txt'] = 'Пароли не Ñовпадают.'; $wb['password_match_txt'] = 'Ðти пароли Ñовпадают.'; -$wb['username_error_collision'] = 'Ð˜Ð¼Ñ Ð¿Ð¾Ð»ÑŒÐ·Ð¾Ð²Ð°Ñ‚ÐµÐ»Ñ Ð½Ðµ может начинатьÑÑ Ñо Ñлова \"web\" или \"web\" Ð¿Ð»ÑŽÑ Ñ‡Ð¸Ñло.'; +$wb['username_error_collision'] = 'Ð˜Ð¼Ñ Ð¿Ð¾Ð»ÑŒÐ·Ð¾Ð²Ð°Ñ‚ÐµÐ»Ñ Ð½Ðµ может начинатьÑÑ Ñо Ñлова \\"web\\" или \\"web\\" Ð¿Ð»ÑŽÑ Ñ‡Ð¸Ñло.'; $wb['client_not_admin_err'] = 'Пользователь, который принадлежит к клиенту не может быть уÑтановлен тип: admin'; $wb['lost_password_function_txt'] = 'Ð¤ÑƒÐ½ÐºÑ†Ð¸Ñ Ð²Ð¾ÑÑÑ‚Ð°Ð½Ð¾Ð²Ð»ÐµÐ½Ð¸Ñ Ð¿Ð°Ñ€Ð¾Ð»Ñ Ð´Ð¾Ñтупна'; $wb['no_user_insert'] = 'CP-Users of type -user- get added and updated automatically when you add a client or reseller.'; diff --git a/interface/web/admin/lib/lang/se_server_config.lng b/interface/web/admin/lib/lang/se_server_config.lng index 196fe3ffd0..c949c052ba 100644 --- a/interface/web/admin/lib/lang/se_server_config.lng +++ b/interface/web/admin/lib/lang/se_server_config.lng @@ -295,4 +295,5 @@ $wb['log_retention_error_ispositive'] = 'Log retention must be a number > 0'; $wb['php_default_name_txt'] = 'Description Default PHP-Version'; $wb['php_default_name_error_empty'] = 'Description Default PHP-Version must not be empty'; $wb['error_mailbox_message_size_txt'] = 'Mailbox size must be larger or equal to message size'; +$wb['php_fpm_reload_mode_txt'] = 'PHP-FPM reload mode'; ?> diff --git a/interface/web/admin/lib/lang/se_server_php_list.lng b/interface/web/admin/lib/lang/se_server_php_list.lng index f5762ad3a6..451236d1ca 100644 --- a/interface/web/admin/lib/lang/se_server_php_list.lng +++ b/interface/web/admin/lib/lang/se_server_php_list.lng @@ -4,4 +4,5 @@ $wb['server_id_txt'] = 'Server'; $wb['add_new_record_txt'] = 'Lägg till ny PHP-version'; $wb['client_id_txt'] = 'Kund'; $wb['name_txt'] = 'PHP-namn'; +$wb['active_txt'] = 'Active'; ?> diff --git a/interface/web/admin/lib/lang/se_system_config.lng b/interface/web/admin/lib/lang/se_system_config.lng index c9ccca89e9..74ae16734f 100644 --- a/interface/web/admin/lib/lang/se_system_config.lng +++ b/interface/web/admin/lib/lang/se_system_config.lng @@ -84,9 +84,10 @@ $wb['default_dbserver_txt'] = 'Default Database Server'; $wb['ca_name_txt'] = 'Name'; $wb['ca_issue_txt'] = 'Issue'; $wb['ca_wildcard_txt'] = 'Use Wildcard'; -$wb['ca_critical_txt'] = 'Strict Check'; //For future use. At this time, CA’s do not recognize any other flag values as described in RFC 6844 +$wb['ca_critical_txt'] = 'Strict Check'; $wb['ca_iodef_txt'] = 'iodef'; $wb['active_txt'] = 'Aktive'; $wb['btn_save_txt'] = 'Save'; $wb['btn_cancel_txt'] = 'Cancel'; +$wb['web_php_options_txt'] = 'PHP Handler (Apache only)'; ?> diff --git a/interface/web/admin/lib/lang/sk_server_config.lng b/interface/web/admin/lib/lang/sk_server_config.lng index 9d4703c4b3..709f7b928a 100644 --- a/interface/web/admin/lib/lang/sk_server_config.lng +++ b/interface/web/admin/lib/lang/sk_server_config.lng @@ -295,4 +295,5 @@ $wb['log_retention_error_ispositive'] = 'Log retention must be a number > 0'; $wb['php_default_name_txt'] = 'Description Default PHP-Version'; $wb['php_default_name_error_empty'] = 'Description Default PHP-Version must not be empty'; $wb['error_mailbox_message_size_txt'] = 'Mailbox size must be larger or equal to message size'; +$wb['php_fpm_reload_mode_txt'] = 'PHP-FPM reload mode'; ?> diff --git a/interface/web/admin/lib/lang/sk_server_php_list.lng b/interface/web/admin/lib/lang/sk_server_php_list.lng index b402fd1ed1..62cbe61687 100644 --- a/interface/web/admin/lib/lang/sk_server_php_list.lng +++ b/interface/web/admin/lib/lang/sk_server_php_list.lng @@ -4,4 +4,5 @@ $wb['server_id_txt'] = 'Server'; $wb['add_new_record_txt'] = 'Add new PHP version'; $wb['client_id_txt'] = 'Client'; $wb['name_txt'] = 'PHP Name'; +$wb['active_txt'] = 'Active'; ?> diff --git a/interface/web/admin/lib/lang/sk_system_config.lng b/interface/web/admin/lib/lang/sk_system_config.lng index fdeb1648c4..90418e87d5 100644 --- a/interface/web/admin/lib/lang/sk_system_config.lng +++ b/interface/web/admin/lib/lang/sk_system_config.lng @@ -84,9 +84,10 @@ $wb['default_dbserver_txt'] = 'Default Database Server'; $wb['ca_name_txt'] = 'Name'; $wb['ca_issue_txt'] = 'Issue'; $wb['ca_wildcard_txt'] = 'Use Wildcard'; -$wb['ca_critical_txt'] = 'Strict Check'; //For future use. At this time, CA’s do not recognize any other flag values as described in RFC 6844 +$wb['ca_critical_txt'] = 'Strict Check'; $wb['ca_iodef_txt'] = 'iodef'; $wb['active_txt'] = 'Aktive'; $wb['btn_save_txt'] = 'Save'; $wb['btn_cancel_txt'] = 'Cancel'; +$wb['web_php_options_txt'] = 'PHP Handler (Apache only)'; ?> diff --git a/interface/web/admin/lib/lang/tr_server_config.lng b/interface/web/admin/lib/lang/tr_server_config.lng index b6a742781d..7d16f21454 100644 --- a/interface/web/admin/lib/lang/tr_server_config.lng +++ b/interface/web/admin/lib/lang/tr_server_config.lng @@ -295,4 +295,5 @@ $wb['log_retention_error_ispositive'] = 'Log retention must be a number > 0'; $wb['php_default_name_txt'] = 'Description Default PHP-Version'; $wb['php_default_name_error_empty'] = 'Description Default PHP-Version must not be empty'; $wb['error_mailbox_message_size_txt'] = 'Mailbox size must be larger or equal to message size'; +$wb['php_fpm_reload_mode_txt'] = 'PHP-FPM reload mode'; ?> diff --git a/interface/web/admin/lib/lang/tr_server_php_list.lng b/interface/web/admin/lib/lang/tr_server_php_list.lng index 3b1d39bdd2..dd3d6b730c 100644 --- a/interface/web/admin/lib/lang/tr_server_php_list.lng +++ b/interface/web/admin/lib/lang/tr_server_php_list.lng @@ -4,4 +4,5 @@ $wb['server_id_txt'] = 'Sunucu'; $wb['add_new_record_txt'] = 'PHP Sürümü Ekle'; $wb['client_id_txt'] = 'Müşteri'; $wb['name_txt'] = 'PHP Adı'; +$wb['active_txt'] = 'Active'; ?> diff --git a/interface/web/admin/lib/lang/tr_system_config.lng b/interface/web/admin/lib/lang/tr_system_config.lng index 18657743ec..c52893f6b4 100644 --- a/interface/web/admin/lib/lang/tr_system_config.lng +++ b/interface/web/admin/lib/lang/tr_system_config.lng @@ -84,9 +84,10 @@ $wb['login_link_error_regex'] = 'Invalid Link for Custom Login'; $wb['ca_name_txt'] = 'Name'; $wb['ca_issue_txt'] = 'Issue'; $wb['ca_wildcard_txt'] = 'Use Wildcard'; -$wb['ca_critical_txt'] = 'Strict Check'; //For future use. At this time, CA’s do not recognize any other flag values as described in RFC 6844 +$wb['ca_critical_txt'] = 'Strict Check'; $wb['ca_iodef_txt'] = 'iodef'; $wb['active_txt'] = 'Aktive'; $wb['btn_save_txt'] = 'Save'; $wb['btn_cancel_txt'] = 'Cancel'; +$wb['web_php_options_txt'] = 'PHP Handler (Apache only)'; ?> diff --git a/interface/web/client/lib/lang/ar_client_template_list.lng b/interface/web/client/lib/lang/ar_client_template_list.lng index 0840184a9b..9112afc626 100644 --- a/interface/web/client/lib/lang/ar_client_template_list.lng +++ b/interface/web/client/lib/lang/ar_client_template_list.lng @@ -3,4 +3,5 @@ $wb['list_head_txt'] = 'Client-Templates'; $wb['template_type_txt'] = 'Type'; $wb['template_name_txt'] = 'Template name'; $wb['template_id_txt'] = 'Template ID'; +$wb['sys_groupid_txt'] = 'Reseller'; ?> diff --git a/interface/web/client/lib/lang/bg_client_template_list.lng b/interface/web/client/lib/lang/bg_client_template_list.lng index 0840184a9b..9112afc626 100644 --- a/interface/web/client/lib/lang/bg_client_template_list.lng +++ b/interface/web/client/lib/lang/bg_client_template_list.lng @@ -3,4 +3,5 @@ $wb['list_head_txt'] = 'Client-Templates'; $wb['template_type_txt'] = 'Type'; $wb['template_name_txt'] = 'Template name'; $wb['template_id_txt'] = 'Template ID'; +$wb['sys_groupid_txt'] = 'Reseller'; ?> diff --git a/interface/web/client/lib/lang/br_client.lng b/interface/web/client/lib/lang/br_client.lng index ad9282aa4c..992c1ea2ca 100644 --- a/interface/web/client/lib/lang/br_client.lng +++ b/interface/web/client/lib/lang/br_client.lng @@ -141,7 +141,7 @@ $wb['email_error_isemail'] = 'Por favor, insira um e-mail válido.'; $wb['customer_no_error_unique'] = 'O código do cliente deve ser exclusivo (ou em branco).'; $wb['paypal_email_error_isemail'] = 'Por favor, insira um e-mail do PayPal válido.'; $wb['paypal_email_txt'] = 'e-mail do PayPal'; -$wb['err_msg_master_tpl_set'] = 'Todos as configurações de limites personalizadas são ignoradas se qualquer gabarito mestre ou algum gabarito \"personalizado\" for selecionado.'; +$wb['err_msg_master_tpl_set'] = 'Todos as configurações de limites personalizadas são ignoradas se qualquer gabarito mestre ou algum gabarito \\"personalizado\\" for selecionado.'; $wb['aps_limits_txt'] = 'Limites de apps instalados'; $wb['limit_aps_txt'] = 'Limite de instâncias de apps'; $wb['limit_aps_error_notint'] = 'Limite de instâncias de apps deve ser um número.'; diff --git a/interface/web/client/lib/lang/br_client_template.lng b/interface/web/client/lib/lang/br_client_template.lng index bc7124b16c..4b2ce6555b 100644 --- a/interface/web/client/lib/lang/br_client_template.lng +++ b/interface/web/client/lib/lang/br_client_template.lng @@ -76,7 +76,7 @@ $wb['limit_perl_txt'] = 'Perl disponÃvel'; $wb['limit_ruby_txt'] = 'Ruby disponÃvel'; $wb['limit_python_txt'] = 'Python disponÃvel'; $wb['force_suexec_txt'] = 'Forçar SuEXEC'; -$wb['limit_hterror_txt'] = 'Diretório \"Custom error docs\" disponÃvel'; +$wb['limit_hterror_txt'] = 'Diretório \\"Custom error docs\\" disponÃvel'; $wb['limit_wildcard_txt'] = 'Curingas de subdomÃnios disponÃveis'; $wb['limit_ssl_txt'] = 'SSL disponÃvel'; $wb['web_limits_txt'] = 'Limites web'; diff --git a/interface/web/client/lib/lang/br_client_template_list.lng b/interface/web/client/lib/lang/br_client_template_list.lng index 4621788016..db73df8efd 100644 --- a/interface/web/client/lib/lang/br_client_template_list.lng +++ b/interface/web/client/lib/lang/br_client_template_list.lng @@ -3,4 +3,5 @@ $wb['list_head_txt'] = 'Gabarito de limites para clientes'; $wb['template_type_txt'] = 'Tipo'; $wb['template_name_txt'] = 'Nome do Gabarito'; $wb['template_id_txt'] = 'ID do Gabarito'; +$wb['sys_groupid_txt'] = 'Reseller'; ?> diff --git a/interface/web/client/lib/lang/ca_client_template_list.lng b/interface/web/client/lib/lang/ca_client_template_list.lng index b5315018d2..b22a375f44 100644 --- a/interface/web/client/lib/lang/ca_client_template_list.lng +++ b/interface/web/client/lib/lang/ca_client_template_list.lng @@ -3,4 +3,5 @@ $wb['list_head_txt'] = 'Modèles de clients'; $wb['template_type_txt'] = 'Type'; $wb['template_name_txt'] = 'Nom du modèle'; $wb['template_id_txt'] = 'ID du modèle'; +$wb['sys_groupid_txt'] = 'Reseller'; ?> 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 3abbd09adc..28a5d3bf63 100644 --- a/interface/web/client/lib/lang/cz_client_template_list.lng +++ b/interface/web/client/lib/lang/cz_client_template_list.lng @@ -3,4 +3,5 @@ $wb['list_head_txt'] = 'Klientské Å¡ablony'; $wb['template_type_txt'] = 'Typ'; $wb['template_name_txt'] = 'Název Å¡ablony'; $wb['template_id_txt'] = 'ID Å¡ablony'; +$wb['sys_groupid_txt'] = 'Reseller'; ?> diff --git a/interface/web/client/lib/lang/de_client_template_list.lng b/interface/web/client/lib/lang/de_client_template_list.lng index cd5f339eea..adb3fecdcb 100644 --- a/interface/web/client/lib/lang/de_client_template_list.lng +++ b/interface/web/client/lib/lang/de_client_template_list.lng @@ -3,5 +3,5 @@ $wb['list_head_txt'] = 'Kundenvorlagen'; $wb['template_type_txt'] = 'Typ'; $wb['template_name_txt'] = 'Vorlagenname'; $wb['template_id_txt'] = 'Template ID'; -$wb['sys_groupid_txt'] = 'Reseller'; +$wb['sys_groupid_txt'] = 'Reseller'; ?> diff --git a/interface/web/client/lib/lang/dk_client_template_list.lng b/interface/web/client/lib/lang/dk_client_template_list.lng index ca83656182..6be08eade8 100644 --- a/interface/web/client/lib/lang/dk_client_template_list.lng +++ b/interface/web/client/lib/lang/dk_client_template_list.lng @@ -3,4 +3,5 @@ $wb['list_head_txt'] = 'Kunde og Forhandler Skabeloner'; $wb['template_type_txt'] = 'Type'; $wb['template_name_txt'] = 'Skabelon navn'; $wb['template_id_txt'] = 'Skabelon ID'; +$wb['sys_groupid_txt'] = 'Reseller'; ?> diff --git a/interface/web/client/lib/lang/el_client_template_list.lng b/interface/web/client/lib/lang/el_client_template_list.lng index 175c2bfb8f..8bb3412df9 100644 --- a/interface/web/client/lib/lang/el_client_template_list.lng +++ b/interface/web/client/lib/lang/el_client_template_list.lng @@ -3,4 +3,5 @@ $wb['list_head_txt'] = 'Î Ïότυπα Πελάτη'; $wb['template_type_txt'] = 'ΤÏπος'; $wb['template_name_txt'] = 'Όνομα Î ÏοτÏπου'; $wb['template_id_txt'] = 'Template ID'; +$wb['sys_groupid_txt'] = 'Reseller'; ?> diff --git a/interface/web/client/lib/lang/es_client_template_list.lng b/interface/web/client/lib/lang/es_client_template_list.lng index 4a8032c6fb..283a4ff17a 100755 --- a/interface/web/client/lib/lang/es_client_template_list.lng +++ b/interface/web/client/lib/lang/es_client_template_list.lng @@ -3,4 +3,5 @@ $wb['list_head_txt'] = 'Plantillas de clientes'; $wb['template_id_txt'] = 'ID de la plantilla'; $wb['template_name_txt'] = 'Nombre de la plantilla'; $wb['template_type_txt'] = 'Tipo'; +$wb['sys_groupid_txt'] = 'Reseller'; ?> diff --git a/interface/web/client/lib/lang/fi_client_template_list.lng b/interface/web/client/lib/lang/fi_client_template_list.lng index b3f310f131..586f93e01c 100755 --- a/interface/web/client/lib/lang/fi_client_template_list.lng +++ b/interface/web/client/lib/lang/fi_client_template_list.lng @@ -3,4 +3,5 @@ $wb['list_head_txt'] = 'Asiakasmallit'; $wb['template_type_txt'] = 'Tyyppi'; $wb['template_name_txt'] = 'Asiakasmallin nimi'; $wb['template_id_txt'] = 'Template ID'; +$wb['sys_groupid_txt'] = 'Reseller'; ?> diff --git a/interface/web/client/lib/lang/fr_client_template_list.lng b/interface/web/client/lib/lang/fr_client_template_list.lng index b5315018d2..b22a375f44 100644 --- a/interface/web/client/lib/lang/fr_client_template_list.lng +++ b/interface/web/client/lib/lang/fr_client_template_list.lng @@ -3,4 +3,5 @@ $wb['list_head_txt'] = 'Modèles de clients'; $wb['template_type_txt'] = 'Type'; $wb['template_name_txt'] = 'Nom du modèle'; $wb['template_id_txt'] = 'ID du modèle'; +$wb['sys_groupid_txt'] = 'Reseller'; ?> diff --git a/interface/web/client/lib/lang/hr_client_template_list.lng b/interface/web/client/lib/lang/hr_client_template_list.lng index cdc2f0006a..fc817c9c25 100644 --- a/interface/web/client/lib/lang/hr_client_template_list.lng +++ b/interface/web/client/lib/lang/hr_client_template_list.lng @@ -3,4 +3,5 @@ $wb['list_head_txt'] = 'PredloÅ¡ci za klijente'; $wb['template_type_txt'] = 'Vrsta'; $wb['template_name_txt'] = 'Naziv predloÅ¡ka'; $wb['template_id_txt'] = 'Template ID'; +$wb['sys_groupid_txt'] = 'Reseller'; ?> diff --git a/interface/web/client/lib/lang/hu_client_template_list.lng b/interface/web/client/lib/lang/hu_client_template_list.lng index 316de63143..b04b3405ee 100644 --- a/interface/web/client/lib/lang/hu_client_template_list.lng +++ b/interface/web/client/lib/lang/hu_client_template_list.lng @@ -3,4 +3,5 @@ $wb['list_head_txt'] = 'Ãœgyfél-Sablonok'; $wb['template_type_txt'] = 'tÃpus'; $wb['template_name_txt'] = 'Sablon neve'; $wb['template_id_txt'] = 'Template ID'; +$wb['sys_groupid_txt'] = 'Reseller'; ?> diff --git a/interface/web/client/lib/lang/id_client_template_list.lng b/interface/web/client/lib/lang/id_client_template_list.lng index e0da97101a..dd0259544b 100644 --- a/interface/web/client/lib/lang/id_client_template_list.lng +++ b/interface/web/client/lib/lang/id_client_template_list.lng @@ -3,4 +3,5 @@ $wb['list_head_txt'] = 'Template Klien'; $wb['template_type_txt'] = 'Tipe'; $wb['template_name_txt'] = 'Nama Template'; $wb['template_id_txt'] = 'Template ID'; +$wb['sys_groupid_txt'] = 'Reseller'; ?> diff --git a/interface/web/client/lib/lang/it_client_template_list.lng b/interface/web/client/lib/lang/it_client_template_list.lng index d78faf8778..43b1a5ca49 100644 --- a/interface/web/client/lib/lang/it_client_template_list.lng +++ b/interface/web/client/lib/lang/it_client_template_list.lng @@ -3,4 +3,5 @@ $wb['list_head_txt'] = 'Modelli cliente'; $wb['template_type_txt'] = 'Tipo'; $wb['template_name_txt'] = 'Nome modello'; $wb['template_id_txt'] = 'Template ID'; +$wb['sys_groupid_txt'] = 'Reseller'; ?> diff --git a/interface/web/client/lib/lang/ja_client_template_list.lng b/interface/web/client/lib/lang/ja_client_template_list.lng index 8adca01b14..3e67a0e009 100644 --- a/interface/web/client/lib/lang/ja_client_template_list.lng +++ b/interface/web/client/lib/lang/ja_client_template_list.lng @@ -3,4 +3,5 @@ $wb['list_head_txt'] = 'クライアントテンプレート'; $wb['template_type_txt'] = '種別'; $wb['template_name_txt'] = 'テンプレートå'; $wb['template_id_txt'] = 'Template ID'; +$wb['sys_groupid_txt'] = 'Reseller'; ?> diff --git a/interface/web/client/lib/lang/nl_client_template_list.lng b/interface/web/client/lib/lang/nl_client_template_list.lng index 8bbe7a5a0f..fa62e4b79f 100644 --- a/interface/web/client/lib/lang/nl_client_template_list.lng +++ b/interface/web/client/lib/lang/nl_client_template_list.lng @@ -3,4 +3,5 @@ $wb['list_head_txt'] = 'Client-Templates'; $wb['template_type_txt'] = 'Type'; $wb['template_name_txt'] = 'Template naam'; $wb['template_id_txt'] = 'Template ID'; +$wb['sys_groupid_txt'] = 'Reseller'; ?> diff --git a/interface/web/client/lib/lang/pl_client_template_list.lng b/interface/web/client/lib/lang/pl_client_template_list.lng index d6bd952d0b..a7f7cf1638 100644 --- a/interface/web/client/lib/lang/pl_client_template_list.lng +++ b/interface/web/client/lib/lang/pl_client_template_list.lng @@ -3,4 +3,5 @@ $wb['list_head_txt'] = 'Szablon klienta'; $wb['template_type_txt'] = 'Typ'; $wb['template_name_txt'] = 'Nazwa szablonu'; $wb['template_id_txt'] = 'Template ID'; +$wb['sys_groupid_txt'] = 'Reseller'; ?> diff --git a/interface/web/client/lib/lang/pt_client_template_list.lng b/interface/web/client/lib/lang/pt_client_template_list.lng index d5f451111a..54b88241da 100644 --- a/interface/web/client/lib/lang/pt_client_template_list.lng +++ b/interface/web/client/lib/lang/pt_client_template_list.lng @@ -3,4 +3,5 @@ $wb['list_head_txt'] = 'Templates de Cliente '; $wb['template_type_txt'] = 'Tipo'; $wb['template_name_txt'] = 'Nome da template'; $wb['template_id_txt'] = 'Template ID'; +$wb['sys_groupid_txt'] = 'Reseller'; ?> diff --git a/interface/web/client/lib/lang/ro_client_template_list.lng b/interface/web/client/lib/lang/ro_client_template_list.lng index 17fbf995b9..3f5764c50c 100644 --- a/interface/web/client/lib/lang/ro_client_template_list.lng +++ b/interface/web/client/lib/lang/ro_client_template_list.lng @@ -3,4 +3,5 @@ $wb['list_head_txt'] = 'Template client'; $wb['template_type_txt'] = 'Tp'; $wb['template_name_txt'] = 'Nume Template'; $wb['template_id_txt'] = 'Template ID'; +$wb['sys_groupid_txt'] = 'Reseller'; ?> diff --git a/interface/web/client/lib/lang/ru_client.lng b/interface/web/client/lib/lang/ru_client.lng index a37d4673a1..befd6b15bf 100644 --- a/interface/web/client/lib/lang/ru_client.lng +++ b/interface/web/client/lib/lang/ru_client.lng @@ -108,7 +108,7 @@ $wb['limit_openvz_vm_template_id_txt'] = 'Принудительный шабл $wb['limit_openvz_vm_error_notint'] = 'Лимит виртуальных Ñерверов должен быть чиÑлом.'; $wb['web_php_options_notempty'] = 'Ðет выбранных параметров PHP. Выберите по крайней мере один параметр PHP.'; $wb['ssh_chroot_notempty'] = 'Ðе выбран параметр SSH-Chroot. Выберите по крайней мере один параметр SSH-Chroot.'; -$wb['username_error_collision'] = 'Ð˜Ð¼Ñ Ð¿Ð¾Ð»ÑŒÐ·Ð¾Ð²Ð°Ñ‚ÐµÐ»Ñ Ð½Ðµ может начинатьÑÑ Ñо Ñлова \"web\" или \"web\" Ð¿Ð»ÑŽÑ Ñ‡Ð¸Ñло.'; +$wb['username_error_collision'] = 'Ð˜Ð¼Ñ Ð¿Ð¾Ð»ÑŒÐ·Ð¾Ð²Ð°Ñ‚ÐµÐ»Ñ Ð½Ðµ может начинатьÑÑ Ñо Ñлова \\"web\\" или \\"web\\" Ð¿Ð»ÑŽÑ Ñ‡Ð¸Ñло.'; $wb['add_additional_template_txt'] = 'Добавить дополнительный шаблон'; $wb['delete_additional_template_txt'] = 'Удалить дополнительный шаблон'; $wb['limit_cgi_txt'] = 'CGI доÑтупен'; @@ -141,7 +141,7 @@ $wb['email_error_isemail'] = 'Ðекорректный почтовый адре $wb['customer_no_error_unique'] = 'Счётчик номера Клиента должен быть уникален (или отÑутÑтвует).'; $wb['paypal_email_error_isemail'] = 'ПожалуйÑта, введите дейÑтвующий Ð°Ð´Ñ€ÐµÑ Ñлектронной почты PayPal.'; $wb['paypal_email_txt'] = 'ÐÐ´Ñ€ÐµÑ Ñлектронной почты PayPal'; -$wb['err_msg_master_tpl_set'] = 'ЗначениÑ, уÑтановленные здеÑÑŒ игнорируютÑÑ, еÑли не выбран в качеÑтве главного шаблона \"Custom\"!'; +$wb['err_msg_master_tpl_set'] = 'ЗначениÑ, уÑтановленные здеÑÑŒ игнорируютÑÑ, еÑли не выбран в качеÑтве главного шаблона \\"Custom\\"!'; $wb['aps_limits_txt'] = 'Лимиты УÑтановщика APS'; $wb['limit_aps_txt'] = 'МакÑ. количеÑтво ÑкземплÑров APS'; $wb['limit_aps_error_notint'] = 'Лимит ÑкземплÑров APS должен быть чиÑлом.'; diff --git a/interface/web/client/lib/lang/ru_client_template_list.lng b/interface/web/client/lib/lang/ru_client_template_list.lng index 30d0dfed45..2981e21671 100644 --- a/interface/web/client/lib/lang/ru_client_template_list.lng +++ b/interface/web/client/lib/lang/ru_client_template_list.lng @@ -3,4 +3,5 @@ $wb['list_head_txt'] = 'Шаблоны клиентов'; $wb['template_type_txt'] = 'Тип'; $wb['template_name_txt'] = 'Ð˜Ð¼Ñ ÑˆÐ°Ð±Ð»Ð¾Ð½Ð°'; $wb['template_id_txt'] = 'ID шаблона'; +$wb['sys_groupid_txt'] = 'Reseller'; ?> diff --git a/interface/web/client/lib/lang/ru_reseller.lng b/interface/web/client/lib/lang/ru_reseller.lng index 4a177cccc8..998a886990 100644 --- a/interface/web/client/lib/lang/ru_reseller.lng +++ b/interface/web/client/lib/lang/ru_reseller.lng @@ -108,7 +108,7 @@ $wb['limit_openvz_vm_template_id_txt'] = 'Принудительный шабл $wb['limit_openvz_vm_error_notint'] = 'Лимит виртуальных Ñерверов должен быть чиÑлом.'; $wb['web_php_options_notempty'] = 'Ðет выбранных параметров PHP. Выберите по крайней мере один параметр PHP.'; $wb['ssh_chroot_notempty'] = 'Ðе выбран параметр SSH-Chroot. Выберите по крайней мере один параметр SSH-Chroot.'; -$wb['username_error_collision'] = 'Ð˜Ð¼Ñ Ð¿Ð¾Ð»ÑŒÐ·Ð¾Ð²Ð°Ñ‚ÐµÐ»Ñ Ð½Ðµ может начинатьÑÑ Ñо Ñлова \"web\" или \"web\" Ð¿Ð»ÑŽÑ Ñ‡Ð¸Ñло.'; +$wb['username_error_collision'] = 'Ð˜Ð¼Ñ Ð¿Ð¾Ð»ÑŒÐ·Ð¾Ð²Ð°Ñ‚ÐµÐ»Ñ Ð½Ðµ может начинатьÑÑ Ñо Ñлова \\"web\\" или \\"web\\" Ð¿Ð»ÑŽÑ Ñ‡Ð¸Ñло.'; $wb['add_additional_template_txt'] = 'Добавить дополнительный шаблон'; $wb['delete_additional_template_txt'] = 'Удалить дополнительный шаблон'; $wb['limit_cgi_txt'] = 'CGI доÑтупен'; @@ -159,7 +159,7 @@ $wb['added_date_txt'] = 'Дата добавлениÑ'; $wb['limit_domainmodule_error_notint'] = 'Лимит модулей домена должен быть чиÑлом.'; $wb['limit_domainmodule_txt'] = 'Лимит модулей домена'; $wb['client_limits_txt'] = 'Лимиты Клиента'; -$wb['err_msg_master_tpl_set'] = 'ЗначениÑ, уÑтановленные здеÑÑŒ игнорируютÑÑ, еÑли не выбран в качеÑтве главного шаблона \"Custom\"!'; +$wb['err_msg_master_tpl_set'] = 'ЗначениÑ, уÑтановленные здеÑÑŒ игнорируютÑÑ, еÑли не выбран в качеÑтве главного шаблона \\"Custom\\"!'; $wb['btn_save_txt'] = 'Сохранить'; $wb['btn_cancel_txt'] = 'Отменить'; $wb['email_error_empty'] = 'ÐÐ´Ñ€ÐµÑ Ñл. почты пуÑтой'; diff --git a/interface/web/client/lib/lang/se_client_template_list.lng b/interface/web/client/lib/lang/se_client_template_list.lng index b594337e7c..37ce6de45d 100644 --- a/interface/web/client/lib/lang/se_client_template_list.lng +++ b/interface/web/client/lib/lang/se_client_template_list.lng @@ -3,4 +3,5 @@ $wb['list_head_txt'] = 'Kundmallar'; $wb['template_type_txt'] = 'Typ'; $wb['template_name_txt'] = 'Mallnamn'; $wb['template_id_txt'] = 'Mall-ID'; +$wb['sys_groupid_txt'] = 'Reseller'; ?> diff --git a/interface/web/client/lib/lang/sk_client_template_list.lng b/interface/web/client/lib/lang/sk_client_template_list.lng index ac25b8f3a9..94637b1750 100644 --- a/interface/web/client/lib/lang/sk_client_template_list.lng +++ b/interface/web/client/lib/lang/sk_client_template_list.lng @@ -3,4 +3,5 @@ $wb['list_head_txt'] = 'Klient-Å ablóny'; $wb['template_type_txt'] = 'Typ'; $wb['template_name_txt'] = 'Meno Å¡ablóny'; $wb['template_id_txt'] = 'Template ID'; +$wb['sys_groupid_txt'] = 'Reseller'; ?> diff --git a/interface/web/client/lib/lang/tr_client_template_list.lng b/interface/web/client/lib/lang/tr_client_template_list.lng index 1663e6e2da..fbe35efc9e 100644 --- a/interface/web/client/lib/lang/tr_client_template_list.lng +++ b/interface/web/client/lib/lang/tr_client_template_list.lng @@ -3,4 +3,5 @@ $wb['list_head_txt'] = 'Müşteri ve Bayi Kalıpları'; $wb['template_type_txt'] = 'Tip'; $wb['template_name_txt'] = 'Kalıp adı'; $wb['template_id_txt'] = 'Kalıp kodu'; +$wb['sys_groupid_txt'] = 'Reseller'; ?> diff --git a/interface/web/dns/lib/lang/ar_dns_caa.lng b/interface/web/dns/lib/lang/ar_dns_caa.lng index 1fa7dcb7d5..973a97ceb6 100644 --- a/interface/web/dns/lib/lang/ar_dns_caa.lng +++ b/interface/web/dns/lib/lang/ar_dns_caa.lng @@ -6,7 +6,7 @@ $wb['ca_hostname_note_txt'] = '(Sepearated list with commas - empty for all host $wb['ca_options_txt'] = 'Additional Options'; $wb['ca_options_note_txt'] = 'requested by the CA (Sepearated list with commas)'; $wb['ca_wildcard_txt'] = 'Use Wildcard SSL'; -$wb['ca_critical_txt'] = 'Strict check'; //For future use. At this time, CAAs do not recognize any other flag values as described in RFC 6844 +$wb['ca_critical_txt'] = 'Strict check'; $wb['ttl_txt'] = 'TTL'; $wb['active_txt'] = 'Active'; $wb['select_txt'] = 'Select Certifiction Authority'; diff --git a/interface/web/dns/lib/lang/bg_dns_caa.lng b/interface/web/dns/lib/lang/bg_dns_caa.lng index 1fa7dcb7d5..973a97ceb6 100644 --- a/interface/web/dns/lib/lang/bg_dns_caa.lng +++ b/interface/web/dns/lib/lang/bg_dns_caa.lng @@ -6,7 +6,7 @@ $wb['ca_hostname_note_txt'] = '(Sepearated list with commas - empty for all host $wb['ca_options_txt'] = 'Additional Options'; $wb['ca_options_note_txt'] = 'requested by the CA (Sepearated list with commas)'; $wb['ca_wildcard_txt'] = 'Use Wildcard SSL'; -$wb['ca_critical_txt'] = 'Strict check'; //For future use. At this time, CAAs do not recognize any other flag values as described in RFC 6844 +$wb['ca_critical_txt'] = 'Strict check'; $wb['ttl_txt'] = 'TTL'; $wb['active_txt'] = 'Active'; $wb['select_txt'] = 'Select Certifiction Authority'; diff --git a/interface/web/dns/lib/lang/br_dns_caa.lng b/interface/web/dns/lib/lang/br_dns_caa.lng index 1fa7dcb7d5..973a97ceb6 100644 --- a/interface/web/dns/lib/lang/br_dns_caa.lng +++ b/interface/web/dns/lib/lang/br_dns_caa.lng @@ -6,7 +6,7 @@ $wb['ca_hostname_note_txt'] = '(Sepearated list with commas - empty for all host $wb['ca_options_txt'] = 'Additional Options'; $wb['ca_options_note_txt'] = 'requested by the CA (Sepearated list with commas)'; $wb['ca_wildcard_txt'] = 'Use Wildcard SSL'; -$wb['ca_critical_txt'] = 'Strict check'; //For future use. At this time, CAAs do not recognize any other flag values as described in RFC 6844 +$wb['ca_critical_txt'] = 'Strict check'; $wb['ttl_txt'] = 'TTL'; $wb['active_txt'] = 'Active'; $wb['select_txt'] = 'Select Certifiction Authority'; diff --git a/interface/web/dns/lib/lang/br_dns_dmarc.lng b/interface/web/dns/lib/lang/br_dns_dmarc.lng index 5b7201075f..8bb35318f8 100644 --- a/interface/web/dns/lib/lang/br_dns_dmarc.lng +++ b/interface/web/dns/lib/lang/br_dns_dmarc.lng @@ -2,7 +2,7 @@ $wb['data_txt'] = 'Registro DMARC'; $wb['domain_txt'] = 'DomÃnio'; $wb['dmarc_policy_txt'] = 'PolÃtica de recepção de e-mails'; -$wb['dmarc_policy_note_txt'] = 'Como os \"ISPs\" devem tratar as mensagens SPF ou DKIM com falha (DMARC).'; +$wb['dmarc_policy_note_txt'] = 'Como os \\"ISPs\\" devem tratar as mensagens SPF ou DKIM com falha (DMARC).'; $wb['dmarc_policy_none_txt'] = 'não fazer nada'; $wb['dmarc_policy_quarantine_txt'] = 'quarentena'; $wb['dmarc_policy_reject_txt'] = 'rejeitar'; @@ -11,16 +11,16 @@ $wb['dmarc_rua_note_txt'] = 'Endereços de e-mail para receber relatórios do si $wb['dmarc_ruf_txt'] = 'Relatório forense de dados por endereço'; $wb['dmarc_ruf_note_txt'] = 'Endereços de e-mail para receber amostras de mensagens com falha e controles DMARC do domÃnio (separados por espaço em branco)'; $wb['dmarc_fo_txt'] = 'Opções de relatório forense'; -$wb['dmarc_fo0_txt'] = 'Gerar relatórios se todos os mecanismos de autenticação subjacentes deixarem de produzir um resultado DMARC \"pass\".'; +$wb['dmarc_fo0_txt'] = 'Gerar relatórios se todos os mecanismos de autenticação subjacentes deixarem de produzir um resultado DMARC \\"pass\\".'; $wb['dmarc_fo1_txt'] = 'Gerar relatório se algum mecanismo falhar.'; $wb['dmarc_fod_txt'] = 'Gerar relatório se assinatura DKIM falhar na verificação.'; $wb['dmarc_fos_txt'] = 'Gerar relatório se o SPF falhar.'; $wb['dmarc_adkim_txt'] = 'Parametrização do identificador DKIM'; -$wb['dmarc_adkim_note_txt'] = 'Modo \"strict\" exige combinação exata entre o DKIM do domÃnio e e-mails'; +$wb['dmarc_adkim_note_txt'] = 'Modo \\"strict\\" exige combinação exata entre o DKIM do domÃnio e e-mails'; $wb['dmarc_adkim_r_txt'] = 'relaxed'; $wb['dmarc_adkim_s_txt'] = 'strict'; $wb['dmarc_aspf_txt'] = 'Parametrização do identificador SPF'; -$wb['dmarc_aspf_note_txt'] = 'Modo \"strict\" exige combinação exata entre o SPF do domÃnio e e-mails'; +$wb['dmarc_aspf_note_txt'] = 'Modo \\"strict\\" exige combinação exata entre o SPF do domÃnio e e-mails'; $wb['dmarc_aspf_r_txt'] = 'relaxed'; $wb['dmarc_aspf_s_txt'] = 'strict'; $wb['dmarc_rf_txt'] = 'Formatação do relatório'; @@ -37,7 +37,7 @@ $wb['dmarc_sp_quarantine_txt'] = 'quarentena'; $wb['dmarc_sp_reject_txt'] = 'rejeitar'; $wb['ttl_txt'] = 'TTL'; $wb['active_txt'] = 'Ativo'; -$wb['dmarc_policy_error_txt'] = 'Somente a polÃtica \"nenhum\" é permitida para e-mails sem assinatura DKIM.'; +$wb['dmarc_policy_error_txt'] = 'Somente a polÃtica \\"nenhum\\" é permitida para e-mails sem assinatura DKIM.'; $wb['dmarc_no_dkim_txt'] = 'Nenhum registro DKIM ativo.'; $wb['dmarc_no_spf_txt'] = 'Nenhum registro SPF ativo.'; $wb['dmarc_more_spf_txt'] = 'Mais de um registro SPF ativo.'; diff --git a/interface/web/dns/lib/lang/br_dns_tlsa.lng b/interface/web/dns/lib/lang/br_dns_tlsa.lng index c78c6fd190..5e1bf2256e 100644 --- a/interface/web/dns/lib/lang/br_dns_tlsa.lng +++ b/interface/web/dns/lib/lang/br_dns_tlsa.lng @@ -9,8 +9,8 @@ $wb['active_txt'] = 'Ativo'; $wb['limit_dns_record_txt'] = 'O limite de registros dns para esta conta foi alcançado.'; $wb['no_zone_perm'] = 'Você não tem permissão para adicionar registros a esta zona dns.'; $wb['name_error_empty'] = 'Descritor de serviço está em branco.'; -$wb['name_error_regex'] = 'Descritor de serviço é inválido. Formato correto: \"_<port>._(tcp|udp).<hostname>\".'; +$wb['name_error_regex'] = 'Descritor de serviço é inválido. Formato correto: \\"_<port>._(tcp|udp).<hostname>\\".'; $wb['data_error_empty'] = 'Dados TLSA está em branco.'; -$wb['data_error_regex'] = 'Dados TLSA são inválidos. Formato correto: \"n n n HASH\".'; +$wb['data_error_regex'] = 'Dados TLSA são inválidos. Formato correto: \\"n n n HASH\\".'; $wb['ttl_range_error'] = 'O ttl mÃnimo são 60 segundos.'; ?> diff --git a/interface/web/dns/lib/lang/ca_dns_caa.lng b/interface/web/dns/lib/lang/ca_dns_caa.lng index 1fa7dcb7d5..973a97ceb6 100644 --- a/interface/web/dns/lib/lang/ca_dns_caa.lng +++ b/interface/web/dns/lib/lang/ca_dns_caa.lng @@ -6,7 +6,7 @@ $wb['ca_hostname_note_txt'] = '(Sepearated list with commas - empty for all host $wb['ca_options_txt'] = 'Additional Options'; $wb['ca_options_note_txt'] = 'requested by the CA (Sepearated list with commas)'; $wb['ca_wildcard_txt'] = 'Use Wildcard SSL'; -$wb['ca_critical_txt'] = 'Strict check'; //For future use. At this time, CAAs do not recognize any other flag values as described in RFC 6844 +$wb['ca_critical_txt'] = 'Strict check'; $wb['ttl_txt'] = 'TTL'; $wb['active_txt'] = 'Active'; $wb['select_txt'] = 'Select Certifiction Authority'; diff --git a/interface/web/dns/lib/lang/cz_dns_caa.lng b/interface/web/dns/lib/lang/cz_dns_caa.lng index 1fa7dcb7d5..973a97ceb6 100644 --- a/interface/web/dns/lib/lang/cz_dns_caa.lng +++ b/interface/web/dns/lib/lang/cz_dns_caa.lng @@ -6,7 +6,7 @@ $wb['ca_hostname_note_txt'] = '(Sepearated list with commas - empty for all host $wb['ca_options_txt'] = 'Additional Options'; $wb['ca_options_note_txt'] = 'requested by the CA (Sepearated list with commas)'; $wb['ca_wildcard_txt'] = 'Use Wildcard SSL'; -$wb['ca_critical_txt'] = 'Strict check'; //For future use. At this time, CAAs do not recognize any other flag values as described in RFC 6844 +$wb['ca_critical_txt'] = 'Strict check'; $wb['ttl_txt'] = 'TTL'; $wb['active_txt'] = 'Active'; $wb['select_txt'] = 'Select Certifiction Authority'; diff --git a/interface/web/dns/lib/lang/de_dns_caa.lng b/interface/web/dns/lib/lang/de_dns_caa.lng index 88dbf6e47a..a711023684 100644 --- a/interface/web/dns/lib/lang/de_dns_caa.lng +++ b/interface/web/dns/lib/lang/de_dns_caa.lng @@ -6,7 +6,7 @@ $wb['ca_hostname_note_txt'] = '(mit Komma getrennte Liste - leer für alle Namen $wb['ca_options_txt'] = 'zusätzliche Angaben'; $wb['ca_options_note_txt'] = 'von der Zertifizierungsstelle vorgegeben (mit Komma getrennte Liste)'; $wb['ca_wildcard_txt'] = 'Wildcard verwenden'; -$wb['ca_critical_txt'] = 'Strikte Ãœberprüfung durch die Zertifizierungsstelle'; //For future use. At this time, CA’s do not recognize any other flag values as described in RFC 6844 +$wb['ca_critical_txt'] = 'Strikte Ãœberprüfung durch die Zertifizierungsstelle'; $wb['ttl_txt'] = 'TTL'; $wb['active_txt'] = 'Aktiv'; $wb['select_txt'] = 'Zertifizierungstelle auswählen'; diff --git a/interface/web/dns/lib/lang/dk_dns_caa.lng b/interface/web/dns/lib/lang/dk_dns_caa.lng index 1fa7dcb7d5..973a97ceb6 100644 --- a/interface/web/dns/lib/lang/dk_dns_caa.lng +++ b/interface/web/dns/lib/lang/dk_dns_caa.lng @@ -6,7 +6,7 @@ $wb['ca_hostname_note_txt'] = '(Sepearated list with commas - empty for all host $wb['ca_options_txt'] = 'Additional Options'; $wb['ca_options_note_txt'] = 'requested by the CA (Sepearated list with commas)'; $wb['ca_wildcard_txt'] = 'Use Wildcard SSL'; -$wb['ca_critical_txt'] = 'Strict check'; //For future use. At this time, CAAs do not recognize any other flag values as described in RFC 6844 +$wb['ca_critical_txt'] = 'Strict check'; $wb['ttl_txt'] = 'TTL'; $wb['active_txt'] = 'Active'; $wb['select_txt'] = 'Select Certifiction Authority'; diff --git a/interface/web/dns/lib/lang/el_dns_caa.lng b/interface/web/dns/lib/lang/el_dns_caa.lng index 1fa7dcb7d5..973a97ceb6 100644 --- a/interface/web/dns/lib/lang/el_dns_caa.lng +++ b/interface/web/dns/lib/lang/el_dns_caa.lng @@ -6,7 +6,7 @@ $wb['ca_hostname_note_txt'] = '(Sepearated list with commas - empty for all host $wb['ca_options_txt'] = 'Additional Options'; $wb['ca_options_note_txt'] = 'requested by the CA (Sepearated list with commas)'; $wb['ca_wildcard_txt'] = 'Use Wildcard SSL'; -$wb['ca_critical_txt'] = 'Strict check'; //For future use. At this time, CAAs do not recognize any other flag values as described in RFC 6844 +$wb['ca_critical_txt'] = 'Strict check'; $wb['ttl_txt'] = 'TTL'; $wb['active_txt'] = 'Active'; $wb['select_txt'] = 'Select Certifiction Authority'; diff --git a/interface/web/dns/lib/lang/es_dns_caa.lng b/interface/web/dns/lib/lang/es_dns_caa.lng index bf5b2ac8e1..82de234d6e 100644 --- a/interface/web/dns/lib/lang/es_dns_caa.lng +++ b/interface/web/dns/lib/lang/es_dns_caa.lng @@ -6,7 +6,7 @@ $wb['ca_hostname_note_txt'] = '(Sepearated list with commas - empty for all host $wb['ca_options_txt'] = 'Additional Options'; $wb['ca_options_note_txt'] = 'requested by the CA (Sepearated list with commas)'; $wb['ca_wildcard_txt'] = 'Use Wildcard SSL'; -$wb['ca_critical_txt'] = 'Strict check'; //For future use. At this time, CAAs do not recognize any other flag values as described in RFC 6844 +$wb['ca_critical_txt'] = 'Strict check'; $wb['ttl_txt'] = 'TTL'; $wb['active_txt'] = 'Active'; $wb['select_txt'] = 'Select Certifiction Authority'; diff --git a/interface/web/dns/lib/lang/fi_dns_caa.lng b/interface/web/dns/lib/lang/fi_dns_caa.lng index bf5b2ac8e1..82de234d6e 100644 --- a/interface/web/dns/lib/lang/fi_dns_caa.lng +++ b/interface/web/dns/lib/lang/fi_dns_caa.lng @@ -6,7 +6,7 @@ $wb['ca_hostname_note_txt'] = '(Sepearated list with commas - empty for all host $wb['ca_options_txt'] = 'Additional Options'; $wb['ca_options_note_txt'] = 'requested by the CA (Sepearated list with commas)'; $wb['ca_wildcard_txt'] = 'Use Wildcard SSL'; -$wb['ca_critical_txt'] = 'Strict check'; //For future use. At this time, CAAs do not recognize any other flag values as described in RFC 6844 +$wb['ca_critical_txt'] = 'Strict check'; $wb['ttl_txt'] = 'TTL'; $wb['active_txt'] = 'Active'; $wb['select_txt'] = 'Select Certifiction Authority'; diff --git a/interface/web/dns/lib/lang/fr_dns_caa.lng b/interface/web/dns/lib/lang/fr_dns_caa.lng index bf5b2ac8e1..82de234d6e 100644 --- a/interface/web/dns/lib/lang/fr_dns_caa.lng +++ b/interface/web/dns/lib/lang/fr_dns_caa.lng @@ -6,7 +6,7 @@ $wb['ca_hostname_note_txt'] = '(Sepearated list with commas - empty for all host $wb['ca_options_txt'] = 'Additional Options'; $wb['ca_options_note_txt'] = 'requested by the CA (Sepearated list with commas)'; $wb['ca_wildcard_txt'] = 'Use Wildcard SSL'; -$wb['ca_critical_txt'] = 'Strict check'; //For future use. At this time, CAAs do not recognize any other flag values as described in RFC 6844 +$wb['ca_critical_txt'] = 'Strict check'; $wb['ttl_txt'] = 'TTL'; $wb['active_txt'] = 'Active'; $wb['select_txt'] = 'Select Certifiction Authority'; diff --git a/interface/web/dns/lib/lang/hr_dns_caa.lng b/interface/web/dns/lib/lang/hr_dns_caa.lng index bf5b2ac8e1..82de234d6e 100644 --- a/interface/web/dns/lib/lang/hr_dns_caa.lng +++ b/interface/web/dns/lib/lang/hr_dns_caa.lng @@ -6,7 +6,7 @@ $wb['ca_hostname_note_txt'] = '(Sepearated list with commas - empty for all host $wb['ca_options_txt'] = 'Additional Options'; $wb['ca_options_note_txt'] = 'requested by the CA (Sepearated list with commas)'; $wb['ca_wildcard_txt'] = 'Use Wildcard SSL'; -$wb['ca_critical_txt'] = 'Strict check'; //For future use. At this time, CAAs do not recognize any other flag values as described in RFC 6844 +$wb['ca_critical_txt'] = 'Strict check'; $wb['ttl_txt'] = 'TTL'; $wb['active_txt'] = 'Active'; $wb['select_txt'] = 'Select Certifiction Authority'; diff --git a/interface/web/dns/lib/lang/hu_dns_caa.lng b/interface/web/dns/lib/lang/hu_dns_caa.lng index bf5b2ac8e1..82de234d6e 100644 --- a/interface/web/dns/lib/lang/hu_dns_caa.lng +++ b/interface/web/dns/lib/lang/hu_dns_caa.lng @@ -6,7 +6,7 @@ $wb['ca_hostname_note_txt'] = '(Sepearated list with commas - empty for all host $wb['ca_options_txt'] = 'Additional Options'; $wb['ca_options_note_txt'] = 'requested by the CA (Sepearated list with commas)'; $wb['ca_wildcard_txt'] = 'Use Wildcard SSL'; -$wb['ca_critical_txt'] = 'Strict check'; //For future use. At this time, CAAs do not recognize any other flag values as described in RFC 6844 +$wb['ca_critical_txt'] = 'Strict check'; $wb['ttl_txt'] = 'TTL'; $wb['active_txt'] = 'Active'; $wb['select_txt'] = 'Select Certifiction Authority'; diff --git a/interface/web/dns/lib/lang/id_dns_caa.lng b/interface/web/dns/lib/lang/id_dns_caa.lng index bf5b2ac8e1..82de234d6e 100644 --- a/interface/web/dns/lib/lang/id_dns_caa.lng +++ b/interface/web/dns/lib/lang/id_dns_caa.lng @@ -6,7 +6,7 @@ $wb['ca_hostname_note_txt'] = '(Sepearated list with commas - empty for all host $wb['ca_options_txt'] = 'Additional Options'; $wb['ca_options_note_txt'] = 'requested by the CA (Sepearated list with commas)'; $wb['ca_wildcard_txt'] = 'Use Wildcard SSL'; -$wb['ca_critical_txt'] = 'Strict check'; //For future use. At this time, CAAs do not recognize any other flag values as described in RFC 6844 +$wb['ca_critical_txt'] = 'Strict check'; $wb['ttl_txt'] = 'TTL'; $wb['active_txt'] = 'Active'; $wb['select_txt'] = 'Select Certifiction Authority'; diff --git a/interface/web/dns/lib/lang/it_dns_caa.lng b/interface/web/dns/lib/lang/it_dns_caa.lng index bf5b2ac8e1..82de234d6e 100644 --- a/interface/web/dns/lib/lang/it_dns_caa.lng +++ b/interface/web/dns/lib/lang/it_dns_caa.lng @@ -6,7 +6,7 @@ $wb['ca_hostname_note_txt'] = '(Sepearated list with commas - empty for all host $wb['ca_options_txt'] = 'Additional Options'; $wb['ca_options_note_txt'] = 'requested by the CA (Sepearated list with commas)'; $wb['ca_wildcard_txt'] = 'Use Wildcard SSL'; -$wb['ca_critical_txt'] = 'Strict check'; //For future use. At this time, CAAs do not recognize any other flag values as described in RFC 6844 +$wb['ca_critical_txt'] = 'Strict check'; $wb['ttl_txt'] = 'TTL'; $wb['active_txt'] = 'Active'; $wb['select_txt'] = 'Select Certifiction Authority'; diff --git a/interface/web/dns/lib/lang/ja_dns_caa.lng b/interface/web/dns/lib/lang/ja_dns_caa.lng index bf5b2ac8e1..82de234d6e 100644 --- a/interface/web/dns/lib/lang/ja_dns_caa.lng +++ b/interface/web/dns/lib/lang/ja_dns_caa.lng @@ -6,7 +6,7 @@ $wb['ca_hostname_note_txt'] = '(Sepearated list with commas - empty for all host $wb['ca_options_txt'] = 'Additional Options'; $wb['ca_options_note_txt'] = 'requested by the CA (Sepearated list with commas)'; $wb['ca_wildcard_txt'] = 'Use Wildcard SSL'; -$wb['ca_critical_txt'] = 'Strict check'; //For future use. At this time, CAAs do not recognize any other flag values as described in RFC 6844 +$wb['ca_critical_txt'] = 'Strict check'; $wb['ttl_txt'] = 'TTL'; $wb['active_txt'] = 'Active'; $wb['select_txt'] = 'Select Certifiction Authority'; diff --git a/interface/web/dns/lib/lang/nl_dns_caa.lng b/interface/web/dns/lib/lang/nl_dns_caa.lng index bf5b2ac8e1..82de234d6e 100644 --- a/interface/web/dns/lib/lang/nl_dns_caa.lng +++ b/interface/web/dns/lib/lang/nl_dns_caa.lng @@ -6,7 +6,7 @@ $wb['ca_hostname_note_txt'] = '(Sepearated list with commas - empty for all host $wb['ca_options_txt'] = 'Additional Options'; $wb['ca_options_note_txt'] = 'requested by the CA (Sepearated list with commas)'; $wb['ca_wildcard_txt'] = 'Use Wildcard SSL'; -$wb['ca_critical_txt'] = 'Strict check'; //For future use. At this time, CAAs do not recognize any other flag values as described in RFC 6844 +$wb['ca_critical_txt'] = 'Strict check'; $wb['ttl_txt'] = 'TTL'; $wb['active_txt'] = 'Active'; $wb['select_txt'] = 'Select Certifiction Authority'; diff --git a/interface/web/dns/lib/lang/pl_dns_caa.lng b/interface/web/dns/lib/lang/pl_dns_caa.lng index bf5b2ac8e1..82de234d6e 100644 --- a/interface/web/dns/lib/lang/pl_dns_caa.lng +++ b/interface/web/dns/lib/lang/pl_dns_caa.lng @@ -6,7 +6,7 @@ $wb['ca_hostname_note_txt'] = '(Sepearated list with commas - empty for all host $wb['ca_options_txt'] = 'Additional Options'; $wb['ca_options_note_txt'] = 'requested by the CA (Sepearated list with commas)'; $wb['ca_wildcard_txt'] = 'Use Wildcard SSL'; -$wb['ca_critical_txt'] = 'Strict check'; //For future use. At this time, CAAs do not recognize any other flag values as described in RFC 6844 +$wb['ca_critical_txt'] = 'Strict check'; $wb['ttl_txt'] = 'TTL'; $wb['active_txt'] = 'Active'; $wb['select_txt'] = 'Select Certifiction Authority'; diff --git a/interface/web/dns/lib/lang/pt_dns_caa.lng b/interface/web/dns/lib/lang/pt_dns_caa.lng index bf5b2ac8e1..82de234d6e 100644 --- a/interface/web/dns/lib/lang/pt_dns_caa.lng +++ b/interface/web/dns/lib/lang/pt_dns_caa.lng @@ -6,7 +6,7 @@ $wb['ca_hostname_note_txt'] = '(Sepearated list with commas - empty for all host $wb['ca_options_txt'] = 'Additional Options'; $wb['ca_options_note_txt'] = 'requested by the CA (Sepearated list with commas)'; $wb['ca_wildcard_txt'] = 'Use Wildcard SSL'; -$wb['ca_critical_txt'] = 'Strict check'; //For future use. At this time, CAAs do not recognize any other flag values as described in RFC 6844 +$wb['ca_critical_txt'] = 'Strict check'; $wb['ttl_txt'] = 'TTL'; $wb['active_txt'] = 'Active'; $wb['select_txt'] = 'Select Certifiction Authority'; diff --git a/interface/web/dns/lib/lang/ro_dns_caa.lng b/interface/web/dns/lib/lang/ro_dns_caa.lng index bf5b2ac8e1..82de234d6e 100644 --- a/interface/web/dns/lib/lang/ro_dns_caa.lng +++ b/interface/web/dns/lib/lang/ro_dns_caa.lng @@ -6,7 +6,7 @@ $wb['ca_hostname_note_txt'] = '(Sepearated list with commas - empty for all host $wb['ca_options_txt'] = 'Additional Options'; $wb['ca_options_note_txt'] = 'requested by the CA (Sepearated list with commas)'; $wb['ca_wildcard_txt'] = 'Use Wildcard SSL'; -$wb['ca_critical_txt'] = 'Strict check'; //For future use. At this time, CAAs do not recognize any other flag values as described in RFC 6844 +$wb['ca_critical_txt'] = 'Strict check'; $wb['ttl_txt'] = 'TTL'; $wb['active_txt'] = 'Active'; $wb['select_txt'] = 'Select Certifiction Authority'; diff --git a/interface/web/dns/lib/lang/ru_dns_caa.lng b/interface/web/dns/lib/lang/ru_dns_caa.lng index bf5b2ac8e1..82de234d6e 100644 --- a/interface/web/dns/lib/lang/ru_dns_caa.lng +++ b/interface/web/dns/lib/lang/ru_dns_caa.lng @@ -6,7 +6,7 @@ $wb['ca_hostname_note_txt'] = '(Sepearated list with commas - empty for all host $wb['ca_options_txt'] = 'Additional Options'; $wb['ca_options_note_txt'] = 'requested by the CA (Sepearated list with commas)'; $wb['ca_wildcard_txt'] = 'Use Wildcard SSL'; -$wb['ca_critical_txt'] = 'Strict check'; //For future use. At this time, CAAs do not recognize any other flag values as described in RFC 6844 +$wb['ca_critical_txt'] = 'Strict check'; $wb['ttl_txt'] = 'TTL'; $wb['active_txt'] = 'Active'; $wb['select_txt'] = 'Select Certifiction Authority'; diff --git a/interface/web/dns/lib/lang/ru_dns_hinfo.lng b/interface/web/dns/lib/lang/ru_dns_hinfo.lng index 830576fdf6..363ed0eef5 100644 --- a/interface/web/dns/lib/lang/ru_dns_hinfo.lng +++ b/interface/web/dns/lib/lang/ru_dns_hinfo.lng @@ -11,6 +11,6 @@ $wb['no_zone_perm'] = 'У Ð’Ð°Ñ Ð½ÐµÑ‚ прав добавлÑÑ‚ÑŒ Ñту за $wb['name_error_empty'] = 'Ð˜Ð¼Ñ Ð¿ÑƒÑтое.'; $wb['name_error_regex'] = 'Ð˜Ð¼Ñ ÑƒÐ·Ð»Ð° имеет неправильный формат.'; $wb['data_error_empty'] = 'Ð˜Ð½Ñ„Ð¾Ñ€Ð¼Ð°Ñ†Ð¸Ñ Ð¾Ð± узле отÑутÑвует'; -$wb['data_error_regex'] = 'Поле \"Ð˜Ð½Ñ„Ð¾Ñ€Ð¼Ð°Ñ†Ð¸Ñ Ð¾ хоÑте\" имеет неправильный формат'; +$wb['data_error_regex'] = 'Поле \\"Ð˜Ð½Ñ„Ð¾Ñ€Ð¼Ð°Ñ†Ð¸Ñ Ð¾ хоÑте\\" имеет неправильный формат'; $wb['ttl_range_error'] = 'Мин. Ð²Ñ€ÐµÐ¼Ñ <b>TTL</b> 60 Ñекунд.'; ?> diff --git a/interface/web/dns/lib/lang/se_dns_caa.lng b/interface/web/dns/lib/lang/se_dns_caa.lng index bf5b2ac8e1..82de234d6e 100644 --- a/interface/web/dns/lib/lang/se_dns_caa.lng +++ b/interface/web/dns/lib/lang/se_dns_caa.lng @@ -6,7 +6,7 @@ $wb['ca_hostname_note_txt'] = '(Sepearated list with commas - empty for all host $wb['ca_options_txt'] = 'Additional Options'; $wb['ca_options_note_txt'] = 'requested by the CA (Sepearated list with commas)'; $wb['ca_wildcard_txt'] = 'Use Wildcard SSL'; -$wb['ca_critical_txt'] = 'Strict check'; //For future use. At this time, CAAs do not recognize any other flag values as described in RFC 6844 +$wb['ca_critical_txt'] = 'Strict check'; $wb['ttl_txt'] = 'TTL'; $wb['active_txt'] = 'Active'; $wb['select_txt'] = 'Select Certifiction Authority'; diff --git a/interface/web/dns/lib/lang/sk_dns_caa.lng b/interface/web/dns/lib/lang/sk_dns_caa.lng index bf5b2ac8e1..82de234d6e 100644 --- a/interface/web/dns/lib/lang/sk_dns_caa.lng +++ b/interface/web/dns/lib/lang/sk_dns_caa.lng @@ -6,7 +6,7 @@ $wb['ca_hostname_note_txt'] = '(Sepearated list with commas - empty for all host $wb['ca_options_txt'] = 'Additional Options'; $wb['ca_options_note_txt'] = 'requested by the CA (Sepearated list with commas)'; $wb['ca_wildcard_txt'] = 'Use Wildcard SSL'; -$wb['ca_critical_txt'] = 'Strict check'; //For future use. At this time, CAAs do not recognize any other flag values as described in RFC 6844 +$wb['ca_critical_txt'] = 'Strict check'; $wb['ttl_txt'] = 'TTL'; $wb['active_txt'] = 'Active'; $wb['select_txt'] = 'Select Certifiction Authority'; diff --git a/interface/web/dns/lib/lang/tr_dns_caa.lng b/interface/web/dns/lib/lang/tr_dns_caa.lng index bf5b2ac8e1..82de234d6e 100644 --- a/interface/web/dns/lib/lang/tr_dns_caa.lng +++ b/interface/web/dns/lib/lang/tr_dns_caa.lng @@ -6,7 +6,7 @@ $wb['ca_hostname_note_txt'] = '(Sepearated list with commas - empty for all host $wb['ca_options_txt'] = 'Additional Options'; $wb['ca_options_note_txt'] = 'requested by the CA (Sepearated list with commas)'; $wb['ca_wildcard_txt'] = 'Use Wildcard SSL'; -$wb['ca_critical_txt'] = 'Strict check'; //For future use. At this time, CAAs do not recognize any other flag values as described in RFC 6844 +$wb['ca_critical_txt'] = 'Strict check'; $wb['ttl_txt'] = 'TTL'; $wb['active_txt'] = 'Active'; $wb['select_txt'] = 'Select Certifiction Authority'; diff --git a/interface/web/help/lib/lang/br_support_message.lng b/interface/web/help/lib/lang/br_support_message.lng index 83097915bf..19ae309a1f 100644 --- a/interface/web/help/lib/lang/br_support_message.lng +++ b/interface/web/help/lib/lang/br_support_message.lng @@ -12,5 +12,5 @@ $wb['answer_to_support_request_txt'] = 'Você tem uma nova resposta para requisi $wb['answer_to_support_request_sent_txt'] = 'Sua resposta para requisição de suporte foi enviada. Por favor, não responda esse e-mail.'; $wb['support_request_sent_txt'] = 'Sua requisição de suporte foi enviada. Por favor não responda este e-mail.'; $wb['recipient_or_sender_email_address_not_valid_txt'] = 'A mensagem não foi enviada porque o e-mail do destinatário e/ou remetente não é válido.'; -$wb['subject_is_empty'] = 'Não é permitido o campo \"Assunto\" em branco.'; +$wb['subject_is_empty'] = 'Não é permitido o campo \\"Assunto\\" em branco.'; ?> diff --git a/interface/web/login/lib/lang/br_login_as.lng b/interface/web/login/lib/lang/br_login_as.lng index 4c02c963c2..5d9fb269b9 100644 --- a/interface/web/login/lib/lang/br_login_as.lng +++ b/interface/web/login/lib/lang/br_login_as.lng @@ -1,6 +1,6 @@ <?php $wb['login_1_txt'] = 'Você deseja acessar como usuário'; -$wb['login_2_txt'] = 'Para retornar ao administrador, você pode \"voltar\" selecionando sair.'; +$wb['login_2_txt'] = 'Para retornar ao administrador, você pode \\"voltar\\" selecionando sair.'; $wb['btn_yes_txt'] = 'Sim, acessar como cliente'; $wb['btn_back_txt'] = 'Não, voltar a lista'; $wb['udp_port_help_txt'] = 'Separado por vÃrgula'; diff --git a/interface/web/login/lib/lang/ru_login_as.lng b/interface/web/login/lib/lang/ru_login_as.lng index 46a3eab288..63031d4d09 100644 --- a/interface/web/login/lib/lang/ru_login_as.lng +++ b/interface/web/login/lib/lang/ru_login_as.lng @@ -1,12 +1,12 @@ <?php $wb['login_1_txt'] = 'Ð’Ñ‹ хотите войти как пользователь'; -$wb['login_2_txt'] = 'ЕÑли вы Ñто Ñделаете, вы можете \"вернутьÑÑ\", нажав на \"выход\".'; +$wb['login_2_txt'] = 'ЕÑли вы Ñто Ñделаете, вы можете \\"вернутьÑÑ\\", нажав на \\"выход\\".'; $wb['btn_yes_txt'] = 'Да, войти как Клиент'; $wb['btn_back_txt'] = 'Ðет, назад к ÑпиÑку'; $wb['udp_port_help_txt'] = 'ПеречиÑлить через запÑтую'; $wb['active_txt'] = 'Ðктивно'; $wb['firewall_error_unique'] = 'Уже еÑÑ‚ÑŒ Ñ‚Ð°ÐºÐ°Ñ Ð·Ð°Ð¿Ð¸ÑÑŒ бредмауÑра Ð´Ð»Ñ Ñтого Ñервера.'; -$wb['tcp_ports_error_regex'] = 'ÐедопуÑтимый Ñимвол в указании tcp порта. Корректные Ñиволы - цифры, \":\" и \",\"'; -$wb['udp_ports_error_regex'] = 'Ðекорректный Ñимвол в указании UDP порта. ДопуÑтимые Ñиволы - цифры, \":\" и \",\"'; +$wb['tcp_ports_error_regex'] = 'ÐедопуÑтимый Ñимвол в указании tcp порта. Корректные Ñиволы - цифры, \\":\\" и \\",\\"'; +$wb['udp_ports_error_regex'] = 'Ðекорректный Ñимвол в указании UDP порта. ДопуÑтимые Ñиволы - цифры, \\":\\" и \\",\\"'; $wb['login_as_or_logout_txt'] = 'Ð’Ñ‹ хотите заново войти как {UTYPE} или выйти?'; ?> diff --git a/interface/web/mail/lib/lang/br_mail_user.lng b/interface/web/mail/lib/lang/br_mail_user.lng index a786566277..f91d40f625 100644 --- a/interface/web/mail/lib/lang/br_mail_user.lng +++ b/interface/web/mail/lib/lang/br_mail_user.lng @@ -35,7 +35,7 @@ $wb['name_txt'] = 'Nome real'; $wb['name_optional_txt'] = '(Opcional)'; $wb['autoresponder_active'] = 'Ativar autoresposta'; $wb['cc_txt'] = 'Enviar cópia para'; -$wb['cc_error_isemail'] = 'O campo \"Enviar cópia para\" deve conter um endereço de e-mail válido'; +$wb['cc_error_isemail'] = 'O campo \\"Enviar cópia para\\" deve conter um endereço de e-mail válido'; $wb['domain_txt'] = 'DomÃnio'; $wb['now_txt'] = 'Agora'; $wb['login_error_unique'] = 'O acesso já está em uso.'; @@ -48,7 +48,7 @@ $wb['generate_password_txt'] = 'Gerar senha'; $wb['repeat_password_txt'] = 'Repetir senha'; $wb['password_mismatch_txt'] = 'A senhas não coincidem.'; $wb['password_match_txt'] = 'A senhas coincidem.'; -$wb['email_error_isascii'] = 'Por favor não use caracteres \"unicode\" para a senha. Esta ação poderá causar problemas com seu cliente de e-mail (mua).'; +$wb['email_error_isascii'] = 'Por favor não use caracteres \\"unicode\\" para a senha. Esta ação poderá causar problemas com seu cliente de e-mail (mua).'; $wb['cc_note_txt'] = '(Múltiplos e-mails separados por vÃrgulas)'; $wb['disablesmtp_txt'] = 'Desabilitar smtp (envio)'; $wb['autoresponder_start_date_is_required'] = 'Data de inÃcio deve ser configurada quando \'autoresposta\' é habilitada.'; diff --git a/interface/web/mail/lib/lang/ru_mail_get.lng b/interface/web/mail/lib/lang/ru_mail_get.lng index 0ce613cd05..b3f2f0b6bf 100644 --- a/interface/web/mail/lib/lang/ru_mail_get.lng +++ b/interface/web/mail/lib/lang/ru_mail_get.lng @@ -14,6 +14,6 @@ $wb['source_password_error_isempty'] = 'ПуÑтой пароль.'; $wb['destination_error_isemail'] = 'Ðе выбран получатель или запиÑÑŒ некорректна.'; $wb['source_server_error_regex'] = 'Ðекорректное доменное Ð¸Ð¼Ñ Ð´Ð»Ñ Ñервера POP3/IMAP.'; $wb['source_read_all_txt'] = 'Получать вÑе ÑÐ¾Ð¾Ð±Ñ‰ÐµÐ½Ð¸Ñ Ñлектронной почты (Ð²ÐºÐ»ÑŽÑ‡Ð°Ñ Ð¿Ñ€Ð¾Ñ‡Ð¸Ñ‚Ð°Ð½Ð½Ñ‹Ðµ пиÑьма)'; -$wb['error_delete_read_all_combination'] = 'ÐедопуÑÑ‚Ð¸Ð¼Ð°Ñ ÐºÐ¾Ð¼Ð±Ð¸Ð½Ð°Ñ†Ð¸Ñ Ð¿Ð°Ñ€Ð°Ð¼ÐµÑ‚Ñ€Ð¾Ð². Ð’Ñ‹ не можете иÑпользовать \"Удалить пиÑьма поÑле получениÑ\" = ÐЕТ вмеÑте Ñ \"Получить вÑе пиÑьма\" = ДÐ'; +$wb['error_delete_read_all_combination'] = 'ÐедопуÑÑ‚Ð¸Ð¼Ð°Ñ ÐºÐ¾Ð¼Ð±Ð¸Ð½Ð°Ñ†Ð¸Ñ Ð¿Ð°Ñ€Ð°Ð¼ÐµÑ‚Ñ€Ð¾Ð². Ð’Ñ‹ не можете иÑпользовать \\"Удалить пиÑьма поÑле получениÑ\\" = ÐЕТ вмеÑте Ñ \\"Получить вÑе пиÑьма\\" = ДÐ'; $wb['source_delete_note_txt'] = 'ПожалуйÑта, прежде чем активировать Ñтот параметр, убедитеÑÑŒ в том, что Ñборщик почты работает.'; ?> diff --git a/interface/web/mail/lib/lang/ru_mail_user_filter.lng b/interface/web/mail/lib/lang/ru_mail_user_filter.lng index ecc2d25b9d..c8306f9838 100644 --- a/interface/web/mail/lib/lang/ru_mail_user_filter.lng +++ b/interface/web/mail/lib/lang/ru_mail_user_filter.lng @@ -6,7 +6,7 @@ $wb['active_txt'] = 'Ðктивно'; $wb['rulename_error_empty'] = 'Ð˜Ð¼Ñ Ð¿ÑƒÑтое.'; $wb['searchterm_is_empty'] = 'Поле поиÑка пуÑтое.'; $wb['source_txt'] = 'ИÑточник'; -$wb['target_error_regex'] = 'Ðазначение может Ñодержать только Ñледующие Ñимволы: \"a-z\", \"0-9\", \"-\", \".\", \"_\" и {пробел}'; +$wb['target_error_regex'] = 'Ðазначение может Ñодержать только Ñледующие Ñимволы: \\"a-z\\", \\"0-9\\", \\"-\\", \\".\\", \\"_\\" и {пробел}'; $wb['limit_mailfilter_txt'] = 'МакÑимальное чиÑло почтовых фильтров доÑтигнуто.'; $wb['subject_txt'] = 'Тема'; $wb['from_txt'] = 'От'; diff --git a/interface/web/mailuser/lib/lang/ru_mail_user_filter.lng b/interface/web/mailuser/lib/lang/ru_mail_user_filter.lng index f10dd4ddb2..d834e4057a 100644 --- a/interface/web/mailuser/lib/lang/ru_mail_user_filter.lng +++ b/interface/web/mailuser/lib/lang/ru_mail_user_filter.lng @@ -6,7 +6,7 @@ $wb['active_txt'] = 'Ðктивно'; $wb['rulename_error_empty'] = 'Ð˜Ð¼Ñ Ð¿ÑƒÑтое.'; $wb['searchterm_is_empty'] = 'Поле поиÑка пуÑтое.'; $wb['source_txt'] = 'ИÑточник'; -$wb['target_error_regex'] = 'Ðазначение может Ñодержать только Ñледующие Ñимволы: \"a-z\", \"0-9\", \"-\", \".\", \"_\" и {пробел}'; +$wb['target_error_regex'] = 'Ðазначение может Ñодержать только Ñледующие Ñимволы: \\"a-z\\", \\"0-9\\", \\"-\\", \\".\\", \\"_\\" и {пробел}'; $wb['limit_mailfilter_txt'] = 'МакÑимальное чиÑло почтовых фильтров доÑтигнуто.'; $wb['subject_txt'] = 'Тема'; $wb['from_txt'] = 'От'; diff --git a/interface/web/monitor/lib/lang/ar.lng b/interface/web/monitor/lib/lang/ar.lng index e00287a8e7..9d54ea1f5d 100644 --- a/interface/web/monitor/lib/lang/ar.lng +++ b/interface/web/monitor/lib/lang/ar.lng @@ -161,4 +161,5 @@ $wb['monitor_database_domain_txt'] = 'Domain'; $wb['Show MongoDB-Log'] = 'Show MongoDB-Log'; $wb['monitor_services_mongodb_txt'] = 'MongoDB-Server:'; $wb['monitor_title_mongodb_txt'] = 'MongoDB Log'; +$wb['Show Data Log History'] = 'Show Data Log History'; ?> diff --git a/interface/web/monitor/lib/lang/ar_dataloghistory_list.lng b/interface/web/monitor/lib/lang/ar_dataloghistory_list.lng new file mode 100644 index 0000000000..9f9afd6347 --- /dev/null +++ b/interface/web/monitor/lib/lang/ar_dataloghistory_list.lng @@ -0,0 +1,8 @@ +<?php +$wb["list_head_txt"] = 'Datalog History'; +$wb["tstamp_txt"] = 'Date'; +$wb["server_id_txt"] = 'Server'; +$wb["dbtable_txt"] = 'DB Table'; +$wb["action_txt"] = 'Action'; +$wb["status_txt"] = 'Status'; +?> diff --git a/interface/web/monitor/lib/lang/ar_dataloghistory_undo.lng b/interface/web/monitor/lib/lang/ar_dataloghistory_undo.lng new file mode 100644 index 0000000000..0e040a3e77 --- /dev/null +++ b/interface/web/monitor/lib/lang/ar_dataloghistory_undo.lng @@ -0,0 +1,7 @@ +<?php +$wb['list_head_txt'] = 'Data Log History Entry'; +$wb['success_txt'] = 'Undo successful'; +$wb['error_txt'] = 'Error during undo: Record does not exist anymore'; +$wb['error_undelete_txt'] = 'Error during undelete: Record with primary id already existing.'; +$wb['btn_cancel_txt'] = 'Back'; +?> diff --git a/interface/web/monitor/lib/lang/ar_dataloghistory_view.lng b/interface/web/monitor/lib/lang/ar_dataloghistory_view.lng new file mode 100644 index 0000000000..df9ddd286f --- /dev/null +++ b/interface/web/monitor/lib/lang/ar_dataloghistory_view.lng @@ -0,0 +1,26 @@ +<?php +$wb['i'] = 'Insert'; +$wb['u'] = 'Update'; +$wb['d'] = 'Delete'; +$wb['list_head_txt'] = 'Data Log History Entry'; +$wb['id_txt'] = 'ID'; +$wb['timestamp_txt'] = 'Timestamp'; +$wb['table_txt'] = 'Table'; +$wb['action_txt'] = 'Action'; +$wb['session_id_txt'] = 'Session ID'; +$wb['fields_txt'] = 'Fields'; +$wb['fields_inserted_txt'] = 'Inserted Fields'; +$wb['fields_updated_txt'] = 'Updated Fields'; +$wb['fields_deleted_txt'] = 'Deleted Fields'; +$wb['no_changes_txt'] = 'No changes (re-sync)'; +$wb['is_diff_txt'] = 'The differences are highlighted'; +$wb['is_diff_inserts_txt'] = 'Insertions'; +$wb['is_diff_deletes_txt'] = 'Deletions'; +$wb['field_txt'] = 'Field'; +$wb['value_txt'] = 'Value'; +$wb['old_txt'] = 'Old'; +$wb['new_txt'] = 'New'; +$wb['btn_cancel_txt'] = 'Back'; +$wb['undo_txt'] = 'Undo action'; +$wb['undo_confirmation_txt'] = 'Do you really want to undo this action?'; +?> diff --git a/interface/web/monitor/lib/lang/bg.lng b/interface/web/monitor/lib/lang/bg.lng index 0db4623d03..a8b7f491ac 100644 --- a/interface/web/monitor/lib/lang/bg.lng +++ b/interface/web/monitor/lib/lang/bg.lng @@ -161,4 +161,5 @@ $wb['monitor_database_domain_txt'] = 'Domain'; $wb['Show MongoDB-Log'] = 'Show MongoDB-Log'; $wb['monitor_services_mongodb_txt'] = 'MongoDB-Server:'; $wb['monitor_title_mongodb_txt'] = 'MongoDB Log'; +$wb['Show Data Log History'] = 'Show Data Log History'; ?> diff --git a/interface/web/monitor/lib/lang/bg_dataloghistory_list.lng b/interface/web/monitor/lib/lang/bg_dataloghistory_list.lng new file mode 100644 index 0000000000..9f9afd6347 --- /dev/null +++ b/interface/web/monitor/lib/lang/bg_dataloghistory_list.lng @@ -0,0 +1,8 @@ +<?php +$wb["list_head_txt"] = 'Datalog History'; +$wb["tstamp_txt"] = 'Date'; +$wb["server_id_txt"] = 'Server'; +$wb["dbtable_txt"] = 'DB Table'; +$wb["action_txt"] = 'Action'; +$wb["status_txt"] = 'Status'; +?> diff --git a/interface/web/monitor/lib/lang/bg_dataloghistory_undo.lng b/interface/web/monitor/lib/lang/bg_dataloghistory_undo.lng new file mode 100644 index 0000000000..0e040a3e77 --- /dev/null +++ b/interface/web/monitor/lib/lang/bg_dataloghistory_undo.lng @@ -0,0 +1,7 @@ +<?php +$wb['list_head_txt'] = 'Data Log History Entry'; +$wb['success_txt'] = 'Undo successful'; +$wb['error_txt'] = 'Error during undo: Record does not exist anymore'; +$wb['error_undelete_txt'] = 'Error during undelete: Record with primary id already existing.'; +$wb['btn_cancel_txt'] = 'Back'; +?> diff --git a/interface/web/monitor/lib/lang/bg_dataloghistory_view.lng b/interface/web/monitor/lib/lang/bg_dataloghistory_view.lng new file mode 100644 index 0000000000..df9ddd286f --- /dev/null +++ b/interface/web/monitor/lib/lang/bg_dataloghistory_view.lng @@ -0,0 +1,26 @@ +<?php +$wb['i'] = 'Insert'; +$wb['u'] = 'Update'; +$wb['d'] = 'Delete'; +$wb['list_head_txt'] = 'Data Log History Entry'; +$wb['id_txt'] = 'ID'; +$wb['timestamp_txt'] = 'Timestamp'; +$wb['table_txt'] = 'Table'; +$wb['action_txt'] = 'Action'; +$wb['session_id_txt'] = 'Session ID'; +$wb['fields_txt'] = 'Fields'; +$wb['fields_inserted_txt'] = 'Inserted Fields'; +$wb['fields_updated_txt'] = 'Updated Fields'; +$wb['fields_deleted_txt'] = 'Deleted Fields'; +$wb['no_changes_txt'] = 'No changes (re-sync)'; +$wb['is_diff_txt'] = 'The differences are highlighted'; +$wb['is_diff_inserts_txt'] = 'Insertions'; +$wb['is_diff_deletes_txt'] = 'Deletions'; +$wb['field_txt'] = 'Field'; +$wb['value_txt'] = 'Value'; +$wb['old_txt'] = 'Old'; +$wb['new_txt'] = 'New'; +$wb['btn_cancel_txt'] = 'Back'; +$wb['undo_txt'] = 'Undo action'; +$wb['undo_confirmation_txt'] = 'Do you really want to undo this action?'; +?> diff --git a/interface/web/monitor/lib/lang/br.lng b/interface/web/monitor/lib/lang/br.lng index 048fec64be..72325cc5b3 100644 --- a/interface/web/monitor/lib/lang/br.lng +++ b/interface/web/monitor/lib/lang/br.lng @@ -161,4 +161,5 @@ $wb['monitor_database_domain_txt'] = 'DomÃnio'; $wb['Show MongoDB-Log'] = 'Exibir logs do MongoDB'; $wb['monitor_services_mongodb_txt'] = 'Servidor MongoDB:'; $wb['monitor_title_mongodb_txt'] = 'Logs do MongoDB'; +$wb['Show Data Log History'] = 'Show Data Log History'; ?> diff --git a/interface/web/monitor/lib/lang/br_dataloghistory_list.lng b/interface/web/monitor/lib/lang/br_dataloghistory_list.lng new file mode 100644 index 0000000000..9f9afd6347 --- /dev/null +++ b/interface/web/monitor/lib/lang/br_dataloghistory_list.lng @@ -0,0 +1,8 @@ +<?php +$wb["list_head_txt"] = 'Datalog History'; +$wb["tstamp_txt"] = 'Date'; +$wb["server_id_txt"] = 'Server'; +$wb["dbtable_txt"] = 'DB Table'; +$wb["action_txt"] = 'Action'; +$wb["status_txt"] = 'Status'; +?> diff --git a/interface/web/monitor/lib/lang/br_dataloghistory_undo.lng b/interface/web/monitor/lib/lang/br_dataloghistory_undo.lng new file mode 100644 index 0000000000..0e040a3e77 --- /dev/null +++ b/interface/web/monitor/lib/lang/br_dataloghistory_undo.lng @@ -0,0 +1,7 @@ +<?php +$wb['list_head_txt'] = 'Data Log History Entry'; +$wb['success_txt'] = 'Undo successful'; +$wb['error_txt'] = 'Error during undo: Record does not exist anymore'; +$wb['error_undelete_txt'] = 'Error during undelete: Record with primary id already existing.'; +$wb['btn_cancel_txt'] = 'Back'; +?> diff --git a/interface/web/monitor/lib/lang/br_dataloghistory_view.lng b/interface/web/monitor/lib/lang/br_dataloghistory_view.lng new file mode 100644 index 0000000000..df9ddd286f --- /dev/null +++ b/interface/web/monitor/lib/lang/br_dataloghistory_view.lng @@ -0,0 +1,26 @@ +<?php +$wb['i'] = 'Insert'; +$wb['u'] = 'Update'; +$wb['d'] = 'Delete'; +$wb['list_head_txt'] = 'Data Log History Entry'; +$wb['id_txt'] = 'ID'; +$wb['timestamp_txt'] = 'Timestamp'; +$wb['table_txt'] = 'Table'; +$wb['action_txt'] = 'Action'; +$wb['session_id_txt'] = 'Session ID'; +$wb['fields_txt'] = 'Fields'; +$wb['fields_inserted_txt'] = 'Inserted Fields'; +$wb['fields_updated_txt'] = 'Updated Fields'; +$wb['fields_deleted_txt'] = 'Deleted Fields'; +$wb['no_changes_txt'] = 'No changes (re-sync)'; +$wb['is_diff_txt'] = 'The differences are highlighted'; +$wb['is_diff_inserts_txt'] = 'Insertions'; +$wb['is_diff_deletes_txt'] = 'Deletions'; +$wb['field_txt'] = 'Field'; +$wb['value_txt'] = 'Value'; +$wb['old_txt'] = 'Old'; +$wb['new_txt'] = 'New'; +$wb['btn_cancel_txt'] = 'Back'; +$wb['undo_txt'] = 'Undo action'; +$wb['undo_confirmation_txt'] = 'Do you really want to undo this action?'; +?> diff --git a/interface/web/monitor/lib/lang/ca.lng b/interface/web/monitor/lib/lang/ca.lng index 4575be2ff1..b57b255a74 100644 --- a/interface/web/monitor/lib/lang/ca.lng +++ b/interface/web/monitor/lib/lang/ca.lng @@ -161,4 +161,5 @@ $wb['monitor_database_client_txt'] = 'Client'; $wb['monitor_database_domain_txt'] = 'Domain'; $wb['monitor_services_mongodb_txt'] = 'MongoDB-Server:'; $wb['monitor_title_mongodb_txt'] = 'MongoDB Log'; +$wb['Show Data Log History'] = 'Show Data Log History'; ?> diff --git a/interface/web/monitor/lib/lang/ca_dataloghistory_list.lng b/interface/web/monitor/lib/lang/ca_dataloghistory_list.lng new file mode 100644 index 0000000000..9f9afd6347 --- /dev/null +++ b/interface/web/monitor/lib/lang/ca_dataloghistory_list.lng @@ -0,0 +1,8 @@ +<?php +$wb["list_head_txt"] = 'Datalog History'; +$wb["tstamp_txt"] = 'Date'; +$wb["server_id_txt"] = 'Server'; +$wb["dbtable_txt"] = 'DB Table'; +$wb["action_txt"] = 'Action'; +$wb["status_txt"] = 'Status'; +?> diff --git a/interface/web/monitor/lib/lang/ca_dataloghistory_undo.lng b/interface/web/monitor/lib/lang/ca_dataloghistory_undo.lng new file mode 100644 index 0000000000..0e040a3e77 --- /dev/null +++ b/interface/web/monitor/lib/lang/ca_dataloghistory_undo.lng @@ -0,0 +1,7 @@ +<?php +$wb['list_head_txt'] = 'Data Log History Entry'; +$wb['success_txt'] = 'Undo successful'; +$wb['error_txt'] = 'Error during undo: Record does not exist anymore'; +$wb['error_undelete_txt'] = 'Error during undelete: Record with primary id already existing.'; +$wb['btn_cancel_txt'] = 'Back'; +?> diff --git a/interface/web/monitor/lib/lang/ca_dataloghistory_view.lng b/interface/web/monitor/lib/lang/ca_dataloghistory_view.lng new file mode 100644 index 0000000000..df9ddd286f --- /dev/null +++ b/interface/web/monitor/lib/lang/ca_dataloghistory_view.lng @@ -0,0 +1,26 @@ +<?php +$wb['i'] = 'Insert'; +$wb['u'] = 'Update'; +$wb['d'] = 'Delete'; +$wb['list_head_txt'] = 'Data Log History Entry'; +$wb['id_txt'] = 'ID'; +$wb['timestamp_txt'] = 'Timestamp'; +$wb['table_txt'] = 'Table'; +$wb['action_txt'] = 'Action'; +$wb['session_id_txt'] = 'Session ID'; +$wb['fields_txt'] = 'Fields'; +$wb['fields_inserted_txt'] = 'Inserted Fields'; +$wb['fields_updated_txt'] = 'Updated Fields'; +$wb['fields_deleted_txt'] = 'Deleted Fields'; +$wb['no_changes_txt'] = 'No changes (re-sync)'; +$wb['is_diff_txt'] = 'The differences are highlighted'; +$wb['is_diff_inserts_txt'] = 'Insertions'; +$wb['is_diff_deletes_txt'] = 'Deletions'; +$wb['field_txt'] = 'Field'; +$wb['value_txt'] = 'Value'; +$wb['old_txt'] = 'Old'; +$wb['new_txt'] = 'New'; +$wb['btn_cancel_txt'] = 'Back'; +$wb['undo_txt'] = 'Undo action'; +$wb['undo_confirmation_txt'] = 'Do you really want to undo this action?'; +?> diff --git a/interface/web/monitor/lib/lang/cz.lng b/interface/web/monitor/lib/lang/cz.lng index dc3e3cb341..9e054aacf2 100644 --- a/interface/web/monitor/lib/lang/cz.lng +++ b/interface/web/monitor/lib/lang/cz.lng @@ -161,4 +161,5 @@ $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'; +$wb['Show Data Log History'] = 'Show Data Log History'; ?> diff --git a/interface/web/monitor/lib/lang/cz_dataloghistory_list.lng b/interface/web/monitor/lib/lang/cz_dataloghistory_list.lng new file mode 100644 index 0000000000..9f9afd6347 --- /dev/null +++ b/interface/web/monitor/lib/lang/cz_dataloghistory_list.lng @@ -0,0 +1,8 @@ +<?php +$wb["list_head_txt"] = 'Datalog History'; +$wb["tstamp_txt"] = 'Date'; +$wb["server_id_txt"] = 'Server'; +$wb["dbtable_txt"] = 'DB Table'; +$wb["action_txt"] = 'Action'; +$wb["status_txt"] = 'Status'; +?> diff --git a/interface/web/monitor/lib/lang/cz_dataloghistory_undo.lng b/interface/web/monitor/lib/lang/cz_dataloghistory_undo.lng new file mode 100644 index 0000000000..0e040a3e77 --- /dev/null +++ b/interface/web/monitor/lib/lang/cz_dataloghistory_undo.lng @@ -0,0 +1,7 @@ +<?php +$wb['list_head_txt'] = 'Data Log History Entry'; +$wb['success_txt'] = 'Undo successful'; +$wb['error_txt'] = 'Error during undo: Record does not exist anymore'; +$wb['error_undelete_txt'] = 'Error during undelete: Record with primary id already existing.'; +$wb['btn_cancel_txt'] = 'Back'; +?> diff --git a/interface/web/monitor/lib/lang/cz_dataloghistory_view.lng b/interface/web/monitor/lib/lang/cz_dataloghistory_view.lng new file mode 100644 index 0000000000..df9ddd286f --- /dev/null +++ b/interface/web/monitor/lib/lang/cz_dataloghistory_view.lng @@ -0,0 +1,26 @@ +<?php +$wb['i'] = 'Insert'; +$wb['u'] = 'Update'; +$wb['d'] = 'Delete'; +$wb['list_head_txt'] = 'Data Log History Entry'; +$wb['id_txt'] = 'ID'; +$wb['timestamp_txt'] = 'Timestamp'; +$wb['table_txt'] = 'Table'; +$wb['action_txt'] = 'Action'; +$wb['session_id_txt'] = 'Session ID'; +$wb['fields_txt'] = 'Fields'; +$wb['fields_inserted_txt'] = 'Inserted Fields'; +$wb['fields_updated_txt'] = 'Updated Fields'; +$wb['fields_deleted_txt'] = 'Deleted Fields'; +$wb['no_changes_txt'] = 'No changes (re-sync)'; +$wb['is_diff_txt'] = 'The differences are highlighted'; +$wb['is_diff_inserts_txt'] = 'Insertions'; +$wb['is_diff_deletes_txt'] = 'Deletions'; +$wb['field_txt'] = 'Field'; +$wb['value_txt'] = 'Value'; +$wb['old_txt'] = 'Old'; +$wb['new_txt'] = 'New'; +$wb['btn_cancel_txt'] = 'Back'; +$wb['undo_txt'] = 'Undo action'; +$wb['undo_confirmation_txt'] = 'Do you really want to undo this action?'; +?> diff --git a/interface/web/monitor/lib/lang/dk.lng b/interface/web/monitor/lib/lang/dk.lng index dc43c1306f..4c7bfab1e7 100644 --- a/interface/web/monitor/lib/lang/dk.lng +++ b/interface/web/monitor/lib/lang/dk.lng @@ -161,4 +161,5 @@ $wb['monitor_database_client_txt'] = 'Client'; $wb['monitor_database_domain_txt'] = 'Domain'; $wb['monitor_services_mongodb_txt'] = 'MongoDB-Server:'; $wb['monitor_title_mongodb_txt'] = 'MongoDB Log'; +$wb['Show Data Log History'] = 'Show Data Log History'; ?> diff --git a/interface/web/monitor/lib/lang/dk_dataloghistory_list.lng b/interface/web/monitor/lib/lang/dk_dataloghistory_list.lng new file mode 100644 index 0000000000..9f9afd6347 --- /dev/null +++ b/interface/web/monitor/lib/lang/dk_dataloghistory_list.lng @@ -0,0 +1,8 @@ +<?php +$wb["list_head_txt"] = 'Datalog History'; +$wb["tstamp_txt"] = 'Date'; +$wb["server_id_txt"] = 'Server'; +$wb["dbtable_txt"] = 'DB Table'; +$wb["action_txt"] = 'Action'; +$wb["status_txt"] = 'Status'; +?> diff --git a/interface/web/monitor/lib/lang/dk_dataloghistory_undo.lng b/interface/web/monitor/lib/lang/dk_dataloghistory_undo.lng new file mode 100644 index 0000000000..0e040a3e77 --- /dev/null +++ b/interface/web/monitor/lib/lang/dk_dataloghistory_undo.lng @@ -0,0 +1,7 @@ +<?php +$wb['list_head_txt'] = 'Data Log History Entry'; +$wb['success_txt'] = 'Undo successful'; +$wb['error_txt'] = 'Error during undo: Record does not exist anymore'; +$wb['error_undelete_txt'] = 'Error during undelete: Record with primary id already existing.'; +$wb['btn_cancel_txt'] = 'Back'; +?> diff --git a/interface/web/monitor/lib/lang/dk_dataloghistory_view.lng b/interface/web/monitor/lib/lang/dk_dataloghistory_view.lng new file mode 100644 index 0000000000..df9ddd286f --- /dev/null +++ b/interface/web/monitor/lib/lang/dk_dataloghistory_view.lng @@ -0,0 +1,26 @@ +<?php +$wb['i'] = 'Insert'; +$wb['u'] = 'Update'; +$wb['d'] = 'Delete'; +$wb['list_head_txt'] = 'Data Log History Entry'; +$wb['id_txt'] = 'ID'; +$wb['timestamp_txt'] = 'Timestamp'; +$wb['table_txt'] = 'Table'; +$wb['action_txt'] = 'Action'; +$wb['session_id_txt'] = 'Session ID'; +$wb['fields_txt'] = 'Fields'; +$wb['fields_inserted_txt'] = 'Inserted Fields'; +$wb['fields_updated_txt'] = 'Updated Fields'; +$wb['fields_deleted_txt'] = 'Deleted Fields'; +$wb['no_changes_txt'] = 'No changes (re-sync)'; +$wb['is_diff_txt'] = 'The differences are highlighted'; +$wb['is_diff_inserts_txt'] = 'Insertions'; +$wb['is_diff_deletes_txt'] = 'Deletions'; +$wb['field_txt'] = 'Field'; +$wb['value_txt'] = 'Value'; +$wb['old_txt'] = 'Old'; +$wb['new_txt'] = 'New'; +$wb['btn_cancel_txt'] = 'Back'; +$wb['undo_txt'] = 'Undo action'; +$wb['undo_confirmation_txt'] = 'Do you really want to undo this action?'; +?> diff --git a/interface/web/monitor/lib/lang/el.lng b/interface/web/monitor/lib/lang/el.lng index 414642e2e3..245c80c666 100644 --- a/interface/web/monitor/lib/lang/el.lng +++ b/interface/web/monitor/lib/lang/el.lng @@ -161,4 +161,5 @@ $wb['monitor_database_client_txt'] = 'Client'; $wb['monitor_database_domain_txt'] = 'Domain'; $wb['monitor_services_mongodb_txt'] = 'MongoDB-Server:'; $wb['monitor_title_mongodb_txt'] = 'MongoDB Log'; +$wb['Show Data Log History'] = 'Show Data Log History'; ?> diff --git a/interface/web/monitor/lib/lang/el_dataloghistory_list.lng b/interface/web/monitor/lib/lang/el_dataloghistory_list.lng new file mode 100644 index 0000000000..9f9afd6347 --- /dev/null +++ b/interface/web/monitor/lib/lang/el_dataloghistory_list.lng @@ -0,0 +1,8 @@ +<?php +$wb["list_head_txt"] = 'Datalog History'; +$wb["tstamp_txt"] = 'Date'; +$wb["server_id_txt"] = 'Server'; +$wb["dbtable_txt"] = 'DB Table'; +$wb["action_txt"] = 'Action'; +$wb["status_txt"] = 'Status'; +?> diff --git a/interface/web/monitor/lib/lang/el_dataloghistory_undo.lng b/interface/web/monitor/lib/lang/el_dataloghistory_undo.lng new file mode 100644 index 0000000000..0e040a3e77 --- /dev/null +++ b/interface/web/monitor/lib/lang/el_dataloghistory_undo.lng @@ -0,0 +1,7 @@ +<?php +$wb['list_head_txt'] = 'Data Log History Entry'; +$wb['success_txt'] = 'Undo successful'; +$wb['error_txt'] = 'Error during undo: Record does not exist anymore'; +$wb['error_undelete_txt'] = 'Error during undelete: Record with primary id already existing.'; +$wb['btn_cancel_txt'] = 'Back'; +?> diff --git a/interface/web/monitor/lib/lang/el_dataloghistory_view.lng b/interface/web/monitor/lib/lang/el_dataloghistory_view.lng new file mode 100644 index 0000000000..df9ddd286f --- /dev/null +++ b/interface/web/monitor/lib/lang/el_dataloghistory_view.lng @@ -0,0 +1,26 @@ +<?php +$wb['i'] = 'Insert'; +$wb['u'] = 'Update'; +$wb['d'] = 'Delete'; +$wb['list_head_txt'] = 'Data Log History Entry'; +$wb['id_txt'] = 'ID'; +$wb['timestamp_txt'] = 'Timestamp'; +$wb['table_txt'] = 'Table'; +$wb['action_txt'] = 'Action'; +$wb['session_id_txt'] = 'Session ID'; +$wb['fields_txt'] = 'Fields'; +$wb['fields_inserted_txt'] = 'Inserted Fields'; +$wb['fields_updated_txt'] = 'Updated Fields'; +$wb['fields_deleted_txt'] = 'Deleted Fields'; +$wb['no_changes_txt'] = 'No changes (re-sync)'; +$wb['is_diff_txt'] = 'The differences are highlighted'; +$wb['is_diff_inserts_txt'] = 'Insertions'; +$wb['is_diff_deletes_txt'] = 'Deletions'; +$wb['field_txt'] = 'Field'; +$wb['value_txt'] = 'Value'; +$wb['old_txt'] = 'Old'; +$wb['new_txt'] = 'New'; +$wb['btn_cancel_txt'] = 'Back'; +$wb['undo_txt'] = 'Undo action'; +$wb['undo_confirmation_txt'] = 'Do you really want to undo this action?'; +?> diff --git a/interface/web/monitor/lib/lang/es.lng b/interface/web/monitor/lib/lang/es.lng index 8cc87b4801..f4acb3c45c 100755 --- a/interface/web/monitor/lib/lang/es.lng +++ b/interface/web/monitor/lib/lang/es.lng @@ -161,4 +161,5 @@ $wb['System load 15 minutes'] = 'Carga del sistema hace 15 minutos'; $wb['System load 5 minutes'] = 'Carga del sistema hace 5 minutos'; $wb['System State (All Servers)'] = 'Estado de los sistemas'; $wb['Users online'] = 'Usuarios en lÃnea'; +$wb['Show Data Log History'] = 'Show Data Log History'; ?> diff --git a/interface/web/monitor/lib/lang/es_dataloghistory_list.lng b/interface/web/monitor/lib/lang/es_dataloghistory_list.lng new file mode 100644 index 0000000000..9f9afd6347 --- /dev/null +++ b/interface/web/monitor/lib/lang/es_dataloghistory_list.lng @@ -0,0 +1,8 @@ +<?php +$wb["list_head_txt"] = 'Datalog History'; +$wb["tstamp_txt"] = 'Date'; +$wb["server_id_txt"] = 'Server'; +$wb["dbtable_txt"] = 'DB Table'; +$wb["action_txt"] = 'Action'; +$wb["status_txt"] = 'Status'; +?> diff --git a/interface/web/monitor/lib/lang/es_dataloghistory_undo.lng b/interface/web/monitor/lib/lang/es_dataloghistory_undo.lng new file mode 100644 index 0000000000..0e040a3e77 --- /dev/null +++ b/interface/web/monitor/lib/lang/es_dataloghistory_undo.lng @@ -0,0 +1,7 @@ +<?php +$wb['list_head_txt'] = 'Data Log History Entry'; +$wb['success_txt'] = 'Undo successful'; +$wb['error_txt'] = 'Error during undo: Record does not exist anymore'; +$wb['error_undelete_txt'] = 'Error during undelete: Record with primary id already existing.'; +$wb['btn_cancel_txt'] = 'Back'; +?> diff --git a/interface/web/monitor/lib/lang/es_dataloghistory_view.lng b/interface/web/monitor/lib/lang/es_dataloghistory_view.lng new file mode 100644 index 0000000000..df9ddd286f --- /dev/null +++ b/interface/web/monitor/lib/lang/es_dataloghistory_view.lng @@ -0,0 +1,26 @@ +<?php +$wb['i'] = 'Insert'; +$wb['u'] = 'Update'; +$wb['d'] = 'Delete'; +$wb['list_head_txt'] = 'Data Log History Entry'; +$wb['id_txt'] = 'ID'; +$wb['timestamp_txt'] = 'Timestamp'; +$wb['table_txt'] = 'Table'; +$wb['action_txt'] = 'Action'; +$wb['session_id_txt'] = 'Session ID'; +$wb['fields_txt'] = 'Fields'; +$wb['fields_inserted_txt'] = 'Inserted Fields'; +$wb['fields_updated_txt'] = 'Updated Fields'; +$wb['fields_deleted_txt'] = 'Deleted Fields'; +$wb['no_changes_txt'] = 'No changes (re-sync)'; +$wb['is_diff_txt'] = 'The differences are highlighted'; +$wb['is_diff_inserts_txt'] = 'Insertions'; +$wb['is_diff_deletes_txt'] = 'Deletions'; +$wb['field_txt'] = 'Field'; +$wb['value_txt'] = 'Value'; +$wb['old_txt'] = 'Old'; +$wb['new_txt'] = 'New'; +$wb['btn_cancel_txt'] = 'Back'; +$wb['undo_txt'] = 'Undo action'; +$wb['undo_confirmation_txt'] = 'Do you really want to undo this action?'; +?> diff --git a/interface/web/monitor/lib/lang/fi.lng b/interface/web/monitor/lib/lang/fi.lng index 44143f3d20..911aae9bd1 100755 --- a/interface/web/monitor/lib/lang/fi.lng +++ b/interface/web/monitor/lib/lang/fi.lng @@ -161,4 +161,5 @@ $wb['monitor_database_domain_txt'] = 'Domain'; $wb['Show MongoDB-Log'] = 'Show MongoDB-Log'; $wb['monitor_services_mongodb_txt'] = 'MongoDB-Server:'; $wb['monitor_title_mongodb_txt'] = 'MongoDB Log'; +$wb['Show Data Log History'] = 'Show Data Log History'; ?> diff --git a/interface/web/monitor/lib/lang/fi_dataloghistory_list.lng b/interface/web/monitor/lib/lang/fi_dataloghistory_list.lng new file mode 100644 index 0000000000..9f9afd6347 --- /dev/null +++ b/interface/web/monitor/lib/lang/fi_dataloghistory_list.lng @@ -0,0 +1,8 @@ +<?php +$wb["list_head_txt"] = 'Datalog History'; +$wb["tstamp_txt"] = 'Date'; +$wb["server_id_txt"] = 'Server'; +$wb["dbtable_txt"] = 'DB Table'; +$wb["action_txt"] = 'Action'; +$wb["status_txt"] = 'Status'; +?> diff --git a/interface/web/monitor/lib/lang/fi_dataloghistory_undo.lng b/interface/web/monitor/lib/lang/fi_dataloghistory_undo.lng new file mode 100644 index 0000000000..0e040a3e77 --- /dev/null +++ b/interface/web/monitor/lib/lang/fi_dataloghistory_undo.lng @@ -0,0 +1,7 @@ +<?php +$wb['list_head_txt'] = 'Data Log History Entry'; +$wb['success_txt'] = 'Undo successful'; +$wb['error_txt'] = 'Error during undo: Record does not exist anymore'; +$wb['error_undelete_txt'] = 'Error during undelete: Record with primary id already existing.'; +$wb['btn_cancel_txt'] = 'Back'; +?> diff --git a/interface/web/monitor/lib/lang/fi_dataloghistory_view.lng b/interface/web/monitor/lib/lang/fi_dataloghistory_view.lng new file mode 100644 index 0000000000..df9ddd286f --- /dev/null +++ b/interface/web/monitor/lib/lang/fi_dataloghistory_view.lng @@ -0,0 +1,26 @@ +<?php +$wb['i'] = 'Insert'; +$wb['u'] = 'Update'; +$wb['d'] = 'Delete'; +$wb['list_head_txt'] = 'Data Log History Entry'; +$wb['id_txt'] = 'ID'; +$wb['timestamp_txt'] = 'Timestamp'; +$wb['table_txt'] = 'Table'; +$wb['action_txt'] = 'Action'; +$wb['session_id_txt'] = 'Session ID'; +$wb['fields_txt'] = 'Fields'; +$wb['fields_inserted_txt'] = 'Inserted Fields'; +$wb['fields_updated_txt'] = 'Updated Fields'; +$wb['fields_deleted_txt'] = 'Deleted Fields'; +$wb['no_changes_txt'] = 'No changes (re-sync)'; +$wb['is_diff_txt'] = 'The differences are highlighted'; +$wb['is_diff_inserts_txt'] = 'Insertions'; +$wb['is_diff_deletes_txt'] = 'Deletions'; +$wb['field_txt'] = 'Field'; +$wb['value_txt'] = 'Value'; +$wb['old_txt'] = 'Old'; +$wb['new_txt'] = 'New'; +$wb['btn_cancel_txt'] = 'Back'; +$wb['undo_txt'] = 'Undo action'; +$wb['undo_confirmation_txt'] = 'Do you really want to undo this action?'; +?> diff --git a/interface/web/monitor/lib/lang/fr.lng b/interface/web/monitor/lib/lang/fr.lng index 9fb2ab5e8c..c08fe74948 100644 --- a/interface/web/monitor/lib/lang/fr.lng +++ b/interface/web/monitor/lib/lang/fr.lng @@ -161,4 +161,5 @@ $wb['monitor_database_client_txt'] = 'Client'; $wb['monitor_database_domain_txt'] = 'Domain'; $wb['monitor_services_mongodb_txt'] = 'MongoDB-Server:'; $wb['monitor_title_mongodb_txt'] = 'MongoDB Log'; +$wb['Show Data Log History'] = 'Show Data Log History'; ?> diff --git a/interface/web/monitor/lib/lang/fr_dataloghistory_list.lng b/interface/web/monitor/lib/lang/fr_dataloghistory_list.lng new file mode 100644 index 0000000000..9f9afd6347 --- /dev/null +++ b/interface/web/monitor/lib/lang/fr_dataloghistory_list.lng @@ -0,0 +1,8 @@ +<?php +$wb["list_head_txt"] = 'Datalog History'; +$wb["tstamp_txt"] = 'Date'; +$wb["server_id_txt"] = 'Server'; +$wb["dbtable_txt"] = 'DB Table'; +$wb["action_txt"] = 'Action'; +$wb["status_txt"] = 'Status'; +?> diff --git a/interface/web/monitor/lib/lang/fr_dataloghistory_undo.lng b/interface/web/monitor/lib/lang/fr_dataloghistory_undo.lng new file mode 100644 index 0000000000..0e040a3e77 --- /dev/null +++ b/interface/web/monitor/lib/lang/fr_dataloghistory_undo.lng @@ -0,0 +1,7 @@ +<?php +$wb['list_head_txt'] = 'Data Log History Entry'; +$wb['success_txt'] = 'Undo successful'; +$wb['error_txt'] = 'Error during undo: Record does not exist anymore'; +$wb['error_undelete_txt'] = 'Error during undelete: Record with primary id already existing.'; +$wb['btn_cancel_txt'] = 'Back'; +?> diff --git a/interface/web/monitor/lib/lang/fr_dataloghistory_view.lng b/interface/web/monitor/lib/lang/fr_dataloghistory_view.lng new file mode 100644 index 0000000000..df9ddd286f --- /dev/null +++ b/interface/web/monitor/lib/lang/fr_dataloghistory_view.lng @@ -0,0 +1,26 @@ +<?php +$wb['i'] = 'Insert'; +$wb['u'] = 'Update'; +$wb['d'] = 'Delete'; +$wb['list_head_txt'] = 'Data Log History Entry'; +$wb['id_txt'] = 'ID'; +$wb['timestamp_txt'] = 'Timestamp'; +$wb['table_txt'] = 'Table'; +$wb['action_txt'] = 'Action'; +$wb['session_id_txt'] = 'Session ID'; +$wb['fields_txt'] = 'Fields'; +$wb['fields_inserted_txt'] = 'Inserted Fields'; +$wb['fields_updated_txt'] = 'Updated Fields'; +$wb['fields_deleted_txt'] = 'Deleted Fields'; +$wb['no_changes_txt'] = 'No changes (re-sync)'; +$wb['is_diff_txt'] = 'The differences are highlighted'; +$wb['is_diff_inserts_txt'] = 'Insertions'; +$wb['is_diff_deletes_txt'] = 'Deletions'; +$wb['field_txt'] = 'Field'; +$wb['value_txt'] = 'Value'; +$wb['old_txt'] = 'Old'; +$wb['new_txt'] = 'New'; +$wb['btn_cancel_txt'] = 'Back'; +$wb['undo_txt'] = 'Undo action'; +$wb['undo_confirmation_txt'] = 'Do you really want to undo this action?'; +?> diff --git a/interface/web/monitor/lib/lang/hr.lng b/interface/web/monitor/lib/lang/hr.lng index d878568104..17899ff3f0 100644 --- a/interface/web/monitor/lib/lang/hr.lng +++ b/interface/web/monitor/lib/lang/hr.lng @@ -161,4 +161,5 @@ $wb['monitor_database_client_txt'] = 'Client'; $wb['monitor_database_domain_txt'] = 'Domain'; $wb['monitor_services_mongodb_txt'] = 'MongoDB-Server:'; $wb['monitor_title_mongodb_txt'] = 'MongoDB Log'; +$wb['Show Data Log History'] = 'Show Data Log History'; ?> diff --git a/interface/web/monitor/lib/lang/hr_dataloghistory_list.lng b/interface/web/monitor/lib/lang/hr_dataloghistory_list.lng new file mode 100644 index 0000000000..9f9afd6347 --- /dev/null +++ b/interface/web/monitor/lib/lang/hr_dataloghistory_list.lng @@ -0,0 +1,8 @@ +<?php +$wb["list_head_txt"] = 'Datalog History'; +$wb["tstamp_txt"] = 'Date'; +$wb["server_id_txt"] = 'Server'; +$wb["dbtable_txt"] = 'DB Table'; +$wb["action_txt"] = 'Action'; +$wb["status_txt"] = 'Status'; +?> diff --git a/interface/web/monitor/lib/lang/hr_dataloghistory_undo.lng b/interface/web/monitor/lib/lang/hr_dataloghistory_undo.lng new file mode 100644 index 0000000000..0e040a3e77 --- /dev/null +++ b/interface/web/monitor/lib/lang/hr_dataloghistory_undo.lng @@ -0,0 +1,7 @@ +<?php +$wb['list_head_txt'] = 'Data Log History Entry'; +$wb['success_txt'] = 'Undo successful'; +$wb['error_txt'] = 'Error during undo: Record does not exist anymore'; +$wb['error_undelete_txt'] = 'Error during undelete: Record with primary id already existing.'; +$wb['btn_cancel_txt'] = 'Back'; +?> diff --git a/interface/web/monitor/lib/lang/hr_dataloghistory_view.lng b/interface/web/monitor/lib/lang/hr_dataloghistory_view.lng new file mode 100644 index 0000000000..df9ddd286f --- /dev/null +++ b/interface/web/monitor/lib/lang/hr_dataloghistory_view.lng @@ -0,0 +1,26 @@ +<?php +$wb['i'] = 'Insert'; +$wb['u'] = 'Update'; +$wb['d'] = 'Delete'; +$wb['list_head_txt'] = 'Data Log History Entry'; +$wb['id_txt'] = 'ID'; +$wb['timestamp_txt'] = 'Timestamp'; +$wb['table_txt'] = 'Table'; +$wb['action_txt'] = 'Action'; +$wb['session_id_txt'] = 'Session ID'; +$wb['fields_txt'] = 'Fields'; +$wb['fields_inserted_txt'] = 'Inserted Fields'; +$wb['fields_updated_txt'] = 'Updated Fields'; +$wb['fields_deleted_txt'] = 'Deleted Fields'; +$wb['no_changes_txt'] = 'No changes (re-sync)'; +$wb['is_diff_txt'] = 'The differences are highlighted'; +$wb['is_diff_inserts_txt'] = 'Insertions'; +$wb['is_diff_deletes_txt'] = 'Deletions'; +$wb['field_txt'] = 'Field'; +$wb['value_txt'] = 'Value'; +$wb['old_txt'] = 'Old'; +$wb['new_txt'] = 'New'; +$wb['btn_cancel_txt'] = 'Back'; +$wb['undo_txt'] = 'Undo action'; +$wb['undo_confirmation_txt'] = 'Do you really want to undo this action?'; +?> diff --git a/interface/web/monitor/lib/lang/hu.lng b/interface/web/monitor/lib/lang/hu.lng index 85fda97908..9a5c41654f 100644 --- a/interface/web/monitor/lib/lang/hu.lng +++ b/interface/web/monitor/lib/lang/hu.lng @@ -161,4 +161,5 @@ $wb['monitor_database_domain_txt'] = 'Domain'; $wb['Show MongoDB-Log'] = 'Show MongoDB-Log'; $wb['monitor_services_mongodb_txt'] = 'MongoDB-Server:'; $wb['monitor_title_mongodb_txt'] = 'MongoDB Log'; +$wb['Show Data Log History'] = 'Show Data Log History'; ?> diff --git a/interface/web/monitor/lib/lang/hu_dataloghistory_list.lng b/interface/web/monitor/lib/lang/hu_dataloghistory_list.lng new file mode 100644 index 0000000000..9f9afd6347 --- /dev/null +++ b/interface/web/monitor/lib/lang/hu_dataloghistory_list.lng @@ -0,0 +1,8 @@ +<?php +$wb["list_head_txt"] = 'Datalog History'; +$wb["tstamp_txt"] = 'Date'; +$wb["server_id_txt"] = 'Server'; +$wb["dbtable_txt"] = 'DB Table'; +$wb["action_txt"] = 'Action'; +$wb["status_txt"] = 'Status'; +?> diff --git a/interface/web/monitor/lib/lang/hu_dataloghistory_undo.lng b/interface/web/monitor/lib/lang/hu_dataloghistory_undo.lng new file mode 100644 index 0000000000..0e040a3e77 --- /dev/null +++ b/interface/web/monitor/lib/lang/hu_dataloghistory_undo.lng @@ -0,0 +1,7 @@ +<?php +$wb['list_head_txt'] = 'Data Log History Entry'; +$wb['success_txt'] = 'Undo successful'; +$wb['error_txt'] = 'Error during undo: Record does not exist anymore'; +$wb['error_undelete_txt'] = 'Error during undelete: Record with primary id already existing.'; +$wb['btn_cancel_txt'] = 'Back'; +?> diff --git a/interface/web/monitor/lib/lang/hu_dataloghistory_view.lng b/interface/web/monitor/lib/lang/hu_dataloghistory_view.lng new file mode 100644 index 0000000000..df9ddd286f --- /dev/null +++ b/interface/web/monitor/lib/lang/hu_dataloghistory_view.lng @@ -0,0 +1,26 @@ +<?php +$wb['i'] = 'Insert'; +$wb['u'] = 'Update'; +$wb['d'] = 'Delete'; +$wb['list_head_txt'] = 'Data Log History Entry'; +$wb['id_txt'] = 'ID'; +$wb['timestamp_txt'] = 'Timestamp'; +$wb['table_txt'] = 'Table'; +$wb['action_txt'] = 'Action'; +$wb['session_id_txt'] = 'Session ID'; +$wb['fields_txt'] = 'Fields'; +$wb['fields_inserted_txt'] = 'Inserted Fields'; +$wb['fields_updated_txt'] = 'Updated Fields'; +$wb['fields_deleted_txt'] = 'Deleted Fields'; +$wb['no_changes_txt'] = 'No changes (re-sync)'; +$wb['is_diff_txt'] = 'The differences are highlighted'; +$wb['is_diff_inserts_txt'] = 'Insertions'; +$wb['is_diff_deletes_txt'] = 'Deletions'; +$wb['field_txt'] = 'Field'; +$wb['value_txt'] = 'Value'; +$wb['old_txt'] = 'Old'; +$wb['new_txt'] = 'New'; +$wb['btn_cancel_txt'] = 'Back'; +$wb['undo_txt'] = 'Undo action'; +$wb['undo_confirmation_txt'] = 'Do you really want to undo this action?'; +?> diff --git a/interface/web/monitor/lib/lang/id.lng b/interface/web/monitor/lib/lang/id.lng index d77f145649..4cdbf5d8ba 100644 --- a/interface/web/monitor/lib/lang/id.lng +++ b/interface/web/monitor/lib/lang/id.lng @@ -161,4 +161,5 @@ $wb['monitor_database_domain_txt'] = 'Domain'; $wb['Show MongoDB-Log'] = 'Show MongoDB-Log'; $wb['monitor_services_mongodb_txt'] = 'MongoDB-Server:'; $wb['monitor_title_mongodb_txt'] = 'MongoDB Log'; +$wb['Show Data Log History'] = 'Show Data Log History'; ?> diff --git a/interface/web/monitor/lib/lang/id_dataloghistory_list.lng b/interface/web/monitor/lib/lang/id_dataloghistory_list.lng new file mode 100644 index 0000000000..9f9afd6347 --- /dev/null +++ b/interface/web/monitor/lib/lang/id_dataloghistory_list.lng @@ -0,0 +1,8 @@ +<?php +$wb["list_head_txt"] = 'Datalog History'; +$wb["tstamp_txt"] = 'Date'; +$wb["server_id_txt"] = 'Server'; +$wb["dbtable_txt"] = 'DB Table'; +$wb["action_txt"] = 'Action'; +$wb["status_txt"] = 'Status'; +?> diff --git a/interface/web/monitor/lib/lang/id_dataloghistory_undo.lng b/interface/web/monitor/lib/lang/id_dataloghistory_undo.lng new file mode 100644 index 0000000000..0e040a3e77 --- /dev/null +++ b/interface/web/monitor/lib/lang/id_dataloghistory_undo.lng @@ -0,0 +1,7 @@ +<?php +$wb['list_head_txt'] = 'Data Log History Entry'; +$wb['success_txt'] = 'Undo successful'; +$wb['error_txt'] = 'Error during undo: Record does not exist anymore'; +$wb['error_undelete_txt'] = 'Error during undelete: Record with primary id already existing.'; +$wb['btn_cancel_txt'] = 'Back'; +?> diff --git a/interface/web/monitor/lib/lang/id_dataloghistory_view.lng b/interface/web/monitor/lib/lang/id_dataloghistory_view.lng new file mode 100644 index 0000000000..df9ddd286f --- /dev/null +++ b/interface/web/monitor/lib/lang/id_dataloghistory_view.lng @@ -0,0 +1,26 @@ +<?php +$wb['i'] = 'Insert'; +$wb['u'] = 'Update'; +$wb['d'] = 'Delete'; +$wb['list_head_txt'] = 'Data Log History Entry'; +$wb['id_txt'] = 'ID'; +$wb['timestamp_txt'] = 'Timestamp'; +$wb['table_txt'] = 'Table'; +$wb['action_txt'] = 'Action'; +$wb['session_id_txt'] = 'Session ID'; +$wb['fields_txt'] = 'Fields'; +$wb['fields_inserted_txt'] = 'Inserted Fields'; +$wb['fields_updated_txt'] = 'Updated Fields'; +$wb['fields_deleted_txt'] = 'Deleted Fields'; +$wb['no_changes_txt'] = 'No changes (re-sync)'; +$wb['is_diff_txt'] = 'The differences are highlighted'; +$wb['is_diff_inserts_txt'] = 'Insertions'; +$wb['is_diff_deletes_txt'] = 'Deletions'; +$wb['field_txt'] = 'Field'; +$wb['value_txt'] = 'Value'; +$wb['old_txt'] = 'Old'; +$wb['new_txt'] = 'New'; +$wb['btn_cancel_txt'] = 'Back'; +$wb['undo_txt'] = 'Undo action'; +$wb['undo_confirmation_txt'] = 'Do you really want to undo this action?'; +?> diff --git a/interface/web/monitor/lib/lang/it.lng b/interface/web/monitor/lib/lang/it.lng index c7a6823683..e6feadf01f 100644 --- a/interface/web/monitor/lib/lang/it.lng +++ b/interface/web/monitor/lib/lang/it.lng @@ -161,4 +161,5 @@ $wb['monitor_database_client_txt'] = 'Client'; $wb['monitor_database_domain_txt'] = 'Domain'; $wb['monitor_services_mongodb_txt'] = 'MongoDB-Server:'; $wb['monitor_title_mongodb_txt'] = 'MongoDB Log'; +$wb['Show Data Log History'] = 'Show Data Log History'; ?> diff --git a/interface/web/monitor/lib/lang/it_dataloghistory_list.lng b/interface/web/monitor/lib/lang/it_dataloghistory_list.lng new file mode 100644 index 0000000000..9f9afd6347 --- /dev/null +++ b/interface/web/monitor/lib/lang/it_dataloghistory_list.lng @@ -0,0 +1,8 @@ +<?php +$wb["list_head_txt"] = 'Datalog History'; +$wb["tstamp_txt"] = 'Date'; +$wb["server_id_txt"] = 'Server'; +$wb["dbtable_txt"] = 'DB Table'; +$wb["action_txt"] = 'Action'; +$wb["status_txt"] = 'Status'; +?> diff --git a/interface/web/monitor/lib/lang/it_dataloghistory_undo.lng b/interface/web/monitor/lib/lang/it_dataloghistory_undo.lng new file mode 100644 index 0000000000..0e040a3e77 --- /dev/null +++ b/interface/web/monitor/lib/lang/it_dataloghistory_undo.lng @@ -0,0 +1,7 @@ +<?php +$wb['list_head_txt'] = 'Data Log History Entry'; +$wb['success_txt'] = 'Undo successful'; +$wb['error_txt'] = 'Error during undo: Record does not exist anymore'; +$wb['error_undelete_txt'] = 'Error during undelete: Record with primary id already existing.'; +$wb['btn_cancel_txt'] = 'Back'; +?> diff --git a/interface/web/monitor/lib/lang/it_dataloghistory_view.lng b/interface/web/monitor/lib/lang/it_dataloghistory_view.lng new file mode 100644 index 0000000000..df9ddd286f --- /dev/null +++ b/interface/web/monitor/lib/lang/it_dataloghistory_view.lng @@ -0,0 +1,26 @@ +<?php +$wb['i'] = 'Insert'; +$wb['u'] = 'Update'; +$wb['d'] = 'Delete'; +$wb['list_head_txt'] = 'Data Log History Entry'; +$wb['id_txt'] = 'ID'; +$wb['timestamp_txt'] = 'Timestamp'; +$wb['table_txt'] = 'Table'; +$wb['action_txt'] = 'Action'; +$wb['session_id_txt'] = 'Session ID'; +$wb['fields_txt'] = 'Fields'; +$wb['fields_inserted_txt'] = 'Inserted Fields'; +$wb['fields_updated_txt'] = 'Updated Fields'; +$wb['fields_deleted_txt'] = 'Deleted Fields'; +$wb['no_changes_txt'] = 'No changes (re-sync)'; +$wb['is_diff_txt'] = 'The differences are highlighted'; +$wb['is_diff_inserts_txt'] = 'Insertions'; +$wb['is_diff_deletes_txt'] = 'Deletions'; +$wb['field_txt'] = 'Field'; +$wb['value_txt'] = 'Value'; +$wb['old_txt'] = 'Old'; +$wb['new_txt'] = 'New'; +$wb['btn_cancel_txt'] = 'Back'; +$wb['undo_txt'] = 'Undo action'; +$wb['undo_confirmation_txt'] = 'Do you really want to undo this action?'; +?> diff --git a/interface/web/monitor/lib/lang/ja.lng b/interface/web/monitor/lib/lang/ja.lng index bc2c7d2b5c..cccd678cb7 100644 --- a/interface/web/monitor/lib/lang/ja.lng +++ b/interface/web/monitor/lib/lang/ja.lng @@ -161,4 +161,5 @@ $wb['monitor_database_domain_txt'] = 'Domain'; $wb['Show MongoDB-Log'] = 'Show MongoDB-Log'; $wb['monitor_services_mongodb_txt'] = 'MongoDB-Server:'; $wb['monitor_title_mongodb_txt'] = 'MongoDB Log'; +$wb['Show Data Log History'] = 'Show Data Log History'; ?> diff --git a/interface/web/monitor/lib/lang/ja_dataloghistory_list.lng b/interface/web/monitor/lib/lang/ja_dataloghistory_list.lng new file mode 100644 index 0000000000..9f9afd6347 --- /dev/null +++ b/interface/web/monitor/lib/lang/ja_dataloghistory_list.lng @@ -0,0 +1,8 @@ +<?php +$wb["list_head_txt"] = 'Datalog History'; +$wb["tstamp_txt"] = 'Date'; +$wb["server_id_txt"] = 'Server'; +$wb["dbtable_txt"] = 'DB Table'; +$wb["action_txt"] = 'Action'; +$wb["status_txt"] = 'Status'; +?> diff --git a/interface/web/monitor/lib/lang/ja_dataloghistory_undo.lng b/interface/web/monitor/lib/lang/ja_dataloghistory_undo.lng new file mode 100644 index 0000000000..0e040a3e77 --- /dev/null +++ b/interface/web/monitor/lib/lang/ja_dataloghistory_undo.lng @@ -0,0 +1,7 @@ +<?php +$wb['list_head_txt'] = 'Data Log History Entry'; +$wb['success_txt'] = 'Undo successful'; +$wb['error_txt'] = 'Error during undo: Record does not exist anymore'; +$wb['error_undelete_txt'] = 'Error during undelete: Record with primary id already existing.'; +$wb['btn_cancel_txt'] = 'Back'; +?> diff --git a/interface/web/monitor/lib/lang/ja_dataloghistory_view.lng b/interface/web/monitor/lib/lang/ja_dataloghistory_view.lng new file mode 100644 index 0000000000..df9ddd286f --- /dev/null +++ b/interface/web/monitor/lib/lang/ja_dataloghistory_view.lng @@ -0,0 +1,26 @@ +<?php +$wb['i'] = 'Insert'; +$wb['u'] = 'Update'; +$wb['d'] = 'Delete'; +$wb['list_head_txt'] = 'Data Log History Entry'; +$wb['id_txt'] = 'ID'; +$wb['timestamp_txt'] = 'Timestamp'; +$wb['table_txt'] = 'Table'; +$wb['action_txt'] = 'Action'; +$wb['session_id_txt'] = 'Session ID'; +$wb['fields_txt'] = 'Fields'; +$wb['fields_inserted_txt'] = 'Inserted Fields'; +$wb['fields_updated_txt'] = 'Updated Fields'; +$wb['fields_deleted_txt'] = 'Deleted Fields'; +$wb['no_changes_txt'] = 'No changes (re-sync)'; +$wb['is_diff_txt'] = 'The differences are highlighted'; +$wb['is_diff_inserts_txt'] = 'Insertions'; +$wb['is_diff_deletes_txt'] = 'Deletions'; +$wb['field_txt'] = 'Field'; +$wb['value_txt'] = 'Value'; +$wb['old_txt'] = 'Old'; +$wb['new_txt'] = 'New'; +$wb['btn_cancel_txt'] = 'Back'; +$wb['undo_txt'] = 'Undo action'; +$wb['undo_confirmation_txt'] = 'Do you really want to undo this action?'; +?> diff --git a/interface/web/monitor/lib/lang/nl.lng b/interface/web/monitor/lib/lang/nl.lng index 81caa02b70..a534b9afb3 100644 --- a/interface/web/monitor/lib/lang/nl.lng +++ b/interface/web/monitor/lib/lang/nl.lng @@ -161,4 +161,5 @@ $wb['monitor_database_domain_txt'] = 'Domain'; $wb['Show MongoDB-Log'] = 'Show MongoDB-Log'; $wb['monitor_services_mongodb_txt'] = 'MongoDB-Server:'; $wb['monitor_title_mongodb_txt'] = 'MongoDB Log'; +$wb['Show Data Log History'] = 'Show Data Log History'; ?> diff --git a/interface/web/monitor/lib/lang/nl_dataloghistory_list.lng b/interface/web/monitor/lib/lang/nl_dataloghistory_list.lng new file mode 100644 index 0000000000..9f9afd6347 --- /dev/null +++ b/interface/web/monitor/lib/lang/nl_dataloghistory_list.lng @@ -0,0 +1,8 @@ +<?php +$wb["list_head_txt"] = 'Datalog History'; +$wb["tstamp_txt"] = 'Date'; +$wb["server_id_txt"] = 'Server'; +$wb["dbtable_txt"] = 'DB Table'; +$wb["action_txt"] = 'Action'; +$wb["status_txt"] = 'Status'; +?> diff --git a/interface/web/monitor/lib/lang/nl_dataloghistory_undo.lng b/interface/web/monitor/lib/lang/nl_dataloghistory_undo.lng new file mode 100644 index 0000000000..0e040a3e77 --- /dev/null +++ b/interface/web/monitor/lib/lang/nl_dataloghistory_undo.lng @@ -0,0 +1,7 @@ +<?php +$wb['list_head_txt'] = 'Data Log History Entry'; +$wb['success_txt'] = 'Undo successful'; +$wb['error_txt'] = 'Error during undo: Record does not exist anymore'; +$wb['error_undelete_txt'] = 'Error during undelete: Record with primary id already existing.'; +$wb['btn_cancel_txt'] = 'Back'; +?> diff --git a/interface/web/monitor/lib/lang/nl_dataloghistory_view.lng b/interface/web/monitor/lib/lang/nl_dataloghistory_view.lng new file mode 100644 index 0000000000..df9ddd286f --- /dev/null +++ b/interface/web/monitor/lib/lang/nl_dataloghistory_view.lng @@ -0,0 +1,26 @@ +<?php +$wb['i'] = 'Insert'; +$wb['u'] = 'Update'; +$wb['d'] = 'Delete'; +$wb['list_head_txt'] = 'Data Log History Entry'; +$wb['id_txt'] = 'ID'; +$wb['timestamp_txt'] = 'Timestamp'; +$wb['table_txt'] = 'Table'; +$wb['action_txt'] = 'Action'; +$wb['session_id_txt'] = 'Session ID'; +$wb['fields_txt'] = 'Fields'; +$wb['fields_inserted_txt'] = 'Inserted Fields'; +$wb['fields_updated_txt'] = 'Updated Fields'; +$wb['fields_deleted_txt'] = 'Deleted Fields'; +$wb['no_changes_txt'] = 'No changes (re-sync)'; +$wb['is_diff_txt'] = 'The differences are highlighted'; +$wb['is_diff_inserts_txt'] = 'Insertions'; +$wb['is_diff_deletes_txt'] = 'Deletions'; +$wb['field_txt'] = 'Field'; +$wb['value_txt'] = 'Value'; +$wb['old_txt'] = 'Old'; +$wb['new_txt'] = 'New'; +$wb['btn_cancel_txt'] = 'Back'; +$wb['undo_txt'] = 'Undo action'; +$wb['undo_confirmation_txt'] = 'Do you really want to undo this action?'; +?> diff --git a/interface/web/monitor/lib/lang/pl.lng b/interface/web/monitor/lib/lang/pl.lng index 77d05e0569..a8e1b3e53c 100644 --- a/interface/web/monitor/lib/lang/pl.lng +++ b/interface/web/monitor/lib/lang/pl.lng @@ -161,4 +161,5 @@ $wb['monitor_database_domain_txt'] = 'Domain'; $wb['Show MongoDB-Log'] = 'Show MongoDB-Log'; $wb['monitor_services_mongodb_txt'] = 'MongoDB-Server:'; $wb['monitor_title_mongodb_txt'] = 'MongoDB Log'; +$wb['Show Data Log History'] = 'Show Data Log History'; ?> diff --git a/interface/web/monitor/lib/lang/pl_dataloghistory_list.lng b/interface/web/monitor/lib/lang/pl_dataloghistory_list.lng new file mode 100644 index 0000000000..9f9afd6347 --- /dev/null +++ b/interface/web/monitor/lib/lang/pl_dataloghistory_list.lng @@ -0,0 +1,8 @@ +<?php +$wb["list_head_txt"] = 'Datalog History'; +$wb["tstamp_txt"] = 'Date'; +$wb["server_id_txt"] = 'Server'; +$wb["dbtable_txt"] = 'DB Table'; +$wb["action_txt"] = 'Action'; +$wb["status_txt"] = 'Status'; +?> diff --git a/interface/web/monitor/lib/lang/pl_dataloghistory_undo.lng b/interface/web/monitor/lib/lang/pl_dataloghistory_undo.lng new file mode 100644 index 0000000000..0e040a3e77 --- /dev/null +++ b/interface/web/monitor/lib/lang/pl_dataloghistory_undo.lng @@ -0,0 +1,7 @@ +<?php +$wb['list_head_txt'] = 'Data Log History Entry'; +$wb['success_txt'] = 'Undo successful'; +$wb['error_txt'] = 'Error during undo: Record does not exist anymore'; +$wb['error_undelete_txt'] = 'Error during undelete: Record with primary id already existing.'; +$wb['btn_cancel_txt'] = 'Back'; +?> diff --git a/interface/web/monitor/lib/lang/pl_dataloghistory_view.lng b/interface/web/monitor/lib/lang/pl_dataloghistory_view.lng new file mode 100644 index 0000000000..df9ddd286f --- /dev/null +++ b/interface/web/monitor/lib/lang/pl_dataloghistory_view.lng @@ -0,0 +1,26 @@ +<?php +$wb['i'] = 'Insert'; +$wb['u'] = 'Update'; +$wb['d'] = 'Delete'; +$wb['list_head_txt'] = 'Data Log History Entry'; +$wb['id_txt'] = 'ID'; +$wb['timestamp_txt'] = 'Timestamp'; +$wb['table_txt'] = 'Table'; +$wb['action_txt'] = 'Action'; +$wb['session_id_txt'] = 'Session ID'; +$wb['fields_txt'] = 'Fields'; +$wb['fields_inserted_txt'] = 'Inserted Fields'; +$wb['fields_updated_txt'] = 'Updated Fields'; +$wb['fields_deleted_txt'] = 'Deleted Fields'; +$wb['no_changes_txt'] = 'No changes (re-sync)'; +$wb['is_diff_txt'] = 'The differences are highlighted'; +$wb['is_diff_inserts_txt'] = 'Insertions'; +$wb['is_diff_deletes_txt'] = 'Deletions'; +$wb['field_txt'] = 'Field'; +$wb['value_txt'] = 'Value'; +$wb['old_txt'] = 'Old'; +$wb['new_txt'] = 'New'; +$wb['btn_cancel_txt'] = 'Back'; +$wb['undo_txt'] = 'Undo action'; +$wb['undo_confirmation_txt'] = 'Do you really want to undo this action?'; +?> diff --git a/interface/web/monitor/lib/lang/pt.lng b/interface/web/monitor/lib/lang/pt.lng index 2218ede892..7930febda2 100644 --- a/interface/web/monitor/lib/lang/pt.lng +++ b/interface/web/monitor/lib/lang/pt.lng @@ -161,4 +161,5 @@ $wb['monitor_database_domain_txt'] = 'Domain'; $wb['Show MongoDB-Log'] = 'Show MongoDB-Log'; $wb['monitor_services_mongodb_txt'] = 'MongoDB-Server:'; $wb['monitor_title_mongodb_txt'] = 'MongoDB Log'; +$wb['Show Data Log History'] = 'Show Data Log History'; ?> diff --git a/interface/web/monitor/lib/lang/pt_dataloghistory_list.lng b/interface/web/monitor/lib/lang/pt_dataloghistory_list.lng new file mode 100644 index 0000000000..9f9afd6347 --- /dev/null +++ b/interface/web/monitor/lib/lang/pt_dataloghistory_list.lng @@ -0,0 +1,8 @@ +<?php +$wb["list_head_txt"] = 'Datalog History'; +$wb["tstamp_txt"] = 'Date'; +$wb["server_id_txt"] = 'Server'; +$wb["dbtable_txt"] = 'DB Table'; +$wb["action_txt"] = 'Action'; +$wb["status_txt"] = 'Status'; +?> diff --git a/interface/web/monitor/lib/lang/pt_dataloghistory_undo.lng b/interface/web/monitor/lib/lang/pt_dataloghistory_undo.lng new file mode 100644 index 0000000000..0e040a3e77 --- /dev/null +++ b/interface/web/monitor/lib/lang/pt_dataloghistory_undo.lng @@ -0,0 +1,7 @@ +<?php +$wb['list_head_txt'] = 'Data Log History Entry'; +$wb['success_txt'] = 'Undo successful'; +$wb['error_txt'] = 'Error during undo: Record does not exist anymore'; +$wb['error_undelete_txt'] = 'Error during undelete: Record with primary id already existing.'; +$wb['btn_cancel_txt'] = 'Back'; +?> diff --git a/interface/web/monitor/lib/lang/pt_dataloghistory_view.lng b/interface/web/monitor/lib/lang/pt_dataloghistory_view.lng new file mode 100644 index 0000000000..df9ddd286f --- /dev/null +++ b/interface/web/monitor/lib/lang/pt_dataloghistory_view.lng @@ -0,0 +1,26 @@ +<?php +$wb['i'] = 'Insert'; +$wb['u'] = 'Update'; +$wb['d'] = 'Delete'; +$wb['list_head_txt'] = 'Data Log History Entry'; +$wb['id_txt'] = 'ID'; +$wb['timestamp_txt'] = 'Timestamp'; +$wb['table_txt'] = 'Table'; +$wb['action_txt'] = 'Action'; +$wb['session_id_txt'] = 'Session ID'; +$wb['fields_txt'] = 'Fields'; +$wb['fields_inserted_txt'] = 'Inserted Fields'; +$wb['fields_updated_txt'] = 'Updated Fields'; +$wb['fields_deleted_txt'] = 'Deleted Fields'; +$wb['no_changes_txt'] = 'No changes (re-sync)'; +$wb['is_diff_txt'] = 'The differences are highlighted'; +$wb['is_diff_inserts_txt'] = 'Insertions'; +$wb['is_diff_deletes_txt'] = 'Deletions'; +$wb['field_txt'] = 'Field'; +$wb['value_txt'] = 'Value'; +$wb['old_txt'] = 'Old'; +$wb['new_txt'] = 'New'; +$wb['btn_cancel_txt'] = 'Back'; +$wb['undo_txt'] = 'Undo action'; +$wb['undo_confirmation_txt'] = 'Do you really want to undo this action?'; +?> diff --git a/interface/web/monitor/lib/lang/ro.lng b/interface/web/monitor/lib/lang/ro.lng index 7b06c4ba0c..96a2ce10e6 100644 --- a/interface/web/monitor/lib/lang/ro.lng +++ b/interface/web/monitor/lib/lang/ro.lng @@ -161,4 +161,5 @@ $wb['monitor_database_domain_txt'] = 'Domain'; $wb['Show MongoDB-Log'] = 'Show MongoDB-Log'; $wb['monitor_services_mongodb_txt'] = 'MongoDB-Server:'; $wb['monitor_title_mongodb_txt'] = 'MongoDB Log'; +$wb['Show Data Log History'] = 'Show Data Log History'; ?> diff --git a/interface/web/monitor/lib/lang/ro_dataloghistory_list.lng b/interface/web/monitor/lib/lang/ro_dataloghistory_list.lng new file mode 100644 index 0000000000..9f9afd6347 --- /dev/null +++ b/interface/web/monitor/lib/lang/ro_dataloghistory_list.lng @@ -0,0 +1,8 @@ +<?php +$wb["list_head_txt"] = 'Datalog History'; +$wb["tstamp_txt"] = 'Date'; +$wb["server_id_txt"] = 'Server'; +$wb["dbtable_txt"] = 'DB Table'; +$wb["action_txt"] = 'Action'; +$wb["status_txt"] = 'Status'; +?> diff --git a/interface/web/monitor/lib/lang/ro_dataloghistory_undo.lng b/interface/web/monitor/lib/lang/ro_dataloghistory_undo.lng new file mode 100644 index 0000000000..0e040a3e77 --- /dev/null +++ b/interface/web/monitor/lib/lang/ro_dataloghistory_undo.lng @@ -0,0 +1,7 @@ +<?php +$wb['list_head_txt'] = 'Data Log History Entry'; +$wb['success_txt'] = 'Undo successful'; +$wb['error_txt'] = 'Error during undo: Record does not exist anymore'; +$wb['error_undelete_txt'] = 'Error during undelete: Record with primary id already existing.'; +$wb['btn_cancel_txt'] = 'Back'; +?> diff --git a/interface/web/monitor/lib/lang/ro_dataloghistory_view.lng b/interface/web/monitor/lib/lang/ro_dataloghistory_view.lng new file mode 100644 index 0000000000..df9ddd286f --- /dev/null +++ b/interface/web/monitor/lib/lang/ro_dataloghistory_view.lng @@ -0,0 +1,26 @@ +<?php +$wb['i'] = 'Insert'; +$wb['u'] = 'Update'; +$wb['d'] = 'Delete'; +$wb['list_head_txt'] = 'Data Log History Entry'; +$wb['id_txt'] = 'ID'; +$wb['timestamp_txt'] = 'Timestamp'; +$wb['table_txt'] = 'Table'; +$wb['action_txt'] = 'Action'; +$wb['session_id_txt'] = 'Session ID'; +$wb['fields_txt'] = 'Fields'; +$wb['fields_inserted_txt'] = 'Inserted Fields'; +$wb['fields_updated_txt'] = 'Updated Fields'; +$wb['fields_deleted_txt'] = 'Deleted Fields'; +$wb['no_changes_txt'] = 'No changes (re-sync)'; +$wb['is_diff_txt'] = 'The differences are highlighted'; +$wb['is_diff_inserts_txt'] = 'Insertions'; +$wb['is_diff_deletes_txt'] = 'Deletions'; +$wb['field_txt'] = 'Field'; +$wb['value_txt'] = 'Value'; +$wb['old_txt'] = 'Old'; +$wb['new_txt'] = 'New'; +$wb['btn_cancel_txt'] = 'Back'; +$wb['undo_txt'] = 'Undo action'; +$wb['undo_confirmation_txt'] = 'Do you really want to undo this action?'; +?> diff --git a/interface/web/monitor/lib/lang/ru.lng b/interface/web/monitor/lib/lang/ru.lng index 49e9d4604d..823174b716 100644 --- a/interface/web/monitor/lib/lang/ru.lng +++ b/interface/web/monitor/lib/lang/ru.lng @@ -161,4 +161,5 @@ $wb['monitor_database_domain_txt'] = 'Домен'; $wb['Show MongoDB-Log'] = 'Показать журнал MongoDB'; $wb['monitor_services_mongodb_txt'] = 'MongoDB-Ñервер:'; $wb['monitor_title_mongodb_txt'] = 'Журнал MongoDB'; +$wb['Show Data Log History'] = 'Show Data Log History'; ?> diff --git a/interface/web/monitor/lib/lang/ru_dataloghistory_list.lng b/interface/web/monitor/lib/lang/ru_dataloghistory_list.lng new file mode 100644 index 0000000000..9f9afd6347 --- /dev/null +++ b/interface/web/monitor/lib/lang/ru_dataloghistory_list.lng @@ -0,0 +1,8 @@ +<?php +$wb["list_head_txt"] = 'Datalog History'; +$wb["tstamp_txt"] = 'Date'; +$wb["server_id_txt"] = 'Server'; +$wb["dbtable_txt"] = 'DB Table'; +$wb["action_txt"] = 'Action'; +$wb["status_txt"] = 'Status'; +?> diff --git a/interface/web/monitor/lib/lang/ru_dataloghistory_undo.lng b/interface/web/monitor/lib/lang/ru_dataloghistory_undo.lng new file mode 100644 index 0000000000..0e040a3e77 --- /dev/null +++ b/interface/web/monitor/lib/lang/ru_dataloghistory_undo.lng @@ -0,0 +1,7 @@ +<?php +$wb['list_head_txt'] = 'Data Log History Entry'; +$wb['success_txt'] = 'Undo successful'; +$wb['error_txt'] = 'Error during undo: Record does not exist anymore'; +$wb['error_undelete_txt'] = 'Error during undelete: Record with primary id already existing.'; +$wb['btn_cancel_txt'] = 'Back'; +?> diff --git a/interface/web/monitor/lib/lang/ru_dataloghistory_view.lng b/interface/web/monitor/lib/lang/ru_dataloghistory_view.lng new file mode 100644 index 0000000000..df9ddd286f --- /dev/null +++ b/interface/web/monitor/lib/lang/ru_dataloghistory_view.lng @@ -0,0 +1,26 @@ +<?php +$wb['i'] = 'Insert'; +$wb['u'] = 'Update'; +$wb['d'] = 'Delete'; +$wb['list_head_txt'] = 'Data Log History Entry'; +$wb['id_txt'] = 'ID'; +$wb['timestamp_txt'] = 'Timestamp'; +$wb['table_txt'] = 'Table'; +$wb['action_txt'] = 'Action'; +$wb['session_id_txt'] = 'Session ID'; +$wb['fields_txt'] = 'Fields'; +$wb['fields_inserted_txt'] = 'Inserted Fields'; +$wb['fields_updated_txt'] = 'Updated Fields'; +$wb['fields_deleted_txt'] = 'Deleted Fields'; +$wb['no_changes_txt'] = 'No changes (re-sync)'; +$wb['is_diff_txt'] = 'The differences are highlighted'; +$wb['is_diff_inserts_txt'] = 'Insertions'; +$wb['is_diff_deletes_txt'] = 'Deletions'; +$wb['field_txt'] = 'Field'; +$wb['value_txt'] = 'Value'; +$wb['old_txt'] = 'Old'; +$wb['new_txt'] = 'New'; +$wb['btn_cancel_txt'] = 'Back'; +$wb['undo_txt'] = 'Undo action'; +$wb['undo_confirmation_txt'] = 'Do you really want to undo this action?'; +?> diff --git a/interface/web/monitor/lib/lang/se.lng b/interface/web/monitor/lib/lang/se.lng index 732805d2a6..78dd5ed1be 100644 --- a/interface/web/monitor/lib/lang/se.lng +++ b/interface/web/monitor/lib/lang/se.lng @@ -161,4 +161,5 @@ $wb['no_permissions_to_view_munin_txt'] = 'Du har inte behörighet att visa Muni $wb['Show MongoDB-Log'] = 'Show MongoDB-Log'; $wb['monitor_services_mongodb_txt'] = 'MongoDB-Server:'; $wb['monitor_title_mongodb_txt'] = 'MongoDB Log'; +$wb['Show Data Log History'] = 'Show Data Log History'; ?> diff --git a/interface/web/monitor/lib/lang/se_dataloghistory_list.lng b/interface/web/monitor/lib/lang/se_dataloghistory_list.lng new file mode 100644 index 0000000000..9f9afd6347 --- /dev/null +++ b/interface/web/monitor/lib/lang/se_dataloghistory_list.lng @@ -0,0 +1,8 @@ +<?php +$wb["list_head_txt"] = 'Datalog History'; +$wb["tstamp_txt"] = 'Date'; +$wb["server_id_txt"] = 'Server'; +$wb["dbtable_txt"] = 'DB Table'; +$wb["action_txt"] = 'Action'; +$wb["status_txt"] = 'Status'; +?> diff --git a/interface/web/monitor/lib/lang/se_dataloghistory_undo.lng b/interface/web/monitor/lib/lang/se_dataloghistory_undo.lng new file mode 100644 index 0000000000..0e040a3e77 --- /dev/null +++ b/interface/web/monitor/lib/lang/se_dataloghistory_undo.lng @@ -0,0 +1,7 @@ +<?php +$wb['list_head_txt'] = 'Data Log History Entry'; +$wb['success_txt'] = 'Undo successful'; +$wb['error_txt'] = 'Error during undo: Record does not exist anymore'; +$wb['error_undelete_txt'] = 'Error during undelete: Record with primary id already existing.'; +$wb['btn_cancel_txt'] = 'Back'; +?> diff --git a/interface/web/monitor/lib/lang/se_dataloghistory_view.lng b/interface/web/monitor/lib/lang/se_dataloghistory_view.lng new file mode 100644 index 0000000000..df9ddd286f --- /dev/null +++ b/interface/web/monitor/lib/lang/se_dataloghistory_view.lng @@ -0,0 +1,26 @@ +<?php +$wb['i'] = 'Insert'; +$wb['u'] = 'Update'; +$wb['d'] = 'Delete'; +$wb['list_head_txt'] = 'Data Log History Entry'; +$wb['id_txt'] = 'ID'; +$wb['timestamp_txt'] = 'Timestamp'; +$wb['table_txt'] = 'Table'; +$wb['action_txt'] = 'Action'; +$wb['session_id_txt'] = 'Session ID'; +$wb['fields_txt'] = 'Fields'; +$wb['fields_inserted_txt'] = 'Inserted Fields'; +$wb['fields_updated_txt'] = 'Updated Fields'; +$wb['fields_deleted_txt'] = 'Deleted Fields'; +$wb['no_changes_txt'] = 'No changes (re-sync)'; +$wb['is_diff_txt'] = 'The differences are highlighted'; +$wb['is_diff_inserts_txt'] = 'Insertions'; +$wb['is_diff_deletes_txt'] = 'Deletions'; +$wb['field_txt'] = 'Field'; +$wb['value_txt'] = 'Value'; +$wb['old_txt'] = 'Old'; +$wb['new_txt'] = 'New'; +$wb['btn_cancel_txt'] = 'Back'; +$wb['undo_txt'] = 'Undo action'; +$wb['undo_confirmation_txt'] = 'Do you really want to undo this action?'; +?> diff --git a/interface/web/monitor/lib/lang/sk.lng b/interface/web/monitor/lib/lang/sk.lng index 7697242386..36af834eaf 100644 --- a/interface/web/monitor/lib/lang/sk.lng +++ b/interface/web/monitor/lib/lang/sk.lng @@ -161,4 +161,5 @@ $wb['monitor_database_domain_txt'] = 'Domain'; $wb['Show MongoDB-Log'] = 'Show MongoDB-Log'; $wb['monitor_services_mongodb_txt'] = 'MongoDB-Server:'; $wb['monitor_title_mongodb_txt'] = 'MongoDB Log'; +$wb['Show Data Log History'] = 'Show Data Log History'; ?> diff --git a/interface/web/monitor/lib/lang/sk_dataloghistory_list.lng b/interface/web/monitor/lib/lang/sk_dataloghistory_list.lng new file mode 100644 index 0000000000..9f9afd6347 --- /dev/null +++ b/interface/web/monitor/lib/lang/sk_dataloghistory_list.lng @@ -0,0 +1,8 @@ +<?php +$wb["list_head_txt"] = 'Datalog History'; +$wb["tstamp_txt"] = 'Date'; +$wb["server_id_txt"] = 'Server'; +$wb["dbtable_txt"] = 'DB Table'; +$wb["action_txt"] = 'Action'; +$wb["status_txt"] = 'Status'; +?> diff --git a/interface/web/monitor/lib/lang/sk_dataloghistory_undo.lng b/interface/web/monitor/lib/lang/sk_dataloghistory_undo.lng new file mode 100644 index 0000000000..0e040a3e77 --- /dev/null +++ b/interface/web/monitor/lib/lang/sk_dataloghistory_undo.lng @@ -0,0 +1,7 @@ +<?php +$wb['list_head_txt'] = 'Data Log History Entry'; +$wb['success_txt'] = 'Undo successful'; +$wb['error_txt'] = 'Error during undo: Record does not exist anymore'; +$wb['error_undelete_txt'] = 'Error during undelete: Record with primary id already existing.'; +$wb['btn_cancel_txt'] = 'Back'; +?> diff --git a/interface/web/monitor/lib/lang/sk_dataloghistory_view.lng b/interface/web/monitor/lib/lang/sk_dataloghistory_view.lng new file mode 100644 index 0000000000..df9ddd286f --- /dev/null +++ b/interface/web/monitor/lib/lang/sk_dataloghistory_view.lng @@ -0,0 +1,26 @@ +<?php +$wb['i'] = 'Insert'; +$wb['u'] = 'Update'; +$wb['d'] = 'Delete'; +$wb['list_head_txt'] = 'Data Log History Entry'; +$wb['id_txt'] = 'ID'; +$wb['timestamp_txt'] = 'Timestamp'; +$wb['table_txt'] = 'Table'; +$wb['action_txt'] = 'Action'; +$wb['session_id_txt'] = 'Session ID'; +$wb['fields_txt'] = 'Fields'; +$wb['fields_inserted_txt'] = 'Inserted Fields'; +$wb['fields_updated_txt'] = 'Updated Fields'; +$wb['fields_deleted_txt'] = 'Deleted Fields'; +$wb['no_changes_txt'] = 'No changes (re-sync)'; +$wb['is_diff_txt'] = 'The differences are highlighted'; +$wb['is_diff_inserts_txt'] = 'Insertions'; +$wb['is_diff_deletes_txt'] = 'Deletions'; +$wb['field_txt'] = 'Field'; +$wb['value_txt'] = 'Value'; +$wb['old_txt'] = 'Old'; +$wb['new_txt'] = 'New'; +$wb['btn_cancel_txt'] = 'Back'; +$wb['undo_txt'] = 'Undo action'; +$wb['undo_confirmation_txt'] = 'Do you really want to undo this action?'; +?> diff --git a/interface/web/monitor/lib/lang/tr.lng b/interface/web/monitor/lib/lang/tr.lng index 00beedb1dc..005b4d97e2 100644 --- a/interface/web/monitor/lib/lang/tr.lng +++ b/interface/web/monitor/lib/lang/tr.lng @@ -161,4 +161,5 @@ $wb['monitor_database_domain_txt'] = 'Domain'; $wb['monitor_serverstate_updatesunknown_txt'] = 'System Update: ???'; $wb['monitor_services_mongodb_txt'] = 'MongoDB-Server:'; $wb['monitor_title_mongodb_txt'] = 'MongoDB Log'; +$wb['Show Data Log History'] = 'Show Data Log History'; ?> diff --git a/interface/web/monitor/lib/lang/tr_dataloghistory_list.lng b/interface/web/monitor/lib/lang/tr_dataloghistory_list.lng new file mode 100644 index 0000000000..9f9afd6347 --- /dev/null +++ b/interface/web/monitor/lib/lang/tr_dataloghistory_list.lng @@ -0,0 +1,8 @@ +<?php +$wb["list_head_txt"] = 'Datalog History'; +$wb["tstamp_txt"] = 'Date'; +$wb["server_id_txt"] = 'Server'; +$wb["dbtable_txt"] = 'DB Table'; +$wb["action_txt"] = 'Action'; +$wb["status_txt"] = 'Status'; +?> diff --git a/interface/web/monitor/lib/lang/tr_dataloghistory_undo.lng b/interface/web/monitor/lib/lang/tr_dataloghistory_undo.lng new file mode 100644 index 0000000000..0e040a3e77 --- /dev/null +++ b/interface/web/monitor/lib/lang/tr_dataloghistory_undo.lng @@ -0,0 +1,7 @@ +<?php +$wb['list_head_txt'] = 'Data Log History Entry'; +$wb['success_txt'] = 'Undo successful'; +$wb['error_txt'] = 'Error during undo: Record does not exist anymore'; +$wb['error_undelete_txt'] = 'Error during undelete: Record with primary id already existing.'; +$wb['btn_cancel_txt'] = 'Back'; +?> diff --git a/interface/web/monitor/lib/lang/tr_dataloghistory_view.lng b/interface/web/monitor/lib/lang/tr_dataloghistory_view.lng new file mode 100644 index 0000000000..df9ddd286f --- /dev/null +++ b/interface/web/monitor/lib/lang/tr_dataloghistory_view.lng @@ -0,0 +1,26 @@ +<?php +$wb['i'] = 'Insert'; +$wb['u'] = 'Update'; +$wb['d'] = 'Delete'; +$wb['list_head_txt'] = 'Data Log History Entry'; +$wb['id_txt'] = 'ID'; +$wb['timestamp_txt'] = 'Timestamp'; +$wb['table_txt'] = 'Table'; +$wb['action_txt'] = 'Action'; +$wb['session_id_txt'] = 'Session ID'; +$wb['fields_txt'] = 'Fields'; +$wb['fields_inserted_txt'] = 'Inserted Fields'; +$wb['fields_updated_txt'] = 'Updated Fields'; +$wb['fields_deleted_txt'] = 'Deleted Fields'; +$wb['no_changes_txt'] = 'No changes (re-sync)'; +$wb['is_diff_txt'] = 'The differences are highlighted'; +$wb['is_diff_inserts_txt'] = 'Insertions'; +$wb['is_diff_deletes_txt'] = 'Deletions'; +$wb['field_txt'] = 'Field'; +$wb['value_txt'] = 'Value'; +$wb['old_txt'] = 'Old'; +$wb['new_txt'] = 'New'; +$wb['btn_cancel_txt'] = 'Back'; +$wb['undo_txt'] = 'Undo action'; +$wb['undo_confirmation_txt'] = 'Do you really want to undo this action?'; +?> diff --git a/interface/web/sites/lib/lang/ar_web_vhost_domain.lng b/interface/web/sites/lib/lang/ar_web_vhost_domain.lng index bfaf07f226..f208ab3f36 100644 --- a/interface/web/sites/lib/lang/ar_web_vhost_domain.lng +++ b/interface/web/sites/lib/lang/ar_web_vhost_domain.lng @@ -152,4 +152,5 @@ $wb['https_port_error_regex'] = 'HTTPS Port invalid.'; $wb['enable_pagespeed_txt'] = 'Enable PageSpeed'; $wb['log_retention_txt'] = 'Logfiles retention time'; $wb['log_retention_error_regex'] = 'Retention time in days (allowed values: min. 0 - max. 9999)'; +$wb['limit_web_quota_not_0_txt'] = 'Harddisk Quota cannot be set to 0.'; ?> diff --git a/interface/web/sites/lib/lang/bg_aps.lng b/interface/web/sites/lib/lang/bg_aps.lng index 5313f2d910..6a5f981943 100644 --- a/interface/web/sites/lib/lang/bg_aps.lng +++ b/interface/web/sites/lib/lang/bg_aps.lng @@ -60,4 +60,4 @@ $wb['repeat_password_txt'] = 'Repeat Password'; $wb['password_mismatch_txt'] = 'The passwords do not match.'; $wb['password_match_txt'] = 'The passwords do match.'; $wb['password_strength_txt'] = 'Сила на паролата'; -?> \ No newline at end of file +?> diff --git a/interface/web/sites/lib/lang/bg_web_vhost_domain.lng b/interface/web/sites/lib/lang/bg_web_vhost_domain.lng index 0c01cbfdac..a84d915230 100644 --- a/interface/web/sites/lib/lang/bg_web_vhost_domain.lng +++ b/interface/web/sites/lib/lang/bg_web_vhost_domain.lng @@ -152,4 +152,5 @@ $wb['enable_pagespeed_txt'] = 'Enable PageSpeed'; $wb['log_retention_txt'] = 'Logfiles retention time'; $wb['log_retention_error_regex'] = 'Retention time in days (allowed values: min. 0 - max. 9999)'; $wb['domain_error_acme_invalid'] = 'Domain name acme.invalid not permitted.'; +$wb['limit_web_quota_not_0_txt'] = 'Harddisk Quota cannot be set to 0.'; ?> diff --git a/interface/web/sites/lib/lang/br.lng b/interface/web/sites/lib/lang/br.lng index 3fdd93585e..685ce6ed28 100644 --- a/interface/web/sites/lib/lang/br.lng +++ b/interface/web/sites/lib/lang/br.lng @@ -30,6 +30,6 @@ $wb['Available packages'] = 'Pacotes disponÃveis'; $wb['Installed packages'] = 'Pacotes instalados'; $wb['Update Packagelist'] = 'Atualizar lista de pacotes'; $wb['Subdomain (Vhost)'] = 'SubdomÃnio (vhost)'; -$wb['error_proxy_requires_url'] = 'Tipo de redirecionamento \"proxy\" exige uma url como caminho do redirecionamento.'; +$wb['error_proxy_requires_url'] = 'Tipo de redirecionamento \\"proxy\\" exige uma url como caminho do redirecionamento.'; $wb['Domain'] = 'DomÃnio'; ?> diff --git a/interface/web/sites/lib/lang/br_aps.lng b/interface/web/sites/lib/lang/br_aps.lng index 46cfabfb01..27e7434359 100644 --- a/interface/web/sites/lib/lang/br_aps.lng +++ b/interface/web/sites/lib/lang/br_aps.lng @@ -60,4 +60,4 @@ $wb['repeat_password_txt'] = 'Repetir senha'; $wb['password_mismatch_txt'] = 'A senhas não coincidem.'; $wb['password_match_txt'] = 'A senhas coincidem.'; $wb['password_strength_txt'] = 'Dificuldade da senha'; -?> \ No newline at end of file +?> diff --git a/interface/web/sites/lib/lang/br_cron.lng b/interface/web/sites/lib/lang/br_cron.lng index eab5b9f688..2bbadf6d1b 100644 --- a/interface/web/sites/lib/lang/br_cron.lng +++ b/interface/web/sites/lib/lang/br_cron.lng @@ -19,8 +19,8 @@ $wb['run_wday_error_format'] = 'Formato dos dias da semana é inválido.'; $wb['command_error_format'] = 'Formato de comando é inválido. Somente endereços url http/https são permitidos.'; $wb['unknown_fieldtype_error'] = 'Um tipo desconhecido de campo foi usado.'; $wb['server_id_error_empty'] = 'O ID do servidor está em branco.'; -$wb['limit_cron_url_txt'] = 'Somente url do cron. Por favor, insira uma url iniciando com \"http://\" e um comando do cron.'; +$wb['limit_cron_url_txt'] = 'Somente url do cron. Por favor, insira uma url iniciando com \\"http://\\" e um comando do cron.'; $wb['command_error_empty'] = 'Comando está em branco.'; -$wb['command_hint_txt'] = 'Você poderá usar, por exemplo: \"/var/www/clients/clientX/webY/meu_script.sh\" ou \"http://www.dominio.com.br/path/script.php\" e também a palavra reservada \"[web_root]\" substituÃdo por \"/var/www/clients/clientX/webY/web\".'; +$wb['command_hint_txt'] = 'Você poderá usar, por exemplo: \\"/var/www/clients/clientX/webY/meu_script.sh\\" ou \\"http://www.dominio.com.br/path/script.php\\" e também a palavra reservada \\"[web_root]\\" substituÃdo por \\"/var/www/clients/clientX/webY/web\\".'; $wb['log_output_txt'] = 'SaÃda do Log'; ?> diff --git a/interface/web/sites/lib/lang/br_database.lng b/interface/web/sites/lib/lang/br_database.lng index 57b97693eb..ac916feef1 100644 --- a/interface/web/sites/lib/lang/br_database.lng +++ b/interface/web/sites/lib/lang/br_database.lng @@ -23,7 +23,7 @@ $wb['database_remote_error_ips'] = 'Pelo menos um dos endereços IP informados n $wb['database_name_error_len'] = 'Nome do banco de dados - {db} - é muito longo. 64 caracteres, incluindo o prefixo, é o limite permitido.'; $wb['database_user_error_len'] = 'Nome do usuário do banco de dados \'{user}\' é muito longo. 16 caracteres, incluindo o prefixo, é o limite permitido.'; $wb['parent_domain_id_txt'] = 'Site'; -$wb['database_site_error_empty'] = 'Selecione o \"site\" ao qual o banco de dados pertence.'; +$wb['database_site_error_empty'] = 'Selecione o \\"site\\" ao qual o banco de dados pertence.'; $wb['select_site_txt'] = '- Selecionar site -'; $wb['btn_save_txt'] = 'Salvar'; $wb['btn_cancel_txt'] = 'Cancelar'; diff --git a/interface/web/sites/lib/lang/br_database_user.lng b/interface/web/sites/lib/lang/br_database_user.lng index 518f0296e1..59b9fce627 100644 --- a/interface/web/sites/lib/lang/br_database_user.lng +++ b/interface/web/sites/lib/lang/br_database_user.lng @@ -6,7 +6,7 @@ $wb['client_txt'] = 'Cliente'; $wb['active_txt'] = 'Ativo'; $wb['database_user_error_empty'] = 'Usuário do banco de dados está em branco.'; $wb['database_user_error_unique'] = 'Já existe um usuário do banco de dados com este nome no servidor. Para configurar um nome exclusivo, use como prefixo o domÃnio para o nome do usuário.'; -$wb['database_user_error_regex'] = 'Usuário do banco de dados inválido! O nome do usuário pode conter os seguintes caracteres: \'\"a-z\', \'A-Z\', \'0-9\' e o \'underscore\'. Tamanho: 2 - 64 caracteres.'; +$wb['database_user_error_regex'] = 'Usuário do banco de dados inválido! O nome do usuário pode conter os seguintes caracteres: \'\\"a-z\', \'A-Z\', \'0-9\' e o \'underscore\'. Tamanho: 2 - 64 caracteres.'; $wb['database_user_error_len'] = 'O usuário do banco de dados - {user} - é muito longo. O limite do nome do usuário, incluindo o prefixo, são 16 caracteres.'; $wb['btn_save_txt'] = 'Salvar'; $wb['btn_cancel_txt'] = 'Cancelar'; diff --git a/interface/web/sites/lib/lang/br_ftp_user.lng b/interface/web/sites/lib/lang/br_ftp_user.lng index bb8d99ceb0..3df741ed9e 100644 --- a/interface/web/sites/lib/lang/br_ftp_user.lng +++ b/interface/web/sites/lib/lang/br_ftp_user.lng @@ -25,8 +25,8 @@ $wb['directory_error_empty'] = 'Diretório está em branco.'; $wb['directory_error_notinweb'] = 'O diretório não está dentro do diretório web principal.'; $wb['parent_domain_id_error_empty'] = 'Nenhum site selecionado.'; $wb['quota_size_error_regex'] = 'Cota: insira -1 para ilimitado ou um número > 0'; -$wb['dir_dot_error'] = 'Não é permitido \"..\" no caminho.'; -$wb['dir_slashdot_error'] = 'Não é permitido \"./\" no caminho.'; +$wb['dir_dot_error'] = 'Não é permitido \\"..\\" no caminho.'; +$wb['dir_slashdot_error'] = 'Não é permitido \\"./\\" no caminho.'; $wb['generate_password_txt'] = 'Gerar senha'; $wb['repeat_password_txt'] = 'Repetir senha'; $wb['password_mismatch_txt'] = 'A senhas não coincidem.'; diff --git a/interface/web/sites/lib/lang/br_shell_user.lng b/interface/web/sites/lib/lang/br_shell_user.lng index c92bf5baa4..3cbc911ab3 100644 --- a/interface/web/sites/lib/lang/br_shell_user.lng +++ b/interface/web/sites/lib/lang/br_shell_user.lng @@ -20,8 +20,8 @@ $wb['parent_domain_id_error_empty'] = 'Nenhum site selecionado.'; $wb['puser_txt'] = 'Usuário web'; $wb['pgroup_txt'] = 'Grupo web'; $wb['ssh_rsa_txt'] = 'Chave pública SSH-RSA (para acessos baseados em chave)'; -$wb['dir_dot_error'] = 'Não é permitido \"..\" no caminho.'; -$wb['dir_slashdot_error'] = 'Não é permitido \"./\" no caminho.'; +$wb['dir_dot_error'] = 'Não é permitido \\"..\\" no caminho.'; +$wb['dir_slashdot_error'] = 'Não é permitido \\"./\\" no caminho.'; $wb['generate_password_txt'] = 'Gerar senha'; $wb['repeat_password_txt'] = 'Repetir senha'; $wb['password_mismatch_txt'] = 'A senhas não coincidem.'; diff --git a/interface/web/sites/lib/lang/br_web_aliasdomain.lng b/interface/web/sites/lib/lang/br_web_aliasdomain.lng index 9d4f1951d8..4acadb2c54 100644 --- a/interface/web/sites/lib/lang/br_web_aliasdomain.lng +++ b/interface/web/sites/lib/lang/br_web_aliasdomain.lng @@ -14,7 +14,7 @@ $wb['ssl_bundle_txt'] = 'Pacote'; $wb['ssl_action_txt'] = 'Ação'; $wb['ssl_domain_txt'] = 'DomÃnio'; $wb['server_id_txt'] = 'Servidor'; -$wb['web_folder_error_regex'] = 'Pasta inválida inserida. Por favor, não use barra \"/\".'; +$wb['web_folder_error_regex'] = 'Pasta inválida inserida. Por favor, não use barra \\"/\\".'; $wb['type_txt'] = 'Tipo'; $wb['parent_domain_id_txt'] = 'Site pai'; $wb['redirect_type_txt'] = 'Tipo de redirecionamento'; @@ -62,7 +62,7 @@ $wb['ssl_organisation_error_regex'] = 'Campo \'Empresa\' é inválido. São cara $wb['ssl_organistaion_unit_error_regex'] = 'Campo \'Departamento\' é inválido. São caracteres válidos: \'a-z\', \'0-9\' e \'.,-_\'.'; $wb['ssl_country_error_regex'] = 'Campo \'PaÃs\' é inválido. São caracteres válidos: \'A-Z\'.'; $wb['limit_traffic_quota_free_txt'] = 'Cota máxima de tráfego disponÃvel'; -$wb['redirect_error_regex'] = 'Caminho de redirecionamento é inválido. Exemplos de caminhos válidos: \"/teste/\" ou \"http://www.dominio.com.br/teste/\".'; +$wb['redirect_error_regex'] = 'Caminho de redirecionamento é inválido. Exemplos de caminhos válidos: \\"/teste/\\" ou \\"http://www.dominio.com.br/teste/\\".'; $wb['php_open_basedir_txt'] = 'Diretório open_basedir do PHP'; $wb['traffic_quota_exceeded_txt'] = 'Cota de tráfego excedida'; $wb['ruby_txt'] = 'Ruby'; diff --git a/interface/web/sites/lib/lang/br_web_childdomain.lng b/interface/web/sites/lib/lang/br_web_childdomain.lng index 1c53d16584..ecff0c2ae8 100644 --- a/interface/web/sites/lib/lang/br_web_childdomain.lng +++ b/interface/web/sites/lib/lang/br_web_childdomain.lng @@ -36,18 +36,18 @@ $wb['domain_error_empty'] = 'DomÃnio está em branco.'; $wb['domain_error_unique'] = 'Já existe apelido de domÃnio ou subdomÃnio com este nome.'; $wb['domain_error_regex'] = 'Nome de domÃnio é inválido.'; $wb['host_txt'] = 'Nome do servidor'; -$wb['redirect_error_regex'] = 'Caminho de redirecionamento é inválido. Exemplo de caminho válido: \"/teste/\" ou \"http://www.dominio.com.br/teste/\".'; +$wb['redirect_error_regex'] = 'Caminho de redirecionamento é inválido. Exemplo de caminho válido: \\"/teste/\\" ou \\"http://www.dominio.com.br/teste/\\".'; $wb['no_redirect_txt'] = 'Sem redirecionamento'; $wb['no_flag_txt'] = 'Sem marcas'; $wb['domain_error_wildcard'] = 'Curingas para subdomÃnios não são permitidos.'; $wb['proxy_directives_txt'] = 'Diretivas do proxy'; $wb['available_proxy_directive_snippets_txt'] = 'Diretivas de trechos de código do proxy disponÃveis:'; -$wb['error_proxy_requires_url'] = 'O tipo de redirecionamento \"proxy\" exige uma url no caminho de redirecionamento.'; +$wb['error_proxy_requires_url'] = 'O tipo de redirecionamento \\"proxy\\" exige uma url no caminho de redirecionamento.'; $wb['backup_interval_txt'] = 'Intervalo de backup'; $wb['backup_copies_txt'] = 'Limite de cópias do backup'; $wb['ssl_key_txt'] = 'Chave'; $wb['ssl_domain_txt'] = 'DomÃnio do SSL'; -$wb['web_folder_error_regex'] = 'Pasta inválida informada. Por favor não use uma barra - \"/\".'; +$wb['web_folder_error_regex'] = 'Pasta inválida informada. Por favor não use uma barra - \\"/\\".'; $wb['ipv6_address_txt'] = 'Endereço IPv6'; $wb['errordocs_txt'] = 'Pasta personalizada Error-Documents'; $wb['subdomain_txt'] = 'SubdomÃnio automático'; diff --git a/interface/web/sites/lib/lang/br_web_domain.lng b/interface/web/sites/lib/lang/br_web_domain.lng index f0fdabb75f..662fdb407c 100644 --- a/interface/web/sites/lib/lang/br_web_domain.lng +++ b/interface/web/sites/lib/lang/br_web_domain.lng @@ -55,7 +55,7 @@ $wb['ssl_organisation_error_regex'] = 'Campo \'Empresa\' é inválido. São cara $wb['ssl_organistaion_unit_error_regex'] = 'Campo \'Departamento\' é inválido. São caracteres válidos: \\"a-z\\", \'0-9\' e \'.,-_\'.'; $wb['ssl_country_error_regex'] = 'Campo \'PaÃs\' é inválido. São caracteres válidos: \'A-Z\'.'; $wb['limit_traffic_quota_free_txt'] = 'Cota máxima de tráfego disponÃvel'; -$wb['redirect_error_regex'] = 'Caminho de redirecionamento é inválido. Exemplos de caminhos válidos: \"/teste/\" ou \"http://www.dominio.com.br/teste/\".'; +$wb['redirect_error_regex'] = 'Caminho de redirecionamento é inválido. Exemplos de caminhos válidos: \\"/teste/\\" ou \\"http://www.dominio.com.br/teste/\\".'; $wb['php_open_basedir_txt'] = 'Diretório open_basedir do php'; $wb['traffic_quota_exceeded_txt'] = 'Cota de tráfego excedida'; $wb['backup_interval_txt'] = 'Intervalo de backup'; diff --git a/interface/web/sites/lib/lang/br_web_subdomain.lng b/interface/web/sites/lib/lang/br_web_subdomain.lng index 8abb050438..0ccc574805 100644 --- a/interface/web/sites/lib/lang/br_web_subdomain.lng +++ b/interface/web/sites/lib/lang/br_web_subdomain.lng @@ -36,7 +36,7 @@ $wb['domain_error_empty'] = 'DomÃnio está em branco.'; $wb['domain_error_unique'] = 'Já existe apelido de domÃnio ou subdomÃnio com este nome.'; $wb['domain_error_regex'] = 'Nome do domÃnio é inválido.'; $wb['host_txt'] = 'Host'; -$wb['redirect_error_regex'] = 'Caminho de redirecionamento é inválido. Exemplo de caminho válido: \"/teste/\" ou \"http://www.dominio.com.br/teste/\".'; +$wb['redirect_error_regex'] = 'Caminho de redirecionamento é inválido. Exemplo de caminho válido: \\"/teste/\\" ou \\"http://www.dominio.com.br/teste/\\".'; $wb['no_redirect_txt'] = 'Sem redirecionamento'; $wb['no_flag_txt'] = 'Sem marcas'; $wb['domain_error_wildcard'] = 'Curingas de subdomÃnios não são permitidos.'; diff --git a/interface/web/sites/lib/lang/br_web_vhost_domain.lng b/interface/web/sites/lib/lang/br_web_vhost_domain.lng index 413863f1eb..4c72b1fd88 100644 --- a/interface/web/sites/lib/lang/br_web_vhost_domain.lng +++ b/interface/web/sites/lib/lang/br_web_vhost_domain.lng @@ -56,7 +56,7 @@ $wb['ssl_organisation_error_regex'] = 'Campo \'Empresa\' é inválido. São cara $wb['ssl_organistaion_unit_error_regex'] = 'Campo \'Departamento\' é inválido. São caracteres válidos: \'a-z\', \'0-9\' e \'.,-_\'.'; $wb['ssl_country_error_regex'] = 'Campo \'PaÃs\' é inválido. São caracteres válidos: \'A-Z\'.'; $wb['limit_traffic_quota_free_txt'] = 'Limite da cota de tráfego'; -$wb['redirect_error_regex'] = 'Caminho de redirecionamento é inválido. Exemplos de caminhos válidos: \"/teste\" ou \"http://www.dominio.com.br/teste/\".'; +$wb['redirect_error_regex'] = 'Caminho de redirecionamento é inválido. Exemplos de caminhos válidos: \\"/teste\\" ou \\"http://www.dominio.com.br/teste/\\".'; $wb['php_open_basedir_txt'] = 'Diretório open_basedir do php'; $wb['traffic_quota_exceeded_txt'] = 'Cota de tráfego excedida'; $wb['backup_interval_txt'] = 'Intervalo de backup'; @@ -106,7 +106,7 @@ $wb['generate_password_txt'] = 'Gerar senha'; $wb['repeat_password_txt'] = 'Repetir senha'; $wb['password_mismatch_txt'] = 'A senhas não coincidem.'; $wb['password_match_txt'] = 'A senhas coincidem.'; -$wb['web_folder_error_regex'] = 'Pasta inválida informada. Por favor não insira barra - \"\\".'; +$wb['web_folder_error_regex'] = 'Pasta inválida informada. Por favor não insira barra - \\"\\".'; $wb['domain_error_autosub'] = 'Já existe um subdomÃnio com essas configurações.'; $wb['available_php_directive_snippets_txt'] = 'Diretivas de trechos de código do php disponÃveis:'; $wb['available_apache_directive_snippets_txt'] = 'Diretivas de trechos de código do apache disponÃveis:'; @@ -152,4 +152,5 @@ $wb['enable_pagespeed_txt'] = 'Habilitar PageSpeed'; $wb['log_retention_txt'] = 'Tempo de armazenamenro dos arquivos de log'; $wb['log_retention_error_regex'] = 'Tempo de armazenamento, em dias (valores permitidos: min. 0 - max. 9999)'; $wb['domain_error_acme_invalid'] = 'Domain name acme.invalid not permitted.'; +$wb['limit_web_quota_not_0_txt'] = 'Harddisk Quota cannot be set to 0.'; ?> diff --git a/interface/web/sites/lib/lang/br_web_vhost_subdomain.lng b/interface/web/sites/lib/lang/br_web_vhost_subdomain.lng index 8a0c3e6a1f..fa6ddad484 100644 --- a/interface/web/sites/lib/lang/br_web_vhost_subdomain.lng +++ b/interface/web/sites/lib/lang/br_web_vhost_subdomain.lng @@ -19,7 +19,7 @@ $wb['ssl_domain_txt'] = 'DomÃnio'; $wb['server_id_txt'] = 'Servidor'; $wb['domain_txt'] = 'DomÃnio'; $wb['host_txt'] = 'Hostname'; -$wb['web_folder_error_regex'] = 'Pasta informada é inválida. Por favor, não insira barra - \"/\".'; +$wb['web_folder_error_regex'] = 'Pasta informada é inválida. Por favor, não insira barra - \\"/\\".'; $wb['type_txt'] = 'Tipo'; $wb['redirect_type_txt'] = 'Tipo de redirecionamento'; $wb['redirect_path_txt'] = 'Caminho para redirecionamento'; @@ -60,13 +60,13 @@ $wb['client_group_id_txt'] = 'Cliente'; $wb['stats_password_txt'] = 'Senha para estatÃsticas web'; $wb['allow_override_txt'] = 'Diretiva Apache AllowOverride'; $wb['limit_web_quota_free_txt'] = 'Cota de disco'; -$wb['ssl_state_error_regex'] = 'Campo \'Estado\' é inválido. Caracteres válidos são: \'0-9\' e \".,-_\".'; +$wb['ssl_state_error_regex'] = 'Campo \'Estado\' é inválido. Caracteres válidos são: \'0-9\' e \\".,-_\\".'; $wb['ssl_locality_error_regex'] = 'Campo \'Cidade\' é inválido. Caracteres válidos são: \'a-z\', \'0-9\' e \'.,-_\'.'; $wb['ssl_organisation_error_regex'] = 'Campo \'Empresa\' é inválido. Caracteres válidos são: \'a-z\', \'0-9\' e \'.,-_\'.'; $wb['ssl_organistaion_unit_error_regex'] = 'Campo \'Departamento\' é inválido. Caracteres válidos são: \'a-z\', \'0-9\' e \'.,-_\'.'; $wb['ssl_country_error_regex'] = 'Campo \'PaÃs\' é inválido. Caracteres válidos são: \'A-Z\'.'; $wb['limit_traffic_quota_free_txt'] = 'Cota de tráfego'; -$wb['redirect_error_regex'] = 'Caminho de redirecionamento é inválido. Exemplo de caminho válido: \"/teste/\" ou \"http://www.dominio.com.br/teste/\".'; +$wb['redirect_error_regex'] = 'Caminho de redirecionamento é inválido. Exemplo de caminho válido: \\"/teste/\\" ou \\"http://www.dominio.com.br/teste/\\".'; $wb['php_open_basedir_txt'] = 'Diretório open_basedir do PHP'; $wb['traffic_quota_exceeded_txt'] = 'Cota de tráfego excedida'; $wb['ruby_txt'] = 'Ruby'; @@ -121,9 +121,9 @@ $wb['allowed_rewrite_rule_directives_txt'] = 'Diretivas Permitidas:'; $wb['configuration_error_txt'] = 'ERRO DE CONFIGURAÇÃO'; $wb['variables_txt'] = 'Variáveis'; $wb['backup_excludes_txt'] = 'Diretórios ExcluÃdos'; -$wb['backup_excludes_note_txt'] = '(Separar múltiplos diretórios por vÃrgulas. Exemplo: \"web/cache/*,web/backup\".)'; +$wb['backup_excludes_note_txt'] = '(Separar múltiplos diretórios por vÃrgulas. Exemplo: \\"web/cache/*,web/backup\\".)'; $wb['backup_excludes_error_regex'] = 'Os diretórios excluÃdos contém caracteres inválidos.'; -$wb['subdomain_error_empty'] = 'O campo \"SubdomÃnio\" está em branco ou contém caracteres inválidos.'; +$wb['subdomain_error_empty'] = 'O campo \\"SubdomÃnio\\" está em branco ou contém caracteres inválidos.'; $wb['http_port_txt'] = 'Porta HTTP'; $wb['https_port_txt'] = 'Porta HTTPS'; $wb['http_port_error_regex'] = 'Porta HTTP inválida.'; diff --git a/interface/web/sites/lib/lang/br_webdav_user.lng b/interface/web/sites/lib/lang/br_webdav_user.lng index b135d5e0fa..4347f8ae36 100644 --- a/interface/web/sites/lib/lang/br_webdav_user.lng +++ b/interface/web/sites/lib/lang/br_webdav_user.lng @@ -12,8 +12,8 @@ $wb['username_error_unique'] = 'O nome do usuário deve ser exclusivo.'; $wb['username_error_regex'] = 'O nome do usuário contém caracteres não permitidos.'; $wb['directory_error_empty'] = 'Diretório está em branco.'; $wb['parent_domain_id_error_empty'] = 'Nenhum site selecionado.'; -$wb['dir_dot_error'] = 'Não é permitido \"..\" no caminho.'; -$wb['dir_slashdot_error'] = 'Não é permitido \"./\" no caminho.'; +$wb['dir_dot_error'] = 'Não é permitido \\"..\\" no caminho.'; +$wb['dir_slashdot_error'] = 'Não é permitido \\"./\\" no caminho.'; $wb['generate_password_txt'] = 'Gerar senha'; $wb['repeat_password_txt'] = 'Repetir senha'; $wb['password_mismatch_txt'] = 'A senhas não coincidem.'; diff --git a/interface/web/sites/lib/lang/ca_aps.lng b/interface/web/sites/lib/lang/ca_aps.lng index bbf799bb39..062d6ea589 100644 --- a/interface/web/sites/lib/lang/ca_aps.lng +++ b/interface/web/sites/lib/lang/ca_aps.lng @@ -60,4 +60,4 @@ $wb['repeat_password_txt'] = 'Vérification du mot de passe'; $wb['password_mismatch_txt'] = 'Les mots de passe ne correspondent pas.'; $wb['password_match_txt'] = 'Les mots de passe correspondent.'; $wb['password_strength_txt'] = 'Force du mot de passe'; -?> \ No newline at end of file +?> diff --git a/interface/web/sites/lib/lang/ca_web_vhost_domain.lng b/interface/web/sites/lib/lang/ca_web_vhost_domain.lng index c9cdb68c9a..aae2f46339 100644 --- a/interface/web/sites/lib/lang/ca_web_vhost_domain.lng +++ b/interface/web/sites/lib/lang/ca_web_vhost_domain.lng @@ -152,4 +152,5 @@ $wb['https_port_error_regex'] = 'HTTPS Port invalid.'; $wb['enable_pagespeed_txt'] = 'Enable PageSpeed'; $wb['log_retention_txt'] = 'Logfiles retention time'; $wb['log_retention_error_regex'] = 'Retention time in days (allowed values: min. 0 - max. 9999)'; +$wb['limit_web_quota_not_0_txt'] = 'Harddisk Quota cannot be set to 0.'; ?> diff --git a/interface/web/sites/lib/lang/cz_aps.lng b/interface/web/sites/lib/lang/cz_aps.lng index 36bc6816f4..adf6ccf58e 100644 --- a/interface/web/sites/lib/lang/cz_aps.lng +++ b/interface/web/sites/lib/lang/cz_aps.lng @@ -60,4 +60,4 @@ $wb['repeat_password_txt'] = 'Opakujte heslo'; $wb['password_mismatch_txt'] = 'Hesla se neshodujÃ.'; $wb['password_match_txt'] = 'Hesla se shodujÃ.'; $wb['password_strength_txt'] = 'BezpeÄnost hesla'; -?> \ No newline at end of file +?> 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 9f40aaec68..269b6b5862 100644 --- a/interface/web/sites/lib/lang/cz_web_vhost_domain.lng +++ b/interface/web/sites/lib/lang/cz_web_vhost_domain.lng @@ -152,4 +152,5 @@ $wb['enable_pagespeed_txt'] = 'Enable PageSpeed'; $wb['log_retention_txt'] = 'Logfiles retention time'; $wb['log_retention_error_regex'] = 'Retention time in days (allowed values: min. 0 - max. 9999)'; $wb['domain_error_acme_invalid'] = 'Domain name acme.invalid not permitted.'; +$wb['limit_web_quota_not_0_txt'] = 'Harddisk Quota cannot be set to 0.'; ?> diff --git a/interface/web/sites/lib/lang/de_aps.lng b/interface/web/sites/lib/lang/de_aps.lng index bb986b5c44..6c9ff30eed 100644 --- a/interface/web/sites/lib/lang/de_aps.lng +++ b/interface/web/sites/lib/lang/de_aps.lng @@ -60,4 +60,4 @@ $wb['repeat_password_txt'] = 'Passwort wiederholen'; $wb['password_mismatch_txt'] = 'Die Passwörter stimmen nicht überein.'; $wb['password_match_txt'] = 'Die Passwörter stimmen überein.'; $wb['password_strength_txt'] = 'Passwortkomplexität'; -?> \ No newline at end of file +?> diff --git a/interface/web/sites/lib/lang/dk_web_vhost_domain.lng b/interface/web/sites/lib/lang/dk_web_vhost_domain.lng index c9cdb68c9a..aae2f46339 100644 --- a/interface/web/sites/lib/lang/dk_web_vhost_domain.lng +++ b/interface/web/sites/lib/lang/dk_web_vhost_domain.lng @@ -152,4 +152,5 @@ $wb['https_port_error_regex'] = 'HTTPS Port invalid.'; $wb['enable_pagespeed_txt'] = 'Enable PageSpeed'; $wb['log_retention_txt'] = 'Logfiles retention time'; $wb['log_retention_error_regex'] = 'Retention time in days (allowed values: min. 0 - max. 9999)'; +$wb['limit_web_quota_not_0_txt'] = 'Harddisk Quota cannot be set to 0.'; ?> diff --git a/interface/web/sites/lib/lang/el_web_vhost_domain.lng b/interface/web/sites/lib/lang/el_web_vhost_domain.lng index 1d238b64e9..0ea2c2a796 100644 --- a/interface/web/sites/lib/lang/el_web_vhost_domain.lng +++ b/interface/web/sites/lib/lang/el_web_vhost_domain.lng @@ -152,4 +152,5 @@ $wb['https_port_error_regex'] = 'HTTPS Port invalid.'; $wb['enable_pagespeed_txt'] = 'Enable PageSpeed'; $wb['log_retention_txt'] = 'Logfiles retention time'; $wb['log_retention_error_regex'] = 'Retention time in days (allowed values: min. 0 - max. 9999)'; +$wb['limit_web_quota_not_0_txt'] = 'Harddisk Quota cannot be set to 0.'; ?> diff --git a/interface/web/sites/lib/lang/es_web_vhost_domain.lng b/interface/web/sites/lib/lang/es_web_vhost_domain.lng index 8421966c0e..f98c02db15 100644 --- a/interface/web/sites/lib/lang/es_web_vhost_domain.lng +++ b/interface/web/sites/lib/lang/es_web_vhost_domain.lng @@ -152,4 +152,5 @@ $wb['enable_pagespeed_txt'] = 'Enable PageSpeed'; $wb['log_retention_txt'] = 'Logfiles retention time'; $wb['log_retention_error_regex'] = 'Retention time in days (allowed values: min. 0 - max. 9999)'; $wb['domain_error_acme_invalid'] = 'Domain name acme.invalid not permitted.'; +$wb['limit_web_quota_not_0_txt'] = 'Harddisk Quota cannot be set to 0.'; ?> diff --git a/interface/web/sites/lib/lang/fi_web_vhost_domain.lng b/interface/web/sites/lib/lang/fi_web_vhost_domain.lng index 1a4d753b56..c7c4a14432 100644 --- a/interface/web/sites/lib/lang/fi_web_vhost_domain.lng +++ b/interface/web/sites/lib/lang/fi_web_vhost_domain.lng @@ -152,4 +152,5 @@ $wb['enable_pagespeed_txt'] = 'Enable PageSpeed'; $wb['log_retention_txt'] = 'Logfiles retention time'; $wb['log_retention_error_regex'] = 'Retention time in days (allowed values: min. 0 - max. 9999)'; $wb['domain_error_acme_invalid'] = 'Domain name acme.invalid not permitted.'; +$wb['limit_web_quota_not_0_txt'] = 'Harddisk Quota cannot be set to 0.'; ?> diff --git a/interface/web/sites/lib/lang/fr_web_vhost_domain.lng b/interface/web/sites/lib/lang/fr_web_vhost_domain.lng index ab34cdf35e..931c00a533 100644 --- a/interface/web/sites/lib/lang/fr_web_vhost_domain.lng +++ b/interface/web/sites/lib/lang/fr_web_vhost_domain.lng @@ -152,4 +152,5 @@ $wb['enable_pagespeed_txt'] = 'Enable PageSpeed'; $wb['log_retention_txt'] = 'Logfiles retention time'; $wb['log_retention_error_regex'] = 'Retention time in days (allowed values: min. 0 - max. 9999)'; $wb['domain_error_acme_invalid'] = 'Domain name acme.invalid not permitted.'; +$wb['limit_web_quota_not_0_txt'] = 'Harddisk Quota cannot be set to 0.'; ?> diff --git a/interface/web/sites/lib/lang/hr_web_vhost_domain.lng b/interface/web/sites/lib/lang/hr_web_vhost_domain.lng index 0ef7e93851..7842d770b4 100644 --- a/interface/web/sites/lib/lang/hr_web_vhost_domain.lng +++ b/interface/web/sites/lib/lang/hr_web_vhost_domain.lng @@ -152,4 +152,5 @@ $wb['enable_pagespeed_txt'] = 'Enable PageSpeed'; $wb['log_retention_txt'] = 'Logfiles retention time'; $wb['log_retention_error_regex'] = 'Retention time in days (allowed values: min. 0 - max. 9999)'; $wb['domain_error_acme_invalid'] = 'Domain name acme.invalid not permitted.'; +$wb['limit_web_quota_not_0_txt'] = 'Harddisk Quota cannot be set to 0.'; ?> diff --git a/interface/web/sites/lib/lang/hu_web_vhost_domain.lng b/interface/web/sites/lib/lang/hu_web_vhost_domain.lng index da4391a926..a40a4b62a5 100644 --- a/interface/web/sites/lib/lang/hu_web_vhost_domain.lng +++ b/interface/web/sites/lib/lang/hu_web_vhost_domain.lng @@ -152,4 +152,5 @@ $wb['enable_pagespeed_txt'] = 'Enable PageSpeed'; $wb['log_retention_txt'] = 'Logfiles retention time'; $wb['log_retention_error_regex'] = 'Retention time in days (allowed values: min. 0 - max. 9999)'; $wb['domain_error_acme_invalid'] = 'Domain name acme.invalid not permitted.'; +$wb['limit_web_quota_not_0_txt'] = 'Harddisk Quota cannot be set to 0.'; ?> diff --git a/interface/web/sites/lib/lang/id_web_vhost_domain.lng b/interface/web/sites/lib/lang/id_web_vhost_domain.lng index 6d16061cfe..617e7fe769 100644 --- a/interface/web/sites/lib/lang/id_web_vhost_domain.lng +++ b/interface/web/sites/lib/lang/id_web_vhost_domain.lng @@ -152,4 +152,5 @@ $wb['enable_pagespeed_txt'] = 'Enable PageSpeed'; $wb['log_retention_txt'] = 'Logfiles retention time'; $wb['log_retention_error_regex'] = 'Retention time in days (allowed values: min. 0 - max. 9999)'; $wb['domain_error_acme_invalid'] = 'Domain name acme.invalid not permitted.'; +$wb['limit_web_quota_not_0_txt'] = 'Harddisk Quota cannot be set to 0.'; ?> diff --git a/interface/web/sites/lib/lang/it_web_vhost_domain.lng b/interface/web/sites/lib/lang/it_web_vhost_domain.lng index adb557f390..9fbca551a3 100644 --- a/interface/web/sites/lib/lang/it_web_vhost_domain.lng +++ b/interface/web/sites/lib/lang/it_web_vhost_domain.lng @@ -152,4 +152,5 @@ $wb['https_port_error_regex'] = 'HTTPS Port invalid.'; $wb['enable_pagespeed_txt'] = 'Enable PageSpeed'; $wb['log_retention_txt'] = 'Logfiles retention time'; $wb['log_retention_error_regex'] = 'Retention time in days (allowed values: min. 0 - max. 9999)'; +$wb['limit_web_quota_not_0_txt'] = 'Harddisk Quota cannot be set to 0.'; ?> diff --git a/interface/web/sites/lib/lang/ja_web_vhost_domain.lng b/interface/web/sites/lib/lang/ja_web_vhost_domain.lng index 9dd8cd7aff..0efd971187 100644 --- a/interface/web/sites/lib/lang/ja_web_vhost_domain.lng +++ b/interface/web/sites/lib/lang/ja_web_vhost_domain.lng @@ -152,4 +152,5 @@ $wb['enable_pagespeed_txt'] = 'Enable PageSpeed'; $wb['log_retention_txt'] = 'Logfiles retention time'; $wb['log_retention_error_regex'] = 'Retention time in days (allowed values: min. 0 - max. 9999)'; $wb['domain_error_acme_invalid'] = 'Domain name acme.invalid not permitted.'; +$wb['limit_web_quota_not_0_txt'] = 'Harddisk Quota cannot be set to 0.'; ?> diff --git a/interface/web/sites/lib/lang/nl_web_vhost_domain.lng b/interface/web/sites/lib/lang/nl_web_vhost_domain.lng index 1301001bd1..dd007d549f 100644 --- a/interface/web/sites/lib/lang/nl_web_vhost_domain.lng +++ b/interface/web/sites/lib/lang/nl_web_vhost_domain.lng @@ -152,4 +152,5 @@ $wb['enable_pagespeed_txt'] = 'Enable PageSpeed'; $wb['log_retention_txt'] = 'Logfiles retention time'; $wb['log_retention_error_regex'] = 'Retention time in days (allowed values: min. 0 - max. 9999)'; $wb['domain_error_acme_invalid'] = 'Domain name acme.invalid not permitted.'; +$wb['limit_web_quota_not_0_txt'] = 'Harddisk Quota cannot be set to 0.'; ?> diff --git a/interface/web/sites/lib/lang/pl_web_vhost_domain.lng b/interface/web/sites/lib/lang/pl_web_vhost_domain.lng index e6fd601125..8a426b0a1a 100644 --- a/interface/web/sites/lib/lang/pl_web_vhost_domain.lng +++ b/interface/web/sites/lib/lang/pl_web_vhost_domain.lng @@ -152,4 +152,5 @@ $wb['enable_pagespeed_txt'] = 'Enable PageSpeed'; $wb['log_retention_txt'] = 'Logfiles retention time'; $wb['log_retention_error_regex'] = 'Retention time in days (allowed values: min. 0 - max. 9999)'; $wb['domain_error_acme_invalid'] = 'Domain name acme.invalid not permitted.'; +$wb['limit_web_quota_not_0_txt'] = 'Harddisk Quota cannot be set to 0.'; ?> diff --git a/interface/web/sites/lib/lang/pt_web_vhost_domain.lng b/interface/web/sites/lib/lang/pt_web_vhost_domain.lng index a33ac11fc1..170f2feb04 100644 --- a/interface/web/sites/lib/lang/pt_web_vhost_domain.lng +++ b/interface/web/sites/lib/lang/pt_web_vhost_domain.lng @@ -152,4 +152,5 @@ $wb['enable_pagespeed_txt'] = 'Enable PageSpeed'; $wb['log_retention_txt'] = 'Logfiles retention time'; $wb['log_retention_error_regex'] = 'Retention time in days (allowed values: min. 0 - max. 9999)'; $wb['domain_error_acme_invalid'] = 'Domain name acme.invalid not permitted.'; +$wb['limit_web_quota_not_0_txt'] = 'Harddisk Quota cannot be set to 0.'; ?> diff --git a/interface/web/sites/lib/lang/ro_web_vhost_domain.lng b/interface/web/sites/lib/lang/ro_web_vhost_domain.lng index cb5fc4d82b..046c2c71a6 100644 --- a/interface/web/sites/lib/lang/ro_web_vhost_domain.lng +++ b/interface/web/sites/lib/lang/ro_web_vhost_domain.lng @@ -152,4 +152,5 @@ $wb['https_port_error_regex'] = 'HTTPS Port invalid.'; $wb['enable_pagespeed_txt'] = 'Enable PageSpeed'; $wb['log_retention_txt'] = 'Logfiles retention time'; $wb['log_retention_error_regex'] = 'Retention time in days (allowed values: min. 0 - max. 9999)'; +$wb['limit_web_quota_not_0_txt'] = 'Harddisk Quota cannot be set to 0.'; ?> diff --git a/interface/web/sites/lib/lang/ru.lng b/interface/web/sites/lib/lang/ru.lng index 6316c21d17..dbf2926043 100644 --- a/interface/web/sites/lib/lang/ru.lng +++ b/interface/web/sites/lib/lang/ru.lng @@ -31,5 +31,5 @@ $wb['Available packages'] = 'ДоÑтупные пакеты'; $wb['Installed packages'] = 'УÑтановленные пакеты'; $wb['Update Packagelist'] = 'Обновить ÑпиÑок пакетов'; $wb['Subdomain (Vhost)'] = 'Поддомен (Vhost)'; -$wb['error_proxy_requires_url'] = 'Тип редиректа \"proxy\" требует URL в качеÑтве пути перенаправлениÑ.'; +$wb['error_proxy_requires_url'] = 'Тип редиректа \\"proxy\\" требует URL в качеÑтве пути перенаправлениÑ.'; ?> diff --git a/interface/web/sites/lib/lang/ru_aps.lng b/interface/web/sites/lib/lang/ru_aps.lng index 3dd4ad0a8a..d2225358c1 100644 --- a/interface/web/sites/lib/lang/ru_aps.lng +++ b/interface/web/sites/lib/lang/ru_aps.lng @@ -38,14 +38,14 @@ $wb['error_inv_main_location'] = 'Ð’Ñ‹ указали некорректную $wb['error_license_agreement'] = 'Ð”Ð»Ñ Ð¿Ñ€Ð¾Ð´Ð¾Ð»Ð¶ÐµÐ½Ð¸Ñ Ð½ÑƒÐ¶Ð½Ð¾ принÑÑ‚ÑŒ лицензионное Ñоглашение.'; $wb['error_no_database_pw'] = 'Ð’Ñ‹ предоÑтавили не правильный пароль базы данных.'; $wb['error_short_database_pw'] = 'ПожалуйÑта, выберите более длинный пароль базы данных.'; -$wb['error_no_value_for'] = 'Поле \"%s\" не может быть пуÑтым.'; -$wb['error_short_value_for'] = 'Поле \"%s\" требует более длинного входного значениÑ.'; -$wb['error_long_value_for'] = 'Поле \"%s\"требует более короткого входного значениÑ.'; -$wb['error_inv_value_for'] = 'Ð’Ñ‹ ввели неверное значение Ð´Ð»Ñ Ð¿Ð¾Ð»Ñ \"%s\".'; -$wb['error_inv_email_for'] = 'Ð’Ñ‹ ввели некорректный Ð°Ð´Ñ€ÐµÑ Ñлектронной почты Ð´Ð»Ñ Ð¿Ð¾Ð»Ñ \"%s\".'; -$wb['error_inv_domain_for'] = 'Ð’Ñ‹ ввели некорректный домен Ð´Ð»Ñ Ð¿Ð¾Ð»Ñ \"%s\".'; -$wb['error_inv_integer_for'] = 'Ð’Ñ‹ ввели некорректное чиÑло Ð´Ð»Ñ Ð¿Ð¾Ð»Ñ \"%s\".'; -$wb['error_inv_float_for'] = 'Ð’Ñ‹ ввели некорректное чиÑло Ñ Ð¿Ð»Ð°Ð²Ð°ÑŽÑ‰ÐµÐ¹ точкой Ð´Ð»Ñ Ð¿Ð¾Ð»Ñ \"%s\".'; +$wb['error_no_value_for'] = 'Поле \\"%s\\" не может быть пуÑтым.'; +$wb['error_short_value_for'] = 'Поле \\"%s\\" требует более длинного входного значениÑ.'; +$wb['error_long_value_for'] = 'Поле \\"%s\\"требует более короткого входного значениÑ.'; +$wb['error_inv_value_for'] = 'Ð’Ñ‹ ввели неверное значение Ð´Ð»Ñ Ð¿Ð¾Ð»Ñ \\"%s\\".'; +$wb['error_inv_email_for'] = 'Ð’Ñ‹ ввели некорректный Ð°Ð´Ñ€ÐµÑ Ñлектронной почты Ð´Ð»Ñ Ð¿Ð¾Ð»Ñ \\"%s\\".'; +$wb['error_inv_domain_for'] = 'Ð’Ñ‹ ввели некорректный домен Ð´Ð»Ñ Ð¿Ð¾Ð»Ñ \\"%s\\".'; +$wb['error_inv_integer_for'] = 'Ð’Ñ‹ ввели некорректное чиÑло Ð´Ð»Ñ Ð¿Ð¾Ð»Ñ \\"%s\\".'; +$wb['error_inv_float_for'] = 'Ð’Ñ‹ ввели некорректное чиÑло Ñ Ð¿Ð»Ð°Ð²Ð°ÑŽÑ‰ÐµÐ¹ точкой Ð´Ð»Ñ Ð¿Ð¾Ð»Ñ \\"%s\\".'; $wb['error_used_location'] = 'Путь уÑтановки уже Ñодержит уÑтановочный пакет.'; $wb['installation_task_txt'] = 'Запланирована уÑтановка'; $wb['installation_error_txt'] = 'Ошибка уÑтановки'; diff --git a/interface/web/sites/lib/lang/ru_database.lng b/interface/web/sites/lib/lang/ru_database.lng index b931b715f2..0f5eaf3180 100644 --- a/interface/web/sites/lib/lang/ru_database.lng +++ b/interface/web/sites/lib/lang/ru_database.lng @@ -13,7 +13,7 @@ $wb['database_name_error_unique'] = 'Ð˜Ð¼Ñ Ð±Ð°Ð·Ñ‹ данных уже Ñущ $wb['database_name_error_regex'] = 'Ðеверное Ð¸Ð¼Ñ Ð±Ð°Ð·Ñ‹ данных. Ð˜Ð¼Ñ Ð±Ð°Ð·Ñ‹ данных может Ñодержать только Ñледующие Ñимволы: a-z, A-Z, 0-9 и нижний пробел _. Длина: 2 - 64 Ñимвола.'; $wb['database_user_error_empty'] = 'Логин базы данных пуÑтой'; $wb['database_user_error_unique'] = 'Такой пользователь базы данных уже ÑущеÑтвует. Что бы получить уникальное имÑ, например, Ñложите название Ñайта и ваше имÑ.'; -$wb['database_user_error_regex'] = 'Ðекорректный логин Ð´Ð»Ñ Ð±Ð°Ð·Ñ‹ данных. Логин может Ñодержать только Ñледующие Ñимволы: a-z, A-Z, 0-9 и \"_\". Длина: 2 - 16 Ñимволов.'; +$wb['database_user_error_regex'] = 'Ðекорректный логин Ð´Ð»Ñ Ð±Ð°Ð·Ñ‹ данных. Логин может Ñодержать только Ñледующие Ñимволы: a-z, A-Z, 0-9 и \\"_\\". Длина: 2 - 16 Ñимволов.'; $wb['limit_database_txt'] = 'ДоÑтигнуто макÑимальное количеÑтво БД.'; $wb['database_name_change_txt'] = 'Ð˜Ð¼Ñ Ð±Ð°Ð·Ñ‹ данных не может быть изменено.'; $wb['database_charset_change_txt'] = 'Кодировка базы данных не может быть изменена'; diff --git a/interface/web/sites/lib/lang/ru_database_user.lng b/interface/web/sites/lib/lang/ru_database_user.lng index df927317ca..7de99a11dc 100644 --- a/interface/web/sites/lib/lang/ru_database_user.lng +++ b/interface/web/sites/lib/lang/ru_database_user.lng @@ -6,7 +6,7 @@ $wb['client_txt'] = 'Клиент'; $wb['active_txt'] = 'Ðктивно'; $wb['database_user_error_empty'] = 'Логин базы данных пуÑтой'; $wb['database_user_error_unique'] = 'Такой пользователь базы данных уже ÑущеÑтвует. Что бы получить уникальное имÑ, например, Ñложите название Ñайта и ваше имÑ.'; -$wb['database_user_error_regex'] = 'Ðекорректный логин Ð´Ð»Ñ Ð±Ð°Ð·Ñ‹ данных. Логин может Ñодержать только Ñледующие Ñимволы: a-z, A-Z, 0-9 и \"_\". Длина: 2 - 16 Ñимволов.'; +$wb['database_user_error_regex'] = 'Ðекорректный логин Ð´Ð»Ñ Ð±Ð°Ð·Ñ‹ данных. Логин может Ñодержать только Ñледующие Ñимволы: a-z, A-Z, 0-9 и \\"_\\". Длина: 2 - 16 Ñимволов.'; $wb['database_user_error_len'] = 'Логин Ð´Ð»Ñ Ð±Ð°Ð·Ñ‹ данных - {user} - cлишком длинный. МакÑÐ¸Ð¼Ð°Ð»ÑŒÐ½Ð°Ñ Ð´Ð»Ð¸Ð½Ð° логина - 16 Ñимволов'; $wb['btn_save_txt'] = 'Сохранить'; $wb['btn_cancel_txt'] = 'Отменить'; diff --git a/interface/web/sites/lib/lang/ru_web_childdomain.lng b/interface/web/sites/lib/lang/ru_web_childdomain.lng index 49905e77ea..af71669a47 100644 --- a/interface/web/sites/lib/lang/ru_web_childdomain.lng +++ b/interface/web/sites/lib/lang/ru_web_childdomain.lng @@ -42,7 +42,7 @@ $wb['no_flag_txt'] = 'Ðет флага'; $wb['domain_error_wildcard'] = 'Wildcard поддомены не допуÑкаютÑÑ.'; $wb['proxy_directives_txt'] = 'Директивы прокÑи'; $wb['available_proxy_directive_snippets_txt'] = 'ДоÑтупные заготовки директив Proxy:'; -$wb['error_proxy_requires_url'] = 'Тип редиректа \"proxy\" требует URL в качеÑтве пути перенаправлениÑ.'; +$wb['error_proxy_requires_url'] = 'Тип редиректа \\"proxy\\" требует URL в качеÑтве пути перенаправлениÑ.'; $wb['backup_interval_txt'] = 'Интервал резервного копированиÑ'; $wb['backup_copies_txt'] = 'КоличеÑтво резервных копий'; $wb['ssl_key_txt'] = 'SSL-ключ'; diff --git a/interface/web/sites/lib/lang/ru_web_subdomain.lng b/interface/web/sites/lib/lang/ru_web_subdomain.lng index 46203a1815..376c789430 100644 --- a/interface/web/sites/lib/lang/ru_web_subdomain.lng +++ b/interface/web/sites/lib/lang/ru_web_subdomain.lng @@ -42,7 +42,7 @@ $wb['no_flag_txt'] = 'Ðет флага'; $wb['domain_error_wildcard'] = 'Wildcard-поддомены не допуÑкаютÑÑ.'; $wb['proxy_directives_txt'] = 'Директивы прокÑи'; $wb['available_proxy_directive_snippets_txt'] = 'ДоÑтупные заготовки директив Proxy:'; -$wb['error_proxy_requires_url'] = 'Тип редиректа \"proxy\" требует URL в качеÑтве пути перенаправлениÑ.'; +$wb['error_proxy_requires_url'] = 'Тип редиректа \\"proxy\\" требует URL в качеÑтве пути перенаправлениÑ.'; $wb['http_port_txt'] = 'Порт HTTP'; $wb['https_port_txt'] = 'Порт HTTPS'; $wb['http_port_error_regex'] = 'Ðекорректный порт HTTP.'; diff --git a/interface/web/sites/lib/lang/ru_web_vhost_domain.lng b/interface/web/sites/lib/lang/ru_web_vhost_domain.lng index b8a3b41759..e87af3b654 100644 --- a/interface/web/sites/lib/lang/ru_web_vhost_domain.lng +++ b/interface/web/sites/lib/lang/ru_web_vhost_domain.lng @@ -152,4 +152,5 @@ $wb['enable_pagespeed_txt'] = 'Включить PageSpeed'; $wb['domain_error_acme_invalid'] = 'Domain name acme.invalid not permitted.'; $wb['log_retention_txt'] = 'Logfiles retention time'; $wb['log_retention_error_regex'] = 'Retention time in days (allowed values: min. 0 - max. 9999)'; +$wb['limit_web_quota_not_0_txt'] = 'Harddisk Quota cannot be set to 0.'; ?> diff --git a/interface/web/sites/lib/lang/se_web_vhost_domain.lng b/interface/web/sites/lib/lang/se_web_vhost_domain.lng index 2a67966577..1a2572b950 100644 --- a/interface/web/sites/lib/lang/se_web_vhost_domain.lng +++ b/interface/web/sites/lib/lang/se_web_vhost_domain.lng @@ -152,4 +152,5 @@ $wb['https_port_error_regex'] = 'HTTPS Port invalid.'; $wb['enable_pagespeed_txt'] = 'Enable PageSpeed'; $wb['log_retention_txt'] = 'Logfiles retention time'; $wb['log_retention_error_regex'] = 'Retention time in days (allowed values: min. 0 - max. 9999)'; +$wb['limit_web_quota_not_0_txt'] = 'Harddisk Quota cannot be set to 0.'; ?> diff --git a/interface/web/sites/lib/lang/sk_web_vhost_domain.lng b/interface/web/sites/lib/lang/sk_web_vhost_domain.lng index 2d354ce9dc..17e60da6e6 100644 --- a/interface/web/sites/lib/lang/sk_web_vhost_domain.lng +++ b/interface/web/sites/lib/lang/sk_web_vhost_domain.lng @@ -152,4 +152,5 @@ $wb['enable_pagespeed_txt'] = 'Enable PageSpeed'; $wb['log_retention_txt'] = 'Logfiles retention time'; $wb['log_retention_error_regex'] = 'Retention time in days (allowed values: min. 0 - max. 9999)'; $wb['domain_error_acme_invalid'] = 'Domain name acme.invalid not permitted.'; +$wb['limit_web_quota_not_0_txt'] = 'Harddisk Quota cannot be set to 0.'; ?> diff --git a/interface/web/sites/lib/lang/tr_web_vhost_domain.lng b/interface/web/sites/lib/lang/tr_web_vhost_domain.lng index 8a04a244e6..2e9384fee4 100644 --- a/interface/web/sites/lib/lang/tr_web_vhost_domain.lng +++ b/interface/web/sites/lib/lang/tr_web_vhost_domain.lng @@ -152,4 +152,5 @@ $wb['enable_pagespeed_txt'] = 'Enable PageSpeed'; $wb['log_retention_txt'] = 'Logfiles retention time'; $wb['log_retention_error_regex'] = 'Retention time in days (allowed values: min. 0 - max. 9999)'; $wb['domain_error_acme_invalid'] = 'Domain name acme.invalid not permitted.'; +$wb['limit_web_quota_not_0_txt'] = 'Harddisk Quota cannot be set to 0.'; ?> -- GitLab From de9ac2e8960471375dd1929150ee5d845ca78b36 Mon Sep 17 00:00:00 2001 From: Till Brehm <tbrehm@ispconfig.org> Date: Fri, 5 Jul 2019 19:24:08 +0200 Subject: [PATCH 087/215] Fixed double quoting in language files. --- interface/lib/lang/ar.lng | 2 +- interface/lib/lang/bg.lng | 2 +- interface/lib/lang/ca.lng | 2 +- interface/lib/lang/cz.lng | 2 +- interface/lib/lang/de.lng | 2 +- interface/lib/lang/dk.lng | 2 +- interface/lib/lang/el.lng | 2 +- interface/lib/lang/es.lng | 2 +- interface/lib/lang/fi.lng | 2 +- interface/lib/lang/hr.lng | 2 +- interface/lib/lang/hu.lng | 2 +- interface/lib/lang/id.lng | 2 +- interface/lib/lang/it.lng | 2 +- interface/lib/lang/ja.lng | 2 +- interface/lib/lang/nl.lng | 2 +- interface/lib/lang/pl.lng | 2 +- interface/lib/lang/pt.lng | 2 +- interface/lib/lang/ro.lng | 2 +- interface/lib/lang/ru.lng | 2 +- interface/lib/lang/se.lng | 2 +- interface/lib/lang/sk.lng | 2 +- interface/lib/lang/tr.lng | 2 +- .../web/admin/lib/lang/ar_system_config.lng | 2 +- interface/web/admin/lib/lang/ar_users.lng | 2 +- .../web/admin/lib/lang/bg_system_config.lng | 2 +- interface/web/admin/lib/lang/bg_users.lng | 2 +- .../web/admin/lib/lang/br_system_config.lng | 2 +- interface/web/admin/lib/lang/ca_firewall.lng | 4 ++-- .../web/admin/lib/lang/ca_server_config.lng | 2 +- .../web/admin/lib/lang/ca_system_config.lng | 2 +- interface/web/admin/lib/lang/ca_users.lng | 2 +- .../web/admin/lib/lang/cz_remote_action.lng | 4 ++-- .../web/admin/lib/lang/cz_server_config.lng | 2 +- interface/web/admin/lib/lang/dk_firewall.lng | 4 ++-- .../web/admin/lib/lang/dk_server_config.lng | 2 +- .../web/admin/lib/lang/dk_system_config.lng | 2 +- interface/web/admin/lib/lang/dk_users.lng | 2 +- .../web/admin/lib/lang/el_system_config.lng | 2 +- interface/web/admin/lib/lang/el_users.lng | 2 +- interface/web/admin/lib/lang/es_firewall.lng | 4 ++-- .../web/admin/lib/lang/es_server_config.lng | 2 +- .../web/admin/lib/lang/es_system_config.lng | 4 ++-- .../web/admin/lib/lang/fi_system_config.lng | 2 +- interface/web/admin/lib/lang/fi_users.lng | 2 +- .../web/admin/lib/lang/fr_remote_action.lng | 2 +- .../web/admin/lib/lang/fr_system_config.lng | 2 +- .../web/admin/lib/lang/hr_system_config.lng | 2 +- interface/web/admin/lib/lang/hr_users.lng | 2 +- interface/web/admin/lib/lang/hr_users_list.lng | 2 +- .../web/admin/lib/lang/hu_system_config.lng | 2 +- interface/web/admin/lib/lang/hu_users.lng | 2 +- .../web/admin/lib/lang/id_system_config.lng | 2 +- interface/web/admin/lib/lang/id_users.lng | 2 +- .../web/admin/lib/lang/it_system_config.lng | 2 +- interface/web/admin/lib/lang/it_users.lng | 2 +- .../web/admin/lib/lang/ja_system_config.lng | 2 +- interface/web/admin/lib/lang/ja_users.lng | 2 +- .../web/admin/lib/lang/nl_system_config.lng | 2 +- interface/web/admin/lib/lang/nl_users.lng | 2 +- .../web/admin/lib/lang/pl_system_config.lng | 2 +- .../web/admin/lib/lang/pt_system_config.lng | 2 +- interface/web/admin/lib/lang/pt_users.lng | 2 +- .../web/admin/lib/lang/ro_system_config.lng | 2 +- interface/web/admin/lib/lang/ro_users.lng | 2 +- interface/web/admin/lib/lang/ru_firewall.lng | 4 ++-- .../web/admin/lib/lang/ru_server_config.lng | 2 +- .../web/admin/lib/lang/ru_system_config.lng | 4 ++-- interface/web/admin/lib/lang/ru_users.lng | 2 +- .../web/admin/lib/lang/se_system_config.lng | 2 +- .../web/admin/lib/lang/sk_system_config.lng | 2 +- interface/web/admin/lib/lang/sk_users.lng | 2 +- interface/web/admin/lib/lang/tr_firewall.lng | 4 ++-- .../web/admin/lib/lang/tr_remote_action.lng | 4 ++-- .../web/admin/lib/lang/tr_server_config.lng | 2 +- .../web/admin/lib/lang/tr_system_config.lng | 2 +- interface/web/admin/lib/lang/tr_users.lng | 2 +- interface/web/client/lib/lang/ar_client.lng | 2 +- interface/web/client/lib/lang/ar_reseller.lng | 2 +- interface/web/client/lib/lang/bg_client.lng | 2 +- interface/web/client/lib/lang/bg_reseller.lng | 2 +- interface/web/client/lib/lang/br_client.lng | 2 +- .../web/client/lib/lang/br_client_template.lng | 2 +- interface/web/client/lib/lang/br_reseller.lng | 2 +- interface/web/client/lib/lang/ca_client.lng | 2 +- interface/web/client/lib/lang/ca_reseller.lng | 2 +- interface/web/client/lib/lang/cz_client.lng | 2 +- interface/web/client/lib/lang/cz_reseller.lng | 2 +- interface/web/client/lib/lang/de_reseller.lng | 2 +- interface/web/client/lib/lang/dk_client.lng | 2 +- interface/web/client/lib/lang/dk_reseller.lng | 2 +- interface/web/client/lib/lang/el_client.lng | 2 +- interface/web/client/lib/lang/el_reseller.lng | 2 +- interface/web/client/lib/lang/es_client.lng | 4 ++-- .../web/client/lib/lang/es_client_template.lng | 4 ++-- interface/web/client/lib/lang/es_reseller.lng | 4 ++-- interface/web/client/lib/lang/fi_client.lng | 2 +- interface/web/client/lib/lang/fi_reseller.lng | 2 +- interface/web/client/lib/lang/fr_client.lng | 2 +- interface/web/client/lib/lang/fr_reseller.lng | 2 +- interface/web/client/lib/lang/hr_client.lng | 2 +- interface/web/client/lib/lang/hr_reseller.lng | 2 +- interface/web/client/lib/lang/hu_client.lng | 2 +- interface/web/client/lib/lang/hu_reseller.lng | 2 +- interface/web/client/lib/lang/id_client.lng | 2 +- interface/web/client/lib/lang/id_reseller.lng | 2 +- interface/web/client/lib/lang/it_client.lng | 2 +- interface/web/client/lib/lang/it_reseller.lng | 2 +- interface/web/client/lib/lang/ja_client.lng | 2 +- interface/web/client/lib/lang/ja_reseller.lng | 2 +- interface/web/client/lib/lang/nl_client.lng | 2 +- interface/web/client/lib/lang/nl_reseller.lng | 2 +- interface/web/client/lib/lang/pl_reseller.lng | 2 +- interface/web/client/lib/lang/pt_client.lng | 2 +- interface/web/client/lib/lang/pt_reseller.lng | 2 +- interface/web/client/lib/lang/ro_client.lng | 2 +- interface/web/client/lib/lang/ro_reseller.lng | 2 +- interface/web/client/lib/lang/ru_client.lng | 4 ++-- interface/web/client/lib/lang/ru_reseller.lng | 4 ++-- interface/web/client/lib/lang/se_client.lng | 2 +- interface/web/client/lib/lang/se_reseller.lng | 2 +- interface/web/client/lib/lang/sk_client.lng | 2 +- interface/web/client/lib/lang/sk_reseller.lng | 2 +- interface/web/client/lib/lang/tr_client.lng | 2 +- interface/web/client/lib/lang/tr_reseller.lng | 2 +- .../web/dashboard/lib/lang/es_dashlet_limits.lng | 2 +- interface/web/dns/lib/lang/br_dns_dmarc.lng | 10 +++++----- interface/web/dns/lib/lang/br_dns_tlsa.lng | 4 ++-- interface/web/dns/lib/lang/ru_dns_hinfo.lng | 2 +- .../web/help/lib/lang/br_support_message.lng | 2 +- interface/web/login/lib/lang/ar_login_as.lng | 6 +++--- interface/web/login/lib/lang/bg_login_as.lng | 6 +++--- interface/web/login/lib/lang/br_login_as.lng | 2 +- interface/web/login/lib/lang/ca_login_as.lng | 6 +++--- interface/web/login/lib/lang/dk_login_as.lng | 6 +++--- interface/web/login/lib/lang/el_login_as.lng | 6 +++--- interface/web/login/lib/lang/es_login_as.lng | 6 +++--- interface/web/login/lib/lang/fi_login_as.lng | 6 +++--- interface/web/login/lib/lang/hr_login_as.lng | 6 +++--- interface/web/login/lib/lang/hu_login_as.lng | 6 +++--- interface/web/login/lib/lang/id_login_as.lng | 6 +++--- interface/web/login/lib/lang/it_login_as.lng | 6 +++--- interface/web/login/lib/lang/ja_login_as.lng | 6 +++--- interface/web/login/lib/lang/nl_login_as.lng | 4 ++-- interface/web/login/lib/lang/pt_login_as.lng | 6 +++--- interface/web/login/lib/lang/ro_login_as.lng | 6 +++--- interface/web/login/lib/lang/ru_login_as.lng | 6 +++--- interface/web/login/lib/lang/se_login_as.lng | 6 +++--- interface/web/login/lib/lang/sk_login_as.lng | 6 +++--- interface/web/login/lib/lang/tr_login_as.lng | 6 +++--- interface/web/mail/lib/lang/ar_mail_get.lng | 2 +- interface/web/mail/lib/lang/bg_mail_get.lng | 2 +- interface/web/mail/lib/lang/br_mail_user.lng | 4 ++-- interface/web/mail/lib/lang/ca_mail_get.lng | 2 +- interface/web/mail/lib/lang/cz_mail_get.lng | 2 +- .../web/mail/lib/lang/cz_mail_mailinglist.lng | 2 +- interface/web/mail/lib/lang/dk_mail_get.lng | 2 +- interface/web/mail/lib/lang/el_mail_get.lng | 2 +- interface/web/mail/lib/lang/es.lng | 2 +- .../mail/lib/lang/es_mail_domain_catchall.lng | 4 ++-- .../lib/lang/es_mail_domain_catchall_list.lng | 4 ++-- interface/web/mail/lib/lang/es_mail_get.lng | 2 +- interface/web/mail/lib/lang/fi_mail_get.lng | 2 +- interface/web/mail/lib/lang/fr_mail_get.lng | 2 +- interface/web/mail/lib/lang/hr_mail_get.lng | 2 +- interface/web/mail/lib/lang/hu_mail_get.lng | 2 +- interface/web/mail/lib/lang/id_mail_get.lng | 2 +- interface/web/mail/lib/lang/it_mail_get.lng | 2 +- interface/web/mail/lib/lang/ja_mail_get.lng | 2 +- interface/web/mail/lib/lang/nl_mail_get.lng | 2 +- interface/web/mail/lib/lang/nl_mail_user.lng | 4 ++-- interface/web/mail/lib/lang/pt_mail_get.lng | 2 +- interface/web/mail/lib/lang/ro_mail_get.lng | 2 +- interface/web/mail/lib/lang/ru_mail_get.lng | 2 +- .../web/mail/lib/lang/ru_mail_user_filter.lng | 2 +- interface/web/mail/lib/lang/se_mail_get.lng | 2 +- interface/web/mail/lib/lang/sk_mail_get.lng | 2 +- interface/web/mail/lib/lang/tr_mail_get.lng | 2 +- .../mailuser/lib/lang/ru_mail_user_filter.lng | 2 +- interface/web/monitor/lib/lang/es.lng | 2 +- interface/web/sites/lib/lang/ar.lng | 2 +- interface/web/sites/lib/lang/ar_aps.lng | 16 ++++++++-------- .../web/sites/lib/lang/ar_web_childdomain.lng | 2 +- .../web/sites/lib/lang/ar_web_subdomain.lng | 2 +- interface/web/sites/lib/lang/bg.lng | 2 +- interface/web/sites/lib/lang/bg_aps.lng | 16 ++++++++-------- .../web/sites/lib/lang/bg_web_childdomain.lng | 2 +- .../web/sites/lib/lang/bg_web_subdomain.lng | 2 +- interface/web/sites/lib/lang/br.lng | 2 +- interface/web/sites/lib/lang/br_cron.lng | 4 ++-- interface/web/sites/lib/lang/br_database.lng | 2 +- .../web/sites/lib/lang/br_database_user.lng | 2 +- interface/web/sites/lib/lang/br_ftp_user.lng | 4 ++-- interface/web/sites/lib/lang/br_shell_user.lng | 4 ++-- .../web/sites/lib/lang/br_web_aliasdomain.lng | 4 ++-- .../web/sites/lib/lang/br_web_childdomain.lng | 6 +++--- interface/web/sites/lib/lang/br_web_domain.lng | 6 +++--- .../web/sites/lib/lang/br_web_subdomain.lng | 2 +- .../web/sites/lib/lang/br_web_vhost_domain.lng | 4 ++-- .../sites/lib/lang/br_web_vhost_subdomain.lng | 10 +++++----- interface/web/sites/lib/lang/br_webdav_user.lng | 4 ++-- interface/web/sites/lib/lang/ca.lng | 2 +- interface/web/sites/lib/lang/ca_aps.lng | 16 ++++++++-------- .../web/sites/lib/lang/ca_web_childdomain.lng | 2 +- .../web/sites/lib/lang/ca_web_subdomain.lng | 2 +- interface/web/sites/lib/lang/cz.lng | 2 +- interface/web/sites/lib/lang/cz_aps.lng | 16 ++++++++-------- .../web/sites/lib/lang/cz_web_childdomain.lng | 2 +- .../web/sites/lib/lang/cz_web_subdomain.lng | 2 +- .../web/sites/lib/lang/de_web_childdomain.lng | 2 +- .../web/sites/lib/lang/de_web_subdomain.lng | 2 +- interface/web/sites/lib/lang/dk.lng | 2 +- interface/web/sites/lib/lang/dk_aps.lng | 16 ++++++++-------- .../web/sites/lib/lang/dk_web_childdomain.lng | 2 +- .../web/sites/lib/lang/dk_web_subdomain.lng | 2 +- interface/web/sites/lib/lang/el.lng | 2 +- interface/web/sites/lib/lang/el_aps.lng | 16 ++++++++-------- .../web/sites/lib/lang/el_web_childdomain.lng | 2 +- .../web/sites/lib/lang/el_web_subdomain.lng | 2 +- interface/web/sites/lib/lang/es.lng | 2 +- interface/web/sites/lib/lang/es_aps.lng | 16 ++++++++-------- .../web/sites/lib/lang/es_web_childdomain.lng | 4 ++-- .../web/sites/lib/lang/es_web_subdomain.lng | 2 +- .../web/sites/lib/lang/es_web_vhost_domain.lng | 2 +- interface/web/sites/lib/lang/fi.lng | 2 +- interface/web/sites/lib/lang/fi_aps.lng | 16 ++++++++-------- .../web/sites/lib/lang/fi_web_childdomain.lng | 2 +- .../web/sites/lib/lang/fi_web_subdomain.lng | 2 +- interface/web/sites/lib/lang/fr.lng | 2 +- interface/web/sites/lib/lang/fr_aps.lng | 16 ++++++++-------- .../web/sites/lib/lang/fr_web_childdomain.lng | 2 +- .../web/sites/lib/lang/fr_web_subdomain.lng | 2 +- interface/web/sites/lib/lang/hr.lng | 2 +- interface/web/sites/lib/lang/hr_aps.lng | 16 ++++++++-------- .../web/sites/lib/lang/hr_web_childdomain.lng | 2 +- .../web/sites/lib/lang/hr_web_subdomain.lng | 2 +- interface/web/sites/lib/lang/hu.lng | 2 +- interface/web/sites/lib/lang/hu_aps.lng | 16 ++++++++-------- .../web/sites/lib/lang/hu_web_childdomain.lng | 2 +- .../web/sites/lib/lang/hu_web_subdomain.lng | 2 +- interface/web/sites/lib/lang/id.lng | 2 +- interface/web/sites/lib/lang/id_aps.lng | 16 ++++++++-------- .../web/sites/lib/lang/id_web_childdomain.lng | 2 +- .../web/sites/lib/lang/id_web_subdomain.lng | 2 +- interface/web/sites/lib/lang/it.lng | 2 +- interface/web/sites/lib/lang/it_aps.lng | 16 ++++++++-------- .../web/sites/lib/lang/it_web_childdomain.lng | 2 +- .../web/sites/lib/lang/it_web_subdomain.lng | 2 +- interface/web/sites/lib/lang/ja.lng | 2 +- interface/web/sites/lib/lang/ja_aps.lng | 16 ++++++++-------- .../web/sites/lib/lang/ja_web_childdomain.lng | 2 +- .../web/sites/lib/lang/ja_web_subdomain.lng | 2 +- interface/web/sites/lib/lang/nl.lng | 2 +- interface/web/sites/lib/lang/nl_aps.lng | 16 ++++++++-------- .../web/sites/lib/lang/nl_web_childdomain.lng | 2 +- .../web/sites/lib/lang/nl_web_subdomain.lng | 2 +- interface/web/sites/lib/lang/pl_aps.lng | 16 ++++++++-------- interface/web/sites/lib/lang/pt.lng | 2 +- interface/web/sites/lib/lang/pt_aps.lng | 16 ++++++++-------- .../web/sites/lib/lang/pt_web_childdomain.lng | 2 +- .../web/sites/lib/lang/pt_web_subdomain.lng | 2 +- interface/web/sites/lib/lang/ro.lng | 2 +- interface/web/sites/lib/lang/ro_aps.lng | 16 ++++++++-------- .../web/sites/lib/lang/ro_web_childdomain.lng | 2 +- .../web/sites/lib/lang/ro_web_subdomain.lng | 2 +- interface/web/sites/lib/lang/ru.lng | 2 +- interface/web/sites/lib/lang/ru_aps.lng | 16 ++++++++-------- interface/web/sites/lib/lang/ru_database.lng | 2 +- .../web/sites/lib/lang/ru_database_user.lng | 2 +- .../web/sites/lib/lang/ru_web_childdomain.lng | 2 +- .../web/sites/lib/lang/ru_web_subdomain.lng | 2 +- interface/web/sites/lib/lang/se.lng | 2 +- interface/web/sites/lib/lang/se_aps.lng | 16 ++++++++-------- .../web/sites/lib/lang/se_web_childdomain.lng | 2 +- .../web/sites/lib/lang/se_web_subdomain.lng | 2 +- interface/web/sites/lib/lang/sk.lng | 2 +- interface/web/sites/lib/lang/sk_aps.lng | 16 ++++++++-------- .../web/sites/lib/lang/sk_web_childdomain.lng | 2 +- .../web/sites/lib/lang/sk_web_subdomain.lng | 2 +- interface/web/sites/lib/lang/tr.lng | 2 +- interface/web/sites/lib/lang/tr_aps.lng | 16 ++++++++-------- .../web/sites/lib/lang/tr_web_childdomain.lng | 2 +- .../web/sites/lib/lang/tr_web_subdomain.lng | 2 +- interface/web/vm/lib/lang/dk_openvz_template.lng | 2 +- interface/web/vm/lib/lang/es_openvz_template.lng | 2 +- interface/web/vm/lib/lang/tr_openvz_template.lng | 2 +- 285 files changed, 514 insertions(+), 514 deletions(-) diff --git a/interface/lib/lang/ar.lng b/interface/lib/lang/ar.lng index 25dd920831..c8ee365e4b 100644 --- a/interface/lib/lang/ar.lng +++ b/interface/lib/lang/ar.lng @@ -145,7 +145,7 @@ $wb['strength_2'] = 'Fair'; $wb['strength_3'] = 'Good'; $wb['strength_4'] = 'Strong'; $wb['strength_5'] = 'Very Strong'; -$wb['weak_password_txt'] = 'The chosen password does not match the security guidelines. It has to be at least {chars} chars in length and have a strength of \\"{strength}\\".'; +$wb['weak_password_txt'] = 'The chosen password does not match the security guidelines. It has to be at least {chars} chars in length and have a strength of \"{strength}\".'; $wb['weak_password_length_txt'] = 'The chosen password does not match the security guidelines. It has to be at least {chars} chars in length.'; $wb['security_check1_txt'] = 'Check for security permission:'; $wb['security_check2_txt'] = 'failed.'; diff --git a/interface/lib/lang/bg.lng b/interface/lib/lang/bg.lng index ff1e39fe34..eafc8334d4 100644 --- a/interface/lib/lang/bg.lng +++ b/interface/lib/lang/bg.lng @@ -145,7 +145,7 @@ $wb['strength_2'] = 'Fair'; $wb['strength_3'] = 'Good'; $wb['strength_4'] = 'Strong'; $wb['strength_5'] = 'Very Strong'; -$wb['weak_password_txt'] = 'The chosen password does not match the security guidelines. It has to be at least {chars} chars in length and have a strength of \\"{strength}\\".'; +$wb['weak_password_txt'] = 'The chosen password does not match the security guidelines. It has to be at least {chars} chars in length and have a strength of \"{strength}\".'; $wb['weak_password_length_txt'] = 'The chosen password does not match the security guidelines. It has to be at least {chars} chars in length.'; $wb['security_check1_txt'] = 'Check for security permission:'; $wb['security_check2_txt'] = 'failed.'; diff --git a/interface/lib/lang/ca.lng b/interface/lib/lang/ca.lng index c39cd0db27..03b9e65a0d 100644 --- a/interface/lib/lang/ca.lng +++ b/interface/lib/lang/ca.lng @@ -145,7 +145,7 @@ $wb['strength_2'] = 'Moyen'; $wb['strength_3'] = 'Bon'; $wb['strength_4'] = 'Fort'; $wb['strength_5'] = 'Très fort'; -$wb['weak_password_txt'] = 'Le mot de passe choisi ne rencontre pas les minimas requis : {chars} caractères minimums et une force de \\"{strength}\\".'; +$wb['weak_password_txt'] = 'Le mot de passe choisi ne rencontre pas les minimas requis : {chars} caractères minimums et une force de \"{strength}\".'; $wb['weak_password_length_txt'] = 'Le mot de passe choisi ne rencontre pas les minimas requis : {chars} caractères minimums.'; $wb['security_check1_txt'] = 'Vérifier les permissions de sécurité:'; $wb['security_check2_txt'] = 'Echec'; diff --git a/interface/lib/lang/cz.lng b/interface/lib/lang/cz.lng index 6bd61dd6d9..6d95c1249f 100644 --- a/interface/lib/lang/cz.lng +++ b/interface/lib/lang/cz.lng @@ -145,7 +145,7 @@ $wb['strength_2'] = 'PodprůmÄ›rná'; $wb['strength_3'] = 'Dobrá'; $wb['strength_4'] = 'Silná'; $wb['strength_5'] = 'Velmi silná'; -$wb['weak_password_txt'] = 'Zvolené heslo neodpovÃdá požadavkům zásad pro tvorbu hesel. Heslo musà být alespoň {chars} znaků dlouhé a majÃcà sÃlu \\"{strength}\\".'; +$wb['weak_password_txt'] = 'Zvolené heslo neodpovÃdá požadavkům zásad pro tvorbu hesel. Heslo musà být alespoň {chars} znaků dlouhé a majÃcà sÃlu \"{strength}\".'; $wb['weak_password_length_txt'] = 'Zvolené heslo neodpovÃdá požadavkům zásad pro tvorbu hesel. Heslo musà být alespoň {chars} znaků dlouhé.'; $wb['security_check1_txt'] = 'Check for security permission:'; $wb['security_check2_txt'] = 'failed.'; diff --git a/interface/lib/lang/de.lng b/interface/lib/lang/de.lng index 61551ceeab..6f2e2d00ba 100644 --- a/interface/lib/lang/de.lng +++ b/interface/lib/lang/de.lng @@ -152,7 +152,7 @@ $wb['strength_2'] = 'Mittel'; $wb['strength_3'] = 'Gut'; $wb['strength_4'] = 'Stark'; $wb['strength_5'] = 'Sehr stark'; -$wb['weak_password_txt'] = 'Das gewählte Passwort erfüllt die Sicherheitsanforderungen nicht. Es muss mindestens {chars} Zeichen lang sein und die Stärke \\"{strength}\\" besitzen.'; +$wb['weak_password_txt'] = 'Das gewählte Passwort erfüllt die Sicherheitsanforderungen nicht. Es muss mindestens {chars} Zeichen lang sein und die Stärke \"{strength}\" besitzen.'; $wb['weak_password_length_txt'] = 'Das gewählte Passwort erfüllt die Sicherheitsanforderungen nicht. Es muss mindestens {chars} Zeichen lang sein.'; $wb['security_check1_txt'] = 'Sicherheitsüberprüfung für:'; $wb['security_check2_txt'] = 'fehlgeschlagen.'; diff --git a/interface/lib/lang/dk.lng b/interface/lib/lang/dk.lng index 798d2ccd45..2f7aeb2790 100644 --- a/interface/lib/lang/dk.lng +++ b/interface/lib/lang/dk.lng @@ -146,7 +146,7 @@ $wb['strength_2'] = 'Nogenlunde'; $wb['strength_3'] = 'God'; $wb['strength_4'] = 'Stærk'; $wb['strength_5'] = 'Meget Stærk'; -$wb['weak_password_txt'] = 'Den valgte adgangskode matcher ikke retningslinjerne for sikkerhedsindstillingerne. Det skal være mindst {chars} tegn i længden og have en styrke pÃ¥ \\"{strength}\\".'; +$wb['weak_password_txt'] = 'Den valgte adgangskode matcher ikke retningslinjerne for sikkerhedsindstillingerne. Det skal være mindst {chars} tegn i længden og have en styrke pÃ¥ \"{strength}\".'; $wb['weak_password_length_txt'] = 'Den valgte adgangskode matcher ikke retningslinjerne for sikkerhedsindstillingerne. Det skal være mindst {chars} tegn i længden.'; $wb['security_check1_txt'] = 'Check for sikkerheds tilladelse:'; $wb['security_check2_txt'] = 'mislykkedes.'; diff --git a/interface/lib/lang/el.lng b/interface/lib/lang/el.lng index 382bf4a758..53cd56f175 100644 --- a/interface/lib/lang/el.lng +++ b/interface/lib/lang/el.lng @@ -145,7 +145,7 @@ $wb['strength_2'] = 'Fair'; $wb['strength_3'] = 'Good'; $wb['strength_4'] = 'Strong'; $wb['strength_5'] = 'Very Strong'; -$wb['weak_password_txt'] = 'The chosen password does not match the security guidelines. It has to be at least {chars} chars in length and have a strength of \\"{strength}\\".'; +$wb['weak_password_txt'] = 'The chosen password does not match the security guidelines. It has to be at least {chars} chars in length and have a strength of \"{strength}\".'; $wb['weak_password_length_txt'] = 'The chosen password does not match the security guidelines. It has to be at least {chars} chars in length.'; $wb['security_check1_txt'] = 'Check for security permission:'; $wb['security_check2_txt'] = 'failed.'; diff --git a/interface/lib/lang/es.lng b/interface/lib/lang/es.lng index 3b1bae0b46..8b9bc94ef8 100644 --- a/interface/lib/lang/es.lng +++ b/interface/lib/lang/es.lng @@ -146,7 +146,7 @@ $wb['strength_2'] = 'Aceptable'; $wb['strength_3'] = 'Buena'; $wb['strength_4'] = 'Fuerte'; $wb['strength_5'] = 'Muy fuerte'; -$wb['weak_password_txt'] = 'La contraseña elegida no coincide con las directrices de seguridad. Debe contener al menos {chars} caracteres y tener una fortaleza \\"{strength}\\".'; +$wb['weak_password_txt'] = 'La contraseña elegida no coincide con las directrices de seguridad. Debe contener al menos {chars} caracteres y tener una fortaleza \"{strength}\".'; $wb['weak_password_length_txt'] = 'La contraseña elegida no coincide con las directrices de seguridad. Debe contener al menos {chars} caracteres.'; $wb['security_check1_txt'] = 'Verificar permisos de seguridad:'; $wb['security_check2_txt'] = 'ha fallado.'; diff --git a/interface/lib/lang/fi.lng b/interface/lib/lang/fi.lng index d4c23ca777..0439142c52 100755 --- a/interface/lib/lang/fi.lng +++ b/interface/lib/lang/fi.lng @@ -145,7 +145,7 @@ $wb['strength_2'] = 'Fair'; $wb['strength_3'] = 'Good'; $wb['strength_4'] = 'Strong'; $wb['strength_5'] = 'Very Strong'; -$wb['weak_password_txt'] = 'The chosen password does not match the security guidelines. It has to be at least {chars} chars in length and have a strength of \\"{strength}\\".'; +$wb['weak_password_txt'] = 'The chosen password does not match the security guidelines. It has to be at least {chars} chars in length and have a strength of \"{strength}\".'; $wb['weak_password_length_txt'] = 'The chosen password does not match the security guidelines. It has to be at least {chars} chars in length.'; $wb['security_check1_txt'] = 'Check for security permission:'; $wb['security_check2_txt'] = 'failed.'; diff --git a/interface/lib/lang/hr.lng b/interface/lib/lang/hr.lng index 310371be47..c6a1b74d81 100644 --- a/interface/lib/lang/hr.lng +++ b/interface/lib/lang/hr.lng @@ -145,7 +145,7 @@ $wb['strength_2'] = 'Dobro'; $wb['strength_3'] = 'Bolje'; $wb['strength_4'] = 'Jako'; $wb['strength_5'] = 'OdliÄno'; -$wb['weak_password_txt'] = 'UneÅ¡ena Å¡ifra nije dobra. Mora biti dugaÄka barem {chars} znakova i jaÄine \\"{strength}\\".'; +$wb['weak_password_txt'] = 'UneÅ¡ena Å¡ifra nije dobra. Mora biti dugaÄka barem {chars} znakova i jaÄine \"{strength}\".'; $wb['weak_password_length_txt'] = 'UneÅ¡ena Å¡ifra nije dobra. Mora biti dugaÄka barem {chars} znakova.'; $wb['security_check1_txt'] = 'Provjerite sigurnosne dozvole:'; $wb['security_check2_txt'] = 'greÅ¡ka.'; diff --git a/interface/lib/lang/hu.lng b/interface/lib/lang/hu.lng index dd4cce79b3..1ef741d6a2 100644 --- a/interface/lib/lang/hu.lng +++ b/interface/lib/lang/hu.lng @@ -145,7 +145,7 @@ $wb['strength_2'] = 'Fair'; $wb['strength_3'] = 'Good'; $wb['strength_4'] = 'Strong'; $wb['strength_5'] = 'Very Strong'; -$wb['weak_password_txt'] = 'The chosen password does not match the security guidelines. It has to be at least {chars} chars in length and have a strength of \\"{strength}\\".'; +$wb['weak_password_txt'] = 'The chosen password does not match the security guidelines. It has to be at least {chars} chars in length and have a strength of \"{strength}\".'; $wb['weak_password_length_txt'] = 'The chosen password does not match the security guidelines. It has to be at least {chars} chars in length.'; $wb['security_check1_txt'] = 'Check for security permission:'; $wb['security_check2_txt'] = 'failed.'; diff --git a/interface/lib/lang/id.lng b/interface/lib/lang/id.lng index bd90fd5a1b..6483418b3e 100644 --- a/interface/lib/lang/id.lng +++ b/interface/lib/lang/id.lng @@ -145,7 +145,7 @@ $wb['strength_2'] = 'Fair'; $wb['strength_3'] = 'Good'; $wb['strength_4'] = 'Strong'; $wb['strength_5'] = 'Very Strong'; -$wb['weak_password_txt'] = 'The chosen password does not match the security guidelines. It has to be at least {chars} chars in length and have a strength of \\"{strength}\\".'; +$wb['weak_password_txt'] = 'The chosen password does not match the security guidelines. It has to be at least {chars} chars in length and have a strength of \"{strength}\".'; $wb['weak_password_length_txt'] = 'The chosen password does not match the security guidelines. It has to be at least {chars} chars in length.'; $wb['security_check1_txt'] = 'Check for security permission:'; $wb['security_check2_txt'] = 'failed.'; diff --git a/interface/lib/lang/it.lng b/interface/lib/lang/it.lng index 33d16c3d5f..332cd1ab9f 100644 --- a/interface/lib/lang/it.lng +++ b/interface/lib/lang/it.lng @@ -138,7 +138,7 @@ $wb['strength_2'] = 'Mediocre'; $wb['strength_3'] = 'Buono'; $wb['strength_4'] = 'Forte'; $wb['strength_5'] = 'Molto forte'; -$wb['weak_password_txt'] = 'La password indicata non segue le impostazioni di sicurezza. Deve essere lunga almeno {chars} caratteri ed avere un livello di sicurezza pari a \\"{strength}\\".'; +$wb['weak_password_txt'] = 'La password indicata non segue le impostazioni di sicurezza. Deve essere lunga almeno {chars} caratteri ed avere un livello di sicurezza pari a \"{strength}\".'; $wb['weak_password_length_txt'] = 'La password indicata non segue le impostazioni di sicurezza. Deve essere lunga almeno {chars} caratteri.'; $wb['security_check1_txt'] = 'Verifica permessi di sicurezza:'; $wb['security_check2_txt'] = 'fallito.'; diff --git a/interface/lib/lang/ja.lng b/interface/lib/lang/ja.lng index 2a56e77399..5f8b20add4 100644 --- a/interface/lib/lang/ja.lng +++ b/interface/lib/lang/ja.lng @@ -145,7 +145,7 @@ $wb['strength_2'] = 'Fair'; $wb['strength_3'] = 'Good'; $wb['strength_4'] = 'Strong'; $wb['strength_5'] = 'Very Strong'; -$wb['weak_password_txt'] = 'The chosen password does not match the security guidelines. It has to be at least {chars} chars in length and have a strength of \\"{strength}\\".'; +$wb['weak_password_txt'] = 'The chosen password does not match the security guidelines. It has to be at least {chars} chars in length and have a strength of \"{strength}\".'; $wb['weak_password_length_txt'] = 'The chosen password does not match the security guidelines. It has to be at least {chars} chars in length.'; $wb['security_check1_txt'] = 'Check for security permission:'; $wb['security_check2_txt'] = 'failed.'; diff --git a/interface/lib/lang/nl.lng b/interface/lib/lang/nl.lng index 888f9c0200..561e4cdb76 100644 --- a/interface/lib/lang/nl.lng +++ b/interface/lib/lang/nl.lng @@ -145,7 +145,7 @@ $wb['strength_2'] = 'Fair'; $wb['strength_3'] = 'Good'; $wb['strength_4'] = 'Strong'; $wb['strength_5'] = 'Very Strong'; -$wb['weak_password_txt'] = 'The chosen password does not match the security guidelines. It has to be at least {chars} chars in length and have a strength of \\"{strength}\\".'; +$wb['weak_password_txt'] = 'The chosen password does not match the security guidelines. It has to be at least {chars} chars in length and have a strength of \"{strength}\".'; $wb['weak_password_length_txt'] = 'The chosen password does not match the security guidelines. It has to be at least {chars} chars in length.'; $wb['security_check1_txt'] = 'Check for security permission:'; $wb['security_check2_txt'] = 'failed.'; diff --git a/interface/lib/lang/pl.lng b/interface/lib/lang/pl.lng index b5b62c816d..abbb98ee14 100644 --- a/interface/lib/lang/pl.lng +++ b/interface/lib/lang/pl.lng @@ -145,7 +145,7 @@ $wb['strength_2'] = 'Fair'; $wb['strength_3'] = 'Good'; $wb['strength_4'] = 'Strong'; $wb['strength_5'] = 'Very Strong'; -$wb['weak_password_txt'] = 'The chosen password does not match the security guidelines. It has to be at least {chars} chars in length and have a strength of \\"{strength}\\".'; +$wb['weak_password_txt'] = 'The chosen password does not match the security guidelines. It has to be at least {chars} chars in length and have a strength of \"{strength}\".'; $wb['weak_password_length_txt'] = 'The chosen password does not match the security guidelines. It has to be at least {chars} chars in length.'; $wb['security_check1_txt'] = 'Check for security permission:'; $wb['security_check2_txt'] = 'failed.'; diff --git a/interface/lib/lang/pt.lng b/interface/lib/lang/pt.lng index 7845520a5b..026aff80a8 100644 --- a/interface/lib/lang/pt.lng +++ b/interface/lib/lang/pt.lng @@ -145,7 +145,7 @@ $wb['strength_2'] = 'Fair'; $wb['strength_3'] = 'Good'; $wb['strength_4'] = 'Strong'; $wb['strength_5'] = 'Very Strong'; -$wb['weak_password_txt'] = 'The chosen password does not match the security guidelines. It has to be at least {chars} chars in length and have a strength of \\"{strength}\\".'; +$wb['weak_password_txt'] = 'The chosen password does not match the security guidelines. It has to be at least {chars} chars in length and have a strength of \"{strength}\".'; $wb['weak_password_length_txt'] = 'The chosen password does not match the security guidelines. It has to be at least {chars} chars in length.'; $wb['security_check1_txt'] = 'Check for security permission:'; $wb['security_check2_txt'] = 'failed.'; diff --git a/interface/lib/lang/ro.lng b/interface/lib/lang/ro.lng index 613f2377a1..bfbd725dab 100644 --- a/interface/lib/lang/ro.lng +++ b/interface/lib/lang/ro.lng @@ -145,7 +145,7 @@ $wb['strength_2'] = 'Fair'; $wb['strength_3'] = 'Good'; $wb['strength_4'] = 'Strong'; $wb['strength_5'] = 'Very Strong'; -$wb['weak_password_txt'] = 'The chosen password does not match the security guidelines. It has to be at least {chars} chars in length and have a strength of \\"{strength}\\".'; +$wb['weak_password_txt'] = 'The chosen password does not match the security guidelines. It has to be at least {chars} chars in length and have a strength of \"{strength}\".'; $wb['weak_password_length_txt'] = 'The chosen password does not match the security guidelines. It has to be at least {chars} chars in length.'; $wb['security_check1_txt'] = 'Check for security permission:'; $wb['security_check2_txt'] = 'failed.'; diff --git a/interface/lib/lang/ru.lng b/interface/lib/lang/ru.lng index e5e8ce6278..823ef44c79 100644 --- a/interface/lib/lang/ru.lng +++ b/interface/lib/lang/ru.lng @@ -145,7 +145,7 @@ $wb['strength_2'] = 'Средний'; $wb['strength_3'] = 'Хороший'; $wb['strength_4'] = 'Стойкий'; $wb['strength_5'] = 'Очень Ñтойкий'; -$wb['weak_password_txt'] = 'Выбранный пароль не ÑоответÑтвует требованиÑм безопаÑноÑти. Он должен быть как минимум {chars} Ñимволов в длину и ÑтойкоÑÑ‚ÑŒ \\"{strength}\\".'; +$wb['weak_password_txt'] = 'Выбранный пароль не ÑоответÑтвует требованиÑм безопаÑноÑти. Он должен быть как минимум {chars} Ñимволов в длину и ÑтойкоÑÑ‚ÑŒ \"{strength}\".'; $wb['weak_password_length_txt'] = 'Выбранный пароль не ÑоответÑтвует требованиÑм безопаÑноÑти. Он должен быть как минимум {chars} Ñимволов в длину.'; $wb['security_check1_txt'] = 'Проверка разрешений безопаÑноÑти:'; $wb['security_check2_txt'] = 'не удалоÑÑŒ.'; diff --git a/interface/lib/lang/se.lng b/interface/lib/lang/se.lng index b6767144df..4f67c28024 100644 --- a/interface/lib/lang/se.lng +++ b/interface/lib/lang/se.lng @@ -145,7 +145,7 @@ $wb['strength_2'] = 'SÃ¥där'; $wb['strength_3'] = 'Bra'; $wb['strength_4'] = 'Starkt'; $wb['strength_5'] = 'Väldigt starkt'; -$wb['weak_password_txt'] = 'The chosen password does not match the security guidelines. It has to be at least {chars} chars in length and have a strength of \\"{strength}\\".'; +$wb['weak_password_txt'] = 'The chosen password does not match the security guidelines. It has to be at least {chars} chars in length and have a strength of \"{strength}\".'; $wb['weak_password_length_txt'] = 'The chosen password does not match the security guidelines. It has to be at least {chars} chars in length.'; $wb['security_check1_txt'] = 'Check for security permission:'; $wb['security_check2_txt'] = 'failed.'; diff --git a/interface/lib/lang/sk.lng b/interface/lib/lang/sk.lng index 6b4ef7676f..b647226e34 100644 --- a/interface/lib/lang/sk.lng +++ b/interface/lib/lang/sk.lng @@ -145,7 +145,7 @@ $wb['strength_2'] = 'Fair'; $wb['strength_3'] = 'Good'; $wb['strength_4'] = 'Strong'; $wb['strength_5'] = 'Very Strong'; -$wb['weak_password_txt'] = 'The chosen password does not match the security guidelines. It has to be at least {chars} chars in length and have a strength of \\"{strength}\\".'; +$wb['weak_password_txt'] = 'The chosen password does not match the security guidelines. It has to be at least {chars} chars in length and have a strength of \"{strength}\".'; $wb['weak_password_length_txt'] = 'The chosen password does not match the security guidelines. It has to be at least {chars} chars in length.'; $wb['security_check1_txt'] = 'Check for security permission:'; $wb['security_check2_txt'] = 'failed.'; diff --git a/interface/lib/lang/tr.lng b/interface/lib/lang/tr.lng index 115bc890bb..551fae8d86 100644 --- a/interface/lib/lang/tr.lng +++ b/interface/lib/lang/tr.lng @@ -146,7 +146,7 @@ $wb['strength_2'] = 'Yeterli'; $wb['strength_3'] = 'Ä°yi'; $wb['strength_4'] = 'Güçlü'; $wb['strength_5'] = 'Çok Güçlü'; -$wb['weak_password_txt'] = 'Yazdığınız parola güvenlik ilkesine uygun deÄŸil. Parola en az {chars} karakter uzunluÄŸunda ve \\"{strength}\\" güçlüğünde olmalı.'; +$wb['weak_password_txt'] = 'Yazdığınız parola güvenlik ilkesine uygun deÄŸil. Parola en az {chars} karakter uzunluÄŸunda ve \"{strength}\" güçlüğünde olmalı.'; $wb['weak_password_length_txt'] = 'Yazdığınız parola güvenlik ilkesine uygun deÄŸil. Parola en az {chars} karakter uzunluÄŸunda olmalı.'; $wb['security_check1_txt'] = 'Güvenlik iznini denetle:'; $wb['security_check2_txt'] = 'baÅŸarısız.'; diff --git a/interface/web/admin/lib/lang/ar_system_config.lng b/interface/web/admin/lib/lang/ar_system_config.lng index 0a830014d8..b650929064 100644 --- a/interface/web/admin/lib/lang/ar_system_config.lng +++ b/interface/web/admin/lib/lang/ar_system_config.lng @@ -67,7 +67,7 @@ $wb['customer_no_template_error_regex_txt'] = 'The customer No. template contain $wb['customer_no_start_txt'] = 'Customer No. start value'; $wb['customer_no_counter_txt'] = 'Customer No. counter'; $wb['session_timeout_txt'] = 'Session timeout (minutes)'; -$wb['session_allow_endless_txt'] = 'Enable \\"stay logged in\\"'; +$wb['session_allow_endless_txt'] = 'Enable \"stay logged in\"'; $wb['No'] = 'No'; $wb['min_password_length_txt'] = 'Minimum password length'; $wb['min_password_strength_txt'] = 'Minimum password strength'; diff --git a/interface/web/admin/lib/lang/ar_users.lng b/interface/web/admin/lib/lang/ar_users.lng index dcbc4f4727..9d9923b631 100644 --- a/interface/web/admin/lib/lang/ar_users.lng +++ b/interface/web/admin/lib/lang/ar_users.lng @@ -29,7 +29,7 @@ $wb['generate_password_txt'] = 'Generate Password'; $wb['repeat_password_txt'] = 'Repeat Password'; $wb['password_mismatch_txt'] = 'The passwords do not match.'; $wb['password_match_txt'] = 'The passwords do match.'; -$wb['username_error_collision'] = 'The username may not be web or web plus a number.\\"'; +$wb['username_error_collision'] = 'The username may not be web or web plus a number.\"'; $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'; $wb['no_user_insert'] = 'CP-Users of type -user- get added and updated automatically when you add a client or reseller.'; diff --git a/interface/web/admin/lib/lang/bg_system_config.lng b/interface/web/admin/lib/lang/bg_system_config.lng index 130cb596aa..15d5338704 100644 --- a/interface/web/admin/lib/lang/bg_system_config.lng +++ b/interface/web/admin/lib/lang/bg_system_config.lng @@ -67,7 +67,7 @@ $wb['customer_no_template_error_regex_txt'] = 'The customer No. template contain $wb['customer_no_start_txt'] = 'Customer No. start value'; $wb['customer_no_counter_txt'] = 'Customer No. counter'; $wb['session_timeout_txt'] = 'Session timeout (minutes)'; -$wb['session_allow_endless_txt'] = 'Enable \\"stay logged in\\"'; +$wb['session_allow_endless_txt'] = 'Enable \"stay logged in\"'; $wb['No'] = 'No'; $wb['min_password_length_txt'] = 'Minimum password length'; $wb['min_password_strength_txt'] = 'Minimum password strength'; diff --git a/interface/web/admin/lib/lang/bg_users.lng b/interface/web/admin/lib/lang/bg_users.lng index e8dc631a59..e36d2d9d32 100644 --- a/interface/web/admin/lib/lang/bg_users.lng +++ b/interface/web/admin/lib/lang/bg_users.lng @@ -29,7 +29,7 @@ $wb['generate_password_txt'] = 'Generate Password'; $wb['repeat_password_txt'] = 'Repeat Password'; $wb['password_mismatch_txt'] = 'The passwords do not match.'; $wb['password_match_txt'] = 'The passwords do match.'; -$wb['username_error_collision'] = 'The username may not be web or web plus a number.\\"'; +$wb['username_error_collision'] = 'The username may not be web or web plus a number.\"'; $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'; $wb['no_user_insert'] = 'CP-Users of type -user- get added and updated automatically when you add a client or reseller.'; diff --git a/interface/web/admin/lib/lang/br_system_config.lng b/interface/web/admin/lib/lang/br_system_config.lng index 8688ca53aa..3d8ea38e14 100644 --- a/interface/web/admin/lib/lang/br_system_config.lng +++ b/interface/web/admin/lib/lang/br_system_config.lng @@ -67,7 +67,7 @@ $wb['customer_no_template_error_regex_txt'] = 'O número do gabarito do cliente $wb['customer_no_start_txt'] = 'Valor inicial do código do cliente'; $wb['customer_no_counter_txt'] = 'Contador de código do cliente'; $wb['session_timeout_txt'] = 'Duração da sessão (minutos)'; -$wb['session_allow_endless_txt'] = 'Habilitar \\"Manter-me conectado\\"'; +$wb['session_allow_endless_txt'] = 'Habilitar \"Manter-me conectado\"'; $wb['min_password_length_txt'] = 'Comprimento mÃnimo da senha'; $wb['min_password_strength_txt'] = 'Dificuldade mÃnima da senha'; $wb['company_name_txt'] = 'Nome da empresa no tÃtulo da página'; diff --git a/interface/web/admin/lib/lang/ca_firewall.lng b/interface/web/admin/lib/lang/ca_firewall.lng index 06a51c80cf..0e08215f7a 100644 --- a/interface/web/admin/lib/lang/ca_firewall.lng +++ b/interface/web/admin/lib/lang/ca_firewall.lng @@ -6,6 +6,6 @@ $wb['tcp_port_help_txt'] = 'Separated by comma'; $wb['udp_port_help_txt'] = 'Separated by comma'; $wb['active_txt'] = 'Active'; $wb['firewall_error_unique'] = 'There is already a firewall record for this server.'; -$wb['tcp_ports_error_regex'] = 'Character not allowed in tcp port definition. Allowed characters are numbers, \\":\\" and \\",\\".'; -$wb['udp_ports_error_regex'] = 'Character not allowed in udp port definition. Allowed characters are numbers, \\":\\" and \\",\\".'; +$wb['tcp_ports_error_regex'] = 'Character not allowed in tcp port definition. Allowed characters are numbers, \":\" and \",\".'; +$wb['udp_ports_error_regex'] = 'Character not allowed in udp port definition. Allowed characters are numbers, \":\" and \",\".'; ?> diff --git a/interface/web/admin/lib/lang/ca_server_config.lng b/interface/web/admin/lib/lang/ca_server_config.lng index 815dbd30b5..42fb15c246 100644 --- a/interface/web/admin/lib/lang/ca_server_config.lng +++ b/interface/web/admin/lib/lang/ca_server_config.lng @@ -161,7 +161,7 @@ $wb['do_not_try_rescue_httpd_txt'] = 'Disable HTTPD monitoring'; $wb['do_not_try_rescue_mongodb_txt'] = 'Disable MongoDB monitoring'; $wb['do_not_try_rescue_mysql_txt'] = 'Disable MySQL monitoring'; $wb['do_not_try_rescue_mail_txt'] = 'Disable Email monitoring'; -$wb['rescue_description_txt'] = '<b>Information:</b> If you want to shut down mysql you have to select the \\"Disable MySQL monitor\\" checkbox and then wait 2-3 minutes.<br>If you do not wait 2-3 minutes, rescue will try to restart mysql!'; +$wb['rescue_description_txt'] = '<b>Information:</b> If you want to shut down mysql you have to select the \"Disable MySQL monitor\" checkbox and then wait 2-3 minutes.<br>If you do not wait 2-3 minutes, rescue will try to restart mysql!'; $wb['enable_sni_txt'] = 'Enable SNI'; $wb['set_folder_permissions_on_update_txt'] = 'Set folder permissions on update'; $wb['add_web_users_to_sshusers_group_txt'] = 'Add web users to -sshusers- group'; diff --git a/interface/web/admin/lib/lang/ca_system_config.lng b/interface/web/admin/lib/lang/ca_system_config.lng index cc3c11c6c5..326b3b2750 100644 --- a/interface/web/admin/lib/lang/ca_system_config.lng +++ b/interface/web/admin/lib/lang/ca_system_config.lng @@ -67,7 +67,7 @@ $wb['customer_no_template_error_regex_txt'] = 'The customer No. template contain $wb['customer_no_start_txt'] = 'Customer No. start value'; $wb['customer_no_counter_txt'] = 'Customer No. counter'; $wb['session_timeout_txt'] = 'Session timeout (minutes)'; -$wb['session_allow_endless_txt'] = 'Enable \\"stay logged in\\"'; +$wb['session_allow_endless_txt'] = 'Enable \"stay logged in\"'; $wb['No'] = 'No'; $wb['min_password_length_txt'] = 'Minimum password length'; $wb['min_password_strength_txt'] = 'Minimum password strength'; diff --git a/interface/web/admin/lib/lang/ca_users.lng b/interface/web/admin/lib/lang/ca_users.lng index dcbc4f4727..9d9923b631 100644 --- a/interface/web/admin/lib/lang/ca_users.lng +++ b/interface/web/admin/lib/lang/ca_users.lng @@ -29,7 +29,7 @@ $wb['generate_password_txt'] = 'Generate Password'; $wb['repeat_password_txt'] = 'Repeat Password'; $wb['password_mismatch_txt'] = 'The passwords do not match.'; $wb['password_match_txt'] = 'The passwords do match.'; -$wb['username_error_collision'] = 'The username may not be web or web plus a number.\\"'; +$wb['username_error_collision'] = 'The username may not be web or web plus a number.\"'; $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'; $wb['no_user_insert'] = 'CP-Users of type -user- get added and updated automatically when you add a client or reseller.'; diff --git a/interface/web/admin/lib/lang/cz_remote_action.lng b/interface/web/admin/lib/lang/cz_remote_action.lng index e1908e2d04..68da1c065d 100644 --- a/interface/web/admin/lib/lang/cz_remote_action.lng +++ b/interface/web/admin/lib/lang/cz_remote_action.lng @@ -2,9 +2,9 @@ $wb['select_server_txt'] = 'Zvolit server'; $wb['btn_do_txt'] = 'Provést akci'; $wb['do_osupdate_caption'] = 'Aktualizace operaÄnÃho systému na vzdáleném serveru.'; -$wb['do_osupdate_desc'] = 'Tato akce provede \\"aptitude -y\\" aktualizaci na vybraném serveru.<br><br><strong>POUŽITà TÉTO AKCE NA VLASTNà NEBEZPEČà !</strong>'; +$wb['do_osupdate_desc'] = 'Tato akce provede \"aptitude -y\" aktualizaci na vybraném serveru.<br><br><strong>POUŽITà TÉTO AKCE NA VLASTNà NEBEZPEČà !</strong>'; $wb['do_ispcupdate_caption'] = 'Provedenà ISPConfig 3 - aktualizace na vzdáleném serveru'; -$wb['do_ispcupdate_desc'] = 'Tato akce provede \\"ISPConfig 3\\" aktualizaci na vaÅ¡em vybraném serveru.<br><br><strong>POUŽITà TÉTO AKCE NA VLASTNà NEBEZPEČà !</strong>'; +$wb['do_ispcupdate_desc'] = 'Tato akce provede \"ISPConfig 3\" aktualizaci na vaÅ¡em vybraném serveru.<br><br><strong>POUŽITà TÉTO AKCE NA VLASTNà NEBEZPEČà !</strong>'; $wb['action_scheduled'] = 'Akce je naplánována na provedenÃ'; $wb['select_all_server'] = 'VÅ¡echny servery'; $wb['ispconfig_update_title'] = 'ISPConfig pokyny k aktualizaci'; diff --git a/interface/web/admin/lib/lang/cz_server_config.lng b/interface/web/admin/lib/lang/cz_server_config.lng index ebccd8fce0..40af41289a 100644 --- a/interface/web/admin/lib/lang/cz_server_config.lng +++ b/interface/web/admin/lib/lang/cz_server_config.lng @@ -143,7 +143,7 @@ $wb['php_fpm_socket_dir_error_empty'] = 'PHP-FPM adresář pro socket je prázdn $wb['try_rescue_txt'] = 'Povolit monitorovánà služeb a restartovat pÅ™i selhánÃ'; $wb['do_not_try_rescue_mysql_txt'] = 'Zakázat MySQL monitorovánÃ'; $wb['do_not_try_rescue_mail_txt'] = 'Zakázat E-mail monitorovánÃ'; -$wb['rescue_description_txt'] = '<b>Informace:</b> Pokud chcete napÅ™. vypnout MySQL službu zatrhnÄ›te polÃÄko \\"Zakázat MySQL monitorovánÃ\\" zmÄ›na se provede do 2-3 minut.<br>Pokud nepoÄkáte 2-3 minuty, monitorovánà nastartuje službu MySQL automaticky znovu !'; +$wb['rescue_description_txt'] = '<b>Informace:</b> Pokud chcete napÅ™. vypnout MySQL službu zatrhnÄ›te polÃÄko \"Zakázat MySQL monitorovánÃ\" zmÄ›na se provede do 2-3 minut.<br>Pokud nepoÄkáte 2-3 minuty, monitorovánà nastartuje službu MySQL automaticky znovu !'; $wb['enable_sni_txt'] = 'Aktivovat SNI (Server Name Indication)'; $wb['do_not_try_rescue_httpd_txt'] = 'Zakázat HTTPD monitorovánÃ'; $wb['set_folder_permissions_on_update_txt'] = 'Nastavenà oprávnÄ›nà složky pÅ™i aktualizaci'; diff --git a/interface/web/admin/lib/lang/dk_firewall.lng b/interface/web/admin/lib/lang/dk_firewall.lng index 96608b2830..9a20698384 100644 --- a/interface/web/admin/lib/lang/dk_firewall.lng +++ b/interface/web/admin/lib/lang/dk_firewall.lng @@ -6,6 +6,6 @@ $wb['tcp_port_help_txt'] = 'Adskilt af komma'; $wb['udp_port_help_txt'] = 'Adskilt af komma'; $wb['active_txt'] = 'Aktiv'; $wb['firewall_error_unique'] = 'Der er allerede en firewall post for denne server.'; -$wb['tcp_ports_error_regex'] = 'Tegn ikke tilladt i tcp port definition. Tilladt tegn er tal, \\":\\" og \\",\\".'; -$wb['udp_ports_error_regex'] = 'Tegn ikke tilladt i udp port definition. Tilladt tegn er tal, \\":\\" og \\",\\".'; +$wb['tcp_ports_error_regex'] = 'Tegn ikke tilladt i tcp port definition. Tilladt tegn er tal, \":\" og \",\".'; +$wb['udp_ports_error_regex'] = 'Tegn ikke tilladt i udp port definition. Tilladt tegn er tal, \":\" og \",\".'; ?> diff --git a/interface/web/admin/lib/lang/dk_server_config.lng b/interface/web/admin/lib/lang/dk_server_config.lng index 5bf2be008a..a4e0a12d9f 100644 --- a/interface/web/admin/lib/lang/dk_server_config.lng +++ b/interface/web/admin/lib/lang/dk_server_config.lng @@ -152,7 +152,7 @@ $wb['try_rescue_txt'] = 'Aktiver overvÃ¥gnings service og genstarte ved fejl'; $wb['do_not_try_rescue_httpd_txt'] = 'Deaktiver HTTPD monitoring'; $wb['do_not_try_rescue_mysql_txt'] = 'Deaktiver MySQL monitoring'; $wb['do_not_try_rescue_mail_txt'] = 'Deaktiver E-mail monitoring'; -$wb['rescue_description_txt'] = '<b>Information:</b> Hvis du ønsker nedlukning af mysql skal du vælge \\"Deaktiver MySQL monitor\\" afkrydsningsfeltet og derefter vente 2-3 minutter.<br>Hvis du ikke vente 2-3 minutter, vil redning forsøge at genstarte mysql!'; +$wb['rescue_description_txt'] = '<b>Information:</b> Hvis du ønsker nedlukning af mysql skal du vælge \"Deaktiver MySQL monitor\" afkrydsningsfeltet og derefter vente 2-3 minutter.<br>Hvis du ikke vente 2-3 minutter, vil redning forsøge at genstarte mysql!'; $wb['enable_sni_txt'] = 'Enable SNI'; $wb['set_folder_permissions_on_update_txt'] = 'Indstil mappe tilladelser ved opdatering'; $wb['add_web_users_to_sshusers_group_txt'] = 'Tilføj web-brugere til -sshusers- gruppe'; diff --git a/interface/web/admin/lib/lang/dk_system_config.lng b/interface/web/admin/lib/lang/dk_system_config.lng index 26b0fe7e78..75e55f1eb0 100644 --- a/interface/web/admin/lib/lang/dk_system_config.lng +++ b/interface/web/admin/lib/lang/dk_system_config.lng @@ -64,7 +64,7 @@ $wb['customer_no_template_error_regex_txt'] = 'Kunde Nr. skabelon indeholder ugy $wb['customer_no_start_txt'] = 'Kunde Nr. start værdi'; $wb['customer_no_counter_txt'] = 'Kunde Nr. tæller'; $wb['session_timeout_txt'] = 'Session timeout (minutter)'; -$wb['session_allow_endless_txt'] = 'Aktiver \\"forbliv logget ind\\"'; +$wb['session_allow_endless_txt'] = 'Aktiver \"forbliv logget ind\"'; $wb['No'] = 'No'; $wb['min_password_length_txt'] = 'Minimum adgangskode længde'; $wb['min_password_strength_txt'] = 'Minimum adgangskode styrke'; diff --git a/interface/web/admin/lib/lang/dk_users.lng b/interface/web/admin/lib/lang/dk_users.lng index 2e86ab4ca9..a70cc1dbf1 100644 --- a/interface/web/admin/lib/lang/dk_users.lng +++ b/interface/web/admin/lib/lang/dk_users.lng @@ -29,7 +29,7 @@ $wb['generate_password_txt'] = 'Generer Adgangskode'; $wb['repeat_password_txt'] = 'Gentage Adgangskode'; $wb['password_mismatch_txt'] = 'Adgangskoderne stemmer ikke overens.'; $wb['password_match_txt'] = 'Adgangskoderne stemmer overens.'; -$wb['username_error_collision'] = 'Brugernavn mÃ¥ ikke være web eller web plus et tal.\\"'; +$wb['username_error_collision'] = 'Brugernavn mÃ¥ ikke være web eller web plus et tal.\"'; $wb['client_not_admin_err'] = 'En bruger der hører til en klient kan ikke indstilles til typen: admin'; $wb['lost_password_function_txt'] = 'Forgot password function is available'; $wb['no_user_insert'] = 'CP-Users of type -user- get added and updated automatically when you add a client or reseller.'; diff --git a/interface/web/admin/lib/lang/el_system_config.lng b/interface/web/admin/lib/lang/el_system_config.lng index 640d6f00a9..80ddaca144 100644 --- a/interface/web/admin/lib/lang/el_system_config.lng +++ b/interface/web/admin/lib/lang/el_system_config.lng @@ -67,7 +67,7 @@ $wb['customer_no_template_error_regex_txt'] = 'The customer No. template contain $wb['customer_no_start_txt'] = 'Customer No. start value'; $wb['customer_no_counter_txt'] = 'Customer No. counter'; $wb['session_timeout_txt'] = 'Session timeout (minutes)'; -$wb['session_allow_endless_txt'] = 'Enable \\"stay logged in\\"'; +$wb['session_allow_endless_txt'] = 'Enable \"stay logged in\"'; $wb['No'] = 'No'; $wb['min_password_length_txt'] = 'Minimum password length'; $wb['min_password_strength_txt'] = 'Minimum password strength'; diff --git a/interface/web/admin/lib/lang/el_users.lng b/interface/web/admin/lib/lang/el_users.lng index f0307b95ec..e5ce7a8792 100644 --- a/interface/web/admin/lib/lang/el_users.lng +++ b/interface/web/admin/lib/lang/el_users.lng @@ -29,7 +29,7 @@ $wb['generate_password_txt'] = 'Generate Password'; $wb['repeat_password_txt'] = 'Repeat Password'; $wb['password_mismatch_txt'] = 'The passwords do not match.'; $wb['password_match_txt'] = 'The passwords do match.'; -$wb['username_error_collision'] = 'The username may not be web or web plus a number.\\"'; +$wb['username_error_collision'] = 'The username may not be web or web plus a number.\"'; $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'; $wb['no_user_insert'] = 'CP-Users of type -user- get added and updated automatically when you add a client or reseller.'; diff --git a/interface/web/admin/lib/lang/es_firewall.lng b/interface/web/admin/lib/lang/es_firewall.lng index 81cad3c0aa..db09b57844 100755 --- a/interface/web/admin/lib/lang/es_firewall.lng +++ b/interface/web/admin/lib/lang/es_firewall.lng @@ -4,8 +4,8 @@ $wb['firewall_error_unique'] = 'Ya existe un registro de cortafuegos para este s $wb['server_id_txt'] = 'Servidor'; $wb['tcp_port_help_txt'] = 'Separados por coma'; $wb['tcp_port_txt'] = 'Puertos TCP abiertos'; -$wb['tcp_ports_error_regex'] = 'Caracteres no permitidos en la definición de puertos tcp. Los caracteres permitidos son: números, \\":\\" y \\",\\".'; +$wb['tcp_ports_error_regex'] = 'Caracteres no permitidos en la definición de puertos tcp. Los caracteres permitidos son: números, \":\" y \",\".'; $wb['udp_port_help_txt'] = 'Separados por coma'; $wb['udp_port_txt'] = 'Puertos UDP abiertos'; -$wb['udp_ports_error_regex'] = 'Caracteres no permitidos en la definición de puertos udp. Los caracteres permitidos son: números, \\":\\" y \\",\\".'; +$wb['udp_ports_error_regex'] = 'Caracteres no permitidos en la definición de puertos udp. Los caracteres permitidos son: números, \":\" y \",\".'; ?> diff --git a/interface/web/admin/lib/lang/es_server_config.lng b/interface/web/admin/lib/lang/es_server_config.lng index 95eaf9e8a0..01c9978ae1 100755 --- a/interface/web/admin/lib/lang/es_server_config.lng +++ b/interface/web/admin/lib/lang/es_server_config.lng @@ -228,7 +228,7 @@ $wb['reject_sender_login_mismatch_txt'] = 'Rechazar remitente e inicio de sesió $wb['relayhost_password_txt'] = 'Contraseña del servidor de retransmisión'; $wb['relayhost_txt'] = 'Servidor de retransmisión'; $wb['relayhost_user_txt'] = 'Usuario del servidor de retransmisión'; -$wb['rescue_description_txt'] = '<b>Información:</b> Si desea detener el servicio de MySQL debe seleccionar la casilla \\"Deshabilitar monitorización de MySQL\\" y luego esperar 2-3 minutos.<br>Si no espera 2-3 minutos, el rescatador intentará reiniciar el servicio'; +$wb['rescue_description_txt'] = '<b>Información:</b> Si desea detener el servicio de MySQL debe seleccionar la casilla \"Deshabilitar monitorización de MySQL\" y luego esperar 2-3 minutos.<br>Si no espera 2-3 minutos, el rescatador intentará reiniciar el servicio'; $wb['security_level_txt'] = 'Nivel de seguridad'; $wb['server_type_txt'] = 'Tipo de servidor'; $wb['set_folder_permissions_on_update_txt'] = 'Establecer permisos de carpetas al actualizar'; diff --git a/interface/web/admin/lib/lang/es_system_config.lng b/interface/web/admin/lib/lang/es_system_config.lng index 043c52cfdd..b927ab043f 100755 --- a/interface/web/admin/lib/lang/es_system_config.lng +++ b/interface/web/admin/lib/lang/es_system_config.lng @@ -7,7 +7,7 @@ $wb['available_dashlets_note_txt'] = 'Componentes disponibles:'; $wb['backups_include_into_web_quota_txt'] = 'Incluir archivos de copia de seguridad en la cuota web.'; $wb['client_dashlets_left_txt'] = 'Componentes del cliente a la izquierda'; $wb['client_dashlets_right_txt'] = 'Componentes del cliente a la derecha'; -$wb['client_username_web_check_disabled_txt'] = 'Desactivar la comprobación de la palabra \\"web\\" en los nombres de clientes.'; +$wb['client_username_web_check_disabled_txt'] = 'Desactivar la comprobación de la palabra \"web\" en los nombres de clientes.'; $wb['company_name_txt'] = 'Nombre de la compañÃa para el tÃtulo de la página'; $wb['custom_login_link_txt'] = 'Enlace personalizado para la página de Inicio de Sesión'; $wb['custom_login_text_txt'] = 'Texto personalizado para la página de Inicio de Sesión'; @@ -51,7 +51,7 @@ $wb['phpmyadmin_url_txt'] = 'Enlace a phpMyAdmin'; $wb['reseller_can_use_options_txt'] = 'El revendedor puede utilizar la pestaña opciones para los sitios webs'; $wb['reseller_dashlets_left_txt'] = 'Componentes de revendedores a la izquierda'; $wb['reseller_dashlets_right_txt'] = 'Componentes de revendedores a la derecha'; -$wb['session_allow_endless_txt'] = 'Habilitar \\"mantenerme conectado\\"'; +$wb['session_allow_endless_txt'] = 'Habilitar \"mantenerme conectado\"'; $wb['session_timeout_txt'] = 'Tiempo lÃmite de sesión (minutos)'; $wb['shelluser_prefix_error_regex'] = 'Carácter no permitido en el prefijo de usuario del shell.'; $wb['shelluser_prefix_txt'] = 'Prefijo del usuario del Shell'; diff --git a/interface/web/admin/lib/lang/fi_system_config.lng b/interface/web/admin/lib/lang/fi_system_config.lng index c0972c49d8..72e7aaa2e6 100644 --- a/interface/web/admin/lib/lang/fi_system_config.lng +++ b/interface/web/admin/lib/lang/fi_system_config.lng @@ -67,7 +67,7 @@ $wb['customer_no_template_error_regex_txt'] = 'The customer No. template contain $wb['customer_no_start_txt'] = 'Customer No. start value'; $wb['customer_no_counter_txt'] = 'Customer No. counter'; $wb['session_timeout_txt'] = 'Session timeout (minutes)'; -$wb['session_allow_endless_txt'] = 'Enable \\"stay logged in\\"'; +$wb['session_allow_endless_txt'] = 'Enable \"stay logged in\"'; $wb['No'] = 'No'; $wb['min_password_length_txt'] = 'Minimum password length'; $wb['min_password_strength_txt'] = 'Minimum password strength'; diff --git a/interface/web/admin/lib/lang/fi_users.lng b/interface/web/admin/lib/lang/fi_users.lng index 199601f520..4fde01b87c 100755 --- a/interface/web/admin/lib/lang/fi_users.lng +++ b/interface/web/admin/lib/lang/fi_users.lng @@ -29,7 +29,7 @@ $wb['generate_password_txt'] = 'Generate Password'; $wb['repeat_password_txt'] = 'Repeat Password'; $wb['password_mismatch_txt'] = 'The passwords do not match.'; $wb['password_match_txt'] = 'The passwords do match.'; -$wb['username_error_collision'] = 'The username may not be web or web plus a number.\\"'; +$wb['username_error_collision'] = 'The username may not be web or web plus a number.\"'; $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'; $wb['no_user_insert'] = 'CP-Users of type -user- get added and updated automatically when you add a client or reseller.'; diff --git a/interface/web/admin/lib/lang/fr_remote_action.lng b/interface/web/admin/lib/lang/fr_remote_action.lng index bb3443b40a..0072271d69 100644 --- a/interface/web/admin/lib/lang/fr_remote_action.lng +++ b/interface/web/admin/lib/lang/fr_remote_action.lng @@ -8,5 +8,5 @@ $wb['do_ispcupdate_desc'] = 'Cette action met à jour ISPConfig3 sur le serveur $wb['action_scheduled'] = 'L’action est marquée pour exécution'; $wb['select_all_server'] = 'Tout serveur'; $wb['ispconfig_update_title'] = 'ISPConfig update instructions'; -$wb['ispconfig_update_text'] = 'Login as root user on the shell of your server and execute the command<br /><br /> <strong>ispconfig_update.sh</strong><br /><br />to start the ISPConfig update.<br /><br /><a href=\\"http://www.faqforge.com/linux/controlpanels/ispconfig3/how-to-update-ispconfig-3/\\" target=\\"_blank\\">Click here for detailed update instructions</a>'; +$wb['ispconfig_update_text'] = 'Login as root user on the shell of your server and execute the command<br /><br /> <strong>ispconfig_update.sh</strong><br /><br />to start the ISPConfig update.<br /><br /><a href=\"http://www.faqforge.com/linux/controlpanels/ispconfig3/how-to-update-ispconfig-3/\" target=\"_blank\">Click here for detailed update instructions</a>'; ?> diff --git a/interface/web/admin/lib/lang/fr_system_config.lng b/interface/web/admin/lib/lang/fr_system_config.lng index 18f0dbbed4..df90e03011 100644 --- a/interface/web/admin/lib/lang/fr_system_config.lng +++ b/interface/web/admin/lib/lang/fr_system_config.lng @@ -64,7 +64,7 @@ $wb['customer_no_template_error_regex_txt'] = 'The customer No. template contain $wb['customer_no_start_txt'] = 'Customer No. start value'; $wb['customer_no_counter_txt'] = 'Customer No. counter'; $wb['session_timeout_txt'] = 'Session timeout (minutes)'; -$wb['session_allow_endless_txt'] = 'Enable \\"stay logged in\\"'; +$wb['session_allow_endless_txt'] = 'Enable \"stay logged in\"'; $wb['No'] = 'No'; $wb['min_password_length_txt'] = 'Minimum password length'; $wb['min_password_strength_txt'] = 'Minimum password strength'; diff --git a/interface/web/admin/lib/lang/hr_system_config.lng b/interface/web/admin/lib/lang/hr_system_config.lng index a7735647b1..a8b44528c6 100644 --- a/interface/web/admin/lib/lang/hr_system_config.lng +++ b/interface/web/admin/lib/lang/hr_system_config.lng @@ -67,7 +67,7 @@ $wb['customer_no_template_error_regex_txt'] = 'The customer No. template contain $wb['customer_no_start_txt'] = 'Customer No. start value'; $wb['customer_no_counter_txt'] = 'Customer No. counter'; $wb['session_timeout_txt'] = 'Session timeout (minutes)'; -$wb['session_allow_endless_txt'] = 'Enable \\"stay logged in\\"'; +$wb['session_allow_endless_txt'] = 'Enable \"stay logged in\"'; $wb['No'] = 'No'; $wb['min_password_length_txt'] = 'Minimum password length'; $wb['min_password_strength_txt'] = 'Minimum password strength'; diff --git a/interface/web/admin/lib/lang/hr_users.lng b/interface/web/admin/lib/lang/hr_users.lng index 7be3f968f2..52f0bdff34 100644 --- a/interface/web/admin/lib/lang/hr_users.lng +++ b/interface/web/admin/lib/lang/hr_users.lng @@ -29,7 +29,7 @@ $wb['generate_password_txt'] = 'Generiraj Å¡ifru'; $wb['repeat_password_txt'] = 'Ponovi Å¡ifru'; $wb['password_mismatch_txt'] = 'Å ifre nisu identiÄne.'; $wb['password_match_txt'] = 'Å ifre su identiÄne.'; -$wb['username_error_collision'] = 'KorisniÄko ime ne može biti web ili web sa brojem.\\"'; +$wb['username_error_collision'] = 'KorisniÄko ime ne može biti web ili web sa brojem.\"'; $wb['client_not_admin_err'] = 'Korisnik koji je u grupi klijenti ne može biti admin'; $wb['lost_password_function_txt'] = 'Forgot password function is available'; $wb['no_user_insert'] = 'CP-Users of type -user- get added and updated automatically when you add a client or reseller.'; diff --git a/interface/web/admin/lib/lang/hr_users_list.lng b/interface/web/admin/lib/lang/hr_users_list.lng index c102e5f7f5..7725ce2b96 100644 --- a/interface/web/admin/lib/lang/hr_users_list.lng +++ b/interface/web/admin/lib/lang/hr_users_list.lng @@ -4,6 +4,6 @@ $wb['username_txt'] = 'KorisniÄko ime'; $wb['client_id_txt'] = 'Client ID'; $wb['active_txt'] = 'Active'; $wb['add_new_record_txt'] = 'Dodaj klijenta'; -$wb['warning_txt'] = '<b>UPOZORENJE:</b> Ovdje nemojte mijenjati podatke klijenta. Koristite \\"Klijent\\" i \\"PreprodavaÄ\\" postavke u Klijent modulu. Mijenjanjem postavki klijenata ili grupa može doći do gubitka podataka!'; +$wb['warning_txt'] = '<b>UPOZORENJE:</b> Ovdje nemojte mijenjati podatke klijenta. Koristite \"Klijent\" i \"PreprodavaÄ\" postavke u Klijent modulu. Mijenjanjem postavki klijenata ili grupa može doći do gubitka podataka!'; $wb['groups_txt'] = 'Groups'; ?> diff --git a/interface/web/admin/lib/lang/hu_system_config.lng b/interface/web/admin/lib/lang/hu_system_config.lng index cee497fe19..e983379e3f 100644 --- a/interface/web/admin/lib/lang/hu_system_config.lng +++ b/interface/web/admin/lib/lang/hu_system_config.lng @@ -67,7 +67,7 @@ $wb['customer_no_template_error_regex_txt'] = 'The customer No. template contain $wb['customer_no_start_txt'] = 'Customer No. start value'; $wb['customer_no_counter_txt'] = 'Customer No. counter'; $wb['session_timeout_txt'] = 'Session timeout (minutes)'; -$wb['session_allow_endless_txt'] = 'Enable \\"stay logged in\\"'; +$wb['session_allow_endless_txt'] = 'Enable \"stay logged in\"'; $wb['No'] = 'No'; $wb['min_password_length_txt'] = 'Minimum password length'; $wb['min_password_strength_txt'] = 'Minimum password strength'; diff --git a/interface/web/admin/lib/lang/hu_users.lng b/interface/web/admin/lib/lang/hu_users.lng index e2cf25fb79..05f3554dfd 100644 --- a/interface/web/admin/lib/lang/hu_users.lng +++ b/interface/web/admin/lib/lang/hu_users.lng @@ -29,7 +29,7 @@ $wb['generate_password_txt'] = 'Generate Password'; $wb['repeat_password_txt'] = 'Repeat Password'; $wb['password_mismatch_txt'] = 'The passwords do not match.'; $wb['password_match_txt'] = 'The passwords do match.'; -$wb['username_error_collision'] = 'The username may not be web or web plus a number.\\"'; +$wb['username_error_collision'] = 'The username may not be web or web plus a number.\"'; $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'; $wb['no_user_insert'] = 'CP-Users of type -user- get added and updated automatically when you add a client or reseller.'; diff --git a/interface/web/admin/lib/lang/id_system_config.lng b/interface/web/admin/lib/lang/id_system_config.lng index 344185b84d..41dd67fbac 100644 --- a/interface/web/admin/lib/lang/id_system_config.lng +++ b/interface/web/admin/lib/lang/id_system_config.lng @@ -67,7 +67,7 @@ $wb['customer_no_template_error_regex_txt'] = 'The customer No. template contain $wb['customer_no_start_txt'] = 'Customer No. start value'; $wb['customer_no_counter_txt'] = 'Customer No. counter'; $wb['session_timeout_txt'] = 'Session timeout (minutes)'; -$wb['session_allow_endless_txt'] = 'Enable \\"stay logged in\\"'; +$wb['session_allow_endless_txt'] = 'Enable \"stay logged in\"'; $wb['No'] = 'No'; $wb['min_password_length_txt'] = 'Minimum password length'; $wb['min_password_strength_txt'] = 'Minimum password strength'; diff --git a/interface/web/admin/lib/lang/id_users.lng b/interface/web/admin/lib/lang/id_users.lng index f9e961192c..f5ae7efea5 100644 --- a/interface/web/admin/lib/lang/id_users.lng +++ b/interface/web/admin/lib/lang/id_users.lng @@ -29,7 +29,7 @@ $wb['generate_password_txt'] = 'Generate Password'; $wb['repeat_password_txt'] = 'Repeat Password'; $wb['password_mismatch_txt'] = 'The passwords do not match.'; $wb['password_match_txt'] = 'The passwords do match.'; -$wb['username_error_collision'] = 'The username may not be web or web plus a number.\\"'; +$wb['username_error_collision'] = 'The username may not be web or web plus a number.\"'; $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'; $wb['no_user_insert'] = 'CP-Users of type -user- get added and updated automatically when you add a client or reseller.'; diff --git a/interface/web/admin/lib/lang/it_system_config.lng b/interface/web/admin/lib/lang/it_system_config.lng index 311b7c957c..35e625bd2a 100644 --- a/interface/web/admin/lib/lang/it_system_config.lng +++ b/interface/web/admin/lib/lang/it_system_config.lng @@ -64,7 +64,7 @@ $wb['customer_no_template_error_regex_txt'] = 'The customer No. template contain $wb['customer_no_start_txt'] = 'Customer No. start value'; $wb['customer_no_counter_txt'] = 'Customer No. counter'; $wb['session_timeout_txt'] = 'Session timeout (minutes)'; -$wb['session_allow_endless_txt'] = 'Enable \\"stay logged in\\"'; +$wb['session_allow_endless_txt'] = 'Enable \"stay logged in\"'; $wb['No'] = 'No'; $wb['min_password_length_txt'] = 'Minimum password length'; $wb['min_password_strength_txt'] = 'Minimum password strength'; diff --git a/interface/web/admin/lib/lang/it_users.lng b/interface/web/admin/lib/lang/it_users.lng index 1bde73a67b..be1294cdbe 100644 --- a/interface/web/admin/lib/lang/it_users.lng +++ b/interface/web/admin/lib/lang/it_users.lng @@ -29,7 +29,7 @@ $wb['generate_password_txt'] = 'Genera Password'; $wb['repeat_password_txt'] = 'Ripeti Password'; $wb['password_mismatch_txt'] = 'Le password non coincidono.'; $wb['password_match_txt'] = 'Le password coincidono.'; -$wb['username_error_collision'] = 'The username may not be web or web plus a number.\\"'; +$wb['username_error_collision'] = 'The username may not be web or web plus a number.\"'; $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'; $wb['no_user_insert'] = 'CP-Users of type -user- get added and updated automatically when you add a client or reseller.'; diff --git a/interface/web/admin/lib/lang/ja_system_config.lng b/interface/web/admin/lib/lang/ja_system_config.lng index aa5cc6a7a3..494f90dd3e 100644 --- a/interface/web/admin/lib/lang/ja_system_config.lng +++ b/interface/web/admin/lib/lang/ja_system_config.lng @@ -67,7 +67,7 @@ $wb['customer_no_template_error_regex_txt'] = 'The customer No. template contain $wb['customer_no_start_txt'] = 'Customer No. start value'; $wb['customer_no_counter_txt'] = 'Customer No. counter'; $wb['session_timeout_txt'] = 'Session timeout (minutes)'; -$wb['session_allow_endless_txt'] = 'Enable \\"stay logged in\\"'; +$wb['session_allow_endless_txt'] = 'Enable \"stay logged in\"'; $wb['No'] = 'No'; $wb['min_password_length_txt'] = 'Minimum password length'; $wb['min_password_strength_txt'] = 'Minimum password strength'; diff --git a/interface/web/admin/lib/lang/ja_users.lng b/interface/web/admin/lib/lang/ja_users.lng index 64f8339ffa..2e6ad9fb72 100644 --- a/interface/web/admin/lib/lang/ja_users.lng +++ b/interface/web/admin/lib/lang/ja_users.lng @@ -29,7 +29,7 @@ $wb['generate_password_txt'] = 'Generate Password'; $wb['repeat_password_txt'] = 'Repeat Password'; $wb['password_mismatch_txt'] = 'The passwords do not match.'; $wb['password_match_txt'] = 'The passwords do match.'; -$wb['username_error_collision'] = 'The username may not be web or web plus a number.\\"'; +$wb['username_error_collision'] = 'The username may not be web or web plus a number.\"'; $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'; $wb['no_user_insert'] = 'CP-Users of type -user- get added and updated automatically when you add a client or reseller.'; diff --git a/interface/web/admin/lib/lang/nl_system_config.lng b/interface/web/admin/lib/lang/nl_system_config.lng index 44a58b7646..89e3ff8e47 100644 --- a/interface/web/admin/lib/lang/nl_system_config.lng +++ b/interface/web/admin/lib/lang/nl_system_config.lng @@ -67,7 +67,7 @@ $wb['customer_no_template_error_regex_txt'] = 'The customer No. template contain $wb['customer_no_start_txt'] = 'Customer No. start value'; $wb['customer_no_counter_txt'] = 'Customer No. counter'; $wb['session_timeout_txt'] = 'Session timeout (minutes)'; -$wb['session_allow_endless_txt'] = 'Enable \\"stay logged in\\"'; +$wb['session_allow_endless_txt'] = 'Enable \"stay logged in\"'; $wb['No'] = 'No'; $wb['min_password_length_txt'] = 'Minimum password length'; $wb['min_password_strength_txt'] = 'Minimum password strength'; diff --git a/interface/web/admin/lib/lang/nl_users.lng b/interface/web/admin/lib/lang/nl_users.lng index 1e6d4ef586..782bfc5f90 100644 --- a/interface/web/admin/lib/lang/nl_users.lng +++ b/interface/web/admin/lib/lang/nl_users.lng @@ -29,7 +29,7 @@ $wb['generate_password_txt'] = 'Generate Password'; $wb['repeat_password_txt'] = 'Repeat Password'; $wb['password_mismatch_txt'] = 'The passwords do not match.'; $wb['password_match_txt'] = 'The passwords do match.'; -$wb['username_error_collision'] = 'The username may not be web or web plus a number.\\"'; +$wb['username_error_collision'] = 'The username may not be web or web plus a number.\"'; $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'; $wb['no_user_insert'] = 'CP-Users of type -user- get added and updated automatically when you add a client or reseller.'; diff --git a/interface/web/admin/lib/lang/pl_system_config.lng b/interface/web/admin/lib/lang/pl_system_config.lng index a809251ec1..bbbbf95ec7 100644 --- a/interface/web/admin/lib/lang/pl_system_config.lng +++ b/interface/web/admin/lib/lang/pl_system_config.lng @@ -67,7 +67,7 @@ $wb['customer_no_template_error_regex_txt'] = 'The customer No. template contain $wb['customer_no_start_txt'] = 'Customer No. start value'; $wb['customer_no_counter_txt'] = 'Customer No. counter'; $wb['session_timeout_txt'] = 'Session timeout (minutes)'; -$wb['session_allow_endless_txt'] = 'Enable \\"stay logged in\\"'; +$wb['session_allow_endless_txt'] = 'Enable \"stay logged in\"'; $wb['No'] = 'No'; $wb['min_password_length_txt'] = 'Minimum password length'; $wb['min_password_strength_txt'] = 'Minimum password strength'; diff --git a/interface/web/admin/lib/lang/pt_system_config.lng b/interface/web/admin/lib/lang/pt_system_config.lng index 6fc26344c0..a72ca0e954 100644 --- a/interface/web/admin/lib/lang/pt_system_config.lng +++ b/interface/web/admin/lib/lang/pt_system_config.lng @@ -67,7 +67,7 @@ $wb['customer_no_template_error_regex_txt'] = 'The customer No. template contain $wb['customer_no_start_txt'] = 'Customer No. start value'; $wb['customer_no_counter_txt'] = 'Customer No. counter'; $wb['session_timeout_txt'] = 'Session timeout (minutes)'; -$wb['session_allow_endless_txt'] = 'Enable \\"stay logged in\\"'; +$wb['session_allow_endless_txt'] = 'Enable \"stay logged in\"'; $wb['No'] = 'No'; $wb['min_password_length_txt'] = 'Minimum password length'; $wb['min_password_strength_txt'] = 'Minimum password strength'; diff --git a/interface/web/admin/lib/lang/pt_users.lng b/interface/web/admin/lib/lang/pt_users.lng index 67cfe4f572..b53790e6fa 100644 --- a/interface/web/admin/lib/lang/pt_users.lng +++ b/interface/web/admin/lib/lang/pt_users.lng @@ -29,7 +29,7 @@ $wb['generate_password_txt'] = 'Generate Password'; $wb['repeat_password_txt'] = 'Repeat Password'; $wb['password_mismatch_txt'] = 'The passwords do not match.'; $wb['password_match_txt'] = 'The passwords do match.'; -$wb['username_error_collision'] = 'The username may not be web or web plus a number.\\"'; +$wb['username_error_collision'] = 'The username may not be web or web plus a number.\"'; $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'; $wb['no_user_insert'] = 'CP-Users of type -user- get added and updated automatically when you add a client or reseller.'; diff --git a/interface/web/admin/lib/lang/ro_system_config.lng b/interface/web/admin/lib/lang/ro_system_config.lng index 2a39a454e8..93ccf39477 100644 --- a/interface/web/admin/lib/lang/ro_system_config.lng +++ b/interface/web/admin/lib/lang/ro_system_config.lng @@ -67,7 +67,7 @@ $wb['customer_no_template_error_regex_txt'] = 'The customer No. template contain $wb['customer_no_start_txt'] = 'Customer No. start value'; $wb['customer_no_counter_txt'] = 'Customer No. counter'; $wb['session_timeout_txt'] = 'Session timeout (minutes)'; -$wb['session_allow_endless_txt'] = 'Enable \\"stay logged in\\"'; +$wb['session_allow_endless_txt'] = 'Enable \"stay logged in\"'; $wb['No'] = 'No'; $wb['min_password_length_txt'] = 'Minimum password length'; $wb['min_password_strength_txt'] = 'Minimum password strength'; diff --git a/interface/web/admin/lib/lang/ro_users.lng b/interface/web/admin/lib/lang/ro_users.lng index dcbc4f4727..9d9923b631 100644 --- a/interface/web/admin/lib/lang/ro_users.lng +++ b/interface/web/admin/lib/lang/ro_users.lng @@ -29,7 +29,7 @@ $wb['generate_password_txt'] = 'Generate Password'; $wb['repeat_password_txt'] = 'Repeat Password'; $wb['password_mismatch_txt'] = 'The passwords do not match.'; $wb['password_match_txt'] = 'The passwords do match.'; -$wb['username_error_collision'] = 'The username may not be web or web plus a number.\\"'; +$wb['username_error_collision'] = 'The username may not be web or web plus a number.\"'; $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'; $wb['no_user_insert'] = 'CP-Users of type -user- get added and updated automatically when you add a client or reseller.'; diff --git a/interface/web/admin/lib/lang/ru_firewall.lng b/interface/web/admin/lib/lang/ru_firewall.lng index 70beb30437..c30f26f2e8 100644 --- a/interface/web/admin/lib/lang/ru_firewall.lng +++ b/interface/web/admin/lib/lang/ru_firewall.lng @@ -6,6 +6,6 @@ $wb['tcp_port_help_txt'] = 'ПеречиÑлить порты TCP через з $wb['udp_port_help_txt'] = 'ПеречиÑлить порты UDP через запÑтую'; $wb['active_txt'] = 'Ðктивно'; $wb['firewall_error_unique'] = 'Уже еÑÑ‚ÑŒ Ñ‚Ð°ÐºÐ°Ñ Ð·Ð°Ð¿Ð¸ÑÑŒ брандмауÑра Ð´Ð»Ñ Ñтого Ñервера.'; -$wb['tcp_ports_error_regex'] = 'ÐедопуÑтимый Ñимвол в указании tcp порта. Корректные Ñиволы - цифры, \\":\\" и \\",\\"'; -$wb['udp_ports_error_regex'] = 'Ðекорректный Ñимвол в указании UDP порта. ДопуÑтимые Ñиволы - цифры, \\":\\" и \\",\\"'; +$wb['tcp_ports_error_regex'] = 'ÐедопуÑтимый Ñимвол в указании tcp порта. Корректные Ñиволы - цифры, \":\" и \",\"'; +$wb['udp_ports_error_regex'] = 'Ðекорректный Ñимвол в указании UDP порта. ДопуÑтимые Ñиволы - цифры, \":\" и \",\"'; ?> diff --git a/interface/web/admin/lib/lang/ru_server_config.lng b/interface/web/admin/lib/lang/ru_server_config.lng index 02edb659de..ca66b325bc 100644 --- a/interface/web/admin/lib/lang/ru_server_config.lng +++ b/interface/web/admin/lib/lang/ru_server_config.lng @@ -152,7 +152,7 @@ $wb['php_fpm_socket_dir_error_empty'] = 'Каталог PHP-FPM Ñокета п $wb['try_rescue_txt'] = 'Включить мониторинг Ñлужбы и перезапуÑк при Ñбое'; $wb['do_not_try_rescue_mysql_txt'] = 'Отключить мониторинг MySQL'; $wb['do_not_try_rescue_mail_txt'] = 'Отключить мониторинг Email'; -$wb['rescue_description_txt'] = '<b>ИнформациÑ:</b> ЕÑли вы хотите выключить MySQL, вы должны уÑтановить флажок \\"Отключить мониторинг MySQL\\" и подождать 2-3 минуты.<br>ЕÑли вы не подождёте 2-3 минуты, мониторинг будет пытатьÑÑ Ð¿ÐµÑ€ÐµÐ·Ð°Ð¿ÑƒÑтить MySQL!'; +$wb['rescue_description_txt'] = '<b>ИнформациÑ:</b> ЕÑли вы хотите выключить MySQL, вы должны уÑтановить флажок \"Отключить мониторинг MySQL\" и подождать 2-3 минуты.<br>ЕÑли вы не подождёте 2-3 минуты, мониторинг будет пытатьÑÑ Ð¿ÐµÑ€ÐµÐ·Ð°Ð¿ÑƒÑтить MySQL!'; $wb['enable_sni_txt'] = 'Включить SNI'; $wb['do_not_try_rescue_httpd_txt'] = 'Отключить мониторинг HTTPD'; $wb['set_folder_permissions_on_update_txt'] = 'УÑтановить Ñ€Ð°Ð·Ñ€ÐµÑˆÐµÐ½Ð¸Ñ Ð´Ð»Ñ Ð¿Ð°Ð¿ÐºÐ¸ на обновлениÑ'; diff --git a/interface/web/admin/lib/lang/ru_system_config.lng b/interface/web/admin/lib/lang/ru_system_config.lng index baed497b0e..52324f3c77 100644 --- a/interface/web/admin/lib/lang/ru_system_config.lng +++ b/interface/web/admin/lib/lang/ru_system_config.lng @@ -14,7 +14,7 @@ $wb['mailboxlist_webmail_link_txt'] = 'СÑылка на веб-почту в Ñ $wb['webmail_url_txt'] = 'URL веб-почты'; $wb['phpmyadmin_url_txt'] = 'URL PHPMyAdmin'; $wb['use_domain_module_txt'] = 'ИÑпользовать модуль домена, чтобы добавить новые домены'; -$wb['use_domain_module_hint'] = 'При иÑпользовании Ñтого модулÑ, Ваши клиенты Ñмогут выбрать только один из доменов, Ñозданных Ð´Ð»Ñ Ð½Ð¸Ñ… админиÑтратором. Они не могут Ñвободно редактировать поле \\"домен\\". Чтобы Ñделать Ñти Ð¸Ð·Ð¼ÐµÐ½ÐµÐ½Ð¸Ñ Ð²Ð¸Ð´Ð¸Ð¼Ñ‹Ð¼Ð¸, Ð’Ñ‹ должны выйти и повторно войти в панель поÑле Ð¸Ð·Ð¼ÐµÐ½ÐµÐ½Ð¸Ñ Ñтого значениÑ.'; +$wb['use_domain_module_hint'] = 'При иÑпользовании Ñтого модулÑ, Ваши клиенты Ñмогут выбрать только один из доменов, Ñозданных Ð´Ð»Ñ Ð½Ð¸Ñ… админиÑтратором. Они не могут Ñвободно редактировать поле \"домен\". Чтобы Ñделать Ñти Ð¸Ð·Ð¼ÐµÐ½ÐµÐ½Ð¸Ñ Ð²Ð¸Ð´Ð¸Ð¼Ñ‹Ð¼Ð¸, Ð’Ñ‹ должны выйти и повторно войти в панель поÑле Ð¸Ð·Ð¼ÐµÐ½ÐµÐ½Ð¸Ñ Ñтого значениÑ.'; $wb['new_domain_txt'] = 'HTML текÑÑ‚, чтобы Ñоздать новый домен'; $wb['webdavuser_prefix_txt'] = 'ÐŸÑ€ÐµÑ„Ð¸ÐºÑ Ð¿Ð¾Ð»ÑŒÐ·Ð¾Ð²Ð°Ñ‚ÐµÐ»Ñ WebDAV'; $wb['webdavuser_prefix_error_regex'] = 'Ðекорректный Ñимвол в префикÑе Ð¿Ð¾Ð»ÑŒÐ·Ð¾Ð²Ð°Ñ‚ÐµÐ»Ñ WebDAV.'; @@ -67,7 +67,7 @@ $wb['customer_no_template_error_regex_txt'] = 'Шаблон номера Кли $wb['customer_no_start_txt'] = 'Ðачальное значение номера Клиента'; $wb['customer_no_counter_txt'] = 'Счётчик номера Клиента'; $wb['session_timeout_txt'] = 'Тайм-аут ÑеÑÑии (в минутах)'; -$wb['session_allow_endless_txt'] = 'Включить \\"оÑтаватьÑÑ Ð² ÑиÑтеме\\"'; +$wb['session_allow_endless_txt'] = 'Включить \"оÑтаватьÑÑ Ð² ÑиÑтеме\"'; $wb['No'] = 'Ðет'; $wb['min_password_length_txt'] = 'ÐœÐ¸Ð½Ð¸Ð¼Ð°Ð»ÑŒÐ½Ð°Ñ Ð´Ð»Ð¸Ð½Ð° паролÑ'; $wb['min_password_strength_txt'] = 'ÐœÐ¸Ð½Ð¸Ð¼Ð°Ð»ÑŒÐ½Ð°Ñ ÑтойкоÑÑ‚ÑŒ паролÑ'; diff --git a/interface/web/admin/lib/lang/ru_users.lng b/interface/web/admin/lib/lang/ru_users.lng index 63f081f917..bd1b8034ff 100644 --- a/interface/web/admin/lib/lang/ru_users.lng +++ b/interface/web/admin/lib/lang/ru_users.lng @@ -29,7 +29,7 @@ $wb['generate_password_txt'] = 'Создать пароль'; $wb['repeat_password_txt'] = 'Повторить пароль'; $wb['password_mismatch_txt'] = 'Пароли не Ñовпадают.'; $wb['password_match_txt'] = 'Ðти пароли Ñовпадают.'; -$wb['username_error_collision'] = 'Ð˜Ð¼Ñ Ð¿Ð¾Ð»ÑŒÐ·Ð¾Ð²Ð°Ñ‚ÐµÐ»Ñ Ð½Ðµ может начинатьÑÑ Ñо Ñлова \\"web\\" или \\"web\\" Ð¿Ð»ÑŽÑ Ñ‡Ð¸Ñло.'; +$wb['username_error_collision'] = 'Ð˜Ð¼Ñ Ð¿Ð¾Ð»ÑŒÐ·Ð¾Ð²Ð°Ñ‚ÐµÐ»Ñ Ð½Ðµ может начинатьÑÑ Ñо Ñлова \"web\" или \"web\" Ð¿Ð»ÑŽÑ Ñ‡Ð¸Ñло.'; $wb['client_not_admin_err'] = 'Пользователь, который принадлежит к клиенту не может быть уÑтановлен тип: admin'; $wb['lost_password_function_txt'] = 'Ð¤ÑƒÐ½ÐºÑ†Ð¸Ñ Ð²Ð¾ÑÑÑ‚Ð°Ð½Ð¾Ð²Ð»ÐµÐ½Ð¸Ñ Ð¿Ð°Ñ€Ð¾Ð»Ñ Ð´Ð¾Ñтупна'; $wb['no_user_insert'] = 'CP-Users of type -user- get added and updated automatically when you add a client or reseller.'; diff --git a/interface/web/admin/lib/lang/se_system_config.lng b/interface/web/admin/lib/lang/se_system_config.lng index 74ae16734f..0c5643bf4f 100644 --- a/interface/web/admin/lib/lang/se_system_config.lng +++ b/interface/web/admin/lib/lang/se_system_config.lng @@ -67,7 +67,7 @@ $wb['customer_no_template_error_regex_txt'] = 'Kundnummermallen innehÃ¥ller otil $wb['customer_no_start_txt'] = 'Kundnummer startvärde'; $wb['customer_no_counter_txt'] = 'Kundnummer räknare'; $wb['session_timeout_txt'] = 'Session timeout (minuter)'; -$wb['session_allow_endless_txt'] = 'Aktivera \\"hÃ¥ll mig inloggad\\"'; +$wb['session_allow_endless_txt'] = 'Aktivera \"hÃ¥ll mig inloggad\"'; $wb['No'] = 'Nej'; $wb['min_password_length_txt'] = 'Minsta lösenordslängd'; $wb['min_password_strength_txt'] = 'Minsta lösenordsstyrka'; diff --git a/interface/web/admin/lib/lang/sk_system_config.lng b/interface/web/admin/lib/lang/sk_system_config.lng index 90418e87d5..390458886c 100644 --- a/interface/web/admin/lib/lang/sk_system_config.lng +++ b/interface/web/admin/lib/lang/sk_system_config.lng @@ -67,7 +67,7 @@ $wb['customer_no_template_error_regex_txt'] = 'The customer No. template contain $wb['customer_no_start_txt'] = 'Customer No. start value'; $wb['customer_no_counter_txt'] = 'Customer No. counter'; $wb['session_timeout_txt'] = 'Session timeout (minutes)'; -$wb['session_allow_endless_txt'] = 'Enable \\"stay logged in\\"'; +$wb['session_allow_endless_txt'] = 'Enable \"stay logged in\"'; $wb['No'] = 'No'; $wb['min_password_length_txt'] = 'Minimum password length'; $wb['min_password_strength_txt'] = 'Minimum password strength'; diff --git a/interface/web/admin/lib/lang/sk_users.lng b/interface/web/admin/lib/lang/sk_users.lng index d71952fa3e..60a0aa99ec 100644 --- a/interface/web/admin/lib/lang/sk_users.lng +++ b/interface/web/admin/lib/lang/sk_users.lng @@ -29,7 +29,7 @@ $wb['generate_password_txt'] = 'Generate Password'; $wb['repeat_password_txt'] = 'Repeat Password'; $wb['password_mismatch_txt'] = 'The passwords do not match.'; $wb['password_match_txt'] = 'The passwords do match.'; -$wb['username_error_collision'] = 'The username may not be web or web plus a number.\\"'; +$wb['username_error_collision'] = 'The username may not be web or web plus a number.\"'; $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'; $wb['no_user_insert'] = 'CP-Users of type -user- get added and updated automatically when you add a client or reseller.'; diff --git a/interface/web/admin/lib/lang/tr_firewall.lng b/interface/web/admin/lib/lang/tr_firewall.lng index a45998d4e1..8db312ff05 100644 --- a/interface/web/admin/lib/lang/tr_firewall.lng +++ b/interface/web/admin/lib/lang/tr_firewall.lng @@ -6,6 +6,6 @@ $wb['tcp_port_help_txt'] = 'Virgül ile ayırarak yazın'; $wb['udp_port_help_txt'] = 'Virgül ile ayırarak yazın'; $wb['active_txt'] = 'Etkin'; $wb['firewall_error_unique'] = 'Bu sunucu için bir güvenlik duvarı kaydı zaten var.'; -$wb['tcp_ports_error_regex'] = 'TCP kapı açıklamasında karakter kullanılamaz. Yalnız rakam, \\":\\" ve \\",\\" karakterleri kullanılabilir.'; -$wb['udp_ports_error_regex'] = 'UDP kapı açıklamasında karakter kullanılamaz. Yalnız rakam, \\":\\" ve \\",\\" karakterleri kullanılabilir.'; +$wb['tcp_ports_error_regex'] = 'TCP kapı açıklamasında karakter kullanılamaz. Yalnız rakam, \":\" ve \",\" karakterleri kullanılabilir.'; +$wb['udp_ports_error_regex'] = 'UDP kapı açıklamasında karakter kullanılamaz. Yalnız rakam, \":\" ve \",\" karakterleri kullanılabilir.'; ?> diff --git a/interface/web/admin/lib/lang/tr_remote_action.lng b/interface/web/admin/lib/lang/tr_remote_action.lng index c067f67e88..2f124714e1 100644 --- a/interface/web/admin/lib/lang/tr_remote_action.lng +++ b/interface/web/admin/lib/lang/tr_remote_action.lng @@ -2,11 +2,11 @@ $wb['select_server_txt'] = 'Sunucu Seçin'; $wb['btn_do_txt'] = 'Ä°ÅŸlemi BaÅŸlatın'; $wb['do_osupdate_caption'] = 'Uzak sunucudaki iÅŸletim sistemini güncelleyin'; -$wb['do_osupdate_desc'] = 'Bu iÅŸlem seçilmiÅŸ sunucuda \\"aptitude -y upgrade\\" komutunu yürütür.<br><br><strong>OLUÅžABÄ°LECEK RÄ°SKLER SÄ°ZE AÄ°TTÄ°R!</strong>'; +$wb['do_osupdate_desc'] = 'Bu iÅŸlem seçilmiÅŸ sunucuda \"aptitude -y upgrade\" komutunu yürütür.<br><br><strong>OLUÅžABÄ°LECEK RÄ°SKLER SÄ°ZE AÄ°TTÄ°R!</strong>'; $wb['do_ispcupdate_caption'] = 'Uzak sunucudaki ISPConfig 3 - sürümünü güncelleyin'; $wb['do_ispcupdate_desc'] = 'Bu iÅŸlem seçilmiÅŸ sunucuda ISPConfig3 güncellemesini yürütür.<br><br><strong>OLUÅžABÄ°LECEK RÄ°SKLER SÃœZE AÄ°TTÄ°R!</strong>'; $wb['action_scheduled'] = 'Ä°ÅŸlem yürütülmek üzere zamanlandı'; $wb['select_all_server'] = 'Tüm Sunucularda'; $wb['ispconfig_update_title'] = 'ISPConfig güncelleme yönergeleri'; -$wb['ispconfig_update_text'] = 'Sunucunuzda root kullanıcısı ile bir kabuk oturumu açın ve ISPConfig güncellemesini baÅŸlatmak için<br /><br /> <strong>ispconfig_update.sh</strong><br /><br />komutunu yürütün.<br /><br /><a href=\\"http://www.faqforge.com/linux/controlpanels/ispconfig3/how-to-update-ispconfig-3/\\" target=\\"_blank\\">Ayrıntılı güncelleme bilgilerine bakmak için buraya tıklayın</a>'; +$wb['ispconfig_update_text'] = 'Sunucunuzda root kullanıcısı ile bir kabuk oturumu açın ve ISPConfig güncellemesini baÅŸlatmak için<br /><br /> <strong>ispconfig_update.sh</strong><br /><br />komutunu yürütün.<br /><br /><a href=\"http://www.faqforge.com/linux/controlpanels/ispconfig3/how-to-update-ispconfig-3/\" target=\"_blank\">Ayrıntılı güncelleme bilgilerine bakmak için buraya tıklayın</a>'; ?> diff --git a/interface/web/admin/lib/lang/tr_server_config.lng b/interface/web/admin/lib/lang/tr_server_config.lng index 7d16f21454..4abfd909bf 100644 --- a/interface/web/admin/lib/lang/tr_server_config.lng +++ b/interface/web/admin/lib/lang/tr_server_config.lng @@ -152,7 +152,7 @@ $wb['try_rescue_txt'] = 'Hizmetler izlensin ve sorun çıktığında yeniden ba $wb['do_not_try_rescue_httpd_txt'] = 'HTTPD izlenmesin'; $wb['do_not_try_rescue_mysql_txt'] = 'MySQL izlenmesin'; $wb['do_not_try_rescue_mail_txt'] = 'E-posta izlenmesin'; -$wb['rescue_description_txt'] = '<b>Uyarı:</b> mysql sunucusunu kapatmak istiyorsanız \\"MySQL izlenmesin\\" seçeneÄŸini iÅŸaretleyip 2-3 dakika bekleyin.<br>2-3 dakika beklemezseniz, kurtarma iÅŸlemi mysql sunucusunu yeniden baÅŸlatmaya çalışır!'; +$wb['rescue_description_txt'] = '<b>Uyarı:</b> mysql sunucusunu kapatmak istiyorsanız \"MySQL izlenmesin\" seçeneÄŸini iÅŸaretleyip 2-3 dakika bekleyin.<br>2-3 dakika beklemezseniz, kurtarma iÅŸlemi mysql sunucusunu yeniden baÅŸlatmaya çalışır!'; $wb['enable_sni_txt'] = 'SNI Kullanılsın'; $wb['set_folder_permissions_on_update_txt'] = 'Güncellenirken klasör izinleri ayarlansın'; $wb['add_web_users_to_sshusers_group_txt'] = 'Web kullanıcıları -sshusers- grubuna eklensin'; diff --git a/interface/web/admin/lib/lang/tr_system_config.lng b/interface/web/admin/lib/lang/tr_system_config.lng index c52893f6b4..b4b213697f 100644 --- a/interface/web/admin/lib/lang/tr_system_config.lng +++ b/interface/web/admin/lib/lang/tr_system_config.lng @@ -64,7 +64,7 @@ $wb['customer_no_template_error_regex_txt'] = 'Müşteri no kalıbında geçersi $wb['customer_no_start_txt'] = 'Müşteri No BaÅŸlangıç DeÄŸeri'; $wb['customer_no_counter_txt'] = 'Müşteri No Sayacı'; $wb['session_timeout_txt'] = 'Oturum Zaman Aşımı (dakika)'; -$wb['session_allow_endless_txt'] = '\\"Oturum açık kalsın\\" kullanılabilsin'; +$wb['session_allow_endless_txt'] = '\"Oturum açık kalsın\" kullanılabilsin'; $wb['No'] = 'No'; $wb['min_password_length_txt'] = 'En Az Parola UzunluÄŸu'; $wb['min_password_strength_txt'] = 'En Az Parola Güçlüğü'; diff --git a/interface/web/admin/lib/lang/tr_users.lng b/interface/web/admin/lib/lang/tr_users.lng index 0029214773..b639bf9a1d 100644 --- a/interface/web/admin/lib/lang/tr_users.lng +++ b/interface/web/admin/lib/lang/tr_users.lng @@ -29,7 +29,7 @@ $wb['generate_password_txt'] = 'Parola OluÅŸtur'; $wb['repeat_password_txt'] = 'Parola Onayı'; $wb['password_mismatch_txt'] = 'Parola ile onayı aynı deÄŸil.'; $wb['password_match_txt'] = 'Parola ile onayı aynı.'; -$wb['username_error_collision'] = 'Kullanıcı adı -web- ya da -web- sözcüğünü izleyen bir sayı ile baÅŸlayamaz.\\"'; +$wb['username_error_collision'] = 'Kullanıcı adı -web- ya da -web- sözcüğünü izleyen bir sayı ile baÅŸlayamaz.\"'; $wb['client_not_admin_err'] = 'Bir müşteriye ait bir kullanıcının tipi admin olarak atanamaz'; $wb['lost_password_function_txt'] = 'Forgot password function is available'; $wb['no_user_insert'] = 'CP-Users of type -user- get added and updated automatically when you add a client or reseller.'; diff --git a/interface/web/client/lib/lang/ar_client.lng b/interface/web/client/lib/lang/ar_client.lng index 71bc0fc1f7..4d2bcccef0 100644 --- a/interface/web/client/lib/lang/ar_client.lng +++ b/interface/web/client/lib/lang/ar_client.lng @@ -141,7 +141,7 @@ $wb['email_error_isemail'] = 'Please enter a valid email address.'; $wb['customer_no_error_unique'] = 'The customer no. must be unique (or empty).'; $wb['paypal_email_error_isemail'] = 'Please enter a valid PayPal email address.'; $wb['paypal_email_txt'] = 'PayPal Email'; -$wb['err_msg_master_tpl_set'] = 'All custom limit settings are ignored if any master template other than \\"custom\\" is selected.'; +$wb['err_msg_master_tpl_set'] = 'All custom limit settings are ignored if any master template other than \"custom\" is selected.'; $wb['aps_limits_txt'] = 'APS Installer Limits'; $wb['limit_aps_txt'] = 'Max. number of APS instances'; $wb['limit_aps_error_notint'] = 'The APS instances limit must be a number.'; diff --git a/interface/web/client/lib/lang/ar_reseller.lng b/interface/web/client/lib/lang/ar_reseller.lng index 68e8a950f3..553abe0aee 100644 --- a/interface/web/client/lib/lang/ar_reseller.lng +++ b/interface/web/client/lib/lang/ar_reseller.lng @@ -159,7 +159,7 @@ $wb['added_date_txt'] = 'Added date'; $wb['limit_domainmodule_error_notint'] = 'Domainmodule limit must be a number.'; $wb['limit_domainmodule_txt'] = 'Domainmodule Limit'; $wb['client_limits_txt'] = 'Client Limits'; -$wb['err_msg_master_tpl_set'] = 'All custom limit settings are ignored if any master template other than \\"custom\\" is selected.'; +$wb['err_msg_master_tpl_set'] = 'All custom limit settings are ignored if any master template other than \"custom\" is selected.'; $wb['btn_save_txt'] = 'Save'; $wb['btn_cancel_txt'] = 'Cancel'; $wb['email_error_empty'] = 'Email is empty'; diff --git a/interface/web/client/lib/lang/bg_client.lng b/interface/web/client/lib/lang/bg_client.lng index 36da0a0422..163f677043 100644 --- a/interface/web/client/lib/lang/bg_client.lng +++ b/interface/web/client/lib/lang/bg_client.lng @@ -141,7 +141,7 @@ $wb['email_error_isemail'] = 'Please enter a valid email address.'; $wb['customer_no_error_unique'] = 'The customer no. must be unique (or empty).'; $wb['paypal_email_error_isemail'] = 'Please enter a valid PayPal email address.'; $wb['paypal_email_txt'] = 'PayPal Email'; -$wb['err_msg_master_tpl_set'] = 'All custom limit settings are ignored if any master template other than \\"custom\\" is selected.'; +$wb['err_msg_master_tpl_set'] = 'All custom limit settings are ignored if any master template other than \"custom\" is selected.'; $wb['aps_limits_txt'] = 'APS Installer Limits'; $wb['limit_aps_txt'] = 'Max. number of APS instances'; $wb['limit_aps_error_notint'] = 'The APS instances limit must be a number.'; diff --git a/interface/web/client/lib/lang/bg_reseller.lng b/interface/web/client/lib/lang/bg_reseller.lng index 211b6daf93..7daa4cff22 100644 --- a/interface/web/client/lib/lang/bg_reseller.lng +++ b/interface/web/client/lib/lang/bg_reseller.lng @@ -159,7 +159,7 @@ $wb['added_date_txt'] = 'Added date'; $wb['limit_domainmodule_error_notint'] = 'Domainmodule limit must be a number.'; $wb['limit_domainmodule_txt'] = 'Domainmodule Limit'; $wb['client_limits_txt'] = 'Client Limits'; -$wb['err_msg_master_tpl_set'] = 'All custom limit settings are ignored if any master template other than \\"custom\\" is selected.'; +$wb['err_msg_master_tpl_set'] = 'All custom limit settings are ignored if any master template other than \"custom\" is selected.'; $wb['btn_save_txt'] = 'Save'; $wb['btn_cancel_txt'] = 'Cancel'; $wb['email_error_empty'] = 'Email is empty'; diff --git a/interface/web/client/lib/lang/br_client.lng b/interface/web/client/lib/lang/br_client.lng index 992c1ea2ca..ad9282aa4c 100644 --- a/interface/web/client/lib/lang/br_client.lng +++ b/interface/web/client/lib/lang/br_client.lng @@ -141,7 +141,7 @@ $wb['email_error_isemail'] = 'Por favor, insira um e-mail válido.'; $wb['customer_no_error_unique'] = 'O código do cliente deve ser exclusivo (ou em branco).'; $wb['paypal_email_error_isemail'] = 'Por favor, insira um e-mail do PayPal válido.'; $wb['paypal_email_txt'] = 'e-mail do PayPal'; -$wb['err_msg_master_tpl_set'] = 'Todos as configurações de limites personalizadas são ignoradas se qualquer gabarito mestre ou algum gabarito \\"personalizado\\" for selecionado.'; +$wb['err_msg_master_tpl_set'] = 'Todos as configurações de limites personalizadas são ignoradas se qualquer gabarito mestre ou algum gabarito \"personalizado\" for selecionado.'; $wb['aps_limits_txt'] = 'Limites de apps instalados'; $wb['limit_aps_txt'] = 'Limite de instâncias de apps'; $wb['limit_aps_error_notint'] = 'Limite de instâncias de apps deve ser um número.'; diff --git a/interface/web/client/lib/lang/br_client_template.lng b/interface/web/client/lib/lang/br_client_template.lng index 4b2ce6555b..bc7124b16c 100644 --- a/interface/web/client/lib/lang/br_client_template.lng +++ b/interface/web/client/lib/lang/br_client_template.lng @@ -76,7 +76,7 @@ $wb['limit_perl_txt'] = 'Perl disponÃvel'; $wb['limit_ruby_txt'] = 'Ruby disponÃvel'; $wb['limit_python_txt'] = 'Python disponÃvel'; $wb['force_suexec_txt'] = 'Forçar SuEXEC'; -$wb['limit_hterror_txt'] = 'Diretório \\"Custom error docs\\" disponÃvel'; +$wb['limit_hterror_txt'] = 'Diretório \"Custom error docs\" disponÃvel'; $wb['limit_wildcard_txt'] = 'Curingas de subdomÃnios disponÃveis'; $wb['limit_ssl_txt'] = 'SSL disponÃvel'; $wb['web_limits_txt'] = 'Limites web'; diff --git a/interface/web/client/lib/lang/br_reseller.lng b/interface/web/client/lib/lang/br_reseller.lng index d90d3b15a2..524f875f73 100644 --- a/interface/web/client/lib/lang/br_reseller.lng +++ b/interface/web/client/lib/lang/br_reseller.lng @@ -159,7 +159,7 @@ $wb['added_date_txt'] = 'Data do cadastro'; $wb['limit_domainmodule_error_notint'] = 'Limite de módulos de domÃnio deve ser um número.'; $wb['limit_domainmodule_txt'] = 'Limites de módulos de domÃnio'; $wb['client_limits_txt'] = 'Limite de clientes'; -$wb['err_msg_master_tpl_set'] = 'Todas as configurações personalizadas de limites serão ignoradas se um gabarito mestre ou \\"personalizado\\" for selecionado.'; +$wb['err_msg_master_tpl_set'] = 'Todas as configurações personalizadas de limites serão ignoradas se um gabarito mestre ou \"personalizado\" for selecionado.'; $wb['btn_save_txt'] = 'Salvar'; $wb['btn_cancel_txt'] = 'Cancelar'; $wb['email_error_empty'] = 'e-mail está em branco.'; diff --git a/interface/web/client/lib/lang/ca_client.lng b/interface/web/client/lib/lang/ca_client.lng index bfa38a3401..7f460522ff 100644 --- a/interface/web/client/lib/lang/ca_client.lng +++ b/interface/web/client/lib/lang/ca_client.lng @@ -139,7 +139,7 @@ $wb['email_error_isemail'] = 'Saisissez une adresse courriel valide.'; $wb['customer_no_error_unique'] = 'Le numéro client doit être unique (ou vide).'; $wb['paypal_email_error_isemail'] = 'Saisissez un compte Paypal valide.'; $wb['paypal_email_txt'] = 'Compte Paypal'; -$wb['err_msg_master_tpl_set'] = 'Les paramètres de limites personnalisés seront ignorés si un modèle maître autre que \\"custom\\" est sélectionné.'; +$wb['err_msg_master_tpl_set'] = 'Les paramètres de limites personnalisés seront ignorés si un modèle maître autre que \"custom\" est sélectionné.'; $wb['aps_limits_txt'] = 'Nombre max d\'Installeur APS'; $wb['limit_aps_txt'] = 'Nombre max d\'instances APS'; $wb['limit_aps_error_notint'] = 'La limite d\'instances APS doit être un nombre'; diff --git a/interface/web/client/lib/lang/ca_reseller.lng b/interface/web/client/lib/lang/ca_reseller.lng index f83d3aaff7..7125b01a74 100644 --- a/interface/web/client/lib/lang/ca_reseller.lng +++ b/interface/web/client/lib/lang/ca_reseller.lng @@ -156,7 +156,7 @@ $wb['added_date_txt'] = 'Ajouté le'; $wb['limit_domainmodule_error_notint'] = 'Domainmodule limit must be a number.'; $wb['limit_domainmodule_txt'] = 'Domainmodule Limit'; $wb['client_limits_txt'] = 'Client Limits'; -$wb['err_msg_master_tpl_set'] = 'All custom limit settings are ignored if any master template other than \\"custom\\" is selected.'; +$wb['err_msg_master_tpl_set'] = 'All custom limit settings are ignored if any master template other than \"custom\" is selected.'; $wb['contact_firstname_txt'] = 'Contact firstname'; $wb['limit_backup_txt'] = 'Backupfunction available'; $wb['limit_client_error_positive_or_unlimited'] = 'The number of clients must be > 0 or -1 (unlimited)'; diff --git a/interface/web/client/lib/lang/cz_client.lng b/interface/web/client/lib/lang/cz_client.lng index 3351ac58e1..edd366830a 100644 --- a/interface/web/client/lib/lang/cz_client.lng +++ b/interface/web/client/lib/lang/cz_client.lng @@ -139,7 +139,7 @@ $wb['email_error_isemail'] = 'Zadejte prosÃm platnou e-mailovou adresu.'; $wb['customer_no_error_unique'] = 'Zákaznické ÄÃslo musà být jedineÄné (nebo prázdné).'; $wb['paypal_email_error_isemail'] = 'Zadejte prosÃm platnou PayPal e-mail addresu.'; $wb['paypal_email_txt'] = 'PayPal e-mail'; -$wb['err_msg_master_tpl_set'] = 'Nelze nastavit vlastnà limity, pokud chtete nastavit vlatnà limity musà být \\"hlavnà šablona\\" nastavena na volbu \\"Custom\\".'; +$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['aps_limits_txt'] = 'APS limity instalátoru'; $wb['limit_aps_txt'] = 'Max. poÄet APS instalacÃ'; $wb['limit_aps_error_notint'] = 'Limit pro APS instalace musà být ÄÃslo.'; diff --git a/interface/web/client/lib/lang/cz_reseller.lng b/interface/web/client/lib/lang/cz_reseller.lng index adfea62ac5..011b985311 100644 --- a/interface/web/client/lib/lang/cz_reseller.lng +++ b/interface/web/client/lib/lang/cz_reseller.lng @@ -156,7 +156,7 @@ $wb['added_date_txt'] = 'Datum vytvoÅ™enà úÄtu'; $wb['limit_domainmodule_error_notint'] = 'Domainmodule limit must be a number.'; $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['err_msg_master_tpl_set'] = 'Nelze nastavit vlastnà limity, pokud chtete nastavit vlatnà limity musà být \"hlavnà šablona\" nastavena na volbu \"Custom\".'; $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)'; diff --git a/interface/web/client/lib/lang/de_reseller.lng b/interface/web/client/lib/lang/de_reseller.lng index e37ca395af..48460658c0 100644 --- a/interface/web/client/lib/lang/de_reseller.lng +++ b/interface/web/client/lib/lang/de_reseller.lng @@ -160,7 +160,7 @@ $wb['added_date_txt'] = 'Added date'; $wb['limit_domainmodule_error_notint'] = 'Domainmodule limit must be a number.'; $wb['limit_domainmodule_txt'] = 'Domainmodule Limit'; $wb['client_limits_txt'] = 'Client Limits'; -$wb['err_msg_master_tpl_set'] = 'All custom limit settings are ignored if any master template other than \\"custom\\" is selected.'; +$wb['err_msg_master_tpl_set'] = 'All custom limit settings are ignored if any master template other than \"custom\" is selected.'; $wb['invalid_vat_id'] = 'Die USt.-ID ist ungültig.'; $wb['btn_save_txt'] = 'Speichern'; $wb['btn_cancel_txt'] = 'Abbrechen'; diff --git a/interface/web/client/lib/lang/dk_client.lng b/interface/web/client/lib/lang/dk_client.lng index b944e03175..f0a8d1a7cd 100644 --- a/interface/web/client/lib/lang/dk_client.lng +++ b/interface/web/client/lib/lang/dk_client.lng @@ -139,7 +139,7 @@ $wb['email_error_isemail'] = 'Indtast en gyldig e-mail adresse.'; $wb['customer_no_error_unique'] = 'Kunde nr. skal være unikke (eller tomt).'; $wb['paypal_email_error_isemail'] = 'Indtast en gyldig PayPal e-mail adresse.'; $wb['paypal_email_txt'] = 'PayPal E-mail'; -$wb['err_msg_master_tpl_set'] = 'Alle brugerdefinerede grænse indstillinger ignoreres, hvis nogen anden master skabelonen end \\"custom\\" er valgt.'; +$wb['err_msg_master_tpl_set'] = 'Alle brugerdefinerede grænse indstillinger ignoreres, hvis nogen anden master skabelonen end \"custom\" er valgt.'; $wb['aps_limits_txt'] = 'APS Installer Begrænsninger'; $wb['limit_aps_txt'] = 'Max. antal af APS forekomster'; $wb['limit_aps_error_notint'] = 'APS forekomster grænse skal være et tal.'; diff --git a/interface/web/client/lib/lang/dk_reseller.lng b/interface/web/client/lib/lang/dk_reseller.lng index b06301ccdd..93cd7c4032 100644 --- a/interface/web/client/lib/lang/dk_reseller.lng +++ b/interface/web/client/lib/lang/dk_reseller.lng @@ -156,7 +156,7 @@ $wb['added_date_txt'] = 'Tilføjet d.'; $wb['limit_domainmodule_error_notint'] = 'Domænemodul grænse skal være et tal.'; $wb['limit_domainmodule_txt'] = 'Domænemodul Begrænsning'; $wb['client_limits_txt'] = 'Kunde Begrænsninger'; -$wb['err_msg_master_tpl_set'] = 'Alle brugerdefinerede grænse indstillinger ignoreres, hvis nogen anden master skabelonen end \\"custom\\" er valgt.'; +$wb['err_msg_master_tpl_set'] = 'Alle brugerdefinerede grænse indstillinger ignoreres, hvis nogen anden master skabelonen end \"custom\" er valgt.'; $wb['contact_firstname_txt'] = 'Contact firstname'; $wb['password_click_to_set_txt'] = 'Click to set'; $wb['limit_database_user_txt'] = 'Max. Database users'; diff --git a/interface/web/client/lib/lang/el_client.lng b/interface/web/client/lib/lang/el_client.lng index b85f653d4e..8c2d7d738e 100644 --- a/interface/web/client/lib/lang/el_client.lng +++ b/interface/web/client/lib/lang/el_client.lng @@ -141,7 +141,7 @@ $wb['email_error_isemail'] = 'Please enter a valid email address.'; $wb['customer_no_error_unique'] = 'The customer no. must be unique (or empty).'; $wb['paypal_email_error_isemail'] = 'Please enter a valid PayPal email address.'; $wb['paypal_email_txt'] = 'PayPal Email'; -$wb['err_msg_master_tpl_set'] = 'All custom limit settings are ignored if any master template other than \\"custom\\" is selected.'; +$wb['err_msg_master_tpl_set'] = 'All custom limit settings are ignored if any master template other than \"custom\" is selected.'; $wb['aps_limits_txt'] = 'APS Installer Limits'; $wb['limit_aps_txt'] = 'Max. number of APS instances'; $wb['limit_aps_error_notint'] = 'The APS instances limit must be a number.'; diff --git a/interface/web/client/lib/lang/el_reseller.lng b/interface/web/client/lib/lang/el_reseller.lng index b409c169e6..13a38caf9d 100644 --- a/interface/web/client/lib/lang/el_reseller.lng +++ b/interface/web/client/lib/lang/el_reseller.lng @@ -159,7 +159,7 @@ $wb['added_date_txt'] = 'Added date'; $wb['limit_domainmodule_error_notint'] = 'Domainmodule limit must be a number.'; $wb['limit_domainmodule_txt'] = 'Domainmodule Limit'; $wb['client_limits_txt'] = 'Client Limits'; -$wb['err_msg_master_tpl_set'] = 'All custom limit settings are ignored if any master template other than \\"custom\\" is selected.'; +$wb['err_msg_master_tpl_set'] = 'All custom limit settings are ignored if any master template other than \"custom\" is selected.'; $wb['btn_save_txt'] = 'Save'; $wb['btn_cancel_txt'] = 'Cancel'; $wb['email_error_empty'] = 'Email is empty'; diff --git a/interface/web/client/lib/lang/es_client.lng b/interface/web/client/lib/lang/es_client.lng index 75125024fb..1935b168af 100755 --- a/interface/web/client/lib/lang/es_client.lng +++ b/interface/web/client/lib/lang/es_client.lng @@ -42,7 +42,7 @@ $wb['email_error_empty'] = 'El correo electrónico está vacÃo'; $wb['email_error_isemail'] = 'Por favor ingrese una dirección de correo válida.'; $wb['email_limits_txt'] = 'LÃmites de correo'; $wb['email_txt'] = 'Correo'; -$wb['err_msg_master_tpl_set'] = 'Todas las opciones personalizadas de lÃmites serán ignoradas si se utiliza otra plantilla maestra diferente a \\"personalizada\\".'; +$wb['err_msg_master_tpl_set'] = 'Todas las opciones personalizadas de lÃmites serán ignoradas si se utiliza otra plantilla maestra diferente a \"personalizada\".'; $wb['fax_txt'] = 'Fax'; $wb['firstname_error_empty'] = 'El nombre está vacÃo.'; $wb['firstname_txt'] = 'Nombre'; @@ -90,7 +90,7 @@ $wb['limit_mailaliasdomain_error_notint'] = 'El lÃmite de alias de dominio de c $wb['limit_mailaliasdomain_txt'] = 'Cantidad máx. de alias de dominio'; $wb['limit_mailbox_error_notint'] = 'El lÃmite de buzones debe ser un número.'; $wb['limit_mailbox_txt'] = 'Cantidad máx. de buzones'; -$wb['limit_mailcatchall_error_notint'] = 'El lÃmite de correos \\"recoge-todo\\" debe ser un número.'; +$wb['limit_mailcatchall_error_notint'] = 'El lÃmite de correos \"recoge-todo\" debe ser un número.'; $wb['limit_mailcatchall_txt'] = 'Cantidad máx. de receptores de correos huérfanos'; $wb['limit_maildomain_error_notint'] = 'El lÃmite de dominio de correo debe ser un número.'; $wb['limit_maildomain_txt'] = 'Cantidad máx. de dominios para correo'; diff --git a/interface/web/client/lib/lang/es_client_template.lng b/interface/web/client/lib/lang/es_client_template.lng index 4fd6f650f3..6a51459600 100755 --- a/interface/web/client/lib/lang/es_client_template.lng +++ b/interface/web/client/lib/lang/es_client_template.lng @@ -46,8 +46,8 @@ $wb['limit_mailaliasdomain_error_notint'] = 'El lÃmite de alias de dominio de c $wb['limit_mailaliasdomain_txt'] = 'Cantidad máx. de alias de dominio'; $wb['limit_mailbox_error_notint'] = 'El lÃmite de buzones debe ser un número.'; $wb['limit_mailbox_txt'] = 'Cantidad máx. de buzones'; -$wb['limit_mailcatchall_error_notint'] = 'El lÃmite de receptores de correo \\"recoge-todo\\" debe ser un número.'; -$wb['limit_mailcatchall_txt'] = 'Cantidad máx. de receptores de correo \\"recoge-todo\\" '; +$wb['limit_mailcatchall_error_notint'] = 'El lÃmite de receptores de correo \"recoge-todo\" debe ser un número.'; +$wb['limit_mailcatchall_txt'] = 'Cantidad máx. de receptores de correo \"recoge-todo\" '; $wb['limit_maildomain_error_notint'] = 'El lÃmite de dominio de correo debe ser un número.'; $wb['limit_maildomain_txt'] = 'Cantidad máx. de dominios para correo'; $wb['limit_mailfetchmail_error_notint'] = 'El lÃmite de recuperadores de correo debe ser un número.'; diff --git a/interface/web/client/lib/lang/es_reseller.lng b/interface/web/client/lib/lang/es_reseller.lng index 5a94b9e803..a1de1fb7b9 100755 --- a/interface/web/client/lib/lang/es_reseller.lng +++ b/interface/web/client/lib/lang/es_reseller.lng @@ -46,7 +46,7 @@ $wb['email_error_empty'] = 'El correo electrónico está vacÃo'; $wb['email_error_isemail'] = 'Por favor ingrese una dirección de correo válida.'; $wb['email_limits_txt'] = 'LÃmites de correo'; $wb['email_txt'] = 'Correo'; -$wb['err_msg_master_tpl_set'] = 'Todas las opciones personalizadas de lÃmites serán ignoradas si se utiliza otra plantilla maestra diferente a \\"personalizada\\".'; +$wb['err_msg_master_tpl_set'] = 'Todas las opciones personalizadas de lÃmites serán ignoradas si se utiliza otra plantilla maestra diferente a \"personalizada\".'; $wb['fax_txt'] = 'Fax'; $wb['firstname_error_empty'] = 'El nombre está vacÃo.'; $wb['firstname_txt'] = 'Nombre'; @@ -97,7 +97,7 @@ $wb['limit_mailalias_txt'] = 'Cantidad máx. de alias de correo'; $wb['limit_mailaliasdomain_txt'] = 'Cantidad máx. de alias de dominio'; $wb['limit_mailbox_error_notint'] = 'El lÃmite de buzones debe ser un número.'; $wb['limit_mailbox_txt'] = 'Cantidad máx. de buzones'; -$wb['limit_mailcatchall_error_notint'] = 'El lÃmite de correos \\"recoge-todo\\" debe ser un número.'; +$wb['limit_mailcatchall_error_notint'] = 'El lÃmite de correos \"recoge-todo\" debe ser un número.'; $wb['limit_mailcatchall_txt'] = 'Cantidad máx. de receptores de correos huérfanos'; $wb['limit_maildomain_error_notint'] = 'El lÃmite de dominio de correo debe ser un número.'; $wb['limit_maildomain_txt'] = 'Cantidad máx. de dominios para correo'; diff --git a/interface/web/client/lib/lang/fi_client.lng b/interface/web/client/lib/lang/fi_client.lng index 6df30e7753..a90a3d7c2d 100755 --- a/interface/web/client/lib/lang/fi_client.lng +++ b/interface/web/client/lib/lang/fi_client.lng @@ -141,7 +141,7 @@ $wb['email_error_isemail'] = 'Please enter a valid email address.'; $wb['customer_no_error_unique'] = 'The customer no. must be unique (or empty).'; $wb['paypal_email_error_isemail'] = 'Please enter a valid PayPal email address.'; $wb['paypal_email_txt'] = 'PayPal Email'; -$wb['err_msg_master_tpl_set'] = 'All custom limit settings are ignored if any master template other than \\"custom\\" is selected.'; +$wb['err_msg_master_tpl_set'] = 'All custom limit settings are ignored if any master template other than \"custom\" is selected.'; $wb['aps_limits_txt'] = 'APS Installer Limits'; $wb['limit_aps_txt'] = 'Max. number of APS instances'; $wb['limit_aps_error_notint'] = 'The APS instances limit must be a number.'; diff --git a/interface/web/client/lib/lang/fi_reseller.lng b/interface/web/client/lib/lang/fi_reseller.lng index 58af2fdf0d..6aecc836e3 100644 --- a/interface/web/client/lib/lang/fi_reseller.lng +++ b/interface/web/client/lib/lang/fi_reseller.lng @@ -159,7 +159,7 @@ $wb['added_date_txt'] = 'Added date'; $wb['limit_domainmodule_error_notint'] = 'Domainmodule limit must be a number.'; $wb['limit_domainmodule_txt'] = 'Domainmodule Limit'; $wb['client_limits_txt'] = 'Client Limits'; -$wb['err_msg_master_tpl_set'] = 'All custom limit settings are ignored if any master template other than \\"custom\\" is selected.'; +$wb['err_msg_master_tpl_set'] = 'All custom limit settings are ignored if any master template other than \"custom\" is selected.'; $wb['btn_save_txt'] = 'Save'; $wb['btn_cancel_txt'] = 'Cancel'; $wb['email_error_empty'] = 'Email is empty'; diff --git a/interface/web/client/lib/lang/fr_client.lng b/interface/web/client/lib/lang/fr_client.lng index 61612ccbe0..f13f0d4676 100644 --- a/interface/web/client/lib/lang/fr_client.lng +++ b/interface/web/client/lib/lang/fr_client.lng @@ -139,7 +139,7 @@ $wb['email_error_isemail'] = 'Saisissez une adresse e-mail valide.'; $wb['customer_no_error_unique'] = 'Le numéro client doit être unique (ou vide).'; $wb['paypal_email_error_isemail'] = 'Saisissez un compte Paypal valide.'; $wb['paypal_email_txt'] = 'Compte Paypal'; -$wb['err_msg_master_tpl_set'] = 'Les paramètres de limites personnalisés seront ignorés si un modèle maître autre que \\"custom\\" est sélectionné.'; +$wb['err_msg_master_tpl_set'] = 'Les paramètres de limites personnalisés seront ignorés si un modèle maître autre que \"custom\" est sélectionné.'; $wb['aps_limits_txt'] = 'Nombre max d’Installeur APS'; $wb['limit_aps_txt'] = 'Nombre max d’instances APS'; $wb['limit_aps_error_notint'] = 'La limite d’instances APS doit être un nombre'; diff --git a/interface/web/client/lib/lang/fr_reseller.lng b/interface/web/client/lib/lang/fr_reseller.lng index f30fcd48c6..591e12ac35 100644 --- a/interface/web/client/lib/lang/fr_reseller.lng +++ b/interface/web/client/lib/lang/fr_reseller.lng @@ -156,7 +156,7 @@ $wb['added_date_txt'] = 'Added date'; $wb['limit_domainmodule_error_notint'] = 'Domainmodule limit must be a number.'; $wb['limit_domainmodule_txt'] = 'Domainmodule Limit'; $wb['client_limits_txt'] = 'Client Limits'; -$wb['err_msg_master_tpl_set'] = 'All custom limit settings are ignored if any master template other than \\"custom\\" is selected.'; +$wb['err_msg_master_tpl_set'] = 'All custom limit settings are ignored if any master template other than \"custom\" is selected.'; $wb['contact_firstname_txt'] = 'Contact firstname'; $wb['limit_backup_txt'] = 'Backupfunction available'; $wb['limit_client_error_positive_or_unlimited'] = 'The number of clients must be > 0 or -1 (unlimited)'; diff --git a/interface/web/client/lib/lang/hr_client.lng b/interface/web/client/lib/lang/hr_client.lng index ec5b73d940..351ad4b8b4 100644 --- a/interface/web/client/lib/lang/hr_client.lng +++ b/interface/web/client/lib/lang/hr_client.lng @@ -141,7 +141,7 @@ $wb['email_error_isemail'] = 'Unesi ispravnu email adresu.'; $wb['customer_no_error_unique'] = 'The customer no. must be unique (or empty).'; $wb['paypal_email_error_isemail'] = 'Please enter a valid PayPal email address.'; $wb['paypal_email_txt'] = 'PayPal Email'; -$wb['err_msg_master_tpl_set'] = 'All custom limit settings are ignored if any master template other than \\"custom\\" is selected.'; +$wb['err_msg_master_tpl_set'] = 'All custom limit settings are ignored if any master template other than \"custom\" is selected.'; $wb['aps_limits_txt'] = 'APS Installer Limits'; $wb['limit_aps_txt'] = 'Max. number of APS instances'; $wb['limit_aps_error_notint'] = 'The APS instances limit must be a number.'; diff --git a/interface/web/client/lib/lang/hr_reseller.lng b/interface/web/client/lib/lang/hr_reseller.lng index 9188b6861b..37e1e38356 100644 --- a/interface/web/client/lib/lang/hr_reseller.lng +++ b/interface/web/client/lib/lang/hr_reseller.lng @@ -159,7 +159,7 @@ $wb['added_date_txt'] = 'Datum dodavanja'; $wb['limit_domainmodule_error_notint'] = 'Domainmodule limit must be a number.'; $wb['limit_domainmodule_txt'] = 'Domain module Limit'; $wb['client_limits_txt'] = 'Limiti klijenata'; -$wb['err_msg_master_tpl_set'] = 'All custom limit settings are ignored if any master template other than \\"custom\\" is selected.'; +$wb['err_msg_master_tpl_set'] = 'All custom limit settings are ignored if any master template other than \"custom\" is selected.'; $wb['btn_save_txt'] = 'Save'; $wb['btn_cancel_txt'] = 'Cancel'; $wb['email_error_empty'] = 'Email is empty'; diff --git a/interface/web/client/lib/lang/hu_client.lng b/interface/web/client/lib/lang/hu_client.lng index 10993601c0..8b9cc16081 100644 --- a/interface/web/client/lib/lang/hu_client.lng +++ b/interface/web/client/lib/lang/hu_client.lng @@ -141,7 +141,7 @@ $wb['email_error_isemail'] = 'Please enter a valid email address.'; $wb['customer_no_error_unique'] = 'The customer no. must be unique (or empty).'; $wb['paypal_email_error_isemail'] = 'Please enter a valid PayPal email address.'; $wb['paypal_email_txt'] = 'PayPal Email'; -$wb['err_msg_master_tpl_set'] = 'All custom limit settings are ignored if any master template other than \\"custom\\" is selected.'; +$wb['err_msg_master_tpl_set'] = 'All custom limit settings are ignored if any master template other than \"custom\" is selected.'; $wb['aps_limits_txt'] = 'APS Installer Limits'; $wb['limit_aps_txt'] = 'Max. number of APS instances'; $wb['limit_aps_error_notint'] = 'The APS instances limit must be a number.'; diff --git a/interface/web/client/lib/lang/hu_reseller.lng b/interface/web/client/lib/lang/hu_reseller.lng index dd9290885a..2b0c15e8f0 100644 --- a/interface/web/client/lib/lang/hu_reseller.lng +++ b/interface/web/client/lib/lang/hu_reseller.lng @@ -159,7 +159,7 @@ $wb['added_date_txt'] = 'Added date'; $wb['limit_domainmodule_error_notint'] = 'Domainmodule limit must be a number.'; $wb['limit_domainmodule_txt'] = 'Domainmodule Limit'; $wb['client_limits_txt'] = 'Client Limits'; -$wb['err_msg_master_tpl_set'] = 'All custom limit settings are ignored if any master template other than \\"custom\\" is selected.'; +$wb['err_msg_master_tpl_set'] = 'All custom limit settings are ignored if any master template other than \"custom\" is selected.'; $wb['btn_save_txt'] = 'Save'; $wb['btn_cancel_txt'] = 'Cancel'; $wb['email_error_empty'] = 'Email is empty'; diff --git a/interface/web/client/lib/lang/id_client.lng b/interface/web/client/lib/lang/id_client.lng index c84e6251f4..d25230ea3d 100644 --- a/interface/web/client/lib/lang/id_client.lng +++ b/interface/web/client/lib/lang/id_client.lng @@ -141,7 +141,7 @@ $wb['email_error_isemail'] = 'Please enter a valid email address.'; $wb['customer_no_error_unique'] = 'The customer no. must be unique (or empty).'; $wb['paypal_email_error_isemail'] = 'Please enter a valid PayPal email address.'; $wb['paypal_email_txt'] = 'PayPal Email'; -$wb['err_msg_master_tpl_set'] = 'All custom limit settings are ignored if any master template other than \\"custom\\" is selected.'; +$wb['err_msg_master_tpl_set'] = 'All custom limit settings are ignored if any master template other than \"custom\" is selected.'; $wb['aps_limits_txt'] = 'APS Installer Limits'; $wb['limit_aps_txt'] = 'Max. number of APS instances'; $wb['limit_aps_error_notint'] = 'The APS instances limit must be a number.'; diff --git a/interface/web/client/lib/lang/id_reseller.lng b/interface/web/client/lib/lang/id_reseller.lng index 821a35e3cd..af91d1bb4e 100644 --- a/interface/web/client/lib/lang/id_reseller.lng +++ b/interface/web/client/lib/lang/id_reseller.lng @@ -159,7 +159,7 @@ $wb['added_date_txt'] = 'Added date'; $wb['limit_domainmodule_error_notint'] = 'Domainmodule limit must be a number.'; $wb['limit_domainmodule_txt'] = 'Domainmodule Limit'; $wb['client_limits_txt'] = 'Client Limits'; -$wb['err_msg_master_tpl_set'] = 'All custom limit settings are ignored if any master template other than \\"custom\\" is selected.'; +$wb['err_msg_master_tpl_set'] = 'All custom limit settings are ignored if any master template other than \"custom\" is selected.'; $wb['btn_save_txt'] = 'Save'; $wb['btn_cancel_txt'] = 'Cancel'; $wb['email_error_empty'] = 'Email is empty'; diff --git a/interface/web/client/lib/lang/it_client.lng b/interface/web/client/lib/lang/it_client.lng index 0f75d849d6..a361d0a887 100644 --- a/interface/web/client/lib/lang/it_client.lng +++ b/interface/web/client/lib/lang/it_client.lng @@ -139,7 +139,7 @@ $wb['email_error_isemail'] = 'Please enter a valid email address.'; $wb['customer_no_error_unique'] = 'The customer no. must be unique (or empty).'; $wb['paypal_email_error_isemail'] = 'Please enter a valid PayPal email address.'; $wb['paypal_email_txt'] = 'PayPal Email'; -$wb['err_msg_master_tpl_set'] = 'All custom limit settings are ignored if any master template other than \\"custom\\" is selected.'; +$wb['err_msg_master_tpl_set'] = 'All custom limit settings are ignored if any master template other than \"custom\" is selected.'; $wb['aps_limits_txt'] = 'APS Installer Limits'; $wb['limit_aps_txt'] = 'Max. number of APS instances'; $wb['limit_aps_error_notint'] = 'The APS instances limit must be a number.'; diff --git a/interface/web/client/lib/lang/it_reseller.lng b/interface/web/client/lib/lang/it_reseller.lng index 2cef293265..8fc49568af 100644 --- a/interface/web/client/lib/lang/it_reseller.lng +++ b/interface/web/client/lib/lang/it_reseller.lng @@ -156,7 +156,7 @@ $wb['added_date_txt'] = 'Added date'; $wb['limit_domainmodule_error_notint'] = 'Domainmodule limit must be a number.'; $wb['limit_domainmodule_txt'] = 'Domainmodule Limit'; $wb['client_limits_txt'] = 'Client Limits'; -$wb['err_msg_master_tpl_set'] = 'All custom limit settings are ignored if any master template other than \\"custom\\" is selected.'; +$wb['err_msg_master_tpl_set'] = 'All custom limit settings are ignored if any master template other than \"custom\" is selected.'; $wb['contact_firstname_txt'] = 'Contact firstname'; $wb['limit_backup_txt'] = 'Backupfunction available'; $wb['limit_client_error_positive_or_unlimited'] = 'The number of clients must be > 0 or -1 (unlimited)'; diff --git a/interface/web/client/lib/lang/ja_client.lng b/interface/web/client/lib/lang/ja_client.lng index 33aa6ab4e9..2526c02791 100644 --- a/interface/web/client/lib/lang/ja_client.lng +++ b/interface/web/client/lib/lang/ja_client.lng @@ -141,7 +141,7 @@ $wb['email_error_isemail'] = 'Please enter a valid email address.'; $wb['customer_no_error_unique'] = 'The customer no. must be unique (or empty).'; $wb['paypal_email_error_isemail'] = 'Please enter a valid PayPal email address.'; $wb['paypal_email_txt'] = 'PayPal Email'; -$wb['err_msg_master_tpl_set'] = 'All custom limit settings are ignored if any master template other than \\"custom\\" is selected.'; +$wb['err_msg_master_tpl_set'] = 'All custom limit settings are ignored if any master template other than \"custom\" is selected.'; $wb['aps_limits_txt'] = 'APS Installer Limits'; $wb['limit_aps_txt'] = 'Max. number of APS instances'; $wb['limit_aps_error_notint'] = 'The APS instances limit must be a number.'; diff --git a/interface/web/client/lib/lang/ja_reseller.lng b/interface/web/client/lib/lang/ja_reseller.lng index 7edf836f39..66200eccbe 100644 --- a/interface/web/client/lib/lang/ja_reseller.lng +++ b/interface/web/client/lib/lang/ja_reseller.lng @@ -159,7 +159,7 @@ $wb['added_date_txt'] = 'Added date'; $wb['limit_domainmodule_error_notint'] = 'Domainmodule limit must be a number.'; $wb['limit_domainmodule_txt'] = 'Domainmodule Limit'; $wb['client_limits_txt'] = 'Client Limits'; -$wb['err_msg_master_tpl_set'] = 'All custom limit settings are ignored if any master template other than \\"custom\\" is selected.'; +$wb['err_msg_master_tpl_set'] = 'All custom limit settings are ignored if any master template other than \"custom\" is selected.'; $wb['btn_save_txt'] = 'Save'; $wb['btn_cancel_txt'] = 'Cancel'; $wb['email_error_empty'] = 'Email is empty'; diff --git a/interface/web/client/lib/lang/nl_client.lng b/interface/web/client/lib/lang/nl_client.lng index 188a37f4fd..8e0092f255 100644 --- a/interface/web/client/lib/lang/nl_client.lng +++ b/interface/web/client/lib/lang/nl_client.lng @@ -142,7 +142,7 @@ $wb['email_error_isemail'] = 'Please enter a valid email address.'; $wb['customer_no_error_unique'] = 'The customer no. must be unique (or empty).'; $wb['paypal_email_error_isemail'] = 'Please enter a valid PayPal email address.'; $wb['paypal_email_txt'] = 'PayPal Email'; -$wb['err_msg_master_tpl_set'] = 'All custom limit settings are ignored if any master template other than \\"custom\\" is selected.'; +$wb['err_msg_master_tpl_set'] = 'All custom limit settings are ignored if any master template other than \"custom\" is selected.'; $wb['aps_limits_txt'] = 'APS Installer Limits'; $wb['limit_aps_txt'] = 'Max. number of APS instances'; $wb['limit_aps_error_notint'] = 'The APS instances limit must be a number.'; diff --git a/interface/web/client/lib/lang/nl_reseller.lng b/interface/web/client/lib/lang/nl_reseller.lng index 9953880bec..9cdb1856fe 100644 --- a/interface/web/client/lib/lang/nl_reseller.lng +++ b/interface/web/client/lib/lang/nl_reseller.lng @@ -160,7 +160,7 @@ $wb['added_date_txt'] = 'Added date'; $wb['limit_domainmodule_error_notint'] = 'Domainmodule limit must be a number.'; $wb['limit_domainmodule_txt'] = 'Domainmodule Limit'; $wb['client_limits_txt'] = 'Client Limits'; -$wb['err_msg_master_tpl_set'] = 'All custom limit settings are ignored if any master template other than \\"custom\\" is selected.'; +$wb['err_msg_master_tpl_set'] = 'All custom limit settings are ignored if any master template other than \"custom\" is selected.'; $wb['btn_save_txt'] = 'Save'; $wb['btn_cancel_txt'] = 'Cancel'; $wb['email_error_empty'] = 'Email is empty'; diff --git a/interface/web/client/lib/lang/pl_reseller.lng b/interface/web/client/lib/lang/pl_reseller.lng index 9b2cf58f75..69b30fe2a3 100644 --- a/interface/web/client/lib/lang/pl_reseller.lng +++ b/interface/web/client/lib/lang/pl_reseller.lng @@ -159,7 +159,7 @@ $wb['added_date_txt'] = 'Added date'; $wb['limit_domainmodule_error_notint'] = 'Domainmodule limit must be a number.'; $wb['limit_domainmodule_txt'] = 'Domainmodule Limit'; $wb['client_limits_txt'] = 'Client Limits'; -$wb['err_msg_master_tpl_set'] = 'All custom limit settings are ignored if any master template other than \\"custom\\" is selected.'; +$wb['err_msg_master_tpl_set'] = 'All custom limit settings are ignored if any master template other than \"custom\" is selected.'; $wb['btn_save_txt'] = 'Save'; $wb['btn_cancel_txt'] = 'Cancel'; $wb['email_error_empty'] = 'Email is empty'; diff --git a/interface/web/client/lib/lang/pt_client.lng b/interface/web/client/lib/lang/pt_client.lng index ae3e45b24d..b05e14dfe7 100644 --- a/interface/web/client/lib/lang/pt_client.lng +++ b/interface/web/client/lib/lang/pt_client.lng @@ -141,7 +141,7 @@ $wb['email_error_isemail'] = 'Please enter a valid email address.'; $wb['customer_no_error_unique'] = 'The customer no. must be unique (or empty).'; $wb['paypal_email_error_isemail'] = 'Please enter a valid PayPal email address.'; $wb['paypal_email_txt'] = 'PayPal Email'; -$wb['err_msg_master_tpl_set'] = 'All custom limit settings are ignored if any master template other than \\"custom\\" is selected.'; +$wb['err_msg_master_tpl_set'] = 'All custom limit settings are ignored if any master template other than \"custom\" is selected.'; $wb['aps_limits_txt'] = 'APS Installer Limits'; $wb['limit_aps_txt'] = 'Max. number of APS instances'; $wb['limit_aps_error_notint'] = 'The APS instances limit must be a number.'; diff --git a/interface/web/client/lib/lang/pt_reseller.lng b/interface/web/client/lib/lang/pt_reseller.lng index e021cd2511..ae3eddd8b0 100644 --- a/interface/web/client/lib/lang/pt_reseller.lng +++ b/interface/web/client/lib/lang/pt_reseller.lng @@ -159,7 +159,7 @@ $wb['added_date_txt'] = 'Added date'; $wb['limit_domainmodule_error_notint'] = 'Domainmodule limit must be a number.'; $wb['limit_domainmodule_txt'] = 'Domainmodule Limit'; $wb['client_limits_txt'] = 'Client Limits'; -$wb['err_msg_master_tpl_set'] = 'All custom limit settings are ignored if any master template other than \\"custom\\" is selected.'; +$wb['err_msg_master_tpl_set'] = 'All custom limit settings are ignored if any master template other than \"custom\" is selected.'; $wb['btn_save_txt'] = 'Save'; $wb['btn_cancel_txt'] = 'Cancel'; $wb['email_error_empty'] = 'Email is empty'; diff --git a/interface/web/client/lib/lang/ro_client.lng b/interface/web/client/lib/lang/ro_client.lng index 034c4d0e44..bc0ad4316e 100644 --- a/interface/web/client/lib/lang/ro_client.lng +++ b/interface/web/client/lib/lang/ro_client.lng @@ -141,7 +141,7 @@ $wb['email_error_isemail'] = 'Please enter a valid email address.'; $wb['customer_no_error_unique'] = 'The customer no. must be unique (or empty).'; $wb['paypal_email_error_isemail'] = 'Please enter a valid PayPal email address.'; $wb['paypal_email_txt'] = 'PayPal Email'; -$wb['err_msg_master_tpl_set'] = 'All custom limit settings are ignored if any master template other than \\"custom\\" is selected.'; +$wb['err_msg_master_tpl_set'] = 'All custom limit settings are ignored if any master template other than \"custom\" is selected.'; $wb['aps_limits_txt'] = 'APS Installer Limits'; $wb['limit_aps_txt'] = 'Max. number of APS instances'; $wb['limit_aps_error_notint'] = 'The APS instances limit must be a number.'; diff --git a/interface/web/client/lib/lang/ro_reseller.lng b/interface/web/client/lib/lang/ro_reseller.lng index 68e8a950f3..553abe0aee 100644 --- a/interface/web/client/lib/lang/ro_reseller.lng +++ b/interface/web/client/lib/lang/ro_reseller.lng @@ -159,7 +159,7 @@ $wb['added_date_txt'] = 'Added date'; $wb['limit_domainmodule_error_notint'] = 'Domainmodule limit must be a number.'; $wb['limit_domainmodule_txt'] = 'Domainmodule Limit'; $wb['client_limits_txt'] = 'Client Limits'; -$wb['err_msg_master_tpl_set'] = 'All custom limit settings are ignored if any master template other than \\"custom\\" is selected.'; +$wb['err_msg_master_tpl_set'] = 'All custom limit settings are ignored if any master template other than \"custom\" is selected.'; $wb['btn_save_txt'] = 'Save'; $wb['btn_cancel_txt'] = 'Cancel'; $wb['email_error_empty'] = 'Email is empty'; diff --git a/interface/web/client/lib/lang/ru_client.lng b/interface/web/client/lib/lang/ru_client.lng index befd6b15bf..a37d4673a1 100644 --- a/interface/web/client/lib/lang/ru_client.lng +++ b/interface/web/client/lib/lang/ru_client.lng @@ -108,7 +108,7 @@ $wb['limit_openvz_vm_template_id_txt'] = 'Принудительный шабл $wb['limit_openvz_vm_error_notint'] = 'Лимит виртуальных Ñерверов должен быть чиÑлом.'; $wb['web_php_options_notempty'] = 'Ðет выбранных параметров PHP. Выберите по крайней мере один параметр PHP.'; $wb['ssh_chroot_notempty'] = 'Ðе выбран параметр SSH-Chroot. Выберите по крайней мере один параметр SSH-Chroot.'; -$wb['username_error_collision'] = 'Ð˜Ð¼Ñ Ð¿Ð¾Ð»ÑŒÐ·Ð¾Ð²Ð°Ñ‚ÐµÐ»Ñ Ð½Ðµ может начинатьÑÑ Ñо Ñлова \\"web\\" или \\"web\\" Ð¿Ð»ÑŽÑ Ñ‡Ð¸Ñло.'; +$wb['username_error_collision'] = 'Ð˜Ð¼Ñ Ð¿Ð¾Ð»ÑŒÐ·Ð¾Ð²Ð°Ñ‚ÐµÐ»Ñ Ð½Ðµ может начинатьÑÑ Ñо Ñлова \"web\" или \"web\" Ð¿Ð»ÑŽÑ Ñ‡Ð¸Ñло.'; $wb['add_additional_template_txt'] = 'Добавить дополнительный шаблон'; $wb['delete_additional_template_txt'] = 'Удалить дополнительный шаблон'; $wb['limit_cgi_txt'] = 'CGI доÑтупен'; @@ -141,7 +141,7 @@ $wb['email_error_isemail'] = 'Ðекорректный почтовый адре $wb['customer_no_error_unique'] = 'Счётчик номера Клиента должен быть уникален (или отÑутÑтвует).'; $wb['paypal_email_error_isemail'] = 'ПожалуйÑта, введите дейÑтвующий Ð°Ð´Ñ€ÐµÑ Ñлектронной почты PayPal.'; $wb['paypal_email_txt'] = 'ÐÐ´Ñ€ÐµÑ Ñлектронной почты PayPal'; -$wb['err_msg_master_tpl_set'] = 'ЗначениÑ, уÑтановленные здеÑÑŒ игнорируютÑÑ, еÑли не выбран в качеÑтве главного шаблона \\"Custom\\"!'; +$wb['err_msg_master_tpl_set'] = 'ЗначениÑ, уÑтановленные здеÑÑŒ игнорируютÑÑ, еÑли не выбран в качеÑтве главного шаблона \"Custom\"!'; $wb['aps_limits_txt'] = 'Лимиты УÑтановщика APS'; $wb['limit_aps_txt'] = 'МакÑ. количеÑтво ÑкземплÑров APS'; $wb['limit_aps_error_notint'] = 'Лимит ÑкземплÑров APS должен быть чиÑлом.'; diff --git a/interface/web/client/lib/lang/ru_reseller.lng b/interface/web/client/lib/lang/ru_reseller.lng index 998a886990..4a177cccc8 100644 --- a/interface/web/client/lib/lang/ru_reseller.lng +++ b/interface/web/client/lib/lang/ru_reseller.lng @@ -108,7 +108,7 @@ $wb['limit_openvz_vm_template_id_txt'] = 'Принудительный шабл $wb['limit_openvz_vm_error_notint'] = 'Лимит виртуальных Ñерверов должен быть чиÑлом.'; $wb['web_php_options_notempty'] = 'Ðет выбранных параметров PHP. Выберите по крайней мере один параметр PHP.'; $wb['ssh_chroot_notempty'] = 'Ðе выбран параметр SSH-Chroot. Выберите по крайней мере один параметр SSH-Chroot.'; -$wb['username_error_collision'] = 'Ð˜Ð¼Ñ Ð¿Ð¾Ð»ÑŒÐ·Ð¾Ð²Ð°Ñ‚ÐµÐ»Ñ Ð½Ðµ может начинатьÑÑ Ñо Ñлова \\"web\\" или \\"web\\" Ð¿Ð»ÑŽÑ Ñ‡Ð¸Ñло.'; +$wb['username_error_collision'] = 'Ð˜Ð¼Ñ Ð¿Ð¾Ð»ÑŒÐ·Ð¾Ð²Ð°Ñ‚ÐµÐ»Ñ Ð½Ðµ может начинатьÑÑ Ñо Ñлова \"web\" или \"web\" Ð¿Ð»ÑŽÑ Ñ‡Ð¸Ñло.'; $wb['add_additional_template_txt'] = 'Добавить дополнительный шаблон'; $wb['delete_additional_template_txt'] = 'Удалить дополнительный шаблон'; $wb['limit_cgi_txt'] = 'CGI доÑтупен'; @@ -159,7 +159,7 @@ $wb['added_date_txt'] = 'Дата добавлениÑ'; $wb['limit_domainmodule_error_notint'] = 'Лимит модулей домена должен быть чиÑлом.'; $wb['limit_domainmodule_txt'] = 'Лимит модулей домена'; $wb['client_limits_txt'] = 'Лимиты Клиента'; -$wb['err_msg_master_tpl_set'] = 'ЗначениÑ, уÑтановленные здеÑÑŒ игнорируютÑÑ, еÑли не выбран в качеÑтве главного шаблона \\"Custom\\"!'; +$wb['err_msg_master_tpl_set'] = 'ЗначениÑ, уÑтановленные здеÑÑŒ игнорируютÑÑ, еÑли не выбран в качеÑтве главного шаблона \"Custom\"!'; $wb['btn_save_txt'] = 'Сохранить'; $wb['btn_cancel_txt'] = 'Отменить'; $wb['email_error_empty'] = 'ÐÐ´Ñ€ÐµÑ Ñл. почты пуÑтой'; diff --git a/interface/web/client/lib/lang/se_client.lng b/interface/web/client/lib/lang/se_client.lng index 2884302c18..5232e95f55 100644 --- a/interface/web/client/lib/lang/se_client.lng +++ b/interface/web/client/lib/lang/se_client.lng @@ -141,7 +141,7 @@ $wb['email_error_isemail'] = 'Vänligen ange en giltig epostadress'; $wb['customer_no_error_unique'] = 'The customer no. must be unique (or empty).'; $wb['paypal_email_error_isemail'] = 'Please enter a valid PayPal email address.'; $wb['paypal_email_txt'] = 'PayPal epostadress'; -$wb['err_msg_master_tpl_set'] = 'All custom limit settings are ignored if any master template other than \\"custom\\" is selected.'; +$wb['err_msg_master_tpl_set'] = 'All custom limit settings are ignored if any master template other than \"custom\" is selected.'; $wb['aps_limits_txt'] = 'APS Installer Limits'; $wb['limit_aps_txt'] = 'Max. number of APS instances'; $wb['limit_aps_error_notint'] = 'The APS instances limit must be a number.'; diff --git a/interface/web/client/lib/lang/se_reseller.lng b/interface/web/client/lib/lang/se_reseller.lng index 68e8a950f3..553abe0aee 100644 --- a/interface/web/client/lib/lang/se_reseller.lng +++ b/interface/web/client/lib/lang/se_reseller.lng @@ -159,7 +159,7 @@ $wb['added_date_txt'] = 'Added date'; $wb['limit_domainmodule_error_notint'] = 'Domainmodule limit must be a number.'; $wb['limit_domainmodule_txt'] = 'Domainmodule Limit'; $wb['client_limits_txt'] = 'Client Limits'; -$wb['err_msg_master_tpl_set'] = 'All custom limit settings are ignored if any master template other than \\"custom\\" is selected.'; +$wb['err_msg_master_tpl_set'] = 'All custom limit settings are ignored if any master template other than \"custom\" is selected.'; $wb['btn_save_txt'] = 'Save'; $wb['btn_cancel_txt'] = 'Cancel'; $wb['email_error_empty'] = 'Email is empty'; diff --git a/interface/web/client/lib/lang/sk_client.lng b/interface/web/client/lib/lang/sk_client.lng index 3edec417cf..6fff6bf3f0 100644 --- a/interface/web/client/lib/lang/sk_client.lng +++ b/interface/web/client/lib/lang/sk_client.lng @@ -141,7 +141,7 @@ $wb['email_error_isemail'] = 'Please enter a valid email address.'; $wb['customer_no_error_unique'] = 'The customer no. must be unique (or empty).'; $wb['paypal_email_error_isemail'] = 'Please enter a valid PayPal email address.'; $wb['paypal_email_txt'] = 'PayPal Email'; -$wb['err_msg_master_tpl_set'] = 'All custom limit settings are ignored if any master template other than \\"custom\\" is selected.'; +$wb['err_msg_master_tpl_set'] = 'All custom limit settings are ignored if any master template other than \"custom\" is selected.'; $wb['aps_limits_txt'] = 'APS Installer Limits'; $wb['limit_aps_txt'] = 'Max. number of APS instances'; $wb['limit_aps_error_notint'] = 'The APS instances limit must be a number.'; diff --git a/interface/web/client/lib/lang/sk_reseller.lng b/interface/web/client/lib/lang/sk_reseller.lng index 4ae3ef5b97..34643c55b8 100644 --- a/interface/web/client/lib/lang/sk_reseller.lng +++ b/interface/web/client/lib/lang/sk_reseller.lng @@ -159,7 +159,7 @@ $wb['added_date_txt'] = 'Added date'; $wb['limit_domainmodule_error_notint'] = 'Domainmodule limit must be a number.'; $wb['limit_domainmodule_txt'] = 'Domainmodule Limit'; $wb['client_limits_txt'] = 'Client Limits'; -$wb['err_msg_master_tpl_set'] = 'All custom limit settings are ignored if any master template other than \\"custom\\" is selected.'; +$wb['err_msg_master_tpl_set'] = 'All custom limit settings are ignored if any master template other than \"custom\" is selected.'; $wb['btn_save_txt'] = 'Save'; $wb['btn_cancel_txt'] = 'Cancel'; $wb['email_error_empty'] = 'Email is empty'; diff --git a/interface/web/client/lib/lang/tr_client.lng b/interface/web/client/lib/lang/tr_client.lng index 765d9f1980..359095534a 100644 --- a/interface/web/client/lib/lang/tr_client.lng +++ b/interface/web/client/lib/lang/tr_client.lng @@ -139,7 +139,7 @@ $wb['email_error_isemail'] = 'Lütfen geçerli bir e-posta adresi yazın.'; $wb['customer_no_error_unique'] = 'Müşteri numarası eÅŸsiz (ya da boÅŸ) olmalıdır.'; $wb['paypal_email_error_isemail'] = 'Lütfen geçerli bir PayPal e-posta adresi yazın.'; $wb['paypal_email_txt'] = 'PayPal E-posta Adresi'; -$wb['err_msg_master_tpl_set'] = '\\"Özel\\" kalıptan baÅŸka bir ana kalıp seçilirse, tüm özel sınırlama ayarları yoksayılır.'; +$wb['err_msg_master_tpl_set'] = '\"Özel\" kalıptan baÅŸka bir ana kalıp seçilirse, tüm özel sınırlama ayarları yoksayılır.'; $wb['aps_limits_txt'] = 'APS Yükleyici Sınırları'; $wb['limit_aps_txt'] = 'En Fazla APS Kopyası Sayısı'; $wb['limit_aps_error_notint'] = 'APS kopya sayısı sınırı bir sayı olmalıdır.'; diff --git a/interface/web/client/lib/lang/tr_reseller.lng b/interface/web/client/lib/lang/tr_reseller.lng index 4906a894c0..5e2a37e268 100644 --- a/interface/web/client/lib/lang/tr_reseller.lng +++ b/interface/web/client/lib/lang/tr_reseller.lng @@ -156,7 +156,7 @@ $wb['added_date_txt'] = 'EklendiÄŸi Tarih'; $wb['limit_domainmodule_error_notint'] = 'Alan adı modülü sınırı bir sayı olmalıdır.'; $wb['limit_domainmodule_txt'] = 'Alan Adı Modülü Sınırı'; $wb['client_limits_txt'] = 'Müşteri Sınırları'; -$wb['err_msg_master_tpl_set'] = '\\"Özel\\" kalıptan baÅŸka bir ana kalıp seçilirse, tüm özel sınırlama ayarları yoksayılır.'; +$wb['err_msg_master_tpl_set'] = '\"Özel\" kalıptan baÅŸka bir ana kalıp seçilirse, tüm özel sınırlama ayarları yoksayılır.'; $wb['contact_firstname_txt'] = 'Contact firstname'; $wb['password_click_to_set_txt'] = 'Click to set'; $wb['limit_database_user_txt'] = 'Max. Database users'; diff --git a/interface/web/dashboard/lib/lang/es_dashlet_limits.lng b/interface/web/dashboard/lib/lang/es_dashlet_limits.lng index da6cd6b513..0f819f2a9d 100755 --- a/interface/web/dashboard/lib/lang/es_dashlet_limits.lng +++ b/interface/web/dashboard/lib/lang/es_dashlet_limits.lng @@ -11,7 +11,7 @@ $wb['limit_ftp_user_txt'] = 'Cantidad de usuarios FTP'; $wb['limit_mailalias_txt'] = 'Cantidad de alias de correos'; $wb['limit_mailaliasdomain_txt'] = 'Cantidad de alias de dominios'; $wb['limit_mailbox_txt'] = 'Cantidad de buzones'; -$wb['limit_mailcatchall_txt'] = 'Cantidad de cuentas de correo \\"recoge-todo\\"'; +$wb['limit_mailcatchall_txt'] = 'Cantidad de cuentas de correo \"recoge-todo\"'; $wb['limit_maildomain_txt'] = 'Cantidad de dominios para correo'; $wb['limit_mailfilter_txt'] = 'Cantidad de filtros de correo'; $wb['limit_mailforward_txt'] = 'Cantidad de reenviadores de correos'; diff --git a/interface/web/dns/lib/lang/br_dns_dmarc.lng b/interface/web/dns/lib/lang/br_dns_dmarc.lng index 8bb35318f8..5b7201075f 100644 --- a/interface/web/dns/lib/lang/br_dns_dmarc.lng +++ b/interface/web/dns/lib/lang/br_dns_dmarc.lng @@ -2,7 +2,7 @@ $wb['data_txt'] = 'Registro DMARC'; $wb['domain_txt'] = 'DomÃnio'; $wb['dmarc_policy_txt'] = 'PolÃtica de recepção de e-mails'; -$wb['dmarc_policy_note_txt'] = 'Como os \\"ISPs\\" devem tratar as mensagens SPF ou DKIM com falha (DMARC).'; +$wb['dmarc_policy_note_txt'] = 'Como os \"ISPs\" devem tratar as mensagens SPF ou DKIM com falha (DMARC).'; $wb['dmarc_policy_none_txt'] = 'não fazer nada'; $wb['dmarc_policy_quarantine_txt'] = 'quarentena'; $wb['dmarc_policy_reject_txt'] = 'rejeitar'; @@ -11,16 +11,16 @@ $wb['dmarc_rua_note_txt'] = 'Endereços de e-mail para receber relatórios do si $wb['dmarc_ruf_txt'] = 'Relatório forense de dados por endereço'; $wb['dmarc_ruf_note_txt'] = 'Endereços de e-mail para receber amostras de mensagens com falha e controles DMARC do domÃnio (separados por espaço em branco)'; $wb['dmarc_fo_txt'] = 'Opções de relatório forense'; -$wb['dmarc_fo0_txt'] = 'Gerar relatórios se todos os mecanismos de autenticação subjacentes deixarem de produzir um resultado DMARC \\"pass\\".'; +$wb['dmarc_fo0_txt'] = 'Gerar relatórios se todos os mecanismos de autenticação subjacentes deixarem de produzir um resultado DMARC \"pass\".'; $wb['dmarc_fo1_txt'] = 'Gerar relatório se algum mecanismo falhar.'; $wb['dmarc_fod_txt'] = 'Gerar relatório se assinatura DKIM falhar na verificação.'; $wb['dmarc_fos_txt'] = 'Gerar relatório se o SPF falhar.'; $wb['dmarc_adkim_txt'] = 'Parametrização do identificador DKIM'; -$wb['dmarc_adkim_note_txt'] = 'Modo \\"strict\\" exige combinação exata entre o DKIM do domÃnio e e-mails'; +$wb['dmarc_adkim_note_txt'] = 'Modo \"strict\" exige combinação exata entre o DKIM do domÃnio e e-mails'; $wb['dmarc_adkim_r_txt'] = 'relaxed'; $wb['dmarc_adkim_s_txt'] = 'strict'; $wb['dmarc_aspf_txt'] = 'Parametrização do identificador SPF'; -$wb['dmarc_aspf_note_txt'] = 'Modo \\"strict\\" exige combinação exata entre o SPF do domÃnio e e-mails'; +$wb['dmarc_aspf_note_txt'] = 'Modo \"strict\" exige combinação exata entre o SPF do domÃnio e e-mails'; $wb['dmarc_aspf_r_txt'] = 'relaxed'; $wb['dmarc_aspf_s_txt'] = 'strict'; $wb['dmarc_rf_txt'] = 'Formatação do relatório'; @@ -37,7 +37,7 @@ $wb['dmarc_sp_quarantine_txt'] = 'quarentena'; $wb['dmarc_sp_reject_txt'] = 'rejeitar'; $wb['ttl_txt'] = 'TTL'; $wb['active_txt'] = 'Ativo'; -$wb['dmarc_policy_error_txt'] = 'Somente a polÃtica \\"nenhum\\" é permitida para e-mails sem assinatura DKIM.'; +$wb['dmarc_policy_error_txt'] = 'Somente a polÃtica \"nenhum\" é permitida para e-mails sem assinatura DKIM.'; $wb['dmarc_no_dkim_txt'] = 'Nenhum registro DKIM ativo.'; $wb['dmarc_no_spf_txt'] = 'Nenhum registro SPF ativo.'; $wb['dmarc_more_spf_txt'] = 'Mais de um registro SPF ativo.'; diff --git a/interface/web/dns/lib/lang/br_dns_tlsa.lng b/interface/web/dns/lib/lang/br_dns_tlsa.lng index 5e1bf2256e..c78c6fd190 100644 --- a/interface/web/dns/lib/lang/br_dns_tlsa.lng +++ b/interface/web/dns/lib/lang/br_dns_tlsa.lng @@ -9,8 +9,8 @@ $wb['active_txt'] = 'Ativo'; $wb['limit_dns_record_txt'] = 'O limite de registros dns para esta conta foi alcançado.'; $wb['no_zone_perm'] = 'Você não tem permissão para adicionar registros a esta zona dns.'; $wb['name_error_empty'] = 'Descritor de serviço está em branco.'; -$wb['name_error_regex'] = 'Descritor de serviço é inválido. Formato correto: \\"_<port>._(tcp|udp).<hostname>\\".'; +$wb['name_error_regex'] = 'Descritor de serviço é inválido. Formato correto: \"_<port>._(tcp|udp).<hostname>\".'; $wb['data_error_empty'] = 'Dados TLSA está em branco.'; -$wb['data_error_regex'] = 'Dados TLSA são inválidos. Formato correto: \\"n n n HASH\\".'; +$wb['data_error_regex'] = 'Dados TLSA são inválidos. Formato correto: \"n n n HASH\".'; $wb['ttl_range_error'] = 'O ttl mÃnimo são 60 segundos.'; ?> diff --git a/interface/web/dns/lib/lang/ru_dns_hinfo.lng b/interface/web/dns/lib/lang/ru_dns_hinfo.lng index 363ed0eef5..830576fdf6 100644 --- a/interface/web/dns/lib/lang/ru_dns_hinfo.lng +++ b/interface/web/dns/lib/lang/ru_dns_hinfo.lng @@ -11,6 +11,6 @@ $wb['no_zone_perm'] = 'У Ð’Ð°Ñ Ð½ÐµÑ‚ прав добавлÑÑ‚ÑŒ Ñту за $wb['name_error_empty'] = 'Ð˜Ð¼Ñ Ð¿ÑƒÑтое.'; $wb['name_error_regex'] = 'Ð˜Ð¼Ñ ÑƒÐ·Ð»Ð° имеет неправильный формат.'; $wb['data_error_empty'] = 'Ð˜Ð½Ñ„Ð¾Ñ€Ð¼Ð°Ñ†Ð¸Ñ Ð¾Ð± узле отÑутÑвует'; -$wb['data_error_regex'] = 'Поле \\"Ð˜Ð½Ñ„Ð¾Ñ€Ð¼Ð°Ñ†Ð¸Ñ Ð¾ хоÑте\\" имеет неправильный формат'; +$wb['data_error_regex'] = 'Поле \"Ð˜Ð½Ñ„Ð¾Ñ€Ð¼Ð°Ñ†Ð¸Ñ Ð¾ хоÑте\" имеет неправильный формат'; $wb['ttl_range_error'] = 'Мин. Ð²Ñ€ÐµÐ¼Ñ <b>TTL</b> 60 Ñекунд.'; ?> diff --git a/interface/web/help/lib/lang/br_support_message.lng b/interface/web/help/lib/lang/br_support_message.lng index 19ae309a1f..83097915bf 100644 --- a/interface/web/help/lib/lang/br_support_message.lng +++ b/interface/web/help/lib/lang/br_support_message.lng @@ -12,5 +12,5 @@ $wb['answer_to_support_request_txt'] = 'Você tem uma nova resposta para requisi $wb['answer_to_support_request_sent_txt'] = 'Sua resposta para requisição de suporte foi enviada. Por favor, não responda esse e-mail.'; $wb['support_request_sent_txt'] = 'Sua requisição de suporte foi enviada. Por favor não responda este e-mail.'; $wb['recipient_or_sender_email_address_not_valid_txt'] = 'A mensagem não foi enviada porque o e-mail do destinatário e/ou remetente não é válido.'; -$wb['subject_is_empty'] = 'Não é permitido o campo \\"Assunto\\" em branco.'; +$wb['subject_is_empty'] = 'Não é permitido o campo \"Assunto\" em branco.'; ?> diff --git a/interface/web/login/lib/lang/ar_login_as.lng b/interface/web/login/lib/lang/ar_login_as.lng index cf75b54b47..68cb3318e5 100644 --- a/interface/web/login/lib/lang/ar_login_as.lng +++ b/interface/web/login/lib/lang/ar_login_as.lng @@ -1,12 +1,12 @@ <?php $wb['login_1_txt'] = 'Do you want to login as user'; -$wb['login_2_txt'] = 'If you do so, you can \\"go back\\" by clicking at logout.'; +$wb['login_2_txt'] = 'If you do so, you can \"go back\" by clicking at logout.'; $wb['btn_yes_txt'] = 'Yes, login as Client'; $wb['btn_back_txt'] = 'No, back to list'; $wb['udp_port_help_txt'] = 'Separated by comma'; $wb['active_txt'] = 'Active'; $wb['firewall_error_unique'] = 'There is already a firewall record for this server.'; -$wb['tcp_ports_error_regex'] = 'Character not allowed in tcp port definition. Allowed characters are numbers, \\":\\" and \\",\\".'; -$wb['udp_ports_error_regex'] = 'Character not allowed in udp port definition. Allowed characters are numbers, \\":\\" and \\",\\".'; +$wb['tcp_ports_error_regex'] = 'Character not allowed in tcp port definition. Allowed characters are numbers, \":\" and \",\".'; +$wb['udp_ports_error_regex'] = 'Character not allowed in udp port definition. Allowed characters are numbers, \":\" and \",\".'; $wb['login_as_or_logout_txt'] = 'Do you want to re-login as {UTYPE} or logout?'; ?> diff --git a/interface/web/login/lib/lang/bg_login_as.lng b/interface/web/login/lib/lang/bg_login_as.lng index cf75b54b47..68cb3318e5 100644 --- a/interface/web/login/lib/lang/bg_login_as.lng +++ b/interface/web/login/lib/lang/bg_login_as.lng @@ -1,12 +1,12 @@ <?php $wb['login_1_txt'] = 'Do you want to login as user'; -$wb['login_2_txt'] = 'If you do so, you can \\"go back\\" by clicking at logout.'; +$wb['login_2_txt'] = 'If you do so, you can \"go back\" by clicking at logout.'; $wb['btn_yes_txt'] = 'Yes, login as Client'; $wb['btn_back_txt'] = 'No, back to list'; $wb['udp_port_help_txt'] = 'Separated by comma'; $wb['active_txt'] = 'Active'; $wb['firewall_error_unique'] = 'There is already a firewall record for this server.'; -$wb['tcp_ports_error_regex'] = 'Character not allowed in tcp port definition. Allowed characters are numbers, \\":\\" and \\",\\".'; -$wb['udp_ports_error_regex'] = 'Character not allowed in udp port definition. Allowed characters are numbers, \\":\\" and \\",\\".'; +$wb['tcp_ports_error_regex'] = 'Character not allowed in tcp port definition. Allowed characters are numbers, \":\" and \",\".'; +$wb['udp_ports_error_regex'] = 'Character not allowed in udp port definition. Allowed characters are numbers, \":\" and \",\".'; $wb['login_as_or_logout_txt'] = 'Do you want to re-login as {UTYPE} or logout?'; ?> diff --git a/interface/web/login/lib/lang/br_login_as.lng b/interface/web/login/lib/lang/br_login_as.lng index 5d9fb269b9..4c02c963c2 100644 --- a/interface/web/login/lib/lang/br_login_as.lng +++ b/interface/web/login/lib/lang/br_login_as.lng @@ -1,6 +1,6 @@ <?php $wb['login_1_txt'] = 'Você deseja acessar como usuário'; -$wb['login_2_txt'] = 'Para retornar ao administrador, você pode \\"voltar\\" selecionando sair.'; +$wb['login_2_txt'] = 'Para retornar ao administrador, você pode \"voltar\" selecionando sair.'; $wb['btn_yes_txt'] = 'Sim, acessar como cliente'; $wb['btn_back_txt'] = 'Não, voltar a lista'; $wb['udp_port_help_txt'] = 'Separado por vÃrgula'; diff --git a/interface/web/login/lib/lang/ca_login_as.lng b/interface/web/login/lib/lang/ca_login_as.lng index cf75b54b47..68cb3318e5 100644 --- a/interface/web/login/lib/lang/ca_login_as.lng +++ b/interface/web/login/lib/lang/ca_login_as.lng @@ -1,12 +1,12 @@ <?php $wb['login_1_txt'] = 'Do you want to login as user'; -$wb['login_2_txt'] = 'If you do so, you can \\"go back\\" by clicking at logout.'; +$wb['login_2_txt'] = 'If you do so, you can \"go back\" by clicking at logout.'; $wb['btn_yes_txt'] = 'Yes, login as Client'; $wb['btn_back_txt'] = 'No, back to list'; $wb['udp_port_help_txt'] = 'Separated by comma'; $wb['active_txt'] = 'Active'; $wb['firewall_error_unique'] = 'There is already a firewall record for this server.'; -$wb['tcp_ports_error_regex'] = 'Character not allowed in tcp port definition. Allowed characters are numbers, \\":\\" and \\",\\".'; -$wb['udp_ports_error_regex'] = 'Character not allowed in udp port definition. Allowed characters are numbers, \\":\\" and \\",\\".'; +$wb['tcp_ports_error_regex'] = 'Character not allowed in tcp port definition. Allowed characters are numbers, \":\" and \",\".'; +$wb['udp_ports_error_regex'] = 'Character not allowed in udp port definition. Allowed characters are numbers, \":\" and \",\".'; $wb['login_as_or_logout_txt'] = 'Do you want to re-login as {UTYPE} or logout?'; ?> diff --git a/interface/web/login/lib/lang/dk_login_as.lng b/interface/web/login/lib/lang/dk_login_as.lng index bebcf165a7..a75ea7262a 100644 --- a/interface/web/login/lib/lang/dk_login_as.lng +++ b/interface/web/login/lib/lang/dk_login_as.lng @@ -1,12 +1,12 @@ <?php $wb['login_1_txt'] = 'Vil du logge ind som bruger'; -$wb['login_2_txt'] = 'Hvis du gør det, kan du \\"GÃ¥ tilbage\\" ved at klikke pÃ¥ logout.'; +$wb['login_2_txt'] = 'Hvis du gør det, kan du \"GÃ¥ tilbage\" ved at klikke pÃ¥ logout.'; $wb['btn_yes_txt'] = 'Ja, log ind som Kunde'; $wb['btn_back_txt'] = 'Nej, tilbage til listen'; $wb['udp_port_help_txt'] = 'Adskilt af komma'; $wb['active_txt'] = 'Aktiv'; $wb['firewall_error_unique'] = 'Der er allerede en firewall post for denne server.'; -$wb['tcp_ports_error_regex'] = 'Tegn ikke tilladt i TCP port definition. Tilladt tegn er tal, \\":\\" og \\",\\".'; -$wb['udp_ports_error_regex'] = 'Tegn ikke tilladt i UDP port definition. Tilladt tegn er tal, \\":\\" og \\",\\".'; +$wb['tcp_ports_error_regex'] = 'Tegn ikke tilladt i TCP port definition. Tilladt tegn er tal, \":\" og \",\".'; +$wb['udp_ports_error_regex'] = 'Tegn ikke tilladt i UDP port definition. Tilladt tegn er tal, \":\" og \",\".'; $wb['login_as_or_logout_txt'] = 'Do you want to re-login as {UTYPE} or logout?'; ?> diff --git a/interface/web/login/lib/lang/el_login_as.lng b/interface/web/login/lib/lang/el_login_as.lng index 435d3e9a69..a6c2988017 100644 --- a/interface/web/login/lib/lang/el_login_as.lng +++ b/interface/web/login/lib/lang/el_login_as.lng @@ -1,12 +1,12 @@ <?php $wb['login_1_txt'] = 'ΘÎλετε να εισÎλθετε ως χÏήστης;'; -$wb['login_2_txt'] = 'Αν το κάνετε, μποÏείτε να \\"επιστÏÎψετε\\" κάνοντας αποσÏνδεση.'; +$wb['login_2_txt'] = 'Αν το κάνετε, μποÏείτε να \"επιστÏÎψετε\" κάνοντας αποσÏνδεση.'; $wb['btn_yes_txt'] = 'Îαι, είσοδος ως Πελάτης'; $wb['btn_back_txt'] = 'Όχι, επιστÏοφή στην λίστα'; $wb['udp_port_help_txt'] = 'διαχωÏισμός με κόμα'; $wb['active_txt'] = 'Εν ΕνεÏγεία'; $wb['firewall_error_unique'] = 'ΥπάÏχει ήδη μια εγγÏαφή Firewall για αυτόν τον server.'; -$wb['tcp_ports_error_regex'] = 'Μη ÎγκυÏος χαÏακτήÏας για τον οÏισμός θÏÏας tcp. ΕπιτÏεπόμενοι χαÏακτήÏες είναι οι αÏιθμοί, η \\":\\" και οι \\",\\".'; -$wb['udp_ports_error_regex'] = 'Μη ÎγκυÏος χαÏακτήÏας για τον οÏισμός θÏÏας udp. ΕπιτÏεπόμενοι χαÏακτήÏες είναι οι αÏιθμοί, η \\":\\" και οι \\",\\".'; +$wb['tcp_ports_error_regex'] = 'Μη ÎγκυÏος χαÏακτήÏας για τον οÏισμός θÏÏας tcp. ΕπιτÏεπόμενοι χαÏακτήÏες είναι οι αÏιθμοί, η \":\" και οι \",\".'; +$wb['udp_ports_error_regex'] = 'Μη ÎγκυÏος χαÏακτήÏας για τον οÏισμός θÏÏας udp. ΕπιτÏεπόμενοι χαÏακτήÏες είναι οι αÏιθμοί, η \":\" και οι \",\".'; $wb['login_as_or_logout_txt'] = 'Do you want to re-login as {UTYPE} or logout?'; ?> diff --git a/interface/web/login/lib/lang/es_login_as.lng b/interface/web/login/lib/lang/es_login_as.lng index b7f3e21f98..10a8554bcb 100755 --- a/interface/web/login/lib/lang/es_login_as.lng +++ b/interface/web/login/lib/lang/es_login_as.lng @@ -4,9 +4,9 @@ $wb['btn_back_txt'] = 'No, volver a la lista'; $wb['btn_yes_txt'] = 'SÃ, iniciar sesión como cliente'; $wb['firewall_error_unique'] = 'Ya existe un registro de cortafuegos para este servidor.'; $wb['login_1_txt'] = 'Desea iniciar sesión como usuario'; -$wb['login_2_txt'] = 'Si lo hace, puede \\"volver\\" haciendo clic en salir.'; -$wb['tcp_ports_error_regex'] = 'Caracteres no permitidos en la definición de puertos tcp. Los caracteres permitidos son: números, \\":\\" y \\",\\".'; +$wb['login_2_txt'] = 'Si lo hace, puede \"volver\" haciendo clic en salir.'; +$wb['tcp_ports_error_regex'] = 'Caracteres no permitidos en la definición de puertos tcp. Los caracteres permitidos son: números, \":\" y \",\".'; $wb['udp_port_help_txt'] = 'Separado por comas'; -$wb['udp_ports_error_regex'] = 'Caracteres no permitidos en la definición de puertos udp. Los caracteres permitidos son: números, \\":\\" y \\",\\".'; +$wb['udp_ports_error_regex'] = 'Caracteres no permitidos en la definición de puertos udp. Los caracteres permitidos son: números, \":\" y \",\".'; $wb['login_as_or_logout_txt'] = 'Do you want to re-login as {UTYPE} or logout?'; ?> diff --git a/interface/web/login/lib/lang/fi_login_as.lng b/interface/web/login/lib/lang/fi_login_as.lng index cf75b54b47..68cb3318e5 100644 --- a/interface/web/login/lib/lang/fi_login_as.lng +++ b/interface/web/login/lib/lang/fi_login_as.lng @@ -1,12 +1,12 @@ <?php $wb['login_1_txt'] = 'Do you want to login as user'; -$wb['login_2_txt'] = 'If you do so, you can \\"go back\\" by clicking at logout.'; +$wb['login_2_txt'] = 'If you do so, you can \"go back\" by clicking at logout.'; $wb['btn_yes_txt'] = 'Yes, login as Client'; $wb['btn_back_txt'] = 'No, back to list'; $wb['udp_port_help_txt'] = 'Separated by comma'; $wb['active_txt'] = 'Active'; $wb['firewall_error_unique'] = 'There is already a firewall record for this server.'; -$wb['tcp_ports_error_regex'] = 'Character not allowed in tcp port definition. Allowed characters are numbers, \\":\\" and \\",\\".'; -$wb['udp_ports_error_regex'] = 'Character not allowed in udp port definition. Allowed characters are numbers, \\":\\" and \\",\\".'; +$wb['tcp_ports_error_regex'] = 'Character not allowed in tcp port definition. Allowed characters are numbers, \":\" and \",\".'; +$wb['udp_ports_error_regex'] = 'Character not allowed in udp port definition. Allowed characters are numbers, \":\" and \",\".'; $wb['login_as_or_logout_txt'] = 'Do you want to re-login as {UTYPE} or logout?'; ?> diff --git a/interface/web/login/lib/lang/hr_login_as.lng b/interface/web/login/lib/lang/hr_login_as.lng index bcd13040d3..a94f659705 100644 --- a/interface/web/login/lib/lang/hr_login_as.lng +++ b/interface/web/login/lib/lang/hr_login_as.lng @@ -1,12 +1,12 @@ <?php $wb['login_1_txt'] = 'Do you want to login as user'; -$wb['login_2_txt'] = 'If you do so, you can \\"go back\\" by clicking at logout.'; +$wb['login_2_txt'] = 'If you do so, you can \"go back\" by clicking at logout.'; $wb['btn_yes_txt'] = 'Yes, login as Client'; $wb['btn_back_txt'] = 'No, back to list'; $wb['udp_port_help_txt'] = 'Odvojeno zarezom'; $wb['active_txt'] = 'Aktivno'; $wb['firewall_error_unique'] = 'There is already a firewall record for this server.'; -$wb['tcp_ports_error_regex'] = 'Character not allowed in tcp port definition. Allowed characters are numbers, \\":\\" and \\",\\".'; -$wb['udp_ports_error_regex'] = 'Character not allowed in udp port definition. Allowed characters are numbers, \\":\\" and \\",\\".'; +$wb['tcp_ports_error_regex'] = 'Character not allowed in tcp port definition. Allowed characters are numbers, \":\" and \",\".'; +$wb['udp_ports_error_regex'] = 'Character not allowed in udp port definition. Allowed characters are numbers, \":\" and \",\".'; $wb['login_as_or_logout_txt'] = 'Do you want to re-login as {UTYPE} or logout?'; ?> diff --git a/interface/web/login/lib/lang/hu_login_as.lng b/interface/web/login/lib/lang/hu_login_as.lng index cf75b54b47..68cb3318e5 100644 --- a/interface/web/login/lib/lang/hu_login_as.lng +++ b/interface/web/login/lib/lang/hu_login_as.lng @@ -1,12 +1,12 @@ <?php $wb['login_1_txt'] = 'Do you want to login as user'; -$wb['login_2_txt'] = 'If you do so, you can \\"go back\\" by clicking at logout.'; +$wb['login_2_txt'] = 'If you do so, you can \"go back\" by clicking at logout.'; $wb['btn_yes_txt'] = 'Yes, login as Client'; $wb['btn_back_txt'] = 'No, back to list'; $wb['udp_port_help_txt'] = 'Separated by comma'; $wb['active_txt'] = 'Active'; $wb['firewall_error_unique'] = 'There is already a firewall record for this server.'; -$wb['tcp_ports_error_regex'] = 'Character not allowed in tcp port definition. Allowed characters are numbers, \\":\\" and \\",\\".'; -$wb['udp_ports_error_regex'] = 'Character not allowed in udp port definition. Allowed characters are numbers, \\":\\" and \\",\\".'; +$wb['tcp_ports_error_regex'] = 'Character not allowed in tcp port definition. Allowed characters are numbers, \":\" and \",\".'; +$wb['udp_ports_error_regex'] = 'Character not allowed in udp port definition. Allowed characters are numbers, \":\" and \",\".'; $wb['login_as_or_logout_txt'] = 'Do you want to re-login as {UTYPE} or logout?'; ?> diff --git a/interface/web/login/lib/lang/id_login_as.lng b/interface/web/login/lib/lang/id_login_as.lng index cf75b54b47..68cb3318e5 100644 --- a/interface/web/login/lib/lang/id_login_as.lng +++ b/interface/web/login/lib/lang/id_login_as.lng @@ -1,12 +1,12 @@ <?php $wb['login_1_txt'] = 'Do you want to login as user'; -$wb['login_2_txt'] = 'If you do so, you can \\"go back\\" by clicking at logout.'; +$wb['login_2_txt'] = 'If you do so, you can \"go back\" by clicking at logout.'; $wb['btn_yes_txt'] = 'Yes, login as Client'; $wb['btn_back_txt'] = 'No, back to list'; $wb['udp_port_help_txt'] = 'Separated by comma'; $wb['active_txt'] = 'Active'; $wb['firewall_error_unique'] = 'There is already a firewall record for this server.'; -$wb['tcp_ports_error_regex'] = 'Character not allowed in tcp port definition. Allowed characters are numbers, \\":\\" and \\",\\".'; -$wb['udp_ports_error_regex'] = 'Character not allowed in udp port definition. Allowed characters are numbers, \\":\\" and \\",\\".'; +$wb['tcp_ports_error_regex'] = 'Character not allowed in tcp port definition. Allowed characters are numbers, \":\" and \",\".'; +$wb['udp_ports_error_regex'] = 'Character not allowed in udp port definition. Allowed characters are numbers, \":\" and \",\".'; $wb['login_as_or_logout_txt'] = 'Do you want to re-login as {UTYPE} or logout?'; ?> diff --git a/interface/web/login/lib/lang/it_login_as.lng b/interface/web/login/lib/lang/it_login_as.lng index 3fa23da274..fab2f1b088 100644 --- a/interface/web/login/lib/lang/it_login_as.lng +++ b/interface/web/login/lib/lang/it_login_as.lng @@ -1,12 +1,12 @@ <?php $wb['login_1_txt'] = 'Desideri accedere come utente'; -$wb['login_2_txt'] = 'Se vuoi procedere puoi tornare indietro \\"go back\\" eseguendo il logout.'; +$wb['login_2_txt'] = 'Se vuoi procedere puoi tornare indietro \"go back\" eseguendo il logout.'; $wb['btn_yes_txt'] = 'Si, login accedi come cliente'; $wb['btn_back_txt'] = 'No, torna alla lista'; $wb['udp_port_help_txt'] = 'Separato da virgola'; $wb['active_txt'] = 'Attivo'; $wb['firewall_error_unique'] = 'Esiste già un record firewall per questo server.'; -$wb['tcp_ports_error_regex'] = 'Caratteri non autorizzati nella definizine di porta tcp. Sono consentiti caratteri numerici, \\":\\" e \\",\\".'; -$wb['udp_ports_error_regex'] = 'Caratteri non autorizzati nella definizine di porta udp. ono consentiti caratteri numerici, \\":\\" e \\",\\".'; +$wb['tcp_ports_error_regex'] = 'Caratteri non autorizzati nella definizine di porta tcp. Sono consentiti caratteri numerici, \":\" e \",\".'; +$wb['udp_ports_error_regex'] = 'Caratteri non autorizzati nella definizine di porta udp. ono consentiti caratteri numerici, \":\" e \",\".'; $wb['login_as_or_logout_txt'] = 'Do you want to re-login as {UTYPE} or logout?'; ?> diff --git a/interface/web/login/lib/lang/ja_login_as.lng b/interface/web/login/lib/lang/ja_login_as.lng index cf75b54b47..68cb3318e5 100644 --- a/interface/web/login/lib/lang/ja_login_as.lng +++ b/interface/web/login/lib/lang/ja_login_as.lng @@ -1,12 +1,12 @@ <?php $wb['login_1_txt'] = 'Do you want to login as user'; -$wb['login_2_txt'] = 'If you do so, you can \\"go back\\" by clicking at logout.'; +$wb['login_2_txt'] = 'If you do so, you can \"go back\" by clicking at logout.'; $wb['btn_yes_txt'] = 'Yes, login as Client'; $wb['btn_back_txt'] = 'No, back to list'; $wb['udp_port_help_txt'] = 'Separated by comma'; $wb['active_txt'] = 'Active'; $wb['firewall_error_unique'] = 'There is already a firewall record for this server.'; -$wb['tcp_ports_error_regex'] = 'Character not allowed in tcp port definition. Allowed characters are numbers, \\":\\" and \\",\\".'; -$wb['udp_ports_error_regex'] = 'Character not allowed in udp port definition. Allowed characters are numbers, \\":\\" and \\",\\".'; +$wb['tcp_ports_error_regex'] = 'Character not allowed in tcp port definition. Allowed characters are numbers, \":\" and \",\".'; +$wb['udp_ports_error_regex'] = 'Character not allowed in udp port definition. Allowed characters are numbers, \":\" and \",\".'; $wb['login_as_or_logout_txt'] = 'Do you want to re-login as {UTYPE} or logout?'; ?> diff --git a/interface/web/login/lib/lang/nl_login_as.lng b/interface/web/login/lib/lang/nl_login_as.lng index d4d2715e7a..3061782706 100644 --- a/interface/web/login/lib/lang/nl_login_as.lng +++ b/interface/web/login/lib/lang/nl_login_as.lng @@ -6,7 +6,7 @@ $wb['btn_back_txt'] = 'Nee, terug naar het overzicht'; $wb['udp_port_help_txt'] = 'Gescheiden door komma'; $wb['active_txt'] = 'Active'; $wb['firewall_error_unique'] = 'There is already a firewall record for this server.'; -$wb['tcp_ports_error_regex'] = 'Character not allowed in tcp port definition. Allowed characters are numbers, \\":\\" and \\",\\".'; -$wb['udp_ports_error_regex'] = 'Character not allowed in udp port definition. Allowed characters are numbers, \\":\\" and \\",\\".'; +$wb['tcp_ports_error_regex'] = 'Character not allowed in tcp port definition. Allowed characters are numbers, \":\" and \",\".'; +$wb['udp_ports_error_regex'] = 'Character not allowed in udp port definition. Allowed characters are numbers, \":\" and \",\".'; $wb['login_as_or_logout_txt'] = 'Do you want to re-login as {UTYPE} or logout?'; ?> diff --git a/interface/web/login/lib/lang/pt_login_as.lng b/interface/web/login/lib/lang/pt_login_as.lng index cf75b54b47..68cb3318e5 100644 --- a/interface/web/login/lib/lang/pt_login_as.lng +++ b/interface/web/login/lib/lang/pt_login_as.lng @@ -1,12 +1,12 @@ <?php $wb['login_1_txt'] = 'Do you want to login as user'; -$wb['login_2_txt'] = 'If you do so, you can \\"go back\\" by clicking at logout.'; +$wb['login_2_txt'] = 'If you do so, you can \"go back\" by clicking at logout.'; $wb['btn_yes_txt'] = 'Yes, login as Client'; $wb['btn_back_txt'] = 'No, back to list'; $wb['udp_port_help_txt'] = 'Separated by comma'; $wb['active_txt'] = 'Active'; $wb['firewall_error_unique'] = 'There is already a firewall record for this server.'; -$wb['tcp_ports_error_regex'] = 'Character not allowed in tcp port definition. Allowed characters are numbers, \\":\\" and \\",\\".'; -$wb['udp_ports_error_regex'] = 'Character not allowed in udp port definition. Allowed characters are numbers, \\":\\" and \\",\\".'; +$wb['tcp_ports_error_regex'] = 'Character not allowed in tcp port definition. Allowed characters are numbers, \":\" and \",\".'; +$wb['udp_ports_error_regex'] = 'Character not allowed in udp port definition. Allowed characters are numbers, \":\" and \",\".'; $wb['login_as_or_logout_txt'] = 'Do you want to re-login as {UTYPE} or logout?'; ?> diff --git a/interface/web/login/lib/lang/ro_login_as.lng b/interface/web/login/lib/lang/ro_login_as.lng index cf75b54b47..68cb3318e5 100644 --- a/interface/web/login/lib/lang/ro_login_as.lng +++ b/interface/web/login/lib/lang/ro_login_as.lng @@ -1,12 +1,12 @@ <?php $wb['login_1_txt'] = 'Do you want to login as user'; -$wb['login_2_txt'] = 'If you do so, you can \\"go back\\" by clicking at logout.'; +$wb['login_2_txt'] = 'If you do so, you can \"go back\" by clicking at logout.'; $wb['btn_yes_txt'] = 'Yes, login as Client'; $wb['btn_back_txt'] = 'No, back to list'; $wb['udp_port_help_txt'] = 'Separated by comma'; $wb['active_txt'] = 'Active'; $wb['firewall_error_unique'] = 'There is already a firewall record for this server.'; -$wb['tcp_ports_error_regex'] = 'Character not allowed in tcp port definition. Allowed characters are numbers, \\":\\" and \\",\\".'; -$wb['udp_ports_error_regex'] = 'Character not allowed in udp port definition. Allowed characters are numbers, \\":\\" and \\",\\".'; +$wb['tcp_ports_error_regex'] = 'Character not allowed in tcp port definition. Allowed characters are numbers, \":\" and \",\".'; +$wb['udp_ports_error_regex'] = 'Character not allowed in udp port definition. Allowed characters are numbers, \":\" and \",\".'; $wb['login_as_or_logout_txt'] = 'Do you want to re-login as {UTYPE} or logout?'; ?> diff --git a/interface/web/login/lib/lang/ru_login_as.lng b/interface/web/login/lib/lang/ru_login_as.lng index 63031d4d09..46a3eab288 100644 --- a/interface/web/login/lib/lang/ru_login_as.lng +++ b/interface/web/login/lib/lang/ru_login_as.lng @@ -1,12 +1,12 @@ <?php $wb['login_1_txt'] = 'Ð’Ñ‹ хотите войти как пользователь'; -$wb['login_2_txt'] = 'ЕÑли вы Ñто Ñделаете, вы можете \\"вернутьÑÑ\\", нажав на \\"выход\\".'; +$wb['login_2_txt'] = 'ЕÑли вы Ñто Ñделаете, вы можете \"вернутьÑÑ\", нажав на \"выход\".'; $wb['btn_yes_txt'] = 'Да, войти как Клиент'; $wb['btn_back_txt'] = 'Ðет, назад к ÑпиÑку'; $wb['udp_port_help_txt'] = 'ПеречиÑлить через запÑтую'; $wb['active_txt'] = 'Ðктивно'; $wb['firewall_error_unique'] = 'Уже еÑÑ‚ÑŒ Ñ‚Ð°ÐºÐ°Ñ Ð·Ð°Ð¿Ð¸ÑÑŒ бредмауÑра Ð´Ð»Ñ Ñтого Ñервера.'; -$wb['tcp_ports_error_regex'] = 'ÐедопуÑтимый Ñимвол в указании tcp порта. Корректные Ñиволы - цифры, \\":\\" и \\",\\"'; -$wb['udp_ports_error_regex'] = 'Ðекорректный Ñимвол в указании UDP порта. ДопуÑтимые Ñиволы - цифры, \\":\\" и \\",\\"'; +$wb['tcp_ports_error_regex'] = 'ÐедопуÑтимый Ñимвол в указании tcp порта. Корректные Ñиволы - цифры, \":\" и \",\"'; +$wb['udp_ports_error_regex'] = 'Ðекорректный Ñимвол в указании UDP порта. ДопуÑтимые Ñиволы - цифры, \":\" и \",\"'; $wb['login_as_or_logout_txt'] = 'Ð’Ñ‹ хотите заново войти как {UTYPE} или выйти?'; ?> diff --git a/interface/web/login/lib/lang/se_login_as.lng b/interface/web/login/lib/lang/se_login_as.lng index 17a82080dc..203832c7b7 100644 --- a/interface/web/login/lib/lang/se_login_as.lng +++ b/interface/web/login/lib/lang/se_login_as.lng @@ -1,12 +1,12 @@ <?php $wb['login_1_txt'] = 'Vill du loggga in som användare'; -$wb['login_2_txt'] = 'If you do so, you can \\"go back\\" by clicking at logout.'; +$wb['login_2_txt'] = 'If you do so, you can \"go back\" by clicking at logout.'; $wb['btn_yes_txt'] = 'Ja, logga in som kund'; $wb['btn_back_txt'] = 'Nej, tillbaka till listan'; $wb['udp_port_help_txt'] = 'Avdelade med kommatecken'; $wb['active_txt'] = 'Aktiv'; $wb['firewall_error_unique'] = 'There is already a firewall record for this server.'; -$wb['tcp_ports_error_regex'] = 'Character not allowed in tcp port definition. Allowed characters are numbers, \\":\\" and \\",\\".'; -$wb['udp_ports_error_regex'] = 'Character not allowed in udp port definition. Allowed characters are numbers, \\":\\" and \\",\\".'; +$wb['tcp_ports_error_regex'] = 'Character not allowed in tcp port definition. Allowed characters are numbers, \":\" and \",\".'; +$wb['udp_ports_error_regex'] = 'Character not allowed in udp port definition. Allowed characters are numbers, \":\" and \",\".'; $wb['login_as_or_logout_txt'] = 'Do you want to re-login as {UTYPE} or logout?'; ?> diff --git a/interface/web/login/lib/lang/sk_login_as.lng b/interface/web/login/lib/lang/sk_login_as.lng index cf75b54b47..68cb3318e5 100644 --- a/interface/web/login/lib/lang/sk_login_as.lng +++ b/interface/web/login/lib/lang/sk_login_as.lng @@ -1,12 +1,12 @@ <?php $wb['login_1_txt'] = 'Do you want to login as user'; -$wb['login_2_txt'] = 'If you do so, you can \\"go back\\" by clicking at logout.'; +$wb['login_2_txt'] = 'If you do so, you can \"go back\" by clicking at logout.'; $wb['btn_yes_txt'] = 'Yes, login as Client'; $wb['btn_back_txt'] = 'No, back to list'; $wb['udp_port_help_txt'] = 'Separated by comma'; $wb['active_txt'] = 'Active'; $wb['firewall_error_unique'] = 'There is already a firewall record for this server.'; -$wb['tcp_ports_error_regex'] = 'Character not allowed in tcp port definition. Allowed characters are numbers, \\":\\" and \\",\\".'; -$wb['udp_ports_error_regex'] = 'Character not allowed in udp port definition. Allowed characters are numbers, \\":\\" and \\",\\".'; +$wb['tcp_ports_error_regex'] = 'Character not allowed in tcp port definition. Allowed characters are numbers, \":\" and \",\".'; +$wb['udp_ports_error_regex'] = 'Character not allowed in udp port definition. Allowed characters are numbers, \":\" and \",\".'; $wb['login_as_or_logout_txt'] = 'Do you want to re-login as {UTYPE} or logout?'; ?> diff --git a/interface/web/login/lib/lang/tr_login_as.lng b/interface/web/login/lib/lang/tr_login_as.lng index f7f12feeff..a000d44342 100644 --- a/interface/web/login/lib/lang/tr_login_as.lng +++ b/interface/web/login/lib/lang/tr_login_as.lng @@ -1,12 +1,12 @@ <?php $wb['login_1_txt'] = 'Bu kullanıcı olarak oturum açmak ister misiniz'; -$wb['login_2_txt'] = '\\"Geri dönmek\\" için oturumu kapat üzerine tıklayın.'; +$wb['login_2_txt'] = '\"Geri dönmek\" için oturumu kapat üzerine tıklayın.'; $wb['btn_yes_txt'] = 'Evet, Müşteri olarak oturum aç'; $wb['btn_back_txt'] = 'Hayır, listeye geri dön'; $wb['udp_port_help_txt'] = 'Virgül ile ayırarak yazın'; $wb['active_txt'] = 'Etkin'; $wb['firewall_error_unique'] = 'Bu sunucu için bir güvenlik duvarı kaydı zaten var.'; -$wb['tcp_ports_error_regex'] = 'TCP kapı açıklamasında karakter kullanılamaz. Yalnız rakam, \\":\\" ve \\",\\" karakterleri kullanılabilir.'; -$wb['udp_ports_error_regex'] = 'UDP kapı açıklamasında karakter kullanılamaz. Yalnız rakam, \\":\\" ve \\",\\" karakterleri kullanılabilir.'; +$wb['tcp_ports_error_regex'] = 'TCP kapı açıklamasında karakter kullanılamaz. Yalnız rakam, \":\" ve \",\" karakterleri kullanılabilir.'; +$wb['udp_ports_error_regex'] = 'UDP kapı açıklamasında karakter kullanılamaz. Yalnız rakam, \":\" ve \",\" karakterleri kullanılabilir.'; $wb['login_as_or_logout_txt'] = 'Do you want to re-login as {UTYPE} or logout?'; ?> diff --git a/interface/web/mail/lib/lang/ar_mail_get.lng b/interface/web/mail/lib/lang/ar_mail_get.lng index 8ae7712151..5d6a72fbfb 100644 --- a/interface/web/mail/lib/lang/ar_mail_get.lng +++ b/interface/web/mail/lib/lang/ar_mail_get.lng @@ -14,6 +14,6 @@ $wb['source_password_error_isempty'] = 'Password is empty.'; $wb['destination_error_isemail'] = 'No destination selected.'; $wb['source_server_error_regex'] = 'Pop3/Imap Server is not a valid domain name.'; $wb['source_read_all_txt'] = 'Retrieve all emails (incl. read mails)'; -$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['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'] = 'Please check first if email retrieval works, before you activate this option.'; ?> diff --git a/interface/web/mail/lib/lang/bg_mail_get.lng b/interface/web/mail/lib/lang/bg_mail_get.lng index e1b1935d32..305256d5c6 100644 --- a/interface/web/mail/lib/lang/bg_mail_get.lng +++ b/interface/web/mail/lib/lang/bg_mail_get.lng @@ -14,6 +14,6 @@ $wb['source_password_error_isempty'] = 'Password is empty.'; $wb['destination_error_isemail'] = 'No destination selected.'; $wb['source_server_error_regex'] = 'Pop3/Imap Server is not a valid domain name.'; $wb['source_read_all_txt'] = 'Retrieve all emails (incl. read mails)'; -$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['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'] = 'Please check first if email retrieval works, before you activate this option.'; ?> diff --git a/interface/web/mail/lib/lang/br_mail_user.lng b/interface/web/mail/lib/lang/br_mail_user.lng index f91d40f625..a786566277 100644 --- a/interface/web/mail/lib/lang/br_mail_user.lng +++ b/interface/web/mail/lib/lang/br_mail_user.lng @@ -35,7 +35,7 @@ $wb['name_txt'] = 'Nome real'; $wb['name_optional_txt'] = '(Opcional)'; $wb['autoresponder_active'] = 'Ativar autoresposta'; $wb['cc_txt'] = 'Enviar cópia para'; -$wb['cc_error_isemail'] = 'O campo \\"Enviar cópia para\\" deve conter um endereço de e-mail válido'; +$wb['cc_error_isemail'] = 'O campo \"Enviar cópia para\" deve conter um endereço de e-mail válido'; $wb['domain_txt'] = 'DomÃnio'; $wb['now_txt'] = 'Agora'; $wb['login_error_unique'] = 'O acesso já está em uso.'; @@ -48,7 +48,7 @@ $wb['generate_password_txt'] = 'Gerar senha'; $wb['repeat_password_txt'] = 'Repetir senha'; $wb['password_mismatch_txt'] = 'A senhas não coincidem.'; $wb['password_match_txt'] = 'A senhas coincidem.'; -$wb['email_error_isascii'] = 'Por favor não use caracteres \\"unicode\\" para a senha. Esta ação poderá causar problemas com seu cliente de e-mail (mua).'; +$wb['email_error_isascii'] = 'Por favor não use caracteres \"unicode\" para a senha. Esta ação poderá causar problemas com seu cliente de e-mail (mua).'; $wb['cc_note_txt'] = '(Múltiplos e-mails separados por vÃrgulas)'; $wb['disablesmtp_txt'] = 'Desabilitar smtp (envio)'; $wb['autoresponder_start_date_is_required'] = 'Data de inÃcio deve ser configurada quando \'autoresposta\' é habilitada.'; diff --git a/interface/web/mail/lib/lang/ca_mail_get.lng b/interface/web/mail/lib/lang/ca_mail_get.lng index a13a1b03f6..9300a29049 100644 --- a/interface/web/mail/lib/lang/ca_mail_get.lng +++ b/interface/web/mail/lib/lang/ca_mail_get.lng @@ -14,6 +14,6 @@ $wb['source_password_error_isempty'] = 'Le mot de passe est vide.'; $wb['destination_error_isemail'] = 'Pas de destination sélectionnée.'; $wb['source_server_error_regex'] = 'Le serveur POP3 / IMAP n\'est pas un nom de domaine valide.'; $wb['source_read_all_txt'] = 'Récupérer tous les courriels (incl. les courriels lus)'; -$wb['error_delete_read_all_combination'] = 'Combinaison d\'options non autorisée. Vous ne pouvez pas utiliser \\"Supprimer les courriels après récupération\\" = non avec \\"Récupérer tous les courriels\\" = oui'; +$wb['error_delete_read_all_combination'] = 'Combinaison d\'options non autorisée. Vous ne pouvez pas utiliser \"Supprimer les courriels après récupération\" = non avec \"Récupérer tous les courriels\" = oui'; $wb['source_delete_note_txt'] = 'Please check first if courriel retrieval works, before you activate this option.'; ?> diff --git a/interface/web/mail/lib/lang/cz_mail_get.lng b/interface/web/mail/lib/lang/cz_mail_get.lng index cdb39b09a1..3dfee1a5ef 100644 --- a/interface/web/mail/lib/lang/cz_mail_get.lng +++ b/interface/web/mail/lib/lang/cz_mail_get.lng @@ -14,6 +14,6 @@ $wb['source_password_error_isempty'] = 'Heslo je prázdné.'; $wb['destination_error_isemail'] = 'Nevybrán žádný cÃl.'; $wb['source_server_error_regex'] = 'POP3/IMAP server nenà validnà doménový název.'; $wb['source_read_all_txt'] = 'NaÄÃst vÅ¡echny e-maily (vÄetnÄ› již pÅ™eÄtené poÅ¡ty)'; -$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['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Ãmánà e-mailů funguje, než aktivujete tuto možnost.'; ?> diff --git a/interface/web/mail/lib/lang/cz_mail_mailinglist.lng b/interface/web/mail/lib/lang/cz_mail_mailinglist.lng index e1f7dfbfa5..f534d6c8e9 100644 --- a/interface/web/mail/lib/lang/cz_mail_mailinglist.lng +++ b/interface/web/mail/lib/lang/cz_mail_mailinglist.lng @@ -16,7 +16,7 @@ $wb['generate_password_txt'] = 'Generovat heslo'; $wb['repeat_password_txt'] = 'Opakujte heslo'; $wb['password_mismatch_txt'] = 'Hesla se neshodujÃ.'; $wb['password_match_txt'] = 'Hesla se shodujÃ.'; -$wb['listname_error_unique'] = 'Na serveru je již shodný \\"název seznamu\\". ProsÃm, vyberte si jiný \\"název seznamu\\".'; +$wb['listname_error_unique'] = 'Na serveru je již shodný \"název seznamu\". ProsÃm, vyberte si jiný \"název seznamu\".'; $wb['email_error_isemail'] = 'E-mailová adresa je neplatná.'; $wb['mailinglist_txt'] = 'E-mailové konference'; ?> diff --git a/interface/web/mail/lib/lang/dk_mail_get.lng b/interface/web/mail/lib/lang/dk_mail_get.lng index 1fa44cb6ad..dc0b7455ac 100644 --- a/interface/web/mail/lib/lang/dk_mail_get.lng +++ b/interface/web/mail/lib/lang/dk_mail_get.lng @@ -15,5 +15,5 @@ $wb['source_username_error_isempty'] = 'Brugernavn er tom.'; $wb['source_password_error_isempty'] = 'Adgangskode er tom.'; $wb['destination_error_isemail'] = 'Ingen destination er valgt.'; $wb['source_server_error_regex'] = 'Pop3/Imap Server er ikke et gyldigt domænenavn.'; -$wb['error_delete_read_all_combination'] = 'Ulovlig kombination af muligheder. Du kan ikke bruge \\"Slet e-mails efter hentning\\" = nej sammen med \\"Hent alle e-mails\\" = ja'; +$wb['error_delete_read_all_combination'] = 'Ulovlig kombination af muligheder. Du kan ikke bruge \"Slet e-mails efter hentning\" = nej sammen med \"Hent alle e-mails\" = ja'; ?> diff --git a/interface/web/mail/lib/lang/el_mail_get.lng b/interface/web/mail/lib/lang/el_mail_get.lng index 0ec9645c8f..cc2c261a5b 100644 --- a/interface/web/mail/lib/lang/el_mail_get.lng +++ b/interface/web/mail/lib/lang/el_mail_get.lng @@ -14,6 +14,6 @@ $wb['source_password_error_isempty'] = 'Το Συνθηματικό δεν Îχ $wb['destination_error_isemail'] = 'Δεν επιλÎχθηκε Ï€ÏοοÏισμός.'; $wb['source_server_error_regex'] = 'Το όνομα του Pop3/Imap Server δεν είναι ÎγκυÏο.'; $wb['source_read_all_txt'] = 'Ανάκτηση όλων των emails (συμπεÏ. αναγνωσμÎνων mails)'; -$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['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'] = 'Please check first if email retrieval works, before you activate this option.'; ?> diff --git a/interface/web/mail/lib/lang/es.lng b/interface/web/mail/lib/lang/es.lng index 797aeeeb60..787007a7fc 100755 --- a/interface/web/mail/lib/lang/es.lng +++ b/interface/web/mail/lib/lang/es.lng @@ -8,7 +8,7 @@ $wb['Domain'] = 'Dominio'; $wb['Email Accounts'] = 'Cuentas de correo'; $wb['Email Alias'] = 'Alias de correo'; $wb['Email Blacklist'] = 'Lista negra de correo'; -$wb['Email Catchall'] = 'Correo \\"recoge-todo\\"'; +$wb['Email Catchall'] = 'Correo \"recoge-todo\"'; $wb['Email filter'] = 'Filtro de correo'; $wb['Email Forward'] = 'ReenvÃo de correo'; $wb['Email Mailbox'] = 'Buzón de correo'; diff --git a/interface/web/mail/lib/lang/es_mail_domain_catchall.lng b/interface/web/mail/lib/lang/es_mail_domain_catchall.lng index 48ead68ac1..ed6c9b5db4 100755 --- a/interface/web/mail/lib/lang/es_mail_domain_catchall.lng +++ b/interface/web/mail/lib/lang/es_mail_domain_catchall.lng @@ -3,9 +3,9 @@ $wb['active_txt'] = 'Habilitado'; $wb['destination_error_isemail'] = 'El destinatario no es una dirección de correo válida.'; $wb['destination_txt'] = 'Correo de destino'; $wb['domain_error_regex'] = 'El nombre de dominio es inválido o contiene caracteres no permitidos.'; -$wb['domain_error_unique'] = 'Este dominio ya tiene un correo \\"recoge-todo\\".'; +$wb['domain_error_unique'] = 'Este dominio ya tiene un correo \"recoge-todo\".'; $wb['domain_txt'] = 'Dominio'; -$wb['limit_mailcatchall_txt'] = 'Ha alcanzado el número máx. de correo \\"recoge-todo\\" para correo permitidos para su cuenta.'; +$wb['limit_mailcatchall_txt'] = 'Ha alcanzado el número máx. de correo \"recoge-todo\" para correo permitidos para su cuenta.'; $wb['no_domain_perm'] = 'No tiene permisos para usar este dominio.'; $wb['source_txt'] = 'Origen'; ?> diff --git a/interface/web/mail/lib/lang/es_mail_domain_catchall_list.lng b/interface/web/mail/lib/lang/es_mail_domain_catchall_list.lng index 8288430a18..fc3fde1956 100755 --- a/interface/web/mail/lib/lang/es_mail_domain_catchall_list.lng +++ b/interface/web/mail/lib/lang/es_mail_domain_catchall_list.lng @@ -1,9 +1,9 @@ <?php $wb['active_txt'] = 'Habilitado'; -$wb['add_new_record_txt'] = 'Añadir correo \\"recoge-todo\\"'; +$wb['add_new_record_txt'] = 'Añadir correo \"recoge-todo\"'; $wb['destination_txt'] = 'Dirección de correo de destino'; $wb['domain_txt'] = 'Dominio'; -$wb['list_head_txt'] = 'Correo \\"recoge-todo\\"'; +$wb['list_head_txt'] = 'Correo \"recoge-todo\"'; $wb['server_id_txt'] = 'Servidor'; $wb['source_txt'] = 'Origen'; ?> diff --git a/interface/web/mail/lib/lang/es_mail_get.lng b/interface/web/mail/lib/lang/es_mail_get.lng index 81de60b038..47529e27c6 100755 --- a/interface/web/mail/lib/lang/es_mail_get.lng +++ b/interface/web/mail/lib/lang/es_mail_get.lng @@ -2,7 +2,7 @@ $wb['active_txt'] = 'Habilitado'; $wb['destination_error_isemail'] = 'No ha seleccionado un destinatario.'; $wb['destination_txt'] = 'Destino'; -$wb['error_delete_read_all_combination'] = 'Combinación incorrecta de opciones. No puede usar \\"Borrar correos después de recuperarlos\\" = NO al mismo tiempo que \\"Recuperar todos los correos\\" = SI'; +$wb['error_delete_read_all_combination'] = 'Combinación incorrecta de opciones. No puede usar \"Borrar correos después de recuperarlos\" = NO al mismo tiempo que \"Recuperar todos los correos\" = SI'; $wb['limit_fetchmail_txt'] = 'Ha alcanzado el número máx. de registros de recuperación de correo permitidos para su cuenta.'; $wb['server_id_txt'] = 'Servidor'; $wb['source_delete_note_txt'] = 'Por favor, verifique que funcione la recuperación de correos antes de activar esta opción.'; diff --git a/interface/web/mail/lib/lang/fi_mail_get.lng b/interface/web/mail/lib/lang/fi_mail_get.lng index 063a37bf04..9eca1d8498 100755 --- a/interface/web/mail/lib/lang/fi_mail_get.lng +++ b/interface/web/mail/lib/lang/fi_mail_get.lng @@ -14,6 +14,6 @@ $wb['source_password_error_isempty'] = 'Salasana-kenttä on tyhjä.'; $wb['destination_error_isemail'] = 'Ei kohdetta valittuna.'; $wb['source_server_error_regex'] = 'Pop3/Imap-palvelin ei ole kelvollinen osoite.'; $wb['source_read_all_txt'] = 'Retrieve all emails (incl. read mails)'; -$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['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'] = 'Please check first if email retrieval works, before you activate this option.'; ?> diff --git a/interface/web/mail/lib/lang/fr_mail_get.lng b/interface/web/mail/lib/lang/fr_mail_get.lng index 00f72f0c8b..118ab5ed32 100644 --- a/interface/web/mail/lib/lang/fr_mail_get.lng +++ b/interface/web/mail/lib/lang/fr_mail_get.lng @@ -14,6 +14,6 @@ $wb['source_password_error_isempty'] = 'Le mot de passe est vide.'; $wb['destination_error_isemail'] = 'Pas de destination sélectionnée.'; $wb['source_server_error_regex'] = 'Le serveur POP3 / IMAP n’est pas un nom de domaine valide.'; $wb['source_read_all_txt'] = 'Récupérer tous les emails (incl. les emails lus)'; -$wb['error_delete_read_all_combination'] = 'Combinaison d’options non autorisée. Vous ne pouvez pas utiliser \\"Supprimer les emails après récupération\\" = non avec \\"Récupérer tous les emails\\" = oui'; +$wb['error_delete_read_all_combination'] = 'Combinaison d’options non autorisée. Vous ne pouvez pas utiliser \"Supprimer les emails après récupération\" = non avec \"Récupérer tous les emails\" = oui'; $wb['source_delete_note_txt'] = 'Please check first if e-mail retrieval works, before you activate this option.'; ?> diff --git a/interface/web/mail/lib/lang/hr_mail_get.lng b/interface/web/mail/lib/lang/hr_mail_get.lng index 18c53a4d53..025bb136b0 100644 --- a/interface/web/mail/lib/lang/hr_mail_get.lng +++ b/interface/web/mail/lib/lang/hr_mail_get.lng @@ -14,6 +14,6 @@ $wb['source_password_error_isempty'] = 'Password is empty.'; $wb['destination_error_isemail'] = 'No destination selected.'; $wb['source_server_error_regex'] = 'Pop3/Imap Server is not a valid domain name.'; $wb['source_read_all_txt'] = 'Retrieve all emails (incl. read mails)'; -$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['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'] = 'Please check first if email retrieval works, before you activate this option.'; ?> diff --git a/interface/web/mail/lib/lang/hu_mail_get.lng b/interface/web/mail/lib/lang/hu_mail_get.lng index 59cb26dd6a..a02a1fe114 100644 --- a/interface/web/mail/lib/lang/hu_mail_get.lng +++ b/interface/web/mail/lib/lang/hu_mail_get.lng @@ -14,6 +14,6 @@ $wb['source_password_error_isempty'] = 'Jelszó üres.'; $wb['destination_error_isemail'] = 'Nem választott cÃmzettet.'; $wb['source_server_error_regex'] = 'Pop3/Imap Server is not a valid domain name.'; $wb['source_read_all_txt'] = 'Retrieve all emails (incl. read mails)'; -$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['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'] = 'Please check first if email retrieval works, before you activate this option.'; ?> diff --git a/interface/web/mail/lib/lang/id_mail_get.lng b/interface/web/mail/lib/lang/id_mail_get.lng index cec2466f28..7617cbc7df 100644 --- a/interface/web/mail/lib/lang/id_mail_get.lng +++ b/interface/web/mail/lib/lang/id_mail_get.lng @@ -14,6 +14,6 @@ $wb['source_password_error_isempty'] = 'Kata Sandi kosong.'; $wb['destination_error_isemail'] = 'Tidak ada tujuan yang dipilih.'; $wb['source_server_error_regex'] = 'Server Pop3/Imap bukan merupakan nama domain yang valid.'; $wb['source_read_all_txt'] = 'Retrieve all emails (incl. read mails)'; -$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['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'] = 'Please check first if email retrieval works, before you activate this option.'; ?> diff --git a/interface/web/mail/lib/lang/it_mail_get.lng b/interface/web/mail/lib/lang/it_mail_get.lng index 70770c22d4..3b443a7268 100644 --- a/interface/web/mail/lib/lang/it_mail_get.lng +++ b/interface/web/mail/lib/lang/it_mail_get.lng @@ -14,6 +14,6 @@ $wb['source_password_error_isempty'] = 'Valore Password vuoto.'; $wb['destination_error_isemail'] = 'Nessuna destinazione selezionata.'; $wb['source_server_error_regex'] = 'Pop3/Imap Server non è un nome dominio valido.'; $wb['source_read_all_txt'] = 'Recupera tutte le email (incluso mail lette)'; -$wb['error_delete_read_all_combination'] = 'Combinazione di opzioni non conforme. Non puoi utilizzare \\"Elimina mail dopo averle scaricate \\" = NO assieme a \\"Recupera tutte le email\\" = SI'; +$wb['error_delete_read_all_combination'] = 'Combinazione di opzioni non conforme. Non puoi utilizzare \"Elimina mail dopo averle scaricate \" = NO assieme a \"Recupera tutte le email\" = SI'; $wb['source_delete_note_txt'] = 'Please check first if email retrieval works, before you activate this option.'; ?> diff --git a/interface/web/mail/lib/lang/ja_mail_get.lng b/interface/web/mail/lib/lang/ja_mail_get.lng index 3c5c9ec092..f1c45256bf 100644 --- a/interface/web/mail/lib/lang/ja_mail_get.lng +++ b/interface/web/mail/lib/lang/ja_mail_get.lng @@ -14,6 +14,6 @@ $wb['source_password_error_isempty'] = 'パスワードを指定ã—ã¦ãã ã• $wb['destination_error_isemail'] = '宛先をé¸æŠžã—ã¦ãã ã•ã„。'; $wb['source_server_error_regex'] = 'Pop3/Imap Server is not a valid domain name.'; $wb['source_read_all_txt'] = 'Retrieve all emails (incl. read mails)'; -$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['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'] = 'Please check first if email retrieval works, before you activate this option.'; ?> diff --git a/interface/web/mail/lib/lang/nl_mail_get.lng b/interface/web/mail/lib/lang/nl_mail_get.lng index 5cbeab14e7..6752b42cd8 100644 --- a/interface/web/mail/lib/lang/nl_mail_get.lng +++ b/interface/web/mail/lib/lang/nl_mail_get.lng @@ -14,6 +14,6 @@ $wb['source_password_error_isempty'] = 'Wachtwoord is niet ingvuld.'; $wb['destination_error_isemail'] = 'Geen bestemming geselecteerd.'; $wb['source_server_error_regex'] = 'Pop3/Imap server is geen geldige domeinnaam.'; $wb['source_read_all_txt'] = 'Retrieve all emails (incl. read mails)'; -$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['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'] = 'Please check first if email retrieval works, before you activate this option.'; ?> diff --git a/interface/web/mail/lib/lang/nl_mail_user.lng b/interface/web/mail/lib/lang/nl_mail_user.lng index 94dd018332..acc2da94e1 100644 --- a/interface/web/mail/lib/lang/nl_mail_user.lng +++ b/interface/web/mail/lib/lang/nl_mail_user.lng @@ -36,7 +36,7 @@ $wb['name_txt'] = 'Echte naam'; $wb['name_optional_txt'] = '(Optioneel)'; $wb['autoresponder_active'] = 'Inschakelen autoresponder'; $wb['cc_txt'] = 'Stuur kopie naar'; -$wb['cc_error_isemail'] = 'Het \\"Stuur kopie naar\\" veld bevat geen geldig e-mail adres'; +$wb['cc_error_isemail'] = 'Het \"Stuur kopie naar\" veld bevat geen geldig e-mail adres'; $wb['domain_txt'] = 'Domain'; $wb['now_txt'] = 'Now'; $wb['login_error_unique'] = 'Login is already taken.'; @@ -60,6 +60,6 @@ $wb['cc_note_txt'] = '(Meerdere e-mail adressen scheiden met een komma)'; $wb['disablesmtp_txt'] = 'Uitschakelen SMTP (versturen)'; $wb['autoresponder_start_date_is_required'] = 'Start date must be set when Autoresponder is enabled.'; $wb['sender_cc_txt'] = 'Stuur uitgaande kopie aan'; -$wb['sender_cc_error_isemail'] = 'Het \\"Stuur uitgaande kopie aan\\" veld bevat geen geldig e-mail adres'; +$wb['sender_cc_error_isemail'] = 'Het \"Stuur uitgaande kopie aan\" veld bevat geen geldig e-mail adres'; $wb['sender_cc_note_txt'] = '(Meerdere e-mail adressen scheiden met een komma)'; ?> diff --git a/interface/web/mail/lib/lang/pt_mail_get.lng b/interface/web/mail/lib/lang/pt_mail_get.lng index 883279a2d5..f3ea6227fa 100644 --- a/interface/web/mail/lib/lang/pt_mail_get.lng +++ b/interface/web/mail/lib/lang/pt_mail_get.lng @@ -14,6 +14,6 @@ $wb['source_password_error_isempty'] = 'Senha em branco.'; $wb['destination_error_isemail'] = 'Destino não seleccionado.'; $wb['source_server_error_regex'] = 'Servidor Pop3/Imap não é um nome de domÃnio válido.'; $wb['source_read_all_txt'] = 'Retrieve all emails (incl. read mails)'; -$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['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'] = 'Please check first if email retrieval works, before you activate this option.'; ?> diff --git a/interface/web/mail/lib/lang/ro_mail_get.lng b/interface/web/mail/lib/lang/ro_mail_get.lng index 5e0a590f70..16a0b6aeb7 100644 --- a/interface/web/mail/lib/lang/ro_mail_get.lng +++ b/interface/web/mail/lib/lang/ro_mail_get.lng @@ -14,6 +14,6 @@ $wb['source_password_error_isempty'] = 'Password este necompletat'; $wb['destination_error_isemail'] = 'Nici o destinatie nu e selectata'; $wb['source_server_error_regex'] = 'Pop3/Imap Server is not a valid domain name.'; $wb['source_read_all_txt'] = 'Retrieve all emails (incl. read mails)'; -$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['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'] = 'Please check first if email retrieval works, before you activate this option.'; ?> diff --git a/interface/web/mail/lib/lang/ru_mail_get.lng b/interface/web/mail/lib/lang/ru_mail_get.lng index b3f2f0b6bf..0ce613cd05 100644 --- a/interface/web/mail/lib/lang/ru_mail_get.lng +++ b/interface/web/mail/lib/lang/ru_mail_get.lng @@ -14,6 +14,6 @@ $wb['source_password_error_isempty'] = 'ПуÑтой пароль.'; $wb['destination_error_isemail'] = 'Ðе выбран получатель или запиÑÑŒ некорректна.'; $wb['source_server_error_regex'] = 'Ðекорректное доменное Ð¸Ð¼Ñ Ð´Ð»Ñ Ñервера POP3/IMAP.'; $wb['source_read_all_txt'] = 'Получать вÑе ÑÐ¾Ð¾Ð±Ñ‰ÐµÐ½Ð¸Ñ Ñлектронной почты (Ð²ÐºÐ»ÑŽÑ‡Ð°Ñ Ð¿Ñ€Ð¾Ñ‡Ð¸Ñ‚Ð°Ð½Ð½Ñ‹Ðµ пиÑьма)'; -$wb['error_delete_read_all_combination'] = 'ÐедопуÑÑ‚Ð¸Ð¼Ð°Ñ ÐºÐ¾Ð¼Ð±Ð¸Ð½Ð°Ñ†Ð¸Ñ Ð¿Ð°Ñ€Ð°Ð¼ÐµÑ‚Ñ€Ð¾Ð². Ð’Ñ‹ не можете иÑпользовать \\"Удалить пиÑьма поÑле получениÑ\\" = ÐЕТ вмеÑте Ñ \\"Получить вÑе пиÑьма\\" = ДÐ'; +$wb['error_delete_read_all_combination'] = 'ÐедопуÑÑ‚Ð¸Ð¼Ð°Ñ ÐºÐ¾Ð¼Ð±Ð¸Ð½Ð°Ñ†Ð¸Ñ Ð¿Ð°Ñ€Ð°Ð¼ÐµÑ‚Ñ€Ð¾Ð². Ð’Ñ‹ не можете иÑпользовать \"Удалить пиÑьма поÑле получениÑ\" = ÐЕТ вмеÑте Ñ \"Получить вÑе пиÑьма\" = ДÐ'; $wb['source_delete_note_txt'] = 'ПожалуйÑта, прежде чем активировать Ñтот параметр, убедитеÑÑŒ в том, что Ñборщик почты работает.'; ?> diff --git a/interface/web/mail/lib/lang/ru_mail_user_filter.lng b/interface/web/mail/lib/lang/ru_mail_user_filter.lng index c8306f9838..ecc2d25b9d 100644 --- a/interface/web/mail/lib/lang/ru_mail_user_filter.lng +++ b/interface/web/mail/lib/lang/ru_mail_user_filter.lng @@ -6,7 +6,7 @@ $wb['active_txt'] = 'Ðктивно'; $wb['rulename_error_empty'] = 'Ð˜Ð¼Ñ Ð¿ÑƒÑтое.'; $wb['searchterm_is_empty'] = 'Поле поиÑка пуÑтое.'; $wb['source_txt'] = 'ИÑточник'; -$wb['target_error_regex'] = 'Ðазначение может Ñодержать только Ñледующие Ñимволы: \\"a-z\\", \\"0-9\\", \\"-\\", \\".\\", \\"_\\" и {пробел}'; +$wb['target_error_regex'] = 'Ðазначение может Ñодержать только Ñледующие Ñимволы: \"a-z\", \"0-9\", \"-\", \".\", \"_\" и {пробел}'; $wb['limit_mailfilter_txt'] = 'МакÑимальное чиÑло почтовых фильтров доÑтигнуто.'; $wb['subject_txt'] = 'Тема'; $wb['from_txt'] = 'От'; diff --git a/interface/web/mail/lib/lang/se_mail_get.lng b/interface/web/mail/lib/lang/se_mail_get.lng index 9ed9710055..db4440210e 100644 --- a/interface/web/mail/lib/lang/se_mail_get.lng +++ b/interface/web/mail/lib/lang/se_mail_get.lng @@ -14,6 +14,6 @@ $wb['source_password_error_isempty'] = 'Lösenord är tomt.'; $wb['destination_error_isemail'] = 'Ingen destination vald.'; $wb['source_server_error_regex'] = 'POP3-/Imapserver är inte ett giltigt domännamn.'; $wb['source_read_all_txt'] = 'Hämta all epost (även läst epost)'; -$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['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'] = 'Vänligen kontrollera först om eposthämtning fungerar innan du aktiverar detta val..'; ?> diff --git a/interface/web/mail/lib/lang/sk_mail_get.lng b/interface/web/mail/lib/lang/sk_mail_get.lng index e43899965d..8e180ca7a8 100644 --- a/interface/web/mail/lib/lang/sk_mail_get.lng +++ b/interface/web/mail/lib/lang/sk_mail_get.lng @@ -14,6 +14,6 @@ $wb['source_password_error_isempty'] = 'Heslo je prázdne.'; $wb['destination_error_isemail'] = 'Žiadny Cieľ nebol vybraný.'; $wb['source_server_error_regex'] = 'Pop3/Imap Server nie je valÃdne doménové meno.'; $wb['source_read_all_txt'] = 'Retrieve all emails (incl. read mails)'; -$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['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'] = 'Please check first if email retrieval works, before you activate this option.'; ?> diff --git a/interface/web/mail/lib/lang/tr_mail_get.lng b/interface/web/mail/lib/lang/tr_mail_get.lng index b82b6c8c9a..3e29c26a71 100644 --- a/interface/web/mail/lib/lang/tr_mail_get.lng +++ b/interface/web/mail/lib/lang/tr_mail_get.lng @@ -15,5 +15,5 @@ $wb['source_username_error_isempty'] = 'Kullanıcı adı boÅŸ olamaz.'; $wb['source_password_error_isempty'] = 'Parola boÅŸ olamaz.'; $wb['destination_error_isemail'] = 'Hedef seçilmemiÅŸ.'; $wb['source_server_error_regex'] = 'POP3/IMAP Sunucu alan adı geçersiz.'; -$wb['error_delete_read_all_combination'] = 'Seçenek kombinasyonu geçersiz. You can not use \\"E-postalar alındıktan sonra silinsin\\" = Hayır iken \\"Tüm e-postalar alınsın\\" = Evet olamaz'; +$wb['error_delete_read_all_combination'] = 'Seçenek kombinasyonu geçersiz. You can not use \"E-postalar alındıktan sonra silinsin\" = Hayır iken \"Tüm e-postalar alınsın\" = Evet olamaz'; ?> diff --git a/interface/web/mailuser/lib/lang/ru_mail_user_filter.lng b/interface/web/mailuser/lib/lang/ru_mail_user_filter.lng index d834e4057a..f10dd4ddb2 100644 --- a/interface/web/mailuser/lib/lang/ru_mail_user_filter.lng +++ b/interface/web/mailuser/lib/lang/ru_mail_user_filter.lng @@ -6,7 +6,7 @@ $wb['active_txt'] = 'Ðктивно'; $wb['rulename_error_empty'] = 'Ð˜Ð¼Ñ Ð¿ÑƒÑтое.'; $wb['searchterm_is_empty'] = 'Поле поиÑка пуÑтое.'; $wb['source_txt'] = 'ИÑточник'; -$wb['target_error_regex'] = 'Ðазначение может Ñодержать только Ñледующие Ñимволы: \\"a-z\\", \\"0-9\\", \\"-\\", \\".\\", \\"_\\" и {пробел}'; +$wb['target_error_regex'] = 'Ðазначение может Ñодержать только Ñледующие Ñимволы: \"a-z\", \"0-9\", \"-\", \".\", \"_\" и {пробел}'; $wb['limit_mailfilter_txt'] = 'МакÑимальное чиÑло почтовых фильтров доÑтигнуто.'; $wb['subject_txt'] = 'Тема'; $wb['from_txt'] = 'От'; diff --git a/interface/web/monitor/lib/lang/es.lng b/interface/web/monitor/lib/lang/es.lng index f4acb3c45c..3a95c6e9c2 100755 --- a/interface/web/monitor/lib/lang/es.lng +++ b/interface/web/monitor/lib/lang/es.lng @@ -27,7 +27,7 @@ $wb['monitor_logs_mailerr_txt'] = 'Registros de errores de correo'; $wb['monitor_logs_mailwarn_txt'] = 'Registros de advertencias de correo'; $wb['monitor_logs_messages_txt'] = 'Registros de mensajes del sistema'; $wb['monitor_norkhunter_txt'] = 'RKHunter no está instalado, por lo que no hay registros a mostrar'; -$wb['monitor_nosupportedraid1_txt'] = 'Por el momento, soportamos \\"mdadm\\" o \\"mpt-status\\" para supervisar el RAID.<br>No hemos podido encontrarlo en su servidor. </br> Por lo tanto no podemos monitorizar su RAID todavÃa.'; +$wb['monitor_nosupportedraid1_txt'] = 'Por el momento, soportamos \"mdadm\" o \"mpt-status\" para supervisar el RAID.<br>No hemos podido encontrarlo en su servidor. </br> Por lo tanto no podemos monitorizar su RAID todavÃa.'; $wb['monitor_serverstate_beancountercritical_txt'] = 'Existen muchos errores en el Beancounter'; $wb['monitor_serverstate_beancountererror_txt'] = 'Existen muchÃsimos errores en el Beancounter'; $wb['monitor_serverstate_beancounterinfo_txt'] = 'Existen algún error en el Beancounter'; diff --git a/interface/web/sites/lib/lang/ar.lng b/interface/web/sites/lib/lang/ar.lng index 6ca61afae0..bfd833292d 100644 --- a/interface/web/sites/lib/lang/ar.lng +++ b/interface/web/sites/lib/lang/ar.lng @@ -31,5 +31,5 @@ $wb['Available packages'] = 'Available packages'; $wb['Installed packages'] = 'Installed packages'; $wb['Update Packagelist'] = 'Update Packagelist'; $wb['Subdomain (Vhost)'] = 'Subdomain (Vhost)'; -$wb['error_proxy_requires_url'] = 'Redirect Type \\"proxy\\" requires a URL as the redirect path.'; +$wb['error_proxy_requires_url'] = 'Redirect Type \"proxy\" requires a URL as the redirect path.'; ?> diff --git a/interface/web/sites/lib/lang/ar_aps.lng b/interface/web/sites/lib/lang/ar_aps.lng index 881c146a4d..3ff130f57e 100644 --- a/interface/web/sites/lib/lang/ar_aps.lng +++ b/interface/web/sites/lib/lang/ar_aps.lng @@ -38,14 +38,14 @@ $wb['error_inv_main_location'] = 'The given install location folder is invalid.' $wb['error_license_agreement'] = 'In order to continue you have to accept the license agreement.'; $wb['error_no_database_pw'] = 'You have provided no valid database password.'; $wb['error_short_database_pw'] = 'Please choose a longer database password.'; -$wb['error_no_value_for'] = 'The field \\"%s\\" must not be empty.'; -$wb['error_short_value_for'] = 'The field \\"%s\\" requires a longer input value.'; -$wb['error_long_value_for'] = 'The field \\"%s\\" requires a shorter input value.'; -$wb['error_inv_value_for'] = 'You have entered an invalid value for the field \\"%s\\".'; -$wb['error_inv_email_for'] = 'You have entered an invalid mail address for the field \\"%s\\".'; -$wb['error_inv_domain_for'] = 'You have entered an invalid domain for the field \\"%s\\".'; -$wb['error_inv_integer_for'] = 'You have entered an invalid number for the field \\"%s\\".'; -$wb['error_inv_float_for'] = 'You have entered an invalid floating point number for the field \\"%s\\".'; +$wb['error_no_value_for'] = 'The field \"%s\" must not be empty.'; +$wb['error_short_value_for'] = 'The field \"%s\" requires a longer input value.'; +$wb['error_long_value_for'] = 'The field \"%s\" requires a shorter input value.'; +$wb['error_inv_value_for'] = 'You have entered an invalid value for the field \"%s\".'; +$wb['error_inv_email_for'] = 'You have entered an invalid mail address for the field \"%s\".'; +$wb['error_inv_domain_for'] = 'You have entered an invalid domain for the field \"%s\".'; +$wb['error_inv_integer_for'] = 'You have entered an invalid number for the field \"%s\".'; +$wb['error_inv_float_for'] = 'You have entered an invalid floating point number for the field \"%s\".'; $wb['error_used_location'] = 'The installation path already contains a package installation.'; $wb['installation_task_txt'] = 'Install planned'; $wb['installation_error_txt'] = 'Install error'; diff --git a/interface/web/sites/lib/lang/ar_web_childdomain.lng b/interface/web/sites/lib/lang/ar_web_childdomain.lng index 636505f248..604a81b68f 100644 --- a/interface/web/sites/lib/lang/ar_web_childdomain.lng +++ b/interface/web/sites/lib/lang/ar_web_childdomain.lng @@ -43,7 +43,7 @@ $wb['no_flag_txt'] = 'No flag'; $wb['domain_error_wildcard'] = 'Wildcard subdomains are not allowed.'; $wb['proxy_directives_txt'] = 'Proxy Directives'; $wb['available_proxy_directive_snippets_txt'] = 'Available Proxy Directive Snippets:'; -$wb['error_proxy_requires_url'] = 'Redirect Type \\"proxy\\" requires a URL as the redirect path.'; +$wb['error_proxy_requires_url'] = 'Redirect Type \"proxy\" requires a URL as the redirect path.'; $wb['backup_interval_txt'] = 'Backup interval'; $wb['backup_copies_txt'] = 'Number of backup copies'; $wb['ssl_key_txt'] = 'SSL Key'; diff --git a/interface/web/sites/lib/lang/ar_web_subdomain.lng b/interface/web/sites/lib/lang/ar_web_subdomain.lng index c5fa1711bb..1295f36697 100644 --- a/interface/web/sites/lib/lang/ar_web_subdomain.lng +++ b/interface/web/sites/lib/lang/ar_web_subdomain.lng @@ -42,7 +42,7 @@ $wb['no_flag_txt'] = 'No flag'; $wb['domain_error_wildcard'] = 'Wildcard subdomains are not allowed.'; $wb['proxy_directives_txt'] = 'Proxy Directives'; $wb['available_proxy_directive_snippets_txt'] = 'Available Proxy Directive Snippets:'; -$wb['error_proxy_requires_url'] = 'Redirect Type \\"proxy\\" requires a URL as the redirect path.'; +$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.'; diff --git a/interface/web/sites/lib/lang/bg.lng b/interface/web/sites/lib/lang/bg.lng index 0d28df2994..842b70ae02 100644 --- a/interface/web/sites/lib/lang/bg.lng +++ b/interface/web/sites/lib/lang/bg.lng @@ -31,5 +31,5 @@ $wb['Available packages'] = 'Available packages'; $wb['Installed packages'] = 'Installed packages'; $wb['Update Packagelist'] = 'Update Packagelist'; $wb['Subdomain (Vhost)'] = 'Subdomain (Vhost)'; -$wb['error_proxy_requires_url'] = 'Redirect Type \\"proxy\\" requires a URL as the redirect path.'; +$wb['error_proxy_requires_url'] = 'Redirect Type \"proxy\" requires a URL as the redirect path.'; ?> diff --git a/interface/web/sites/lib/lang/bg_aps.lng b/interface/web/sites/lib/lang/bg_aps.lng index 6a5f981943..612adcd429 100644 --- a/interface/web/sites/lib/lang/bg_aps.lng +++ b/interface/web/sites/lib/lang/bg_aps.lng @@ -38,14 +38,14 @@ $wb['error_inv_main_location'] = 'The given install location folder is invalid.' $wb['error_license_agreement'] = 'In order to continue you have to accept the license agreement.'; $wb['error_no_database_pw'] = 'You have provided no valid database password.'; $wb['error_short_database_pw'] = 'Please choose a longer database password.'; -$wb['error_no_value_for'] = 'The field \\"%s\\" must not be empty.'; -$wb['error_short_value_for'] = 'The field \\"%s\\" requires a longer input value.'; -$wb['error_long_value_for'] = 'The field \\"%s\\" requires a shorter input value.'; -$wb['error_inv_value_for'] = 'You have entered an invalid value for the field \\"%s\\".'; -$wb['error_inv_email_for'] = 'You have entered an invalid mail address for the field \\"%s\\".'; -$wb['error_inv_domain_for'] = 'You have entered an invalid domain for the field \\"%s\\".'; -$wb['error_inv_integer_for'] = 'You have entered an invalid number for the field \\"%s\\".'; -$wb['error_inv_float_for'] = 'You have entered an invalid floating point number for the field \\"%s\\".'; +$wb['error_no_value_for'] = 'The field \"%s\" must not be empty.'; +$wb['error_short_value_for'] = 'The field \"%s\" requires a longer input value.'; +$wb['error_long_value_for'] = 'The field \"%s\" requires a shorter input value.'; +$wb['error_inv_value_for'] = 'You have entered an invalid value for the field \"%s\".'; +$wb['error_inv_email_for'] = 'You have entered an invalid mail address for the field \"%s\".'; +$wb['error_inv_domain_for'] = 'You have entered an invalid domain for the field \"%s\".'; +$wb['error_inv_integer_for'] = 'You have entered an invalid number for the field \"%s\".'; +$wb['error_inv_float_for'] = 'You have entered an invalid floating point number for the field \"%s\".'; $wb['error_used_location'] = 'The installation path already contains a package installation.'; $wb['installation_task_txt'] = 'Install planned'; $wb['installation_error_txt'] = 'Install error'; diff --git a/interface/web/sites/lib/lang/bg_web_childdomain.lng b/interface/web/sites/lib/lang/bg_web_childdomain.lng index c7549b76f7..7106438c34 100644 --- a/interface/web/sites/lib/lang/bg_web_childdomain.lng +++ b/interface/web/sites/lib/lang/bg_web_childdomain.lng @@ -42,7 +42,7 @@ $wb['no_flag_txt'] = 'No flag'; $wb['domain_error_wildcard'] = 'Wildcard subdomains are not allowed.'; $wb['proxy_directives_txt'] = 'Proxy Directives'; $wb['available_proxy_directive_snippets_txt'] = 'Available Proxy Directive Snippets:'; -$wb['error_proxy_requires_url'] = 'Redirect Type \\"proxy\\" requires a URL as the redirect path.'; +$wb['error_proxy_requires_url'] = 'Redirect Type \"proxy\" requires a URL as the redirect path.'; $wb['backup_interval_txt'] = 'Backup interval'; $wb['backup_copies_txt'] = 'Number of backup copies'; $wb['ssl_key_txt'] = 'SSL Key'; diff --git a/interface/web/sites/lib/lang/bg_web_subdomain.lng b/interface/web/sites/lib/lang/bg_web_subdomain.lng index 0df1e50594..f4218278d9 100644 --- a/interface/web/sites/lib/lang/bg_web_subdomain.lng +++ b/interface/web/sites/lib/lang/bg_web_subdomain.lng @@ -42,7 +42,7 @@ $wb['no_flag_txt'] = 'No flag'; $wb['domain_error_wildcard'] = 'Wildcard subdomains are not allowed.'; $wb['proxy_directives_txt'] = 'Proxy Directives'; $wb['available_proxy_directive_snippets_txt'] = 'Available Proxy Directive Snippets:'; -$wb['error_proxy_requires_url'] = 'Redirect Type \\"proxy\\" requires a URL as the redirect path.'; +$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.'; diff --git a/interface/web/sites/lib/lang/br.lng b/interface/web/sites/lib/lang/br.lng index 685ce6ed28..3fdd93585e 100644 --- a/interface/web/sites/lib/lang/br.lng +++ b/interface/web/sites/lib/lang/br.lng @@ -30,6 +30,6 @@ $wb['Available packages'] = 'Pacotes disponÃveis'; $wb['Installed packages'] = 'Pacotes instalados'; $wb['Update Packagelist'] = 'Atualizar lista de pacotes'; $wb['Subdomain (Vhost)'] = 'SubdomÃnio (vhost)'; -$wb['error_proxy_requires_url'] = 'Tipo de redirecionamento \\"proxy\\" exige uma url como caminho do redirecionamento.'; +$wb['error_proxy_requires_url'] = 'Tipo de redirecionamento \"proxy\" exige uma url como caminho do redirecionamento.'; $wb['Domain'] = 'DomÃnio'; ?> diff --git a/interface/web/sites/lib/lang/br_cron.lng b/interface/web/sites/lib/lang/br_cron.lng index 2bbadf6d1b..eab5b9f688 100644 --- a/interface/web/sites/lib/lang/br_cron.lng +++ b/interface/web/sites/lib/lang/br_cron.lng @@ -19,8 +19,8 @@ $wb['run_wday_error_format'] = 'Formato dos dias da semana é inválido.'; $wb['command_error_format'] = 'Formato de comando é inválido. Somente endereços url http/https são permitidos.'; $wb['unknown_fieldtype_error'] = 'Um tipo desconhecido de campo foi usado.'; $wb['server_id_error_empty'] = 'O ID do servidor está em branco.'; -$wb['limit_cron_url_txt'] = 'Somente url do cron. Por favor, insira uma url iniciando com \\"http://\\" e um comando do cron.'; +$wb['limit_cron_url_txt'] = 'Somente url do cron. Por favor, insira uma url iniciando com \"http://\" e um comando do cron.'; $wb['command_error_empty'] = 'Comando está em branco.'; -$wb['command_hint_txt'] = 'Você poderá usar, por exemplo: \\"/var/www/clients/clientX/webY/meu_script.sh\\" ou \\"http://www.dominio.com.br/path/script.php\\" e também a palavra reservada \\"[web_root]\\" substituÃdo por \\"/var/www/clients/clientX/webY/web\\".'; +$wb['command_hint_txt'] = 'Você poderá usar, por exemplo: \"/var/www/clients/clientX/webY/meu_script.sh\" ou \"http://www.dominio.com.br/path/script.php\" e também a palavra reservada \"[web_root]\" substituÃdo por \"/var/www/clients/clientX/webY/web\".'; $wb['log_output_txt'] = 'SaÃda do Log'; ?> diff --git a/interface/web/sites/lib/lang/br_database.lng b/interface/web/sites/lib/lang/br_database.lng index ac916feef1..57b97693eb 100644 --- a/interface/web/sites/lib/lang/br_database.lng +++ b/interface/web/sites/lib/lang/br_database.lng @@ -23,7 +23,7 @@ $wb['database_remote_error_ips'] = 'Pelo menos um dos endereços IP informados n $wb['database_name_error_len'] = 'Nome do banco de dados - {db} - é muito longo. 64 caracteres, incluindo o prefixo, é o limite permitido.'; $wb['database_user_error_len'] = 'Nome do usuário do banco de dados \'{user}\' é muito longo. 16 caracteres, incluindo o prefixo, é o limite permitido.'; $wb['parent_domain_id_txt'] = 'Site'; -$wb['database_site_error_empty'] = 'Selecione o \\"site\\" ao qual o banco de dados pertence.'; +$wb['database_site_error_empty'] = 'Selecione o \"site\" ao qual o banco de dados pertence.'; $wb['select_site_txt'] = '- Selecionar site -'; $wb['btn_save_txt'] = 'Salvar'; $wb['btn_cancel_txt'] = 'Cancelar'; diff --git a/interface/web/sites/lib/lang/br_database_user.lng b/interface/web/sites/lib/lang/br_database_user.lng index 59b9fce627..518f0296e1 100644 --- a/interface/web/sites/lib/lang/br_database_user.lng +++ b/interface/web/sites/lib/lang/br_database_user.lng @@ -6,7 +6,7 @@ $wb['client_txt'] = 'Cliente'; $wb['active_txt'] = 'Ativo'; $wb['database_user_error_empty'] = 'Usuário do banco de dados está em branco.'; $wb['database_user_error_unique'] = 'Já existe um usuário do banco de dados com este nome no servidor. Para configurar um nome exclusivo, use como prefixo o domÃnio para o nome do usuário.'; -$wb['database_user_error_regex'] = 'Usuário do banco de dados inválido! O nome do usuário pode conter os seguintes caracteres: \'\\"a-z\', \'A-Z\', \'0-9\' e o \'underscore\'. Tamanho: 2 - 64 caracteres.'; +$wb['database_user_error_regex'] = 'Usuário do banco de dados inválido! O nome do usuário pode conter os seguintes caracteres: \'\"a-z\', \'A-Z\', \'0-9\' e o \'underscore\'. Tamanho: 2 - 64 caracteres.'; $wb['database_user_error_len'] = 'O usuário do banco de dados - {user} - é muito longo. O limite do nome do usuário, incluindo o prefixo, são 16 caracteres.'; $wb['btn_save_txt'] = 'Salvar'; $wb['btn_cancel_txt'] = 'Cancelar'; diff --git a/interface/web/sites/lib/lang/br_ftp_user.lng b/interface/web/sites/lib/lang/br_ftp_user.lng index 3df741ed9e..bb8d99ceb0 100644 --- a/interface/web/sites/lib/lang/br_ftp_user.lng +++ b/interface/web/sites/lib/lang/br_ftp_user.lng @@ -25,8 +25,8 @@ $wb['directory_error_empty'] = 'Diretório está em branco.'; $wb['directory_error_notinweb'] = 'O diretório não está dentro do diretório web principal.'; $wb['parent_domain_id_error_empty'] = 'Nenhum site selecionado.'; $wb['quota_size_error_regex'] = 'Cota: insira -1 para ilimitado ou um número > 0'; -$wb['dir_dot_error'] = 'Não é permitido \\"..\\" no caminho.'; -$wb['dir_slashdot_error'] = 'Não é permitido \\"./\\" no caminho.'; +$wb['dir_dot_error'] = 'Não é permitido \"..\" no caminho.'; +$wb['dir_slashdot_error'] = 'Não é permitido \"./\" no caminho.'; $wb['generate_password_txt'] = 'Gerar senha'; $wb['repeat_password_txt'] = 'Repetir senha'; $wb['password_mismatch_txt'] = 'A senhas não coincidem.'; diff --git a/interface/web/sites/lib/lang/br_shell_user.lng b/interface/web/sites/lib/lang/br_shell_user.lng index 3cbc911ab3..c92bf5baa4 100644 --- a/interface/web/sites/lib/lang/br_shell_user.lng +++ b/interface/web/sites/lib/lang/br_shell_user.lng @@ -20,8 +20,8 @@ $wb['parent_domain_id_error_empty'] = 'Nenhum site selecionado.'; $wb['puser_txt'] = 'Usuário web'; $wb['pgroup_txt'] = 'Grupo web'; $wb['ssh_rsa_txt'] = 'Chave pública SSH-RSA (para acessos baseados em chave)'; -$wb['dir_dot_error'] = 'Não é permitido \\"..\\" no caminho.'; -$wb['dir_slashdot_error'] = 'Não é permitido \\"./\\" no caminho.'; +$wb['dir_dot_error'] = 'Não é permitido \"..\" no caminho.'; +$wb['dir_slashdot_error'] = 'Não é permitido \"./\" no caminho.'; $wb['generate_password_txt'] = 'Gerar senha'; $wb['repeat_password_txt'] = 'Repetir senha'; $wb['password_mismatch_txt'] = 'A senhas não coincidem.'; diff --git a/interface/web/sites/lib/lang/br_web_aliasdomain.lng b/interface/web/sites/lib/lang/br_web_aliasdomain.lng index 4acadb2c54..9d4f1951d8 100644 --- a/interface/web/sites/lib/lang/br_web_aliasdomain.lng +++ b/interface/web/sites/lib/lang/br_web_aliasdomain.lng @@ -14,7 +14,7 @@ $wb['ssl_bundle_txt'] = 'Pacote'; $wb['ssl_action_txt'] = 'Ação'; $wb['ssl_domain_txt'] = 'DomÃnio'; $wb['server_id_txt'] = 'Servidor'; -$wb['web_folder_error_regex'] = 'Pasta inválida inserida. Por favor, não use barra \\"/\\".'; +$wb['web_folder_error_regex'] = 'Pasta inválida inserida. Por favor, não use barra \"/\".'; $wb['type_txt'] = 'Tipo'; $wb['parent_domain_id_txt'] = 'Site pai'; $wb['redirect_type_txt'] = 'Tipo de redirecionamento'; @@ -62,7 +62,7 @@ $wb['ssl_organisation_error_regex'] = 'Campo \'Empresa\' é inválido. São cara $wb['ssl_organistaion_unit_error_regex'] = 'Campo \'Departamento\' é inválido. São caracteres válidos: \'a-z\', \'0-9\' e \'.,-_\'.'; $wb['ssl_country_error_regex'] = 'Campo \'PaÃs\' é inválido. São caracteres válidos: \'A-Z\'.'; $wb['limit_traffic_quota_free_txt'] = 'Cota máxima de tráfego disponÃvel'; -$wb['redirect_error_regex'] = 'Caminho de redirecionamento é inválido. Exemplos de caminhos válidos: \\"/teste/\\" ou \\"http://www.dominio.com.br/teste/\\".'; +$wb['redirect_error_regex'] = 'Caminho de redirecionamento é inválido. Exemplos de caminhos válidos: \"/teste/\" ou \"http://www.dominio.com.br/teste/\".'; $wb['php_open_basedir_txt'] = 'Diretório open_basedir do PHP'; $wb['traffic_quota_exceeded_txt'] = 'Cota de tráfego excedida'; $wb['ruby_txt'] = 'Ruby'; diff --git a/interface/web/sites/lib/lang/br_web_childdomain.lng b/interface/web/sites/lib/lang/br_web_childdomain.lng index ecff0c2ae8..1c53d16584 100644 --- a/interface/web/sites/lib/lang/br_web_childdomain.lng +++ b/interface/web/sites/lib/lang/br_web_childdomain.lng @@ -36,18 +36,18 @@ $wb['domain_error_empty'] = 'DomÃnio está em branco.'; $wb['domain_error_unique'] = 'Já existe apelido de domÃnio ou subdomÃnio com este nome.'; $wb['domain_error_regex'] = 'Nome de domÃnio é inválido.'; $wb['host_txt'] = 'Nome do servidor'; -$wb['redirect_error_regex'] = 'Caminho de redirecionamento é inválido. Exemplo de caminho válido: \\"/teste/\\" ou \\"http://www.dominio.com.br/teste/\\".'; +$wb['redirect_error_regex'] = 'Caminho de redirecionamento é inválido. Exemplo de caminho válido: \"/teste/\" ou \"http://www.dominio.com.br/teste/\".'; $wb['no_redirect_txt'] = 'Sem redirecionamento'; $wb['no_flag_txt'] = 'Sem marcas'; $wb['domain_error_wildcard'] = 'Curingas para subdomÃnios não são permitidos.'; $wb['proxy_directives_txt'] = 'Diretivas do proxy'; $wb['available_proxy_directive_snippets_txt'] = 'Diretivas de trechos de código do proxy disponÃveis:'; -$wb['error_proxy_requires_url'] = 'O tipo de redirecionamento \\"proxy\\" exige uma url no caminho de redirecionamento.'; +$wb['error_proxy_requires_url'] = 'O tipo de redirecionamento \"proxy\" exige uma url no caminho de redirecionamento.'; $wb['backup_interval_txt'] = 'Intervalo de backup'; $wb['backup_copies_txt'] = 'Limite de cópias do backup'; $wb['ssl_key_txt'] = 'Chave'; $wb['ssl_domain_txt'] = 'DomÃnio do SSL'; -$wb['web_folder_error_regex'] = 'Pasta inválida informada. Por favor não use uma barra - \\"/\\".'; +$wb['web_folder_error_regex'] = 'Pasta inválida informada. Por favor não use uma barra - \"/\".'; $wb['ipv6_address_txt'] = 'Endereço IPv6'; $wb['errordocs_txt'] = 'Pasta personalizada Error-Documents'; $wb['subdomain_txt'] = 'SubdomÃnio automático'; diff --git a/interface/web/sites/lib/lang/br_web_domain.lng b/interface/web/sites/lib/lang/br_web_domain.lng index 662fdb407c..4b2e77b654 100644 --- a/interface/web/sites/lib/lang/br_web_domain.lng +++ b/interface/web/sites/lib/lang/br_web_domain.lng @@ -52,10 +52,10 @@ $wb['limit_web_quota_free_txt'] = 'Cota máxima de disco disponÃvel'; $wb['ssl_state_error_regex'] = 'Campo \'Estado\' é inválido. São caracteres válidos: \'a-z\', \'0-9\' e \'.,-_\'.'; $wb['ssl_locality_error_regex'] = 'Campo \'Cidade\' é inválido. São caracteres válidos: \'a-z\', \'0-9\' e \'.,-_\'.'; $wb['ssl_organisation_error_regex'] = 'Campo \'Empresa\' é inválido. São caracteres válidos: \'a-z\', \'0-9\' e \'.,-_\'.'; -$wb['ssl_organistaion_unit_error_regex'] = 'Campo \'Departamento\' é inválido. São caracteres válidos: \\"a-z\\", \'0-9\' e \'.,-_\'.'; +$wb['ssl_organistaion_unit_error_regex'] = 'Campo \'Departamento\' é inválido. São caracteres válidos: \"a-z\", \'0-9\' e \'.,-_\'.'; $wb['ssl_country_error_regex'] = 'Campo \'PaÃs\' é inválido. São caracteres válidos: \'A-Z\'.'; $wb['limit_traffic_quota_free_txt'] = 'Cota máxima de tráfego disponÃvel'; -$wb['redirect_error_regex'] = 'Caminho de redirecionamento é inválido. Exemplos de caminhos válidos: \\"/teste/\\" ou \\"http://www.dominio.com.br/teste/\\".'; +$wb['redirect_error_regex'] = 'Caminho de redirecionamento é inválido. Exemplos de caminhos válidos: \"/teste/\" ou \"http://www.dominio.com.br/teste/\".'; $wb['php_open_basedir_txt'] = 'Diretório open_basedir do php'; $wb['traffic_quota_exceeded_txt'] = 'Cota de tráfego excedida'; $wb['backup_interval_txt'] = 'Intervalo de backup'; @@ -104,7 +104,7 @@ $wb['generate_password_txt'] = 'Gerar senha'; $wb['repeat_password_txt'] = 'Repetir senha'; $wb['password_mismatch_txt'] = 'A senhas não coincidem.'; $wb['password_match_txt'] = 'A senhas coincidem.'; -$wb['web_folder_error_regex'] = 'Pasta informada é inválida! Por favor não insira barra \\"/\\".'; +$wb['web_folder_error_regex'] = 'Pasta informada é inválida! Por favor não insira barra \"/\".'; $wb['domain_error_autosub'] = 'Já existe um subdomÃnio com estas configurações.'; $wb['available_php_directive_snippets_txt'] = 'Diretivas de trechos de código do php:'; $wb['available_apache_directive_snippets_txt'] = 'Diretivas de trechos de código do apache:'; diff --git a/interface/web/sites/lib/lang/br_web_subdomain.lng b/interface/web/sites/lib/lang/br_web_subdomain.lng index 0ccc574805..8abb050438 100644 --- a/interface/web/sites/lib/lang/br_web_subdomain.lng +++ b/interface/web/sites/lib/lang/br_web_subdomain.lng @@ -36,7 +36,7 @@ $wb['domain_error_empty'] = 'DomÃnio está em branco.'; $wb['domain_error_unique'] = 'Já existe apelido de domÃnio ou subdomÃnio com este nome.'; $wb['domain_error_regex'] = 'Nome do domÃnio é inválido.'; $wb['host_txt'] = 'Host'; -$wb['redirect_error_regex'] = 'Caminho de redirecionamento é inválido. Exemplo de caminho válido: \\"/teste/\\" ou \\"http://www.dominio.com.br/teste/\\".'; +$wb['redirect_error_regex'] = 'Caminho de redirecionamento é inválido. Exemplo de caminho válido: \"/teste/\" ou \"http://www.dominio.com.br/teste/\".'; $wb['no_redirect_txt'] = 'Sem redirecionamento'; $wb['no_flag_txt'] = 'Sem marcas'; $wb['domain_error_wildcard'] = 'Curingas de subdomÃnios não são permitidos.'; diff --git a/interface/web/sites/lib/lang/br_web_vhost_domain.lng b/interface/web/sites/lib/lang/br_web_vhost_domain.lng index 4c72b1fd88..d30db9f189 100644 --- a/interface/web/sites/lib/lang/br_web_vhost_domain.lng +++ b/interface/web/sites/lib/lang/br_web_vhost_domain.lng @@ -56,7 +56,7 @@ $wb['ssl_organisation_error_regex'] = 'Campo \'Empresa\' é inválido. São cara $wb['ssl_organistaion_unit_error_regex'] = 'Campo \'Departamento\' é inválido. São caracteres válidos: \'a-z\', \'0-9\' e \'.,-_\'.'; $wb['ssl_country_error_regex'] = 'Campo \'PaÃs\' é inválido. São caracteres válidos: \'A-Z\'.'; $wb['limit_traffic_quota_free_txt'] = 'Limite da cota de tráfego'; -$wb['redirect_error_regex'] = 'Caminho de redirecionamento é inválido. Exemplos de caminhos válidos: \\"/teste\\" ou \\"http://www.dominio.com.br/teste/\\".'; +$wb['redirect_error_regex'] = 'Caminho de redirecionamento é inválido. Exemplos de caminhos válidos: \"/teste\" ou \"http://www.dominio.com.br/teste/\".'; $wb['php_open_basedir_txt'] = 'Diretório open_basedir do php'; $wb['traffic_quota_exceeded_txt'] = 'Cota de tráfego excedida'; $wb['backup_interval_txt'] = 'Intervalo de backup'; @@ -106,7 +106,7 @@ $wb['generate_password_txt'] = 'Gerar senha'; $wb['repeat_password_txt'] = 'Repetir senha'; $wb['password_mismatch_txt'] = 'A senhas não coincidem.'; $wb['password_match_txt'] = 'A senhas coincidem.'; -$wb['web_folder_error_regex'] = 'Pasta inválida informada. Por favor não insira barra - \\"\\".'; +$wb['web_folder_error_regex'] = 'Pasta inválida informada. Por favor não insira barra - \"\".'; $wb['domain_error_autosub'] = 'Já existe um subdomÃnio com essas configurações.'; $wb['available_php_directive_snippets_txt'] = 'Diretivas de trechos de código do php disponÃveis:'; $wb['available_apache_directive_snippets_txt'] = 'Diretivas de trechos de código do apache disponÃveis:'; diff --git a/interface/web/sites/lib/lang/br_web_vhost_subdomain.lng b/interface/web/sites/lib/lang/br_web_vhost_subdomain.lng index fa6ddad484..8a0c3e6a1f 100644 --- a/interface/web/sites/lib/lang/br_web_vhost_subdomain.lng +++ b/interface/web/sites/lib/lang/br_web_vhost_subdomain.lng @@ -19,7 +19,7 @@ $wb['ssl_domain_txt'] = 'DomÃnio'; $wb['server_id_txt'] = 'Servidor'; $wb['domain_txt'] = 'DomÃnio'; $wb['host_txt'] = 'Hostname'; -$wb['web_folder_error_regex'] = 'Pasta informada é inválida. Por favor, não insira barra - \\"/\\".'; +$wb['web_folder_error_regex'] = 'Pasta informada é inválida. Por favor, não insira barra - \"/\".'; $wb['type_txt'] = 'Tipo'; $wb['redirect_type_txt'] = 'Tipo de redirecionamento'; $wb['redirect_path_txt'] = 'Caminho para redirecionamento'; @@ -60,13 +60,13 @@ $wb['client_group_id_txt'] = 'Cliente'; $wb['stats_password_txt'] = 'Senha para estatÃsticas web'; $wb['allow_override_txt'] = 'Diretiva Apache AllowOverride'; $wb['limit_web_quota_free_txt'] = 'Cota de disco'; -$wb['ssl_state_error_regex'] = 'Campo \'Estado\' é inválido. Caracteres válidos são: \'0-9\' e \\".,-_\\".'; +$wb['ssl_state_error_regex'] = 'Campo \'Estado\' é inválido. Caracteres válidos são: \'0-9\' e \".,-_\".'; $wb['ssl_locality_error_regex'] = 'Campo \'Cidade\' é inválido. Caracteres válidos são: \'a-z\', \'0-9\' e \'.,-_\'.'; $wb['ssl_organisation_error_regex'] = 'Campo \'Empresa\' é inválido. Caracteres válidos são: \'a-z\', \'0-9\' e \'.,-_\'.'; $wb['ssl_organistaion_unit_error_regex'] = 'Campo \'Departamento\' é inválido. Caracteres válidos são: \'a-z\', \'0-9\' e \'.,-_\'.'; $wb['ssl_country_error_regex'] = 'Campo \'PaÃs\' é inválido. Caracteres válidos são: \'A-Z\'.'; $wb['limit_traffic_quota_free_txt'] = 'Cota de tráfego'; -$wb['redirect_error_regex'] = 'Caminho de redirecionamento é inválido. Exemplo de caminho válido: \\"/teste/\\" ou \\"http://www.dominio.com.br/teste/\\".'; +$wb['redirect_error_regex'] = 'Caminho de redirecionamento é inválido. Exemplo de caminho válido: \"/teste/\" ou \"http://www.dominio.com.br/teste/\".'; $wb['php_open_basedir_txt'] = 'Diretório open_basedir do PHP'; $wb['traffic_quota_exceeded_txt'] = 'Cota de tráfego excedida'; $wb['ruby_txt'] = 'Ruby'; @@ -121,9 +121,9 @@ $wb['allowed_rewrite_rule_directives_txt'] = 'Diretivas Permitidas:'; $wb['configuration_error_txt'] = 'ERRO DE CONFIGURAÇÃO'; $wb['variables_txt'] = 'Variáveis'; $wb['backup_excludes_txt'] = 'Diretórios ExcluÃdos'; -$wb['backup_excludes_note_txt'] = '(Separar múltiplos diretórios por vÃrgulas. Exemplo: \\"web/cache/*,web/backup\\".)'; +$wb['backup_excludes_note_txt'] = '(Separar múltiplos diretórios por vÃrgulas. Exemplo: \"web/cache/*,web/backup\".)'; $wb['backup_excludes_error_regex'] = 'Os diretórios excluÃdos contém caracteres inválidos.'; -$wb['subdomain_error_empty'] = 'O campo \\"SubdomÃnio\\" está em branco ou contém caracteres inválidos.'; +$wb['subdomain_error_empty'] = 'O campo \"SubdomÃnio\" está em branco ou contém caracteres inválidos.'; $wb['http_port_txt'] = 'Porta HTTP'; $wb['https_port_txt'] = 'Porta HTTPS'; $wb['http_port_error_regex'] = 'Porta HTTP inválida.'; diff --git a/interface/web/sites/lib/lang/br_webdav_user.lng b/interface/web/sites/lib/lang/br_webdav_user.lng index 4347f8ae36..b135d5e0fa 100644 --- a/interface/web/sites/lib/lang/br_webdav_user.lng +++ b/interface/web/sites/lib/lang/br_webdav_user.lng @@ -12,8 +12,8 @@ $wb['username_error_unique'] = 'O nome do usuário deve ser exclusivo.'; $wb['username_error_regex'] = 'O nome do usuário contém caracteres não permitidos.'; $wb['directory_error_empty'] = 'Diretório está em branco.'; $wb['parent_domain_id_error_empty'] = 'Nenhum site selecionado.'; -$wb['dir_dot_error'] = 'Não é permitido \\"..\\" no caminho.'; -$wb['dir_slashdot_error'] = 'Não é permitido \\"./\\" no caminho.'; +$wb['dir_dot_error'] = 'Não é permitido \"..\" no caminho.'; +$wb['dir_slashdot_error'] = 'Não é permitido \"./\" no caminho.'; $wb['generate_password_txt'] = 'Gerar senha'; $wb['repeat_password_txt'] = 'Repetir senha'; $wb['password_mismatch_txt'] = 'A senhas não coincidem.'; diff --git a/interface/web/sites/lib/lang/ca.lng b/interface/web/sites/lib/lang/ca.lng index 9acee9d061..c914ef002f 100644 --- a/interface/web/sites/lib/lang/ca.lng +++ b/interface/web/sites/lib/lang/ca.lng @@ -31,5 +31,5 @@ $wb['Available packages'] = 'Packages disponibles'; $wb['Installed packages'] = 'Packages installés'; $wb['Update Packagelist'] = 'Mise à jour de la liste des packages'; $wb['Subdomain (Vhost)'] = 'Sous-domaine (Vhost)'; -$wb['error_proxy_requires_url'] = 'Type de redirection \\"proxy\\" nécessite une URL comme chemin de redirection.'; +$wb['error_proxy_requires_url'] = 'Type de redirection \"proxy\" nécessite une URL comme chemin de redirection.'; ?> diff --git a/interface/web/sites/lib/lang/ca_aps.lng b/interface/web/sites/lib/lang/ca_aps.lng index 062d6ea589..7233c1f0dd 100644 --- a/interface/web/sites/lib/lang/ca_aps.lng +++ b/interface/web/sites/lib/lang/ca_aps.lng @@ -38,14 +38,14 @@ $wb['error_inv_main_location'] = 'Le dossier d\'installation choisi est invalide $wb['error_license_agreement'] = 'Avant de continuer, vous devez accepter les conditions d\'utilisation (licence).'; $wb['error_no_database_pw'] = 'Vous n\'avez pas renseigné de mot de passe BDD valide.'; $wb['error_short_database_pw'] = 'Veuillez saisir un mot de passe BDD plus long.'; -$wb['error_no_value_for'] = 'Le champ \\"%s\\" ne peut pas être vide.'; -$wb['error_short_value_for'] = 'Le champ \\"%s\\" nécessite une valeur plus longue.'; -$wb['error_long_value_for'] = 'Le champ \\"%s\\" nécessite une valeur plus courte.'; -$wb['error_inv_value_for'] = 'Vous avez saisi une valeur invalide pour le champ \\"%s\\".'; -$wb['error_inv_email_for'] = 'L\'adresse courriel saisie pour le champ \\"%s\\" est invalide.'; -$wb['error_inv_domain_for'] = 'Le domaine saisi pour le champ \\"%s\\" est invalide.'; -$wb['error_inv_integer_for'] = 'Le nombre saisi pour le champ \\"%s\\" est invalide.'; -$wb['error_inv_float_for'] = 'La décimale saisie pour le champ \\"%s\\" est invalide.'; +$wb['error_no_value_for'] = 'Le champ \"%s\" ne peut pas être vide.'; +$wb['error_short_value_for'] = 'Le champ \"%s\" nécessite une valeur plus longue.'; +$wb['error_long_value_for'] = 'Le champ \"%s\" nécessite une valeur plus courte.'; +$wb['error_inv_value_for'] = 'Vous avez saisi une valeur invalide pour le champ \"%s\".'; +$wb['error_inv_email_for'] = 'L\'adresse courriel saisie pour le champ \"%s\" est invalide.'; +$wb['error_inv_domain_for'] = 'Le domaine saisi pour le champ \"%s\" est invalide.'; +$wb['error_inv_integer_for'] = 'Le nombre saisi pour le champ \"%s\" est invalide.'; +$wb['error_inv_float_for'] = 'La décimale saisie pour le champ \"%s\" est invalide.'; $wb['error_used_location'] = 'Le chemin de destination contient déjà un package d\'installation.'; $wb['installation_task_txt'] = 'Installation prévue'; $wb['installation_error_txt'] = 'Erreur d\'installation'; diff --git a/interface/web/sites/lib/lang/ca_web_childdomain.lng b/interface/web/sites/lib/lang/ca_web_childdomain.lng index 762acfe244..1d838990e3 100644 --- a/interface/web/sites/lib/lang/ca_web_childdomain.lng +++ b/interface/web/sites/lib/lang/ca_web_childdomain.lng @@ -43,7 +43,7 @@ $wb['no_redirect_txt'] = 'No redirect'; $wb['no_flag_txt'] = 'No flag'; $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['error_proxy_requires_url'] = 'Redirect Type \"proxy\" requires a URL as the redirect path.'; $wb['backup_interval_txt'] = 'Backup interval'; $wb['backup_copies_txt'] = 'Number of backup copies'; $wb['ssl_key_txt'] = 'SSL Key'; diff --git a/interface/web/sites/lib/lang/ca_web_subdomain.lng b/interface/web/sites/lib/lang/ca_web_subdomain.lng index 13fd0d66ef..ec5980a91b 100644 --- a/interface/web/sites/lib/lang/ca_web_subdomain.lng +++ b/interface/web/sites/lib/lang/ca_web_subdomain.lng @@ -42,7 +42,7 @@ $wb['no_flag_txt'] = 'Aucun flag'; $wb['domain_error_wildcard'] = 'Les sous-domaines joker ne sont pas autorisés.'; $wb['proxy_directives_txt'] = 'Directives pour les Proxy'; $wb['available_proxy_directive_snippets_txt'] = 'Directives pour les Proxy Snippets disponibles :'; -$wb['error_proxy_requires_url'] = 'Les redirections de type \\"proxy\\" nécessitent une URL comme chemin de redirection.'; +$wb['error_proxy_requires_url'] = 'Les redirections de type \"proxy\" nécessitent une URL comme chemin de redirection.'; $wb['http_port_txt'] = 'HTTP Port'; $wb['https_port_txt'] = 'HTTPS Port'; $wb['http_port_error_regex'] = 'HTTP Port invalid.'; diff --git a/interface/web/sites/lib/lang/cz.lng b/interface/web/sites/lib/lang/cz.lng index 4c16438e34..2e4276c817 100644 --- a/interface/web/sites/lib/lang/cz.lng +++ b/interface/web/sites/lib/lang/cz.lng @@ -31,5 +31,5 @@ $wb['Available packages'] = 'Dostupné balÃÄky'; $wb['Installed packages'] = 'Nainstalované balÃÄky'; $wb['Update Packagelist'] = 'Aktualizace seznamu balÃÄků'; $wb['Subdomain (Vhost)'] = 'Subdoména (Vhost)'; -$wb['error_proxy_requires_url'] = 'Redirect Type \\"proxy\\" requires a URL as the redirect path.'; +$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 adf6ccf58e..bb8015951c 100644 --- a/interface/web/sites/lib/lang/cz_aps.lng +++ b/interface/web/sites/lib/lang/cz_aps.lng @@ -38,14 +38,14 @@ $wb['error_inv_main_location'] = 'The given install location folder is invalid.' $wb['error_license_agreement'] = 'In order to continue you have to accept the license agreement.'; $wb['error_no_database_pw'] = 'You have provided no valid database password.'; $wb['error_short_database_pw'] = 'Please choose a longer database password.'; -$wb['error_no_value_for'] = 'The field \\"%s\\" must not be empty.'; -$wb['error_short_value_for'] = 'The field \\"%s\\" requires a longer input value.'; -$wb['error_long_value_for'] = 'The field \\"%s\\" requires a shorter input value.'; -$wb['error_inv_value_for'] = 'You have entered an invalid value for the field \\"%s\\".'; -$wb['error_inv_email_for'] = 'You have entered an invalid mail address for the field \\"%s\\".'; -$wb['error_inv_domain_for'] = 'You have entered an invalid domain for the field \\"%s\\".'; -$wb['error_inv_integer_for'] = 'You have entered an invalid number for the field \\"%s\\".'; -$wb['error_inv_float_for'] = 'You have entered an invalid floating point number for the field \\"%s\\".'; +$wb['error_no_value_for'] = 'The field \"%s\" must not be empty.'; +$wb['error_short_value_for'] = 'The field \"%s\" requires a longer input value.'; +$wb['error_long_value_for'] = 'The field \"%s\" requires a shorter input value.'; +$wb['error_inv_value_for'] = 'You have entered an invalid value for the field \"%s\".'; +$wb['error_inv_email_for'] = 'You have entered an invalid mail address for the field \"%s\".'; +$wb['error_inv_domain_for'] = 'You have entered an invalid domain for the field \"%s\".'; +$wb['error_inv_integer_for'] = 'You have entered an invalid number for the field \"%s\".'; +$wb['error_inv_float_for'] = 'You have entered an invalid floating point number for the field \"%s\".'; $wb['error_used_location'] = 'The installation path already contains a package installation.'; $wb['installation_task_txt'] = 'Instalace plánované'; $wb['installation_error_txt'] = 'Chyba instalace'; diff --git a/interface/web/sites/lib/lang/cz_web_childdomain.lng b/interface/web/sites/lib/lang/cz_web_childdomain.lng index 5a22de61de..e39dfc12ee 100644 --- a/interface/web/sites/lib/lang/cz_web_childdomain.lng +++ b/interface/web/sites/lib/lang/cz_web_childdomain.lng @@ -49,7 +49,7 @@ $wb['no_flag_txt'] = 'Žádný pÅ™Ãznak'; $wb['domain_error_wildcard'] = 'Wildcard subdomains are not allowed.'; $wb['proxy_directives_txt'] = 'Proxy Directives'; $wb['available_proxy_directive_snippets_txt'] = 'Available Proxy Directive Snippets:'; -$wb['error_proxy_requires_url'] = 'Redirect Type \\"proxy\\" requires a URL as the redirect path.'; +$wb['error_proxy_requires_url'] = 'Redirect Type \"proxy\" requires a URL as the redirect path.'; $wb['ipv6_address_txt'] = 'IPv6 adresa'; $wb['domain_error_autosub'] = 'There is already a subdomain with these settings.'; $wb['hd_quota_error_empty'] = 'Harddisk quota is 0 or empty.'; diff --git a/interface/web/sites/lib/lang/cz_web_subdomain.lng b/interface/web/sites/lib/lang/cz_web_subdomain.lng index cd301db143..986f76acc8 100644 --- a/interface/web/sites/lib/lang/cz_web_subdomain.lng +++ b/interface/web/sites/lib/lang/cz_web_subdomain.lng @@ -42,7 +42,7 @@ $wb['no_flag_txt'] = 'Žádný pÅ™Ãznak'; $wb['domain_error_wildcard'] = 'Wildcard subdomains are not allowed.'; $wb['proxy_directives_txt'] = 'Proxy Directives'; $wb['available_proxy_directive_snippets_txt'] = 'Available Proxy Directive Snippets:'; -$wb['error_proxy_requires_url'] = 'Redirect Type \\"proxy\\" requires a URL as the redirect path.'; +$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.'; diff --git a/interface/web/sites/lib/lang/de_web_childdomain.lng b/interface/web/sites/lib/lang/de_web_childdomain.lng index 05b1f1d51d..561e8de968 100644 --- a/interface/web/sites/lib/lang/de_web_childdomain.lng +++ b/interface/web/sites/lib/lang/de_web_childdomain.lng @@ -42,7 +42,7 @@ $wb['no_redirect_txt'] = 'Kein Redirect'; $wb['no_flag_txt'] = 'Kein Flag'; $wb['proxy_directives_txt'] = 'Proxy-Direktiven'; $wb['available_proxy_directive_snippets_txt'] = 'Verfügbare Proxy Direktiven Schnipsel:'; -$wb['error_proxy_requires_url'] = 'Weiterleitungstyp \\"proxy\\" erfordert eine URL als Weiterleitungspfad.'; +$wb['error_proxy_requires_url'] = 'Weiterleitungstyp \"proxy\" erfordert eine URL als Weiterleitungspfad.'; $wb['backup_interval_txt'] = 'Backup-Intervall'; $wb['backup_copies_txt'] = 'Anzahl der Backups'; $wb['ssl_key_txt'] = 'SSL-Schlüssel'; diff --git a/interface/web/sites/lib/lang/de_web_subdomain.lng b/interface/web/sites/lib/lang/de_web_subdomain.lng index 586c90adc3..a88918b09a 100644 --- a/interface/web/sites/lib/lang/de_web_subdomain.lng +++ b/interface/web/sites/lib/lang/de_web_subdomain.lng @@ -42,7 +42,7 @@ $wb['no_redirect_txt'] = 'Kein Redirect'; $wb['no_flag_txt'] = 'Kein Flag'; $wb['proxy_directives_txt'] = 'Proxy-Direktiven'; $wb['available_proxy_directive_snippets_txt'] = 'Verfügbare Proxy Direktiven Schnipsel:'; -$wb['error_proxy_requires_url'] = 'Weiterleitungstyp \\"proxy\\" erfordert eine URL als Weiterleitungspfad.'; +$wb['error_proxy_requires_url'] = 'Weiterleitungstyp \"proxy\" erfordert eine URL als Weiterleitungspfad.'; $wb['http_port_txt'] = 'HTTP Port'; $wb['https_port_txt'] = 'HTTPS Port'; $wb['http_port_error_regex'] = 'HTTP Port invalid.'; diff --git a/interface/web/sites/lib/lang/dk.lng b/interface/web/sites/lib/lang/dk.lng index 39974fef5d..a99760a66e 100644 --- a/interface/web/sites/lib/lang/dk.lng +++ b/interface/web/sites/lib/lang/dk.lng @@ -31,5 +31,5 @@ $wb['Available packages'] = 'Tilgængelig pakker'; $wb['Installed packages'] = 'Installeret pakker'; $wb['Update Packagelist'] = 'Opdater Pakkeliste'; $wb['Subdomain (Vhost)'] = 'Sub-domæne (Vhost)'; -$wb['error_proxy_requires_url'] = 'Omdiriger Type \\"proxy\\" requires a URL as the redirect path.'; +$wb['error_proxy_requires_url'] = 'Omdiriger Type \"proxy\" requires a URL as the redirect path.'; ?> diff --git a/interface/web/sites/lib/lang/dk_aps.lng b/interface/web/sites/lib/lang/dk_aps.lng index ca006e2eb2..c3f2983cfd 100644 --- a/interface/web/sites/lib/lang/dk_aps.lng +++ b/interface/web/sites/lib/lang/dk_aps.lng @@ -40,14 +40,14 @@ $wb['error_inv_main_location'] = 'Den oplyste installations mappe er ugyldig.'; $wb['error_license_agreement'] = 'For at fortsætte skal du acceptere licensaftalen.'; $wb['error_no_database_pw'] = 'Du har ikke oplyst en database adgangskode.'; $wb['error_short_database_pw'] = 'Vælg en længer database adgangskode.'; -$wb['error_no_value_for'] = 'Feltet \\"%s\\" mÃ¥ ikke være tomt.'; -$wb['error_short_value_for'] = 'Feltet \\"%s\\" kræver en længere indtastnings værdi.'; -$wb['error_long_value_for'] = 'Feltet \\"%s\\" kræver en kortere indtastnings værdi.'; -$wb['error_inv_value_for'] = 'Du har indtastet en ugyldig værdi for feltet \\"%s\\".'; -$wb['error_inv_email_for'] = 'Du har indtastet en ugyldig mail adresse for feltet \\"%s\\".'; -$wb['error_inv_domain_for'] = 'Du har indtastet et ugyldigt domæne for feltet \\"%s\\".'; -$wb['error_inv_integer_for'] = 'Du har indtastet et ugyldigt tal for feltet \\"%s\\".'; -$wb['error_inv_float_for'] = 'Du har indtastet et ugyldigt floating point tal for feltet \\"%s\\".'; +$wb['error_no_value_for'] = 'Feltet \"%s\" mÃ¥ ikke være tomt.'; +$wb['error_short_value_for'] = 'Feltet \"%s\" kræver en længere indtastnings værdi.'; +$wb['error_long_value_for'] = 'Feltet \"%s\" kræver en kortere indtastnings værdi.'; +$wb['error_inv_value_for'] = 'Du har indtastet en ugyldig værdi for feltet \"%s\".'; +$wb['error_inv_email_for'] = 'Du har indtastet en ugyldig mail adresse for feltet \"%s\".'; +$wb['error_inv_domain_for'] = 'Du har indtastet et ugyldigt domæne for feltet \"%s\".'; +$wb['error_inv_integer_for'] = 'Du har indtastet et ugyldigt tal for feltet \"%s\".'; +$wb['error_inv_float_for'] = 'Du har indtastet et ugyldigt floating point tal for feltet \"%s\".'; $wb['error_used_location'] = 'Installations stien indeholder allerede en pakke installation.'; $wb['installation_task_txt'] = 'Installation planlagt'; $wb['installation_error_txt'] = 'Installations fejl'; diff --git a/interface/web/sites/lib/lang/dk_web_childdomain.lng b/interface/web/sites/lib/lang/dk_web_childdomain.lng index 762acfe244..1d838990e3 100644 --- a/interface/web/sites/lib/lang/dk_web_childdomain.lng +++ b/interface/web/sites/lib/lang/dk_web_childdomain.lng @@ -43,7 +43,7 @@ $wb['no_redirect_txt'] = 'No redirect'; $wb['no_flag_txt'] = 'No flag'; $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['error_proxy_requires_url'] = 'Redirect Type \"proxy\" requires a URL as the redirect path.'; $wb['backup_interval_txt'] = 'Backup interval'; $wb['backup_copies_txt'] = 'Number of backup copies'; $wb['ssl_key_txt'] = 'SSL Key'; diff --git a/interface/web/sites/lib/lang/dk_web_subdomain.lng b/interface/web/sites/lib/lang/dk_web_subdomain.lng index c14a347263..4fffd59365 100644 --- a/interface/web/sites/lib/lang/dk_web_subdomain.lng +++ b/interface/web/sites/lib/lang/dk_web_subdomain.lng @@ -42,7 +42,7 @@ $wb['no_redirect_txt'] = 'Ingen redirect'; $wb['no_flag_txt'] = 'Ingen flag'; $wb['proxy_directives_txt'] = 'Proxy Directives'; $wb['available_proxy_directive_snippets_txt'] = 'Tilgængelig Proxy Direktiv Kodestykker:'; -$wb['error_proxy_requires_url'] = 'Omdiriger Type \\"proxy\\" requires a URL as the redirect path.'; +$wb['error_proxy_requires_url'] = 'Omdiriger 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.'; diff --git a/interface/web/sites/lib/lang/el.lng b/interface/web/sites/lib/lang/el.lng index 2d726140fd..19bfc27349 100644 --- a/interface/web/sites/lib/lang/el.lng +++ b/interface/web/sites/lib/lang/el.lng @@ -31,5 +31,5 @@ $wb['Available packages'] = 'Available packages'; $wb['Installed packages'] = 'Installed packages'; $wb['Update Packagelist'] = 'Update Packagelist'; $wb['Subdomain (Vhost)'] = 'Subdomain (Vhost)'; -$wb['error_proxy_requires_url'] = 'Redirect Type \\"proxy\\" requires a URL as the redirect path.'; +$wb['error_proxy_requires_url'] = 'Redirect Type \"proxy\" requires a URL as the redirect path.'; ?> diff --git a/interface/web/sites/lib/lang/el_aps.lng b/interface/web/sites/lib/lang/el_aps.lng index 0209737f61..73cb49f106 100644 --- a/interface/web/sites/lib/lang/el_aps.lng +++ b/interface/web/sites/lib/lang/el_aps.lng @@ -38,14 +38,14 @@ $wb['error_inv_main_location'] = 'The given install location folder is invalid.' $wb['error_license_agreement'] = 'In order to continue you have to accept the license agreement.'; $wb['error_no_database_pw'] = 'You have provided no valid database password.'; $wb['error_short_database_pw'] = 'Please choose a longer database password.'; -$wb['error_no_value_for'] = 'The field \\"%s\\" must not be empty.'; -$wb['error_short_value_for'] = 'The field \\"%s\\" requires a longer input value.'; -$wb['error_long_value_for'] = 'The field \\"%s\\" requires a shorter input value.'; -$wb['error_inv_value_for'] = 'You have entered an invalid value for the field \\"%s\\".'; -$wb['error_inv_email_for'] = 'You have entered an invalid mail address for the field \\"%s\\".'; -$wb['error_inv_domain_for'] = 'You have entered an invalid domain for the field \\"%s\\".'; -$wb['error_inv_integer_for'] = 'You have entered an invalid number for the field \\"%s\\".'; -$wb['error_inv_float_for'] = 'You have entered an invalid floating point number for the field \\"%s\\".'; +$wb['error_no_value_for'] = 'The field \"%s\" must not be empty.'; +$wb['error_short_value_for'] = 'The field \"%s\" requires a longer input value.'; +$wb['error_long_value_for'] = 'The field \"%s\" requires a shorter input value.'; +$wb['error_inv_value_for'] = 'You have entered an invalid value for the field \"%s\".'; +$wb['error_inv_email_for'] = 'You have entered an invalid mail address for the field \"%s\".'; +$wb['error_inv_domain_for'] = 'You have entered an invalid domain for the field \"%s\".'; +$wb['error_inv_integer_for'] = 'You have entered an invalid number for the field \"%s\".'; +$wb['error_inv_float_for'] = 'You have entered an invalid floating point number for the field \"%s\".'; $wb['error_used_location'] = 'The installation path already contains a package installation.'; $wb['installation_task_txt'] = 'Install planned'; $wb['installation_error_txt'] = 'Install error'; diff --git a/interface/web/sites/lib/lang/el_web_childdomain.lng b/interface/web/sites/lib/lang/el_web_childdomain.lng index 3c5cb7a936..a1cead28e3 100644 --- a/interface/web/sites/lib/lang/el_web_childdomain.lng +++ b/interface/web/sites/lib/lang/el_web_childdomain.lng @@ -45,7 +45,7 @@ $wb['no_flag_txt'] = 'ΧωÏίς Σημαία'; $wb['domain_error_wildcard'] = 'Wildcard subdomains δεν επιτÏÎπονται.'; $wb['proxy_directives_txt'] = 'Proxy Directives'; $wb['available_proxy_directive_snippets_txt'] = 'ΔιαθÎσιμα Proxy Directive Snippets:'; -$wb['error_proxy_requires_url'] = 'Ο Ï„Ïπος ανακατεÏθυνσης \\"proxy\\" απαιτεί Îνα URL ως μονοπάτι ανακατεÏθυνσης.'; +$wb['error_proxy_requires_url'] = 'Ο Ï„Ïπος ανακατεÏθυνσης \"proxy\" απαιτεί Îνα URL ως μονοπάτι ανακατεÏθυνσης.'; $wb['ssl_domain_txt'] = 'SSL Domain'; $wb['web_folder_error_regex'] = 'Εισάγατε μη ÎγκυÏο φάκελο. Μην εισάγετε την κάθετο.'; $wb['ipv6_address_txt'] = 'ΔιεÏθυνση IPv6'; diff --git a/interface/web/sites/lib/lang/el_web_subdomain.lng b/interface/web/sites/lib/lang/el_web_subdomain.lng index 606137bc82..b3f8e1312f 100644 --- a/interface/web/sites/lib/lang/el_web_subdomain.lng +++ b/interface/web/sites/lib/lang/el_web_subdomain.lng @@ -42,7 +42,7 @@ $wb['no_flag_txt'] = 'ΧωÏίς Σημαία'; $wb['domain_error_wildcard'] = 'Wildcard subdomains are not allowed.'; $wb['proxy_directives_txt'] = 'Proxy Directives'; $wb['available_proxy_directive_snippets_txt'] = 'Available Proxy Directive Snippets:'; -$wb['error_proxy_requires_url'] = 'Redirect Type \\"proxy\\" requires a URL as the redirect path.'; +$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.'; diff --git a/interface/web/sites/lib/lang/es.lng b/interface/web/sites/lib/lang/es.lng index 7d128081f6..78cfa3a609 100755 --- a/interface/web/sites/lib/lang/es.lng +++ b/interface/web/sites/lib/lang/es.lng @@ -8,7 +8,7 @@ $wb['Cron'] = 'Trabajos programados'; $wb['Database User'] = 'Usuarios de bases de datos'; $wb['Database'] = 'Bases de datos'; $wb['Domain'] = 'Dominio'; -$wb['error_proxy_requires_url'] = 'La redirección del tipo \\"proxy\\" requiere de una URL como ruta de redirección.'; +$wb['error_proxy_requires_url'] = 'La redirección del tipo \"proxy\" requiere de una URL como ruta de redirección.'; $wb['Folder users'] = 'Usuarios de carpetas protegidas'; $wb['Folder'] = 'Carpetas protegidas'; $wb['FTP'] = 'FTP'; diff --git a/interface/web/sites/lib/lang/es_aps.lng b/interface/web/sites/lib/lang/es_aps.lng index 3780b32edd..afecc225fc 100755 --- a/interface/web/sites/lib/lang/es_aps.lng +++ b/interface/web/sites/lib/lang/es_aps.lng @@ -12,20 +12,20 @@ $wb['config_script_txt'] = 'Archivo de configuración'; $wb['database_txt'] = 'Base de datos'; $wb['description_txt'] = 'Descripción'; $wb['details_txt'] = 'Detalles'; -$wb['error_inv_domain_for'] = 'Ha ingresado un dominio inválido en el campo \\"%s\\".'; -$wb['error_inv_email_for'] = 'Ha ingresado una dirección de correo inválida en el campo \\"%s\\".'; -$wb['error_inv_float_for'] = 'Ha introducido un número de punto flotante no válido para el campo \\"%s\\".'; -$wb['error_inv_integer_for'] = 'Ha ingresado un número inválido en el campo \\"%s\\".'; +$wb['error_inv_domain_for'] = 'Ha ingresado un dominio inválido en el campo \"%s\".'; +$wb['error_inv_email_for'] = 'Ha ingresado una dirección de correo inválida en el campo \"%s\".'; +$wb['error_inv_float_for'] = 'Ha introducido un número de punto flotante no válido para el campo \"%s\".'; +$wb['error_inv_integer_for'] = 'Ha ingresado un número inválido en el campo \"%s\".'; $wb['error_inv_main_location'] = 'La ubicación de la carpeta de instalación proporcionada es inválida.'; -$wb['error_inv_value_for'] = 'Ha ingresado un valor inválido en el campo \\"%s\\".'; +$wb['error_inv_value_for'] = 'Ha ingresado un valor inválido en el campo \"%s\".'; $wb['error_license_agreement'] = 'Para poder continuar debe aceptar el acuerdo de licencia.'; -$wb['error_long_value_for'] = 'El campo \\"%s\\" requiere una entrada más corta.'; +$wb['error_long_value_for'] = 'El campo \"%s\" requiere una entrada más corta.'; $wb['error_main_domain'] = 'El dominio de la ruta de la instalación es inválido.'; $wb['error_no_database_pw'] = 'No ha proporcionado una contraseña válida para la base de datos.'; $wb['error_no_main_location'] = 'Ha proporcionado una ruta de instalación inválida.'; -$wb['error_no_value_for'] = 'El campo \\"%s\\" no puede estar vacÃo.'; +$wb['error_no_value_for'] = 'El campo \"%s\" no puede estar vacÃo.'; $wb['error_short_database_pw'] = 'Por favor seleccione un contraseña más larga para la base de datos.'; -$wb['error_short_value_for'] = 'El campo \\"%s\\" requiere una entrada más larga.'; +$wb['error_short_value_for'] = 'El campo \"%s\" requiere una entrada más larga.'; $wb['error_used_location'] = 'La ruta de instalación ya contiene un paquete instalado.'; $wb['homepage_txt'] = 'Página de inicio'; $wb['install_language_txt'] = 'Idioma de la interfaz'; diff --git a/interface/web/sites/lib/lang/es_web_childdomain.lng b/interface/web/sites/lib/lang/es_web_childdomain.lng index 25843a0e21..839110669f 100644 --- a/interface/web/sites/lib/lang/es_web_childdomain.lng +++ b/interface/web/sites/lib/lang/es_web_childdomain.lng @@ -42,7 +42,7 @@ $wb['no_flag_txt'] = 'Sin flag'; $wb['domain_error_wildcard'] = 'No se permiten subdominios comodÃn.'; $wb['proxy_directives_txt'] = 'Directivas de Proxy'; $wb['available_proxy_directive_snippets_txt'] = 'Fragmentos de directivas de proxy disponibles:'; -$wb['error_proxy_requires_url'] = 'Tipo de redirección \\"proxy\\" necesita una URL como ruta de redirección.'; +$wb['error_proxy_requires_url'] = 'Tipo de redirección \"proxy\" necesita una URL como ruta de redirección.'; $wb['backup_interval_txt'] = 'Intervalo de copia de seguridad'; $wb['backup_copies_txt'] = 'Número de copias de seguridad'; $wb['ssl_key_txt'] = 'Clave SSL'; @@ -104,7 +104,7 @@ $wb['pm_process_idle_timeout_txt'] = 'PHP-FPM pm.process_idle_timeout'; $wb['pm_max_requests_txt'] = 'PHP-FPM pm.max_requests'; $wb['pm_process_idle_timeout_error_regex'] = 'PHP-FPM pm.process_idle_timeout debe ser un valor entero positivo.'; $wb['pm_max_requests_error_regex'] = 'PHP-FPM pm.max_requests debe ser un valor entero >= 0.'; -$wb['pm_ondemand_hint_txt'] = 'Por favor ten en cuenta que debes tener una versión de PHP >= 5.3.9 para poder usar el gestor de procesos \\"ondemand\\". Si seleccionas \\"ondemand\\" para una versión de PHP anterior, ¡PHP dejará de funcionar!'; +$wb['pm_ondemand_hint_txt'] = 'Por favor ten en cuenta que debes tener una versión de PHP >= 5.3.9 para poder usar el gestor de procesos \"ondemand\". Si seleccionas \"ondemand\" para una versión de PHP anterior, ¡PHP dejará de funcionar!'; $wb['generate_password_txt'] = 'Generar contraseña'; $wb['repeat_password_txt'] = 'Repetir contraseña'; $wb['password_mismatch_txt'] = 'Las contraseñas no coinciden.'; diff --git a/interface/web/sites/lib/lang/es_web_subdomain.lng b/interface/web/sites/lib/lang/es_web_subdomain.lng index 2221a749c2..8bae76742c 100644 --- a/interface/web/sites/lib/lang/es_web_subdomain.lng +++ b/interface/web/sites/lib/lang/es_web_subdomain.lng @@ -42,7 +42,7 @@ $wb['no_flag_txt'] = 'No flag'; $wb['domain_error_wildcard'] = 'Wildcard subdomains are not allowed.'; $wb['proxy_directives_txt'] = 'Proxy Directives'; $wb['available_proxy_directive_snippets_txt'] = 'Available Proxy Directive Snippets:'; -$wb['error_proxy_requires_url'] = 'Redirect Type \\"proxy\\" requires a URL as the redirect path.'; +$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.'; diff --git a/interface/web/sites/lib/lang/es_web_vhost_domain.lng b/interface/web/sites/lib/lang/es_web_vhost_domain.lng index f98c02db15..4a2b17cab7 100644 --- a/interface/web/sites/lib/lang/es_web_vhost_domain.lng +++ b/interface/web/sites/lib/lang/es_web_vhost_domain.lng @@ -102,7 +102,7 @@ $wb['pm_process_idle_timeout_txt'] = 'PHP-FPM pm.process_idle_timeout'; $wb['pm_max_requests_txt'] = 'PHP-FPM pm.max_requests'; $wb['pm_process_idle_timeout_error_regex'] = 'PHP-FPM pm.process_idle_timeout debe ser un valor entero positivo.'; $wb['pm_max_requests_error_regex'] = 'PHP-FPM pm.max_requests debe ser un valor entero >= 0.'; -$wb['pm_ondemand_hint_txt'] = 'Por favor ten en cuenta que debes tener una versión de PHP >= 5.3.9 para poder usar el gestor de procesos \\"ondemand\\". Si seleccionas \\"ondemand\\" para una versión de PHP anterior, ¡PHP dejará de funcionar!'; +$wb['pm_ondemand_hint_txt'] = 'Por favor ten en cuenta que debes tener una versión de PHP >= 5.3.9 para poder usar el gestor de procesos \"ondemand\". Si seleccionas \"ondemand\" para una versión de PHP anterior, ¡PHP dejará de funcionar!'; $wb['generate_password_txt'] = 'Generar contraseña'; $wb['repeat_password_txt'] = 'Repetir contraseña'; $wb['password_mismatch_txt'] = 'Las contraseñas no coinciden.'; diff --git a/interface/web/sites/lib/lang/fi.lng b/interface/web/sites/lib/lang/fi.lng index ebf94bc190..5adab57775 100755 --- a/interface/web/sites/lib/lang/fi.lng +++ b/interface/web/sites/lib/lang/fi.lng @@ -31,5 +31,5 @@ $wb['Available packages'] = 'Available packages'; $wb['Installed packages'] = 'Installed packages'; $wb['Update Packagelist'] = 'Update Packagelist'; $wb['Subdomain (Vhost)'] = 'Subdomain (Vhost)'; -$wb['error_proxy_requires_url'] = 'Redirect Type \\"proxy\\" requires a URL as the redirect path.'; +$wb['error_proxy_requires_url'] = 'Redirect Type \"proxy\" requires a URL as the redirect path.'; ?> diff --git a/interface/web/sites/lib/lang/fi_aps.lng b/interface/web/sites/lib/lang/fi_aps.lng index d78701f272..cc8dc83588 100644 --- a/interface/web/sites/lib/lang/fi_aps.lng +++ b/interface/web/sites/lib/lang/fi_aps.lng @@ -38,14 +38,14 @@ $wb['error_inv_main_location'] = 'The given install location folder is invalid.' $wb['error_license_agreement'] = 'In order to continue you have to accept the license agreement.'; $wb['error_no_database_pw'] = 'You have provided no valid database password.'; $wb['error_short_database_pw'] = 'Please choose a longer database password.'; -$wb['error_no_value_for'] = 'The field \\"%s\\" must not be empty.'; -$wb['error_short_value_for'] = 'The field \\"%s\\" requires a longer input value.'; -$wb['error_long_value_for'] = 'The field \\"%s\\" requires a shorter input value.'; -$wb['error_inv_value_for'] = 'You have entered an invalid value for the field \\"%s\\".'; -$wb['error_inv_email_for'] = 'You have entered an invalid mail address for the field \\"%s\\".'; -$wb['error_inv_domain_for'] = 'You have entered an invalid domain for the field \\"%s\\".'; -$wb['error_inv_integer_for'] = 'You have entered an invalid number for the field \\"%s\\".'; -$wb['error_inv_float_for'] = 'You have entered an invalid floating point number for the field \\"%s\\".'; +$wb['error_no_value_for'] = 'The field \"%s\" must not be empty.'; +$wb['error_short_value_for'] = 'The field \"%s\" requires a longer input value.'; +$wb['error_long_value_for'] = 'The field \"%s\" requires a shorter input value.'; +$wb['error_inv_value_for'] = 'You have entered an invalid value for the field \"%s\".'; +$wb['error_inv_email_for'] = 'You have entered an invalid mail address for the field \"%s\".'; +$wb['error_inv_domain_for'] = 'You have entered an invalid domain for the field \"%s\".'; +$wb['error_inv_integer_for'] = 'You have entered an invalid number for the field \"%s\".'; +$wb['error_inv_float_for'] = 'You have entered an invalid floating point number for the field \"%s\".'; $wb['error_used_location'] = 'The installation path already contains a package installation.'; $wb['installation_task_txt'] = 'Install planned'; $wb['installation_error_txt'] = 'Install error'; diff --git a/interface/web/sites/lib/lang/fi_web_childdomain.lng b/interface/web/sites/lib/lang/fi_web_childdomain.lng index 5105ba3f2e..98c41088a1 100755 --- a/interface/web/sites/lib/lang/fi_web_childdomain.lng +++ b/interface/web/sites/lib/lang/fi_web_childdomain.lng @@ -42,7 +42,7 @@ $wb['no_flag_txt'] = 'No flag'; $wb['domain_error_wildcard'] = 'Wildcard subdomains are not allowed.'; $wb['proxy_directives_txt'] = 'Proxy Directives'; $wb['available_proxy_directive_snippets_txt'] = 'Available Proxy Directive Snippets:'; -$wb['error_proxy_requires_url'] = 'Redirect Type \\"proxy\\" requires a URL as the redirect path.'; +$wb['error_proxy_requires_url'] = 'Redirect Type \"proxy\" requires a URL as the redirect path.'; $wb['backup_interval_txt'] = 'Backup interval'; $wb['backup_copies_txt'] = 'Number of backup copies'; $wb['ssl_key_txt'] = 'SSL Key'; diff --git a/interface/web/sites/lib/lang/fi_web_subdomain.lng b/interface/web/sites/lib/lang/fi_web_subdomain.lng index 7fe7103905..7500fb7a61 100644 --- a/interface/web/sites/lib/lang/fi_web_subdomain.lng +++ b/interface/web/sites/lib/lang/fi_web_subdomain.lng @@ -42,7 +42,7 @@ $wb['no_flag_txt'] = 'No flag'; $wb['domain_error_wildcard'] = 'Wildcard subdomains are not allowed.'; $wb['proxy_directives_txt'] = 'Proxy Directives'; $wb['available_proxy_directive_snippets_txt'] = 'Available Proxy Directive Snippets:'; -$wb['error_proxy_requires_url'] = 'Redirect Type \\"proxy\\" requires a URL as the redirect path.'; +$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.'; diff --git a/interface/web/sites/lib/lang/fr.lng b/interface/web/sites/lib/lang/fr.lng index 9acee9d061..c914ef002f 100644 --- a/interface/web/sites/lib/lang/fr.lng +++ b/interface/web/sites/lib/lang/fr.lng @@ -31,5 +31,5 @@ $wb['Available packages'] = 'Packages disponibles'; $wb['Installed packages'] = 'Packages installés'; $wb['Update Packagelist'] = 'Mise à jour de la liste des packages'; $wb['Subdomain (Vhost)'] = 'Sous-domaine (Vhost)'; -$wb['error_proxy_requires_url'] = 'Type de redirection \\"proxy\\" nécessite une URL comme chemin de redirection.'; +$wb['error_proxy_requires_url'] = 'Type de redirection \"proxy\" nécessite une URL comme chemin de redirection.'; ?> diff --git a/interface/web/sites/lib/lang/fr_aps.lng b/interface/web/sites/lib/lang/fr_aps.lng index 6beef9939f..0f067e78bc 100644 --- a/interface/web/sites/lib/lang/fr_aps.lng +++ b/interface/web/sites/lib/lang/fr_aps.lng @@ -38,14 +38,14 @@ $wb['error_inv_main_location'] = 'Le dossier d’installation choisi est invalid $wb['error_license_agreement'] = 'Avant de continuer, vous devez accepter les conditions d’utilisation (licence).'; $wb['error_no_database_pw'] = 'Vous n’avez pas renseigné de mot de passe BDD valide.'; $wb['error_short_database_pw'] = 'Veuillez saisir un mot de passe BDD plus long.'; -$wb['error_no_value_for'] = 'Le champ \\"%s\\" ne peut pas être vide.'; -$wb['error_short_value_for'] = 'Le champ \\"%s\\" nécessite une valeur plus longue.'; -$wb['error_long_value_for'] = 'Le champ \\"%s\\" nécessite une valeur plus courte.'; -$wb['error_inv_value_for'] = 'Vous avez saisi une valeur invalide pour le champ \\"%s\\".'; -$wb['error_inv_email_for'] = 'L’adresse e-mail saisie pour le champ \\"%s\\" est invalide.'; -$wb['error_inv_domain_for'] = 'Le domaine saisi pour le champ \\"%s\\" est invalide.'; -$wb['error_inv_integer_for'] = 'Le nombre saisi pour le champ \\"%s\\" est invalide.'; -$wb['error_inv_float_for'] = 'La décimale saisie pour le champ \\"%s\\" est invalide.'; +$wb['error_no_value_for'] = 'Le champ \"%s\" ne peut pas être vide.'; +$wb['error_short_value_for'] = 'Le champ \"%s\" nécessite une valeur plus longue.'; +$wb['error_long_value_for'] = 'Le champ \"%s\" nécessite une valeur plus courte.'; +$wb['error_inv_value_for'] = 'Vous avez saisi une valeur invalide pour le champ \"%s\".'; +$wb['error_inv_email_for'] = 'L’adresse e-mail saisie pour le champ \"%s\" est invalide.'; +$wb['error_inv_domain_for'] = 'Le domaine saisi pour le champ \"%s\" est invalide.'; +$wb['error_inv_integer_for'] = 'Le nombre saisi pour le champ \"%s\" est invalide.'; +$wb['error_inv_float_for'] = 'La décimale saisie pour le champ \"%s\" est invalide.'; $wb['error_used_location'] = 'Le chemin de destination contient déjà un package d’installation.'; $wb['installation_task_txt'] = 'Installation prévue'; $wb['installation_error_txt'] = 'Erreur d’installation'; diff --git a/interface/web/sites/lib/lang/fr_web_childdomain.lng b/interface/web/sites/lib/lang/fr_web_childdomain.lng index 1be206e122..f33ca58f09 100644 --- a/interface/web/sites/lib/lang/fr_web_childdomain.lng +++ b/interface/web/sites/lib/lang/fr_web_childdomain.lng @@ -42,7 +42,7 @@ $wb['no_flag_txt'] = 'Aucun flag'; $wb['domain_error_wildcard'] = 'Wildcard subdomains are not allowed.'; $wb['proxy_directives_txt'] = 'Proxy Directives'; $wb['available_proxy_directive_snippets_txt'] = 'Available Proxy Directive Snippets:'; -$wb['error_proxy_requires_url'] = 'Redirect Type \\"proxy\\" requires a URL as the redirect path.'; +$wb['error_proxy_requires_url'] = 'Redirect Type \"proxy\" requires a URL as the redirect path.'; $wb['backup_interval_txt'] = 'Backup interval'; $wb['backup_copies_txt'] = 'Number of backup copies'; $wb['ssl_key_txt'] = 'SSL Key'; diff --git a/interface/web/sites/lib/lang/fr_web_subdomain.lng b/interface/web/sites/lib/lang/fr_web_subdomain.lng index 957dfbfed6..6dfc914a0a 100644 --- a/interface/web/sites/lib/lang/fr_web_subdomain.lng +++ b/interface/web/sites/lib/lang/fr_web_subdomain.lng @@ -42,7 +42,7 @@ $wb['no_flag_txt'] = 'Aucun flag'; $wb['domain_error_wildcard'] = 'Les sous-domaines joker ne sont pas autorisés.'; $wb['proxy_directives_txt'] = 'Directives pour les Proxy'; $wb['available_proxy_directive_snippets_txt'] = 'Directives pour les Proxy Snippets disponibles :'; -$wb['error_proxy_requires_url'] = 'Les redirections de type \\"proxy\\" nécessitent une URL comme chemin de redirection.'; +$wb['error_proxy_requires_url'] = 'Les redirections de type \"proxy\" nécessitent une URL comme chemin de redirection.'; $wb['http_port_txt'] = 'HTTP Port'; $wb['https_port_txt'] = 'HTTPS Port'; $wb['http_port_error_regex'] = 'HTTP Port invalid.'; diff --git a/interface/web/sites/lib/lang/hr.lng b/interface/web/sites/lib/lang/hr.lng index b6af1225ac..4c53c89843 100644 --- a/interface/web/sites/lib/lang/hr.lng +++ b/interface/web/sites/lib/lang/hr.lng @@ -30,6 +30,6 @@ $wb['Available packages'] = 'Dostupni paketi'; $wb['Installed packages'] = 'Instalirani paketi'; $wb['Update Packagelist'] = 'Osvježi listu paketa'; $wb['Subdomain (Vhost)'] = 'Poddomena (Vhost)'; -$wb['error_proxy_requires_url'] = '\\"proxy\\" redirekcija zahtijeva URL za redirekcijsku putanju.'; +$wb['error_proxy_requires_url'] = '\"proxy\" redirekcija zahtijeva URL za redirekcijsku putanju.'; $wb['Domain'] = 'Domain'; ?> diff --git a/interface/web/sites/lib/lang/hr_aps.lng b/interface/web/sites/lib/lang/hr_aps.lng index 79d31cf7fa..6169342e71 100644 --- a/interface/web/sites/lib/lang/hr_aps.lng +++ b/interface/web/sites/lib/lang/hr_aps.lng @@ -38,14 +38,14 @@ $wb['error_inv_main_location'] = 'The given install location folder is invalid.' $wb['error_license_agreement'] = 'In order to continue you have to accept the license agreement.'; $wb['error_no_database_pw'] = 'You have provided no valid database password.'; $wb['error_short_database_pw'] = 'Please choose a longer database password.'; -$wb['error_no_value_for'] = 'The field \\"%s\\" must not be empty.'; -$wb['error_short_value_for'] = 'The field \\"%s\\" requires a longer input value.'; -$wb['error_long_value_for'] = 'The field \\"%s\\" requires a shorter input value.'; -$wb['error_inv_value_for'] = 'You have entered an invalid value for the field \\"%s\\".'; -$wb['error_inv_email_for'] = 'You have entered an invalid mail address for the field \\"%s\\".'; -$wb['error_inv_domain_for'] = 'You have entered an invalid domain for the field \\"%s\\".'; -$wb['error_inv_integer_for'] = 'You have entered an invalid number for the field \\"%s\\".'; -$wb['error_inv_float_for'] = 'You have entered an invalid floating point number for the field \\"%s\\".'; +$wb['error_no_value_for'] = 'The field \"%s\" must not be empty.'; +$wb['error_short_value_for'] = 'The field \"%s\" requires a longer input value.'; +$wb['error_long_value_for'] = 'The field \"%s\" requires a shorter input value.'; +$wb['error_inv_value_for'] = 'You have entered an invalid value for the field \"%s\".'; +$wb['error_inv_email_for'] = 'You have entered an invalid mail address for the field \"%s\".'; +$wb['error_inv_domain_for'] = 'You have entered an invalid domain for the field \"%s\".'; +$wb['error_inv_integer_for'] = 'You have entered an invalid number for the field \"%s\".'; +$wb['error_inv_float_for'] = 'You have entered an invalid floating point number for the field \"%s\".'; $wb['error_used_location'] = 'The installation path already contains a package installation.'; $wb['installation_task_txt'] = 'Instalacija u postupku'; $wb['installation_error_txt'] = 'Instalacijska greÅ¡ka'; diff --git a/interface/web/sites/lib/lang/hr_web_childdomain.lng b/interface/web/sites/lib/lang/hr_web_childdomain.lng index 99df0d2fdf..f0e69f24f8 100644 --- a/interface/web/sites/lib/lang/hr_web_childdomain.lng +++ b/interface/web/sites/lib/lang/hr_web_childdomain.lng @@ -42,7 +42,7 @@ $wb['no_flag_txt'] = 'Bez markiranja'; $wb['domain_error_wildcard'] = 'Wildcard subdomains are not allowed.'; $wb['proxy_directives_txt'] = 'Proxy Directives'; $wb['available_proxy_directive_snippets_txt'] = 'Available Proxy Directive Snippets:'; -$wb['error_proxy_requires_url'] = 'Redirect Type \\"proxy\\" requires a URL as the redirect path.'; +$wb['error_proxy_requires_url'] = 'Redirect Type \"proxy\" requires a URL as the redirect path.'; $wb['backup_interval_txt'] = 'Backup interval'; $wb['backup_copies_txt'] = 'Number of backup copies'; $wb['ssl_key_txt'] = 'SSL Key'; diff --git a/interface/web/sites/lib/lang/hr_web_subdomain.lng b/interface/web/sites/lib/lang/hr_web_subdomain.lng index 76d7f39571..18fe4630a4 100644 --- a/interface/web/sites/lib/lang/hr_web_subdomain.lng +++ b/interface/web/sites/lib/lang/hr_web_subdomain.lng @@ -42,7 +42,7 @@ $wb['no_flag_txt'] = 'Bez markiranja'; $wb['domain_error_wildcard'] = 'Wildcard poddomene nisu dozvoljene.'; $wb['proxy_directives_txt'] = 'Proxy direktive'; $wb['available_proxy_directive_snippets_txt'] = 'Dostupne proxy direktive:'; -$wb['error_proxy_requires_url'] = 'Vrsta redirekcije \\"proxy\\" zahtjeva URL kao redirekcijsku putanju.'; +$wb['error_proxy_requires_url'] = 'Vrsta redirekcije \"proxy\" zahtjeva URL kao redirekcijsku putanju.'; $wb['http_port_txt'] = 'HTTP Port'; $wb['https_port_txt'] = 'HTTPS Port'; $wb['http_port_error_regex'] = 'HTTP Port invalid.'; diff --git a/interface/web/sites/lib/lang/hu.lng b/interface/web/sites/lib/lang/hu.lng index 2c156a4775..1a3e31d3f9 100644 --- a/interface/web/sites/lib/lang/hu.lng +++ b/interface/web/sites/lib/lang/hu.lng @@ -31,5 +31,5 @@ $wb['Available packages'] = 'Available packages'; $wb['Installed packages'] = 'Installed packages'; $wb['Update Packagelist'] = 'Update Packagelist'; $wb['Subdomain (Vhost)'] = 'Subdomain (Vhost)'; -$wb['error_proxy_requires_url'] = 'Redirect Type \\"proxy\\" requires a URL as the redirect path.'; +$wb['error_proxy_requires_url'] = 'Redirect Type \"proxy\" requires a URL as the redirect path.'; ?> diff --git a/interface/web/sites/lib/lang/hu_aps.lng b/interface/web/sites/lib/lang/hu_aps.lng index 88708732df..9330a1fb45 100644 --- a/interface/web/sites/lib/lang/hu_aps.lng +++ b/interface/web/sites/lib/lang/hu_aps.lng @@ -38,14 +38,14 @@ $wb['error_inv_main_location'] = 'The given install location folder is invalid.' $wb['error_license_agreement'] = 'In order to continue you have to accept the license agreement.'; $wb['error_no_database_pw'] = 'You have provided no valid database password.'; $wb['error_short_database_pw'] = 'Please choose a longer database password.'; -$wb['error_no_value_for'] = 'The field \\"%s\\" must not be empty.'; -$wb['error_short_value_for'] = 'The field \\"%s\\" requires a longer input value.'; -$wb['error_long_value_for'] = 'The field \\"%s\\" requires a shorter input value.'; -$wb['error_inv_value_for'] = 'You have entered an invalid value for the field \\"%s\\".'; -$wb['error_inv_email_for'] = 'You have entered an invalid mail address for the field \\"%s\\".'; -$wb['error_inv_domain_for'] = 'You have entered an invalid domain for the field \\"%s\\".'; -$wb['error_inv_integer_for'] = 'You have entered an invalid number for the field \\"%s\\".'; -$wb['error_inv_float_for'] = 'You have entered an invalid floating point number for the field \\"%s\\".'; +$wb['error_no_value_for'] = 'The field \"%s\" must not be empty.'; +$wb['error_short_value_for'] = 'The field \"%s\" requires a longer input value.'; +$wb['error_long_value_for'] = 'The field \"%s\" requires a shorter input value.'; +$wb['error_inv_value_for'] = 'You have entered an invalid value for the field \"%s\".'; +$wb['error_inv_email_for'] = 'You have entered an invalid mail address for the field \"%s\".'; +$wb['error_inv_domain_for'] = 'You have entered an invalid domain for the field \"%s\".'; +$wb['error_inv_integer_for'] = 'You have entered an invalid number for the field \"%s\".'; +$wb['error_inv_float_for'] = 'You have entered an invalid floating point number for the field \"%s\".'; $wb['error_used_location'] = 'The installation path already contains a package installation.'; $wb['installation_task_txt'] = 'Install planned'; $wb['installation_error_txt'] = 'Install error'; diff --git a/interface/web/sites/lib/lang/hu_web_childdomain.lng b/interface/web/sites/lib/lang/hu_web_childdomain.lng index 5ac19c3bbc..aa554d4bc4 100644 --- a/interface/web/sites/lib/lang/hu_web_childdomain.lng +++ b/interface/web/sites/lib/lang/hu_web_childdomain.lng @@ -42,7 +42,7 @@ $wb['redirect_error_regex'] = 'Invalid redirect path. Valid redirects are for ex $wb['domain_error_wildcard'] = 'Wildcard subdomains are not allowed.'; $wb['proxy_directives_txt'] = 'Proxy Directives'; $wb['available_proxy_directive_snippets_txt'] = 'Available Proxy Directive Snippets:'; -$wb['error_proxy_requires_url'] = 'Redirect Type \\"proxy\\" requires a URL as the redirect path.'; +$wb['error_proxy_requires_url'] = 'Redirect Type \"proxy\" requires a URL as the redirect path.'; $wb['backup_interval_txt'] = 'Backup interval'; $wb['backup_copies_txt'] = 'Number of backup copies'; $wb['ssl_key_txt'] = 'SSL Key'; diff --git a/interface/web/sites/lib/lang/hu_web_subdomain.lng b/interface/web/sites/lib/lang/hu_web_subdomain.lng index 84874b22c5..79c9ecc700 100644 --- a/interface/web/sites/lib/lang/hu_web_subdomain.lng +++ b/interface/web/sites/lib/lang/hu_web_subdomain.lng @@ -42,7 +42,7 @@ $wb['redirect_error_regex'] = 'Invalid redirect path. Valid redirects are for ex $wb['domain_error_wildcard'] = 'Wildcard subdomains are not allowed.'; $wb['proxy_directives_txt'] = 'Proxy Directives'; $wb['available_proxy_directive_snippets_txt'] = 'Available Proxy Directive Snippets:'; -$wb['error_proxy_requires_url'] = 'Redirect Type \\"proxy\\" requires a URL as the redirect path.'; +$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.'; diff --git a/interface/web/sites/lib/lang/id.lng b/interface/web/sites/lib/lang/id.lng index c8510df6cb..4fdae1813f 100644 --- a/interface/web/sites/lib/lang/id.lng +++ b/interface/web/sites/lib/lang/id.lng @@ -31,5 +31,5 @@ $wb['Available packages'] = 'Available packages'; $wb['Installed packages'] = 'Installed packages'; $wb['Update Packagelist'] = 'Update Packagelist'; $wb['Subdomain (Vhost)'] = 'Subdomain (Vhost)'; -$wb['error_proxy_requires_url'] = 'Redirect Type \\"proxy\\" requires a URL as the redirect path.'; +$wb['error_proxy_requires_url'] = 'Redirect Type \"proxy\" requires a URL as the redirect path.'; ?> diff --git a/interface/web/sites/lib/lang/id_aps.lng b/interface/web/sites/lib/lang/id_aps.lng index b8c9af2152..6f6d0bced2 100644 --- a/interface/web/sites/lib/lang/id_aps.lng +++ b/interface/web/sites/lib/lang/id_aps.lng @@ -38,14 +38,14 @@ $wb['error_inv_main_location'] = 'The given install location folder is invalid.' $wb['error_license_agreement'] = 'In order to continue you have to accept the license agreement.'; $wb['error_no_database_pw'] = 'You have provided no valid database password.'; $wb['error_short_database_pw'] = 'Please choose a longer database password.'; -$wb['error_no_value_for'] = 'The field \\"%s\\" must not be empty.'; -$wb['error_short_value_for'] = 'The field \\"%s\\" requires a longer input value.'; -$wb['error_long_value_for'] = 'The field \\"%s\\" requires a shorter input value.'; -$wb['error_inv_value_for'] = 'You have entered an invalid value for the field \\"%s\\".'; -$wb['error_inv_email_for'] = 'You have entered an invalid mail address for the field \\"%s\\".'; -$wb['error_inv_domain_for'] = 'You have entered an invalid domain for the field \\"%s\\".'; -$wb['error_inv_integer_for'] = 'You have entered an invalid number for the field \\"%s\\".'; -$wb['error_inv_float_for'] = 'You have entered an invalid floating point number for the field \\"%s\\".'; +$wb['error_no_value_for'] = 'The field \"%s\" must not be empty.'; +$wb['error_short_value_for'] = 'The field \"%s\" requires a longer input value.'; +$wb['error_long_value_for'] = 'The field \"%s\" requires a shorter input value.'; +$wb['error_inv_value_for'] = 'You have entered an invalid value for the field \"%s\".'; +$wb['error_inv_email_for'] = 'You have entered an invalid mail address for the field \"%s\".'; +$wb['error_inv_domain_for'] = 'You have entered an invalid domain for the field \"%s\".'; +$wb['error_inv_integer_for'] = 'You have entered an invalid number for the field \"%s\".'; +$wb['error_inv_float_for'] = 'You have entered an invalid floating point number for the field \"%s\".'; $wb['error_used_location'] = 'The installation path already contains a package installation.'; $wb['installation_task_txt'] = 'Install planned'; $wb['installation_error_txt'] = 'Install error'; diff --git a/interface/web/sites/lib/lang/id_web_childdomain.lng b/interface/web/sites/lib/lang/id_web_childdomain.lng index d5fd9711a4..2b97dc223a 100644 --- a/interface/web/sites/lib/lang/id_web_childdomain.lng +++ b/interface/web/sites/lib/lang/id_web_childdomain.lng @@ -42,7 +42,7 @@ $wb['no_flag_txt'] = 'No flag'; $wb['domain_error_wildcard'] = 'Wildcard subdomains are not allowed.'; $wb['proxy_directives_txt'] = 'Proxy Directives'; $wb['available_proxy_directive_snippets_txt'] = 'Available Proxy Directive Snippets:'; -$wb['error_proxy_requires_url'] = 'Redirect Type \\"proxy\\" requires a URL as the redirect path.'; +$wb['error_proxy_requires_url'] = 'Redirect Type \"proxy\" requires a URL as the redirect path.'; $wb['backup_interval_txt'] = 'Backup interval'; $wb['backup_copies_txt'] = 'Number of backup copies'; $wb['ssl_key_txt'] = 'SSL Key'; diff --git a/interface/web/sites/lib/lang/id_web_subdomain.lng b/interface/web/sites/lib/lang/id_web_subdomain.lng index c2d007e693..7f51be8e44 100644 --- a/interface/web/sites/lib/lang/id_web_subdomain.lng +++ b/interface/web/sites/lib/lang/id_web_subdomain.lng @@ -42,7 +42,7 @@ $wb['no_flag_txt'] = 'No flag'; $wb['domain_error_wildcard'] = 'Wildcard subdomains are not allowed.'; $wb['proxy_directives_txt'] = 'Proxy Directives'; $wb['available_proxy_directive_snippets_txt'] = 'Available Proxy Directive Snippets:'; -$wb['error_proxy_requires_url'] = 'Redirect Type \\"proxy\\" requires a URL as the redirect path.'; +$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.'; diff --git a/interface/web/sites/lib/lang/it.lng b/interface/web/sites/lib/lang/it.lng index 77473bd0f8..2237545be9 100644 --- a/interface/web/sites/lib/lang/it.lng +++ b/interface/web/sites/lib/lang/it.lng @@ -31,5 +31,5 @@ $wb['Available packages'] = 'Pacchetti disponibili'; $wb['Installed packages'] = 'Pacchetti Installati'; $wb['Update Packagelist'] = 'Aggiorna Elenco Pacchetti'; $wb['Subdomain (Vhost)'] = 'Sottodominio (Vhost)'; -$wb['error_proxy_requires_url'] = 'Tipo reinderizzamento \\"proxy\\" richiede una URL come percorso del reinderizzamento.'; +$wb['error_proxy_requires_url'] = 'Tipo reinderizzamento \"proxy\" richiede una URL come percorso del reinderizzamento.'; ?> diff --git a/interface/web/sites/lib/lang/it_aps.lng b/interface/web/sites/lib/lang/it_aps.lng index 0a6365f98f..ade7808616 100644 --- a/interface/web/sites/lib/lang/it_aps.lng +++ b/interface/web/sites/lib/lang/it_aps.lng @@ -38,14 +38,14 @@ $wb['error_inv_main_location'] = 'La cartella di installazione fornita non è va $wb['error_license_agreement'] = 'Per poter proseguire è necessario che prendi visione ed accetti l accordi di licenza.'; $wb['error_no_database_pw'] = 'La password fornita non è valida.'; $wb['error_short_database_pw'] = 'Per favore scegli una password di database più lunga.'; -$wb['error_no_value_for'] = 'Il campo \\"%s\\" non può essere vuoto.'; -$wb['error_short_value_for'] = 'Il campo \\"%s\\" richiede un valore immesso più lungo.'; -$wb['error_long_value_for'] = 'Il campo \\"%s\\" richiede un valore immesso più corto.'; -$wb['error_inv_value_for'] = 'Hai inserito un valore non valido per il campo \\"%s\\".'; -$wb['error_inv_email_for'] = 'Hai inserito un indirizzo email non valido per il campo \\"%s\\".'; -$wb['error_inv_domain_for'] = 'Hai inserito un dominio non valido per il campo \\"%s\\".'; -$wb['error_inv_integer_for'] = 'Hai inserito un numero non valido per il campo \\"%s\\".'; -$wb['error_inv_float_for'] = 'Hai inserito un numero di floating point non valido per il campo \\"%s\\".'; +$wb['error_no_value_for'] = 'Il campo \"%s\" non può essere vuoto.'; +$wb['error_short_value_for'] = 'Il campo \"%s\" richiede un valore immesso più lungo.'; +$wb['error_long_value_for'] = 'Il campo \"%s\" richiede un valore immesso più corto.'; +$wb['error_inv_value_for'] = 'Hai inserito un valore non valido per il campo \"%s\".'; +$wb['error_inv_email_for'] = 'Hai inserito un indirizzo email non valido per il campo \"%s\".'; +$wb['error_inv_domain_for'] = 'Hai inserito un dominio non valido per il campo \"%s\".'; +$wb['error_inv_integer_for'] = 'Hai inserito un numero non valido per il campo \"%s\".'; +$wb['error_inv_float_for'] = 'Hai inserito un numero di floating point non valido per il campo \"%s\".'; $wb['error_used_location'] = 'L installazione della patch contiene già un pacchetto di installazione.'; $wb['installation_task_txt'] = 'Installazione pianificata'; $wb['installation_error_txt'] = 'Errore di installazione'; diff --git a/interface/web/sites/lib/lang/it_web_childdomain.lng b/interface/web/sites/lib/lang/it_web_childdomain.lng index 3a214e298e..edd32aa6db 100644 --- a/interface/web/sites/lib/lang/it_web_childdomain.lng +++ b/interface/web/sites/lib/lang/it_web_childdomain.lng @@ -43,7 +43,7 @@ $wb['no_flag_txt'] = 'No flag'; $wb['domain_error_wildcard'] = 'Wildcard subdomains are not allowed.'; $wb['proxy_directives_txt'] = 'Proxy Directives'; $wb['available_proxy_directive_snippets_txt'] = 'Available Proxy Directive Snippets:'; -$wb['error_proxy_requires_url'] = 'Redirect Type \\"proxy\\" requires a URL as the redirect path.'; +$wb['error_proxy_requires_url'] = 'Redirect Type \"proxy\" requires a URL as the redirect path.'; $wb['backup_interval_txt'] = 'Backup interval'; $wb['backup_copies_txt'] = 'Number of backup copies'; $wb['ssl_key_txt'] = 'SSL Key'; diff --git a/interface/web/sites/lib/lang/it_web_subdomain.lng b/interface/web/sites/lib/lang/it_web_subdomain.lng index 956b5c3be0..0019304914 100644 --- a/interface/web/sites/lib/lang/it_web_subdomain.lng +++ b/interface/web/sites/lib/lang/it_web_subdomain.lng @@ -42,7 +42,7 @@ $wb['no_flag_txt'] = 'No flag'; $wb['domain_error_wildcard'] = 'Non sono ammessi caratteri jolly per i sottodomini.'; $wb['proxy_directives_txt'] = 'Direttive Proxy'; $wb['available_proxy_directive_snippets_txt'] = 'Snippets Direttive Proxy disponibili:'; -$wb['error_proxy_requires_url'] = 'Tipo reinderizzamento \\"proxy\\" richiede una URL come percorso di reinderizzamento.'; +$wb['error_proxy_requires_url'] = 'Tipo reinderizzamento \"proxy\" richiede una URL come percorso di reinderizzamento.'; $wb['http_port_txt'] = 'HTTP Port'; $wb['https_port_txt'] = 'HTTPS Port'; $wb['http_port_error_regex'] = 'HTTP Port invalid.'; diff --git a/interface/web/sites/lib/lang/ja.lng b/interface/web/sites/lib/lang/ja.lng index 920064bc5e..470ec2baec 100644 --- a/interface/web/sites/lib/lang/ja.lng +++ b/interface/web/sites/lib/lang/ja.lng @@ -31,5 +31,5 @@ $wb['Available packages'] = 'Available packages'; $wb['Installed packages'] = 'Installed packages'; $wb['Update Packagelist'] = 'Update Packagelist'; $wb['Subdomain (Vhost)'] = 'Subdomain (Vhost)'; -$wb['error_proxy_requires_url'] = 'Redirect Type \\"proxy\\" requires a URL as the redirect path.'; +$wb['error_proxy_requires_url'] = 'Redirect Type \"proxy\" requires a URL as the redirect path.'; ?> diff --git a/interface/web/sites/lib/lang/ja_aps.lng b/interface/web/sites/lib/lang/ja_aps.lng index dc6b22edf7..91f8ad102c 100644 --- a/interface/web/sites/lib/lang/ja_aps.lng +++ b/interface/web/sites/lib/lang/ja_aps.lng @@ -38,14 +38,14 @@ $wb['error_inv_main_location'] = 'The given install location folder is invalid.' $wb['error_license_agreement'] = 'In order to continue you have to accept the license agreement.'; $wb['error_no_database_pw'] = 'You have provided no valid database password.'; $wb['error_short_database_pw'] = 'Please choose a longer database password.'; -$wb['error_no_value_for'] = 'The field \\"%s\\" must not be empty.'; -$wb['error_short_value_for'] = 'The field \\"%s\\" requires a longer input value.'; -$wb['error_long_value_for'] = 'The field \\"%s\\" requires a shorter input value.'; -$wb['error_inv_value_for'] = 'You have entered an invalid value for the field \\"%s\\".'; -$wb['error_inv_email_for'] = 'You have entered an invalid mail address for the field \\"%s\\".'; -$wb['error_inv_domain_for'] = 'You have entered an invalid domain for the field \\"%s\\".'; -$wb['error_inv_integer_for'] = 'You have entered an invalid number for the field \\"%s\\".'; -$wb['error_inv_float_for'] = 'You have entered an invalid floating point number for the field \\"%s\\".'; +$wb['error_no_value_for'] = 'The field \"%s\" must not be empty.'; +$wb['error_short_value_for'] = 'The field \"%s\" requires a longer input value.'; +$wb['error_long_value_for'] = 'The field \"%s\" requires a shorter input value.'; +$wb['error_inv_value_for'] = 'You have entered an invalid value for the field \"%s\".'; +$wb['error_inv_email_for'] = 'You have entered an invalid mail address for the field \"%s\".'; +$wb['error_inv_domain_for'] = 'You have entered an invalid domain for the field \"%s\".'; +$wb['error_inv_integer_for'] = 'You have entered an invalid number for the field \"%s\".'; +$wb['error_inv_float_for'] = 'You have entered an invalid floating point number for the field \"%s\".'; $wb['error_used_location'] = 'The installation path already contains a package installation.'; $wb['installation_task_txt'] = 'Install planned'; $wb['installation_error_txt'] = 'Install error'; diff --git a/interface/web/sites/lib/lang/ja_web_childdomain.lng b/interface/web/sites/lib/lang/ja_web_childdomain.lng index d59d7bbda5..fe885c8c3e 100644 --- a/interface/web/sites/lib/lang/ja_web_childdomain.lng +++ b/interface/web/sites/lib/lang/ja_web_childdomain.lng @@ -42,7 +42,7 @@ $wb['no_flag_txt'] = 'No flag'; $wb['domain_error_wildcard'] = 'Wildcard subdomains are not allowed.'; $wb['proxy_directives_txt'] = 'Proxy Directives'; $wb['available_proxy_directive_snippets_txt'] = 'Available Proxy Directive Snippets:'; -$wb['error_proxy_requires_url'] = 'Redirect Type \\"proxy\\" requires a URL as the redirect path.'; +$wb['error_proxy_requires_url'] = 'Redirect Type \"proxy\" requires a URL as the redirect path.'; $wb['backup_interval_txt'] = 'Backup interval'; $wb['backup_copies_txt'] = 'Number of backup copies'; $wb['ssl_key_txt'] = 'SSL Key'; diff --git a/interface/web/sites/lib/lang/ja_web_subdomain.lng b/interface/web/sites/lib/lang/ja_web_subdomain.lng index 5eb45907ea..f77c98444e 100644 --- a/interface/web/sites/lib/lang/ja_web_subdomain.lng +++ b/interface/web/sites/lib/lang/ja_web_subdomain.lng @@ -42,7 +42,7 @@ $wb['no_flag_txt'] = 'No flag'; $wb['domain_error_wildcard'] = 'Wildcard subdomains are not allowed.'; $wb['proxy_directives_txt'] = 'Proxy Directives'; $wb['available_proxy_directive_snippets_txt'] = 'Available Proxy Directive Snippets:'; -$wb['error_proxy_requires_url'] = 'Redirect Type \\"proxy\\" requires a URL as the redirect path.'; +$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.'; diff --git a/interface/web/sites/lib/lang/nl.lng b/interface/web/sites/lib/lang/nl.lng index 8e07a1844a..89a4caa109 100644 --- a/interface/web/sites/lib/lang/nl.lng +++ b/interface/web/sites/lib/lang/nl.lng @@ -31,5 +31,5 @@ $wb['Available packages'] = 'Beschikbare pakketten'; $wb['Installed packages'] = 'Geïnstalleerde pakketten'; $wb['Update Packagelist'] = 'Pakkettenlijst bijwerken'; $wb['Subdomain (Vhost)'] = 'Subdomein (Vhost)'; -$wb['error_proxy_requires_url'] = 'Redirect Type \\"proxy\\" requires a URL as the redirect path.'; +$wb['error_proxy_requires_url'] = 'Redirect Type \"proxy\" requires a URL as the redirect path.'; ?> diff --git a/interface/web/sites/lib/lang/nl_aps.lng b/interface/web/sites/lib/lang/nl_aps.lng index c0adacee99..dfd852dcd0 100644 --- a/interface/web/sites/lib/lang/nl_aps.lng +++ b/interface/web/sites/lib/lang/nl_aps.lng @@ -38,14 +38,14 @@ $wb['error_inv_main_location'] = 'The given install location folder is invalid.' $wb['error_license_agreement'] = 'In order to continue you have to accept the license agreement.'; $wb['error_no_database_pw'] = 'You have provided no valid database password.'; $wb['error_short_database_pw'] = 'Please choose a longer database password.'; -$wb['error_no_value_for'] = 'The field \\"%s\\" must not be empty.'; -$wb['error_short_value_for'] = 'The field \\"%s\\" requires a longer input value.'; -$wb['error_long_value_for'] = 'The field \\"%s\\" requires a shorter input value.'; -$wb['error_inv_value_for'] = 'You have entered an invalid value for the field \\"%s\\".'; -$wb['error_inv_email_for'] = 'You have entered an invalid mail address for the field \\"%s\\".'; -$wb['error_inv_domain_for'] = 'You have entered an invalid domain for the field \\"%s\\".'; -$wb['error_inv_integer_for'] = 'You have entered an invalid number for the field \\"%s\\".'; -$wb['error_inv_float_for'] = 'You have entered an invalid floating point number for the field \\"%s\\".'; +$wb['error_no_value_for'] = 'The field \"%s\" must not be empty.'; +$wb['error_short_value_for'] = 'The field \"%s\" requires a longer input value.'; +$wb['error_long_value_for'] = 'The field \"%s\" requires a shorter input value.'; +$wb['error_inv_value_for'] = 'You have entered an invalid value for the field \"%s\".'; +$wb['error_inv_email_for'] = 'You have entered an invalid mail address for the field \"%s\".'; +$wb['error_inv_domain_for'] = 'You have entered an invalid domain for the field \"%s\".'; +$wb['error_inv_integer_for'] = 'You have entered an invalid number for the field \"%s\".'; +$wb['error_inv_float_for'] = 'You have entered an invalid floating point number for the field \"%s\".'; $wb['error_used_location'] = 'The installation path already contains a package installation.'; $wb['installation_task_txt'] = 'Install planned'; $wb['installation_error_txt'] = 'Install error'; diff --git a/interface/web/sites/lib/lang/nl_web_childdomain.lng b/interface/web/sites/lib/lang/nl_web_childdomain.lng index e99616ce11..4c5b3dc2ad 100644 --- a/interface/web/sites/lib/lang/nl_web_childdomain.lng +++ b/interface/web/sites/lib/lang/nl_web_childdomain.lng @@ -42,7 +42,7 @@ $wb['no_flag_txt'] = 'No flag'; $wb['domain_error_wildcard'] = 'Wildcard subdomains are not allowed.'; $wb['proxy_directives_txt'] = 'Proxy Directives'; $wb['available_proxy_directive_snippets_txt'] = 'Available Proxy Directive Snippets:'; -$wb['error_proxy_requires_url'] = 'Redirect Type \\"proxy\\" requires a URL as the redirect path.'; +$wb['error_proxy_requires_url'] = 'Redirect Type \"proxy\" requires a URL as the redirect path.'; $wb['backup_interval_txt'] = 'Backup interval'; $wb['backup_copies_txt'] = 'Number of backup copies'; $wb['ssl_key_txt'] = 'SSL Key'; diff --git a/interface/web/sites/lib/lang/nl_web_subdomain.lng b/interface/web/sites/lib/lang/nl_web_subdomain.lng index 2f4412afba..c644d8113d 100644 --- a/interface/web/sites/lib/lang/nl_web_subdomain.lng +++ b/interface/web/sites/lib/lang/nl_web_subdomain.lng @@ -42,7 +42,7 @@ $wb['no_flag_txt'] = 'Geen flag'; $wb['domain_error_wildcard'] = 'Wildcard subdomeinen zijn niet toegestaan.'; $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['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 niet correct.'; diff --git a/interface/web/sites/lib/lang/pl_aps.lng b/interface/web/sites/lib/lang/pl_aps.lng index c17bbca532..398c74e4c0 100644 --- a/interface/web/sites/lib/lang/pl_aps.lng +++ b/interface/web/sites/lib/lang/pl_aps.lng @@ -38,14 +38,14 @@ $wb['error_inv_main_location'] = 'Instalacja w podanym folderze jest niemożliwa $wb['error_license_agreement'] = 'Aby kontynuować musisz zaakceptować umowÄ™ licencyjnÄ….'; $wb['error_no_database_pw'] = 'Nie podaÅ‚eÅ› prawidÅ‚owego hasÅ‚a do bazy danych.'; $wb['error_short_database_pw'] = 'Wybierz dÅ‚uższe hasÅ‚o do bazy.'; -$wb['error_no_value_for'] = 'Pole \\"%s\\" nie może być puste'; -$wb['error_short_value_for'] = 'Pole \\"%s\\" wymaga dÅ‚uższej wartoÅ›ci'; -$wb['error_long_value_for'] = 'Pole \\"%s\\" wymaga krótszej wartoÅ›ci'; -$wb['error_inv_value_for'] = 'WprowadziÅ‚eÅ› nieprawidÅ‚owÄ… wartość w polu \\"%s\\"'; -$wb['error_inv_email_for'] = 'WprowadziÅ‚eÅ› nieprawidÅ‚owy adres email w polu \\"%s\\"'; -$wb['error_inv_domain_for'] = 'WprowadziÅ‚eÅ› nieprawidÅ‚owÄ… domenÄ™ w polu \\"%s\\"'; -$wb['error_inv_integer_for'] = 'WprowadziÅ‚eÅ› nieprawidÅ‚owÄ… liczbÄ™ w polu \\"%s\\"'; -$wb['error_inv_float_for'] = 'WprowadziÅ‚eÅ› nieprawidÅ‚owÄ… liczbÄ™ w polu \\"%s\\"'; +$wb['error_no_value_for'] = 'Pole \"%s\" nie może być puste'; +$wb['error_short_value_for'] = 'Pole \"%s\" wymaga dÅ‚uższej wartoÅ›ci'; +$wb['error_long_value_for'] = 'Pole \"%s\" wymaga krótszej wartoÅ›ci'; +$wb['error_inv_value_for'] = 'WprowadziÅ‚eÅ› nieprawidÅ‚owÄ… wartość w polu \"%s\"'; +$wb['error_inv_email_for'] = 'WprowadziÅ‚eÅ› nieprawidÅ‚owy adres email w polu \"%s\"'; +$wb['error_inv_domain_for'] = 'WprowadziÅ‚eÅ› nieprawidÅ‚owÄ… domenÄ™ w polu \"%s\"'; +$wb['error_inv_integer_for'] = 'WprowadziÅ‚eÅ› nieprawidÅ‚owÄ… liczbÄ™ w polu \"%s\"'; +$wb['error_inv_float_for'] = 'WprowadziÅ‚eÅ› nieprawidÅ‚owÄ… liczbÄ™ w polu \"%s\"'; $wb['error_used_location'] = 'Åšcieżka instalacji zawiera już zainstalowany pakiet.'; $wb['installation_task_txt'] = 'Instalacja planowana'; $wb['installation_error_txt'] = 'BÅ‚Ä…d instalacji'; diff --git a/interface/web/sites/lib/lang/pt.lng b/interface/web/sites/lib/lang/pt.lng index c1fca015b8..6cd9798fa1 100644 --- a/interface/web/sites/lib/lang/pt.lng +++ b/interface/web/sites/lib/lang/pt.lng @@ -31,5 +31,5 @@ $wb['Available packages'] = 'Available packages'; $wb['Installed packages'] = 'Installed packages'; $wb['Update Packagelist'] = 'Update Packagelist'; $wb['Subdomain (Vhost)'] = 'Subdomain (Vhost)'; -$wb['error_proxy_requires_url'] = 'Redirect Type \\"proxy\\" requires a URL as the redirect path.'; +$wb['error_proxy_requires_url'] = 'Redirect Type \"proxy\" requires a URL as the redirect path.'; ?> diff --git a/interface/web/sites/lib/lang/pt_aps.lng b/interface/web/sites/lib/lang/pt_aps.lng index c17ef00914..33c4e87266 100644 --- a/interface/web/sites/lib/lang/pt_aps.lng +++ b/interface/web/sites/lib/lang/pt_aps.lng @@ -38,14 +38,14 @@ $wb['error_inv_main_location'] = 'The given install location folder is invalid.' $wb['error_license_agreement'] = 'In order to continue you have to accept the license agreement.'; $wb['error_no_database_pw'] = 'You have provided no valid database password.'; $wb['error_short_database_pw'] = 'Please choose a longer database password.'; -$wb['error_no_value_for'] = 'The field \\"%s\\" must not be empty.'; -$wb['error_short_value_for'] = 'The field \\"%s\\" requires a longer input value.'; -$wb['error_long_value_for'] = 'The field \\"%s\\" requires a shorter input value.'; -$wb['error_inv_value_for'] = 'You have entered an invalid value for the field \\"%s\\".'; -$wb['error_inv_email_for'] = 'You have entered an invalid mail address for the field \\"%s\\".'; -$wb['error_inv_domain_for'] = 'You have entered an invalid domain for the field \\"%s\\".'; -$wb['error_inv_integer_for'] = 'You have entered an invalid number for the field \\"%s\\".'; -$wb['error_inv_float_for'] = 'You have entered an invalid floating point number for the field \\"%s\\".'; +$wb['error_no_value_for'] = 'The field \"%s\" must not be empty.'; +$wb['error_short_value_for'] = 'The field \"%s\" requires a longer input value.'; +$wb['error_long_value_for'] = 'The field \"%s\" requires a shorter input value.'; +$wb['error_inv_value_for'] = 'You have entered an invalid value for the field \"%s\".'; +$wb['error_inv_email_for'] = 'You have entered an invalid mail address for the field \"%s\".'; +$wb['error_inv_domain_for'] = 'You have entered an invalid domain for the field \"%s\".'; +$wb['error_inv_integer_for'] = 'You have entered an invalid number for the field \"%s\".'; +$wb['error_inv_float_for'] = 'You have entered an invalid floating point number for the field \"%s\".'; $wb['error_used_location'] = 'The installation path already contains a package installation.'; $wb['installation_task_txt'] = 'Install planned'; $wb['installation_error_txt'] = 'Install error'; diff --git a/interface/web/sites/lib/lang/pt_web_childdomain.lng b/interface/web/sites/lib/lang/pt_web_childdomain.lng index 4cbc032c19..688af77bd2 100644 --- a/interface/web/sites/lib/lang/pt_web_childdomain.lng +++ b/interface/web/sites/lib/lang/pt_web_childdomain.lng @@ -42,7 +42,7 @@ $wb['no_flag_txt'] = 'No flag'; $wb['domain_error_wildcard'] = 'Wildcard subdomains are not allowed.'; $wb['proxy_directives_txt'] = 'Proxy Directives'; $wb['available_proxy_directive_snippets_txt'] = 'Available Proxy Directive Snippets:'; -$wb['error_proxy_requires_url'] = 'Redirect Type \\"proxy\\" requires a URL as the redirect path.'; +$wb['error_proxy_requires_url'] = 'Redirect Type \"proxy\" requires a URL as the redirect path.'; $wb['backup_interval_txt'] = 'Backup interval'; $wb['backup_copies_txt'] = 'Number of backup copies'; $wb['ssl_key_txt'] = 'SSL Key'; diff --git a/interface/web/sites/lib/lang/pt_web_subdomain.lng b/interface/web/sites/lib/lang/pt_web_subdomain.lng index 8a4f1440fd..8f2fd70e46 100644 --- a/interface/web/sites/lib/lang/pt_web_subdomain.lng +++ b/interface/web/sites/lib/lang/pt_web_subdomain.lng @@ -42,7 +42,7 @@ $wb['no_flag_txt'] = 'No flag'; $wb['domain_error_wildcard'] = 'Wildcard subdomains are not allowed.'; $wb['proxy_directives_txt'] = 'Proxy Directives'; $wb['available_proxy_directive_snippets_txt'] = 'Available Proxy Directive Snippets:'; -$wb['error_proxy_requires_url'] = 'Redirect Type \\"proxy\\" requires a URL as the redirect path.'; +$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.'; diff --git a/interface/web/sites/lib/lang/ro.lng b/interface/web/sites/lib/lang/ro.lng index f674e91b80..418585ea55 100644 --- a/interface/web/sites/lib/lang/ro.lng +++ b/interface/web/sites/lib/lang/ro.lng @@ -31,5 +31,5 @@ $wb['Available packages'] = 'Available packages'; $wb['Installed packages'] = 'Installed packages'; $wb['Update Packagelist'] = 'Update Packagelist'; $wb['Subdomain (Vhost)'] = 'Subdomain (Vhost)'; -$wb['error_proxy_requires_url'] = 'Redirect Type \\"proxy\\" requires a URL as the redirect path.'; +$wb['error_proxy_requires_url'] = 'Redirect Type \"proxy\" requires a URL as the redirect path.'; ?> diff --git a/interface/web/sites/lib/lang/ro_aps.lng b/interface/web/sites/lib/lang/ro_aps.lng index 881c146a4d..3ff130f57e 100644 --- a/interface/web/sites/lib/lang/ro_aps.lng +++ b/interface/web/sites/lib/lang/ro_aps.lng @@ -38,14 +38,14 @@ $wb['error_inv_main_location'] = 'The given install location folder is invalid.' $wb['error_license_agreement'] = 'In order to continue you have to accept the license agreement.'; $wb['error_no_database_pw'] = 'You have provided no valid database password.'; $wb['error_short_database_pw'] = 'Please choose a longer database password.'; -$wb['error_no_value_for'] = 'The field \\"%s\\" must not be empty.'; -$wb['error_short_value_for'] = 'The field \\"%s\\" requires a longer input value.'; -$wb['error_long_value_for'] = 'The field \\"%s\\" requires a shorter input value.'; -$wb['error_inv_value_for'] = 'You have entered an invalid value for the field \\"%s\\".'; -$wb['error_inv_email_for'] = 'You have entered an invalid mail address for the field \\"%s\\".'; -$wb['error_inv_domain_for'] = 'You have entered an invalid domain for the field \\"%s\\".'; -$wb['error_inv_integer_for'] = 'You have entered an invalid number for the field \\"%s\\".'; -$wb['error_inv_float_for'] = 'You have entered an invalid floating point number for the field \\"%s\\".'; +$wb['error_no_value_for'] = 'The field \"%s\" must not be empty.'; +$wb['error_short_value_for'] = 'The field \"%s\" requires a longer input value.'; +$wb['error_long_value_for'] = 'The field \"%s\" requires a shorter input value.'; +$wb['error_inv_value_for'] = 'You have entered an invalid value for the field \"%s\".'; +$wb['error_inv_email_for'] = 'You have entered an invalid mail address for the field \"%s\".'; +$wb['error_inv_domain_for'] = 'You have entered an invalid domain for the field \"%s\".'; +$wb['error_inv_integer_for'] = 'You have entered an invalid number for the field \"%s\".'; +$wb['error_inv_float_for'] = 'You have entered an invalid floating point number for the field \"%s\".'; $wb['error_used_location'] = 'The installation path already contains a package installation.'; $wb['installation_task_txt'] = 'Install planned'; $wb['installation_error_txt'] = 'Install error'; diff --git a/interface/web/sites/lib/lang/ro_web_childdomain.lng b/interface/web/sites/lib/lang/ro_web_childdomain.lng index 30f83e7283..5f56786510 100644 --- a/interface/web/sites/lib/lang/ro_web_childdomain.lng +++ b/interface/web/sites/lib/lang/ro_web_childdomain.lng @@ -43,7 +43,7 @@ $wb['no_flag_txt'] = 'No flag'; $wb['domain_error_wildcard'] = 'Wildcard subdomains are not allowed.'; $wb['proxy_directives_txt'] = 'Proxy Directives'; $wb['available_proxy_directive_snippets_txt'] = 'Available Proxy Directive Snippets:'; -$wb['error_proxy_requires_url'] = 'Redirect Type \\"proxy\\" requires a URL as the redirect path.'; +$wb['error_proxy_requires_url'] = 'Redirect Type \"proxy\" requires a URL as the redirect path.'; $wb['backup_interval_txt'] = 'Backup interval'; $wb['backup_copies_txt'] = 'Number of backup copies'; $wb['ssl_key_txt'] = 'SSL Key'; diff --git a/interface/web/sites/lib/lang/ro_web_subdomain.lng b/interface/web/sites/lib/lang/ro_web_subdomain.lng index f36685be8a..436acc4cf9 100644 --- a/interface/web/sites/lib/lang/ro_web_subdomain.lng +++ b/interface/web/sites/lib/lang/ro_web_subdomain.lng @@ -42,7 +42,7 @@ $wb['no_flag_txt'] = 'No flag'; $wb['domain_error_wildcard'] = 'Wildcard subdomains are not allowed.'; $wb['proxy_directives_txt'] = 'Proxy Directives'; $wb['available_proxy_directive_snippets_txt'] = 'Available Proxy Directive Snippets:'; -$wb['error_proxy_requires_url'] = 'Redirect Type \\"proxy\\" requires a URL as the redirect path.'; +$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.'; diff --git a/interface/web/sites/lib/lang/ru.lng b/interface/web/sites/lib/lang/ru.lng index dbf2926043..6316c21d17 100644 --- a/interface/web/sites/lib/lang/ru.lng +++ b/interface/web/sites/lib/lang/ru.lng @@ -31,5 +31,5 @@ $wb['Available packages'] = 'ДоÑтупные пакеты'; $wb['Installed packages'] = 'УÑтановленные пакеты'; $wb['Update Packagelist'] = 'Обновить ÑпиÑок пакетов'; $wb['Subdomain (Vhost)'] = 'Поддомен (Vhost)'; -$wb['error_proxy_requires_url'] = 'Тип редиректа \\"proxy\\" требует URL в качеÑтве пути перенаправлениÑ.'; +$wb['error_proxy_requires_url'] = 'Тип редиректа \"proxy\" требует URL в качеÑтве пути перенаправлениÑ.'; ?> diff --git a/interface/web/sites/lib/lang/ru_aps.lng b/interface/web/sites/lib/lang/ru_aps.lng index d2225358c1..3dd4ad0a8a 100644 --- a/interface/web/sites/lib/lang/ru_aps.lng +++ b/interface/web/sites/lib/lang/ru_aps.lng @@ -38,14 +38,14 @@ $wb['error_inv_main_location'] = 'Ð’Ñ‹ указали некорректную $wb['error_license_agreement'] = 'Ð”Ð»Ñ Ð¿Ñ€Ð¾Ð´Ð¾Ð»Ð¶ÐµÐ½Ð¸Ñ Ð½ÑƒÐ¶Ð½Ð¾ принÑÑ‚ÑŒ лицензионное Ñоглашение.'; $wb['error_no_database_pw'] = 'Ð’Ñ‹ предоÑтавили не правильный пароль базы данных.'; $wb['error_short_database_pw'] = 'ПожалуйÑта, выберите более длинный пароль базы данных.'; -$wb['error_no_value_for'] = 'Поле \\"%s\\" не может быть пуÑтым.'; -$wb['error_short_value_for'] = 'Поле \\"%s\\" требует более длинного входного значениÑ.'; -$wb['error_long_value_for'] = 'Поле \\"%s\\"требует более короткого входного значениÑ.'; -$wb['error_inv_value_for'] = 'Ð’Ñ‹ ввели неверное значение Ð´Ð»Ñ Ð¿Ð¾Ð»Ñ \\"%s\\".'; -$wb['error_inv_email_for'] = 'Ð’Ñ‹ ввели некорректный Ð°Ð´Ñ€ÐµÑ Ñлектронной почты Ð´Ð»Ñ Ð¿Ð¾Ð»Ñ \\"%s\\".'; -$wb['error_inv_domain_for'] = 'Ð’Ñ‹ ввели некорректный домен Ð´Ð»Ñ Ð¿Ð¾Ð»Ñ \\"%s\\".'; -$wb['error_inv_integer_for'] = 'Ð’Ñ‹ ввели некорректное чиÑло Ð´Ð»Ñ Ð¿Ð¾Ð»Ñ \\"%s\\".'; -$wb['error_inv_float_for'] = 'Ð’Ñ‹ ввели некорректное чиÑло Ñ Ð¿Ð»Ð°Ð²Ð°ÑŽÑ‰ÐµÐ¹ точкой Ð´Ð»Ñ Ð¿Ð¾Ð»Ñ \\"%s\\".'; +$wb['error_no_value_for'] = 'Поле \"%s\" не может быть пуÑтым.'; +$wb['error_short_value_for'] = 'Поле \"%s\" требует более длинного входного значениÑ.'; +$wb['error_long_value_for'] = 'Поле \"%s\"требует более короткого входного значениÑ.'; +$wb['error_inv_value_for'] = 'Ð’Ñ‹ ввели неверное значение Ð´Ð»Ñ Ð¿Ð¾Ð»Ñ \"%s\".'; +$wb['error_inv_email_for'] = 'Ð’Ñ‹ ввели некорректный Ð°Ð´Ñ€ÐµÑ Ñлектронной почты Ð´Ð»Ñ Ð¿Ð¾Ð»Ñ \"%s\".'; +$wb['error_inv_domain_for'] = 'Ð’Ñ‹ ввели некорректный домен Ð´Ð»Ñ Ð¿Ð¾Ð»Ñ \"%s\".'; +$wb['error_inv_integer_for'] = 'Ð’Ñ‹ ввели некорректное чиÑло Ð´Ð»Ñ Ð¿Ð¾Ð»Ñ \"%s\".'; +$wb['error_inv_float_for'] = 'Ð’Ñ‹ ввели некорректное чиÑло Ñ Ð¿Ð»Ð°Ð²Ð°ÑŽÑ‰ÐµÐ¹ точкой Ð´Ð»Ñ Ð¿Ð¾Ð»Ñ \"%s\".'; $wb['error_used_location'] = 'Путь уÑтановки уже Ñодержит уÑтановочный пакет.'; $wb['installation_task_txt'] = 'Запланирована уÑтановка'; $wb['installation_error_txt'] = 'Ошибка уÑтановки'; diff --git a/interface/web/sites/lib/lang/ru_database.lng b/interface/web/sites/lib/lang/ru_database.lng index 0f5eaf3180..b931b715f2 100644 --- a/interface/web/sites/lib/lang/ru_database.lng +++ b/interface/web/sites/lib/lang/ru_database.lng @@ -13,7 +13,7 @@ $wb['database_name_error_unique'] = 'Ð˜Ð¼Ñ Ð±Ð°Ð·Ñ‹ данных уже Ñущ $wb['database_name_error_regex'] = 'Ðеверное Ð¸Ð¼Ñ Ð±Ð°Ð·Ñ‹ данных. Ð˜Ð¼Ñ Ð±Ð°Ð·Ñ‹ данных может Ñодержать только Ñледующие Ñимволы: a-z, A-Z, 0-9 и нижний пробел _. Длина: 2 - 64 Ñимвола.'; $wb['database_user_error_empty'] = 'Логин базы данных пуÑтой'; $wb['database_user_error_unique'] = 'Такой пользователь базы данных уже ÑущеÑтвует. Что бы получить уникальное имÑ, например, Ñложите название Ñайта и ваше имÑ.'; -$wb['database_user_error_regex'] = 'Ðекорректный логин Ð´Ð»Ñ Ð±Ð°Ð·Ñ‹ данных. Логин может Ñодержать только Ñледующие Ñимволы: a-z, A-Z, 0-9 и \\"_\\". Длина: 2 - 16 Ñимволов.'; +$wb['database_user_error_regex'] = 'Ðекорректный логин Ð´Ð»Ñ Ð±Ð°Ð·Ñ‹ данных. Логин может Ñодержать только Ñледующие Ñимволы: a-z, A-Z, 0-9 и \"_\". Длина: 2 - 16 Ñимволов.'; $wb['limit_database_txt'] = 'ДоÑтигнуто макÑимальное количеÑтво БД.'; $wb['database_name_change_txt'] = 'Ð˜Ð¼Ñ Ð±Ð°Ð·Ñ‹ данных не может быть изменено.'; $wb['database_charset_change_txt'] = 'Кодировка базы данных не может быть изменена'; diff --git a/interface/web/sites/lib/lang/ru_database_user.lng b/interface/web/sites/lib/lang/ru_database_user.lng index 7de99a11dc..df927317ca 100644 --- a/interface/web/sites/lib/lang/ru_database_user.lng +++ b/interface/web/sites/lib/lang/ru_database_user.lng @@ -6,7 +6,7 @@ $wb['client_txt'] = 'Клиент'; $wb['active_txt'] = 'Ðктивно'; $wb['database_user_error_empty'] = 'Логин базы данных пуÑтой'; $wb['database_user_error_unique'] = 'Такой пользователь базы данных уже ÑущеÑтвует. Что бы получить уникальное имÑ, например, Ñложите название Ñайта и ваше имÑ.'; -$wb['database_user_error_regex'] = 'Ðекорректный логин Ð´Ð»Ñ Ð±Ð°Ð·Ñ‹ данных. Логин может Ñодержать только Ñледующие Ñимволы: a-z, A-Z, 0-9 и \\"_\\". Длина: 2 - 16 Ñимволов.'; +$wb['database_user_error_regex'] = 'Ðекорректный логин Ð´Ð»Ñ Ð±Ð°Ð·Ñ‹ данных. Логин может Ñодержать только Ñледующие Ñимволы: a-z, A-Z, 0-9 и \"_\". Длина: 2 - 16 Ñимволов.'; $wb['database_user_error_len'] = 'Логин Ð´Ð»Ñ Ð±Ð°Ð·Ñ‹ данных - {user} - cлишком длинный. МакÑÐ¸Ð¼Ð°Ð»ÑŒÐ½Ð°Ñ Ð´Ð»Ð¸Ð½Ð° логина - 16 Ñимволов'; $wb['btn_save_txt'] = 'Сохранить'; $wb['btn_cancel_txt'] = 'Отменить'; diff --git a/interface/web/sites/lib/lang/ru_web_childdomain.lng b/interface/web/sites/lib/lang/ru_web_childdomain.lng index af71669a47..49905e77ea 100644 --- a/interface/web/sites/lib/lang/ru_web_childdomain.lng +++ b/interface/web/sites/lib/lang/ru_web_childdomain.lng @@ -42,7 +42,7 @@ $wb['no_flag_txt'] = 'Ðет флага'; $wb['domain_error_wildcard'] = 'Wildcard поддомены не допуÑкаютÑÑ.'; $wb['proxy_directives_txt'] = 'Директивы прокÑи'; $wb['available_proxy_directive_snippets_txt'] = 'ДоÑтупные заготовки директив Proxy:'; -$wb['error_proxy_requires_url'] = 'Тип редиректа \\"proxy\\" требует URL в качеÑтве пути перенаправлениÑ.'; +$wb['error_proxy_requires_url'] = 'Тип редиректа \"proxy\" требует URL в качеÑтве пути перенаправлениÑ.'; $wb['backup_interval_txt'] = 'Интервал резервного копированиÑ'; $wb['backup_copies_txt'] = 'КоличеÑтво резервных копий'; $wb['ssl_key_txt'] = 'SSL-ключ'; diff --git a/interface/web/sites/lib/lang/ru_web_subdomain.lng b/interface/web/sites/lib/lang/ru_web_subdomain.lng index 376c789430..46203a1815 100644 --- a/interface/web/sites/lib/lang/ru_web_subdomain.lng +++ b/interface/web/sites/lib/lang/ru_web_subdomain.lng @@ -42,7 +42,7 @@ $wb['no_flag_txt'] = 'Ðет флага'; $wb['domain_error_wildcard'] = 'Wildcard-поддомены не допуÑкаютÑÑ.'; $wb['proxy_directives_txt'] = 'Директивы прокÑи'; $wb['available_proxy_directive_snippets_txt'] = 'ДоÑтупные заготовки директив Proxy:'; -$wb['error_proxy_requires_url'] = 'Тип редиректа \\"proxy\\" требует URL в качеÑтве пути перенаправлениÑ.'; +$wb['error_proxy_requires_url'] = 'Тип редиректа \"proxy\" требует URL в качеÑтве пути перенаправлениÑ.'; $wb['http_port_txt'] = 'Порт HTTP'; $wb['https_port_txt'] = 'Порт HTTPS'; $wb['http_port_error_regex'] = 'Ðекорректный порт HTTP.'; diff --git a/interface/web/sites/lib/lang/se.lng b/interface/web/sites/lib/lang/se.lng index 6b44cdcf7c..a63670545c 100644 --- a/interface/web/sites/lib/lang/se.lng +++ b/interface/web/sites/lib/lang/se.lng @@ -31,5 +31,5 @@ $wb['Available packages'] = 'Tillgängliga paket'; $wb['Installed packages'] = 'Installerade paket'; $wb['Update Packagelist'] = 'Uppdatera paketlista'; $wb['Subdomain (Vhost)'] = 'Underdomän (Vhost)'; -$wb['error_proxy_requires_url'] = 'Redirect Type \\"proxy\\" requires a URL as the redirect path.'; +$wb['error_proxy_requires_url'] = 'Redirect Type \"proxy\" requires a URL as the redirect path.'; ?> diff --git a/interface/web/sites/lib/lang/se_aps.lng b/interface/web/sites/lib/lang/se_aps.lng index 3b32095d62..f399880dea 100644 --- a/interface/web/sites/lib/lang/se_aps.lng +++ b/interface/web/sites/lib/lang/se_aps.lng @@ -38,14 +38,14 @@ $wb['error_inv_main_location'] = 'The given install location folder is invalid.' $wb['error_license_agreement'] = 'In order to continue you have to accept the license agreement.'; $wb['error_no_database_pw'] = 'You have provided no valid database password.'; $wb['error_short_database_pw'] = 'Please choose a longer database password.'; -$wb['error_no_value_for'] = 'The field \\"%s\\" must not be empty.'; -$wb['error_short_value_for'] = 'The field \\"%s\\" requires a longer input value.'; -$wb['error_long_value_for'] = 'The field \\"%s\\" requires a shorter input value.'; -$wb['error_inv_value_for'] = 'You have entered an invalid value for the field \\"%s\\".'; -$wb['error_inv_email_for'] = 'You have entered an invalid mail address for the field \\"%s\\".'; -$wb['error_inv_domain_for'] = 'You have entered an invalid domain for the field \\"%s\\".'; -$wb['error_inv_integer_for'] = 'You have entered an invalid number for the field \\"%s\\".'; -$wb['error_inv_float_for'] = 'You have entered an invalid floating point number for the field \\"%s\\".'; +$wb['error_no_value_for'] = 'The field \"%s\" must not be empty.'; +$wb['error_short_value_for'] = 'The field \"%s\" requires a longer input value.'; +$wb['error_long_value_for'] = 'The field \"%s\" requires a shorter input value.'; +$wb['error_inv_value_for'] = 'You have entered an invalid value for the field \"%s\".'; +$wb['error_inv_email_for'] = 'You have entered an invalid mail address for the field \"%s\".'; +$wb['error_inv_domain_for'] = 'You have entered an invalid domain for the field \"%s\".'; +$wb['error_inv_integer_for'] = 'You have entered an invalid number for the field \"%s\".'; +$wb['error_inv_float_for'] = 'You have entered an invalid floating point number for the field \"%s\".'; $wb['error_used_location'] = 'The installation path already contains a package installation.'; $wb['installation_task_txt'] = 'Installation planerad'; $wb['installation_error_txt'] = 'Installationsfel'; diff --git a/interface/web/sites/lib/lang/se_web_childdomain.lng b/interface/web/sites/lib/lang/se_web_childdomain.lng index eff6791c65..52fba020aa 100644 --- a/interface/web/sites/lib/lang/se_web_childdomain.lng +++ b/interface/web/sites/lib/lang/se_web_childdomain.lng @@ -43,7 +43,7 @@ $wb['no_flag_txt'] = 'No flag'; $wb['domain_error_wildcard'] = 'Wildcard subdomains are not allowed.'; $wb['proxy_directives_txt'] = 'Proxy Directives'; $wb['available_proxy_directive_snippets_txt'] = 'Available Proxy Directive Snippets:'; -$wb['error_proxy_requires_url'] = 'Redirect Type \\"proxy\\" requires a URL as the redirect path.'; +$wb['error_proxy_requires_url'] = 'Redirect Type \"proxy\" requires a URL as the redirect path.'; $wb['backup_interval_txt'] = 'Backup interval'; $wb['backup_copies_txt'] = 'Number of backup copies'; $wb['ssl_key_txt'] = 'SSL Key'; diff --git a/interface/web/sites/lib/lang/se_web_subdomain.lng b/interface/web/sites/lib/lang/se_web_subdomain.lng index ec784641e8..a2d73c012d 100644 --- a/interface/web/sites/lib/lang/se_web_subdomain.lng +++ b/interface/web/sites/lib/lang/se_web_subdomain.lng @@ -42,7 +42,7 @@ $wb['no_flag_txt'] = 'Ingan flagga'; $wb['domain_error_wildcard'] = 'Wildcard subdomains are not allowed.'; $wb['proxy_directives_txt'] = 'Proxy Directives'; $wb['available_proxy_directive_snippets_txt'] = 'Available Proxy Directive Snippets:'; -$wb['error_proxy_requires_url'] = 'Redirect Type \\"proxy\\" requires a URL as the redirect path.'; +$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.'; diff --git a/interface/web/sites/lib/lang/sk.lng b/interface/web/sites/lib/lang/sk.lng index fabf52fda0..401ad2c65d 100644 --- a/interface/web/sites/lib/lang/sk.lng +++ b/interface/web/sites/lib/lang/sk.lng @@ -31,5 +31,5 @@ $wb['Available packages'] = 'Available packages'; $wb['Installed packages'] = 'Installed packages'; $wb['Update Packagelist'] = 'Update Packagelist'; $wb['Subdomain (Vhost)'] = 'Subdomain (Vhost)'; -$wb['error_proxy_requires_url'] = 'Redirect Type \\"proxy\\" requires a URL as the redirect path.'; +$wb['error_proxy_requires_url'] = 'Redirect Type \"proxy\" requires a URL as the redirect path.'; ?> diff --git a/interface/web/sites/lib/lang/sk_aps.lng b/interface/web/sites/lib/lang/sk_aps.lng index d6e6c7f4ca..2b3dc9a0ff 100644 --- a/interface/web/sites/lib/lang/sk_aps.lng +++ b/interface/web/sites/lib/lang/sk_aps.lng @@ -38,14 +38,14 @@ $wb['error_inv_main_location'] = 'The given install location folder is invalid.' $wb['error_license_agreement'] = 'In order to continue you have to accept the license agreement.'; $wb['error_no_database_pw'] = 'You have provided no valid database password.'; $wb['error_short_database_pw'] = 'Please choose a longer database password.'; -$wb['error_no_value_for'] = 'The field \\"%s\\" must not be empty.'; -$wb['error_short_value_for'] = 'The field \\"%s\\" requires a longer input value.'; -$wb['error_long_value_for'] = 'The field \\"%s\\" requires a shorter input value.'; -$wb['error_inv_value_for'] = 'You have entered an invalid value for the field \\"%s\\".'; -$wb['error_inv_email_for'] = 'You have entered an invalid mail address for the field \\"%s\\".'; -$wb['error_inv_domain_for'] = 'You have entered an invalid domain for the field \\"%s\\".'; -$wb['error_inv_integer_for'] = 'You have entered an invalid number for the field \\"%s\\".'; -$wb['error_inv_float_for'] = 'You have entered an invalid floating point number for the field \\"%s\\".'; +$wb['error_no_value_for'] = 'The field \"%s\" must not be empty.'; +$wb['error_short_value_for'] = 'The field \"%s\" requires a longer input value.'; +$wb['error_long_value_for'] = 'The field \"%s\" requires a shorter input value.'; +$wb['error_inv_value_for'] = 'You have entered an invalid value for the field \"%s\".'; +$wb['error_inv_email_for'] = 'You have entered an invalid mail address for the field \"%s\".'; +$wb['error_inv_domain_for'] = 'You have entered an invalid domain for the field \"%s\".'; +$wb['error_inv_integer_for'] = 'You have entered an invalid number for the field \"%s\".'; +$wb['error_inv_float_for'] = 'You have entered an invalid floating point number for the field \"%s\".'; $wb['error_used_location'] = 'The installation path already contains a package installation.'; $wb['installation_task_txt'] = 'Install planned'; $wb['installation_error_txt'] = 'Install error'; diff --git a/interface/web/sites/lib/lang/sk_web_childdomain.lng b/interface/web/sites/lib/lang/sk_web_childdomain.lng index e0d26667bc..c91bee49ac 100644 --- a/interface/web/sites/lib/lang/sk_web_childdomain.lng +++ b/interface/web/sites/lib/lang/sk_web_childdomain.lng @@ -42,7 +42,7 @@ $wb['no_flag_txt'] = 'No flag'; $wb['domain_error_wildcard'] = 'Wildcard subdomains are not allowed.'; $wb['proxy_directives_txt'] = 'Proxy Directives'; $wb['available_proxy_directive_snippets_txt'] = 'Available Proxy Directive Snippets:'; -$wb['error_proxy_requires_url'] = 'Redirect Type \\"proxy\\" requires a URL as the redirect path.'; +$wb['error_proxy_requires_url'] = 'Redirect Type \"proxy\" requires a URL as the redirect path.'; $wb['backup_interval_txt'] = 'Backup interval'; $wb['backup_copies_txt'] = 'Number of backup copies'; $wb['ssl_key_txt'] = 'SSL Key'; diff --git a/interface/web/sites/lib/lang/sk_web_subdomain.lng b/interface/web/sites/lib/lang/sk_web_subdomain.lng index f6bcffd901..d44bb27bd6 100644 --- a/interface/web/sites/lib/lang/sk_web_subdomain.lng +++ b/interface/web/sites/lib/lang/sk_web_subdomain.lng @@ -42,7 +42,7 @@ $wb['no_flag_txt'] = 'No flag'; $wb['domain_error_wildcard'] = 'Wildcard subdomains are not allowed.'; $wb['proxy_directives_txt'] = 'Proxy Directives'; $wb['available_proxy_directive_snippets_txt'] = 'Available Proxy Directive Snippets:'; -$wb['error_proxy_requires_url'] = 'Redirect Type \\"proxy\\" requires a URL as the redirect path.'; +$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.'; diff --git a/interface/web/sites/lib/lang/tr.lng b/interface/web/sites/lib/lang/tr.lng index d0570f6c12..4f8620c34a 100644 --- a/interface/web/sites/lib/lang/tr.lng +++ b/interface/web/sites/lib/lang/tr.lng @@ -31,5 +31,5 @@ $wb['Available packages'] = 'Kullanılabilecek Paketler'; $wb['Installed packages'] = 'Yüklü Paketler'; $wb['Update Packagelist'] = 'Güncelleme Paketi Listesi'; $wb['Subdomain (Vhost)'] = 'Alt alan adı (SSunucu)'; -$wb['error_proxy_requires_url'] = '\\"Vekil Sunucu\\" yönlendirme tipi için, yönlendirilecek yolu gösteren bir Ä°nternet adresi gereklidir.'; +$wb['error_proxy_requires_url'] = '\"Vekil Sunucu\" yönlendirme tipi için, yönlendirilecek yolu gösteren bir Ä°nternet adresi gereklidir.'; ?> diff --git a/interface/web/sites/lib/lang/tr_aps.lng b/interface/web/sites/lib/lang/tr_aps.lng index 1c6ccd49a6..f0eea59cba 100644 --- a/interface/web/sites/lib/lang/tr_aps.lng +++ b/interface/web/sites/lib/lang/tr_aps.lng @@ -40,14 +40,14 @@ $wb['error_inv_main_location'] = 'Yazdığınız yükleme konumunu klasörü ge $wb['error_license_agreement'] = 'Devam etmek için lisans anlaÅŸmasını onaylamalısınız.'; $wb['error_no_database_pw'] = 'Yazdığınız veritabanı parolası geçersiz.'; $wb['error_short_database_pw'] = 'Lütfen daha uzun bir veritabanı parolası yazın.'; -$wb['error_no_value_for'] = '\\"%s\\" alanı boÅŸ olamaz.'; -$wb['error_short_value_for'] = '\\"%s\\" alanına daha uzun bir deÄŸer yazılmalıdır.'; -$wb['error_long_value_for'] = '\\"%s\\" alanına daha kısa bir deÄŸer yazılmalıdır.'; -$wb['error_inv_value_for'] = '\\"%s\\" alanına yazılan deÄŸer geçersiz.'; -$wb['error_inv_email_for'] = '\\"%s\\" alanına yazılan e-posta adresi geçersiz.'; -$wb['error_inv_domain_for'] = '\\"%s\\" alanına yazılan alan adı geçersiz.'; -$wb['error_inv_integer_for'] = '\\"%s\\" alanına yazılan sayı geçersiz.'; -$wb['error_inv_float_for'] = '\\"%s\\" alanına yazılan küsuratlı sayı geçersiz.'; +$wb['error_no_value_for'] = '\"%s\" alanı boÅŸ olamaz.'; +$wb['error_short_value_for'] = '\"%s\" alanına daha uzun bir deÄŸer yazılmalıdır.'; +$wb['error_long_value_for'] = '\"%s\" alanına daha kısa bir deÄŸer yazılmalıdır.'; +$wb['error_inv_value_for'] = '\"%s\" alanına yazılan deÄŸer geçersiz.'; +$wb['error_inv_email_for'] = '\"%s\" alanına yazılan e-posta adresi geçersiz.'; +$wb['error_inv_domain_for'] = '\"%s\" alanına yazılan alan adı geçersiz.'; +$wb['error_inv_integer_for'] = '\"%s\" alanına yazılan sayı geçersiz.'; +$wb['error_inv_float_for'] = '\"%s\" alanına yazılan küsuratlı sayı geçersiz.'; $wb['error_used_location'] = 'Yükleme yoluna daha önce yüklenmiÅŸ bir paket var.'; $wb['installation_task_txt'] = 'Yükleme planlandı'; $wb['installation_error_txt'] = 'Yükleme hatası'; diff --git a/interface/web/sites/lib/lang/tr_web_childdomain.lng b/interface/web/sites/lib/lang/tr_web_childdomain.lng index e11c6a92b5..5d68e809b3 100644 --- a/interface/web/sites/lib/lang/tr_web_childdomain.lng +++ b/interface/web/sites/lib/lang/tr_web_childdomain.lng @@ -42,7 +42,7 @@ $wb['no_flag_txt'] = 'No flag'; $wb['domain_error_wildcard'] = 'Wildcard subdomains are not allowed.'; $wb['proxy_directives_txt'] = 'Proxy Directives'; $wb['available_proxy_directive_snippets_txt'] = 'Available Proxy Directive Snippets:'; -$wb['error_proxy_requires_url'] = 'Redirect Type \\"proxy\\" requires a URL as the redirect path.'; +$wb['error_proxy_requires_url'] = 'Redirect Type \"proxy\" requires a URL as the redirect path.'; $wb['backup_interval_txt'] = 'Backup interval'; $wb['backup_copies_txt'] = 'Number of backup copies'; $wb['ssl_key_txt'] = 'SSL Key'; diff --git a/interface/web/sites/lib/lang/tr_web_subdomain.lng b/interface/web/sites/lib/lang/tr_web_subdomain.lng index 188b257589..c6e28bc6fa 100644 --- a/interface/web/sites/lib/lang/tr_web_subdomain.lng +++ b/interface/web/sites/lib/lang/tr_web_subdomain.lng @@ -42,7 +42,7 @@ $wb['no_redirect_txt'] = 'Yönlendirme yok'; $wb['no_flag_txt'] = 'Ä°ÅŸaret yok'; $wb['proxy_directives_txt'] = 'Vekil Sunucu Yönergeleri'; $wb['available_proxy_directive_snippets_txt'] = 'Kullanılabilecek Vekil Sunucu Yönerge Parçaları:'; -$wb['error_proxy_requires_url'] = '\\"Vekil Sunucu\\" yönlendirme tipi için, yönlendirilecek yolu gösteren bir Ä°nternet adresi gereklidir.'; +$wb['error_proxy_requires_url'] = '\"Vekil Sunucu\" yönlendirme tipi için, yönlendirilecek yolu gösteren bir Ä°nternet adresi gereklidir.'; $wb['http_port_txt'] = 'HTTP Port'; $wb['https_port_txt'] = 'HTTPS Port'; $wb['http_port_error_regex'] = 'HTTP Port invalid.'; diff --git a/interface/web/vm/lib/lang/dk_openvz_template.lng b/interface/web/vm/lib/lang/dk_openvz_template.lng index 9de4a6fd92..7016f41a67 100644 --- a/interface/web/vm/lib/lang/dk_openvz_template.lng +++ b/interface/web/vm/lib/lang/dk_openvz_template.lng @@ -44,7 +44,7 @@ $wb['tcpsndbuf_desc_txt'] = 'Total størrelse af TCP send buffere.'; $wb['tcprcvbuf_desc_txt'] = 'Total størrelse af TCP modtage buffere.'; $wb['othersockbuf_desc_txt'] = 'Total størrelse af UNIX-domæne sokel buffere, UDP og andre datagram protokoller send buffere.'; $wb['dgramrcvbuf_desc_txt'] = 'Modtage buffere af UDP og andre datagram protokoller.'; -$wb['oomguarpages_desc_txt'] = 'Den garanterede mængde hukommelse for det tilfælde hukommelsen er \\"over-booked\\" (out-of-memory kill guarantee), i sider.'; +$wb['oomguarpages_desc_txt'] = 'Den garanterede mængde hukommelse for det tilfælde hukommelsen er \"over-booked\" (out-of-memory kill guarantee), i sider.'; $wb['privvmpages_desc_txt'] = 'Hukommelses grænse tildeling, i sider.'; $wb['lockedpages_desc_txt'] = 'Proces-sider uden tiladelse til at blive byttet ud (pages locked by mlock(2)).'; $wb['shmpages_desc_txt'] = 'Total størrelse af delt hukommelse (IPC, delt anonyme afbildninger og tmpfs objekter), i sider.'; diff --git a/interface/web/vm/lib/lang/es_openvz_template.lng b/interface/web/vm/lib/lang/es_openvz_template.lng index 1abd562ed5..1868240d3e 100644 --- a/interface/web/vm/lib/lang/es_openvz_template.lng +++ b/interface/web/vm/lib/lang/es_openvz_template.lng @@ -44,7 +44,7 @@ $wb['tcpsndbuf_desc_txt'] = 'Tamaño total de los buffers de envÃo TCP.'; $wb['tcprcvbuf_desc_txt'] = 'Tamaño total de los buffers de recepción TCP.'; $wb['othersockbuf_desc_txt'] = 'Tamaño total de buffers de socket UNIX-domain, UDP y otros protocolos de envÃo para buffers de datagramas.'; $wb['dgramrcvbuf_desc_txt'] = 'Recibir buffers de UDP y otros protocolos de datagrama.'; -$wb['oomguarpages_desc_txt'] = 'La cantidad de memoria garantizada en caso de que la memoria \\"over-booked\\" (garantizado para out-of-memory kill), en las páginas.'; +$wb['oomguarpages_desc_txt'] = 'La cantidad de memoria garantizada en caso de que la memoria \"over-booked\" (garantizado para out-of-memory kill), en las páginas.'; $wb['privvmpages_desc_txt'] = 'LÃmite de asignación de memoria en las páginas.'; $wb['lockedpages_desc_txt'] = 'Páginas de procesos sin permisos para sacar del swap (páginas bloqueadas por mlock(2)).'; $wb['shmpages_desc_txt'] = 'Tamaño total de memoria compatida (IPC, asignaciones anónimas compartidas y objetos tmpfs), en las páginas.'; diff --git a/interface/web/vm/lib/lang/tr_openvz_template.lng b/interface/web/vm/lib/lang/tr_openvz_template.lng index fb1452e885..2621212862 100644 --- a/interface/web/vm/lib/lang/tr_openvz_template.lng +++ b/interface/web/vm/lib/lang/tr_openvz_template.lng @@ -44,7 +44,7 @@ $wb['tcpsndbuf_desc_txt'] = 'TCP gönderme arabelleÄŸinin toplam boyutu.'; $wb['tcprcvbuf_desc_txt'] = 'TCP alma arabelleÄŸinin toplam boyutu.'; $wb['othersockbuf_desc_txt'] = 'UNIX alan adı soket arabelleÄŸinin toplam boyutu, UDP ve diÄŸer datagram iletiÅŸim kuralları gönderme ara bellekleri.'; $wb['dgramrcvbuf_desc_txt'] = 'UDP ve diÄŸer datagram iletiÅŸim kuralları alma ara bellekleri.'; -$wb['oomguarpages_desc_txt'] = 'Bellek sayfası cinsinden, bellek taÅŸması durumlarında garanti edilen bellek miktarı\\" (bellek bitti boÅŸaltma garantisi).'; +$wb['oomguarpages_desc_txt'] = 'Bellek sayfası cinsinden, bellek taÅŸması durumlarında garanti edilen bellek miktarı\" (bellek bitti boÅŸaltma garantisi).'; $wb['privvmpages_desc_txt'] = 'Bellek sayfası cinsinden ayrılacak bellek sınırı.'; $wb['lockedpages_desc_txt'] = 'Ä°ÅŸlem sayfaları takasına izin verilmez (mlock(2) ile kilitlenmiÅŸ sayfalar).'; $wb['shmpages_desc_txt'] = 'Bellek sayfası cinsinden, paylaşılan belleÄŸin toplam boyutu (IPC, paylaşılan anonim haritalama ve tmpfs nesneleri).'; -- GitLab From ffc60c2a940bf9bf63c418c7f5ae12b4ebef4da0 Mon Sep 17 00:00:00 2001 From: Till Brehm <tbrehm@ispconfig.org> Date: Fri, 5 Jul 2019 19:36:38 +0200 Subject: [PATCH 088/215] Created upd_0087.sql file from upd_dev_collection.sql --- install/sql/incremental/upd_0087.sql | 85 +++++++++++++++++++ .../sql/incremental/upd_dev_collection.sql | 85 ------------------- 2 files changed, 85 insertions(+), 85 deletions(-) create mode 100644 install/sql/incremental/upd_0087.sql diff --git a/install/sql/incremental/upd_0087.sql b/install/sql/incremental/upd_0087.sql new file mode 100644 index 0000000000..55e3b846d7 --- /dev/null +++ b/install/sql/incremental/upd_0087.sql @@ -0,0 +1,85 @@ +ALTER TABLE `sys_datalog` ADD `session_id` varchar(64) NOT NULL DEFAULT '' AFTER `error`; +ALTER TABLE `sys_user` CHANGE `sys_userid` `sys_userid` INT(11) UNSIGNED NOT NULL DEFAULT '1' COMMENT 'Created by userid'; +ALTER TABLE `sys_user` CHANGE `sys_groupid` `sys_groupid` INT(11) UNSIGNED NOT NULL DEFAULT '1' COMMENT 'Created by groupid'; +ALTER TABLE `web_domain` ADD COLUMN `php_fpm_chroot` enum('n','y') NOT NULL DEFAULT 'n' AFTER `php_fpm_use_socket`; + +CREATE TABLE IF NOT EXISTS `dns_ssl_ca` ( + `id` int(10) unsigned NOT NULL AUTO_INCREMENT, + `sys_userid` int(11) unsigned NOT NULL DEFAULT '0', + `sys_groupid` int(11) unsigned NOT NULL DEFAULT '0', + `sys_perm_user` varchar(5) NOT NULL DEFAULT '', + `sys_perm_group` varchar(5) NOT NULL DEFAULT '', + `sys_perm_other` varchar(5) NOT NULL DEFAULT '', + `active` enum('N','Y') NOT NULL DEFAULT 'N', + `ca_name` varchar(255) NOT NULL DEFAULT '', + `ca_issue` varchar(255) NOT NULL DEFAULT '', + `ca_wildcard` enum('Y','N') NOT NULL DEFAULT 'N', + `ca_iodef` text NOT NULL, + `ca_critical` tinyint(1) NOT NULL DEFAULT '0', + PRIMARY KEY (`id`), + UNIQUE KEY (`ca_issue`) +) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ; + +ALTER TABLE `dns_ssl_ca` ADD UNIQUE(`ca_issue`); + +UPDATE `dns_ssl_ca` SET `ca_issue` = 'comodo.com' WHERE `ca_issue` = 'comodoca.com'; +DELETE FROM `dns_ssl_ca` WHERE `ca_issue` = 'geotrust.com'; +DELETE FROM `dns_ssl_ca` WHERE `ca_issue` = 'thawte.com'; +UPDATE `dns_ssl_ca` SET `ca_name` = 'Symantec / Thawte / GeoTrust' WHERE `ca_issue` = 'symantec.com'; + +ALTER TABLE `dns_rr` CHANGE `type` `type` ENUM('A','AAAA','ALIAS','CAA','CNAME','DS','HINFO','LOC','MX','NAPTR','NS','PTR','RP','SRV','TXT','TLSA','DNSKEY') CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL; +ALTER TABLE `dns_rr` CHANGE `data` `data` TEXT NOT NULL; +INSERT IGNORE INTO `dns_ssl_ca` (`id`, `sys_userid`, `sys_groupid`, `sys_perm_user`, `sys_perm_group`, `sys_perm_other`, `active`, `ca_name`, `ca_issue`, `ca_wildcard`, `ca_iodef`, `ca_critical`) VALUES +(NULL, 1, 1, 'riud', 'riud', '', 'Y', 'AC Camerfirma', 'camerfirma.com', 'Y', '', 0), +(NULL, 1, 1, 'riud', 'riud', '', 'Y', 'ACCV', 'accv.es', 'Y', '', 0), +(NULL, 1, 1, 'riud', 'riud', '', 'Y', 'Actalis', 'actalis.it', 'Y', '', 0), +(NULL, 1, 1, 'riud', 'riud', '', 'Y', 'Amazon', 'amazon.com', 'Y', '', 0), +(NULL, 1, 1, 'riud', 'riud', '', 'Y', 'Asseco', 'certum.pl', 'Y', '', 0), +(NULL, 1, 1, 'riud', 'riud', '', 'Y', 'Buypass', 'buypass.com', 'Y', '', 0), +(NULL, 1, 1, 'riud', 'riud', '', 'Y', 'CA Disig', 'disig.sk', 'Y', '', 0), +(NULL, 1, 1, 'riud', 'riud', '', 'Y', 'CATCert', 'aoc.cat', 'Y', '', 0), +(NULL, 1, 1, 'riud', 'riud', '', 'Y', 'Certinomis', 'www.certinomis.com', 'Y', '', 0), +(NULL, 1, 1, 'riud', 'riud', '', 'Y', 'Certizen', 'hongkongpost.gov.hk', 'Y', '', 0), +(NULL, 1, 1, 'riud', 'riud', '', 'Y', 'certSIGN', 'certsign.ro', 'Y', '', 0), +(NULL, 1, 1, 'riud', 'riud', '', 'Y', 'CFCA', 'cfca.com.cn', 'Y', '', 0), +(NULL, 1, 1, 'riud', 'riud', '', 'Y', 'Chunghwa Telecom', 'cht.com.tw', 'Y', '', 0), +(NULL, 1, 1, 'riud', 'riud', '', 'Y', 'Comodo', 'comodoca.com', 'Y', '', 0), +(NULL, 1, 1, 'riud', 'riud', '', 'Y', 'D-TRUST', 'd-trust.net', 'Y', '', 0), +(NULL, 1, 1, 'riud', 'riud', '', 'Y', 'DigiCert', 'digicert.com', 'Y', '', 0), +(NULL, 1, 1, 'riud', 'riud', '', 'Y', 'DocuSign', 'docusign.fr', 'Y', '', 0), +(NULL, 1, 1, 'riud', 'riud', '', 'Y', 'e-tugra', 'e-tugra.com', 'Y', '', 0), +(NULL, 1, 1, 'riud', 'riud', '', 'Y', 'EDICOM', 'edicomgroup.com', 'Y', '', 0), +(NULL, 1, 1, 'riud', 'riud', '', 'Y', 'Entrust', 'entrust.net', 'Y', '', 0), +(NULL, 1, 1, 'riud', 'riud', '', 'Y', 'Firmaprofesional', 'firmaprofesional.com', 'Y', '', 0), +(NULL, 1, 1, 'riud', 'riud', '', 'Y', 'FNMT', 'fnmt.es', 'Y', '', 0), +(NULL, 1, 1, 'riud', 'riud', '', 'Y', 'GlobalSign', 'globalsign.com', 'Y', '', 0), +(NULL, 1, 1, 'riud', 'riud', '', 'Y', 'GoDaddy', 'godaddy.com', 'Y', '', 0), +(NULL, 1, 1, 'riud', 'riud', '', 'Y', 'Google Trust Services', 'pki.goog', 'Y', '', 0), +(NULL, 1, 1, 'riud', 'riud', '', 'Y', 'GRCA', 'gca.nat.gov.tw', 'Y', '', 0), +(NULL, 1, 1, 'riud', 'riud', '', 'Y', 'HARICA', 'harica.gr', 'Y', '', 0), +(NULL, 1, 1, 'riud', 'riud', '', 'Y', 'IdenTrust', 'identrust.com', 'Y', '', 0), +(NULL, 1, 1, 'riud', 'riud', '', 'Y', 'Izenpe', 'izenpe.com', 'Y', '', 0), +(NULL, 1, 1, 'riud', 'riud', '', 'Y', 'Kamu SM', 'kamusm.gov.tr', 'Y', '', 0), +(NULL, 1, 1, 'riud', 'riud', '', 'Y', 'Let''s Encrypt', 'letsencrypt.org', 'Y', '', 0), +(NULL, 1, 1, 'riud', 'riud', '', 'Y', 'Microsec e-Szigno', 'e-szigno.hu', 'Y', '', 0), +(NULL, 1, 1, 'riud', 'riud', '', 'Y', 'NetLock', 'netlock.hu', 'Y', '', 0), +(NULL, 1, 1, 'riud', 'riud', '', 'Y', 'PKIoverheid', 'www.pkioverheid.nl', 'Y', '', 0), +(NULL, 1, 1, 'riud', 'riud', '', 'Y', 'PROCERT', 'procert.net.ve', 'Y', '', 0), +(NULL, 1, 1, 'riud', 'riud', '', 'Y', 'QuoVadis', 'quovadisglobal.com', 'Y', '', 0), +(NULL, 1, 1, 'riud', 'riud', '', 'Y', 'SECOM', 'secomtrust.net', 'Y', '', 0), +(NULL, 1, 1, 'riud', 'riud', '', 'Y', 'Sertifitseerimiskeskuse', 'sk.ee', 'Y', '', 0), +(NULL, 1, 1, 'riud', 'riud', '', 'Y', 'StartCom', 'startcomca.com', 'Y', '', 0), +(NULL, 1, 1, 'riud', 'riud', '', 'Y', 'SwissSign', 'swisssign.com', 'Y', '', 0), +(NULL, 1, 1, 'riud', 'riud', '', 'Y', 'Symantec / Thawte / GeoTrust', 'symantec.com', 'Y', '', 0), +(NULL, 1, 1, 'riud', 'riud', '', 'Y', 'T-Systems', 'telesec.de', 'Y', '', 0), +(NULL, 1, 1, 'riud', 'riud', '', 'Y', 'Telia', 'telia.com', 'Y', '', 0), +(NULL, 1, 1, 'riud', 'riud', '', 'Y', 'Trustwave', 'trustwave.com', 'Y', '', 0), +(NULL, 1, 1, 'riud', 'riud', '', 'Y', 'Web.com', 'web.com', 'Y', '', 0), +(NULL, 1, 1, 'riud', 'riud', '', 'Y', 'WISeKey', 'wisekey.com', 'Y', '', 0), +(NULL, 1, 1, 'riud', 'riud', '', 'Y', 'WoSign', 'wosign.com', 'Y', '', 0); + +ALTER TABLE `dns_soa` CHANGE `xfer` `xfer` TEXT NULL; +ALTER TABLE `dns_soa` CHANGE `also_notify` `also_notify` TEXT NULL; +ALTER TABLE `dns_slave` CHANGE `xfer` `xfer` TEXT NULL; +ALTER TABLE `firewall` CHANGE `tcp_port` `tcp_port` TEXT CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL; +ALTER TABLE `firewall` CHANGE `udp_port` `udp_port` TEXT CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL; \ No newline at end of file diff --git a/install/sql/incremental/upd_dev_collection.sql b/install/sql/incremental/upd_dev_collection.sql index 55e3b846d7..e69de29bb2 100644 --- a/install/sql/incremental/upd_dev_collection.sql +++ b/install/sql/incremental/upd_dev_collection.sql @@ -1,85 +0,0 @@ -ALTER TABLE `sys_datalog` ADD `session_id` varchar(64) NOT NULL DEFAULT '' AFTER `error`; -ALTER TABLE `sys_user` CHANGE `sys_userid` `sys_userid` INT(11) UNSIGNED NOT NULL DEFAULT '1' COMMENT 'Created by userid'; -ALTER TABLE `sys_user` CHANGE `sys_groupid` `sys_groupid` INT(11) UNSIGNED NOT NULL DEFAULT '1' COMMENT 'Created by groupid'; -ALTER TABLE `web_domain` ADD COLUMN `php_fpm_chroot` enum('n','y') NOT NULL DEFAULT 'n' AFTER `php_fpm_use_socket`; - -CREATE TABLE IF NOT EXISTS `dns_ssl_ca` ( - `id` int(10) unsigned NOT NULL AUTO_INCREMENT, - `sys_userid` int(11) unsigned NOT NULL DEFAULT '0', - `sys_groupid` int(11) unsigned NOT NULL DEFAULT '0', - `sys_perm_user` varchar(5) NOT NULL DEFAULT '', - `sys_perm_group` varchar(5) NOT NULL DEFAULT '', - `sys_perm_other` varchar(5) NOT NULL DEFAULT '', - `active` enum('N','Y') NOT NULL DEFAULT 'N', - `ca_name` varchar(255) NOT NULL DEFAULT '', - `ca_issue` varchar(255) NOT NULL DEFAULT '', - `ca_wildcard` enum('Y','N') NOT NULL DEFAULT 'N', - `ca_iodef` text NOT NULL, - `ca_critical` tinyint(1) NOT NULL DEFAULT '0', - PRIMARY KEY (`id`), - UNIQUE KEY (`ca_issue`) -) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ; - -ALTER TABLE `dns_ssl_ca` ADD UNIQUE(`ca_issue`); - -UPDATE `dns_ssl_ca` SET `ca_issue` = 'comodo.com' WHERE `ca_issue` = 'comodoca.com'; -DELETE FROM `dns_ssl_ca` WHERE `ca_issue` = 'geotrust.com'; -DELETE FROM `dns_ssl_ca` WHERE `ca_issue` = 'thawte.com'; -UPDATE `dns_ssl_ca` SET `ca_name` = 'Symantec / Thawte / GeoTrust' WHERE `ca_issue` = 'symantec.com'; - -ALTER TABLE `dns_rr` CHANGE `type` `type` ENUM('A','AAAA','ALIAS','CAA','CNAME','DS','HINFO','LOC','MX','NAPTR','NS','PTR','RP','SRV','TXT','TLSA','DNSKEY') CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL; -ALTER TABLE `dns_rr` CHANGE `data` `data` TEXT NOT NULL; -INSERT IGNORE INTO `dns_ssl_ca` (`id`, `sys_userid`, `sys_groupid`, `sys_perm_user`, `sys_perm_group`, `sys_perm_other`, `active`, `ca_name`, `ca_issue`, `ca_wildcard`, `ca_iodef`, `ca_critical`) VALUES -(NULL, 1, 1, 'riud', 'riud', '', 'Y', 'AC Camerfirma', 'camerfirma.com', 'Y', '', 0), -(NULL, 1, 1, 'riud', 'riud', '', 'Y', 'ACCV', 'accv.es', 'Y', '', 0), -(NULL, 1, 1, 'riud', 'riud', '', 'Y', 'Actalis', 'actalis.it', 'Y', '', 0), -(NULL, 1, 1, 'riud', 'riud', '', 'Y', 'Amazon', 'amazon.com', 'Y', '', 0), -(NULL, 1, 1, 'riud', 'riud', '', 'Y', 'Asseco', 'certum.pl', 'Y', '', 0), -(NULL, 1, 1, 'riud', 'riud', '', 'Y', 'Buypass', 'buypass.com', 'Y', '', 0), -(NULL, 1, 1, 'riud', 'riud', '', 'Y', 'CA Disig', 'disig.sk', 'Y', '', 0), -(NULL, 1, 1, 'riud', 'riud', '', 'Y', 'CATCert', 'aoc.cat', 'Y', '', 0), -(NULL, 1, 1, 'riud', 'riud', '', 'Y', 'Certinomis', 'www.certinomis.com', 'Y', '', 0), -(NULL, 1, 1, 'riud', 'riud', '', 'Y', 'Certizen', 'hongkongpost.gov.hk', 'Y', '', 0), -(NULL, 1, 1, 'riud', 'riud', '', 'Y', 'certSIGN', 'certsign.ro', 'Y', '', 0), -(NULL, 1, 1, 'riud', 'riud', '', 'Y', 'CFCA', 'cfca.com.cn', 'Y', '', 0), -(NULL, 1, 1, 'riud', 'riud', '', 'Y', 'Chunghwa Telecom', 'cht.com.tw', 'Y', '', 0), -(NULL, 1, 1, 'riud', 'riud', '', 'Y', 'Comodo', 'comodoca.com', 'Y', '', 0), -(NULL, 1, 1, 'riud', 'riud', '', 'Y', 'D-TRUST', 'd-trust.net', 'Y', '', 0), -(NULL, 1, 1, 'riud', 'riud', '', 'Y', 'DigiCert', 'digicert.com', 'Y', '', 0), -(NULL, 1, 1, 'riud', 'riud', '', 'Y', 'DocuSign', 'docusign.fr', 'Y', '', 0), -(NULL, 1, 1, 'riud', 'riud', '', 'Y', 'e-tugra', 'e-tugra.com', 'Y', '', 0), -(NULL, 1, 1, 'riud', 'riud', '', 'Y', 'EDICOM', 'edicomgroup.com', 'Y', '', 0), -(NULL, 1, 1, 'riud', 'riud', '', 'Y', 'Entrust', 'entrust.net', 'Y', '', 0), -(NULL, 1, 1, 'riud', 'riud', '', 'Y', 'Firmaprofesional', 'firmaprofesional.com', 'Y', '', 0), -(NULL, 1, 1, 'riud', 'riud', '', 'Y', 'FNMT', 'fnmt.es', 'Y', '', 0), -(NULL, 1, 1, 'riud', 'riud', '', 'Y', 'GlobalSign', 'globalsign.com', 'Y', '', 0), -(NULL, 1, 1, 'riud', 'riud', '', 'Y', 'GoDaddy', 'godaddy.com', 'Y', '', 0), -(NULL, 1, 1, 'riud', 'riud', '', 'Y', 'Google Trust Services', 'pki.goog', 'Y', '', 0), -(NULL, 1, 1, 'riud', 'riud', '', 'Y', 'GRCA', 'gca.nat.gov.tw', 'Y', '', 0), -(NULL, 1, 1, 'riud', 'riud', '', 'Y', 'HARICA', 'harica.gr', 'Y', '', 0), -(NULL, 1, 1, 'riud', 'riud', '', 'Y', 'IdenTrust', 'identrust.com', 'Y', '', 0), -(NULL, 1, 1, 'riud', 'riud', '', 'Y', 'Izenpe', 'izenpe.com', 'Y', '', 0), -(NULL, 1, 1, 'riud', 'riud', '', 'Y', 'Kamu SM', 'kamusm.gov.tr', 'Y', '', 0), -(NULL, 1, 1, 'riud', 'riud', '', 'Y', 'Let''s Encrypt', 'letsencrypt.org', 'Y', '', 0), -(NULL, 1, 1, 'riud', 'riud', '', 'Y', 'Microsec e-Szigno', 'e-szigno.hu', 'Y', '', 0), -(NULL, 1, 1, 'riud', 'riud', '', 'Y', 'NetLock', 'netlock.hu', 'Y', '', 0), -(NULL, 1, 1, 'riud', 'riud', '', 'Y', 'PKIoverheid', 'www.pkioverheid.nl', 'Y', '', 0), -(NULL, 1, 1, 'riud', 'riud', '', 'Y', 'PROCERT', 'procert.net.ve', 'Y', '', 0), -(NULL, 1, 1, 'riud', 'riud', '', 'Y', 'QuoVadis', 'quovadisglobal.com', 'Y', '', 0), -(NULL, 1, 1, 'riud', 'riud', '', 'Y', 'SECOM', 'secomtrust.net', 'Y', '', 0), -(NULL, 1, 1, 'riud', 'riud', '', 'Y', 'Sertifitseerimiskeskuse', 'sk.ee', 'Y', '', 0), -(NULL, 1, 1, 'riud', 'riud', '', 'Y', 'StartCom', 'startcomca.com', 'Y', '', 0), -(NULL, 1, 1, 'riud', 'riud', '', 'Y', 'SwissSign', 'swisssign.com', 'Y', '', 0), -(NULL, 1, 1, 'riud', 'riud', '', 'Y', 'Symantec / Thawte / GeoTrust', 'symantec.com', 'Y', '', 0), -(NULL, 1, 1, 'riud', 'riud', '', 'Y', 'T-Systems', 'telesec.de', 'Y', '', 0), -(NULL, 1, 1, 'riud', 'riud', '', 'Y', 'Telia', 'telia.com', 'Y', '', 0), -(NULL, 1, 1, 'riud', 'riud', '', 'Y', 'Trustwave', 'trustwave.com', 'Y', '', 0), -(NULL, 1, 1, 'riud', 'riud', '', 'Y', 'Web.com', 'web.com', 'Y', '', 0), -(NULL, 1, 1, 'riud', 'riud', '', 'Y', 'WISeKey', 'wisekey.com', 'Y', '', 0), -(NULL, 1, 1, 'riud', 'riud', '', 'Y', 'WoSign', 'wosign.com', 'Y', '', 0); - -ALTER TABLE `dns_soa` CHANGE `xfer` `xfer` TEXT NULL; -ALTER TABLE `dns_soa` CHANGE `also_notify` `also_notify` TEXT NULL; -ALTER TABLE `dns_slave` CHANGE `xfer` `xfer` TEXT NULL; -ALTER TABLE `firewall` CHANGE `tcp_port` `tcp_port` TEXT CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL; -ALTER TABLE `firewall` CHANGE `udp_port` `udp_port` TEXT CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL; \ No newline at end of file -- GitLab From 7ee3e451be6231c8228a664876ed625a20964e92 Mon Sep 17 00:00:00 2001 From: Till Brehm <tbrehm@ispconfig.org> Date: Mon, 8 Jul 2019 12:47:55 +0200 Subject: [PATCH 089/215] Changed config for Ubuntu unknown from 1604 to 1804 --- install/lib/install.lib.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/install/lib/install.lib.php b/install/lib/install.lib.php index 6b3a7cd623..1e49e025ca 100644 --- a/install/lib/install.lib.php +++ b/install/lib/install.lib.php @@ -186,7 +186,7 @@ function get_distname() { break; default: $relname = "UNKNOWN"; - $distconfid = 'ubuntu1604'; + $distconfid = 'ubuntu1804'; } $distver = $ver.$lts." ".$relname; swriteln("Operating System: ".$distname.' '.$distver."\n"); -- GitLab From c8b6f257f95ee4221a6dff038fb7cb3fde0966ba Mon Sep 17 00:00:00 2001 From: Till Brehm <tbrehm@ispconfig.org> Date: Mon, 8 Jul 2019 13:19:05 +0200 Subject: [PATCH 090/215] Fixed installer warning: postconf: warning: unmatched request: "maildrop.unix" --- install/lib/installer_base.lib.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/install/lib/installer_base.lib.php b/install/lib/installer_base.lib.php index 1c32c64984..8d0456ef5b 100644 --- a/install/lib/installer_base.lib.php +++ b/install/lib/installer_base.lib.php @@ -1050,7 +1050,7 @@ class installer_base { $regex = "/^maildrop unix.*pipe flags=DRhu user=vmail argv=\\/usr\\/bin\\/maildrop -d ".$cf['vmail_username']." \\$\{extension} \\$\{recipient} \\$\{user} \\$\{nexthop} \\$\{sender}/"; $configfile = $config_dir.'/master.cf'; if($this->get_postfix_service('maildrop', 'unix')) { - exec ("postconf -M maildrop.unix &> /dev/null", $out, $ret); + exec ("postconf -M maildrop.unix 2> /dev/null", $out, $ret); $change_maildrop_flags = @(preg_match($regex, $out[0]) && $out[0] !='')?false:true; } else { $change_maildrop_flags = @(preg_match($regex, $configfile))?false:true; -- GitLab From 7b5d94518aa4f0e61876e1ca324e6e7b9339b90d Mon Sep 17 00:00:00 2001 From: Marius Burkard <m.burkard@pixcept.de> Date: Mon, 8 Jul 2019 17:17:44 +0200 Subject: [PATCH 091/215] - added rspamd functionality --- install/dist/conf/centos70.conf.php | 5 + install/dist/conf/centos72.conf.php | 5 + install/dist/conf/debian40.conf.php | 5 + install/dist/conf/debian60.conf.php | 5 + install/dist/conf/debian90.conf.php | 5 + install/dist/conf/debiantesting.conf.php | 5 + install/dist/conf/debiantesting.conf.php.orig | 234 ++ install/dist/conf/fedora9.conf.php | 5 + install/dist/conf/gentoo.conf.php | 5 + install/dist/conf/opensuse112.conf.php | 5 + install/dist/conf/ubuntu1604.conf.php | 5 + install/dist/conf/ubuntu1710.conf.php | 5 + install/dist/conf/ubuntu1804.conf.php | 7 +- install/dist/lib/debian60.lib.php | 1 - install/dist/lib/fedora.lib.php | 1 - install/install.php | 24 +- install/lib/classes/tpl.inc.php | 141 - install/lib/installer_base.lib.php | 166 + install/lib/installer_base.lib.php.orig | 2962 +++++++++++++++++ .../sql/incremental/upd_dev_collection.sql | 32 + .../incremental/upd_dev_collection.sql.orig | 0 .../incremental/upd_dev_collection.sql.rej | 40 + install/sql/ispconfig3.sql | 19 +- install/sql/ispconfig3.sql.orig | 2570 ++++++++++++++ install/sql/ispconfig3.sql.rej | 23 + install/tpl/rspamd_antivirus.conf.master | 30 + .../tpl/rspamd_classifier-bayes.conf.master | 3 + install/tpl/rspamd_dkim_signing.conf.master | 2 + install/tpl/rspamd_greylist.conf.master | 1 + install/tpl/rspamd_groups.conf.master | 4 + install/tpl/rspamd_milter_headers.conf.master | 2 + install/tpl/rspamd_mx_check.conf.master | 9 + install/tpl/rspamd_neural.conf.master | 31 + install/tpl/rspamd_neural_group.conf.master | 18 + install/tpl/rspamd_options.inc.master | 5 + install/tpl/rspamd_override_rbl.conf.master | 53 + install/tpl/rspamd_override_surbl.conf.master | 108 + install/tpl/rspamd_redis.conf.master | 1 + .../tpl/rspamd_symbols_antivirus.conf.master | 15 + install/tpl/rspamd_users.conf.master | 43 + install/tpl/rspamd_users.inc.conf.master | 1 + install/tpl/rspamd_wblist.inc.conf.master | 18 + .../tpl/rspamd_worker-controller.inc.master | 1 + install/tpl/server.ini.master | 2 + install/update.php | 7 + interface/lib/lang/de.lng | 3 +- .../web/admin/form/server_config.tform.php | 31 +- .../admin/form/server_config.tform.php.orig | 1956 +++++++++++ .../web/admin/lib/lang/de_server_config.lng | 5 +- .../admin/lib/lang/de_server_config.lng.orig | 299 ++ .../admin/lib/lang/de_server_config.lng.rej | 11 + .../web/admin/lib/lang/en_server_config.lng | 5 +- .../admin/lib/lang/en_server_config.lng.orig | 300 ++ .../admin/lib/lang/en_server_config.lng.rej | 11 + interface/web/admin/server_config_edit.php | 71 + .../templates/server_config_mail_edit.htm | 34 + .../web/mail/form/spamfilter_policy.tform.php | 36 + .../form/spamfilter_policy.tform.php.orig | 496 +++ .../mail/lib/lang/de_spamfilter_policy.lng | 8 +- interface/web/mail/lib/lang/en.lng | 3 +- .../mail/lib/lang/en_spamfilter_policy.lng | 9 +- interface/web/mail/mail_domain_edit.php | 9 +- interface/web/mail/mail_user_edit.php | 4 +- interface/web/mail/spamfilter_policy_edit.php | 72 +- interface/web/mail/spamfilter_policy_list.php | 29 +- .../mail/templates/spamfilter_policy_edit.htm | 3 +- .../mail/templates/spamfilter_policy_list.htm | 10 +- .../templates/spamfilter_taglevel_edit.htm | 31 +- server/conf/apache_apps.vhost.master | 10 + server/conf/autoresponder.master | 2 +- server/conf/nginx_apps.vhost.master | 25 + server/conf/rspamd_users.inc.conf.master | 41 + .../conf/rspamd_worker-controller.inc.master | 8 + server/conf/sieve_filter.master | 6 +- server/conf/sieve_filter_1.2.master | 6 +- server/mods-available/mail_module.inc.php | 37 +- .../apps_vhost_plugin.inc.php | 22 +- .../mail_plugin_dkim.inc.php | 3 + .../postfix_server_plugin.inc.php | 62 +- .../plugins-available/rspamd_plugin.inc.php | 255 ++ 80 files changed, 10326 insertions(+), 216 deletions(-) create mode 100644 install/dist/conf/debiantesting.conf.php.orig create mode 100644 install/lib/installer_base.lib.php.orig create mode 100644 install/sql/incremental/upd_dev_collection.sql.orig create mode 100644 install/sql/incremental/upd_dev_collection.sql.rej create mode 100644 install/sql/ispconfig3.sql.orig create mode 100644 install/sql/ispconfig3.sql.rej create mode 100644 install/tpl/rspamd_antivirus.conf.master create mode 100644 install/tpl/rspamd_classifier-bayes.conf.master create mode 100644 install/tpl/rspamd_dkim_signing.conf.master create mode 100644 install/tpl/rspamd_greylist.conf.master create mode 100644 install/tpl/rspamd_groups.conf.master create mode 100644 install/tpl/rspamd_milter_headers.conf.master create mode 100644 install/tpl/rspamd_mx_check.conf.master create mode 100644 install/tpl/rspamd_neural.conf.master create mode 100644 install/tpl/rspamd_neural_group.conf.master create mode 100644 install/tpl/rspamd_options.inc.master create mode 100644 install/tpl/rspamd_override_rbl.conf.master create mode 100644 install/tpl/rspamd_override_surbl.conf.master create mode 100644 install/tpl/rspamd_redis.conf.master create mode 100644 install/tpl/rspamd_symbols_antivirus.conf.master create mode 100644 install/tpl/rspamd_users.conf.master create mode 120000 install/tpl/rspamd_users.inc.conf.master create mode 100644 install/tpl/rspamd_wblist.inc.conf.master create mode 120000 install/tpl/rspamd_worker-controller.inc.master create mode 100644 interface/web/admin/form/server_config.tform.php.orig create mode 100644 interface/web/admin/lib/lang/de_server_config.lng.orig create mode 100644 interface/web/admin/lib/lang/de_server_config.lng.rej create mode 100644 interface/web/admin/lib/lang/en_server_config.lng.orig create mode 100644 interface/web/admin/lib/lang/en_server_config.lng.rej create mode 100644 interface/web/mail/form/spamfilter_policy.tform.php.orig create mode 100644 server/conf/rspamd_users.inc.conf.master create mode 100644 server/conf/rspamd_worker-controller.inc.master create mode 100644 server/plugins-available/rspamd_plugin.inc.php diff --git a/install/dist/conf/centos70.conf.php b/install/dist/conf/centos70.conf.php index a40e88ed70..0465e5618a 100644 --- a/install/dist/conf/centos70.conf.php +++ b/install/dist/conf/centos70.conf.php @@ -147,6 +147,11 @@ $conf['amavis']['installed'] = false; // will be detected automatically during i $conf['amavis']['config_dir'] = '/etc/amavisd'; $conf['amavis']['init_script'] = 'amavisd'; +//* Rspamd +$conf['rspamd']['installed'] = false; // will be detected automatically during installation +$conf['rspamd']['config_dir'] = '/etc/rspamd'; +$conf['rspamd']['init_script'] = 'rspamd'; + //* ClamAV $conf['clamav']['installed'] = false; // will be detected automatically during installation $conf['clamav']['init_script'] = 'clamd@amavisd'; diff --git a/install/dist/conf/centos72.conf.php b/install/dist/conf/centos72.conf.php index e7ab6030b7..221cc5d7c4 100644 --- a/install/dist/conf/centos72.conf.php +++ b/install/dist/conf/centos72.conf.php @@ -147,6 +147,11 @@ $conf['amavis']['installed'] = false; // will be detected automatically during i $conf['amavis']['config_dir'] = '/etc/amavisd'; $conf['amavis']['init_script'] = 'amavisd'; +//* Rspamd +$conf['rspamd']['installed'] = false; // will be detected automatically during installation +$conf['rspamd']['config_dir'] = '/etc/rspamd'; +$conf['rspamd']['init_script'] = 'rspamd'; + //* ClamAV $conf['clamav']['installed'] = false; // will be detected automatically during installation $conf['clamav']['init_script'] = 'clamd@amavisd'; diff --git a/install/dist/conf/debian40.conf.php b/install/dist/conf/debian40.conf.php index 613c828d14..c04a54e998 100644 --- a/install/dist/conf/debian40.conf.php +++ b/install/dist/conf/debian40.conf.php @@ -149,6 +149,11 @@ $conf['amavis']['installed'] = false; // will be detected automatically during i $conf['amavis']['config_dir'] = '/etc/amavis'; $conf['amavis']['init_script'] = 'amavis'; +//* Rspamd +$conf['rspamd']['installed'] = false; // will be detected automatically during installation +$conf['rspamd']['config_dir'] = '/etc/rspamd'; +$conf['rspamd']['init_script'] = 'rspamd'; + //* ClamAV $conf['clamav']['installed'] = false; // will be detected automatically during installation $conf['clamav']['init_script'] = 'clamav-daemon'; diff --git a/install/dist/conf/debian60.conf.php b/install/dist/conf/debian60.conf.php index 2c26dcb9cb..e7c8f59845 100644 --- a/install/dist/conf/debian60.conf.php +++ b/install/dist/conf/debian60.conf.php @@ -149,6 +149,11 @@ $conf['amavis']['installed'] = false; // will be detected automatically during i $conf['amavis']['config_dir'] = '/etc/amavis'; $conf['amavis']['init_script'] = 'amavis'; +//* Rspamd +$conf['rspamd']['installed'] = false; // will be detected automatically during installation +$conf['rspamd']['config_dir'] = '/etc/rspamd'; +$conf['rspamd']['init_script'] = 'rspamd'; + //* ClamAV $conf['clamav']['installed'] = false; // will be detected automatically during installation $conf['clamav']['init_script'] = 'clamav-daemon'; diff --git a/install/dist/conf/debian90.conf.php b/install/dist/conf/debian90.conf.php index cdaf7aa9a0..13fd230654 100644 --- a/install/dist/conf/debian90.conf.php +++ b/install/dist/conf/debian90.conf.php @@ -153,6 +153,11 @@ $conf['amavis']['installed'] = false; // will be detected automatically during i $conf['amavis']['config_dir'] = '/etc/amavis'; $conf['amavis']['init_script'] = 'amavis'; +//* Rspamd +$conf['rspamd']['installed'] = false; // will be detected automatically during installation +$conf['rspamd']['config_dir'] = '/etc/rspamd'; +$conf['rspamd']['init_script'] = 'rspamd'; + //* ClamAV $conf['clamav']['installed'] = false; // will be detected automatically during installation $conf['clamav']['init_script'] = 'clamav-daemon'; diff --git a/install/dist/conf/debiantesting.conf.php b/install/dist/conf/debiantesting.conf.php index 5e5e32f474..6ea9112dff 100644 --- a/install/dist/conf/debiantesting.conf.php +++ b/install/dist/conf/debiantesting.conf.php @@ -153,6 +153,11 @@ $conf['amavis']['installed'] = false; // will be detected automatically during i $conf['amavis']['config_dir'] = '/etc/amavis'; $conf['amavis']['init_script'] = 'amavis'; +//* Rspamd +$conf['rspamd']['installed'] = false; // will be detected automatically during installation +$conf['rspamd']['config_dir'] = '/etc/rspamd'; +$conf['rspamd']['init_script'] = 'rspamd'; + //* ClamAV $conf['clamav']['installed'] = false; // will be detected automatically during installation $conf['clamav']['init_script'] = 'clamav-daemon'; diff --git a/install/dist/conf/debiantesting.conf.php.orig b/install/dist/conf/debiantesting.conf.php.orig new file mode 100644 index 0000000000..5e5e32f474 --- /dev/null +++ b/install/dist/conf/debiantesting.conf.php.orig @@ -0,0 +1,234 @@ +<?php + +/* +Copyright (c) 2016, Till Brehm, ISPConfig UG +All rights reserved. + +Redistribution and use in source and binary forms, with or without modification, +are permitted provided that the following conditions are met: + + * Redistributions of source code must retain the above copyright notice, + this list of conditions and the following disclaimer. + * Redistributions in binary form must reproduce the above copyright notice, + this list of conditions and the following disclaimer in the documentation + and/or other materials provided with the distribution. + * Neither the name of ISPConfig nor the names of its contributors + may be used to endorse or promote products derived from this software without + specific prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND +ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED +WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. +IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, +INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, +BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY +OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING +NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, +EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. +*/ + +//*** Debian Testing default settings + +//* Main +$conf['language'] = 'en'; +$conf['distname'] = 'debian100'; +$conf['hostname'] = 'server1.domain.tld'; // Full hostname +$conf['ispconfig_install_dir'] = '/usr/local/ispconfig'; +$conf['ispconfig_config_dir'] = '/usr/local/ispconfig'; +$conf['ispconfig_log_priority'] = 2; // 0 = Debug, 1 = Warning, 2 = Error +$conf['ispconfig_log_dir'] = '/var/log/ispconfig'; +$conf['server_id'] = 1; +$conf['init_scripts'] = '/etc/init.d'; +$conf['runlevel'] = '/etc'; +$conf['shells'] = '/etc/shells'; +$conf['pam'] = '/etc/pam.d'; + +//* Services provided by this server, this selection will be overridden by the expert mode +$conf['services']['mail'] = true; +$conf['services']['web'] = true; +$conf['services']['dns'] = true; +$conf['services']['file'] = true; +$conf['services']['db'] = true; +$conf['services']['vserver'] = true; +$conf['services']['proxy'] = false; +$conf['services']['firewall'] = false; + +//* MySQL +$conf['mysql']['installed'] = false; // will be detected automatically during installation +$conf['mysql']['init_script'] = 'mysql'; +$conf['mysql']['host'] = 'localhost'; +$conf['mysql']['ip'] = '127.0.0.1'; +$conf['mysql']['port'] = '3306'; +$conf['mysql']['database'] = 'dbispconfig'; +$conf['mysql']['admin_user'] = 'root'; +$conf['mysql']['admin_password'] = ''; +$conf['mysql']['charset'] = 'utf8'; +$conf['mysql']['ispconfig_user'] = 'ispconfig'; +$conf['mysql']['ispconfig_password'] = md5(uniqid(rand())); +$conf['mysql']['master_slave_setup'] = 'n'; +$conf['mysql']['master_host'] = ''; +$conf['mysql']['master_database'] = 'dbispconfig'; +$conf['mysql']['master_admin_user'] = 'root'; +$conf['mysql']['master_admin_password'] = ''; +$conf['mysql']['master_ispconfig_user'] = ''; +$conf['mysql']['master_ispconfig_password'] = md5(uniqid(rand())); + +//* Apache +$conf['apache']['installed'] = false; // will be detected automatically during installation +$conf['apache']['user'] = 'www-data'; +$conf['apache']['group'] = 'www-data'; +$conf['apache']['init_script'] = 'apache2'; +$conf['apache']['version'] = '2.4'; +$conf['apache']['vhost_conf_dir'] = '/etc/apache2/sites-available'; +$conf['apache']['vhost_conf_enabled_dir'] = '/etc/apache2/sites-enabled'; +$conf['apache']['vhost_port'] = '8080'; +$conf['apache']['php_ini_path_apache'] = '/etc/php/7.3/apache2/php.ini'; +$conf['apache']['php_ini_path_cgi'] = '/etc/php/7.3/cgi/php.ini'; + +//* Website base settings +$conf['web']['website_basedir'] = '/var/www'; +$conf['web']['website_path'] = '/var/www/clients/client[client_id]/web[website_id]'; +$conf['web']['website_symlinks'] = '/var/www/[website_domain]/:/var/www/clients/client[client_id]/[website_domain]/'; + +//* Apps base settings +$conf['web']['apps_vhost_ip'] = '_default_'; +$conf['web']['apps_vhost_port'] = '8081'; +$conf['web']['apps_vhost_servername'] = ''; +$conf['web']['apps_vhost_user'] = 'ispapps'; +$conf['web']['apps_vhost_group'] = 'ispapps'; + +//* Fastcgi +$conf['fastcgi']['fastcgi_phpini_path'] = '/etc/php/7.3/cgi/'; +$conf['fastcgi']['fastcgi_starter_path'] = '/var/www/php-fcgi-scripts/[system_user]/'; +$conf['fastcgi']['fastcgi_bin'] = '/usr/bin/php-cgi'; + +//* Postfix +$conf['postfix']['installed'] = false; // will be detected automatically during installation +$conf['postfix']['config_dir'] = '/etc/postfix'; +$conf['postfix']['init_script'] = 'postfix'; +$conf['postfix']['user'] = 'postfix'; +$conf['postfix']['group'] = 'postfix'; +$conf['postfix']['vmail_userid'] = '5000'; +$conf['postfix']['vmail_username'] = 'vmail'; +$conf['postfix']['vmail_groupid'] = '5000'; +$conf['postfix']['vmail_groupname'] = 'vmail'; +$conf['postfix']['vmail_mailbox_base'] = '/var/vmail'; + +//* Mailman +$conf['mailman']['installed'] = false; // will be detected automatically during installation +$conf['mailman']['config_dir'] = '/etc/mailman'; +$conf['mailman']['init_script'] = 'mailman'; + +//* mlmmj +$conf['mlmmj']['installed'] = false; // will be detected automatically during installation +$conf['mlmmj']['config_dir'] = '/etc/mlmmj'; + +//* Getmail +$conf['getmail']['installed'] = false; // will be detected automatically during installation +$conf['getmail']['config_dir'] = '/etc/getmail'; +$conf['getmail']['program'] = '/usr/bin/getmail'; + +//* Courier +$conf['courier']['installed'] = false; // will be detected automatically during installation +$conf['courier']['config_dir'] = '/etc/courier'; +$conf['courier']['courier-authdaemon'] = 'courier-authdaemon'; +$conf['courier']['courier-imap'] = 'courier-imap'; +$conf['courier']['courier-imap-ssl'] = 'courier-imap-ssl'; +$conf['courier']['courier-pop'] = 'courier-pop'; +$conf['courier']['courier-pop-ssl'] = 'courier-pop-ssl'; + +//* Dovecot +$conf['dovecot']['installed'] = false; // will be detected automatically during installation +$conf['dovecot']['config_dir'] = '/etc/dovecot'; +$conf['dovecot']['init_script'] = 'dovecot'; + +//* SASL +$conf['saslauthd']['installed'] = false; // will be detected automatically during installation +$conf['saslauthd']['config'] = '/etc/default/saslauthd'; +$conf['saslauthd']['init_script'] = 'saslauthd'; + +//* Amavisd +$conf['amavis']['installed'] = false; // will be detected automatically during installation +$conf['amavis']['config_dir'] = '/etc/amavis'; +$conf['amavis']['init_script'] = 'amavis'; + +//* ClamAV +$conf['clamav']['installed'] = false; // will be detected automatically during installation +$conf['clamav']['init_script'] = 'clamav-daemon'; + +//* Pureftpd +$conf['pureftpd']['installed'] = false; // will be detected automatically during installation +$conf['pureftpd']['config_dir'] = '/etc/pure-ftpd'; +$conf['pureftpd']['init_script'] = 'pure-ftpd-mysql'; + +//* MyDNS +$conf['mydns']['installed'] = false; // will be detected automatically during installation +$conf['mydns']['config_dir'] = '/etc'; +$conf['mydns']['init_script'] = 'mydns'; + +//* PowerDNS +$conf['powerdns']['installed'] = false; // will be detected automatically during installation +$conf['powerdns']['database'] = 'powerdns'; +$conf["powerdns"]["config_dir"] = '/etc/powerdns/pdns.d'; +$conf['powerdns']['init_script'] = 'pdns'; + +//* BIND DNS Server +$conf['bind']['installed'] = false; // will be detected automatically during installation +$conf['bind']['bind_user'] = 'root'; +$conf['bind']['bind_group'] = 'bind'; +$conf['bind']['bind_zonefiles_dir'] = '/etc/bind'; +$conf['bind']['named_conf_path'] = '/etc/bind/named.conf'; +$conf['bind']['named_conf_local_path'] = '/etc/bind/named.conf.local'; +$conf['bind']['init_script'] = 'bind9'; + +//* Jailkit +$conf['jailkit']['installed'] = false; // will be detected automatically during installation +$conf['jailkit']['config_dir'] = '/etc/jailkit'; +$conf['jailkit']['jk_init'] = 'jk_init.ini'; +$conf['jailkit']['jk_chrootsh'] = 'jk_chrootsh.ini'; +$conf['jailkit']['jailkit_chroot_app_programs'] = '/usr/bin/groups /usr/bin/id /usr/bin/dircolors /usr/bin/lesspipe /usr/bin/basename /usr/bin/dirname /usr/bin/nano /usr/bin/pico /usr/bin/mysql /usr/bin/mysqldump /usr/bin/git /usr/bin/git-receive-pack /usr/bin/git-upload-pack /usr/bin/unzip /usr/bin/zip /bin/tar /bin/rm /usr/bin/patch'; +$conf['jailkit']['jailkit_chroot_cron_programs'] = '/usr/bin/php /usr/bin/perl /usr/share/perl /usr/share/php'; + +//* Squid +$conf['squid']['installed'] = false; // will be detected automatically during installation +$conf['squid']['config_dir'] = '/etc/squid'; +$conf['squid']['init_script'] = 'squid'; + +//* Nginx +$conf['nginx']['installed'] = false; // will be detected automatically during installation +$conf['nginx']['user'] = 'www-data'; +$conf['nginx']['group'] = 'www-data'; +$conf['nginx']['config_dir'] = '/etc/nginx'; +$conf['nginx']['vhost_conf_dir'] = '/etc/nginx/sites-available'; +$conf['nginx']['vhost_conf_enabled_dir'] = '/etc/nginx/sites-enabled'; +$conf['nginx']['init_script'] = 'nginx'; +$conf['nginx']['vhost_port'] = '8080'; +$conf['nginx']['cgi_socket'] = '/var/run/fcgiwrap.socket'; +$conf['nginx']['php_fpm_init_script'] = 'php7.3-fpm'; +$conf['nginx']['php_fpm_ini_path'] = '/etc/php/7.3/fpm/php.ini'; +$conf['nginx']['php_fpm_pool_dir'] = '/etc/php/7.3/fpm/pool.d'; +$conf['nginx']['php_fpm_start_port'] = 9010; +$conf['nginx']['php_fpm_socket_dir'] = '/var/lib/php7.3-fpm'; + +//* OpenVZ +$conf['openvz']['installed'] = false; + +//*Bastille-Firwall +$conf['bastille']['installed'] = false; +$conf['bastille']['config_dir'] = '/etc/Bastille'; + +//* vlogger +$conf['vlogger']['config_dir'] = '/etc'; + +//* cron +$conf['cron']['init_script'] = 'cron'; +$conf['cron']['crontab_dir'] = '/etc/cron.d'; +$conf['cron']['wget'] = '/usr/bin/wget'; + +//* Metronome XMPP +$conf['xmpp']['installed'] = false; +$conf['xmpp']['init_script'] = 'metronome'; + + +?> diff --git a/install/dist/conf/fedora9.conf.php b/install/dist/conf/fedora9.conf.php index 80539a7859..19c9a4f625 100644 --- a/install/dist/conf/fedora9.conf.php +++ b/install/dist/conf/fedora9.conf.php @@ -147,6 +147,11 @@ $conf['amavis']['installed'] = false; // will be detected automatically during i $conf['amavis']['config_dir'] = '/etc/amavisd'; $conf['amavis']['init_script'] = 'amavisd'; +//* Rspamd +$conf['rspamd']['installed'] = false; // will be detected automatically during installation +$conf['rspamd']['config_dir'] = '/etc/rspamd'; +$conf['rspamd']['init_script'] = 'rspamd'; + //* ClamAV $conf['clamav']['installed'] = false; // will be detected automatically during installation $conf['clamav']['init_script'] = 'clamd.amavisd'; diff --git a/install/dist/conf/gentoo.conf.php b/install/dist/conf/gentoo.conf.php index 2955cfa71d..24c7d0633e 100644 --- a/install/dist/conf/gentoo.conf.php +++ b/install/dist/conf/gentoo.conf.php @@ -162,6 +162,11 @@ $conf['amavis']['installed'] = false; // will be detected automatically during i $conf['amavis']['config_file'] = '/etc/amavisd.conf'; $conf['amavis']['init_script'] = 'amavisd'; +//* Rspamd +$conf['rspamd']['installed'] = false; // will be detected automatically during installation +$conf['rspamd']['config_dir'] = '/etc/rspamd'; +$conf['rspamd']['init_script'] = 'rspamd'; + //* ClamAV $conf['clamav']['installed'] = false; // will be detected automatically during installation $conf['clamav']['init_script'] = 'clamd'; diff --git a/install/dist/conf/opensuse112.conf.php b/install/dist/conf/opensuse112.conf.php index fa0504652e..378320a144 100644 --- a/install/dist/conf/opensuse112.conf.php +++ b/install/dist/conf/opensuse112.conf.php @@ -147,6 +147,11 @@ $conf['amavis']['installed'] = false; // will be detected automatically during i $conf['amavis']['config_dir'] = '/etc'; $conf['amavis']['init_script'] = 'amavis'; +//* Rspamd +$conf['rspamd']['installed'] = false; // will be detected automatically during installation +$conf['rspamd']['config_dir'] = '/etc/rspamd'; +$conf['rspamd']['init_script'] = 'rspamd'; + //* ClamAV $conf['clamav']['installed'] = false; // will be detected automatically during installation $conf['clamav']['init_script'] = 'clamd'; diff --git a/install/dist/conf/ubuntu1604.conf.php b/install/dist/conf/ubuntu1604.conf.php index 9ac56de3f8..0d3fe23bad 100644 --- a/install/dist/conf/ubuntu1604.conf.php +++ b/install/dist/conf/ubuntu1604.conf.php @@ -149,6 +149,11 @@ $conf['amavis']['installed'] = false; // will be detected automatically during i $conf['amavis']['config_dir'] = '/etc/amavis'; $conf['amavis']['init_script'] = 'amavis'; +//* Rspamd +$conf['rspamd']['installed'] = false; // will be detected automatically during installation +$conf['rspamd']['config_dir'] = '/etc/rspamd'; +$conf['rspamd']['init_script'] = 'rspamd'; + //* ClamAV $conf['clamav']['installed'] = false; // will be detected automatically during installation $conf['clamav']['init_script'] = 'clamav-daemon'; diff --git a/install/dist/conf/ubuntu1710.conf.php b/install/dist/conf/ubuntu1710.conf.php index 0c87005910..0730f8f2d5 100644 --- a/install/dist/conf/ubuntu1710.conf.php +++ b/install/dist/conf/ubuntu1710.conf.php @@ -149,6 +149,11 @@ $conf['amavis']['installed'] = false; // will be detected automatically during i $conf['amavis']['config_dir'] = '/etc/amavis'; $conf['amavis']['init_script'] = 'amavis'; +//* Rspamd +$conf['rspamd']['installed'] = false; // will be detected automatically during installation +$conf['rspamd']['config_dir'] = '/etc/rspamd'; +$conf['rspamd']['init_script'] = 'rspamd'; + //* ClamAV $conf['clamav']['installed'] = false; // will be detected automatically during installation $conf['clamav']['init_script'] = 'clamav-daemon'; diff --git a/install/dist/conf/ubuntu1804.conf.php b/install/dist/conf/ubuntu1804.conf.php index 15cdb1c5eb..2a09f787db 100644 --- a/install/dist/conf/ubuntu1804.conf.php +++ b/install/dist/conf/ubuntu1804.conf.php @@ -149,6 +149,11 @@ $conf['amavis']['installed'] = false; // will be detected automatically during i $conf['amavis']['config_dir'] = '/etc/amavis'; $conf['amavis']['init_script'] = 'amavis'; +//* Rspamd +$conf['rspamd']['installed'] = false; // will be detected automatically during installation +$conf['rspamd']['config_dir'] = '/etc/rspamd'; +$conf['rspamd']['init_script'] = 'rspamd'; + //* ClamAV $conf['clamav']['installed'] = false; // will be detected automatically during installation $conf['clamav']['init_script'] = 'clamav-daemon'; @@ -227,4 +232,4 @@ $conf['xmpp']['installed'] = false; $conf['xmpp']['init_script'] = 'metronome'; -?> \ No newline at end of file +?> diff --git a/install/dist/lib/debian60.lib.php b/install/dist/lib/debian60.lib.php index 0cd7116568..af8899f8cb 100644 --- a/install/dist/lib/debian60.lib.php +++ b/install/dist/lib/debian60.lib.php @@ -68,7 +68,6 @@ class installer extends installer_base { } //* Reconfigure postfix to use dovecot authentication - // Adding the amavisd commands to the postfix configuration $postconf_commands = array ( 'dovecot_destination_recipient_limit = 1', 'virtual_transport = '.$virtual_transport, diff --git a/install/dist/lib/fedora.lib.php b/install/dist/lib/fedora.lib.php index 889bd4288d..5bb8fc0d25 100644 --- a/install/dist/lib/fedora.lib.php +++ b/install/dist/lib/fedora.lib.php @@ -401,7 +401,6 @@ class installer_dist extends installer_base { } //* Reconfigure postfix to use dovecot authentication - // Adding the amavisd commands to the postfix configuration $postconf_commands = array ( 'dovecot_destination_recipient_limit = 1', 'virtual_transport = '.$virtual_transport, diff --git a/install/install.php b/install/install.php index a324669867..9dff3facf2 100644 --- a/install/install.php +++ b/install/install.php @@ -385,7 +385,14 @@ if($install_mode == 'standard' || strtolower($inst->simple_query('Configure Mail $inst->configure_amavis(); } - //* Configure Getmail + //* Configure Rspamd + $force = @($conf['rspamd']['installed']) ? true : $inst->force_configure_app('Rspamd', ($install_mode == 'expert')); + if($force) { + swriteln('Configuring Rspamd'); + $inst->configure_rspamd(); + } + +//* Configure Getmail $force = @($conf['getmail']['installed']) ? true : $inst->force_configure_app('Getmail', ($install_mode == 'expert')); if($force) { swriteln('Configuring Getmail'); @@ -538,20 +545,6 @@ $install_ispconfig_interface_default = ($conf['mysql']['master_slave_setup'] == if($install_mode == 'standard' || strtolower($inst->simple_query('Install ISPConfig Web Interface', array('y', 'n'), $install_ispconfig_interface_default,'install_ispconfig_web_interface')) == 'y') { swriteln('Installing ISPConfig'); - //** We want to check if the server is a module or cgi based php enabled server - //** TODO: Don't always ask for this somehow ? - /* - $fast_cgi = $inst->simple_query('CGI PHP Enabled Server?', array('yes','no'),'no'); - - if($fast_cgi == 'yes') { - $alias = $inst->free_query('Script Alias', '/php/'); - $path = $inst->free_query('Script Alias Path', '/path/to/cgi/bin'); - $conf['apache']['vhost_cgi_alias'] = sprintf('ScriptAlias %s %s', $alias, $path); - } else { - $conf['apache']['vhost_cgi_alias'] = ""; - } - */ - //** Customise the port ISPConfig runs on $ispconfig_vhost_port = $inst->free_query('ISPConfig Port', '8080','ispconfig_port'); $temp_admin_password = str_shuffle(bin2hex(openssl_random_pseudo_bytes(4))); @@ -602,6 +595,7 @@ if($conf['mysql']['installed'] == true && $conf['mysql']['init_script'] != '') s if($conf['postfix']['installed'] == true && $conf['postfix']['init_script'] != '') system($inst->getinitcommand($conf['postfix']['init_script'], 'restart')); if($conf['saslauthd']['installed'] == true && $conf['saslauthd']['init_script'] != '') system($inst->getinitcommand($conf['saslauthd']['init_script'], 'restart')); if($conf['amavis']['installed'] == true && $conf['amavis']['init_script'] != '') system($inst->getinitcommand($conf['amavis']['init_script'], 'restart')); +if($conf['rspamd']['installed'] == true && $conf['rspamd']['init_script'] != '') system($inst->getinitcommand($conf['rspamd']['init_script'], 'restart')); if($conf['clamav']['installed'] == true && $conf['clamav']['init_script'] != '') system($inst->getinitcommand($conf['clamav']['init_script'], 'restart')); if($conf['courier']['installed'] == true){ if($conf['courier']['courier-authdaemon'] != '') system($inst->getinitcommand($conf['courier']['courier-authdaemon'], 'restart')); diff --git a/install/lib/classes/tpl.inc.php b/install/lib/classes/tpl.inc.php index 73ff19230b..5bd8ded1f8 100644 --- a/install/lib/classes/tpl.inc.php +++ b/install/lib/classes/tpl.inc.php @@ -357,147 +357,6 @@ if (!defined('vlibTemplateClassLoaded')) { return true; } - /** - * [** EXPERIMENTAL **] - * Function to create a loop from a Db result resource link. - * @param string $loopname to commit loop. If not set, will use last loopname set using newLoop() - * @param string $result link to a Db result resource - * @param string $db_type, type of db that the result resource belongs to. - * @return boolean true/false - * @access public - */ - public function setDbLoop($loopname, $result, $db_type = 'MYSQL') - { - /* - $db_type = strtoupper($db_type); - if (!in_array($db_type, $this->allowed_loop_dbs)) { - vlibTemplateError::raiseError('VT_WARNING_INVALID_LOOP_DB', WARNING, $db_type); - return false; - } - - $loop_arr = array(); - // TODO: Are all these necessary as were onyl using mysql and possible postgres ? - pedro - switch ($db_type) { - - case 'MYSQL': - if (get_resource_type($result) != 'mysql result') { - vlibTemplateError::raiseError('VT_WARNING_INVALID_RESOURCE', WARNING, $db_type); - return false; - } - while($r = mysql_fetch_assoc($result)) { - $loop_arr[] = $r; - } - break; - - case 'POSTGRESQL': - if (get_resource_type($result) != 'pgsql result') { - vlibTemplateError::raiseError('VT_WARNING_INVALID_RESOURCE', WARNING, $db_type); - return false; - } - - $nr = (function_exists('pg_num_rows')) ? pg_num_rows($result) : pg_numrows($result); - - for ($i=0; $i < $nr; $i++) { - $loop_arr[] = pg_fetch_array($result, $i, PGSQL_ASSOC); - } - break; - - case 'INFORMIX': - if (!$result) { - vlibTemplateError::raiseError('VT_WARNING_INVALID_RESOURCE', WARNING, $db_type); - return false; - } - while($r = ifx_fetch_row($result, 'NEXT')) { - $loop_arr[] = $r; - } - break; - - case 'INTERBASE': - if (get_resource_type($result) != 'interbase result') { - vlibTemplateError::raiseError('VT_WARNING_INVALID_RESOURCE', WARNING, $db_type); - return false; - } - while($r = ibase_fetch_row($result)) { - $loop_arr[] = $r; - } - break; - - case 'INGRES': - if (!$result) { - vlibTemplateError::raiseError('VT_WARNING_INVALID_RESOURCE', WARNING, $db_type); - return false; - } - while($r = ingres_fetch_array(INGRES_ASSOC, $result)) { - $loop_arr[] = $r; - } - break; - - case 'MSSQL': - if (get_resource_type($result) != 'mssql result') { - vlibTemplateError::raiseError('VT_WARNING_INVALID_RESOURCE', WARNING, $db_type); - return false; - } - while($r = mssql_fetch_array($result)) { - $loop_arr[] = $r; - } - break; - - case 'MSQL': - if (get_resource_type($result) != 'msql result') { - vlibTemplateError::raiseError('VT_WARNING_INVALID_RESOURCE', WARNING, $db_type); - return false; - } - while($r = msql_fetch_array($result, MSQL_ASSOC)) { - $loop_arr[] = $r; - } - break; - - case 'OCI8': - if (get_resource_type($result) != 'oci8 statement') { - vlibTemplateError::raiseError('VT_WARNING_INVALID_RESOURCE', WARNING, $db_type); - return false; - } - while(OCIFetchInto($result, &$r, OCI_ASSOC+OCI_RETURN_LOBS)) { - $loop_arr[] = $r; - } - break; - - case 'ORACLE': - if (get_resource_type($result) != 'oracle Cursor') { - vlibTemplateError::raiseError('VT_WARNING_INVALID_RESOURCE', WARNING, $db_type); - return false; - } - while(ora_fetch_into($result, &$r, ORA_FETCHINTO_ASSOC)) { - $loop_arr[] = $r; - } - break; - - case 'OVRIMOS': - if (!$result) { - vlibTemplateError::raiseError('VT_WARNING_INVALID_RESOURCE', WARNING, $db_type); - return false; - } - while(ovrimos_fetch_into($result, &$r, 'NEXT')) { - $loop_arr[] = $r; - } - break; - - case 'SYBASE': - if (get_resource_type($result) != 'sybase-db result') { - vlibTemplateError::raiseError('VT_WARNING_INVALID_RESOURCE', WARNING, $db_type); - return false; - } - - while($r = sybase_fetch_array($result)) { - $loop_arr[] = $r; - } - break; - } - $this->setLoop($loopname, $loop_arr); - return true; - */ - } - /** * Sets the name for the curent loop in the 3 step loop process. * @param string $name string to define loop name diff --git a/install/lib/installer_base.lib.php b/install/lib/installer_base.lib.php index 8d0456ef5b..7221dd7dec 100644 --- a/install/lib/installer_base.lib.php +++ b/install/lib/installer_base.lib.php @@ -163,6 +163,7 @@ class installer_base { if(is_installed('dovecot')) $conf['dovecot']['installed'] = true; if(is_installed('saslauthd')) $conf['saslauthd']['installed'] = true; if(is_installed('amavisd-new') || is_installed('amavisd')) $conf['amavis']['installed'] = true; + if(is_installed('rspamd')) $conf['rspamd']['installed'] = true; if(is_installed('clamdscan')) $conf['clamav']['installed'] = true; if(is_installed('pure-ftpd') || is_installed('pure-ftpd-wrapper')) $conf['pureftpd']['installed'] = true; if(is_installed('mydns') || is_installed('mydns-ng')) $conf['mydns']['installed'] = true; @@ -1426,6 +1427,171 @@ class installer_base { } + public function configure_rspamd() { + global $conf; + + //* These postconf commands will be executed on installation and update + $server_ini_rec = $this->db->queryOneRecord("SELECT config FROM ?? WHERE server_id = ?", $conf["mysql"]["database"] . '.server', $conf['server_id']); + $server_ini_array = ini_to_array(stripslashes($server_ini_rec['config'])); + unset($server_ini_rec); + + $mail_config = $server_ini_array['mail']; + if($mail_config['content_filter'] === 'rspamd') { + exec("postconf -X 'receive_override_options'"); + exec("postconf -X 'content_filter'"); + + exec("postconf -e 'smtpd_milters = inet:localhost:11332'"); + exec("postconf -e 'non_smtpd_milters = inet:localhost:11332'"); + exec("postconf -e 'milter_protocol = 6'"); + exec("postconf -e 'milter_mail_macros = i {mail_addr} {client_addr} {client_name} {auth_authen}'"); + exec("postconf -e 'milter_default_action = accept'"); + + exec("postconf -e 'smtpd_sender_restrictions = check_sender_access mysql:/etc/postfix/mysql-virtual_sender.cf, permit_mynetworks, permit_sasl_authenticated'"); + + $new_options = array(); + $options = preg_split("/,\s*/", exec("postconf -h smtpd_recipient_restrictions")); + foreach ($options as $value) { + if (!preg_match('/check_policy_service\s+inet:127.0.0.1:10023/', $value)) { + $new_options[] = $value; + } + } + exec("postconf -e 'smtpd_recipient_restrictions = ".implode(", ", $new_options)."'"); + } + + if(!is_dir('/etc/rspamd/local.d/')){ + mkdir('/etc/rspamd/local.d/', 0755, true); + } + + if(!is_dir('/etc/rspamd/override.d/')){ + mkdir('/etc/rspamd/override.d/', 0755, true); + } + + $tpl = new tpl(); + $tpl->newTemplate('rspamd_users.conf.master'); + + $whitelist_ips = array(); + $ips = $this->db->queryAllRecords("SELECT * FROM server_ip WHERE server_id = ?", $conf['server_id']); + if(is_array($ips) && !empty($ips)){ + foreach($ips as $ip){ + $whitelist_ips[] = array('ip' => $ip['ip_address']); + } + } + $tpl->setLoop('whitelist_ips', $whitelist_ips); + wf('/etc/rspamd/local.d/users.conf', $tpl->grab()); + + if(file_exists($conf['ispconfig_install_dir'].'/server/conf-custom/install/rspamd_groups.conf.master')) { + exec('cp '.$conf['ispconfig_install_dir'].'/server/conf-custom/install/rspamd_groups.conf.master /etc/rspamd/local.d/groups.conf'); + } else { + exec('cp tpl/rspamd_groups.conf.master /etc/rspamd/local.d/groups.conf'); + } + + if(file_exists($conf['ispconfig_install_dir'].'/server/conf-custom/install/rspamd_antivirus.conf.master')) { + exec('cp '.$conf['ispconfig_install_dir'].'/server/conf-custom/install/rspamd_antivirus.conf.master /etc/rspamd/local.d/antivirus.conf'); + } else { + exec('cp tpl/rspamd_antivirus.conf.master /etc/rspamd/local.d/antivirus.conf'); + } + + if(file_exists($conf['ispconfig_install_dir'].'/server/conf-custom/install/rspamd_classifier-bayes.conf.master')) { + exec('cp '.$conf['ispconfig_install_dir'].'/server/conf-custom/install/rspamd_classifier-bayes.conf.master /etc/rspamd/local.d/classifier-bayes.conf'); + } else { + exec('cp tpl/rspamd_classifier-bayes.conf.master /etc/rspamd/local.d/classifier-bayes.conf'); + } + + if(file_exists($conf['ispconfig_install_dir'].'/server/conf-custom/install/rspamd_greylist.conf.master')) { + exec('cp '.$conf['ispconfig_install_dir'].'/server/conf-custom/install/rspamd_greylist.conf.master /etc/rspamd/local.d/greylist.conf'); + } else { + exec('cp tpl/rspamd_greylist.conf.master /etc/rspamd/local.d/greylist.conf'); + } + + if(file_exists($conf['ispconfig_install_dir'].'/server/conf-custom/install/rspamd_symbols_antivirus.conf.master')) { + exec('cp '.$conf['ispconfig_install_dir'].'/server/conf-custom/install/rspamd_symbols_antivirus.conf.master /etc/rspamd/local.d/antivirus_group.conf'); + } else { + exec('cp tpl/rspamd_symbols_antivirus.conf.master /etc/rspamd/local.d/antivirus_group.conf'); + } + + if(file_exists($conf['ispconfig_install_dir'].'/server/conf-custom/install/rspamd_override_rbl.conf.master')) { + exec('cp '.$conf['ispconfig_install_dir'].'/server/conf-custom/install/rspamd_override_rbl.conf.master /etc/rspamd/override.d/rbl_group.conf'); + } else { + exec('cp tpl/rspamd_override_rbl.conf.master /etc/rspamd/override.d/rbl_group.conf'); + } + + if(file_exists($conf['ispconfig_install_dir'].'/server/conf-custom/install/rspamd_override_surbl.conf.master')) { + exec('cp '.$conf['ispconfig_install_dir'].'/server/conf-custom/install/rspamd_override_surbl.conf.master /etc/rspamd/override.d/surbl_group.conf'); + } else { + exec('cp tpl/rspamd_override_surbl.conf.master /etc/rspamd/override.d/surbl_group.conf'); + } + + if(file_exists($conf['ispconfig_install_dir'].'/server/conf-custom/install/rspamd_mx_check.conf.master')) { + exec('cp '.$conf['ispconfig_install_dir'].'/server/conf-custom/install/rspamd_mx_check.conf.master /etc/rspamd/local.d/mx_check.conf'); + } else { + exec('cp tpl/rspamd_mx_check.conf.master /etc/rspamd/local.d/mx_check.conf'); + } + + if(file_exists($conf['ispconfig_install_dir'].'/server/conf-custom/install/rspamd_redis.conf.master')) { + exec('cp '.$conf['ispconfig_install_dir'].'/server/conf-custom/install/rspamd_redis.conf.master /etc/rspamd/local.d/redis.conf'); + } else { + exec('cp tpl/rspamd_redis.conf.master /etc/rspamd/local.d/redis.conf'); + } + + if(file_exists($conf['ispconfig_install_dir'].'/server/conf-custom/install/rspamd_milter_headers.conf.master')) { + exec('cp '.$conf['ispconfig_install_dir'].'/server/conf-custom/install/rspamd_milter_headers.conf.master /etc/rspamd/local.d/milter_headers.conf'); + } else { + exec('cp tpl/rspamd_milter_headers.conf.master /etc/rspamd/local.d/milter_headers.conf'); + } + + if(file_exists($conf['ispconfig_install_dir'].'/server/conf-custom/install/rspamd_options.inc.master')) { + exec('cp '.$conf['ispconfig_install_dir'].'/server/conf-custom/install/rspamd_options.inc.master /etc/rspamd/local.d/options.inc'); + } else { + exec('cp tpl/rspamd_options.inc.master /etc/rspamd/local.d/options.inc'); + } + + if(file_exists($conf['ispconfig_install_dir'].'/server/conf-custom/install/rspamd_neural.conf.master')) { + exec('cp '.$conf['ispconfig_install_dir'].'/server/conf-custom/install/rspamd_neural.conf.master /etc/rspamd/local.d/neural.conf'); + } else { + exec('cp tpl/rspamd_neural.conf.master /etc/rspamd/local.d/neural.conf'); + } + + if(file_exists($conf['ispconfig_install_dir'].'/server/conf-custom/install/rspamd_neural_group.conf.master')) { + exec('cp '.$conf['ispconfig_install_dir'].'/server/conf-custom/install/rspamd_neural_group.conf.master /etc/rspamd/local.d/neural_group.conf'); + } else { + exec('cp tpl/rspamd_neural_group.conf.master /etc/rspamd/local.d/neural_group.conf'); + } + + exec('chmod a+r /etc/rspamd/local.d/* /etc/rspamd/override.d/*'); + + $tpl = new tpl(); + $tpl->newTemplate('rspamd_dkim_signing.conf.master'); + $tpl->setVar('dkim_path', $mail_config['dkim_path']); + wf('/etc/rspamd/local.d/dkim_signing.conf', $tpl->grab()); + + $command = 'usermod -a -G amavis _rspamd'; + caselog($command.' &> /dev/null', __FILE__, __LINE__, "EXECUTED: $command", "Failed to execute the command $command"); + + if(strpos(rf('/etc/rspamd/rspamd.conf'), '.include "$LOCAL_CONFDIR/local.d/users.conf"') === false){ + af('/etc/rspamd/rspamd.conf', '.include "$LOCAL_CONFDIR/local.d/users.conf"'); + } + + if(!isset($mail_config['rspamd_password']) || !$mail_config['rspamd_password']) { + $mail_config['rspamd_password'] = str_shuffle(bin2hex(openssl_random_pseudo_bytes(12))); + + $server_ini_array['mail']['rspamd_password'] = $mail_config['rspamd_password']; + } + + $server_ini_array['mail']['rspamd_available'] = 'y'; + $server_ini_string = array_to_ini($server_ini_array); + if($this->dbmaster != $this->db) { + $this->dbmaster->query('UPDATE `server` SET `config` = ? WHERE `server_id` = ?', $server_ini_string, $conf['server_id']); + } + $this->db->query('UPDATE `server` SET `config` = ? WHERE `server_id` = ?', $server_ini_string, $conf['server_id']); + unset($server_ini_array); + unset($server_ini_string); + + $tpl = new tpl(); + $tpl->newTemplate('rspamd_worker-controller.inc.master'); + $tpl->setVar('rspamd_password', $mail_config['rspamd_password']); + wf('/etc/rspamd/local.d/worker-controller.inc', $tpl->grab()); + } + public function configure_spamassassin() { global $conf; diff --git a/install/lib/installer_base.lib.php.orig b/install/lib/installer_base.lib.php.orig new file mode 100644 index 0000000000..8d0456ef5b --- /dev/null +++ b/install/lib/installer_base.lib.php.orig @@ -0,0 +1,2962 @@ +<?php + +/* +Copyright (c) 2007-2010, Till Brehm, projektfarm Gmbh +All rights reserved. + +Redistribution and use in source and binary forms, with or without modification, +are permitted provided that the following conditions are met: + + * Redistributions of source code must retain the above copyright notice, + this list of conditions and the following disclaimer. + * Redistributions in binary form must reproduce the above copyright notice, + this list of conditions and the following disclaimer in the documentation + and/or other materials provided with the distribution. + * Neither the name of ISPConfig nor the names of its contributors + may be used to endorse or promote products derived from this software without + specific prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND +ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED +WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. +IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, +INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, +BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY +OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING +NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, +EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. +*/ + +class installer_base { + + var $wb = array(); + var $language = 'en'; + var $db; + public $conf; + public $install_ispconfig_interface = true; + public $is_update = false; // true if it is an update, falsi if it is a new install + public $min_php = '5.3.3'; // minimal php-version for update / install + protected $mailman_group = 'list'; + + + public function __construct() { + global $conf; //TODO: maybe $conf should be passed to constructor + //$this->conf = $conf; + } + + //: TODO Implement the translation function and language files for the installer. + public function lng($text) { + return $text; + } + + public function error($msg) { + die('ERROR: '.$msg."\n"); + } + + public function warning($msg) { + echo 'WARNING: '.$msg."\n"; + } + + public function simple_query($query, $answers, $default, $name = '') { + global $autoinstall, $autoupdate; + $finished = false; + do { + if($name != '' && $autoinstall[$name] != '') { + if($autoinstall[$name] == 'default') { + $input = $default; + } else { + $input = $autoinstall[$name]; + } + } elseif($name != '' && $autoupdate[$name] != '') { + if($autoupdate[$name] == 'default') { + $input = $default; + } else { + $input = $autoupdate[$name]; + } + } else { + $answers_str = implode(',', $answers); + swrite($this->lng($query).' ('.$answers_str.') ['.$default.']: '); + $input = sread(); + } + + //* Stop the installation + if($input == 'quit') { + swriteln($this->lng("Installation terminated by user.\n")); + die(); + } + + //* Select the default + if($input == '') { + $answer = $default; + $finished = true; + } + + //* Set answer id valid + if(in_array($input, $answers)) { + $answer = $input; + $finished = true; + } + + } while ($finished == false); + swriteln(); + return $answer; + } + + public function free_query($query, $default, $name = '') { + global $autoinstall, $autoupdate; + if($name != '' && $autoinstall[$name] != '') { + if($autoinstall[$name] == 'default') { + $input = $default; + } else { + $input = $autoinstall[$name]; + } + } elseif($name != '' && $autoupdate[$name] != '') { + if($autoupdate[$name] == 'default') { + $input = $default; + } else { + $input = $autoupdate[$name]; + } + } else { + swrite($this->lng($query).' ['.$default.']: '); + $input = sread(); + } + + //* Stop the installation + if($input == 'quit') { + swriteln($this->lng("Installation terminated by user.\n")); + die(); + } + + $answer = ($input == '') ? $default : $input; + swriteln(); + return $answer; + } + + /* + // TODO: this function is not used atmo I think - pedro + function request_language(){ + + swriteln(lng('Enter your language')); + swriteln(lng('de, en')); + + } + */ + + //** Detect PHP-Version + public function get_php_version() { + if(version_compare(PHP_VERSION, $this->min_php, '<')) return false; + else return true; + } + + //** Detect installed applications + public function find_installed_apps() { + global $conf; + + if(is_installed('mysql') || is_installed('mysqld')) $conf['mysql']['installed'] = true; + if(is_installed('postfix')) $conf['postfix']['installed'] = true; + if(is_installed('postgrey')) $conf['postgrey']['installed'] = true; + if(is_installed('mailman') || is_installed('mmsitepass')) $conf['mailman']['installed'] = true; + if(is_installed('apache') || is_installed('apache2') || is_installed('httpd') || is_installed('httpd2')) $conf['apache']['installed'] = true; + if(is_installed('getmail')) $conf['getmail']['installed'] = true; + if(is_installed('courierlogger')) $conf['courier']['installed'] = true; + if(is_installed('dovecot')) $conf['dovecot']['installed'] = true; + if(is_installed('saslauthd')) $conf['saslauthd']['installed'] = true; + if(is_installed('amavisd-new') || is_installed('amavisd')) $conf['amavis']['installed'] = true; + if(is_installed('clamdscan')) $conf['clamav']['installed'] = true; + if(is_installed('pure-ftpd') || is_installed('pure-ftpd-wrapper')) $conf['pureftpd']['installed'] = true; + if(is_installed('mydns') || is_installed('mydns-ng')) $conf['mydns']['installed'] = true; + if(is_installed('jk_chrootsh')) $conf['jailkit']['installed'] = true; + if(is_installed('pdns_server') || is_installed('pdns_control')) $conf['powerdns']['installed'] = true; + if(is_installed('named') || is_installed('bind') || is_installed('bind9')) $conf['bind']['installed'] = true; + if(is_installed('squid')) $conf['squid']['installed'] = true; + if(is_installed('nginx')) $conf['nginx']['installed'] = true; + if(is_installed('iptables') && is_installed('ufw')) { + $conf['ufw']['installed'] = true; + } elseif(is_installed('iptables')) { + $conf['firewall']['installed'] = true; + } + if(is_installed('fail2ban-server')) $conf['fail2ban']['installed'] = true; + if(is_installed('vzctl')) $conf['openvz']['installed'] = true; + if(is_installed('metronome') && is_installed('metronomectl')) $conf['xmpp']['installed'] = true; + if(is_installed('spamassassin')) $conf['spamassassin']['installed'] = true; + // if(is_installed('vlogger')) $conf['vlogger']['installed'] = true; + // ISPConfig ships with vlogger, so it is always installed. + $conf['vlogger']['installed'] = true; + if(is_installed('cron') || is_installed('anacron')) $conf['cron']['installed'] = true; + + if (($conf['apache']['installed'] && is_file($conf['apache']["vhost_conf_enabled_dir"]."/000-ispconfig.vhost")) || ($conf['nginx']['installed'] && is_file($conf['nginx']["vhost_conf_enabled_dir"]."/000-ispconfig.vhost"))) $this->ispconfig_interface_installed = true; + } + + public function force_configure_app($service, $enable_force=true) { + $force = false; + if(AUTOINSTALL == true) return false; + if($enable_force == true) { + swriteln("[WARN] autodetect for $service failed"); + } else { + swriteln("[INFO] service $service not detected"); + } + if($enable_force) { + if(strtolower($this->simple_query("Force configure $service", array('y', 'n'), 'n') ) == 'y') { + $force = true; + } else swriteln("Skipping $service\n"); + } + return $force; + } + + public function reconfigure_app($service, $reconfigure_services_answer) { + $reconfigure = false; + if ($reconfigure_services_answer != 'selected') { + $reconfigure = true; + } else { + if(strtolower($this->simple_query("Reconfigure $service", array('y', 'n'), 'y') ) == 'y') { + $reconfigure = true; + } else { + swriteln("Skip reconfigure $service\n"); + } + } + return $reconfigure; + } + + /** Create the database for ISPConfig */ + + + public function configure_database() { + global $conf; + + //* check sql-mode + /*$check_sql_mode = $this->db->queryOneRecord("SELECT @@sql_mode"); + + if ($check_sql_mode['@@sql_mode'] != '' && $check_sql_mode['@@sql_mode'] != 'NO_ENGINE_SUBSTITUTION') { + echo "Wrong SQL-mode. You should use NO_ENGINE_SUBSTITUTION. Add\n\n"; + echo " sql-mode=\"NO_ENGINE_SUBSTITUTION\"\n\n"; + echo"to the mysqld-section in your mysql-config on this server and restart mysqld afterwards\n"; + die(); + }*/ + + $unwanted_sql_plugins = array('validate_password'); + $sql_plugins = $this->db->queryAllRecords("SELECT plugin_name FROM information_schema.plugins WHERE plugin_status='ACTIVE' AND plugin_name IN ?", $unwanted_sql_plugins); + if(is_array($sql_plugins) && !empty($sql_plugins)) { + foreach ($sql_plugins as $plugin) echo "Login in to MySQL and disable $plugin[plugin_name] with:\n\n UNINSTALL PLUGIN $plugin[plugin_name];"; + die(); + } + + //** Create the database + if(!$this->db->query('CREATE DATABASE IF NOT EXISTS ?? DEFAULT CHARACTER SET ?', $conf['mysql']['database'], $conf['mysql']['charset'])) { + $this->error('Unable to create MySQL database: '.$conf['mysql']['database'].'.'); + } + + //* Set the database name in the DB library + $this->db->setDBName($conf['mysql']['database']); + + //* Load the database dump into the database, if database contains no tables + $db_tables = $this->db->getTables(); + if(count($db_tables) > 0) { + $this->error('Stopped: Database already contains some tables.'); + } else { + if($conf['mysql']['admin_password'] == '') { + caselog("mysql --default-character-set=".escapeshellarg($conf['mysql']['charset'])." -h ".escapeshellarg($conf['mysql']['host'])." -u ".escapeshellarg($conf['mysql']['admin_user'])." -P ".escapeshellarg($conf['mysql']['port'])." ".escapeshellarg($conf['mysql']['database'])." < '".ISPC_INSTALL_ROOT."/install/sql/ispconfig3.sql' &> /dev/null", + __FILE__, __LINE__, 'read in ispconfig3.sql', 'could not read in ispconfig3.sql'); + } else { + caselog("mysql --default-character-set=".escapeshellarg($conf['mysql']['charset'])." -h ".escapeshellarg($conf['mysql']['host'])." -u ".escapeshellarg($conf['mysql']['admin_user'])." -p".escapeshellarg($conf['mysql']['admin_password'])." -P ".escapeshellarg($conf['mysql']['port'])." ".escapeshellarg($conf['mysql']['database'])." < '".ISPC_INSTALL_ROOT."/install/sql/ispconfig3.sql' &> /dev/null", + __FILE__, __LINE__, 'read in ispconfig3.sql', 'could not read in ispconfig3.sql'); + } + $db_tables = $this->db->getTables(); + if(count($db_tables) == 0) { + $this->error('Unable to load SQL-Dump into database table.'); + } + + //* Load system.ini into the sys_ini table + $system_ini = rf('tpl/system.ini.master'); + $this->db->query("UPDATE sys_ini SET config = ? WHERE sysini_id = 1", $system_ini); + + } + } + + //** Create the server record in the database + public function add_database_server_record() { + + global $conf; + + if($conf['mysql']['host'] == 'localhost') { + $from_host = 'localhost'; + } else { + $from_host = $conf['hostname']; + } + + // Delete ISPConfig user in the local database, in case that it exists + $this->db->query("DROP USER ?@?", $conf['mysql']['ispconfig_user'], $from_host); + $this->db->query("DROP DATABASE IF EXISTS ?", $conf['mysql']['database']); + + //* Create the ISPConfig database user and grant permissions in the local database + $query = 'CREATE USER ?@? IDENTIFIED BY ?'; + if(!$this->db->query($query, $conf['mysql']['ispconfig_user'], $from_host, $conf['mysql']['ispconfig_password'])) { + $this->error('Unable to create database user: '.$conf['mysql']['ispconfig_user'].' Error: '.$this->db->errorMessage); + } + $query = 'GRANT SELECT, INSERT, UPDATE, DELETE ON ?? TO ?@?'; + if(!$this->db->query($query, $conf['mysql']['database'] . ".*", $conf['mysql']['ispconfig_user'], $from_host)) { + $this->error('Unable to grant databse permissions to user: '.$conf['mysql']['ispconfig_user'].' Error: '.$this->db->errorMessage); + } + + //* Set the database name in the DB library + $this->db->setDBName($conf['mysql']['database']); + + $tpl_ini_array = ini_to_array(rf('tpl/server.ini.master')); + + //* Update further distribution specific parameters for server config here + //* HINT: Every line added here has to be added in update.lib.php too!! + $tpl_ini_array['web']['vhost_conf_dir'] = $conf['apache']['vhost_conf_dir']; + $tpl_ini_array['web']['vhost_conf_enabled_dir'] = $conf['apache']['vhost_conf_enabled_dir']; + $tpl_ini_array['jailkit']['jailkit_chroot_app_programs'] = $conf['jailkit']['jailkit_chroot_app_programs']; + $tpl_ini_array['fastcgi']['fastcgi_phpini_path'] = $conf['fastcgi']['fastcgi_phpini_path']; + $tpl_ini_array['fastcgi']['fastcgi_starter_path'] = $conf['fastcgi']['fastcgi_starter_path']; + $tpl_ini_array['fastcgi']['fastcgi_bin'] = $conf['fastcgi']['fastcgi_bin']; + $tpl_ini_array['server']['hostname'] = $conf['hostname']; + $tpl_ini_array['server']['ip_address'] = @gethostbyname($conf['hostname']); + $tpl_ini_array['server']['firewall'] = ($conf['ufw']['installed'] == true)?'ufw':'bastille'; + $tpl_ini_array['web']['website_basedir'] = $conf['web']['website_basedir']; + $tpl_ini_array['web']['website_path'] = $conf['web']['website_path']; + $tpl_ini_array['web']['website_symlinks'] = $conf['web']['website_symlinks']; + $tpl_ini_array['cron']['crontab_dir'] = $conf['cron']['crontab_dir']; + $tpl_ini_array['web']['security_level'] = 20; + $tpl_ini_array['web']['user'] = $conf['apache']['user']; + $tpl_ini_array['web']['group'] = $conf['apache']['group']; + $tpl_ini_array['web']['php_ini_path_apache'] = $conf['apache']['php_ini_path_apache']; + $tpl_ini_array['web']['php_ini_path_cgi'] = $conf['apache']['php_ini_path_cgi']; + $tpl_ini_array['mail']['pop3_imap_daemon'] = ($conf['dovecot']['installed'] == true)?'dovecot':'courier'; + $tpl_ini_array['mail']['mail_filter_syntax'] = ($conf['dovecot']['installed'] == true)?'sieve':'maildrop'; + $tpl_ini_array['dns']['bind_user'] = $conf['bind']['bind_user']; + $tpl_ini_array['dns']['bind_group'] = $conf['bind']['bind_group']; + $tpl_ini_array['dns']['bind_zonefiles_dir'] = $conf['bind']['bind_zonefiles_dir']; + $tpl_ini_array['dns']['named_conf_path'] = $conf['bind']['named_conf_path']; + $tpl_ini_array['dns']['named_conf_local_path'] = $conf['bind']['named_conf_local_path']; + + $tpl_ini_array['web']['nginx_vhost_conf_dir'] = $conf['nginx']['vhost_conf_dir']; + $tpl_ini_array['web']['nginx_vhost_conf_enabled_dir'] = $conf['nginx']['vhost_conf_enabled_dir']; + $tpl_ini_array['web']['nginx_user'] = $conf['nginx']['user']; + $tpl_ini_array['web']['nginx_group'] = $conf['nginx']['group']; + $tpl_ini_array['web']['nginx_cgi_socket'] = $conf['nginx']['cgi_socket']; + $tpl_ini_array['web']['php_fpm_init_script'] = $conf['nginx']['php_fpm_init_script']; + $tpl_ini_array['web']['php_fpm_ini_path'] = $conf['nginx']['php_fpm_ini_path']; + $tpl_ini_array['web']['php_fpm_pool_dir'] = $conf['nginx']['php_fpm_pool_dir']; + $tpl_ini_array['web']['php_fpm_start_port'] = $conf['nginx']['php_fpm_start_port']; + $tpl_ini_array['web']['php_fpm_socket_dir'] = $conf['nginx']['php_fpm_socket_dir']; + + if ($conf['nginx']['installed'] == true) { + $tpl_ini_array['web']['server_type'] = 'nginx'; + $tpl_ini_array['global']['webserver'] = 'nginx'; + } + + if (array_key_exists('awstats', $conf)) { + foreach ($conf['awstats'] as $aw_sett => $aw_value) { + $tpl_ini_array['web']['awstats_'.$aw_sett] = $aw_value; + } + } + + $server_ini_content = array_to_ini($tpl_ini_array); + + $mail_server_enabled = ($conf['services']['mail'])?1:0; + $web_server_enabled = ($conf['services']['web'])?1:0; + $dns_server_enabled = ($conf['services']['dns'])?1:0; + $file_server_enabled = ($conf['services']['file'])?1:0; + $db_server_enabled = ($conf['services']['db'])?1:0; + $vserver_server_enabled = ($conf['openvz']['installed'])?1:0; + $proxy_server_enabled = (isset($conf['services']['proxy']) && $conf['services']['proxy'])?1:0; + $firewall_server_enabled = (isset($conf['services']['firewall']) && $conf['services']['firewall'])?1:0; + + //** Get the database version number based on the patchfiles + $found = true; + $current_db_version = 1; + while($found == true) { + $next_db_version = intval($current_db_version + 1); + $patch_filename = realpath(dirname(__FILE__).'/../').'/sql/incremental/upd_'.str_pad($next_db_version, 4, '0', STR_PAD_LEFT).'.sql'; + if(is_file($patch_filename)) { + $current_db_version = $next_db_version; + } else { + $found = false; + } + } + $current_db_version = intval($current_db_version); + + + if($conf['mysql']['master_slave_setup'] == 'y') { + + //* Insert the server record in master DB + $sql = "INSERT INTO `server` (`sys_userid`, `sys_groupid`, `sys_perm_user`, `sys_perm_group`, `sys_perm_other`, `server_name`, `mail_server`, `web_server`, `dns_server`, `file_server`, `db_server`, `vserver_server`, `config`, `updated`, `active`, `dbversion`,`firewall_server`,`proxy_server`) VALUES (1, 1, 'riud', 'riud', 'r', ?, ?, ?, ?, ?, ?, ?, ?, 0, 1, ?, ?, ?);"; + $this->dbmaster->query($sql, $conf['hostname'], $mail_server_enabled, $web_server_enabled, $dns_server_enabled, $file_server_enabled, $db_server_enabled, $vserver_server_enabled, $server_ini_content, $current_db_version, $proxy_server_enabled, $firewall_server_enabled); + $conf['server_id'] = $this->dbmaster->insertID(); + $conf['server_id'] = $conf['server_id']; + + //* Insert the same record in the local DB + $sql = "INSERT INTO `server` (`server_id`, `sys_userid`, `sys_groupid`, `sys_perm_user`, `sys_perm_group`, `sys_perm_other`, `server_name`, `mail_server`, `web_server`, `dns_server`, `file_server`, `db_server`, `vserver_server`, `config`, `updated`, `active`, `dbversion`,`firewall_server`,`proxy_server`) VALUES (?,1, 1, 'riud', 'riud', 'r', ?, ?, ?, ?, ?, ?, ?, ?, 0, 1, ?, ?, ?);"; + $this->db->query($sql, $conf['server_id'], $conf['hostname'], $mail_server_enabled, $web_server_enabled, $dns_server_enabled, $file_server_enabled, $db_server_enabled, $vserver_server_enabled, $server_ini_content, $current_db_version, $proxy_server_enabled, $firewall_server_enabled); + + //* username for the ispconfig user + $conf['mysql']['master_ispconfig_user'] = 'ispcsrv'.$conf['server_id']; + + $this->grant_master_database_rights(); + + } else { + //* Insert the server, if its not a mster / slave setup + $sql = "INSERT INTO `server` (`sys_userid`, `sys_groupid`, `sys_perm_user`, `sys_perm_group`, `sys_perm_other`, `server_name`, `mail_server`, `web_server`, `dns_server`, `file_server`, `db_server`, `vserver_server`, `config`, `updated`, `active`, `dbversion`,`firewall_server`,`proxy_server`) VALUES (1, 1, 'riud', 'riud', 'r', ?, ?, ?, ?, ?, ?, ?, ?, 0, 1, ?, ?, ?);"; + $this->db->query($sql, $conf['hostname'], $mail_server_enabled, $web_server_enabled, $dns_server_enabled, $file_server_enabled, $db_server_enabled, $vserver_server_enabled, $server_ini_content, $current_db_version, $proxy_server_enabled, $firewall_server_enabled); + $conf['server_id'] = $this->db->insertID(); + $conf['server_id'] = $conf['server_id']; + } + + + } + + public function detect_ips(){ + global $conf; + + exec("ip addr show | awk '/global/ { print $2 }' | cut -d '/' -f 1", $output, $retval); + + if($retval == 0){ + if(is_array($output) && !empty($output)){ + foreach($output as $line){ + $line = trim($line); + $ip_type = ''; + if (filter_var($line, FILTER_VALIDATE_IP, FILTER_FLAG_IPV4)) { + $ip_type = 'IPv4'; + } + if (filter_var($line, FILTER_VALIDATE_IP, FILTER_FLAG_IPV6)) { + $ip_type = 'IPv6'; + } + if($ip_type == '') continue; + if($this->db->dbHost != $this->dbmaster->dbHost){ + $this->dbmaster->query('INSERT INTO server_ip ( + sys_userid, sys_groupid, sys_perm_user, sys_perm_group, + sys_perm_other, server_id, client_id, ip_type, ip_address, + virtualhost, virtualhost_port + ) VALUES ( + 1, + 1, + "riud", + "riud", + "", + ?, + 0, + ?, + ?, + "y", + "80,443" + )', $conf['server_id'], $ip_type, $line); + $server_ip_id = $this->dbmaster->insertID(); + $this->db->query('INSERT INTO server_ip ( + server_php_id, sys_userid, sys_groupid, sys_perm_user, sys_perm_group, + sys_perm_other, server_id, client_id, ip_type, ip_address, + virtualhost, virtualhost_port + ) VALUES ( + ?, + 1, + 1, + "riud", + "riud", + "", + ?, + 0, + ?, + ?, + "y", + "80,443" + )', $server_ip_id, $conf['server_id'], $ip_type, $line); + } else { + $this->db->query('INSERT INTO server_ip ( + sys_userid, sys_groupid, sys_perm_user, sys_perm_group, + sys_perm_other, server_id, client_id, ip_type, ip_address, + virtualhost, virtualhost_port + ) VALUES ( + 1, + 1, + "riud", + "riud", + "", + ?, + 0, + ?, + ?, + "y", + "80,443" + )', $conf['server_id'], $ip_type, $line); + } + } + } + } + } + + public function grant_master_database_rights($verbose = false) { + global $conf; + + /* + * The following code is a little bit tricky: + * * If we HAVE a master-slave - Setup then the client has to grant the rights for himself + * at the master. + * * If we DO NOT have a master-slave - Setup then we have two possibilities + * 1) it is a single server + * 2) it is the MASTER of n clients + */ + $hosts = array(); + + if($conf['mysql']['master_slave_setup'] == 'y') { + /* + * it is a master-slave - Setup so the slave has to grant its rights in the master + * database + */ + + //* insert the ispconfig user in the remote server + $from_host = $conf['hostname']; + $from_ip = gethostbyname($conf['hostname']); + + $hosts[$from_host]['user'] = $conf['mysql']['master_ispconfig_user']; + $hosts[$from_host]['db'] = $conf['mysql']['master_database']; + $hosts[$from_host]['pwd'] = $conf['mysql']['master_ispconfig_password']; + + $hosts[$from_ip]['user'] = $conf['mysql']['master_ispconfig_user']; + $hosts[$from_ip]['db'] = $conf['mysql']['master_database']; + $hosts[$from_ip]['pwd'] = $conf['mysql']['master_ispconfig_password']; + } else{ + /* + * it is NOT a master-slave - Setup so we have to find out all clients and their + * host + */ + $query = "SELECT Host, User FROM mysql.user WHERE User like 'ispcsrv%' ORDER BY User, Host"; + $data = $this->dbmaster->queryAllRecords($query); + if($data === false) { + $this->error('Unable to get the user rights: '.$value['db'].' Error: '.$this->dbmaster->errorMessage); + } + foreach ($data as $item){ + $hosts[$item['Host']]['user'] = $item['User']; + $hosts[$item['Host']]['db'] = $conf['mysql']['master_database']; + $hosts[$item['Host']]['pwd'] = ''; // the user already exists, so we need no pwd! + } + } + + if(count($hosts) > 0) { + foreach($hosts as $host => $value) { + /* + * If a pwd exists, this means, we have to add the new user (and his pwd). + * if not, the user already exists and we do not need the pwd + */ + if ($value['pwd'] != ''){ + $query = "CREATE USER ?@? IDENTIFIED BY ?"; + if ($verbose){ + echo "\n\n" . $query ."\n"; + } + $this->dbmaster->query($query, $value['user'], $host, $value['pwd']); // ignore the error + } + + /* + * Try to delete all rights of the user in case that it exists. + * In Case that it will not exist, do nothing (ignore the error!) + */ + $query = "REVOKE ALL PRIVILEGES, GRANT OPTION FROM ?@?"; + if ($verbose){ + echo "\n\n" . $query ."\n"; + } + $this->dbmaster->query($query, $value['user'], $host); // ignore the error + + //* Create the ISPConfig database user in the remote database + $query = "GRANT SELECT ON ?? TO ?@?"; + if ($verbose){ + echo $query ."\n"; + } + if(!$this->dbmaster->query($query, $value['db'] . '.server', $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, INSERT ON ?? TO ?@?"; + if ($verbose){ + echo $query ."\n"; + } + if(!$this->dbmaster->query($query, $value['db'] . '.sys_log', $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(`status`, `error`) ON ?? TO ?@?"; + if ($verbose){ + echo $query ."\n"; + } + if(!$this->dbmaster->query($query, $value['db'] . '.sys_datalog', $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(`status`) ON ?? TO ?@?"; + if ($verbose){ + echo $query ."\n"; + } + if(!$this->dbmaster->query($query, $value['db'] . '.software_update_inst', $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(`updated`) ON ?? TO ?@?"; + if ($verbose){ + echo $query ."\n"; + } + if(!$this->dbmaster->query($query, $value['db'] . '.server', $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 (`ssl`, `ssl_letsencrypt`, `ssl_request`, `ssl_cert`, `ssl_action`, `ssl_key`) ON ?? TO ?@?"; + if ($verbose){ + echo $query ."\n"; + } + if(!$this->dbmaster->query($query, $value['db'] . '.web_domain', $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 ON ?? TO ?@?"; + if ($verbose){ + echo $query ."\n"; + } + if(!$this->dbmaster->query($query, $value['db'] . '.sys_group', $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 (`action_state`, `response`) ON ?? TO ?@?"; + if ($verbose){ + echo $query ."\n"; + } + if(!$this->dbmaster->query($query, $value['db'] . '.sys_remoteaction', $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, INSERT , DELETE ON ?? TO ?@?"; + if ($verbose){ + echo $query ."\n"; + } + if(!$this->dbmaster->query($query, $value['db'] . '.monitor_data', $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, INSERT, UPDATE ON ?? TO ?@?"; + if ($verbose){ + echo $query ."\n"; + } + if(!$this->dbmaster->query($query, $value['db'] . '.mail_traffic', $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, INSERT, UPDATE ON ?? TO ?@?"; + if ($verbose){ + echo $query ."\n"; + } + if(!$this->dbmaster->query($query, $value['db'] . '.web_traffic', $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, DELETE ON ?? TO ?@?"; + if ($verbose){ + echo $query ."\n"; + } + if(!$this->dbmaster->query($query, $value['db'] . '.aps_instances', $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, DELETE ON ?? TO ?@?"; + if ($verbose){ + echo $query ."\n"; + } + if(!$this->dbmaster->query($query, $value['db'] . '.aps_instances_settings', $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, INSERT, DELETE ON ?? TO ?@?"; + if ($verbose){ + echo $query ."\n"; + } + if(!$this->dbmaster->query($query, $value['db'] . '.web_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, INSERT, DELETE ON ?? TO ?@?"; + if ($verbose){ + echo $query ."\n"; + } + 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); + } + + $query = "GRANT SELECT, INSERT, UPDATE ON ?? TO ?@?"; + if ($verbose){ + echo $query ."\n"; + } + if(!$this->dbmaster->query($query, $value['db'] . '.ftp_traffic', $value['user'], $host)) { + $this->warning('Unable to set rights of user in master database: '.$value['db']."\n Query: ".$query."\n Error: ".$this->dbmaster->errorMessage); + } + + } + + } + + } + + //** writes postfix configuration files + public function process_postfix_config($configfile) { + global $conf; + + $config_dir = $conf['postfix']['config_dir'].'/'; + $full_file_name = $config_dir.$configfile; + //* Backup exiting file + if(is_file($full_file_name)) { + copy($full_file_name, $config_dir.$configfile.'~'); + } + $content = rfsel($conf['ispconfig_install_dir'].'/server/conf-custom/install/'.$configfile.'.master', 'tpl/'.$configfile.'.master'); + $content = str_replace('{mysql_server_ispconfig_user}', $conf['mysql']['ispconfig_user'], $content); + $content = str_replace('{mysql_server_ispconfig_password}', $conf['mysql']['ispconfig_password'], $content); + $content = str_replace('{mysql_server_database}', $conf['mysql']['database'], $content); + $content = str_replace('{mysql_server_ip}', $conf['mysql']['ip'], $content); + $content = str_replace('{server_id}', $conf['server_id'], $content); + wf($full_file_name, $content); + } + + public function configure_jailkit() { + global $conf; + + $cf = $conf['jailkit']; + $config_dir = $cf['config_dir']; + $jk_init = $cf['jk_init']; + $jk_chrootsh = $cf['jk_chrootsh']; + + if (is_dir($config_dir)) { + if(is_file($config_dir.'/'.$jk_init)) copy($config_dir.'/'.$jk_init, $config_dir.'/'.$jk_init.'~'); + if(is_file($config_dir.'/'.$jk_chrootsh.'.master')) copy($config_dir.'/'.$jk_chrootsh.'.master', $config_dir.'/'.$jk_chrootsh.'~'); + + if(is_file($conf['ispconfig_install_dir'].'/server/conf-custom/install/'.$jk_init.'.master')) { + copy($conf['ispconfig_install_dir'].'/server/conf-custom/install/'.$jk_init.'.master', $config_dir.'/'.$jk_init); + } else { + copy('tpl/'.$jk_init.'.master', $config_dir.'/'.$jk_init); + } + if(is_file($conf['ispconfig_install_dir'].'/server/conf-custom/install/'.$jk_chrootsh.'.master')) { + copy($conf['ispconfig_install_dir'].'/server/conf-custom/install/'.$jk_chrootsh.'.master', $config_dir.'/'.$jk_chrootsh); + } else { + copy('tpl/'.$jk_chrootsh.'.master', $config_dir.'/'.$jk_chrootsh); + } + } + + //* help jailkit fo find its ini files + if(!is_link('/usr/jk_socketd.ini')) exec('ln -s /etc/jailkit/jk_socketd.ini /usr/jk_socketd.ini'); + if(!is_link('/usr/jk_init.ini')) exec('ln -s /etc/jailkit/jk_init.ini /usr/jk_init.ini'); + + } + + public function configure_mailman($status = 'insert') { + global $conf; + + $config_dir = $conf['mailman']['config_dir'].'/'; + $full_file_name = $config_dir.'mm_cfg.py'; + //* Backup exiting file + if(is_file($full_file_name)) { + copy($full_file_name, $config_dir.'mm_cfg.py~'); + } + + // load files + $content = rfsel($conf['ispconfig_install_dir'].'/server/conf-custom/install/mm_cfg.py.master', 'tpl/mm_cfg.py.master'); + $old_file = rf($full_file_name); + + $old_options = array(); + $lines = explode("\n", $old_file); + foreach ($lines as $line) + { + if (trim($line) != '' && substr($line, 0, 1) != '#') + { + @list($key, $value) = @explode("=", $line); + if (isset($value) && $value !== '') + { + $key = rtrim($key); + $old_options[$key] = trim($value); + } + } + } + + $virtual_domains = ''; + if($status == 'update') + { + // create virtual_domains list + $domainAll = $this->db->queryAllRecords("SELECT domain FROM mail_mailinglist GROUP BY domain"); + + if(is_array($domainAll)) { + foreach($domainAll as $domain) + { + if ($domainAll[0]['domain'] == $domain['domain']) + $virtual_domains .= "'".$domain['domain']."'"; + else + $virtual_domains .= ", '".$domain['domain']."'"; + } + } + } + else + $virtual_domains = "' '"; + + $content = str_replace('{hostname}', $conf['hostname'], $content); + if(!isset($old_options['DEFAULT_SERVER_LANGUAGE']) || $old_options['DEFAULT_SERVER_LANGUAGE'] == '') $old_options['DEFAULT_SERVER_LANGUAGE'] = "'en'"; + $content = str_replace('{default_language}', $old_options['DEFAULT_SERVER_LANGUAGE'], $content); + $content = str_replace('{virtual_domains}', $virtual_domains, $content); + + wf($full_file_name, $content); + + //* Write virtual_to_transport.sh script + $config_dir = $conf['mailman']['config_dir'].'/'; + $full_file_name = $config_dir.'virtual_to_transport.sh'; + + //* Backup exiting virtual_to_transport.sh script + if(is_file($full_file_name)) { + copy($full_file_name, $config_dir.'virtual_to_transport.sh~'); + } + + if(is_dir('/etc/mailman')) { + if(is_file($conf['ispconfig_install_dir'].'/server/conf-custom/install/mailman-virtual_to_transport.sh')) { + copy($conf['ispconfig_install_dir'].'/server/conf-custom/install/mailman-virtual_to_transport.sh', $full_file_name); + } else { + copy('tpl/mailman-virtual_to_transport.sh', $full_file_name); + } + chgrp($full_file_name, $this->mailman_group); + chmod($full_file_name, 0755); + } + + //* Create aliasaes + if($status == 'install') exec('/usr/lib/mailman/bin/genaliases 2>/dev/null'); + + if(!is_file('/var/lib/mailman/data/transport-mailman')) touch('/var/lib/mailman/data/transport-mailman'); + exec('/usr/sbin/postmap /var/lib/mailman/data/transport-mailman'); + } + + public function get_postfix_service($service, $type) { + global $conf; + + exec("postconf -M 2> /dev/null", $out, $ret); + + if ($ret === 0) { //* with postfix >= 2.9 we can detect configured services with postconf + unset($out); + exec ("postconf -M $service/$type 2> /dev/null", $out, $ret); //* Postfix >= 2.11 + if (!isset($out[0])) { //* try Postfix 2.9 + exec ("postconf -M $service.$type 2> /dev/null", $out, $ret); + } + $postfix_service = @($out[0]=='')?false:true; + } else { //* fallback - Postfix < 2.9 + $content = rf($conf['postfix']['config_dir'].'/master.cf'); + $regex = "/^((?!#)".$service.".*".$type.".*)$/m"; + $postfix_service = @(preg_match($regex, $content))?true:false; + } + + return $postfix_service; + } + + public function configure_postfix($options = '') { + global $conf,$autoinstall; + $cf = $conf['postfix']; + $config_dir = $cf['config_dir']; + + if(!is_dir($config_dir)) { + $this->error("The postfix configuration directory '$config_dir' does not exist."); + } + + //* mysql-virtual_domains.cf + $this->process_postfix_config('mysql-virtual_domains.cf'); + + //* mysql-virtual_forwardings.cf + $this->process_postfix_config('mysql-virtual_forwardings.cf'); + + //* mysql-virtual_mailboxes.cf + $this->process_postfix_config('mysql-virtual_mailboxes.cf'); + + //* mysql-virtual_email2email.cf + $this->process_postfix_config('mysql-virtual_email2email.cf'); + + //* mysql-virtual_transports.cf + $this->process_postfix_config('mysql-virtual_transports.cf'); + + //* mysql-virtual_recipient.cf + $this->process_postfix_config('mysql-virtual_recipient.cf'); + + //* mysql-virtual_sender.cf + $this->process_postfix_config('mysql-virtual_sender.cf'); + + //* mysql-virtual_sender_login_maps.cf + $this->process_postfix_config('mysql-virtual_sender_login_maps.cf'); + + //* mysql-virtual_client.cf + $this->process_postfix_config('mysql-virtual_client.cf'); + + //* mysql-virtual_relaydomains.cf + $this->process_postfix_config('mysql-virtual_relaydomains.cf'); + + //* mysql-virtual_relayrecipientmaps.cf + $this->process_postfix_config('mysql-virtual_relayrecipientmaps.cf'); + + //* mysql-virtual_outgoing_bcc.cf + $this->process_postfix_config('mysql-virtual_outgoing_bcc.cf'); + + //* mysql-virtual_policy_greylist.cf + $this->process_postfix_config('mysql-virtual_policy_greylist.cf'); + + //* mysql-virtual_gids.cf.master + $this->process_postfix_config('mysql-virtual_gids.cf'); + + //* mysql-virtual_uids.cf + $this->process_postfix_config('mysql-virtual_uids.cf'); + + //* postfix-dkim + $filename='tag_as_originating.re'; + $full_file_name=$config_dir.'/'.$filename; + if(is_file($full_file_name)) copy($full_file_name, $full_file_name.'~'); + $content = rfsel($conf['ispconfig_install_dir'].'/server/conf-custom/install/postfix-'.$filename.'.master', 'tpl/postfix-'.$filename.'.master'); + wf($full_file_name, $content); + + $filename='tag_as_foreign.re'; + $full_file_name=$config_dir.'/'.$filename; + if(is_file($full_file_name)) copy($full_file_name, $full_file_name.'~'); + $content = rfsel($conf['ispconfig_install_dir'].'/server/conf-custom/install/postfix-'.$filename.'.master', 'tpl/postfix-'.$filename.'.master'); + wf($full_file_name, $content); + + //* Changing mode and group of the new created config files. + caselog('chmod u=rw,g=r,o= '.$config_dir.'/mysql-virtual_*.cf* &> /dev/null', + __FILE__, __LINE__, 'chmod on mysql-virtual_*.cf*', 'chmod on mysql-virtual_*.cf* failed'); + caselog('chgrp '.$cf['group'].' '.$config_dir.'/mysql-virtual_*.cf* &> /dev/null', + __FILE__, __LINE__, 'chgrp on mysql-virtual_*.cf*', 'chgrp on mysql-virtual_*.cf* failed'); + + //* Creating virtual mail user and group + $command = 'groupadd -g '.$cf['vmail_groupid'].' '.$cf['vmail_groupname']; + if(!is_group($cf['vmail_groupname'])) caselog($command.' &> /dev/null', __FILE__, __LINE__, "EXECUTED: $command", "Failed to execute the command $command"); + + $command = 'useradd -g '.$cf['vmail_groupname'].' -u '.$cf['vmail_userid'].' '.$cf['vmail_username'].' -d '.$cf['vmail_mailbox_base'].' -m'; + if(!is_user($cf['vmail_username'])) caselog("$command &> /dev/null", __FILE__, __LINE__, "EXECUTED: $command", "Failed to execute the command $command"); + + //* These postconf commands will be executed on installation and update + $server_ini_rec = $this->db->queryOneRecord("SELECT config FROM ?? WHERE server_id = ?", $conf["mysql"]["database"] . '.server', $conf['server_id']); + $server_ini_array = ini_to_array(stripslashes($server_ini_rec['config'])); + unset($server_ini_rec); + + //* If there are RBL's defined, format the list and add them to smtp_recipient_restrictions to prevent removeal after an update + $rbl_list = ''; + if (@isset($server_ini_array['mail']['realtime_blackhole_list']) && $server_ini_array['mail']['realtime_blackhole_list'] != '') { + $rbl_hosts = explode(",", str_replace(" ", "", $server_ini_array['mail']['realtime_blackhole_list'])); + foreach ($rbl_hosts as $key => $value) { + $rbl_list .= ", reject_rbl_client ". $value; + } + } + unset($rbl_hosts); + + //* If Postgrey is installed, configure it + $greylisting = ''; + if($conf['postgrey']['installed'] == true) { + $greylisting = ', check_recipient_access mysql:/etc/postfix/mysql-virtual_policy_greylist.cf'; + } + + $reject_sender_login_mismatch = ''; + if(isset($server_ini_array['mail']['reject_sender_login_mismatch']) && ($server_ini_array['mail']['reject_sender_login_mismatch'] == 'y')) { + $reject_sender_login_mismatch = ', reject_authenticated_sender_login_mismatch'; + } + unset($server_ini_array); + + $tmp = str_replace('.','\.',$conf['hostname']); + + $postconf_placeholders = array('{config_dir}' => $config_dir, + '{vmail_mailbox_base}' => $cf['vmail_mailbox_base'], + '{vmail_userid}' => $cf['vmail_userid'], + '{vmail_groupid}' => $cf['vmail_groupid'], + '{rbl_list}' => $rbl_list, + '{greylisting}' => $greylisting, + '{reject_slm}' => $reject_sender_login_mismatch, + '{myhostname}' => $tmp, + ); + + $postconf_tpl = rfsel($conf['ispconfig_install_dir'].'/server/conf-custom/install/debian_postfix.conf.master', 'tpl/debian_postfix.conf.master'); + $postconf_tpl = strtr($postconf_tpl, $postconf_placeholders); + $postconf_commands = array_filter(explode("\n", $postconf_tpl)); // read and remove empty lines + + //* These postconf commands will be executed on installation only + if($this->is_update == false) { + $postconf_commands = array_merge($postconf_commands, array( + 'myhostname = '.$conf['hostname'], + 'mydestination = '.$conf['hostname'].', localhost, localhost.localdomain', + 'mynetworks = 127.0.0.0/8 [::1]/128' + )); + } + + //* Create the header and body check files + touch($config_dir.'/header_checks'); + touch($config_dir.'/mime_header_checks'); + touch($config_dir.'/nested_header_checks'); + touch($config_dir.'/body_checks'); + + //* Create the mailman files + if(!is_dir('/var/lib/mailman/data')) exec('mkdir -p /var/lib/mailman/data'); + if(!is_file('/var/lib/mailman/data/aliases')) touch('/var/lib/mailman/data/aliases'); + exec('postalias /var/lib/mailman/data/aliases'); + if(!is_file('/var/lib/mailman/data/virtual-mailman')) touch('/var/lib/mailman/data/virtual-mailman'); + exec('postmap /var/lib/mailman/data/virtual-mailman'); + if(!is_file('/var/lib/mailman/data/transport-mailman')) touch('/var/lib/mailman/data/transport-mailman'); + exec('/usr/sbin/postmap /var/lib/mailman/data/transport-mailman'); + + //* Create auxillary postfix conf files + $configfile = 'helo_access'; + if(is_file($config_dir.'/'.$configfile)) { + copy($config_dir.'/'.$configfile, $config_dir.'/'.$configfile.'~'); + chmod($config_dir.'/'.$configfile.'~', 0400); + } + $content = rfsel($conf['ispconfig_install_dir'].'/server/conf-custom/install/'.$configfile.'.master', 'tpl/'.$configfile.'.master'); + $content = strtr($content, $postconf_placeholders); + # todo: look up this server's ip addrs and loop through each + # todo: look up domains hosted on this server and loop through each + wf($config_dir.'/'.$configfile, $content); + + $configfile = 'blacklist_helo'; + if(is_file($config_dir.'/'.$configfile)) { + copy($config_dir.'/'.$configfile, $config_dir.'/'.$configfile.'~'); + chmod($config_dir.'/'.$configfile.'~', 0400); + } + $content = rfsel($conf['ispconfig_install_dir'].'/server/conf-custom/install/'.$configfile.'.master', 'tpl/'.$configfile.'.master'); + $content = strtr($content, $postconf_placeholders); + wf($config_dir.'/'.$configfile, $content); + + //* Make a backup copy of the main.cf file + copy($config_dir.'/main.cf', $config_dir.'/main.cf~'); + + //* Executing the postconf commands + foreach($postconf_commands as $cmd) { + $command = "postconf -e '$cmd'"; + caselog($command." &> /dev/null", __FILE__, __LINE__, 'EXECUTED: '.$command, 'Failed to execute the command '.$command); + } + + if(!stristr($options, 'dont-create-certs')) { + //* Create the SSL certificate + if(AUTOINSTALL){ + $command = 'cd '.$config_dir.'; ' + ."openssl req -new -subj '/C=".escapeshellcmd($autoinstall['ssl_cert_country'])."/ST=".escapeshellcmd($autoinstall['ssl_cert_state'])."/L=".escapeshellcmd($autoinstall['ssl_cert_locality'])."/O=".escapeshellcmd($autoinstall['ssl_cert_organisation'])."/OU=".escapeshellcmd($autoinstall['ssl_cert_organisation_unit'])."/CN=".escapeshellcmd($autoinstall['ssl_cert_common_name'])."' -outform PEM -out smtpd.cert -newkey rsa:4096 -nodes -keyout smtpd.key -keyform PEM -days 3650 -x509"; + } else { + $command = 'cd '.$config_dir.'; ' + .'openssl req -new -outform PEM -out smtpd.cert -newkey rsa:4096 -nodes -keyout smtpd.key -keyform PEM -days 3650 -x509'; + } + exec($command); + + $command = 'chmod o= '.$config_dir.'/smtpd.key'; + caselog($command.' &> /dev/null', __FILE__, __LINE__, 'EXECUTED: '.$command, 'Failed to execute the command '.$command); + } + + //** We have to change the permissions of the courier authdaemon directory to make it accessible for maildrop. + $command = 'chmod 755 /var/run/courier/authdaemon/'; + if(is_file('/var/run/courier/authdaemon/')) caselog($command.' &> /dev/null', __FILE__, __LINE__, 'EXECUTED: '.$command, 'Failed to execute the command '.$command); + + //* Check maildrop service in posfix master.cf + $regex = "/^maildrop unix.*pipe flags=DRhu user=vmail argv=\\/usr\\/bin\\/maildrop -d ".$cf['vmail_username']." \\$\{extension} \\$\{recipient} \\$\{user} \\$\{nexthop} \\$\{sender}/"; + $configfile = $config_dir.'/master.cf'; + if($this->get_postfix_service('maildrop', 'unix')) { + exec ("postconf -M maildrop.unix 2> /dev/null", $out, $ret); + $change_maildrop_flags = @(preg_match($regex, $out[0]) && $out[0] !='')?false:true; + } else { + $change_maildrop_flags = @(preg_match($regex, $configfile))?false:true; + } + if ($change_maildrop_flags) { + //* Change maildrop service in posfix master.cf + if(is_file($config_dir.'/master.cf')) { + copy($config_dir.'/master.cf', $config_dir.'/master.cf~'); + } + if(is_file($config_dir.'/master.cf~')) { + chmod($config_dir.'/master.cf~', 0400); + } + $configfile = $config_dir.'/master.cf'; + $content = rf($configfile); + $content = str_replace('flags=DRhu user=vmail argv=/usr/bin/maildrop -d ${recipient}', + 'flags=DRhu user='.$cf['vmail_username'].' argv=/usr/bin/maildrop -d '.$cf['vmail_username'].' ${extension} ${recipient} ${user} ${nexthop} ${sender}', + $content); + wf($configfile, $content); + } + + //* Writing the Maildrop mailfilter file + $configfile = 'mailfilter'; + if(is_file($cf['vmail_mailbox_base'].'/.'.$configfile)) { + copy($cf['vmail_mailbox_base'].'/.'.$configfile, $cf['vmail_mailbox_base'].'/.'.$configfile.'~'); + } + $content = rfsel($conf['ispconfig_install_dir'].'/server/conf-custom/install/'.$configfile.'.master', 'tpl/'.$configfile.'.master'); + $content = str_replace('{dist_postfix_vmail_mailbox_base}', $cf['vmail_mailbox_base'], $content); + wf($cf['vmail_mailbox_base'].'/.'.$configfile, $content); + + //* Create the directory for the custom mailfilters + if(!is_dir($cf['vmail_mailbox_base'].'/mailfilters')) { + $command = 'mkdir '.$cf['vmail_mailbox_base'].'/mailfilters'; + caselog($command." &> /dev/null", __FILE__, __LINE__, "EXECUTED: $command", "Failed to execute the command $command"); + } + + //* Chmod and chown the .mailfilter file + $command = 'chown '.$cf['vmail_username'].':'.$cf['vmail_groupname'].' '.$cf['vmail_mailbox_base'].'/.mailfilter'; + caselog($command." &> /dev/null", __FILE__, __LINE__, "EXECUTED: $command", "Failed to execute the command $command"); + + $command = 'chmod 600 '.$cf['vmail_mailbox_base'].'/.mailfilter'; + caselog($command." &> /dev/null", __FILE__, __LINE__, "EXECUTED: $command", "Failed to execute the command $command"); + + } + + public function configure_saslauthd() { + global $conf; + + //* Get saslsauthd version + exec('saslauthd -v 2>&1', $out); + $parts = explode(' ', $out[0]); + $saslversion = $parts[1]; + unset($parts); + unset($out); + + if(version_compare($saslversion , '2.1.23', '<=')) { + //* Configfile for saslauthd versions up to 2.1.23 + $configfile = 'sasl_smtpd.conf'; + } else { + //* Configfile for saslauthd versions 2.1.24 and newer + $configfile = 'sasl_smtpd2.conf'; + } + + if(is_file($conf['postfix']['config_dir'].'/sasl/smtpd.conf')) copy($conf['postfix']['config_dir'].'/sasl/smtpd.conf', $conf['postfix']['config_dir'].'/sasl/smtpd.conf~'); + if(is_file($conf['postfix']['config_dir'].'/sasl/smtpd.conf~')) chmod($conf['postfix']['config_dir'].'/sasl/smtpd.conf~', 0400); + $content = rfsel($conf['ispconfig_install_dir'].'/server/conf-custom/install/'.$configfile.'.master', 'tpl/'.$configfile.'.master'); + $content = str_replace('{mysql_server_ispconfig_user}', $conf['mysql']['ispconfig_user'], $content); + $content = str_replace('{mysql_server_ispconfig_password}', $conf['mysql']['ispconfig_password'], $content); + $content = str_replace('{mysql_server_database}', $conf['mysql']['database'], $content); + $content = str_replace('{mysql_server_ip}', $conf['mysql']['ip'], $content); + wf($conf['postfix']['config_dir'].'/sasl/smtpd.conf', $content); + + // TODO: Chmod and chown on the config file + + + // Recursively create the spool directory + if(!@is_dir('/var/spool/postfix/var/run/saslauthd')) mkdir('/var/spool/postfix/var/run/saslauthd', 0755, true); + + // Edit the file /etc/default/saslauthd + $configfile = $conf['saslauthd']['config']; + if(is_file($configfile)) copy($configfile, $configfile.'~'); + if(is_file($configfile.'~')) chmod($configfile.'~', 0400); + $content = rf($configfile); + $content = str_replace('START=no', 'START=yes', $content); + // Debian + $content = str_replace('OPTIONS="-c"', 'OPTIONS="-m /var/spool/postfix/var/run/saslauthd -r"', $content); + // Ubuntu + $content = str_replace('OPTIONS="-c -m /var/run/saslauthd"', 'OPTIONS="-c -m /var/spool/postfix/var/run/saslauthd -r"', $content); + wf($configfile, $content); + + // Edit the file /etc/init.d/saslauthd + $configfile = $conf['init_scripts'].'/'.$conf['saslauthd']['init_script']; + $content = rf($configfile); + $content = str_replace('PIDFILE=$RUN_DIR/saslauthd.pid', 'PIDFILE="/var/spool/postfix/var/run/${NAME}/saslauthd.pid"', $content); + wf($configfile, $content); + + // add the postfix user to the sasl group (at least necessary for Ubuntu 8.04 and most likely Debian Lenny as well. + exec('adduser postfix sasl'); + + + } + + public function configure_pam() { + global $conf; + $pam = $conf['pam']; + //* configure pam for SMTP authentication agains the ispconfig database + $configfile = 'pamd_smtp'; + if(is_file($pam.'/smtp')) copy($pam.'/smtp', $pam.'/smtp~'); + if(is_file($pam.'/smtp~')) chmod($pam.'/smtp~', 0400); + + $content = rfsel($conf['ispconfig_install_dir'].'/server/conf-custom/install/'.$configfile.'.master', 'tpl/'.$configfile.'.master'); + $content = str_replace('{mysql_server_ispconfig_user}', $conf['mysql']['ispconfig_user'], $content); + $content = str_replace('{mysql_server_ispconfig_password}', $conf['mysql']['ispconfig_password'], $content); + $content = str_replace('{mysql_server_database}', $conf['mysql']['database'], $content); + $content = str_replace('{mysql_server_ip}', $conf['mysql']['ip'], $content); + wf($pam.'/smtp', $content); + // On some OSes smtp is world readable which allows for reading database information. Removing world readable rights should have no effect. + if(is_file($pam.'/smtp')) exec("chmod o= $pam/smtp"); + chmod($pam.'/smtp', 0660); + chown($pam.'/smtp', 'daemon'); + chgrp($pam.'/smtp', 'daemon'); + + } + + public function configure_courier() { + global $conf; + $config_dir = $conf['courier']['config_dir']; + //* authmysqlrc + $configfile = 'authmysqlrc'; + if(is_file($config_dir.'/'.$configfile)) { + copy($config_dir.'/'.$configfile, $config_dir.'/'.$configfile.'~'); + } + chmod($config_dir.'/'.$configfile.'~', 0400); + $content = rfsel($conf['ispconfig_install_dir'].'/server/conf-custom/install/'.$configfile.'.master', 'tpl/'.$configfile.'.master'); + $content = str_replace('{mysql_server_ispconfig_user}', $conf['mysql']['ispconfig_user'], $content); + $content = str_replace('{mysql_server_ispconfig_password}', $conf['mysql']['ispconfig_password'], $content); + $content = str_replace('{mysql_server_database}', $conf['mysql']['database'], $content); + $content = str_replace('{mysql_server_host}', $conf['mysql']['host'], $content); + $content = str_replace('{mysql_server_port}', $conf['mysql']['port'], $content); + wf($config_dir.'/'.$configfile, $content); + + chmod($config_dir.'/'.$configfile, 0660); + chown($config_dir.'/'.$configfile, 'daemon'); + chgrp($config_dir.'/'.$configfile, 'daemon'); + + //* authdaemonrc + $configfile = $config_dir.'/authdaemonrc'; + if(is_file($configfile)) { + copy($configfile, $configfile.'~'); + } + if(is_file($configfile.'~')) { + chmod($configfile.'~', 0400); + } + $content = rf($configfile); + $content = str_replace('authmodulelist="authpam"', 'authmodulelist="authmysql"', $content); + wf($configfile, $content); + } + + public function configure_dovecot() { + global $conf; + + $virtual_transport = 'dovecot'; + + $configure_lmtp = false; + + // check if virtual_transport must be changed + if ($this->is_update) { + $tmp = $this->db->queryOneRecord("SELECT * FROM ?? WHERE server_id = ?", $conf["mysql"]["database"] . ".server", $conf['server_id']); + $ini_array = ini_to_array(stripslashes($tmp['config'])); + // ini_array needs not to be checked, because already done in update.php -> updateDbAndIni() + + if(isset($ini_array['mail']['mailbox_virtual_uidgid_maps']) && $ini_array['mail']['mailbox_virtual_uidgid_maps'] == 'y') { + $virtual_transport = 'lmtp:unix:private/dovecot-lmtp'; + $configure_lmtp = true; + } + } + + $config_dir = $conf['postfix']['config_dir']; + + //* Configure master.cf and add a line for deliver + if(!$this->get_postfix_service('dovecot', 'unix')) { + //* backup + if(is_file($config_dir.'/master.cf')){ + copy($config_dir.'/master.cf', $config_dir.'/master.cf~2'); + } + if(is_file($config_dir.'/master.cf~')){ + chmod($config_dir.'/master.cf~2', 0400); + } + //* Configure master.cf and add a line for deliver + $content = rf($conf["postfix"]["config_dir"].'/master.cf'); + $deliver_content = 'dovecot unix - n n - - pipe'."\n".' flags=DRhu user=vmail:vmail argv=/usr/lib/dovecot/deliver -f ${sender} -d ${user}@${nexthop}'."\n"; + af($config_dir.'/master.cf', $deliver_content); + unset($content); + unset($deliver_content); + } + + //* Reconfigure postfix to use dovecot authentication + // Adding the amavisd commands to the postfix configuration + $postconf_commands = array ( + 'dovecot_destination_recipient_limit = 1', + 'virtual_transport = '.$virtual_transport, + 'smtpd_sasl_type = dovecot', + 'smtpd_sasl_path = private/auth' + ); + + // Make a backup copy of the main.cf file + copy($conf['postfix']['config_dir'].'/main.cf', $conf['postfix']['config_dir'].'/main.cf~3'); + + // Executing the postconf commands + foreach($postconf_commands as $cmd) { + $command = "postconf -e '$cmd'"; + caselog($command." &> /dev/null", __FILE__, __LINE__, "EXECUTED: $command", "Failed to execute the command $command"); + } + + //* backup dovecot.conf + $config_dir = $conf['dovecot']['config_dir']; + $configfile = 'dovecot.conf'; + if(is_file($config_dir.'/'.$configfile)) { + copy($config_dir.'/'.$configfile, $config_dir.'/'.$configfile.'~'); + } + + //* Get the dovecot version + exec('dovecot --version', $tmp); + $dovecot_version = $tmp[0]; + unset($tmp); + + //* Copy dovecot configuration file + if(version_compare($dovecot_version,1, '<=')) { //* Dovecot 1.x + if(is_file($conf['ispconfig_install_dir'].'/server/conf-custom/install/debian_dovecot.conf.master')) { + copy($conf['ispconfig_install_dir'].'/server/conf-custom/install/debian_dovecot.conf.master', $config_dir.'/'.$configfile); + } else { + copy('tpl/debian_dovecot.conf.master', $config_dir.'/'.$configfile); + } + } else { //* Dovecot 2.x + if(is_file($conf['ispconfig_install_dir'].'/server/conf-custom/install/debian_dovecot2.conf.master')) { + copy($conf['ispconfig_install_dir'].'/server/conf-custom/install/debian_dovecot2.conf.master', $config_dir.'/'.$configfile); + } else { + copy('tpl/debian_dovecot2.conf.master', $config_dir.'/'.$configfile); + } + replaceLine($config_dir.'/'.$configfile, 'postmaster_address = postmaster@example.com', 'postmaster_address = postmaster@'.$conf['hostname'], 1, 0); + replaceLine($config_dir.'/'.$configfile, 'postmaster_address = webmaster@localhost', 'postmaster_address = postmaster@'.$conf['hostname'], 1, 0); + if(version_compare($dovecot_version, 2.1, '<')) { + removeLine($config_dir.'/'.$configfile, 'ssl_protocols ='); + } + if(version_compare($dovecot_version,2.2) >= 0) { + // Dovecot > 2.2 does not recognize !SSLv2 anymore on Debian 9 + $content = file_get_contents($config_dir.'/'.$configfile); + $content = str_replace('!SSLv2','',$content); + file_put_contents($config_dir.'/'.$configfile,$content); + unset($content); + } + } + + //* dovecot-lmtpd + if($configure_lmtp) { + replaceLine($config_dir.'/'.$configfile, 'protocols = imap pop3', 'protocols = imap pop3 lmtp', 1, 0); + } + + //* dovecot-sql.conf + $configfile = 'dovecot-sql.conf'; + if(is_file($config_dir.'/'.$configfile)) { + copy($config_dir.'/'.$configfile, $config_dir.'/'.$configfile.'~'); + } + if(is_file($config_dir.'/'.$configfile.'~')) chmod($config_dir.'/'.$configfile.'~', 0400); + $content = rfsel($conf['ispconfig_install_dir'].'/server/conf-custom/install/debian_dovecot-sql.conf.master', 'tpl/debian_dovecot-sql.conf.master'); + $content = str_replace('{mysql_server_ispconfig_user}', $conf['mysql']['ispconfig_user'], $content); + $content = str_replace('{mysql_server_ispconfig_password}', $conf['mysql']['ispconfig_password'], $content); + $content = str_replace('{mysql_server_database}', $conf['mysql']['database'], $content); + $content = str_replace('{mysql_server_host}', $conf['mysql']['host'], $content); + $content = str_replace('{mysql_server_port}', $conf['mysql']['port'], $content); + $content = str_replace('{server_id}', $conf['server_id'], $content); + # enable iterate_query for dovecot2 + if(version_compare($dovecot_version,2, '>=')) { + $content = str_replace('# iterate_query', 'iterate_query', $content); + } + wf($config_dir.'/'.$configfile, $content); + + chmod($config_dir.'/'.$configfile, 0600); + chown($config_dir.'/'.$configfile, 'root'); + chgrp($config_dir.'/'.$configfile, 'root'); + + // Dovecot shall ignore mounts in website directory + if(is_installed('doveadm')) exec("doveadm mount add '/var/www/*' ignore > /dev/null 2> /dev/null"); + + } + + public function configure_amavis() { + global $conf; + + // amavisd user config file + $configfile = 'amavisd_user_config'; + if(is_file($conf['amavis']['config_dir'].'/conf.d/50-user')) copy($conf['amavis']['config_dir'].'/conf.d/50-user', $conf['amavis']['config_dir'].'/50-user~'); + if(is_file($conf['amavis']['config_dir'].'/conf.d/50-user~')) chmod($conf['amavis']['config_dir'].'/50-user~', 0400); + $content = rfsel($conf['ispconfig_install_dir'].'/server/conf-custom/install/'.$configfile.'.master', 'tpl/'.$configfile.'.master'); + $content = str_replace('{mysql_server_ispconfig_user}', $conf['mysql']['ispconfig_user'], $content); + $content = str_replace('{mysql_server_ispconfig_password}', $conf['mysql']['ispconfig_password'], $content); + $content = str_replace('{mysql_server_database}', $conf['mysql']['database'], $content); + $content = str_replace('{mysql_server_port}', $conf['mysql']['port'], $content); + $content = str_replace('{mysql_server_ip}', $conf['mysql']['ip'], $content); + wf($conf['amavis']['config_dir'].'/conf.d/50-user', $content); + chmod($conf['amavis']['config_dir'].'/conf.d/50-user', 0640); + + // TODO: chmod and chown on the config file + + + // Adding the amavisd commands to the postfix configuration + // Add array for no error in foreach and maybe future options + $postconf_commands = array (); + + // Check for amavisd -> pure webserver with postfix for mailing without antispam + if ($conf['amavis']['installed']) { + $postconf_commands[] = 'content_filter = amavis:[127.0.0.1]:10024'; + $postconf_commands[] = 'receive_override_options = no_address_mappings'; + } + + // Make a backup copy of the main.cf file + copy($conf['postfix']['config_dir'].'/main.cf', $conf['postfix']['config_dir'].'/main.cf~2'); + + // Executing the postconf commands + foreach($postconf_commands as $cmd) { + $command = "postconf -e '$cmd'"; + caselog($command." &> /dev/null", __FILE__, __LINE__, "EXECUTED: $command", "Failed to execute the command $command"); + } + + $config_dir = $conf['postfix']['config_dir']; + + // Adding amavis-services to the master.cf file if the service does not already exists + $add_amavis = !$this->get_postfix_service('amavis','unix'); + $add_amavis_10025 = !$this->get_postfix_service('127.0.0.1:10025','inet'); + $add_amavis_10027 = !$this->get_postfix_service('127.0.0.1:10027','inet'); + //*TODO: check templates against existing postfix-services to make sure we use the template + + if ($add_amavis || $add_amavis_10025 || $add_amavis_10027) { + //* backup master.cf + if(is_file($config_dir.'/master.cf')) copy($config_dir.'/master.cf', $config_dir.'/master.cf~'); + // adjust amavis-config + if($add_amavis) { + $content = rfsel($conf['ispconfig_install_dir'].'/server/conf-custom/install/master_cf_amavis.master', 'tpl/master_cf_amavis.master'); + af($config_dir.'/master.cf', $content); + unset($content); + } + if ($add_amavis_10025) { + $content = rfsel($conf['ispconfig_install_dir'].'/server/conf-custom/install/master_cf_amavis10025.master', 'tpl/master_cf_amavis10025.master'); + af($config_dir.'/master.cf', $content); + unset($content); + } + if ($add_amavis_10027) { + $content = rfsel($conf['ispconfig_install_dir'].'/server/conf-custom/install/master_cf_amavis10027.master', 'tpl/master_cf_amavis10027.master'); + af($config_dir.'/master.cf', $content); + unset($content); + } + } + + // Add the clamav user to the amavis group + exec('adduser clamav amavis'); + // get shell-group for amavis + $amavis_group=exec('grep -o "^amavis:\|^vscan:" /etc/group'); + if(!empty($amavis_group)) { + $amavis_group=rtrim($amavis_group, ":"); + } + // get shell-user for amavis + $amavis_user=exec('grep -o "^amavis:\|^vscan:" /etc/passwd'); + if(!empty($amavis_user)) { + $amavis_user=rtrim($amavis_user, ":"); + } + + // Create the director for DKIM-Keys + if(!is_dir('/var/lib/amavis')) mkdir('/var/lib/amavis', 0750, true); + if(!empty($amavis_user)) exec('chown '.$amavis_user.' /var/lib/amavis'); + if(!empty($amavis_group)) exec('chgrp '.$amavis_group.' /var/lib/amavis'); + if(!is_dir('/var/lib/amavis/dkim')) mkdir('/var/lib/amavis/dkim', 0750); + if(!empty($amavis_user)) exec('chown -R '.$amavis_user.' /var/lib/amavis/dkim'); + if(!empty($amavis_group)) exec('chgrp -R '.$amavis_group.' /var/lib/amavis/dkim'); + + } + + public function configure_spamassassin() { + global $conf; + + //* Enable spamasasssin on debian and ubuntu + $configfile = '/etc/default/spamassassin'; + if(is_file($configfile)) { + copy($configfile, $configfile.'~'); + } + $content = rf($configfile); + $content = str_replace('ENABLED=0', 'ENABLED=1', $content); + wf($configfile, $content); + } + + public function configure_getmail() { + global $conf; + + $config_dir = $conf['getmail']['config_dir']; + + if(!@is_dir($config_dir)) mkdir(escapeshellcmd($config_dir), 0700, true); + + $command = 'useradd -d '.$config_dir.' getmail'; + if(!is_user('getmail')) caselog($command.' &> /dev/null', __FILE__, __LINE__, "EXECUTED: $command", "Failed to execute the command $command"); + + $command = "chown -R getmail $config_dir"; + caselog($command.' &> /dev/null', __FILE__, __LINE__, "EXECUTED: $command", "Failed to execute the command $command"); + + $command = "chmod -R 700 $config_dir"; + caselog($command.' &> /dev/null', __FILE__, __LINE__, "EXECUTED: $command", "Failed to execute the command $command"); + } + + + public function configure_pureftpd() { + global $conf; + + $config_dir = $conf['pureftpd']['config_dir']; + + //* configure pure-ftpd for MySQL authentication against the ispconfig database + $configfile = 'db/mysql.conf'; + if(is_file($config_dir.'/'.$configfile)) { + copy($config_dir.'/'.$configfile, $config_dir.'/'.$configfile.'~'); + } + if(is_file($config_dir.'/'.$configfile.'~')) { + chmod($config_dir.'/'.$configfile.'~', 0400); + } + $content = rfsel($conf['ispconfig_install_dir'].'/server/conf-custom/install/pureftpd_mysql.conf.master', 'tpl/pureftpd_mysql.conf.master'); + $content = str_replace('{mysql_server_ispconfig_user}', $conf['mysql']['ispconfig_user'], $content); + $content = str_replace('{mysql_server_ispconfig_password}', $conf['mysql']['ispconfig_password'], $content); + $content = str_replace('{mysql_server_database}', $conf['mysql']['database'], $content); + $content = str_replace('{mysql_server_ip}', $conf['mysql']['ip'], $content); + $content = str_replace('{server_id}', $conf['server_id'], $content); + wf($config_dir.'/'.$configfile, $content); + chmod($config_dir.'/'.$configfile, 0600); + chown($config_dir.'/'.$configfile, 'root'); + chgrp($config_dir.'/'.$configfile, 'root'); + // **enable chrooting + //exec('mkdir -p '.$config_dir.'/conf/ChrootEveryone'); + exec('echo "yes" > '.$config_dir.'/conf/ChrootEveryone'); + exec('echo "yes" > '.$config_dir.'/conf/BrokenClientsCompatibility'); + exec('echo "yes" > '.$config_dir.'/conf/DisplayDotFiles'); + + if(is_file('/etc/default/pure-ftpd-common')) { + replaceLine('/etc/default/pure-ftpd-common', 'STANDALONE_OR_INETD=inetd', 'STANDALONE_OR_INETD=standalone', 1, 0); + replaceLine('/etc/default/pure-ftpd-common', 'VIRTUALCHROOT=false', 'VIRTUALCHROOT=true', 1, 0); + } + + if(is_file('/etc/inetd.conf')) { + replaceLine('/etc/inetd.conf', '/usr/sbin/pure-ftpd-wrapper', '#ftp stream tcp nowait root /usr/sbin/tcpd /usr/sbin/pure-ftpd-wrapper', 0, 0); + exec($this->getinitcommand('openbsd-inetd', 'restart')); + //if(is_file($conf['init_scripts'].'/'.'openbsd-inetd')) exec($conf['init_scripts'].'/'.'openbsd-inetd restart'); + } + + if(!is_file('/etc/pure-ftpd/conf/DontResolve')) exec('echo "yes" > /etc/pure-ftpd/conf/DontResolve'); + } + + public function configure_mydns() { + global $conf; + + // configure pam for SMTP authentication agains the ispconfig database + $configfile = 'mydns.conf'; + if(is_file($conf['mydns']['config_dir'].'/'.$configfile)) copy($conf['mydns']['config_dir'].'/'.$configfile, $conf['mydns']['config_dir'].'/'.$configfile.'~'); + if(is_file($conf['mydns']['config_dir'].'/'.$configfile.'~')) chmod($conf['mydns']['config_dir'].'/'.$configfile.'~', 0400); + $content = rfsel($conf['ispconfig_install_dir'].'/server/conf-custom/install/'.$configfile.'.master', 'tpl/'.$configfile.'.master'); + $content = str_replace('{mysql_server_ispconfig_user}', $conf['mysql']['ispconfig_user'], $content); + $content = str_replace('{mysql_server_ispconfig_password}', $conf['mysql']['ispconfig_password'], $content); + $content = str_replace('{mysql_server_database}', $conf['mysql']['database'], $content); + $content = str_replace('{mysql_server_host}', $conf['mysql']['host'], $content); + $content = str_replace('{mysql_server_port}', $conf['mysql']['port'], $content); + $content = str_replace('{server_id}', $conf['server_id'], $content); + wf($conf['mydns']['config_dir'].'/'.$configfile, $content); + chmod($conf['mydns']['config_dir'].'/'.$configfile, 0600); + chown($conf['mydns']['config_dir'].'/'.$configfile, 'root'); + chgrp($conf['mydns']['config_dir'].'/'.$configfile, 'root'); + + } + + public function configure_powerdns() { + global $conf; + + //* Create the database + if(!$this->db->query('CREATE DATABASE IF NOT EXISTS ?? DEFAULT CHARACTER SET ?', $conf['powerdns']['database'], $conf['mysql']['charset'])) { + $this->error('Unable to create MySQL database: '.$conf['powerdns']['database'].'.'); + } + + //* Create the ISPConfig database user in the local database + $query = "GRANT ALL ON ?? TO ?@'localhost'"; + if(!$this->db->query($query, $conf['powerdns']['database'] . '.*', $conf['mysql']['ispconfig_user'])) { + $this->error('Unable to create user for powerdns database Error: '.$this->db->errorMessage); + } + + //* load the powerdns databse dump + if($conf['mysql']['admin_password'] == '') { + caselog("mysql --default-character-set=".$conf['mysql']['charset']." -h '".$conf['mysql']['host']."' -u '".$conf['mysql']['admin_user']."' '".$conf['powerdns']['database']."' < '".ISPC_INSTALL_ROOT."/install/sql/powerdns.sql' &> /dev/null", + __FILE__, __LINE__, 'read in ispconfig3.sql', 'could not read in powerdns.sql'); + } else { + caselog("mysql --default-character-set=".$conf['mysql']['charset']." -h '".$conf['mysql']['host']."' -u '".$conf['mysql']['admin_user']."' -p'".$conf['mysql']['admin_password']."' '".$conf['powerdns']['database']."' < '".ISPC_INSTALL_ROOT."/install/sql/powerdns.sql' &> /dev/null", + __FILE__, __LINE__, 'read in ispconfig3.sql', 'could not read in powerdns.sql'); + } + + //* Create the powerdns config file + $configfile = 'pdns.local'; + if(is_file($conf['powerdns']['config_dir'].'/'.$configfile)) copy($conf['powerdns']['config_dir'].'/'.$configfile, $conf['powerdns']['config_dir'].'/'.$configfile.'~'); + if(is_file($conf['powerdns']['config_dir'].'/'.$configfile.'~')) chmod($conf['powerdns']['config_dir'].'/'.$configfile.'~', 0400); + $content = rfsel($conf['ispconfig_install_dir'].'/server/conf-custom/install/'.$configfile.'.master', 'tpl/'.$configfile.'.master'); + $content = str_replace('{mysql_server_ispconfig_user}', $conf['mysql']['ispconfig_user'], $content); + $content = str_replace('{mysql_server_ispconfig_password}', $conf['mysql']['ispconfig_password'], $content); + $content = str_replace('{powerdns_database}', $conf['powerdns']['database'], $content); + $content = str_replace('{mysql_server_host}', $conf['mysql']['host'], $content); + $content = str_replace('{mysql_server_port}', $conf['mysql']['port'], $content); + wf($conf['powerdns']['config_dir'].'/'.$configfile, $content); + chmod($conf['powerdns']['config_dir'].'/'.$configfile, 0600); + chown($conf['powerdns']['config_dir'].'/'.$configfile, 'root'); + chgrp($conf['powerdns']['config_dir'].'/'.$configfile, 'root'); + + + } + + //** writes bind configuration files + public function process_bind_file($configfile, $target='/', $absolute=false) { + global $conf; + + if ($absolute) $full_file_name = $target.$configfile; + else $full_file_name = $conf['ispconfig_install_dir'].$target.$configfile; + + //* Backup exiting file + if(is_file($full_file_name)) { + copy($full_file_name, $config_dir.$configfile.'~'); + } + $content = rfsel($conf['ispconfig_install_dir'].'/server/conf-custom/install/'.$configfile.'.master', 'tpl/'.$configfile.'.master'); + $content = str_replace('{mysql_server_ispconfig_user}', $conf['mysql']['ispconfig_user'], $content); + $content = str_replace('{mysql_server_ispconfig_password}', $conf['mysql']['ispconfig_password'], $content); + $content = str_replace('{mysql_server_ispconfig_database}', $conf['mysql']['database'], $content); + $content = str_replace('{mysql_server_ip}', $conf['mysql']['ip'], $content); + $content = str_replace('{ispconfig_install_dir}', $conf['ispconfig_install_dir'], $content); + $content = str_replace('{dnssec_conffile}', $conf['ispconfig_install_dir'].'/server/scripts/dnssec-config.sh', $content); + wf($full_file_name, $content); + } + + public function configure_bind() { + global $conf; + + //* Check if the zonefile directory has a slash at the end + $content=$conf['bind']['bind_zonefiles_dir']; + if(substr($content, -1, 1) != '/') { + $content .= '/'; + } + + //* Create the slave subdirectory + $content .= 'slave'; + if(!@is_dir($content)) mkdir($content, 02770, true); + + //* Chown the slave subdirectory to $conf['bind']['bind_user'] + chown($content, $conf['bind']['bind_user']); + chgrp($content, $conf['bind']['bind_group']); + chmod($content, 02770); + + //* Install scripts for dnssec implementation + $this->process_bind_file('named.conf.options', '/etc/bind/', true); //TODO replace hardcoded path + } + + + public function configure_xmpp($options = '') { + global $conf; + + if($conf['xmpp']['installed'] == false) return; + //* Create the logging directory for xmpp server + if(!@is_dir('/var/log/metronome')) mkdir('/var/log/metronome', 0755, true); + chown('/var/log/metronome', 'metronome'); + if(!@is_dir('/var/run/metronome')) mkdir('/var/run/metronome', 0755, true); + chown('/var/run/metronome', 'metronome'); + if(!@is_dir('/var/lib/metronome')) mkdir('/var/lib/metronome', 0755, true); + chown('/var/lib/metronome', 'metronome'); + if(!@is_dir('/etc/metronome/hosts')) mkdir('/etc/metronome/hosts', 0755, true); + if(!@is_dir('/etc/metronome/status')) mkdir('/etc/metronome/status', 0755, true); + unlink('/etc/metronome/metronome.cfg.lua'); + + $row = $this->db->queryOneRecord("SELECT server_name FROM server WHERE server_id = ?", $conf["server_id"]); + $server_name = $row["server_name"]; + + $tpl = new tpl('metronome_conf_main.master'); + wf('/etc/metronome/metronome.cfg.lua', $tpl->grab()); + unset($tpl); + + $tpl = new tpl('metronome_conf_global.master'); + $tpl->setVar('xmpp_admins',''); + wf('/etc/metronome/global.cfg.lua', $tpl->grab()); + unset($tpl); + + // Copy isp libs + if(!@is_dir('/usr/lib/metronome/isp-modules')) mkdir('/usr/lib/metronome/isp-modules', 0755, true); + caselog('cp -rf apps/metronome_libs/* /usr/lib/metronome/isp-modules/', __FILE__, __LINE__); + caselog('chmod 755 /usr/lib/metronome/isp-modules/mod_auth_external/authenticate_isp.sh', __FILE__, __LINE__); + // Process db config + $full_file_name = '/usr/lib/metronome/isp-modules/mod_auth_external/db_conf.inc.php'; + $content = rf($full_file_name); + $content = str_replace('{mysql_server_ispconfig_user}', $conf['mysql']['ispconfig_user'], $content); + $content = str_replace('{mysql_server_ispconfig_password}', $conf['mysql']['ispconfig_password'], $content); + $content = str_replace('{mysql_server_database}', $conf['mysql']['database'], $content); + $content = str_replace('{mysql_server_ip}', $conf['mysql']['ip'], $content); + $content = str_replace('{server_id}', $conf['server_id'], $content); + wf($full_file_name, $content); + + if(!stristr($options, 'dont-create-certs')){ + // Create SSL Certificate for localhost + // Ensure no line is left blank + echo "writing new private key to 'localhost.key'\n-----\n"; + $ssl_country = $this->free_query('Country Name (2 letter code)', 'AU','ssl_cert_country'); + $ssl_locality = $this->free_query('Locality Name (eg, city)', 'City Name','ssl_cert_locality'); + $ssl_organisation = $this->free_query('Organization Name (eg, company)', 'Internet Widgits Pty Ltd','ssl_cert_organisation'); + $ssl_organisation_unit = $this->free_query('Organizational Unit Name (eg, section)', 'Infrastructure','ssl_cert_organisation_unit'); + $ssl_domain = $this->free_query('Common Name (e.g. server FQDN or YOUR name)', $conf['hostname'],'ssl_cert_common_name'); + $ssl_email = $this->free_query('Email Address', 'hostmaster@'.$conf['hostname'],'ssl_cert_email'); + + $tpl = new tpl('metronome_conf_ssl.master'); + $tpl->setVar('ssl_country',$ssl_country); + $tpl->setVar('ssl_locality',$ssl_locality); + $tpl->setVar('ssl_organisation',$ssl_organisation); + $tpl->setVar('ssl_organisation_unit',$ssl_organisation_unit); + $tpl->setVar('domain',$ssl_domain); + $tpl->setVar('ssl_email',$ssl_email); + wf('/etc/metronome/certs/localhost.cnf', $tpl->grab()); + unset($tpl); + // Generate new key, csr and cert + exec("(cd /etc/metronome/certs && make localhost.key)"); + exec("(cd /etc/metronome/certs && make localhost.csr)"); + exec("(cd /etc/metronome/certs && make localhost.cert)"); + exec('chmod 0400 /etc/metronome/certs/localhost.key'); + exec('chown metronome /etc/metronome/certs/localhost.key'); + + echo "IMPORTANT:\n"; + echo "Localhost Key, Csr and a self-signed Cert have been saved to /etc/metronome/certs\n"; + echo "In order to work with all clients, the server must have a trusted certificate, so use the Csr\n"; + echo "to get a trusted certificate from your CA or replace Key and Cert with already signed files for\n"; + echo "your domain. Clients like Pidgin dont allow to use untrusted self-signed certificates.\n"; + echo "\n"; + + }else{ + /* + echo "-----\n"; + echo "Metronome XMPP SSL server certificate is not renewed. Run the following command manual as root to recreate it:\n"; + echo "# (cd /etc/metronome/certs && make localhost.key && make localhost.csr && make localhost.cert && chmod 0400 localhost.key && chown metronome localhost.key)\n"; + echo "-----\n"; + */ + } + + // Copy init script + caselog('cp -f apps/metronome-init /etc/init.d/metronome', __FILE__, __LINE__); + caselog('chmod u+x /etc/init.d/metronome', __FILE__, __LINE__); + caselog('update-rc.d metronome defaults', __FILE__, __LINE__); + + exec($this->getinitcommand($conf['xmpp']['init_script'], 'restart')); + } + + + public function configure_apache() { + global $conf; + + if($conf['apache']['installed'] == false) return; + //* Create the logging directory for the vhost logfiles + if(!@is_dir($conf['ispconfig_log_dir'].'/httpd')) mkdir($conf['ispconfig_log_dir'].'/httpd', 0755, true); + + if(is_file('/etc/suphp/suphp.conf')) { + replaceLine('/etc/suphp/suphp.conf', 'php="php:/usr/bin', 'x-httpd-suphp="php:/usr/bin/php-cgi"', 0); + //replaceLine('/etc/suphp/suphp.conf','docroot=','docroot=/var/clients',0); + replaceLine('/etc/suphp/suphp.conf', 'umask=00', 'umask=0022', 0); + } + + if(is_file('/etc/apache2/sites-enabled/000-default')) { + replaceLine('/etc/apache2/sites-available/000-default', 'NameVirtualHost *', 'NameVirtualHost *:80', 1, 0); + replaceLine('/etc/apache2/sites-available/000-default', '<VirtualHost *>', '<VirtualHost *:80>', 1, 0); + } + + if(is_file('/etc/apache2/ports.conf')) { + // add a line "Listen 443" to ports conf if line does not exist + replaceLine('/etc/apache2/ports.conf', 'Listen 443', 'Listen 443', 1); + + // Comment out the namevirtualhost lines, as they were added by ispconfig in ispconfig.conf file again + replaceLine('/etc/apache2/ports.conf', 'NameVirtualHost *:80', '# NameVirtualHost *:80', 1); + replaceLine('/etc/apache2/ports.conf', 'NameVirtualHost *:443', '# NameVirtualHost *:443', 1); + } + + if(is_file('/etc/apache2/mods-available/fcgid.conf')) { + // add or modify the parameters for fcgid.conf + replaceLine('/etc/apache2/mods-available/fcgid.conf','MaxRequestLen','MaxRequestLen 15728640',1); + } + + if(is_file('/etc/apache2/apache.conf')) { + if(hasLine('/etc/apache2/apache.conf', 'Include sites-enabled/', 1) == false) { + if(hasLine('/etc/apache2/apache.conf', 'IncludeOptional sites-enabled/*.conf', 1) == false && hasLine('/etc/apache2/apache.conf', 'IncludeOptional sites-enabled/', 1) == false) { + replaceLine('/etc/apache2/apache.conf', 'Include sites-enabled/', 'Include sites-enabled/', 1, 1); + } elseif(hasLine('/etc/apache2/apache.conf', 'IncludeOptional sites-enabled/*.vhost', 1) == false) { + replaceLine('/etc/apache2/apache.conf', 'IncludeOptional sites-enabled/*.vhost', 'IncludeOptional sites-enabled/', 1, 1); + } + } + } + + if(is_file('/etc/apache2/apache2.conf')) { + if(hasLine('/etc/apache2/apache2.conf', 'Include sites-enabled/', 1) == false && hasLine('/etc/apache2/apache2.conf', 'IncludeOptional sites-enabled/', 1) == false) { + if(hasLine('/etc/apache2/apache2.conf', 'Include sites-enabled/*.conf', 1) == true) { + replaceLine('/etc/apache2/apache2.conf', 'Include sites-enabled/*.conf', 'Include sites-enabled/', 1, 1); + } elseif(hasLine('/etc/apache2/apache2.conf', 'IncludeOptional sites-enabled/*.conf', 1) == true) { + replaceLine('/etc/apache2/apache2.conf', 'IncludeOptional sites-enabled/*.conf', 'IncludeOptional sites-enabled/', 1, 1); + } + } + } + + //* Copy the ISPConfig configuration include + $vhost_conf_dir = $conf['apache']['vhost_conf_dir']; + $vhost_conf_enabled_dir = $conf['apache']['vhost_conf_enabled_dir']; + + $tpl = new tpl('apache_ispconfig.conf.master'); + $tpl->setVar('apache_version',getapacheversion()); + + if($this->is_update == true) { + $tpl->setVar('logging',get_logging_state()); + } else { + $tpl->setVar('logging','yes'); + } + + $records = $this->db->queryAllRecords("SELECT * FROM ?? WHERE server_id = ? AND virtualhost = 'y'", $conf['mysql']['master_database'] . '.server_ip', $conf['server_id']); + $ip_addresses = array(); + + if(is_array($records) && count($records) > 0) { + foreach($records as $rec) { + if($rec['ip_type'] == 'IPv6') { + $ip_address = '['.$rec['ip_address'].']'; + } else { + $ip_address = $rec['ip_address']; + } + $ports = explode(',', $rec['virtualhost_port']); + if(is_array($ports)) { + foreach($ports as $port) { + $port = intval($port); + if($port > 0 && $port < 65536 && $ip_address != '') { + $ip_addresses[] = array('ip_address' => $ip_address, 'port' => $port); + } + } + } + } + } + + if(count($ip_addresses) > 0) $tpl->setLoop('ip_adresses',$ip_addresses); + + wf($vhost_conf_dir.'/ispconfig.conf', $tpl->grab()); + unset($tpl); + + if(!@is_link($vhost_conf_enabled_dir.'/000-ispconfig.conf')) { + symlink($vhost_conf_dir.'/ispconfig.conf', $vhost_conf_enabled_dir.'/000-ispconfig.conf'); + } + + //* make sure that webalizer finds its config file when it is directly in /etc + if(@is_file('/etc/webalizer.conf') && !@is_dir('/etc/webalizer')) { + mkdir('/etc/webalizer'); + symlink('/etc/webalizer.conf', '/etc/webalizer/webalizer.conf'); + } + + if(is_file('/etc/webalizer/webalizer.conf')) { + // Change webalizer mode to incremental + replaceLine('/etc/webalizer/webalizer.conf', '#IncrementalName', 'IncrementalName webalizer.current', 0, 0); + replaceLine('/etc/webalizer/webalizer.conf', '#Incremental', 'Incremental yes', 0, 0); + replaceLine('/etc/webalizer/webalizer.conf', '#HistoryName', 'HistoryName webalizer.hist', 0, 0); + } + + // Check the awsatst script + if(!is_dir('/usr/share/awstats/tools')) exec('mkdir -p /usr/share/awstats/tools'); + if(!file_exists('/usr/share/awstats/tools/awstats_buildstaticpages.pl') && file_exists('/usr/share/doc/awstats/examples/awstats_buildstaticpages.pl')) symlink('/usr/share/doc/awstats/examples/awstats_buildstaticpages.pl', '/usr/share/awstats/tools/awstats_buildstaticpages.pl'); + if(file_exists('/etc/awstats/awstats.conf.local')) replaceLine('/etc/awstats/awstats.conf.local', 'LogFormat=4', 'LogFormat=1', 0, 1); + + //* add a sshusers group + $command = 'groupadd sshusers'; + if(!is_group('sshusers')) caselog($command.' &> /dev/null 2> /dev/null', __FILE__, __LINE__, "EXECUTED: $command", "Failed to execute the command $command"); + + } + + public function configure_nginx(){ + global $conf; + + if($conf['nginx']['installed'] == false) return; + //* Create the logging directory for the vhost logfiles + if(!@is_dir($conf['ispconfig_log_dir'].'/httpd')) mkdir($conf['ispconfig_log_dir'].'/httpd', 0755, true); + + //* make sure that webalizer finds its config file when it is directly in /etc + if(@is_file('/etc/webalizer.conf') && !@is_dir('/etc/webalizer')) { + mkdir('/etc/webalizer'); + symlink('/etc/webalizer.conf', '/etc/webalizer/webalizer.conf'); + } + + if(is_file('/etc/webalizer/webalizer.conf')) { + // Change webalizer mode to incremental + replaceLine('/etc/webalizer/webalizer.conf', '#IncrementalName', 'IncrementalName webalizer.current', 0, 0); + replaceLine('/etc/webalizer/webalizer.conf', '#Incremental', 'Incremental yes', 0, 0); + replaceLine('/etc/webalizer/webalizer.conf', '#HistoryName', 'HistoryName webalizer.hist', 0, 0); + } + + // Check the awsatst script + if(!is_dir('/usr/share/awstats/tools')) exec('mkdir -p /usr/share/awstats/tools'); + if(!file_exists('/usr/share/awstats/tools/awstats_buildstaticpages.pl') && file_exists('/usr/share/doc/awstats/examples/awstats_buildstaticpages.pl')) symlink('/usr/share/doc/awstats/examples/awstats_buildstaticpages.pl', '/usr/share/awstats/tools/awstats_buildstaticpages.pl'); + if(file_exists('/etc/awstats/awstats.conf.local')) replaceLine('/etc/awstats/awstats.conf.local', 'LogFormat=4', 'LogFormat=1', 0, 1); + + //* add a sshusers group + $command = 'groupadd sshusers'; + if(!is_group('sshusers')) caselog($command.' &> /dev/null 2> /dev/null', __FILE__, __LINE__, "EXECUTED: $command", "Failed to execute the command $command"); + + // add anonymized log option to nginxx.conf file + $nginx_conf_file = $conf['nginx']['config_dir'].'/nginx.conf'; + if(is_file($nginx_conf_file)) { + $tmp = file_get_contents($nginx_conf_file); + if(!stristr($tmp, 'log_format anonymized')) { + copy($nginx_conf_file,$nginx_conf_file.'~'); + replaceLine($nginx_conf_file, 'http {', "http {\n\n".file_get_contents('tpl/nginx_anonlog.master'), 0, 0); + } + } + + } + + public function configure_fail2ban() { + // To Do + } + + public function configure_squid() + { + global $conf; + $row = $this->db->queryOneRecord("SELECT server_name FROM server WHERE server_id = ?", $conf["server_id"]); + $ip_address = gethostbyname($row["server_name"]); + $server_name = $row["server_name"]; + + $configfile = 'squid.conf'; + if(is_file($conf["squid"]["config_dir"].'/'.$configfile)) copy($conf["squid"]["config_dir"].'/'.$configfile, $conf["squid"]["config_dir"].'/'.$configfile.'~'); + if(is_file($conf["squid"]["config_dir"].'/'.$configfile.'~')) exec('chmod 400 '.$conf["squid"]["config_dir"].'/'.$configfile.'~'); + $content = rfsel($conf['ispconfig_install_dir'].'/server/conf-custom/install/'.$configfile.'.master', "tpl/".$configfile.".master"); + $content = str_replace('{server_name}', $server_name, $content); + $content = str_replace('{ip_address}', $ip_address, $content); + $content = str_replace('{config_dir}', $conf['squid']['config_dir'], $content); + wf($conf["squid"]["config_dir"].'/'.$configfile, $content); + exec('chmod 600 '.$conf["squid"]["config_dir"].'/'.$configfile); + exec('chown root:root '.$conf["squid"]["config_dir"].'/'.$configfile); + } + + public function configure_ufw_firewall() + { + if($this->is_update == false) { + $configfile = 'ufw.conf'; + if(is_file('/etc/ufw/ufw.conf')) copy('/etc/ufw/ufw.conf', '/etc/ufw/ufw.conf~'); + $content = rf("tpl/".$configfile.".master"); + wf('/etc/ufw/ufw.conf', $content); + exec('chmod 600 /etc/ufw/ufw.conf'); + exec('chown root:root /etc/ufw/ufw.conf'); + } + } + + public function configure_bastille_firewall() { + global $conf; + + $dist_init_scripts = $conf['init_scripts']; + + if(is_dir('/etc/Bastille.backup')) caselog('rm -rf /etc/Bastille.backup', __FILE__, __LINE__); + if(is_dir('/etc/Bastille')) caselog('mv -f /etc/Bastille /etc/Bastille.backup', __FILE__, __LINE__); + @mkdir('/etc/Bastille', 0700); + if(is_dir('/etc/Bastille.backup/firewall.d')) caselog('cp -pfr /etc/Bastille.backup/firewall.d /etc/Bastille/', __FILE__, __LINE__); + if(is_file($conf['ispconfig_install_dir'].'/server/conf-custom/install/bastille-firewall.cfg.master')) { + caselog('cp -f ' . $conf['ispconfig_install_dir'].'/server/conf-custom/install/bastille-firewall.cfg.master /etc/Bastille/bastille-firewall.cfg', __FILE__, __LINE__); + } else { + caselog('cp -f tpl/bastille-firewall.cfg.master /etc/Bastille/bastille-firewall.cfg', __FILE__, __LINE__); + } + caselog('chmod 644 /etc/Bastille/bastille-firewall.cfg', __FILE__, __LINE__); + $content = rf('/etc/Bastille/bastille-firewall.cfg'); + $content = str_replace('{DNS_SERVERS}', '', $content); + + $tcp_public_services = ''; + $udp_public_services = ''; + + $row = $this->db->queryOneRecord('SELECT * FROM ?? WHERE server_id = ?', $conf["mysql"]["database"] . '.firewall', $conf['server_id']); + + if(trim($row['tcp_port']) != '' || trim($row['udp_port']) != '') { + $tcp_public_services = trim(str_replace(',', ' ', $row['tcp_port'])); + $udp_public_services = trim(str_replace(',', ' ', $row['udp_port'])); + } else { + $tcp_public_services = '21 22 25 53 80 110 143 443 3306 8080 10000'; + $udp_public_services = '53'; + } + + if(!stristr($tcp_public_services, $conf['apache']['vhost_port'])) { + $tcp_public_services .= ' '.intval($conf['apache']['vhost_port']); + if($row['tcp_port'] != '') $this->db->query("UPDATE firewall SET tcp_port = tcp_port + ? WHERE server_id = ?", ',' . intval($conf['apache']['vhost_port']), $conf['server_id']); + } + + $content = str_replace('{TCP_PUBLIC_SERVICES}', $tcp_public_services, $content); + $content = str_replace('{UDP_PUBLIC_SERVICES}', $udp_public_services, $content); + + wf('/etc/Bastille/bastille-firewall.cfg', $content); + + if(is_file($dist_init_scripts.'/bastille-firewall')) caselog('mv -f '.$dist_init_scripts.'/bastille-firewall '.$dist_init_scripts.'/bastille-firewall.backup', __FILE__, __LINE__); + caselog('cp -f apps/bastille-firewall '.$dist_init_scripts, __FILE__, __LINE__); + caselog('chmod 700 '.$dist_init_scripts.'/bastille-firewall', __FILE__, __LINE__); + + if(is_file('/sbin/bastille-ipchains')) caselog('mv -f /sbin/bastille-ipchains /sbin/bastille-ipchains.backup', __FILE__, __LINE__); + caselog('cp -f apps/bastille-ipchains /sbin', __FILE__, __LINE__); + caselog('chmod 700 /sbin/bastille-ipchains', __FILE__, __LINE__); + + if(is_file('/sbin/bastille-netfilter')) caselog('mv -f /sbin/bastille-netfilter /sbin/bastille-netfilter.backup', __FILE__, __LINE__); + caselog('cp -f apps/bastille-netfilter /sbin', __FILE__, __LINE__); + caselog('chmod 700 /sbin/bastille-netfilter', __FILE__, __LINE__); + + if(!@is_dir('/var/lock/subsys')) caselog('mkdir /var/lock/subsys', __FILE__, __LINE__); + + exec('which ipchains &> /dev/null', $ipchains_location, $ret_val); + if(!is_file('/sbin/ipchains') && !is_link('/sbin/ipchains') && $ret_val == 0) phpcaselog(@symlink(shell_exec('which ipchains'), '/sbin/ipchains'), 'create symlink', __FILE__, __LINE__); + unset($ipchains_location); + exec('which iptables &> /dev/null', $iptables_location, $ret_val); + if(!is_file('/sbin/iptables') && !is_link('/sbin/iptables') && $ret_val == 0) phpcaselog(@symlink(trim(shell_exec('which iptables')), '/sbin/iptables'), 'create symlink', __FILE__, __LINE__); + unset($iptables_location); + + } + + public function configure_vlogger() { + global $conf; + + //** Configure vlogger to use traffic logging to mysql (master) db + $configfile = 'vlogger-dbi.conf'; + if(is_file($conf['vlogger']['config_dir'].'/'.$configfile)) copy($conf['vlogger']['config_dir'].'/'.$configfile, $conf['vlogger']['config_dir'].'/'.$configfile.'~'); + if(is_file($conf['vlogger']['config_dir'].'/'.$configfile.'~')) chmod($conf['vlogger']['config_dir'].'/'.$configfile.'~', 0400); + $content = rfsel($conf['ispconfig_install_dir'].'/server/conf-custom/install/'.$configfile.'.master', 'tpl/'.$configfile.'.master'); + if($conf['mysql']['master_slave_setup'] == 'y') { + $content = str_replace('{mysql_server_ispconfig_user}', $conf['mysql']['master_ispconfig_user'], $content); + $content = str_replace('{mysql_server_ispconfig_password}', $conf['mysql']['master_ispconfig_password'], $content); + $content = str_replace('{mysql_server_database}', $conf['mysql']['master_database'], $content); + $content = str_replace('{mysql_server_ip}', $conf['mysql']['master_host'], $content); + } else { + $content = str_replace('{mysql_server_ispconfig_user}', $conf['mysql']['ispconfig_user'], $content); + $content = str_replace('{mysql_server_ispconfig_password}', $conf['mysql']['ispconfig_password'], $content); + $content = str_replace('{mysql_server_database}', $conf['mysql']['database'], $content); + $content = str_replace('{mysql_server_ip}', $conf['mysql']['ip'], $content); + } + wf($conf['vlogger']['config_dir'].'/'.$configfile, $content); + chmod($conf['vlogger']['config_dir'].'/'.$configfile, 0600); + chown($conf['vlogger']['config_dir'].'/'.$configfile, 'root'); + chgrp($conf['vlogger']['config_dir'].'/'.$configfile, 'root'); + + } + + public function configure_apps_vhost() { + global $conf; + + //* Create the ispconfig apps vhost user and group + if($conf['apache']['installed'] == true){ + $apps_vhost_user = escapeshellcmd($conf['web']['apps_vhost_user']); + $apps_vhost_group = escapeshellcmd($conf['web']['apps_vhost_group']); + $install_dir = escapeshellcmd($conf['web']['website_basedir'].'/apps'); + + $command = 'groupadd '.$apps_vhost_user; + if(!is_group($apps_vhost_group)) caselog($command.' &> /dev/null 2> /dev/null', __FILE__, __LINE__, "EXECUTED: $command", "Failed to execute the command $command"); + + $command = 'useradd -g '.$apps_vhost_group.' -d '.$install_dir.' '.$apps_vhost_group; + if(!is_user($apps_vhost_user)) caselog($command.' &> /dev/null 2> /dev/null', __FILE__, __LINE__, "EXECUTED: $command", "Failed to execute the command $command"); + + + //$command = 'adduser '.$conf['apache']['user'].' '.$apps_vhost_group; + $command = 'usermod -a -G '.$apps_vhost_group.' '.$conf['apache']['user']; + caselog($command.' &> /dev/null', __FILE__, __LINE__, "EXECUTED: $command", "Failed to execute the command $command"); + + if(!@is_dir($install_dir)){ + mkdir($install_dir, 0755, true); + } else { + chmod($install_dir, 0755); + } + chown($install_dir, $apps_vhost_user); + chgrp($install_dir, $apps_vhost_group); + + //* Copy the apps vhost file + $vhost_conf_dir = $conf['apache']['vhost_conf_dir']; + $vhost_conf_enabled_dir = $conf['apache']['vhost_conf_enabled_dir']; + $apps_vhost_servername = ($conf['web']['apps_vhost_servername'] == '')?'':'ServerName '.$conf['web']['apps_vhost_servername']; + + //* Get the apps vhost port + if($this->is_update == true) { + $conf['web']['apps_vhost_port'] = get_apps_vhost_port_number(); + } + + // Dont just copy over the virtualhost template but add some custom settings + $tpl = new tpl('apache_apps.vhost.master'); + $tpl->setVar('apps_vhost_ip',$conf['web']['apps_vhost_ip']); + $tpl->setVar('apps_vhost_port',$conf['web']['apps_vhost_port']); + $tpl->setVar('apps_vhost_dir',$conf['web']['website_basedir'].'/apps'); + $tpl->setVar('apps_vhost_basedir',$conf['web']['website_basedir']); + $tpl->setVar('apps_vhost_servername',$apps_vhost_servername); + $tpl->setVar('apache_version',getapacheversion()); + if($this->is_update == true) { + $tpl->setVar('logging',get_logging_state()); + } else { + $tpl->setVar('logging','yes'); + } + + + // comment out the listen directive if port is 80 or 443 + if($conf['web']['apps_vhost_ip'] == 80 or $conf['web']['apps_vhost_ip'] == 443) { + $tpl->setVar('vhost_port_listen','#'); + } else { + $tpl->setVar('vhost_port_listen',''); + } + + wf($vhost_conf_dir.'/apps.vhost', $tpl->grab()); + unset($tpl); + + //copy('tpl/apache_ispconfig.vhost.master', "$vhost_conf_dir/ispconfig.vhost"); + //* and create the symlink + if(@is_link($vhost_conf_enabled_dir.'/apps.vhost')) unlink($vhost_conf_enabled_dir.'/apps.vhost'); + if(!@is_link($vhost_conf_enabled_dir.'/000-apps.vhost') && @is_file($vhost_conf_dir.'/apps.vhost')) { + @symlink($vhost_conf_dir.'/apps.vhost', $vhost_conf_enabled_dir.'/000-apps.vhost'); + } + + if(!is_file($conf['web']['website_basedir'].'/php-fcgi-scripts/apps/.php-fcgi-starter')) { + $content = rfsel($conf['ispconfig_install_dir'].'/server/conf-custom/install/apache_apps_fcgi_starter.master', 'tpl/apache_apps_fcgi_starter.master'); + $content = str_replace('{fastcgi_bin}', $conf['fastcgi']['fastcgi_bin'], $content); + $content = str_replace('{fastcgi_phpini_path}', $conf['fastcgi']['fastcgi_phpini_path'], $content); + mkdir($conf['web']['website_basedir'].'/php-fcgi-scripts/apps', 0755, true); + //copy('tpl/apache_apps_fcgi_starter.master',$conf['web']['website_basedir'].'/php-fcgi-scripts/apps/.php-fcgi-starter'); + wf($conf['web']['website_basedir'].'/php-fcgi-scripts/apps/.php-fcgi-starter', $content); + exec('chmod +x '.$conf['web']['website_basedir'].'/php-fcgi-scripts/apps/.php-fcgi-starter'); + exec('chown -R ispapps:ispapps '.$conf['web']['website_basedir'].'/php-fcgi-scripts/apps'); + + } + } + if($conf['nginx']['installed'] == true){ + $apps_vhost_user = escapeshellcmd($conf['web']['apps_vhost_user']); + $apps_vhost_group = escapeshellcmd($conf['web']['apps_vhost_group']); + $install_dir = escapeshellcmd($conf['web']['website_basedir'].'/apps'); + + $command = 'groupadd '.$apps_vhost_user; + if(!is_group($apps_vhost_group)) caselog($command.' &> /dev/null 2> /dev/null', __FILE__, __LINE__, "EXECUTED: $command", "Failed to execute the command $command"); + + $command = 'useradd -g '.$apps_vhost_group.' -d '.$install_dir.' '.$apps_vhost_group; + if(!is_user($apps_vhost_user)) caselog($command.' &> /dev/null 2> /dev/null', __FILE__, __LINE__, "EXECUTED: $command", "Failed to execute the command $command"); + + + //$command = 'adduser '.$conf['nginx']['user'].' '.$apps_vhost_group; + $command = 'usermod -a -G '.$apps_vhost_group.' '.$conf['nginx']['user']; + caselog($command.' &> /dev/null', __FILE__, __LINE__, "EXECUTED: $command", "Failed to execute the command $command"); + + if(!@is_dir($install_dir)){ + mkdir($install_dir, 0755, true); + } else { + chmod($install_dir, 0755); + } + chown($install_dir, $apps_vhost_user); + chgrp($install_dir, $apps_vhost_group); + + //* Copy the apps vhost file + $vhost_conf_dir = $conf['nginx']['vhost_conf_dir']; + $vhost_conf_enabled_dir = $conf['nginx']['vhost_conf_enabled_dir']; + $apps_vhost_servername = ($conf['web']['apps_vhost_servername'] == '')?'_':$conf['web']['apps_vhost_servername']; + + // Dont just copy over the virtualhost template but add some custom settings + $content = rfsel($conf['ispconfig_install_dir'].'/server/conf-custom/install/nginx_apps.vhost.master', 'tpl/nginx_apps.vhost.master'); + + if($conf['web']['apps_vhost_ip'] == '_default_'){ + $apps_vhost_ip = ''; + } else { + $apps_vhost_ip = $conf['web']['apps_vhost_ip'].':'; + } + + $socket_dir = escapeshellcmd($conf['nginx']['php_fpm_socket_dir']); + if(substr($socket_dir, -1) != '/') $socket_dir .= '/'; + if(!is_dir($socket_dir)) exec('mkdir -p '.$socket_dir); + $fpm_socket = $socket_dir.'apps.sock'; + $cgi_socket = escapeshellcmd($conf['nginx']['cgi_socket']); + + $content = str_replace('{apps_vhost_ip}', $apps_vhost_ip, $content); + $content = str_replace('{apps_vhost_port}', $conf['web']['apps_vhost_port'], $content); + $content = str_replace('{apps_vhost_dir}', $conf['web']['website_basedir'].'/apps', $content); + $content = str_replace('{apps_vhost_servername}', $apps_vhost_servername, $content); + //$content = str_replace('{fpm_port}', ($conf['nginx']['php_fpm_start_port']+1), $content); + $content = str_replace('{fpm_socket}', $fpm_socket, $content); + $content = str_replace('{cgi_socket}', $cgi_socket, $content); + + if( file_exists('/var/run/php5-fpm.sock') + || file_exists('/var/run/php/php7.0-fpm.sock') + || file_exists('/var/run/php/php7.1-fpm.sock') + || file_exists('/var/run/php/php7.2-fpm.sock') + || file_exists('/var/run/php/php7.3-fpm.sock') + ){ + $use_tcp = '#'; + $use_socket = ''; + } else { + $use_tcp = ''; + $use_socket = '#'; + } + $content = str_replace('{use_tcp}', $use_tcp, $content); + $content = str_replace('{use_socket}', $use_socket, $content); + + // SSL in apps vhost is off by default. Might change later. + $content = str_replace('{ssl_on}', '', $content); + $content = str_replace('{ssl_comment}', '#', $content); + + // Fix socket path on PHP 7 systems + if(file_exists('/var/run/php/php7.0-fpm.sock')) $content = str_replace('/var/run/php5-fpm.sock', '/var/run/php/php7.0-fpm.sock', $content); + if(file_exists('/var/run/php/php7.1-fpm.sock')) $content = str_replace('/var/run/php5-fpm.sock', '/var/run/php/php7.1-fpm.sock', $content); + if(file_exists('/var/run/php/php7.2-fpm.sock')) $content = str_replace('/var/run/php5-fpm.sock', '/var/run/php/php7.2-fpm.sock', $content); + + wf($vhost_conf_dir.'/apps.vhost', $content); + + // PHP-FPM + // Dont just copy over the php-fpm pool template but add some custom settings + $content = rfsel($conf['ispconfig_install_dir'].'/server/conf-custom/install/apps_php_fpm_pool.conf.master', 'tpl/apps_php_fpm_pool.conf.master'); + $content = str_replace('{fpm_pool}', 'apps', $content); + //$content = str_replace('{fpm_port}', ($conf['nginx']['php_fpm_start_port']+1), $content); + $content = str_replace('{fpm_socket}', $fpm_socket, $content); + $content = str_replace('{fpm_user}', $apps_vhost_user, $content); + $content = str_replace('{fpm_group}', $apps_vhost_group, $content); + wf($conf['nginx']['php_fpm_pool_dir'].'/apps.conf', $content); + + //copy('tpl/nginx_ispconfig.vhost.master', "$vhost_conf_dir/ispconfig.vhost"); + //* and create the symlink + if(@is_link($vhost_conf_enabled_dir.'/apps.vhost')) unlink($vhost_conf_enabled_dir.'/apps.vhost'); + if(!@is_link($vhost_conf_enabled_dir.'/000-apps.vhost')) { + symlink($vhost_conf_dir.'/apps.vhost', $vhost_conf_enabled_dir.'/000-apps.vhost'); + } + + } + } + + public function make_ispconfig_ssl_cert() { + global $conf,$autoinstall; + + $install_dir = $conf['ispconfig_install_dir']; + + $ssl_crt_file = $install_dir.'/interface/ssl/ispserver.crt'; + $ssl_csr_file = $install_dir.'/interface/ssl/ispserver.csr'; + $ssl_key_file = $install_dir.'/interface/ssl/ispserver.key'; + + if(!@is_dir($install_dir.'/interface/ssl')) mkdir($install_dir.'/interface/ssl', 0755, true); + + $ssl_pw = substr(md5(mt_rand()), 0, 6); + exec("openssl genrsa -des3 -passout pass:$ssl_pw -out $ssl_key_file 4096"); + if(AUTOINSTALL){ + exec("openssl req -new -passin pass:$ssl_pw -passout pass:$ssl_pw -subj '/C=".escapeshellcmd($autoinstall['ssl_cert_country'])."/ST=".escapeshellcmd($autoinstall['ssl_cert_state'])."/L=".escapeshellcmd($autoinstall['ssl_cert_locality'])."/O=".escapeshellcmd($autoinstall['ssl_cert_organisation'])."/OU=".escapeshellcmd($autoinstall['ssl_cert_organisation_unit'])."/CN=".escapeshellcmd($autoinstall['ssl_cert_common_name'])."' -key $ssl_key_file -out $ssl_csr_file"); + } else { + exec("openssl req -new -passin pass:$ssl_pw -passout pass:$ssl_pw -key $ssl_key_file -out $ssl_csr_file"); + } + exec("openssl req -x509 -passin pass:$ssl_pw -passout pass:$ssl_pw -key $ssl_key_file -in $ssl_csr_file -out $ssl_crt_file -days 3650"); + exec("openssl rsa -passin pass:$ssl_pw -in $ssl_key_file -out $ssl_key_file.insecure"); + rename($ssl_key_file, $ssl_key_file.'.secure'); + rename($ssl_key_file.'.insecure', $ssl_key_file); + + exec('chown -R root:root /usr/local/ispconfig/interface/ssl'); + + } + + public function install_ispconfig() { + global $conf; + + $install_dir = $conf['ispconfig_install_dir']; + + //* Create the ISPConfig installation directory + if(!@is_dir($install_dir)) { + $command = "mkdir $install_dir"; + caselog($command.' &> /dev/null', __FILE__, __LINE__, "EXECUTED: $command", "Failed to execute the command $command"); + } + + //* Create a ISPConfig user and group + $command = 'groupadd ispconfig'; + if(!is_group('ispconfig')) caselog($command.' &> /dev/null 2> /dev/null', __FILE__, __LINE__, "EXECUTED: $command", "Failed to execute the command $command"); + + $command = 'useradd -g ispconfig -d '.$install_dir.' ispconfig'; + if(!is_user('ispconfig')) caselog($command.' &> /dev/null 2> /dev/null', __FILE__, __LINE__, "EXECUTED: $command", "Failed to execute the command $command"); + + //* copy the ISPConfig interface part + $command = 'cp -rf ../interface '.$install_dir; + caselog($command.' &> /dev/null', __FILE__, __LINE__, "EXECUTED: $command", "Failed to execute the command $command"); + + //* copy the ISPConfig server part + $command = 'cp -rf ../server '.$install_dir; + caselog($command.' &> /dev/null', __FILE__, __LINE__, "EXECUTED: $command", "Failed to execute the command $command"); + + //* Make a backup of the security settings + if(is_file('/usr/local/ispconfig/security/security_settings.ini')) copy('/usr/local/ispconfig/security/security_settings.ini','/usr/local/ispconfig/security/security_settings.ini~'); + + //* copy the ISPConfig security part + $command = 'cp -rf ../security '.$install_dir; + caselog($command.' &> /dev/null', __FILE__, __LINE__, "EXECUTED: $command", "Failed to execute the command $command"); + + //* Apply changed security_settings.ini values to new security_settings.ini file + if(is_file('/usr/local/ispconfig/security/security_settings.ini~')) { + $security_settings_old = ini_to_array(file_get_contents('/usr/local/ispconfig/security/security_settings.ini~')); + $security_settings_new = ini_to_array(file_get_contents('/usr/local/ispconfig/security/security_settings.ini')); + if(is_array($security_settings_new) && is_array($security_settings_old)) { + foreach($security_settings_new as $section => $sval) { + if(is_array($sval)) { + foreach($sval as $key => $val) { + if(isset($security_settings_old[$section]) && isset($security_settings_old[$section][$key])) { + $security_settings_new[$section][$key] = $security_settings_old[$section][$key]; + } + } + } + } + file_put_contents('/usr/local/ispconfig/security/security_settings.ini',array_to_ini($security_settings_new)); + } + } + + //* Create a symlink, so ISPConfig is accessible via web + // Replaced by a separate vhost definition for port 8080 + // $command = "ln -s $install_dir/interface/web/ /var/www/ispconfig"; + // caselog($command.' &> /dev/null', __FILE__, __LINE__, "EXECUTED: $command", "Failed to execute the command $command"); + + //* Create the config file for ISPConfig interface + $configfile = 'config.inc.php'; + if(is_file($install_dir.'/interface/lib/'.$configfile)) { + copy($install_dir.'/interface/lib/'.$configfile, $install_dir.'/interface/lib/'.$configfile.'~'); + } + $content = rfsel($conf['ispconfig_install_dir'].'/server/conf-custom/install/'.$configfile.'.master', 'tpl/'.$configfile.'.master'); + $content = str_replace('{mysql_server_ispconfig_user}', $conf['mysql']['ispconfig_user'], $content); + $content = str_replace('{mysql_server_ispconfig_password}', $conf['mysql']['ispconfig_password'], $content); + $content = str_replace('{mysql_server_database}', $conf['mysql']['database'], $content); + $content = str_replace('{mysql_server_host}', $conf['mysql']['host'], $content); + $content = str_replace('{mysql_server_port}', $conf['mysql']['port'], $content); + + $content = str_replace('{mysql_master_server_ispconfig_user}', $conf['mysql']['master_ispconfig_user'], $content); + $content = str_replace('{mysql_master_server_ispconfig_password}', $conf['mysql']['master_ispconfig_password'], $content); + $content = str_replace('{mysql_master_server_database}', $conf['mysql']['master_database'], $content); + $content = str_replace('{mysql_master_server_host}', $conf['mysql']['master_host'], $content); + $content = str_replace('{mysql_master_server_port}', $conf['mysql']['master_port'], $content); + + $content = str_replace('{server_id}', $conf['server_id'], $content); + $content = str_replace('{ispconfig_log_priority}', $conf['ispconfig_log_priority'], $content); + $content = str_replace('{language}', $conf['language'], $content); + $content = str_replace('{timezone}', $conf['timezone'], $content); + $content = str_replace('{theme}', $conf['theme'], $content); + $content = str_replace('{language_file_import_enabled}', ($conf['language_file_import_enabled'] == true)?'true':'false', $content); + + wf($install_dir.'/interface/lib/'.$configfile, $content); + + //* Create the config file for ISPConfig server + $configfile = 'config.inc.php'; + if(is_file($install_dir.'/server/lib/'.$configfile)) { + copy($install_dir.'/server/lib/'.$configfile, $install_dir.'/interface/lib/'.$configfile.'~'); + } + $content = rfsel($conf['ispconfig_install_dir'].'/server/conf-custom/install/'.$configfile.'.master', 'tpl/'.$configfile.'.master'); + $content = str_replace('{mysql_server_ispconfig_user}', $conf['mysql']['ispconfig_user'], $content); + $content = str_replace('{mysql_server_ispconfig_password}', $conf['mysql']['ispconfig_password'], $content); + $content = str_replace('{mysql_server_database}', $conf['mysql']['database'], $content); + $content = str_replace('{mysql_server_host}', $conf['mysql']['host'], $content); + $content = str_replace('{mysql_server_port}', $conf['mysql']['port'], $content); + + $content = str_replace('{mysql_master_server_ispconfig_user}', $conf['mysql']['master_ispconfig_user'], $content); + $content = str_replace('{mysql_master_server_ispconfig_password}', $conf['mysql']['master_ispconfig_password'], $content); + $content = str_replace('{mysql_master_server_database}', $conf['mysql']['master_database'], $content); + $content = str_replace('{mysql_master_server_host}', $conf['mysql']['master_host'], $content); + $content = str_replace('{mysql_master_server_port}', $conf['mysql']['master_port'], $content); + + $content = str_replace('{server_id}', $conf['server_id'], $content); + $content = str_replace('{ispconfig_log_priority}', $conf['ispconfig_log_priority'], $content); + $content = str_replace('{language}', $conf['language'], $content); + $content = str_replace('{timezone}', $conf['timezone'], $content); + $content = str_replace('{theme}', $conf['theme'], $content); + $content = str_replace('{language_file_import_enabled}', ($conf['language_file_import_enabled'] == true)?'true':'false', $content); + + wf($install_dir.'/server/lib/'.$configfile, $content); + + //* Create the config file for remote-actions (but only, if it does not exist, because + // the value is a autoinc-value and so changed by the remoteaction_core_module + if (!file_exists($install_dir.'/server/lib/remote_action.inc.php')) { + $content = '<?php' . "\n" . '$maxid_remote_action = 0;' . "\n" . '?>'; + wf($install_dir.'/server/lib/remote_action.inc.php', $content); + } + + //* Enable the server modules and plugins. + // TODO: Implement a selector which modules and plugins shall be enabled. + $dir = $install_dir.'/server/mods-available/'; + if (is_dir($dir)) { + if ($dh = opendir($dir)) { + while (($file = readdir($dh)) !== false) { + if($file != '.' && $file != '..' && substr($file, -8, 8) == '.inc.php') { + include_once $install_dir.'/server/mods-available/'.$file; + $module_name = substr($file, 0, -8); + $tmp = new $module_name; + if($tmp->onInstall()) { + if(!@is_link($install_dir.'/server/mods-enabled/'.$file)) { + @symlink($install_dir.'/server/mods-available/'.$file, $install_dir.'/server/mods-enabled/'.$file); + // @symlink($install_dir.'/server/mods-available/'.$file, '../mods-enabled/'.$file); + } + if (strpos($file, '_core_module') !== false) { + if(!@is_link($install_dir.'/server/mods-core/'.$file)) { + @symlink($install_dir.'/server/mods-available/'.$file, $install_dir.'/server/mods-core/'.$file); + // @symlink($install_dir.'/server/mods-available/'.$file, '../mods-core/'.$file); + } + } + } + unset($tmp); + } + } + closedir($dh); + } + } + + $dir = $install_dir.'/server/plugins-available/'; + if (is_dir($dir)) { + if ($dh = opendir($dir)) { + while (($file = readdir($dh)) !== false) { + if($conf['apache']['installed'] == true && $file == 'nginx_plugin.inc.php') continue; + if($conf['nginx']['installed'] == true && $file == 'apache2_plugin.inc.php') continue; + if($file != '.' && $file != '..' && substr($file, -8, 8) == '.inc.php') { + include_once $install_dir.'/server/plugins-available/'.$file; + $plugin_name = substr($file, 0, -8); + $tmp = new $plugin_name; + if(method_exists($tmp, 'onInstall') && $tmp->onInstall()) { + if(!@is_link($install_dir.'/server/plugins-enabled/'.$file)) { + @symlink($install_dir.'/server/plugins-available/'.$file, $install_dir.'/server/plugins-enabled/'.$file); + //@symlink($install_dir.'/server/plugins-available/'.$file, '../plugins-enabled/'.$file); + } + if (strpos($file, '_core_plugin') !== false) { + if(!@is_link($install_dir.'/server/plugins-core/'.$file)) { + @symlink($install_dir.'/server/plugins-available/'.$file, $install_dir.'/server/plugins-core/'.$file); + //@symlink($install_dir.'/server/plugins-available/'.$file, '../plugins-core/'.$file); + } + } + } + unset($tmp); + } + } + closedir($dh); + } + } + + // Update the server config + $mail_server_enabled = ($conf['services']['mail'])?1:0; + $web_server_enabled = ($conf['services']['web'])?1:0; + $dns_server_enabled = ($conf['services']['dns'])?1:0; + $file_server_enabled = ($conf['services']['file'])?1:0; + $db_server_enabled = ($conf['services']['db'])?1:0; + $vserver_server_enabled = ($conf['openvz']['installed'])?1:0; + $proxy_server_enabled = ($conf['services']['proxy'])?1:0; + $firewall_server_enabled = ($conf['services']['firewall'])?1:0; + $xmpp_server_enabled = ($conf['services']['xmpp'])?1:0; + + $sql = "UPDATE `server` SET mail_server = '$mail_server_enabled', web_server = '$web_server_enabled', dns_server = '$dns_server_enabled', file_server = '$file_server_enabled', db_server = '$db_server_enabled', vserver_server = '$vserver_server_enabled', proxy_server = '$proxy_server_enabled', firewall_server = '$firewall_server_enabled', xmpp_server = '$xmpp_server_enabled' WHERE server_id = ?"; + + $this->db->query($sql, $conf['server_id']); + if($conf['mysql']['master_slave_setup'] == 'y') { + $this->dbmaster->query($sql, $conf['server_id']); + } + + + // chown install dir to root and chmod 755 + $command = 'chown root:root '.$install_dir; + caselog($command.' &> /dev/null', __FILE__, __LINE__, "EXECUTED: $command", "Failed to execute the command $command"); + $command = 'chmod 755 '.$install_dir; + caselog($command.' &> /dev/null', __FILE__, __LINE__, "EXECUTED: $command", "Failed to execute the command $command"); + + //* Chmod the files and directories in the install dir + $command = 'chmod -R 750 '.$install_dir.'/*'; + caselog($command.' &> /dev/null', __FILE__, __LINE__, "EXECUTED: $command", "Failed to execute the command $command"); + + //* chown the interface files to the ispconfig user and group + $command = 'chown -R ispconfig:ispconfig '.$install_dir.'/interface'; + caselog($command.' &> /dev/null', __FILE__, __LINE__, "EXECUTED: $command", "Failed to execute the command $command"); + + //* Chmod the files and directories in the acme dir + $command = 'chmod -R 755 '.$install_dir.'/interface/acme'; + caselog($command.' &> /dev/null', __FILE__, __LINE__, "EXECUTED: $command", "Failed to execute the command $command"); + + //* chown the server files to the root user and group + $command = 'chown -R root:root '.$install_dir.'/server'; + caselog($command.' &> /dev/null', __FILE__, __LINE__, "EXECUTED: $command", "Failed to execute the command $command"); + + //* chown the security files to the root user and group + $command = 'chown -R root:root '.$install_dir.'/security'; + caselog($command.' &> /dev/null', __FILE__, __LINE__, "EXECUTED: $command", "Failed to execute the command $command"); + + //* chown the security directory and security_settings.ini to root:ispconfig + $command = 'chown root:ispconfig '.$install_dir.'/security/security_settings.ini'; + caselog($command.' &> /dev/null', __FILE__, __LINE__, "EXECUTED: $command", "Failed to execute the command $command"); + $command = 'chown root:ispconfig '.$install_dir.'/security'; + caselog($command.' &> /dev/null', __FILE__, __LINE__, "EXECUTED: $command", "Failed to execute the command $command"); + $command = 'chown root:ispconfig '.$install_dir.'/security/ids.whitelist'; + caselog($command.' &> /dev/null', __FILE__, __LINE__, "EXECUTED: $command", "Failed to execute the command $command"); + $command = 'chown root:ispconfig '.$install_dir.'/security/ids.htmlfield'; + caselog($command.' &> /dev/null', __FILE__, __LINE__, "EXECUTED: $command", "Failed to execute the command $command"); + $command = 'chown root:ispconfig '.$install_dir.'/security/apache_directives.blacklist'; + caselog($command.' &> /dev/null', __FILE__, __LINE__, "EXECUTED: $command", "Failed to execute the command $command"); + $command = 'chown root:ispconfig '.$install_dir.'/security/nginx_directives.blacklist'; + caselog($command.' &> /dev/null', __FILE__, __LINE__, "EXECUTED: $command", "Failed to execute the command $command"); + + //* Make the global language file directory group writable + exec("chmod -R 770 $install_dir/interface/lib/lang"); + + //* Make the temp directory for language file exports writable + if(is_dir($install_dir.'/interface/web/temp')) exec("chmod -R 770 $install_dir/interface/web/temp"); + + //* Make all interface language file directories group writable + $handle = @opendir($install_dir.'/interface/web'); + while ($file = @readdir($handle)) { + if ($file != '.' && $file != '..') { + if(@is_dir($install_dir.'/interface/web'.'/'.$file.'/lib/lang')) { + $handle2 = opendir($install_dir.'/interface/web'.'/'.$file.'/lib/lang'); + chmod($install_dir.'/interface/web'.'/'.$file.'/lib/lang', 0770); + while ($lang_file = @readdir($handle2)) { + if ($lang_file != '.' && $lang_file != '..') { + chmod($install_dir.'/interface/web'.'/'.$file.'/lib/lang/'.$lang_file, 0770); + } + } + } + } + } + + //* Make the APS directories group writable + exec("chmod -R 770 $install_dir/interface/web/sites/aps_meta_packages"); + exec("chmod -R 770 $install_dir/server/aps_packages"); + + //* make sure that the server config file (not the interface one) is only readable by the root user + chmod($install_dir.'/server/lib/config.inc.php', 0600); + chown($install_dir.'/server/lib/config.inc.php', 'root'); + chgrp($install_dir.'/server/lib/config.inc.php', 'root'); + + //* Make sure thet the interface config file is readable by user ispconfig only + chmod($install_dir.'/interface/lib/config.inc.php', 0600); + chown($install_dir.'/interface/lib/config.inc.php', 'ispconfig'); + chgrp($install_dir.'/interface/lib/config.inc.php', 'ispconfig'); + + chmod($install_dir.'/server/lib/remote_action.inc.php', 0600); + chown($install_dir.'/server/lib/remote_action.inc.php', 'root'); + chgrp($install_dir.'/server/lib/remote_action.inc.php', 'root'); + + if(@is_file($install_dir.'/server/lib/mysql_clientdb.conf')) { + chmod($install_dir.'/server/lib/mysql_clientdb.conf', 0600); + chown($install_dir.'/server/lib/mysql_clientdb.conf', 'root'); + chgrp($install_dir.'/server/lib/mysql_clientdb.conf', 'root'); + } + + if(is_dir($install_dir.'/interface/invoices')) { + exec('chmod -R 770 '.escapeshellarg($install_dir.'/interface/invoices')); + exec('chown -R ispconfig:ispconfig '.escapeshellarg($install_dir.'/interface/invoices')); + } + + exec('chown -R root:root /usr/local/ispconfig/interface/ssl'); + + // TODO: FIXME: add the www-data user to the ispconfig group. This is just for testing + // and must be fixed as this will allow the apache user to read the ispconfig files. + // Later this must run as own apache server or via suexec! + if($conf['apache']['installed'] == true){ + $command = 'adduser '.$conf['apache']['user'].' ispconfig'; + caselog($command.' &> /dev/null', __FILE__, __LINE__, "EXECUTED: $command", "Failed to execute the command $command"); + if(is_group('ispapps')){ + $command = 'adduser '.$conf['apache']['user'].' ispapps'; + caselog($command.' &> /dev/null', __FILE__, __LINE__, "EXECUTED: $command", "Failed to execute the command $command"); + } + } + if($conf['nginx']['installed'] == true){ + $command = 'adduser '.$conf['nginx']['user'].' ispconfig'; + caselog($command.' &> /dev/null', __FILE__, __LINE__, "EXECUTED: $command", "Failed to execute the command $command"); + if(is_group('ispapps')){ + $command = 'adduser '.$conf['nginx']['user'].' ispapps'; + caselog($command.' &> /dev/null', __FILE__, __LINE__, "EXECUTED: $command", "Failed to execute the command $command"); + } + } + + //* Make the shell scripts executable + $command = "chmod +x $install_dir/server/scripts/*.sh"; + caselog($command.' &> /dev/null', __FILE__, __LINE__, "EXECUTED: $command", "Failed to execute the command $command"); + + if ($this->install_ispconfig_interface == true && isset($conf['interface_password']) && $conf['interface_password']!='admin') { + $sql = "UPDATE sys_user SET passwort = md5(?) WHERE username = 'admin';"; + $this->db->query($sql, $conf['interface_password']); + } + + if($conf['apache']['installed'] == true && $this->install_ispconfig_interface == true){ + //* Copy the ISPConfig vhost for the controlpanel + $vhost_conf_dir = $conf['apache']['vhost_conf_dir']; + $vhost_conf_enabled_dir = $conf['apache']['vhost_conf_enabled_dir']; + + // Dont just copy over the virtualhost template but add some custom settings + $tpl = new tpl('apache_ispconfig.vhost.master'); + $tpl->setVar('vhost_port',$conf['apache']['vhost_port']); + + // comment out the listen directive if port is 80 or 443 + if($conf['apache']['vhost_port'] == 80 or $conf['apache']['vhost_port'] == 443) { + $tpl->setVar('vhost_port_listen','#'); + } else { + $tpl->setVar('vhost_port_listen',''); + } + + if(is_file($install_dir.'/interface/ssl/ispserver.crt') && is_file($install_dir.'/interface/ssl/ispserver.key')) { + $tpl->setVar('ssl_comment',''); + } else { + $tpl->setVar('ssl_comment','#'); + } + if(is_file($install_dir.'/interface/ssl/ispserver.crt') && is_file($install_dir.'/interface/ssl/ispserver.key') && is_file($install_dir.'/interface/ssl/ispserver.bundle')) { + $tpl->setVar('ssl_bundle_comment',''); + } else { + $tpl->setVar('ssl_bundle_comment','#'); + } + + $tpl->setVar('apache_version',getapacheversion()); + + wf($vhost_conf_dir.'/ispconfig.vhost', $tpl->grab()); + + //* and create the symlink + if($this->is_update == false) { + if(@is_link($vhost_conf_enabled_dir.'/ispconfig.vhost')) unlink($vhost_conf_enabled_dir.'/ispconfig.vhost'); + if(!@is_link($vhost_conf_enabled_dir.'/000-ispconfig.vhost')) { + symlink($vhost_conf_dir.'/ispconfig.vhost', $vhost_conf_enabled_dir.'/000-ispconfig.vhost'); + } + } + //if(!is_file('/var/www/php-fcgi-scripts/ispconfig/.php-fcgi-starter')) { + $content = rfsel($conf['ispconfig_install_dir'].'/server/conf-custom/install/apache_ispconfig_fcgi_starter.master', 'tpl/apache_ispconfig_fcgi_starter.master'); + $content = str_replace('{fastcgi_bin}', $conf['fastcgi']['fastcgi_bin'], $content); + $content = str_replace('{fastcgi_phpini_path}', $conf['fastcgi']['fastcgi_phpini_path'], $content); + @mkdir('/var/www/php-fcgi-scripts/ispconfig', 0755, true); + wf('/var/www/php-fcgi-scripts/ispconfig/.php-fcgi-starter', $content); + exec('chmod +x /var/www/php-fcgi-scripts/ispconfig/.php-fcgi-starter'); + @symlink($install_dir.'/interface/web', '/var/www/ispconfig'); + exec('chown -R ispconfig:ispconfig /var/www/php-fcgi-scripts/ispconfig'); + //} + } + + if($conf['nginx']['installed'] == true && $this->install_ispconfig_interface == true){ + //* Copy the ISPConfig vhost for the controlpanel + $vhost_conf_dir = $conf['nginx']['vhost_conf_dir']; + $vhost_conf_enabled_dir = $conf['nginx']['vhost_conf_enabled_dir']; + + // Dont just copy over the virtualhost template but add some custom settings + $content = rfsel($conf['ispconfig_install_dir'].'/server/conf-custom/install/nginx_ispconfig.vhost.master', 'tpl/nginx_ispconfig.vhost.master'); + $content = str_replace('{vhost_port}', $conf['nginx']['vhost_port'], $content); + + if(is_file($install_dir.'/interface/ssl/ispserver.crt') && is_file($install_dir.'/interface/ssl/ispserver.key')) { + $content = str_replace('{ssl_on}', 'ssl', $content); + $content = str_replace('{ssl_comment}', '', $content); + $content = str_replace('{fastcgi_ssl}', 'on', $content); + } else { + $content = str_replace('{ssl_on}', '', $content); + $content = str_replace('{ssl_comment}', '#', $content); + $content = str_replace('{fastcgi_ssl}', 'off', $content); + } + + $socket_dir = escapeshellcmd($conf['nginx']['php_fpm_socket_dir']); + if(substr($socket_dir, -1) != '/') $socket_dir .= '/'; + if(!is_dir($socket_dir)) exec('mkdir -p '.$socket_dir); + $fpm_socket = $socket_dir.'ispconfig.sock'; + + //$content = str_replace('{fpm_port}', $conf['nginx']['php_fpm_start_port'], $content); + $content = str_replace('{fpm_socket}', $fpm_socket, $content); + + wf($vhost_conf_dir.'/ispconfig.vhost', $content); + + unset($content); + + // PHP-FPM + // Dont just copy over the php-fpm pool template but add some custom settings + $content = rfsel($conf['ispconfig_install_dir'].'/server/conf-custom/install/php_fpm_pool.conf.master', 'tpl/php_fpm_pool.conf.master'); + $content = str_replace('{fpm_pool}', 'ispconfig', $content); + //$content = str_replace('{fpm_port}', $conf['nginx']['php_fpm_start_port'], $content); + $content = str_replace('{fpm_socket}', $fpm_socket, $content); + $content = str_replace('{fpm_user}', 'ispconfig', $content); + $content = str_replace('{fpm_group}', 'ispconfig', $content); + wf($conf['nginx']['php_fpm_pool_dir'].'/ispconfig.conf', $content); + + //copy('tpl/nginx_ispconfig.vhost.master', $vhost_conf_dir.'/ispconfig.vhost'); + //* and create the symlink + if($this->is_update == false) { + if(@is_link($vhost_conf_enabled_dir.'/ispconfig.vhost')) unlink($vhost_conf_enabled_dir.'/ispconfig.vhost'); + if(!@is_link($vhost_conf_enabled_dir.'/000-ispconfig.vhost')) { + symlink($vhost_conf_dir.'/ispconfig.vhost', $vhost_conf_enabled_dir.'/000-ispconfig.vhost'); + } + } + } + + //* Install the update script + if(is_file('/usr/local/bin/ispconfig_update_from_dev.sh')) unlink('/usr/local/bin/ispconfig_update_from_dev.sh'); + chown($install_dir.'/server/scripts/update_from_dev.sh', 'root'); + chmod($install_dir.'/server/scripts/update_from_dev.sh', 0700); +// chown($install_dir.'/server/scripts/update_from_tgz.sh', 'root'); +// chmod($install_dir.'/server/scripts/update_from_tgz.sh', 0700); + chown($install_dir.'/server/scripts/ispconfig_update.sh', 'root'); + chmod($install_dir.'/server/scripts/ispconfig_update.sh', 0700); + if(!is_link('/usr/local/bin/ispconfig_update_from_dev.sh')) symlink($install_dir.'/server/scripts/ispconfig_update.sh', '/usr/local/bin/ispconfig_update_from_dev.sh'); + if(!is_link('/usr/local/bin/ispconfig_update.sh')) symlink($install_dir.'/server/scripts/ispconfig_update.sh', '/usr/local/bin/ispconfig_update.sh'); + + //* Make the logs readable for the ispconfig user + if(@is_file('/var/log/mail.log')) exec('chmod +r /var/log/mail.log'); + if(@is_file('/var/log/mail.warn')) exec('chmod +r /var/log/mail.warn'); + if(@is_file('/var/log/mail.err')) exec('chmod +r /var/log/mail.err'); + if(@is_file('/var/log/messages')) exec('chmod +r /var/log/messages'); + if(@is_file('/var/log/clamav/clamav.log')) exec('chmod +r /var/log/clamav/clamav.log'); + if(@is_file('/var/log/clamav/freshclam.log')) exec('chmod +r /var/log/clamav/freshclam.log'); + + //* Create the ispconfig log file and directory + if(!is_file($conf['ispconfig_log_dir'].'/ispconfig.log')) { + if(!is_dir($conf['ispconfig_log_dir'])) mkdir($conf['ispconfig_log_dir'], 0755); + touch($conf['ispconfig_log_dir'].'/ispconfig.log'); + } + + //* Create the ispconfig auth log file and set uid/gid + if(!is_file($conf['ispconfig_log_dir'].'/auth.log')) { + touch($conf['ispconfig_log_dir'].'/auth.log'); + } + exec('chown ispconfig:ispconfig '. $conf['ispconfig_log_dir'].'/auth.log'); + exec('chmod 660 '. $conf['ispconfig_log_dir'].'/auth.log'); + + if(is_user('getmail')) { + rename($install_dir.'/server/scripts/run-getmail.sh', '/usr/local/bin/run-getmail.sh'); + if(is_user('getmail')) chown('/usr/local/bin/run-getmail.sh', 'getmail'); + chmod('/usr/local/bin/run-getmail.sh', 0744); + } + + //* Add Log-Rotation + if (is_dir('/etc/logrotate.d')) { + @unlink('/etc/logrotate.d/logispc3'); // ignore, if the file is not there + /* We rotate these logs in cron_daily.php + $fh = fopen('/etc/logrotate.d/logispc3', 'w'); + fwrite($fh, + "$conf['ispconfig_log_dir']/ispconfig.log { \n" . + " weekly \n" . + " missingok \n" . + " rotate 4 \n" . + " compress \n" . + " delaycompress \n" . + "} \n" . + "$conf['ispconfig_log_dir']/cron.log { \n" . + " weekly \n" . + " missingok \n" . + " rotate 4 \n" . + " compress \n" . + " delaycompress \n" . + "}"); + fclose($fh); + */ + } + + //* Remove Domain module as its functions are available in the client module now + if(@is_dir('/usr/local/ispconfig/interface/web/domain')) exec('rm -rf /usr/local/ispconfig/interface/web/domain'); + + //* Disable rkhunter run and update in debian cronjob as ispconfig is running and updating rkhunter + if(is_file('/etc/default/rkhunter')) { + replaceLine('/etc/default/rkhunter', 'CRON_DAILY_RUN="yes"', 'CRON_DAILY_RUN="no"', 1, 0); + replaceLine('/etc/default/rkhunter', 'CRON_DB_UPDATE="yes"', 'CRON_DB_UPDATE="no"', 1, 0); + } + + // Add symlink for patch tool + if(!is_link('/usr/local/bin/ispconfig_patch')) exec('ln -s /usr/local/ispconfig/server/scripts/ispconfig_patch /usr/local/bin/ispconfig_patch'); + + // Change mode of a few files from amavisd + if(is_file($conf['amavis']['config_dir'].'/conf.d/50-user')) chmod($conf['amavis']['config_dir'].'/conf.d/50-user', 0640); + if(is_file($conf['amavis']['config_dir'].'/50-user~')) chmod($conf['amavis']['config_dir'].'/50-user~', 0400); + if(is_file($conf['amavis']['config_dir'].'/amavisd.conf')) chmod($conf['amavis']['config_dir'].'/amavisd.conf', 0640); + if(is_file($conf['amavis']['config_dir'].'/amavisd.conf~')) chmod($conf['amavis']['config_dir'].'/amavisd.conf~', 0400); + } + + public function configure_dbserver() { + global $conf; + + //* If this server shall act as database server for client DB's, we configure this here + $install_dir = $conf['ispconfig_install_dir']; + + // Create a file with the database login details which + // are used to create the client databases. + + if(!is_dir($install_dir.'/server/lib')) { + $command = "mkdir $install_dir/server/lib"; + caselog($command.' &> /dev/null', __FILE__, __LINE__, "EXECUTED: $command", "Failed to execute the command $command"); + } + + $content = rfsel($conf['ispconfig_install_dir'].'/server/conf-custom/install/mysql_clientdb.conf.master', 'tpl/mysql_clientdb.conf.master'); + $content = str_replace('{hostname}', $conf['mysql']['host'], $content); + $content = str_replace('{username}', $conf['mysql']['admin_user'], $content); + $content = str_replace('{password}', addslashes($conf['mysql']['admin_password']), $content); + wf($install_dir.'/server/lib/mysql_clientdb.conf', $content); + chmod($install_dir.'/server/lib/mysql_clientdb.conf', 0600); + chown($install_dir.'/server/lib/mysql_clientdb.conf', 'root'); + chgrp($install_dir.'/server/lib/mysql_clientdb.conf', 'root'); + + } + + public function install_crontab() { + global $conf; + + $install_dir = $conf['ispconfig_install_dir']; + + //* Root Crontab + exec('crontab -u root -l > crontab.txt'); + $existing_root_cron_jobs = file('crontab.txt'); + + // remove existing ispconfig cronjobs, in case the syntax has changed + foreach($existing_root_cron_jobs as $key => $val) { + if(stristr($val, $install_dir)) unset($existing_root_cron_jobs[$key]); + } + + $root_cron_jobs = array( + "* * * * * ".$install_dir."/server/server.sh 2>&1 | while read line; do echo `/bin/date` \"\$line\" >> ".$conf['ispconfig_log_dir']."/cron.log; done", + "* * * * * ".$install_dir."/server/cron.sh 2>&1 | while read line; do echo `/bin/date` \"\$line\" >> ".$conf['ispconfig_log_dir']."/cron.log; done" + ); + + if ($conf['nginx']['installed'] == true) { + $root_cron_jobs[] = "0 0 * * * ".$install_dir."/server/scripts/create_daily_nginx_access_logs.sh &> /dev/null"; + } + + foreach($root_cron_jobs as $cron_job) { + if(!in_array($cron_job."\n", $existing_root_cron_jobs)) { + $existing_root_cron_jobs[] = $cron_job."\n"; + } + } + file_put_contents('crontab.txt', $existing_root_cron_jobs); + exec('crontab -u root crontab.txt &> /dev/null'); + unlink('crontab.txt'); + + //* Getmail crontab + if(is_user('getmail')) { + $cf = $conf['getmail']; + exec('crontab -u getmail -l > crontab.txt'); + $existing_cron_jobs = file('crontab.txt'); + + $cron_jobs = array( + '*/5 * * * * /usr/local/bin/run-getmail.sh > /dev/null 2>> /dev/null' + ); + + // remove existing ispconfig cronjobs, in case the syntax has changed + foreach($existing_cron_jobs as $key => $val) { + if(stristr($val, 'getmail')) unset($existing_cron_jobs[$key]); + } + + foreach($cron_jobs as $cron_job) { + if(!in_array($cron_job."\n", $existing_cron_jobs)) { + $existing_cron_jobs[] = $cron_job."\n"; + } + } + file_put_contents('crontab.txt', $existing_cron_jobs); + exec('crontab -u getmail crontab.txt &> /dev/null'); + unlink('crontab.txt'); + } + + touch($conf['ispconfig_log_dir'].'/cron.log'); + chmod($conf['ispconfig_log_dir'].'/cron.log', 0660); + + } + + public function create_mount_script(){ + global $app, $conf; + $mount_script = '/usr/local/ispconfig/server/scripts/backup_dir_mount.sh'; + $mount_command = ''; + + if(is_file($mount_script)) return; + if(is_file('/etc/rc.local')){ + $rc_local = file('/etc/rc.local'); + if(is_array($rc_local) && !empty($rc_local)){ + foreach($rc_local as $line){ + $line = trim($line); + if(substr($line, 0, 1) == '#') continue; + if(strpos($line, 'sshfs') !== false && strpos($line, '/var/backup') !== false){ + $mount_command = "#!/bin/sh\n\n"; + $mount_command .= $line."\n\n"; + file_put_contents($mount_script, $mount_command); + chmod($mount_script, 0755); + chown($mount_script, 'root'); + chgrp($mount_script, 'root'); + break; + } + } + } + } + } + + // This function is called at the end of the update process and contains code to clean up parts of old ISPCONfig releases + public function cleanup_ispconfig() { + global $app,$conf; + + // Remove directories recursively + if(is_dir('/usr/local/ispconfig/interface/web/designer')) exec('rm -rf /usr/local/ispconfig/interface/web/designer'); + if(is_dir('/usr/local/ispconfig/interface/web/themes/default-304')) exec('rm -rf /usr/local/ispconfig/interface/web/themes/default-304'); + + // Remove files + if(is_file('/usr/local/ispconfig/interface/lib/classes/db_firebird.inc.php')) unlink('/usr/local/ispconfig/interface/lib/classes/db_firebird.inc.php'); + if(is_file('/usr/local/ispconfig/interface/lib/classes/form.inc.php')) unlink('/usr/local/ispconfig/interface/lib/classes/form.inc.php'); + + // Change mode of a few files from amavisd + if(is_file($conf['amavis']['config_dir'].'/conf.d/50-user')) chmod($conf['amavis']['config_dir'].'/conf.d/50-user', 0640); + if(is_file($conf['amavis']['config_dir'].'/50-user~')) chmod($conf['amavis']['config_dir'].'/50-user~', 0400); + if(is_file($conf['amavis']['config_dir'].'/amavisd.conf')) chmod($conf['amavis']['config_dir'].'/amavisd.conf', 0640); + if(is_file($conf['amavis']['config_dir'].'/amavisd.conf~')) chmod($conf['amavis']['config_dir'].'/amavisd.conf~', 0400); + + } + + public function getinitcommand($servicename, $action, $init_script_directory = ''){ + global $conf; + // upstart + if(is_executable('/sbin/initctl')){ + exec('/sbin/initctl version 2>/dev/null | /bin/grep -q upstart', $retval['output'], $retval['retval']); + if(intval($retval['retval']) == 0) return 'service '.$servicename.' '.$action; + } + // systemd + if(is_executable('/bin/systemd') || is_executable('/usr/bin/systemctl')){ + return 'systemctl '.$action.' '.$servicename.'.service'; + } + // sysvinit + if($init_script_directory == '') $init_script_directory = $conf['init_scripts']; + if(substr($init_script_directory, -1) === '/') $init_script_directory = substr($init_script_directory, 0, -1); + return $init_script_directory.'/'.$servicename.' '.$action; + } + + /** + * Helper function - get the path to a template file based on + * the local part of the filename. Checks first for the existence + * of a distribution specific file and if not found looks in the + * base template folder. Optionally the behaviour can be changed + * by setting the 2nd parameter which will fetch the contents + * of the template file and return it instead of the path. The 3rd + * parameter further extends this behaviour by filtering the contents + * by inserting the ispconfig database credentials using the {} placeholders. + * + * @param string $tLocal local part of filename + * @param bool $tRf + * @param bool $tDBCred + * @return string Relative path to the chosen template file + */ + protected function get_template_file($tLocal, $tRf=false, $tDBCred=false) { + global $conf, $dist; + + $final_path = ''; + $dist_template = $conf['ispconfig_install_dir'] . '/server/conf-custom/install/' . $tLocal . '.master'; + if (file_exists($dist_template)) { + $final_path = $dist_template; + } else { + $dist_template = 'dist/tpl/'.strtolower($dist['name'])."/$tLocal.master"; + if (file_exists($dist_template)) { + $final_path = $dist_template; + } else { + $final_path = "tpl/$tLocal.master"; + } + } + + if (!$tRf) { + return $final_path; + } else { + return (!$tDBCred) ? rf($final_path) : $this->insert_db_credentials(rf($final_path)); + } + } + + /** + * Helper function - writes the contents to a config file + * and performs a backup if the file exist. Additionally + * if the file exists the new file will be given the + * same rights and ownership as the original. Optionally the + * rights and/or ownership can be overriden by appending umask, + * user and group to the parameters. Providing only uid and gid + * values will result in only a chown. + * + * @param $tConf + * @param $tContents + * @return bool + */ + protected function write_config_file($tConf, $tContents) { + // Backup config file before writing new contents and stat file + if ( is_file($tConf) ) { + $stat = exec('stat -c \'%a %U %G\' '.escapeshellarg($tConf), $output, $res); + if ($res == 0) { // stat successfull + list($access, $user, $group) = explode(" ", $stat); + } + + if ( copy($tConf, $tConf.'~') ) { + chmod($tConf.'~', 0400); + } + } + + wf($tConf, $tContents); // write file + + if (func_num_args() >= 4) // override rights and/or ownership + { + $args = func_get_args(); + $output = array_slice($args, 2); + + switch (sizeof($output)) { + case 3: + $umask = array_shift($output); + if (is_numeric($umask) && preg_match('/^0?[0-7]{3}$/', $umask)) { + $access = $umask; + } + case 2: + if (is_user($output[0]) && is_group($output[1])) { + list($user, $group) = $output; + } + break; + } + } + + if (!empty($user) && !empty($group)) { + chown($tConf, $user); + chgrp($tConf, $group); + } + + if (!empty($access)) { + exec("chmod $access $tConf"); + } + } + + /** + * Helper function - filter the contents of a config + * file by inserting the common ispconfig database + * credentials. + * + * @param $tContents + * @return string + */ + protected function insert_db_credentials($tContents) { + global $conf; + + $tContents = str_replace('{mysql_server_ispconfig_user}', $conf["mysql"]["ispconfig_user"], $tContents); + $tContents = str_replace('{mysql_server_ispconfig_password}', $conf["mysql"]["ispconfig_password"], $tContents); + $tContents = str_replace('{mysql_server_database}', $conf["mysql"]["database"], $tContents); + $tContents = str_replace('{mysql_server_ip}', $conf["mysql"]["ip"], $tContents); + $tContents = str_replace('{mysql_server_host}', $conf['mysql']['host'], $tContents); + $tContents = str_replace('{mysql_server_port}', $conf['mysql']['port'], $tContents); + $tContents = str_replace('{mysql_server_port}', $conf["mysql"]["port"], $tContents); + + return $tContents; + } + +} + +?> diff --git a/install/sql/incremental/upd_dev_collection.sql b/install/sql/incremental/upd_dev_collection.sql index e69de29bb2..83949a7154 100644 --- a/install/sql/incremental/upd_dev_collection.sql +++ b/install/sql/incremental/upd_dev_collection.sql @@ -0,0 +1,32 @@ +-- rspamd +ALTER TABLE `spamfilter_policy` ADD `rspamd_greylisting` ENUM('n','y') CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL DEFAULT 'n' AFTER `policyd_greylist`; +ALTER TABLE `spamfilter_policy` ADD `rspamd_spam_greylisting_level` DECIMAL(5,2) NULL DEFAULT NULL AFTER `rspamd_greylisting`; +ALTER TABLE `spamfilter_policy` ADD `rspamd_spam_tag_level` DECIMAL(5,2) NULL DEFAULT NULL AFTER `rspamd_spam_greylisting_level`; +ALTER TABLE `spamfilter_policy` ADD `rspamd_spam_tag_method` ENUM('add_header','rewrite_subject') CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL DEFAULT 'rewrite_subject' AFTER `rspamd_spam_tag_level`; +ALTER TABLE `spamfilter_policy` ADD `rspamd_spam_kill_level` DECIMAL(5,2) NULL DEFAULT NULL AFTER `rspamd_spam_tag_method`; + +UPDATE `spamfilter_policy` SET `rspamd_greylisting` = 'y' WHERE id = 4; +UPDATE `spamfilter_policy` SET `rspamd_greylisting` = 'y' WHERE id = 5; +UPDATE `spamfilter_policy` SET `rspamd_greylisting` = 'y' WHERE id = 6; + +UPDATE `spamfilter_policy` SET `rspamd_spam_greylisting_level` = '4.00'; +UPDATE `spamfilter_policy` SET `rspamd_spam_greylisting_level` = '6.00' WHERE id = 1; +UPDATE `spamfilter_policy` SET `rspamd_spam_greylisting_level` = '999.00' WHERE id = 2; +UPDATE `spamfilter_policy` SET `rspamd_spam_greylisting_level` = '999.00' WHERE id = 3; +UPDATE `spamfilter_policy` SET `rspamd_spam_greylisting_level` = '2.00' WHERE id = 6; +UPDATE `spamfilter_policy` SET `rspamd_spam_greylisting_level` = '7.00' WHERE id = 7; + +UPDATE `spamfilter_policy` SET `rspamd_spam_tag_level` = '6.00'; +UPDATE `spamfilter_policy` SET `rspamd_spam_tag_level` = '8.00' WHERE id = 1; +UPDATE `spamfilter_policy` SET `rspamd_spam_tag_level` = '999.00' WHERE id = 2; +UPDATE `spamfilter_policy` SET `rspamd_spam_tag_level` = '999.00' WHERE id = 3; +UPDATE `spamfilter_policy` SET `rspamd_spam_tag_level` = '4.00' WHERE id = 6; +UPDATE `spamfilter_policy` SET `rspamd_spam_tag_level` = '10.00' WHERE id = 7; + +UPDATE `spamfilter_policy` SET `rspamd_spam_kill_level` = '10.00'; +UPDATE `spamfilter_policy` SET `rspamd_spam_kill_level` = '12.00' WHERE id = 1; +UPDATE `spamfilter_policy` SET `rspamd_spam_kill_level` = '999.00' WHERE id = 2; +UPDATE `spamfilter_policy` SET `rspamd_spam_kill_level` = '999.00' WHERE id = 3; +UPDATE `spamfilter_policy` SET `rspamd_spam_kill_level` = '8.00' WHERE id = 6; +UPDATE `spamfilter_policy` SET `rspamd_spam_kill_level` = '20.00' WHERE id = 7; +-- end of rspamd diff --git a/install/sql/incremental/upd_dev_collection.sql.orig b/install/sql/incremental/upd_dev_collection.sql.orig new file mode 100644 index 0000000000..e69de29bb2 diff --git a/install/sql/incremental/upd_dev_collection.sql.rej b/install/sql/incremental/upd_dev_collection.sql.rej new file mode 100644 index 0000000000..4c57d840ab --- /dev/null +++ b/install/sql/incremental/upd_dev_collection.sql.rej @@ -0,0 +1,40 @@ +--- install/sql/incremental/upd_dev_collection.sql ++++ install/sql/incremental/upd_dev_collection.sql +@@ -80,4 +80,37 @@ INSERT IGNORE INTO `dns_ssl_ca` (`id`, `sys_userid`, `sys_groupid`, `sys_perm_us + + ALTER TABLE `dns_soa` CHANGE `xfer` `xfer` TEXT NULL; + ALTER TABLE `dns_soa` CHANGE `also_notify` `also_notify` TEXT NULL; +-ALTER TABLE `dns_slave` CHANGE `xfer` `xfer` TEXT NULL;+ALTER TABLE `dns_slave` CHANGE `xfer` `xfer` TEXT NULL; ++ ++-- rspamd ++ALTER TABLE `spamfilter_policy` ADD `rspamd_greylisting` ENUM('n','y') CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL DEFAULT 'n' AFTER `policyd_greylist`; ++ALTER TABLE `spamfilter_policy` ADD `rspamd_spam_greylisting_level` DECIMAL(5,2) NULL DEFAULT NULL AFTER `rspamd_greylisting`; ++ALTER TABLE `spamfilter_policy` ADD `rspamd_spam_tag_level` DECIMAL(5,2) NULL DEFAULT NULL AFTER `rspamd_spam_greylisting_level`; ++ALTER TABLE `spamfilter_policy` ADD `rspamd_spam_tag_method` ENUM('add_header','rewrite_subject') CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL DEFAULT 'rewrite_subject' AFTER `rspamd_spam_tag_level`; ++ALTER TABLE `spamfilter_policy` ADD `rspamd_spam_kill_level` DECIMAL(5,2) NULL DEFAULT NULL AFTER `rspamd_spam_tag_method`; ++ ++UPDATE `spamfilter_policy` SET `rspamd_greylisting` = 'y' WHERE id = 4; ++UPDATE `spamfilter_policy` SET `rspamd_greylisting` = 'y' WHERE id = 5; ++UPDATE `spamfilter_policy` SET `rspamd_greylisting` = 'y' WHERE id = 6; ++ ++UPDATE `spamfilter_policy` SET `rspamd_spam_greylisting_level` = '4.00'; ++UPDATE `spamfilter_policy` SET `rspamd_spam_greylisting_level` = '6.00' WHERE id = 1; ++UPDATE `spamfilter_policy` SET `rspamd_spam_greylisting_level` = '999.00' WHERE id = 2; ++UPDATE `spamfilter_policy` SET `rspamd_spam_greylisting_level` = '999.00' WHERE id = 3; ++UPDATE `spamfilter_policy` SET `rspamd_spam_greylisting_level` = '2.00' WHERE id = 6; ++UPDATE `spamfilter_policy` SET `rspamd_spam_greylisting_level` = '7.00' WHERE id = 7; ++ ++UPDATE `spamfilter_policy` SET `rspamd_spam_tag_level` = '6.00'; ++UPDATE `spamfilter_policy` SET `rspamd_spam_tag_level` = '8.00' WHERE id = 1; ++UPDATE `spamfilter_policy` SET `rspamd_spam_tag_level` = '999.00' WHERE id = 2; ++UPDATE `spamfilter_policy` SET `rspamd_spam_tag_level` = '999.00' WHERE id = 3; ++UPDATE `spamfilter_policy` SET `rspamd_spam_tag_level` = '4.00' WHERE id = 6; ++UPDATE `spamfilter_policy` SET `rspamd_spam_tag_level` = '10.00' WHERE id = 7; ++ ++UPDATE `spamfilter_policy` SET `rspamd_spam_kill_level` = '10.00'; ++UPDATE `spamfilter_policy` SET `rspamd_spam_kill_level` = '12.00' WHERE id = 1; ++UPDATE `spamfilter_policy` SET `rspamd_spam_kill_level` = '999.00' WHERE id = 2; ++UPDATE `spamfilter_policy` SET `rspamd_spam_kill_level` = '999.00' WHERE id = 3; ++UPDATE `spamfilter_policy` SET `rspamd_spam_kill_level` = '8.00' WHERE id = 6; ++UPDATE `spamfilter_policy` SET `rspamd_spam_kill_level` = '20.00' WHERE id = 7; ++-- end of rspamd diff --git a/install/sql/ispconfig3.sql b/install/sql/ispconfig3.sql index 2417ef0d21..5337c2b77a 100644 --- a/install/sql/ispconfig3.sql +++ b/install/sql/ispconfig3.sql @@ -1589,6 +1589,11 @@ CREATE TABLE `spamfilter_policy` ( `policyd_quota_out` int(11) NOT NULL DEFAULT '-1', `policyd_quota_out_period` int(11) NOT NULL DEFAULT '24', `policyd_greylist` ENUM( 'Y', 'N' ) NOT NULL DEFAULT 'N', + `rspamd_greylisting` enum('n','y') NOT NULL DEFAULT 'n', + `rspamd_spam_greylisting_level` decimal(5,2) DEFAULT NULL, + `rspamd_spam_tag_level` decimal(5,2) DEFAULT NULL, + `rspamd_spam_tag_method` enum('add_header','rewrite_subject') NOT NULL DEFAULT 'rewrite_subject', + `rspamd_spam_kill_level` decimal(5,2) DEFAULT NULL, PRIMARY KEY (`id`) ) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ; @@ -2517,13 +2522,13 @@ INSERT INTO `software_repo` (`software_repo_id`, `sys_userid`, `sys_groupid`, `s -- Dumping data for table `spamfilter_policy` -- -INSERT INTO `spamfilter_policy` (`id`, `sys_userid`, `sys_groupid`, `sys_perm_user`, `sys_perm_group`, `sys_perm_other`, `policy_name`, `virus_lover`, `spam_lover`, `banned_files_lover`, `bad_header_lover`, `bypass_virus_checks`, `bypass_spam_checks`, `bypass_banned_checks`, `bypass_header_checks`, `spam_modifies_subj`, `virus_quarantine_to`, `spam_quarantine_to`, `banned_quarantine_to`, `bad_header_quarantine_to`, `clean_quarantine_to`, `other_quarantine_to`, `spam_tag_level`, `spam_tag2_level`, `spam_kill_level`, `spam_dsn_cutoff_level`, `spam_quarantine_cutoff_level`, `addr_extension_virus`, `addr_extension_spam`, `addr_extension_banned`, `addr_extension_bad_header`, `warnvirusrecip`, `warnbannedrecip`, `warnbadhrecip`, `newvirus_admin`, `virus_admin`, `banned_admin`, `bad_header_admin`, `spam_admin`, `spam_subject_tag`, `spam_subject_tag2`, `message_size_limit`, `banned_rulenames`) VALUES(1, 1, 0, 'riud', 'riud', 'r', 'Non-paying', 'N', 'N', 'N', 'N', 'Y', 'Y', 'Y', 'N', 'Y', '', '', '', '', '', '', 3, 7, 10, 0, 0, '', '', '', '', 'N', 'N', 'N', '', '', '', '', '', '', '', 0, ''); -INSERT INTO `spamfilter_policy` (`id`, `sys_userid`, `sys_groupid`, `sys_perm_user`, `sys_perm_group`, `sys_perm_other`, `policy_name`, `virus_lover`, `spam_lover`, `banned_files_lover`, `bad_header_lover`, `bypass_virus_checks`, `bypass_spam_checks`, `bypass_banned_checks`, `bypass_header_checks`, `spam_modifies_subj`, `virus_quarantine_to`, `spam_quarantine_to`, `banned_quarantine_to`, `bad_header_quarantine_to`, `clean_quarantine_to`, `other_quarantine_to`, `spam_tag_level`, `spam_tag2_level`, `spam_kill_level`, `spam_dsn_cutoff_level`, `spam_quarantine_cutoff_level`, `addr_extension_virus`, `addr_extension_spam`, `addr_extension_banned`, `addr_extension_bad_header`, `warnvirusrecip`, `warnbannedrecip`, `warnbadhrecip`, `newvirus_admin`, `virus_admin`, `banned_admin`, `bad_header_admin`, `spam_admin`, `spam_subject_tag`, `spam_subject_tag2`, `message_size_limit`, `banned_rulenames`) VALUES(2, 1, 0, 'riud', 'riud', 'r', 'Uncensored', 'Y', 'Y', 'Y', 'Y', 'N', 'N', 'N', 'N', 'N', NULL, NULL, NULL, NULL, NULL, NULL, 3, 999, 999, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL); -INSERT INTO `spamfilter_policy` (`id`, `sys_userid`, `sys_groupid`, `sys_perm_user`, `sys_perm_group`, `sys_perm_other`, `policy_name`, `virus_lover`, `spam_lover`, `banned_files_lover`, `bad_header_lover`, `bypass_virus_checks`, `bypass_spam_checks`, `bypass_banned_checks`, `bypass_header_checks`, `spam_modifies_subj`, `virus_quarantine_to`, `spam_quarantine_to`, `banned_quarantine_to`, `bad_header_quarantine_to`, `clean_quarantine_to`, `other_quarantine_to`, `spam_tag_level`, `spam_tag2_level`, `spam_kill_level`, `spam_dsn_cutoff_level`, `spam_quarantine_cutoff_level`, `addr_extension_virus`, `addr_extension_spam`, `addr_extension_banned`, `addr_extension_bad_header`, `warnvirusrecip`, `warnbannedrecip`, `warnbadhrecip`, `newvirus_admin`, `virus_admin`, `banned_admin`, `bad_header_admin`, `spam_admin`, `spam_subject_tag`, `spam_subject_tag2`, `message_size_limit`, `banned_rulenames`) VALUES(3, 1, 0, 'riud', 'riud', 'r', 'Wants all spam', 'N', 'Y', 'N', 'N', 'N', 'N', 'N', 'N', 'Y', NULL, NULL, NULL, NULL, NULL, NULL, 3, 999, 999, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL); -INSERT INTO `spamfilter_policy` (`id`, `sys_userid`, `sys_groupid`, `sys_perm_user`, `sys_perm_group`, `sys_perm_other`, `policy_name`, `virus_lover`, `spam_lover`, `banned_files_lover`, `bad_header_lover`, `bypass_virus_checks`, `bypass_spam_checks`, `bypass_banned_checks`, `bypass_header_checks`, `spam_modifies_subj`, `virus_quarantine_to`, `spam_quarantine_to`, `banned_quarantine_to`, `bad_header_quarantine_to`, `clean_quarantine_to`, `other_quarantine_to`, `spam_tag_level`, `spam_tag2_level`, `spam_kill_level`, `spam_dsn_cutoff_level`, `spam_quarantine_cutoff_level`, `addr_extension_virus`, `addr_extension_spam`, `addr_extension_banned`, `addr_extension_bad_header`, `warnvirusrecip`, `warnbannedrecip`, `warnbadhrecip`, `newvirus_admin`, `virus_admin`, `banned_admin`, `bad_header_admin`, `spam_admin`, `spam_subject_tag`, `spam_subject_tag2`, `message_size_limit`, `banned_rulenames`) VALUES(4, 1, 0, 'riud', 'riud', 'r', 'Wants viruses', 'Y', 'N', 'Y', 'Y', 'N', 'N', 'N', 'N', 'Y', NULL, NULL, NULL, NULL, NULL, NULL, 3, 6.9, 6.9, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL); -INSERT INTO `spamfilter_policy` (`id`, `sys_userid`, `sys_groupid`, `sys_perm_user`, `sys_perm_group`, `sys_perm_other`, `policy_name`, `virus_lover`, `spam_lover`, `banned_files_lover`, `bad_header_lover`, `bypass_virus_checks`, `bypass_spam_checks`, `bypass_banned_checks`, `bypass_header_checks`, `spam_modifies_subj`, `virus_quarantine_to`, `spam_quarantine_to`, `banned_quarantine_to`, `bad_header_quarantine_to`, `clean_quarantine_to`, `other_quarantine_to`, `spam_tag_level`, `spam_tag2_level`, `spam_kill_level`, `spam_dsn_cutoff_level`, `spam_quarantine_cutoff_level`, `addr_extension_virus`, `addr_extension_spam`, `addr_extension_banned`, `addr_extension_bad_header`, `warnvirusrecip`, `warnbannedrecip`, `warnbadhrecip`, `newvirus_admin`, `virus_admin`, `banned_admin`, `bad_header_admin`, `spam_admin`, `spam_subject_tag`, `spam_subject_tag2`, `message_size_limit`, `banned_rulenames`) VALUES(5, 1, 0, 'riud', 'riud', 'r', 'Normal', 'N', 'N', 'N', 'N', 'N', 'N', 'N', 'N', 'Y', '', '', '', '', '', '', 1, 4.5, 50, 0, 0, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, '', '***SPAM*** ', NULL, NULL); -INSERT INTO `spamfilter_policy` (`id`, `sys_userid`, `sys_groupid`, `sys_perm_user`, `sys_perm_group`, `sys_perm_other`, `policy_name`, `virus_lover`, `spam_lover`, `banned_files_lover`, `bad_header_lover`, `bypass_virus_checks`, `bypass_spam_checks`, `bypass_banned_checks`, `bypass_header_checks`, `spam_modifies_subj`, `virus_quarantine_to`, `spam_quarantine_to`, `banned_quarantine_to`, `bad_header_quarantine_to`, `clean_quarantine_to`, `other_quarantine_to`, `spam_tag_level`, `spam_tag2_level`, `spam_kill_level`, `spam_dsn_cutoff_level`, `spam_quarantine_cutoff_level`, `addr_extension_virus`, `addr_extension_spam`, `addr_extension_banned`, `addr_extension_bad_header`, `warnvirusrecip`, `warnbannedrecip`, `warnbadhrecip`, `newvirus_admin`, `virus_admin`, `banned_admin`, `bad_header_admin`, `spam_admin`, `spam_subject_tag`, `spam_subject_tag2`, `message_size_limit`, `banned_rulenames`) VALUES(6, 1, 0, 'riud', 'riud', 'r', 'Trigger happy', 'N', 'N', 'N', 'N', 'N', 'N', 'N', 'N', 'Y', NULL, NULL, NULL, NULL, NULL, NULL, 3, 5, 5, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL); -INSERT INTO `spamfilter_policy` (`id`, `sys_userid`, `sys_groupid`, `sys_perm_user`, `sys_perm_group`, `sys_perm_other`, `policy_name`, `virus_lover`, `spam_lover`, `banned_files_lover`, `bad_header_lover`, `bypass_virus_checks`, `bypass_spam_checks`, `bypass_banned_checks`, `bypass_header_checks`, `spam_modifies_subj`, `virus_quarantine_to`, `spam_quarantine_to`, `banned_quarantine_to`, `bad_header_quarantine_to`, `clean_quarantine_to`, `other_quarantine_to`, `spam_tag_level`, `spam_tag2_level`, `spam_kill_level`, `spam_dsn_cutoff_level`, `spam_quarantine_cutoff_level`, `addr_extension_virus`, `addr_extension_spam`, `addr_extension_banned`, `addr_extension_bad_header`, `warnvirusrecip`, `warnbannedrecip`, `warnbadhrecip`, `newvirus_admin`, `virus_admin`, `banned_admin`, `bad_header_admin`, `spam_admin`, `spam_subject_tag`, `spam_subject_tag2`, `message_size_limit`, `banned_rulenames`) VALUES(7, 1, 0, 'riud', 'riud', 'r', 'Permissive', 'N', 'N', 'N', 'Y', 'N', 'N', 'N', 'N', 'Y', NULL, NULL, NULL, NULL, NULL, NULL, 3, 10, 20, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `spamfilter_policy` (`id`, `sys_userid`, `sys_groupid`, `sys_perm_user`, `sys_perm_group`, `sys_perm_other`, `policy_name`, `virus_lover`, `spam_lover`, `banned_files_lover`, `bad_header_lover`, `bypass_virus_checks`, `bypass_spam_checks`, `bypass_banned_checks`, `bypass_header_checks`, `spam_modifies_subj`, `virus_quarantine_to`, `spam_quarantine_to`, `banned_quarantine_to`, `bad_header_quarantine_to`, `clean_quarantine_to`, `other_quarantine_to`, `spam_tag_level`, `spam_tag2_level`, `spam_kill_level`, `spam_dsn_cutoff_level`, `spam_quarantine_cutoff_level`, `addr_extension_virus`, `addr_extension_spam`, `addr_extension_banned`, `addr_extension_bad_header`, `warnvirusrecip`, `warnbannedrecip`, `warnbadhrecip`, `newvirus_admin`, `virus_admin`, `banned_admin`, `bad_header_admin`, `spam_admin`, `spam_subject_tag`, `spam_subject_tag2`, `message_size_limit`, `banned_rulenames`, `rspamd_greylisting`, `rspamd_spam_greylisting_level`, `rspamd_spam_tag_level`, `rspamd_spam_tag_method`, `rspamd_spam_kill_level`) VALUES(1, 1, 0, 'riud', 'riud', 'r', 'Non-paying', 'N', 'N', 'N', 'N', 'Y', 'Y', 'Y', 'N', 'Y', '', '', '', '', '', '', 3, 7, 10, 0, 0, '', '', '', '', 'N', 'N', 'N', '', '', '', '', '', '', '', 0, '', 'n', 6.00, 8.00, 'rewrite_subject', 12.00); +INSERT INTO `spamfilter_policy` (`id`, `sys_userid`, `sys_groupid`, `sys_perm_user`, `sys_perm_group`, `sys_perm_other`, `policy_name`, `virus_lover`, `spam_lover`, `banned_files_lover`, `bad_header_lover`, `bypass_virus_checks`, `bypass_spam_checks`, `bypass_banned_checks`, `bypass_header_checks`, `spam_modifies_subj`, `virus_quarantine_to`, `spam_quarantine_to`, `banned_quarantine_to`, `bad_header_quarantine_to`, `clean_quarantine_to`, `other_quarantine_to`, `spam_tag_level`, `spam_tag2_level`, `spam_kill_level`, `spam_dsn_cutoff_level`, `spam_quarantine_cutoff_level`, `addr_extension_virus`, `addr_extension_spam`, `addr_extension_banned`, `addr_extension_bad_header`, `warnvirusrecip`, `warnbannedrecip`, `warnbadhrecip`, `newvirus_admin`, `virus_admin`, `banned_admin`, `bad_header_admin`, `spam_admin`, `spam_subject_tag`, `spam_subject_tag2`, `message_size_limit`, `banned_rulenames`, `rspamd_greylisting`, `rspamd_spam_greylisting_level`, `rspamd_spam_tag_level`, `rspamd_spam_tag_method`, `rspamd_spam_kill_level`) VALUES(2, 1, 0, 'riud', 'riud', 'r', 'Uncensored', 'Y', 'Y', 'Y', 'Y', 'N', 'N', 'N', 'N', 'N', NULL, NULL, NULL, NULL, NULL, NULL, 3, 999, 999, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, 'n', 999.00, 999.00, 'rewrite_subject', 999.00); +INSERT INTO `spamfilter_policy` (`id`, `sys_userid`, `sys_groupid`, `sys_perm_user`, `sys_perm_group`, `sys_perm_other`, `policy_name`, `virus_lover`, `spam_lover`, `banned_files_lover`, `bad_header_lover`, `bypass_virus_checks`, `bypass_spam_checks`, `bypass_banned_checks`, `bypass_header_checks`, `spam_modifies_subj`, `virus_quarantine_to`, `spam_quarantine_to`, `banned_quarantine_to`, `bad_header_quarantine_to`, `clean_quarantine_to`, `other_quarantine_to`, `spam_tag_level`, `spam_tag2_level`, `spam_kill_level`, `spam_dsn_cutoff_level`, `spam_quarantine_cutoff_level`, `addr_extension_virus`, `addr_extension_spam`, `addr_extension_banned`, `addr_extension_bad_header`, `warnvirusrecip`, `warnbannedrecip`, `warnbadhrecip`, `newvirus_admin`, `virus_admin`, `banned_admin`, `bad_header_admin`, `spam_admin`, `spam_subject_tag`, `spam_subject_tag2`, `message_size_limit`, `banned_rulenames`, `rspamd_greylisting`, `rspamd_spam_greylisting_level`, `rspamd_spam_tag_level`, `rspamd_spam_tag_method`, `rspamd_spam_kill_level`) VALUES(3, 1, 0, 'riud', 'riud', 'r', 'Wants all spam', 'N', 'Y', 'N', 'N', 'N', 'N', 'N', 'N', 'Y', NULL, NULL, NULL, NULL, NULL, NULL, 3, 999, 999, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, 'n', 999.00, 999.00, 'rewrite_subject', 999.00); +INSERT INTO `spamfilter_policy` (`id`, `sys_userid`, `sys_groupid`, `sys_perm_user`, `sys_perm_group`, `sys_perm_other`, `policy_name`, `virus_lover`, `spam_lover`, `banned_files_lover`, `bad_header_lover`, `bypass_virus_checks`, `bypass_spam_checks`, `bypass_banned_checks`, `bypass_header_checks`, `spam_modifies_subj`, `virus_quarantine_to`, `spam_quarantine_to`, `banned_quarantine_to`, `bad_header_quarantine_to`, `clean_quarantine_to`, `other_quarantine_to`, `spam_tag_level`, `spam_tag2_level`, `spam_kill_level`, `spam_dsn_cutoff_level`, `spam_quarantine_cutoff_level`, `addr_extension_virus`, `addr_extension_spam`, `addr_extension_banned`, `addr_extension_bad_header`, `warnvirusrecip`, `warnbannedrecip`, `warnbadhrecip`, `newvirus_admin`, `virus_admin`, `banned_admin`, `bad_header_admin`, `spam_admin`, `spam_subject_tag`, `spam_subject_tag2`, `message_size_limit`, `banned_rulenames`, `rspamd_greylisting`, `rspamd_spam_greylisting_level`, `rspamd_spam_tag_level`, `rspamd_spam_tag_method`, `rspamd_spam_kill_level`) VALUES(4, 1, 0, 'riud', 'riud', 'r', 'Wants viruses', 'Y', 'N', 'Y', 'Y', 'N', 'N', 'N', 'N', 'Y', NULL, NULL, NULL, NULL, NULL, NULL, 3, 6.9, 6.9, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, 'y', 4.00, 6.00, 'rewrite_subject', 10.00); +INSERT INTO `spamfilter_policy` (`id`, `sys_userid`, `sys_groupid`, `sys_perm_user`, `sys_perm_group`, `sys_perm_other`, `policy_name`, `virus_lover`, `spam_lover`, `banned_files_lover`, `bad_header_lover`, `bypass_virus_checks`, `bypass_spam_checks`, `bypass_banned_checks`, `bypass_header_checks`, `spam_modifies_subj`, `virus_quarantine_to`, `spam_quarantine_to`, `banned_quarantine_to`, `bad_header_quarantine_to`, `clean_quarantine_to`, `other_quarantine_to`, `spam_tag_level`, `spam_tag2_level`, `spam_kill_level`, `spam_dsn_cutoff_level`, `spam_quarantine_cutoff_level`, `addr_extension_virus`, `addr_extension_spam`, `addr_extension_banned`, `addr_extension_bad_header`, `warnvirusrecip`, `warnbannedrecip`, `warnbadhrecip`, `newvirus_admin`, `virus_admin`, `banned_admin`, `bad_header_admin`, `spam_admin`, `spam_subject_tag`, `spam_subject_tag2`, `message_size_limit`, `banned_rulenames`, `rspamd_greylisting`, `rspamd_spam_greylisting_level`, `rspamd_spam_tag_level`, `rspamd_spam_tag_method`, `rspamd_spam_kill_level`) VALUES(5, 1, 0, 'riud', 'riud', 'r', 'Normal', 'N', 'N', 'N', 'N', 'N', 'N', 'N', 'N', 'Y', '', '', '', '', '', '', 1, 4.5, 50, 0, 0, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, '', '***SPAM***', NULL, NULL, 'y', 4.00, 6.00, 'rewrite_subject', 10.00); +INSERT INTO `spamfilter_policy` (`id`, `sys_userid`, `sys_groupid`, `sys_perm_user`, `sys_perm_group`, `sys_perm_other`, `policy_name`, `virus_lover`, `spam_lover`, `banned_files_lover`, `bad_header_lover`, `bypass_virus_checks`, `bypass_spam_checks`, `bypass_banned_checks`, `bypass_header_checks`, `spam_modifies_subj`, `virus_quarantine_to`, `spam_quarantine_to`, `banned_quarantine_to`, `bad_header_quarantine_to`, `clean_quarantine_to`, `other_quarantine_to`, `spam_tag_level`, `spam_tag2_level`, `spam_kill_level`, `spam_dsn_cutoff_level`, `spam_quarantine_cutoff_level`, `addr_extension_virus`, `addr_extension_spam`, `addr_extension_banned`, `addr_extension_bad_header`, `warnvirusrecip`, `warnbannedrecip`, `warnbadhrecip`, `newvirus_admin`, `virus_admin`, `banned_admin`, `bad_header_admin`, `spam_admin`, `spam_subject_tag`, `spam_subject_tag2`, `message_size_limit`, `banned_rulenames`, `rspamd_greylisting`, `rspamd_spam_greylisting_level`, `rspamd_spam_tag_level`, `rspamd_spam_tag_method`, `rspamd_spam_kill_level`) VALUES(6, 1, 0, 'riud', 'riud', 'r', 'Trigger happy', 'N', 'N', 'N', 'N', 'N', 'N', 'N', 'N', 'Y', NULL, NULL, NULL, NULL, NULL, NULL, 3, 5, 5, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, 'y', 2.00, 4.00, 'rewrite_subject', 8.00); +INSERT INTO `spamfilter_policy` (`id`, `sys_userid`, `sys_groupid`, `sys_perm_user`, `sys_perm_group`, `sys_perm_other`, `policy_name`, `virus_lover`, `spam_lover`, `banned_files_lover`, `bad_header_lover`, `bypass_virus_checks`, `bypass_spam_checks`, `bypass_banned_checks`, `bypass_header_checks`, `spam_modifies_subj`, `virus_quarantine_to`, `spam_quarantine_to`, `banned_quarantine_to`, `bad_header_quarantine_to`, `clean_quarantine_to`, `other_quarantine_to`, `spam_tag_level`, `spam_tag2_level`, `spam_kill_level`, `spam_dsn_cutoff_level`, `spam_quarantine_cutoff_level`, `addr_extension_virus`, `addr_extension_spam`, `addr_extension_banned`, `addr_extension_bad_header`, `warnvirusrecip`, `warnbannedrecip`, `warnbadhrecip`, `newvirus_admin`, `virus_admin`, `banned_admin`, `bad_header_admin`, `spam_admin`, `spam_subject_tag`, `spam_subject_tag2`, `message_size_limit`, `banned_rulenames`, `rspamd_greylisting`, `rspamd_spam_greylisting_level`, `rspamd_spam_tag_level`, `rspamd_spam_tag_method`, `rspamd_spam_kill_level`) VALUES(7, 1, 0, 'riud', 'riud', 'r', 'Permissive', 'N', 'N', 'N', 'Y', 'N', 'N', 'N', 'N', 'Y', NULL, NULL, NULL, NULL, NULL, NULL, 3, 10, 20, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, 'n', 7.00, 10.00, 'rewrite_subject', 20.00); -- -------------------------------------------------------- diff --git a/install/sql/ispconfig3.sql.orig b/install/sql/ispconfig3.sql.orig new file mode 100644 index 0000000000..2417ef0d21 --- /dev/null +++ b/install/sql/ispconfig3.sql.orig @@ -0,0 +1,2570 @@ +/* +Copyright (c) 2007-2012, Till Brehm, projektfarm Gmbh +All rights reserved. + +Redistribution and use in source and binary forms, with or without modification, +are permitted provided that the following conditions are met: + + * Redistributions of source code must retain the above copyright notice, + this list of conditions and the following disclaimer. + * Redistributions in binary form must reproduce the above copyright notice, + this list of conditions and the following disclaimer in the documentation + and/or other materials provided with the distribution. + * Neither the name of ISPConfig nor the names of its contributors + may be used to endorse or promote products derived from this software without + specific prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND +ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED +WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. +IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, +INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, +BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY +OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING +NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, +EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. +*/ + +-- Includes +-- +-- iso_country_list.sql +-- +-- This will create and then populate a MySQL table with a list of the names and +-- ISO 3166 codes for countries in existence as of the date below. +-- +-- For updates to this file, see http://27.org/isocountrylist/ +-- For more about ISO 3166, see http://www.iso.ch/iso/en/prods-services/iso3166ma/02iso-3166-code-lists/list-en1.html +-- +-- Created by getisocountrylist.pl on Sun Nov 2 14:59:20 2003. +-- Wm. Rhodes <iso_country_list@27.org> +-- + +-- +-- ISPConfig 3 +-- DB-Version: 3.0.0.9 +-- + +SET FOREIGN_KEY_CHECKS = 0; + +-- -------------------------------------------------------- +-- -------------------------------------------------------- +-- DB-STRUCTURE +-- -------------------------------------------------------- +-- -------------------------------------------------------- + +-- +-- Table structure for table `aps_instances` +-- + +CREATE TABLE IF NOT EXISTS `aps_instances` ( + `id` int(4) NOT NULL AUTO_INCREMENT, + `sys_userid` int(11) unsigned NOT NULL DEFAULT '0', + `sys_groupid` int(11) unsigned NOT NULL DEFAULT '0', + `sys_perm_user` varchar(5) DEFAULT NULL, + `sys_perm_group` varchar(5) DEFAULT NULL, + `sys_perm_other` varchar(5) DEFAULT NULL, + `server_id` int(11) NOT NULL DEFAULT '0', + `customer_id` int(4) NOT NULL DEFAULT '0', + `package_id` int(4) NOT NULL DEFAULT '0', + `instance_status` int(4) NOT NULL DEFAULT '0', + PRIMARY KEY (`id`) +) ENGINE=MyISAM DEFAULT CHARSET=utf8 ; + +-- -------------------------------------------------------- + +-- +-- Table structure for table `aps_instances_settings` +-- + +CREATE TABLE IF NOT EXISTS `aps_instances_settings` ( + `id` int(4) NOT NULL AUTO_INCREMENT, + `server_id` int(11) NOT NULL DEFAULT '0', + `instance_id` int(4) NOT NULL DEFAULT '0', + `name` varchar(255) NOT NULL DEFAULT '', + `value` text, + PRIMARY KEY (`id`) +) ENGINE=MyISAM DEFAULT CHARSET=utf8 ; + +-- -------------------------------------------------------- + +-- +-- Table structure for table `aps_packages` +-- + +CREATE TABLE IF NOT EXISTS `aps_packages` ( + `id` int(4) NOT NULL AUTO_INCREMENT, + `path` varchar(255) NOT NULL DEFAULT '', + `name` varchar(255) NOT NULL DEFAULT '', + `category` varchar(255) NOT NULL DEFAULT '', + `version` varchar(20) NOT NULL DEFAULT '', + `release` int(4) NOT NULL DEFAULT '0', + `package_url` TEXT, + `package_status` int(1) NOT NULL DEFAULT '2', + PRIMARY KEY (`id`) +) ENGINE=MyISAM DEFAULT CHARSET=utf8 ; + +-- -------------------------------------------------------- + +-- +-- Tabellenstruktur für Tabelle `aps_settings` +-- + +CREATE TABLE IF NOT EXISTS `aps_settings` ( + `id` int(4) NOT NULL AUTO_INCREMENT, + `name` varchar(255) NOT NULL DEFAULT '', + `value` text, + PRIMARY KEY (`id`), + UNIQUE KEY `name` (`name`) +) ENGINE=MyISAM DEFAULT CHARSET=utf8 ; + +-- -------------------------------------------------------- + +-- +-- Table structure for table `attempts_login` +-- + +CREATE TABLE `attempts_login` ( + `ip` varchar(39) NOT NULL DEFAULT '', + `times` int(11) DEFAULT NULL, + `login_time` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP +) ENGINE=MyISAM DEFAULT CHARSET=utf8 ; + +-- -------------------------------------------------------- + +-- +-- Table structure for table `client` +-- + +CREATE TABLE `client` ( + `client_id` int(11) unsigned NOT NULL AUTO_INCREMENT, + `sys_userid` int(11) unsigned NOT NULL DEFAULT '0', + `sys_groupid` int(11) unsigned NOT NULL DEFAULT '0', + `sys_perm_user` varchar(5) DEFAULT NULL, + `sys_perm_group` varchar(5) DEFAULT NULL, + `sys_perm_other` varchar(5) DEFAULT NULL, + `company_name` varchar(64) DEFAULT NULL, + `company_id` varchar(255) DEFAULT NULL, + `gender` enum('','m','f') NOT NULL DEFAULT '', + `contact_firstname` varchar( 64 ) NOT NULL DEFAULT '', + `contact_name` varchar(64) DEFAULT NULL, + `customer_no` varchar(64) DEFAULT NULL, + `vat_id` varchar(64) DEFAULT NULL, + `street` varchar(255) DEFAULT NULL, + `zip` varchar(32) DEFAULT NULL, + `city` varchar(64) DEFAULT NULL, + `state` varchar(32) DEFAULT NULL, + `country` char(2) DEFAULT NULL, + `telephone` varchar(32) DEFAULT NULL, + `mobile` varchar(32) DEFAULT NULL, + `fax` varchar(32) DEFAULT NULL, + `email` varchar(255) DEFAULT NULL, + `internet` varchar(255) NOT NULL DEFAULT '', + `icq` varchar(16) DEFAULT NULL, + `notes` text, + `bank_account_owner` varchar(255) DEFAULT NULL, + `bank_account_number` varchar(255) DEFAULT NULL, + `bank_code` varchar(255) DEFAULT NULL, + `bank_name` varchar(255) DEFAULT NULL, + `bank_account_iban` varchar(255) DEFAULT NULL, + `bank_account_swift` varchar(255) DEFAULT NULL, + `paypal_email` varchar(255) DEFAULT NULL, + `default_mailserver` int(11) unsigned NOT NULL DEFAULT '1', + `mail_servers` text, + `limit_maildomain` int(11) NOT NULL DEFAULT '-1', + `limit_mailbox` int(11) NOT NULL DEFAULT '-1', + `limit_mailalias` int(11) NOT NULL DEFAULT '-1', + `limit_mailaliasdomain` int(11) NOT NULL DEFAULT '-1', + `limit_mailforward` int(11) NOT NULL DEFAULT '-1', + `limit_mailcatchall` int(11) NOT NULL DEFAULT '-1', + `limit_mailrouting` int(11) NOT NULL DEFAULT '0', + `limit_mailfilter` int(11) NOT NULL DEFAULT '-1', + `limit_fetchmail` int(11) NOT NULL DEFAULT '-1', + `limit_mailquota` int(11) NOT NULL DEFAULT '-1', + `limit_spamfilter_wblist` int(11) NOT NULL DEFAULT '0', + `limit_spamfilter_user` int(11) NOT NULL DEFAULT '0', + `limit_spamfilter_policy` int(11) NOT NULL DEFAULT '0', + `default_xmppserver` int(11) unsigned NOT NULL DEFAULT '1', + `xmpp_servers` text, + `limit_xmpp_domain` int(11) NOT NULL DEFAULT '-1', + `limit_xmpp_user` int(11) NOT NULL DEFAULT '-1', + `limit_xmpp_muc` ENUM( 'n', 'y' ) NOT NULL default 'n', + `limit_xmpp_anon` ENUM( 'n', 'y' ) NOT NULL default 'n', + `limit_xmpp_auth_options` varchar(255) NOT NULL DEFAULT 'plain,hashed,isp', + `limit_xmpp_vjud` ENUM( 'n', 'y' ) NOT NULL default 'n', + `limit_xmpp_proxy` ENUM( 'n', 'y' ) NOT NULL default 'n', + `limit_xmpp_status` ENUM( 'n', 'y' ) NOT NULL default 'n', + `limit_xmpp_pastebin` ENUM( 'n', 'y' ) NOT NULL default 'n', + `limit_xmpp_httparchive` ENUM( 'n', 'y' ) NOT NULL default 'n', + `default_webserver` int(11) unsigned NOT NULL DEFAULT '1', + `web_servers` text, + `limit_web_ip` text, + `limit_web_domain` int(11) NOT NULL DEFAULT '-1', + `limit_web_quota` int(11) NOT NULL DEFAULT '-1', + `web_php_options` varchar(255) NOT NULL DEFAULT 'no,fast-cgi,cgi,mod,suphp,php-fpm,hhvm', + `limit_cgi` enum('n','y') NOT NULL DEFAULT 'n', + `limit_ssi` enum('n','y') NOT NULL DEFAULT 'n', + `limit_perl` enum('n','y') NOT NULL DEFAULT 'n', + `limit_ruby` enum('n','y') NOT NULL DEFAULT 'n', + `limit_python` enum('n','y') NOT NULL DEFAULT 'n', + `force_suexec` enum('n','y') NOT NULL DEFAULT 'y', + `limit_hterror` enum('n','y') NOT NULL DEFAULT 'n', + `limit_wildcard` enum('n','y') NOT NULL DEFAULT 'n', + `limit_ssl` enum('n','y') NOT NULL DEFAULT 'n', + `limit_ssl_letsencrypt` enum('n','y') NOT NULL DEFAULT 'n', + `limit_web_subdomain` int(11) NOT NULL DEFAULT '-1', + `limit_web_aliasdomain` int(11) NOT NULL DEFAULT '-1', + `limit_ftp_user` int(11) NOT NULL DEFAULT '-1', + `limit_shell_user` int(11) NOT NULL DEFAULT '0', + `ssh_chroot` varchar(255) NOT NULL DEFAULT 'no,jailkit,ssh-chroot', + `limit_webdav_user` int(11) NOT NULL DEFAULT '0', + `limit_backup` ENUM( 'n', 'y' ) NOT NULL DEFAULT 'y', + `limit_directive_snippets` ENUM( 'n', 'y' ) NOT NULL DEFAULT 'n', + `limit_aps` int(11) NOT NULL DEFAULT '-1', + `default_dnsserver` int(11) unsigned NOT NULL DEFAULT '1', + `db_servers` text, + `limit_dns_zone` int(11) NOT NULL DEFAULT '-1', + `default_slave_dnsserver` int(11) unsigned NOT NULL DEFAULT '1', + `limit_dns_slave_zone` int(11) NOT NULL DEFAULT '-1', + `limit_dns_record` int(11) NOT NULL DEFAULT '-1', + `default_dbserver` int(11) NOT NULL DEFAULT '1', + `dns_servers` text, + `limit_database` int(11) NOT NULL DEFAULT '-1', + `limit_database_user` int(11) NOT NULL DEFAULT '-1', + `limit_database_quota` int(11) NOT NULL default '-1', + `limit_cron` int(11) NOT NULL DEFAULT '0', + `limit_cron_type` enum('url','chrooted','full') NOT NULL DEFAULT 'url', + `limit_cron_frequency` int(11) NOT NULL DEFAULT '5', + `limit_traffic_quota` int(11) NOT NULL DEFAULT '-1', + `limit_client` int(11) NOT NULL DEFAULT '0', + `limit_domainmodule` int(11) NOT NULL DEFAULT '0', + `limit_mailmailinglist` int(11) NOT NULL DEFAULT '-1', + `limit_openvz_vm` int(11) NOT NULL DEFAULT '0', + `limit_openvz_vm_template_id` int(11) NOT NULL DEFAULT '0', + `parent_client_id` int(11) unsigned NOT NULL DEFAULT '0', + `username` varchar(64) DEFAULT NULL, + `password` varchar(64) DEFAULT NULL, + `language` char(2) NOT NULL DEFAULT 'en', + `usertheme` varchar(32) NOT NULL DEFAULT 'default', + `template_master` int(11) unsigned NOT NULL DEFAULT '0', + `template_additional` text, + `created_at` bigint(20) DEFAULT NULL, + `locked` enum('n','y') NOT NULL DEFAULT 'n', + `canceled` enum('n','y') NOT NULL DEFAULT 'n', + `can_use_api` enum('n','y') NOT NULL DEFAULT 'n', + `tmp_data` mediumblob, + `id_rsa` varchar(2000) NOT NULL DEFAULT '', + `ssh_rsa` varchar(600) NOT NULL DEFAULT '', + `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 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', + `activation_code` varchar(10) NOT NULL DEFAULT '', + PRIMARY KEY (`client_id`) +) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ; + +-- -------------------------------------------------------- + +-- +-- Table structure for table `client_circle` +-- + +CREATE TABLE `client_circle` ( + `circle_id` int(11) NOT NULL AUTO_INCREMENT, + `sys_userid` int(11) NOT NULL DEFAULT '0', + `sys_groupid` int(11) NOT NULL DEFAULT '0', + `sys_perm_user` varchar(5) DEFAULT NULL, + `sys_perm_group` varchar(5) DEFAULT NULL, + `sys_perm_other` varchar(5) DEFAULT NULL, + `circle_name` varchar(64) DEFAULT NULL, + `client_ids` text, + `description` text, + `active` enum('n','y') NOT NULL default 'y', + PRIMARY KEY (`circle_id`) +) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ; + +-- -------------------------------------------------------- + +-- +-- Table structure for table `client_template` +-- + +CREATE TABLE `client_template` ( + `template_id` int(11) unsigned NOT NULL auto_increment, + `sys_userid` int(11) unsigned NOT NULL default '0', + `sys_groupid` int(11) unsigned NOT NULL default '0', + `sys_perm_user` varchar(5) default NULL, + `sys_perm_group` varchar(5) default NULL, + `sys_perm_other` varchar(5) default NULL, + `template_name` varchar(64) NOT NULL DEFAULT '', + `template_type` varchar(1) NOT NULL default 'm', + `mail_servers` text, + `limit_maildomain` int(11) NOT NULL default '-1', + `limit_mailbox` int(11) NOT NULL default '-1', + `limit_mailalias` int(11) NOT NULL default '-1', + `limit_mailaliasdomain` int(11) NOT NULL default '-1', + `limit_mailforward` int(11) NOT NULL default '-1', + `limit_mailcatchall` int(11) NOT NULL default '-1', + `limit_mailrouting` int(11) NOT NULL default '0', + `limit_mailfilter` int(11) NOT NULL default '-1', + `limit_fetchmail` int(11) NOT NULL default '-1', + `limit_mailquota` int(11) NOT NULL default '-1', + `limit_spamfilter_wblist` int(11) NOT NULL default '0', + `limit_spamfilter_user` int(11) NOT NULL default '0', + `limit_spamfilter_policy` int(11) NOT NULL default '0', + `default_xmppserver` int(11) unsigned NOT NULL DEFAULT '1', + `xmpp_servers` text, + `limit_xmpp_domain` int(11) NOT NULL DEFAULT '-1', + `limit_xmpp_user` int(11) NOT NULL DEFAULT '-1', + `limit_xmpp_muc` ENUM( 'n', 'y' ) NOT NULL default 'n', + `limit_xmpp_anon` ENUM( 'n', 'y' ) NOT NULL default 'n', + `limit_xmpp_vjud` ENUM( 'n', 'y' ) NOT NULL default 'n', + `limit_xmpp_proxy` ENUM( 'n', 'y' ) NOT NULL default 'n', + `limit_xmpp_status` ENUM( 'n', 'y' ) NOT NULL default 'n', + `limit_xmpp_pastebin` ENUM( 'n', 'y' ) NOT NULL default 'n', + `limit_xmpp_httparchive` ENUM( 'n', 'y' ) NOT NULL default 'n', + `web_servers` text, + `limit_web_ip` text, + `limit_web_domain` int(11) NOT NULL default '-1', + `limit_web_quota` int(11) NOT NULL default '-1', + `web_php_options` varchar(255) NOT NULL DEFAULT 'no', + `limit_cgi` enum('n','y') NOT NULL DEFAULT 'n', + `limit_ssi` enum('n','y') NOT NULL DEFAULT 'n', + `limit_perl` enum('n','y') NOT NULL DEFAULT 'n', + `limit_ruby` enum('n','y') NOT NULL DEFAULT 'n', + `limit_python` enum('n','y') NOT NULL DEFAULT 'n', + `force_suexec` enum('n','y') NOT NULL DEFAULT 'y', + `limit_hterror` enum('n','y') NOT NULL DEFAULT 'n', + `limit_wildcard` enum('n','y') NOT NULL DEFAULT 'n', + `limit_ssl` enum('n','y') NOT NULL DEFAULT 'n', + `limit_ssl_letsencrypt` enum('n','y') NOT NULL DEFAULT 'n', + `limit_web_subdomain` int(11) NOT NULL default '-1', + `limit_web_aliasdomain` int(11) NOT NULL default '-1', + `limit_ftp_user` int(11) NOT NULL default '-1', + `limit_shell_user` int(11) NOT NULL default '0', + `ssh_chroot` varchar(255) NOT NULL DEFAULT 'no', + `limit_webdav_user` int(11) NOT NULL default '0', + `limit_backup` ENUM( 'n', 'y' ) NOT NULL DEFAULT 'y', + `limit_directive_snippets` ENUM( 'n', 'y' ) NOT NULL DEFAULT 'n', + `limit_aps` int(11) NOT NULL DEFAULT '-1', + `dns_servers` text, + `limit_dns_zone` int(11) NOT NULL default '-1', + `default_slave_dnsserver` int(11) NOT NULL DEFAULT '0', + `limit_dns_slave_zone` int(11) NOT NULL default '-1', + `limit_dns_record` int(11) NOT NULL default '-1', + `db_servers` text, + `limit_database` int(11) NOT NULL default '-1', + `limit_database_user` int(11) NOT NULL DEFAULT '-1', + `limit_database_quota` int(11) NOT NULL default '-1', + `limit_cron` int(11) NOT NULL default '0', + `limit_cron_type` enum('url','chrooted','full') NOT NULL default 'url', + `limit_cron_frequency` int(11) NOT NULL default '5', + `limit_traffic_quota` int(11) NOT NULL default '-1', + `limit_client` int(11) NOT NULL default '0', + `limit_domainmodule` int(11) NOT NULL DEFAULT '0', + `limit_mailmailinglist` int(11) NOT NULL default '-1', + `limit_openvz_vm` int(11) NOT NULL DEFAULT '0', + `limit_openvz_vm_template_id` int(11) NOT NULL DEFAULT '0', + PRIMARY KEY (`template_id`) +) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ; + +-- -------------------------------------------------------- + +-- +-- Table structure for table `client_template_assigned` +-- + +CREATE TABLE `client_template_assigned` ( + `assigned_template_id` bigint(20) NOT NULL auto_increment, + `client_id` bigint(11) NOT NULL DEFAULT '0', + `client_template_id` int(11) NOT NULL DEFAULT '0', + PRIMARY KEY (`assigned_template_id`), + KEY `client_id` (`client_id`) +) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ; +-- -------------------------------------------------------- + +-- +-- Table structure for table `invoice_message_template` +-- + +CREATE TABLE `client_message_template` ( + `client_message_template_id` bigint(20) NOT NULL AUTO_INCREMENT, + `sys_userid` int(11) NOT NULL DEFAULT '0', + `sys_groupid` int(11) NOT NULL DEFAULT '0', + `sys_perm_user` varchar(5) DEFAULT NULL, + `sys_perm_group` varchar(5) DEFAULT NULL, + `sys_perm_other` varchar(5) DEFAULT NULL, + `template_type` varchar(255) DEFAULT NULL, + `template_name` varchar(255) DEFAULT NULL, + `subject` varchar(255) DEFAULT NULL, + `message` text, + PRIMARY KEY (`client_message_template_id`) +) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ; + +-- +-- Dumping data for table `invoice_message_template` +-- + +-- -------------------------------------------------------- + +-- +-- Table structure for table `country` +-- + +CREATE TABLE `country` ( + `iso` char(2) NOT NULL DEFAULT '', + `name` varchar(64) NOT NULL DEFAULT '', + `printable_name` varchar(64) NOT NULL DEFAULT '', + `iso3` char(3) DEFAULT NULL, + `numcode` smallint(6) DEFAULT NULL, + `eu` enum('n','y') NOT NULL DEFAULT 'n', + PRIMARY KEY (`iso`) +) ENGINE=MyISAM DEFAULT CHARSET=utf8 ; + +-- -------------------------------------------------------- + +-- +-- Table structure for table `cron` +-- +CREATE TABLE `cron` ( + `id` int(11) unsigned NOT NULL auto_increment, + `sys_userid` int(11) unsigned NOT NULL default '0', + `sys_groupid` int(11) unsigned NOT NULL default '0', + `sys_perm_user` varchar(5) NULL default NULL, + `sys_perm_group` varchar(5) NULL default NULL, + `sys_perm_other` varchar(5) NULL default NULL, + `server_id` int(11) unsigned NOT NULL default '0', + `parent_domain_id` int(11) unsigned NOT NULL default '0', + `type` enum('url','chrooted','full') NOT NULL default 'url', + `command` TEXT, + `run_min` varchar(100) NULL, + `run_hour` varchar(100) NULL, + `run_mday` varchar(100) NULL, + `run_month` varchar(100) NULL, + `run_wday` varchar(100) NULL, + `log` enum('n','y') NOT NULL default 'n', + `active` enum('n','y') NOT NULL default 'y', + PRIMARY KEY (`id`) +) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ; + +-- -------------------------------------------------------- + +-- +-- Table structure for table `directive_snippets` +-- + +CREATE TABLE IF NOT EXISTS `directive_snippets` ( + `directive_snippets_id` int(11) unsigned NOT NULL AUTO_INCREMENT, + `sys_userid` int(11) unsigned NOT NULL DEFAULT '0', + `sys_groupid` int(11) unsigned NOT NULL DEFAULT '0', + `sys_perm_user` varchar(5) DEFAULT NULL, + `sys_perm_group` varchar(5) DEFAULT NULL, + `sys_perm_other` varchar(5) DEFAULT NULL, + `name` varchar(255) DEFAULT NULL, + `type` varchar(255) DEFAULT NULL, + `snippet` mediumtext, + `customer_viewable` ENUM('n','y') NOT NULL DEFAULT 'n', + `required_php_snippets` varchar(255) NOT NULL DEFAULT '', + `active` enum('n','y') NOT NULL DEFAULT 'y', + `master_directive_snippets_id` int(11) unsigned NOT NULL DEFAULT '0', + PRIMARY KEY (`directive_snippets_id`) +) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ; + +-- -------------------------------------------------------- + +-- +-- Table structure for table `dns_rr` +-- +CREATE TABLE `dns_rr` ( + `id` int(11) unsigned NOT NULL auto_increment, + `sys_userid` int(11) unsigned NOT NULL DEFAULT '0', + `sys_groupid` int(11) unsigned NOT NULL DEFAULT '0', + `sys_perm_user` varchar(5) NOT NULL DEFAULT '', + `sys_perm_group` varchar(5) NOT NULL DEFAULT '', + `sys_perm_other` varchar(5) NOT NULL DEFAULT '', + `server_id` int(11) NOT NULL default '1', + `zone` int(11) unsigned NOT NULL DEFAULT '0', + `name` varchar(255) NOT NULL DEFAULT '', + `type` enum('A','AAAA','ALIAS','CNAME','CAA','DS','HINFO','LOC','MX','NAPTR','NS','PTR','RP','SRV','TXT','TLSA','DNSKEY') default NULL, + `data` TEXT NOT NULL, + `aux` int(11) unsigned NOT NULL default '0', + `ttl` int(11) unsigned NOT NULL default '3600', + `active` enum('N','Y') NOT NULL default 'Y', + `stamp` timestamp NOT NULL default CURRENT_TIMESTAMP, + `serial` int(10) unsigned default NULL, + PRIMARY KEY (`id`), + KEY `rr` (`zone`,`type`,`name`) +) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ; + +-- -------------------------------------------------------- + +-- +-- Table structure for table `dns_slave` +-- + +CREATE TABLE `dns_slave` ( + `id` int(10) unsigned NOT NULL auto_increment, + `sys_userid` int(11) unsigned NOT NULL DEFAULT '0', + `sys_groupid` int(11) unsigned NOT NULL DEFAULT '0', + `sys_perm_user` varchar(5) NOT NULL DEFAULT '', + `sys_perm_group` varchar(5) NOT NULL DEFAULT '', + `sys_perm_other` varchar(5) NOT NULL DEFAULT '', + `server_id` int(11) NOT NULL default '1', + `origin` varchar(255) NOT NULL DEFAULT '', + `ns` varchar(255) NOT NULL DEFAULT '', + `active` enum('N','Y') NOT NULL DEFAULT 'N', + `xfer` TEXT NULL, + PRIMARY KEY (`id`), + UNIQUE KEY `slave` (`origin`,`server_id`), + KEY `active` (`active`) +) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ; + +-- -------------------------------------------------------- + +-- +-- Table structure for table `dns_ssl_ca` +-- + +CREATE TABLE IF NOT EXISTS `dns_ssl_ca` ( + `id` int(10) unsigned NOT NULL AUTO_INCREMENT, + `sys_userid` int(11) unsigned NOT NULL DEFAULT '0', + `sys_groupid` int(11) unsigned NOT NULL DEFAULT '0', + `sys_perm_user` varchar(5) NOT NULL DEFAULT '', + `sys_perm_group` varchar(5) NOT NULL DEFAULT '', + `sys_perm_other` varchar(5) NOT NULL DEFAULT '', + `active` enum('N','Y') NOT NULL DEFAULT 'N', + `ca_name` varchar(255) NOT NULL DEFAULT '', + `ca_issue` varchar(255) NOT NULL DEFAULT '', + `ca_wildcard` enum('Y','N') NOT NULL DEFAULT 'N', + `ca_iodef` text NOT NULL, + `ca_critical` tinyint(1) NOT NULL DEFAULT '0', + PRIMARY KEY (`id`), + UNIQUE KEY (`ca_issue`) +) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ; + +ALTER TABLE `dns_ssl_ca` ADD UNIQUE(`ca_issue`); + +INSERT INTO `dns_ssl_ca` (`id`, `sys_userid`, `sys_groupid`, `sys_perm_user`, `sys_perm_group`, `sys_perm_other`, `active`, `ca_name`, `ca_issue`, `ca_wildcard`, `ca_iodef`, `ca_critical`) VALUES +(NULL, 1, 1, 'riud', 'riud', '', 'Y', 'AC Camerfirma', 'camerfirma.com', 'Y', '', 0), +(NULL, 1, 1, 'riud', 'riud', '', 'Y', 'ACCV', 'accv.es', 'Y', '', 0), +(NULL, 1, 1, 'riud', 'riud', '', 'Y', 'Actalis', 'actalis.it', 'Y', '', 0), +(NULL, 1, 1, 'riud', 'riud', '', 'Y', 'Amazon', 'amazon.com', 'Y', '', 0), +(NULL, 1, 1, 'riud', 'riud', '', 'Y', 'Asseco', 'certum.pl', 'Y', '', 0), +(NULL, 1, 1, 'riud', 'riud', '', 'Y', 'Buypass', 'buypass.com', 'Y', '', 0), +(NULL, 1, 1, 'riud', 'riud', '', 'Y', 'CA Disig', 'disig.sk', 'Y', '', 0), +(NULL, 1, 1, 'riud', 'riud', '', 'Y', 'CATCert', 'aoc.cat', 'Y', '', 0), +(NULL, 1, 1, 'riud', 'riud', '', 'Y', 'Certinomis', 'www.certinomis.com', 'Y', '', 0), +(NULL, 1, 1, 'riud', 'riud', '', 'Y', 'Certizen', 'hongkongpost.gov.hk', 'Y', '', 0), +(NULL, 1, 1, 'riud', 'riud', '', 'Y', 'certSIGN', 'certsign.ro', 'Y', '', 0), +(NULL, 1, 1, 'riud', 'riud', '', 'Y', 'CFCA', 'cfca.com.cn', 'Y', '', 0), +(NULL, 1, 1, 'riud', 'riud', '', 'Y', 'Chunghwa Telecom', 'cht.com.tw', 'Y', '', 0), +(NULL, 1, 1, 'riud', 'riud', '', 'Y', 'Comodo', 'comodoca.com', 'Y', '', 0), +(NULL, 1, 1, 'riud', 'riud', '', 'Y', 'D-TRUST', 'd-trust.net', 'Y', '', 0), +(NULL, 1, 1, 'riud', 'riud', '', 'Y', 'DigiCert', 'digicert.com', 'Y', '', 0), +(NULL, 1, 1, 'riud', 'riud', '', 'Y', 'DocuSign', 'docusign.fr', 'Y', '', 0), +(NULL, 1, 1, 'riud', 'riud', '', 'Y', 'e-tugra', 'e-tugra.com', 'Y', '', 0), +(NULL, 1, 1, 'riud', 'riud', '', 'Y', 'EDICOM', 'edicomgroup.com', 'Y', '', 0), +(NULL, 1, 1, 'riud', 'riud', '', 'Y', 'Entrust', 'entrust.net', 'Y', '', 0), +(NULL, 1, 1, 'riud', 'riud', '', 'Y', 'Firmaprofesional', 'firmaprofesional.com', 'Y', '', 0), +(NULL, 1, 1, 'riud', 'riud', '', 'Y', 'FNMT', 'fnmt.es', 'Y', '', 0), +(NULL, 1, 1, 'riud', 'riud', '', 'Y', 'GlobalSign', 'globalsign.com', 'Y', '', 0), +(NULL, 1, 1, 'riud', 'riud', '', 'Y', 'GoDaddy', 'godaddy.com', 'Y', '', 0), +(NULL, 1, 1, 'riud', 'riud', '', 'Y', 'Google Trust Services', 'pki.goog', 'Y', '', 0), +(NULL, 1, 1, 'riud', 'riud', '', 'Y', 'GRCA', 'gca.nat.gov.tw', 'Y', '', 0), +(NULL, 1, 1, 'riud', 'riud', '', 'Y', 'HARICA', 'harica.gr', 'Y', '', 0), +(NULL, 1, 1, 'riud', 'riud', '', 'Y', 'IdenTrust', 'identrust.com', 'Y', '', 0), +(NULL, 1, 1, 'riud', 'riud', '', 'Y', 'Izenpe', 'izenpe.com', 'Y', '', 0), +(NULL, 1, 1, 'riud', 'riud', '', 'Y', 'Kamu SM', 'kamusm.gov.tr', 'Y', '', 0), +(NULL, 1, 1, 'riud', 'riud', '', 'Y', 'Let''s Encrypt', 'letsencrypt.org', 'Y', '', 0), +(NULL, 1, 1, 'riud', 'riud', '', 'Y', 'Microsec e-Szigno', 'e-szigno.hu', 'Y', '', 0), +(NULL, 1, 1, 'riud', 'riud', '', 'Y', 'NetLock', 'netlock.hu', 'Y', '', 0), +(NULL, 1, 1, 'riud', 'riud', '', 'Y', 'PKIoverheid', 'www.pkioverheid.nl', 'Y', '', 0), +(NULL, 1, 1, 'riud', 'riud', '', 'Y', 'PROCERT', 'procert.net.ve', 'Y', '', 0), +(NULL, 1, 1, 'riud', 'riud', '', 'Y', 'QuoVadis', 'quovadisglobal.com', 'Y', '', 0), +(NULL, 1, 1, 'riud', 'riud', '', 'Y', 'SECOM', 'secomtrust.net', 'Y', '', 0), +(NULL, 1, 1, 'riud', 'riud', '', 'Y', 'Sertifitseerimiskeskuse', 'sk.ee', 'Y', '', 0), +(NULL, 1, 1, 'riud', 'riud', '', 'Y', 'StartCom', 'startcomca.com', 'Y', '', 0), +(NULL, 1, 1, 'riud', 'riud', '', 'Y', 'SwissSign', 'swisssign.com', 'Y', '', 0), +(NULL, 1, 1, 'riud', 'riud', '', 'Y', 'Symantec / Thawte / GeoTrust', 'symantec.com', 'Y', '', 0), +(NULL, 1, 1, 'riud', 'riud', '', 'Y', 'T-Systems', 'telesec.de', 'Y', '', 0), +(NULL, 1, 1, 'riud', 'riud', '', 'Y', 'Telia', 'telia.com', 'Y', '', 0), +(NULL, 1, 1, 'riud', 'riud', '', 'Y', 'Trustwave', 'trustwave.com', 'Y', '', 0), +(NULL, 1, 1, 'riud', 'riud', '', 'Y', 'Web.com', 'web.com', 'Y', '', 0), +(NULL, 1, 1, 'riud', 'riud', '', 'Y', 'WISeKey', 'wisekey.com', 'Y', '', 0), +(NULL, 1, 1, 'riud', 'riud', '', 'Y', 'WoSign', 'wosign.com', 'Y', '', 0); + +-- -------------------------------------------------------- + +-- +-- Table structure for table `dns_soa` +-- + +CREATE TABLE `dns_soa` ( + `id` int(10) unsigned NOT NULL auto_increment, + `sys_userid` int(11) unsigned NOT NULL DEFAULT '0', + `sys_groupid` int(11) unsigned NOT NULL DEFAULT '0', + `sys_perm_user` varchar(5) NOT NULL DEFAULT '', + `sys_perm_group` varchar(5) NOT NULL DEFAULT '', + `sys_perm_other` varchar(5) NOT NULL DEFAULT '', + `server_id` int(11) NOT NULL default '1', + `origin` varchar(255) NOT NULL DEFAULT '', + `ns` varchar(255) NOT NULL DEFAULT '', + `mbox` varchar(255) NOT NULL DEFAULT '', + `serial` int(11) unsigned NOT NULL default '1', + `refresh` int(11) unsigned NOT NULL default '28800', + `retry` int(11) unsigned NOT NULL default '7200', + `expire` int(11) unsigned NOT NULL default '604800', + `minimum` int(11) unsigned NOT NULL default '3600', + `ttl` int(11) unsigned NOT NULL default '3600', + `active` enum('N','Y') NOT NULL DEFAULT 'N', + `xfer` TEXT NULL, + `also_notify` TEXT NULL, + `update_acl` varchar(255) default NULL, + `dnssec_initialized` ENUM('Y','N') NOT NULL DEFAULT 'N', + `dnssec_wanted` ENUM('Y','N') NOT NULL DEFAULT 'N', + `dnssec_last_signed` BIGINT NOT NULL DEFAULT '0', + `dnssec_info` TEXT NULL, + PRIMARY KEY (`id`), + UNIQUE KEY `origin` (`origin`), + KEY `active` (`active`) +) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ; + +-- -------------------------------------------------------- + +-- +-- Table structure for table `dns_template` +-- + +CREATE TABLE `dns_template` ( + `template_id` int(11) unsigned NOT NULL auto_increment, + `sys_userid` int(11) unsigned NOT NULL default '0', + `sys_groupid` int(11) unsigned NOT NULL default '0', + `sys_perm_user` varchar(5) default NULL, + `sys_perm_group` varchar(5) default NULL, + `sys_perm_other` varchar(5) default NULL, + `name` varchar(64) default NULL, + `fields` varchar(255) default NULL, + `template` text, + `visible` enum('N','Y') NOT NULL default 'Y', + PRIMARY KEY (`template_id`) +) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ; + +-- +-- Table structure for table `domain` +-- + +CREATE TABLE `domain` ( + `domain_id` int(11) unsigned NOT NULL auto_increment, + `sys_userid` int(11) unsigned NOT NULL default '0', + `sys_groupid` int(11) unsigned NOT NULL default '0', + `sys_perm_user` varchar(5) NOT NULL default '', + `sys_perm_group` varchar(5) NOT NULL default '', + `sys_perm_other` varchar(5) NOT NULL default '', + `domain` varchar(255) NOT NULL default '', + PRIMARY KEY (`domain_id`), + UNIQUE KEY `domain` (`domain`) +) ENGINE=MyISAM DEFAULT CHARSET=utf8 ; + +-- -------------------------------------------------------- + +-- +-- Table structure for table `firewall` +-- + +CREATE TABLE `firewall` ( + `firewall_id` int(11) unsigned NOT NULL auto_increment, + `sys_userid` int(11) unsigned NOT NULL default '0', + `sys_groupid` int(11) unsigned NOT NULL default '0', + `sys_perm_user` varchar(5) default NULL, + `sys_perm_group` varchar(5) default NULL, + `sys_perm_other` varchar(5) default NULL, + `server_id` int(11) unsigned NOT NULL default '0', + `tcp_port` text, + `udp_port` text, + `active` enum('n','y') NOT NULL default 'y', + PRIMARY KEY (`firewall_id`) +) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ; + +-- -------------------------------------------------------- + +-- +-- Table structure for table `ftp_user` +-- + +CREATE TABLE `ftp_user` ( + `ftp_user_id` int(11) unsigned NOT NULL auto_increment, + `sys_userid` int(11) unsigned NOT NULL default '0', + `sys_groupid` int(11) unsigned NOT NULL default '0', + `sys_perm_user` varchar(5) default NULL, + `sys_perm_group` varchar(5) default NULL, + `sys_perm_other` varchar(5) default NULL, + `server_id` int(11) unsigned NOT NULL default '0', + `parent_domain_id` int(11) unsigned NOT NULL default '0', + `username` varchar(64) default NULL, + `username_prefix` varchar(50) NOT NULL default '', + `password` varchar(64) default NULL, + `quota_size` bigint(20) NOT NULL default '-1', + `active` enum('n','y') NOT NULL default 'y', + `uid` varchar(64) default NULL, + `gid` varchar(64) default NULL, + `dir` varchar(255) default NULL, + `quota_files` bigint(20) NOT NULL default '-1', + `ul_ratio` int(11) NOT NULL default '-1', + `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 NULL DEFAULT NULL, + `user_type` set('user','system') NOT NULL DEFAULT 'user', + `user_config` text, + PRIMARY KEY (`ftp_user_id`), + KEY `active` (`active`), + KEY `server_id` (`server_id`), + KEY `username` (`username`), + KEY `quota_files` (`quota_files`) +) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ; + +-- -------------------------------------------------------- + +-- +-- Table structure for table `ftp_traffic` +-- + +CREATE TABLE `ftp_traffic` ( + `hostname` varchar(255) NOT NULL, + `traffic_date` date NOT NULL, + `in_bytes` bigint(32) unsigned NOT NULL, + `out_bytes` bigint(32) unsigned NOT NULL, + UNIQUE KEY (`hostname`,`traffic_date`) +) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ; + +-- -------------------------------------------------------- + +-- +-- Table structure for table `help_faq` +-- + +CREATE TABLE `help_faq` ( + `hf_id` int(11) NOT NULL AUTO_INCREMENT, + `hf_section` int(11) DEFAULT NULL, + `hf_order` int(11) DEFAULT '0', + `hf_question` text, + `hf_answer` text, + `sys_userid` int(11) DEFAULT NULL, + `sys_groupid` int(11) DEFAULT NULL, + `sys_perm_user` varchar(5) DEFAULT NULL, + `sys_perm_group` varchar(5) DEFAULT NULL, + `sys_perm_other` varchar(5) DEFAULT NULL, + PRIMARY KEY (`hf_id`) +) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ; + +-- -------------------------------------------------------- + +-- +-- Table structure for table `help_faq_sections` +-- + +CREATE TABLE `help_faq_sections` ( + `hfs_id` int(11) NOT NULL AUTO_INCREMENT, + `hfs_name` varchar(255) DEFAULT NULL, + `hfs_order` int(11) DEFAULT '0', + `sys_userid` int(11) DEFAULT NULL, + `sys_groupid` int(11) DEFAULT NULL, + `sys_perm_user` varchar(5) DEFAULT NULL, + `sys_perm_group` varchar(5) DEFAULT NULL, + `sys_perm_other` varchar(5) DEFAULT NULL, + PRIMARY KEY (`hfs_id`) +) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ; + +-- -------------------------------------------------------- + +-- Table structure for table `iptables` +-- + +DROP TABLE IF EXISTS `iptables`; +CREATE TABLE `iptables` ( + `iptables_id` int(10) unsigned NOT NULL AUTO_INCREMENT, + `server_id` int(10) unsigned NOT NULL DEFAULT '0', + `table` varchar(10) DEFAULT NULL COMMENT 'INPUT OUTPUT FORWARD', + `source_ip` varchar(16) DEFAULT NULL, + `destination_ip` varchar(16) DEFAULT NULL, + `protocol` varchar(10) DEFAULT 'TCP' COMMENT 'TCP UDP GRE', + `singleport` varchar(10) DEFAULT NULL, + `multiport` varchar(40) DEFAULT NULL, + `state` varchar(20) DEFAULT NULL COMMENT 'NEW ESTABLISHED RECNET etc', + `target` varchar(10) DEFAULT NULL COMMENT 'ACCEPT DROP REJECT LOG', + `active` enum('n','y') NOT NULL DEFAULT 'y', + PRIMARY KEY (`iptables_id`) +) ENGINE=MyISAM AUTO_INCREMENT=5 DEFAULT CHARSET=utf8; + +-- -------------------------------------------------------- + +-- +-- Table structure for table `mail_access` +-- + +CREATE TABLE `mail_access` ( + `access_id` int(11) unsigned NOT NULL auto_increment, + `sys_userid` int(11) unsigned NOT NULL default '0', + `sys_groupid` int(11) unsigned NOT NULL default '0', + `sys_perm_user` varchar(5) NOT NULL default '', + `sys_perm_group` varchar(5) NOT NULL default '', + `sys_perm_other` varchar(5) NOT NULL default '', + `server_id` int(11) NOT NULL default '0', + `source` varchar(255) NOT NULL DEFAULT '', + `access` varchar(255) NOT NULL DEFAULT '', + `type` set('recipient','sender','client') NOT NULL DEFAULT 'recipient', + `active` enum('n','y') NOT NULL default 'y', + PRIMARY KEY (`access_id`), + KEY `server_id` (`server_id`,`source`) +) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ; + +-- -------------------------------------------------------- + +-- +-- Table structure for table `mail_backup` +-- + +CREATE TABLE `mail_backup` ( + `backup_id` int(10) unsigned NOT NULL AUTO_INCREMENT, + `server_id` int(10) unsigned NOT NULL DEFAULT '0', + `parent_domain_id` int(10) unsigned NOT NULL DEFAULT '0', + `mailuser_id` int(10) unsigned NOT NULL DEFAULT '0', + `backup_mode` varchar(64) NOT NULL DEFAULT '', + `tstamp` int(10) unsigned NOT NULL DEFAULT '0', + `filename` varchar(255) NOT NULL DEFAULT '', + `filesize` VARCHAR(20) NOT NULL DEFAULT '', + PRIMARY KEY (`backup_id`) +) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ; + +-- -------------------------------------------------------- + +-- +-- Table structure for table `mail_content_filter` +-- + +CREATE TABLE `mail_content_filter` ( + `content_filter_id` int(11) unsigned NOT NULL auto_increment, + `sys_userid` int(11) unsigned NOT NULL default '0', + `sys_groupid` int(11) unsigned NOT NULL default '0', + `sys_perm_user` varchar(5) default NULL, + `sys_perm_group` varchar(5) default NULL, + `sys_perm_other` varchar(5) default NULL, + `server_id` int(11) NOT NULL default '0', + `type` varchar(255) default NULL, + `pattern` varchar(255) default NULL, + `data` varchar(255) default NULL, + `action` varchar(255) default NULL, + `active` varchar(255) NOT NULL default 'y', + PRIMARY KEY (`content_filter_id`) +) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ; + +-- -------------------------------------------------------- + +-- +-- Table structure for table `mail_domain` +-- + +CREATE TABLE `mail_domain` ( + `domain_id` int(11) unsigned NOT NULL auto_increment, + `sys_userid` int(11) unsigned NOT NULL default '0', + `sys_groupid` int(11) unsigned NOT NULL default '0', + `sys_perm_user` varchar(5) NOT NULL default '', + `sys_perm_group` varchar(5) NOT NULL default '', + `sys_perm_other` varchar(5) NOT NULL default '', + `server_id` int(11) unsigned NOT NULL default '0', + `domain` varchar(255) NOT NULL default '', + `dkim` ENUM( 'n', 'y' ) NOT NULL default 'n', + `dkim_selector` varchar(63) NOT NULL DEFAULT 'default', + `dkim_private` mediumtext NULL, + `dkim_public` mediumtext NULL, + `active` enum('n','y') NOT NULL DEFAULT 'n', + PRIMARY KEY (`domain_id`), + KEY `server_id` (`server_id`,`domain`), + KEY `domain_active` (`domain`,`active`) +) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ; + +-- -------------------------------------------------------- + +-- +-- Table structure for table `mail_forwarding` +-- + +CREATE TABLE `mail_forwarding` ( + `forwarding_id` int(11) unsigned NOT NULL auto_increment, + `sys_userid` int(11) unsigned NOT NULL default '0', + `sys_groupid` int(11) unsigned NOT NULL default '0', + `sys_perm_user` varchar(5) NOT NULL default '', + `sys_perm_group` varchar(5) NOT NULL default '', + `sys_perm_other` varchar(5) NOT NULL default '', + `server_id` int(11) unsigned NOT NULL default '0', + `source` varchar(255) NOT NULL DEFAULT '', + `destination` text, + `type` enum('alias','aliasdomain','forward','catchall') NOT NULL default 'alias', + `active` enum('n','y') NOT NULL DEFAULT 'n', + `allow_send_as` ENUM('n','y') NOT NULL DEFAULT 'n', + `greylisting` enum('n','y' ) NOT NULL DEFAULT 'n', + PRIMARY KEY (`forwarding_id`), + KEY `server_id` (`server_id`,`source`), + KEY `type` (`type`) +) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ; + +-- -------------------------------------------------------- + +-- +-- Table structure for table `mail_get` +-- + +CREATE TABLE `mail_get` ( + `mailget_id` int(11) unsigned NOT NULL auto_increment, + `sys_userid` int(11) unsigned NOT NULL default '0', + `sys_groupid` int(11) unsigned NOT NULL default '0', + `sys_perm_user` varchar(5) default NULL, + `sys_perm_group` varchar(5) default NULL, + `sys_perm_other` varchar(5) default NULL, + `server_id` int(11) unsigned NOT NULL default '0', + `type` varchar(255) default NULL, + `source_server` varchar(255) default NULL, + `source_username` varchar(255) default NULL, + `source_password` varchar(64) default NULL, + `source_delete` varchar(255) NOT NULL default 'y', + `source_read_all` varchar(255) NOT NULL default 'y', + `destination` varchar(255) default NULL, + `active` varchar(255) NOT NULL default 'y', + PRIMARY KEY (`mailget_id`) +) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ; + +-- -------------------------------------------------------- + +-- +-- Tabellenstruktur für Tabelle `mail_mailinglist` +-- + +CREATE TABLE `mail_mailinglist` ( + `mailinglist_id` int(11) unsigned NOT NULL auto_increment, + `sys_userid` int(11) unsigned NOT NULL default '0', + `sys_groupid` int(11) unsigned NOT NULL default '0', + `sys_perm_user` varchar(5) NOT NULL DEFAULT '', + `sys_perm_group` varchar(5) NOT NULL DEFAULT '', + `sys_perm_other` varchar(5) NOT NULL DEFAULT '', + `server_id` int(11) unsigned NOT NULL default '0', + `domain` varchar(255) NOT NULL DEFAULT '', + `listname` varchar(255) NOT NULL DEFAULT '', + `email` varchar(255) NOT NULL DEFAULT '', + `password` varchar(255) NOT NULL DEFAULT '', + PRIMARY KEY (`mailinglist_id`) +) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ; + +-- -------------------------------------------------------- + +-- +-- Table structure for Table `mail_relay_recipient` +-- + +CREATE TABLE IF NOT EXISTS `mail_relay_recipient` ( + `relay_recipient_id` bigint(20) NOT NULL AUTO_INCREMENT, + `sys_userid` int(11) NOT NULL DEFAULT '0', + `sys_groupid` int(11) NOT NULL DEFAULT '0', + `sys_perm_user` varchar(5) DEFAULT NULL, + `sys_perm_group` varchar(5) DEFAULT NULL, + `sys_perm_other` varchar(5) DEFAULT NULL, + `server_id` int(11) NOT NULL DEFAULT '0', + `source` varchar(255) DEFAULT NULL, + `access` varchar(255) NOT NULL DEFAULT 'OK', + `active` varchar(255) NOT NULL DEFAULT 'y', + PRIMARY KEY (`relay_recipient_id`) +) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ; + +-- -------------------------------------------------------- + +-- +-- Table structure for table `mail_traffic` +-- + +CREATE TABLE `mail_traffic` ( + `traffic_id` int(11) unsigned NOT NULL auto_increment, + `mailuser_id` int(11) unsigned NOT NULL DEFAULT '0', + `month` char(7) NOT NULL DEFAULT '', + `traffic` bigint(20) unsigned NOT NULL DEFAULT '0', + PRIMARY KEY (`traffic_id`), + KEY `mailuser_id` (`mailuser_id`,`month`) +) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ; + +-- -------------------------------------------------------- + +-- +-- Table structure for table `mail_transport` +-- + +CREATE TABLE `mail_transport` ( + `transport_id` int(11) unsigned NOT NULL auto_increment, + `sys_userid` int(11) unsigned NOT NULL default '0', + `sys_groupid` int(11) unsigned NOT NULL default '0', + `sys_perm_user` varchar(5) NOT NULL default '', + `sys_perm_group` varchar(5) NOT NULL default '', + `sys_perm_other` varchar(5) NOT NULL default '', + `server_id` int(11) unsigned NOT NULL default '0', + `domain` varchar(255) NOT NULL default '', + `transport` varchar(255) NOT NULL DEFAULT '', + `sort_order` int(11) unsigned NOT NULL default '5', + `active` enum('n','y') NOT NULL DEFAULT 'n', + PRIMARY KEY (`transport_id`), + KEY `server_id` (`server_id`,`transport`), + KEY `server_id_2` (`server_id`,`domain`) +) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ; + +-- -------------------------------------------------------- + +-- +-- Table structure for table `mail_user` +-- + +CREATE TABLE `mail_user` ( + `mailuser_id` int(11) unsigned NOT NULL auto_increment, + `sys_userid` int(11) unsigned NOT NULL default '0', + `sys_groupid` int(11) unsigned NOT NULL default '0', + `sys_perm_user` varchar(5) NOT NULL default '', + `sys_perm_group` varchar(5) NOT NULL default '', + `sys_perm_other` varchar(5) NOT NULL default '', + `server_id` int(11) unsigned NOT NULL default '0', + `email` varchar(255) NOT NULL default '', + `login` varchar(255) NOT NULL default '', + `password` varchar(255) NOT NULL default '', + `name` varchar(255) NOT NULL default '', + `uid` int(11) NOT NULL default '5000', + `gid` int(11) NOT NULL default '5000', + `maildir` varchar(255) NOT NULL default '', + `maildir_format` varchar(255) NOT NULL default 'maildir', + `quota` bigint(20) NOT NULL default '-1', + `cc` varchar(255) NOT NULL default '', + `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 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', + `custom_mailfilter` mediumtext, + `postfix` enum('n','y') NOT NULL default 'y', + `greylisting` enum('n','y' ) NOT NULL DEFAULT 'n', + `access` enum('n','y') NOT NULL default 'y', + `disableimap` enum('n','y') NOT NULL default 'n', + `disablepop3` enum('n','y') NOT NULL default 'n', + `disabledeliver` enum('n','y') NOT NULL default 'n', + `disablesmtp` enum('n','y') NOT NULL default 'n', + `disablesieve` enum('n','y') NOT NULL default 'n', + `disablesieve-filter` enum('n','y') NOT NULL default 'n', + `disablelda` enum('n','y') NOT NULL default 'n', + `disablelmtp` enum('n','y') NOT NULL default 'n', + `disabledoveadm` enum('n','y') NOT NULL default 'n', + `last_quota_notification` date NULL default NULL, + `backup_interval` VARCHAR( 255 ) NOT NULL default 'none', + `backup_copies` INT NOT NULL DEFAULT '1', + PRIMARY KEY (`mailuser_id`), + KEY `server_id` (`server_id`,`email`), + KEY `email_access` (`email`,`access`) +) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ; + +-- -------------------------------------------------------- + +-- +-- Table structure for table `mail_user_filter` +-- + +CREATE TABLE `mail_user_filter` ( + `filter_id` int(11) unsigned NOT NULL auto_increment, + `sys_userid` int(11) unsigned NOT NULL default '0', + `sys_groupid` int(11) unsigned NOT NULL default '0', + `sys_perm_user` varchar(5) default NULL, + `sys_perm_group` varchar(5) default NULL, + `sys_perm_other` varchar(5) default NULL, + `mailuser_id` int(11) unsigned NOT NULL default '0', + `rulename` varchar(64) default NULL, + `source` varchar(255) default NULL, + `searchterm` varchar(255) default NULL, + `op` varchar(255) default NULL, + `action` varchar(255) default NULL, + `target` varchar(255) default NULL, + `active` enum('n','y') NOT NULL default 'y', + PRIMARY KEY (`filter_id`) +) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ; + +-- -------------------------------------------------------- + +-- +-- Table structure for table `monitor_data` +-- + +CREATE TABLE `monitor_data` ( + `server_id` int(11) unsigned NOT NULL default '0', + `type` varchar(255) NOT NULL default '', + `created` int(11) unsigned NOT NULL default '0', + `data` mediumtext, + `state` enum('no_state','unknown','ok','info','warning','critical','error') NOT NULL DEFAULT 'unknown', + PRIMARY KEY (`server_id`,`type`,`created`) +) ENGINE=MyISAM DEFAULT CHARSET=utf8 ; + +-- -------------------------------------------------------- + +-- +-- Table structure for table `openvz_ip` +-- + +CREATE TABLE IF NOT EXISTS `openvz_ip` ( + `ip_address_id` bigint(20) NOT NULL AUTO_INCREMENT, + `sys_userid` int(11) NOT NULL DEFAULT '0', + `sys_groupid` int(11) NOT NULL DEFAULT '0', + `sys_perm_user` varchar(5) DEFAULT NULL, + `sys_perm_group` varchar(5) DEFAULT NULL, + `sys_perm_other` varchar(5) DEFAULT NULL, + `server_id` int(11) NOT NULL DEFAULT '0', + `ip_address` varchar(39) DEFAULT NULL, + `vm_id` int(11) NOT NULL DEFAULT '0', + `reserved` varchar(255) NOT NULL DEFAULT 'n', + `additional` varchar(255) NOT NULL DEFAULT 'n', + PRIMARY KEY (`ip_address_id`) +) ENGINE=MyISAM DEFAULT CHARSET=utf8 ; + +-- +-- Dumping data for table `openvz_ip` +-- + +-- -------------------------------------------------------- + +-- +-- Table structure for table `openvz_ostemplate` +-- + +CREATE TABLE IF NOT EXISTS `openvz_ostemplate` ( + `ostemplate_id` bigint(20) NOT NULL AUTO_INCREMENT, + `sys_userid` int(11) NOT NULL DEFAULT '0', + `sys_groupid` int(11) NOT NULL DEFAULT '0', + `sys_perm_user` varchar(5) DEFAULT NULL, + `sys_perm_group` varchar(5) DEFAULT NULL, + `sys_perm_other` varchar(5) DEFAULT NULL, + `template_name` varchar(255) DEFAULT NULL, + `template_file` varchar(255) NOT NULL DEFAULT '', + `server_id` int(11) NOT NULL DEFAULT '0', + `allservers` varchar(255) NOT NULL DEFAULT 'y', + `active` varchar(255) NOT NULL DEFAULT 'y', + `description` text, + PRIMARY KEY (`ostemplate_id`) +) ENGINE=MyISAM DEFAULT CHARSET=utf8 ; + +-- +-- Dumping data for table `openvz_ostemplate` +-- + +INSERT INTO `openvz_ostemplate` (`ostemplate_id`, `sys_userid`, `sys_groupid`, `sys_perm_user`, `sys_perm_group`, `sys_perm_other`, `template_name`, `template_file`, `server_id`, `allservers`, `active`, `description`) VALUES(1, 1, 1, 'riud', 'riud', '', 'Debian minimal', 'debian-minimal-x86', 1, 'y', 'y', 'Debian minimal image.'); + +-- -------------------------------------------------------- + +-- +-- Table structure for table `openvz_template` +-- + +CREATE TABLE IF NOT EXISTS `openvz_template` ( + `template_id` bigint(20) NOT NULL AUTO_INCREMENT, + `sys_userid` int(11) NOT NULL DEFAULT '0', + `sys_groupid` int(11) NOT NULL DEFAULT '0', + `sys_perm_user` varchar(5) DEFAULT NULL, + `sys_perm_group` varchar(5) DEFAULT NULL, + `sys_perm_other` varchar(5) DEFAULT NULL, + `template_name` varchar(255) DEFAULT NULL, + `diskspace` int(11) NOT NULL DEFAULT '0', + `traffic` int(11) NOT NULL DEFAULT '-1', + `bandwidth` int(11) NOT NULL DEFAULT '-1', + `ram` int(11) NOT NULL DEFAULT '0', + `ram_burst` int(11) NOT NULL DEFAULT '0', + `cpu_units` int(11) NOT NULL DEFAULT '1000', + `cpu_num` int(11) NOT NULL DEFAULT '4', + `cpu_limit` int(11) NOT NULL DEFAULT '400', + `io_priority` int(11) NOT NULL DEFAULT '4', + `active` varchar(255) NOT NULL DEFAULT 'y', + `description` text, + `numproc` varchar(255) DEFAULT NULL, + `numtcpsock` varchar(255) DEFAULT NULL, + `numothersock` varchar(255) DEFAULT NULL, + `vmguarpages` varchar(255) DEFAULT NULL, + `kmemsize` varchar(255) DEFAULT NULL, + `tcpsndbuf` varchar(255) DEFAULT NULL, + `tcprcvbuf` varchar(255) DEFAULT NULL, + `othersockbuf` varchar(255) DEFAULT NULL, + `dgramrcvbuf` varchar(255) DEFAULT NULL, + `oomguarpages` varchar(255) DEFAULT NULL, + `privvmpages` varchar(255) DEFAULT NULL, + `lockedpages` varchar(255) DEFAULT NULL, + `shmpages` varchar(255) DEFAULT NULL, + `physpages` varchar(255) DEFAULT NULL, + `numfile` varchar(255) DEFAULT NULL, + `avnumproc` varchar(255) DEFAULT NULL, + `numflock` varchar(255) DEFAULT NULL, + `numpty` varchar(255) DEFAULT NULL, + `numsiginfo` varchar(255) DEFAULT NULL, + `dcachesize` varchar(255) DEFAULT NULL, + `numiptent` varchar(255) DEFAULT NULL, + `swappages` varchar(255) DEFAULT NULL, + `hostname` varchar(255) DEFAULT NULL, + `nameserver` varchar(255) DEFAULT NULL, + `create_dns` varchar(1) NOT NULL DEFAULT 'n', + `capability` varchar(255) DEFAULT NULL, + `features` varchar(255) DEFAULT NULL, + `iptables` varchar(255) DEFAULT NULL, + `custom` text, + PRIMARY KEY (`template_id`) +) ENGINE=MyISAM DEFAULT CHARSET=utf8 ; + +-- +-- Dumping data for table `openvz_template` +-- + +INSERT INTO `openvz_template` (`template_id`, `sys_userid`, `sys_groupid`, `sys_perm_user`, `sys_perm_group`, `sys_perm_other`, `template_name`, `diskspace`, `traffic`, `bandwidth`, `ram`, `ram_burst`, `cpu_units`, `cpu_num`, `cpu_limit`, `io_priority`, `active`, `description`, `numproc`, `numtcpsock`, `numothersock`, `vmguarpages`, `kmemsize`, `tcpsndbuf`, `tcprcvbuf`, `othersockbuf`, `dgramrcvbuf`, `oomguarpages`, `privvmpages`, `lockedpages`, `shmpages`, `physpages`, `numfile`, `avnumproc`, `numflock`, `numpty`, `numsiginfo`, `dcachesize`, `numiptent`, `swappages`, `hostname`, `nameserver`, `create_dns`, `capability`, `features`, `iptables`, `custom`) VALUES(1, 1, 1, 'riud', 'riud', '', 'small', 10, -1, -1, 256, 512, 1000, 4, 400, 4, 'y', '', '999999:999999', '7999992:7999992', '7999992:7999992', '65536:unlimited', '2147483646:2147483646', '214748160:396774400', '214748160:396774400', '214748160:396774400', '214748160:396774400', '65536:65536', '131072:139264', '999999:999999', '65536:65536', '0:2147483647', '23999976:23999976', '180:180', '999999:999999', '500000:500000', '999999:999999', '2147483646:2147483646', '999999:999999', '256000:256000', 'v{VEID}.test.tld', '8.8.8.8 8.8.4.4', 'n', '', '', '', ''); + +-- -------------------------------------------------------- + +-- +-- Table structure for table `openvz_traffic` +-- + +CREATE TABLE IF NOT EXISTS `openvz_traffic` ( + `veid` int(11) NOT NULL DEFAULT '0', + `traffic_date` date NULL DEFAULT NULL, + `traffic_bytes` bigint(32) unsigned NOT NULL DEFAULT '0', + UNIQUE KEY (`veid`,`traffic_date`) +) ENGINE=MyISAM DEFAULT CHARSET=utf8; + +-- +-- Dumping data for table `openvz_traffic` +-- + + +-- -------------------------------------------------------- + +-- +-- Table structure for table `openvz_vm` +-- + +CREATE TABLE IF NOT EXISTS `openvz_vm` ( + `vm_id` bigint(20) NOT NULL AUTO_INCREMENT, + `sys_userid` int(11) NOT NULL DEFAULT '0', + `sys_groupid` int(11) NOT NULL DEFAULT '0', + `sys_perm_user` varchar(5) DEFAULT NULL, + `sys_perm_group` varchar(5) DEFAULT NULL, + `sys_perm_other` varchar(5) DEFAULT NULL, + `server_id` int(11) NOT NULL DEFAULT '0', + `veid` int(10) unsigned NOT NULL DEFAULT '0', + `ostemplate_id` int(11) NOT NULL DEFAULT '0', + `template_id` int(11) NOT NULL DEFAULT '0', + `ip_address` varchar(255) NOT NULL DEFAULT '', + `hostname` varchar(255) DEFAULT NULL, + `vm_password` varchar(255) DEFAULT NULL, + `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 NULL DEFAULT NULL, + `description` text, + `diskspace` int(11) NOT NULL DEFAULT '0', + `traffic` int(11) NOT NULL DEFAULT '-1', + `bandwidth` int(11) NOT NULL DEFAULT '-1', + `ram` int(11) NOT NULL DEFAULT '0', + `ram_burst` int(11) NOT NULL DEFAULT '0', + `cpu_units` int(11) NOT NULL DEFAULT '1000', + `cpu_num` int(11) NOT NULL DEFAULT '4', + `cpu_limit` int(11) NOT NULL DEFAULT '400', + `io_priority` int(11) NOT NULL DEFAULT '4', + `nameserver` varchar(255) NOT NULL DEFAULT '8.8.8.8 8.8.4.4', + `create_dns` varchar(1) NOT NULL DEFAULT 'n', + `capability` text, + `features` text, + `iptabless` text, + `config` mediumtext, + `custom` text, + PRIMARY KEY (`vm_id`) +) ENGINE=MyISAM DEFAULT CHARSET=utf8 ; + +-- +-- Dumping data for table `openvz_vm` +-- + +-- -------------------------------------------------------- + +-- +-- Table structure for table `remote_session` +-- + +CREATE TABLE `remote_session` ( + `remote_session` varchar(64) NOT NULL DEFAULT '', + `remote_userid` int(11) unsigned NOT NULL DEFAULT '0', + `remote_functions` text, + `client_login` tinyint(1) unsigned NOT NULL default '0', + `tstamp` int(10) unsigned NOT NULL DEFAULT '0', + PRIMARY KEY (`remote_session`) +) ENGINE=MyISAM DEFAULT CHARSET=utf8 ; + +-- -------------------------------------------------------- + +-- +-- Table structure for table `remote_user` +-- + +CREATE TABLE `remote_user` ( + `remote_userid` int(11) unsigned NOT NULL auto_increment, + `sys_userid` int(11) unsigned NOT NULL default '0', + `sys_groupid` int(11) unsigned NOT NULL default '0', + `sys_perm_user` varchar(5) default NULL, + `sys_perm_group` varchar(5) default NULL, + `sys_perm_other` varchar(5) default NULL, + `remote_username` varchar(64) NOT NULL DEFAULT '', + `remote_password` varchar(64) NOT NULL DEFAULT '', + `remote_access` enum('y','n') NOT NULL DEFAULT 'y', + `remote_ips` TEXT, + `remote_functions` text, + PRIMARY KEY (`remote_userid`) +) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ; + +-- -------------------------------------------------------- + +-- +-- Table structure for table `server` +-- + +CREATE TABLE `server` ( + `server_id` int(11) unsigned NOT NULL auto_increment, + `sys_userid` int(11) unsigned NOT NULL default '0', + `sys_groupid` int(11) unsigned NOT NULL default '0', + `sys_perm_user` varchar(5) NOT NULL default '', + `sys_perm_group` varchar(5) NOT NULL default '', + `sys_perm_other` varchar(5) NOT NULL default '', + `server_name` varchar(255) NOT NULL default '', + `mail_server` tinyint(1) NOT NULL default '0', + `web_server` tinyint(1) NOT NULL default '0', + `dns_server` tinyint(1) NOT NULL default '0', + `file_server` tinyint(1) NOT NULL default '0', + `db_server` tinyint(1) NOT NULL default '0', + `vserver_server` tinyint(1) NOT NULL default '0', + `proxy_server` tinyint(1) NOT NULL default '0', + `firewall_server` tinyint(1) NOT NULL default '0', + `xmpp_server` tinyint(1) NOT NULL default '0', + `config` text, + `updated` bigint(20) unsigned NOT NULL default '0', + `mirror_server_id` int(11) unsigned NOT NULL default '0', + `dbversion` int(11) unsigned NOT NULL default '1', + `active` tinyint(1) NOT NULL default '1', + PRIMARY KEY (`server_id`) +) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ; + +-- -------------------------------------------------------- + +-- +-- Table structure for table `server_ip` +-- + +CREATE TABLE `server_ip` ( + `server_ip_id` int(11) unsigned NOT NULL auto_increment, + `sys_userid` int(11) unsigned NOT NULL default '0', + `sys_groupid` int(11) unsigned NOT NULL default '0', + `sys_perm_user` varchar(5) default NULL, + `sys_perm_group` varchar(5) default NULL, + `sys_perm_other` varchar(5) default NULL, + `server_id` int(11) unsigned NOT NULL default '0', + `client_id` int(11) unsigned NOT NULL default '0', + `ip_type` enum( 'IPv4', 'IPv6' ) NOT NULL DEFAULT 'IPv4', + `ip_address` varchar(39) default NULL, + `virtualhost` enum('n','y') NOT NULL default 'y', + `virtualhost_port` varchar(255) default '80,443', + PRIMARY KEY (`server_ip_id`) +) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ; + +-- -------------------------------------------------------- + +-- +-- Table structure for table `server_ip_map` +-- + +CREATE TABLE `server_ip_map` ( + `server_ip_map_id` int(11) unsigned NOT NULL AUTO_INCREMENT, + `sys_userid` int(11) unsigned NOT NULL DEFAULT '0', + `sys_groupid` int(11) unsigned NOT NULL DEFAULT '0', + `sys_perm_user` varchar(5) DEFAULT NULL, + `sys_perm_group` varchar(5) DEFAULT NULL, + `sys_perm_other` varchar(5) DEFAULT NULL, + `server_id` int(11) unsigned NOT NULL DEFAULT '0', + `source_ip` varchar(15) DEFAULT NULL, + `destination_ip` varchar(35) DEFAULT '', + `active` enum('n','y') NOT NULL DEFAULT 'y', + PRIMARY KEY (`server_ip_map_id`) +) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ; + +-- -------------------------------------------------------- + +-- +-- Table structure for table `server_php` +-- + +CREATE TABLE `server_php` ( + `server_php_id` int(11) unsigned NOT NULL AUTO_INCREMENT, + `sys_userid` int(11) unsigned NOT NULL DEFAULT '0', + `sys_groupid` int(11) unsigned NOT NULL DEFAULT '0', + `sys_perm_user` varchar(5) DEFAULT NULL, + `sys_perm_group` varchar(5) DEFAULT NULL, + `sys_perm_other` varchar(5) DEFAULT NULL, + `server_id` int(11) unsigned NOT NULL DEFAULT '0', + `client_id` int(11) unsigned NOT NULL DEFAULT '0', + `name` varchar(255) DEFAULT NULL, + `php_fastcgi_binary` varchar(255) DEFAULT NULL, + `php_fastcgi_ini_dir` varchar(255) DEFAULT NULL, + `php_fpm_init_script` varchar(255) DEFAULT NULL, + `php_fpm_ini_dir` varchar(255) DEFAULT NULL, + `php_fpm_pool_dir` varchar(255) DEFAULT NULL, + `active` enum('n','y') NOT NULL DEFAULT 'y', + PRIMARY KEY (`server_php_id`) +) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ; + +-- -------------------------------------------------------- + +-- +-- Table structure for table `shell_user` +-- + +CREATE TABLE `shell_user` ( + `shell_user_id` int(11) unsigned NOT NULL auto_increment, + `sys_userid` int(11) unsigned NOT NULL default '0', + `sys_groupid` int(11) unsigned NOT NULL default '0', + `sys_perm_user` varchar(5) default NULL, + `sys_perm_group` varchar(5) default NULL, + `sys_perm_other` varchar(5) default NULL, + `server_id` int(11) unsigned NOT NULL default '0', + `parent_domain_id` int(11) unsigned NOT NULL default '0', + `username` varchar(64) default NULL, + `username_prefix` varchar(50) NOT NULL default '', + `password` varchar(64) default NULL, + `quota_size` bigint(20) NOT NULL default '-1', + `active` enum('n','y') NOT NULL default 'y', + `puser` varchar(255) default NULL, + `pgroup` varchar(255) default NULL, + `shell` varchar(255) NOT NULL default '/bin/bash', + `dir` varchar(255) default NULL, + `chroot` varchar(255) NOT NULL DEFAULT '', + `ssh_rsa` text, + PRIMARY KEY (`shell_user_id`) +) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ; + +-- -------------------------------------------------------- + +-- +-- Table structure for table `software_package` +-- + +CREATE TABLE `software_package` ( + `package_id` int(11) unsigned NOT NULL auto_increment, + `software_repo_id` int(11) unsigned NOT NULL DEFAULT '0', + `package_name` varchar(64) NOT NULL DEFAULT '', + `package_title` varchar(64) NOT NULL DEFAULT '', + `package_description` text, + `package_version` varchar(8) default NULL, + `package_type` enum('ispconfig','app','web') NOT NULL default 'app', + `package_installable` enum('yes','no','key') NOT NULL default 'yes', + `package_requires_db` enum('no','mysql') NOT NULL default 'no', + `package_remote_functions` text, + `package_key` varchar(255) NOT NULL DEFAULT '', + `package_config` text, + PRIMARY KEY (`package_id`), + UNIQUE KEY `package_name` (`package_name`) +) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ; + +-- -------------------------------------------------------- + +-- +-- Table structure for table `software_repo` +-- + +CREATE TABLE `software_repo` ( + `software_repo_id` int(11) unsigned NOT NULL auto_increment, + `sys_userid` int(11) unsigned NOT NULL default '0', + `sys_groupid` int(11) unsigned NOT NULL default '0', + `sys_perm_user` varchar(5) default NULL, + `sys_perm_group` varchar(5) default NULL, + `sys_perm_other` varchar(5) default NULL, + `repo_name` varchar(64) default NULL, + `repo_url` varchar(255) default NULL, + `repo_username` varchar(64) default NULL, + `repo_password` varchar(64) default NULL, + `active` enum('n','y') NOT NULL default 'y', + PRIMARY KEY (`software_repo_id`) +) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ; + +-- -------------------------------------------------------- + +-- +-- Table structure for table `software_update` +-- + +CREATE TABLE `software_update` ( + `software_update_id` int(11) unsigned NOT NULL auto_increment, + `software_repo_id` int(11) unsigned NOT NULL DEFAULT '0', + `package_name` varchar(64) NOT NULL DEFAULT '', + `update_url` varchar(255) NOT NULL DEFAULT '', + `update_md5` varchar(255) NOT NULL DEFAULT '', + `update_dependencies` varchar(255) NOT NULL DEFAULT '', + `update_title` varchar(64) NOT NULL DEFAULT '', + `v1` tinyint(1) NOT NULL default '0', + `v2` tinyint(1) NOT NULL default '0', + `v3` tinyint(1) NOT NULL default '0', + `v4` tinyint(1) NOT NULL default '0', + `type` enum('full','update') NOT NULL default 'full', + PRIMARY KEY (`software_update_id`) +) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ; + +-- -------------------------------------------------------- + +-- +-- Table structure for table `software_update_inst` +-- + +CREATE TABLE `software_update_inst` ( + `software_update_inst_id` int(11) unsigned NOT NULL auto_increment, + `software_update_id` int(11) unsigned NOT NULL default '0', + `package_name` varchar(64) NOT NULL DEFAULT '', + `server_id` int(11) unsigned NOT NULL DEFAULT '0', + `status` enum('none','installing','installed','deleting','deleted','failed') NOT NULL default 'none', + PRIMARY KEY (`software_update_inst_id`), + UNIQUE KEY `software_update_id` (`software_update_id`,`package_name`,`server_id`) +) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ; + +-- -------------------------------------------------------- + +-- +-- Table structure for table `spamfilter_policy` +-- + +CREATE TABLE `spamfilter_policy` ( + `id` int(11) unsigned NOT NULL auto_increment, + `sys_userid` int(11) unsigned NOT NULL DEFAULT '0', + `sys_groupid` int(11) unsigned NOT NULL DEFAULT '0', + `sys_perm_user` varchar(5) NOT NULL DEFAULT '', + `sys_perm_group` varchar(5) NOT NULL DEFAULT '', + `sys_perm_other` varchar(5) NOT NULL DEFAULT '', + `policy_name` varchar(64) default NULL, + `virus_lover` enum('N','Y') default 'N', + `spam_lover` enum('N','Y') default 'N', + `banned_files_lover` enum('N','Y') default 'N', + `bad_header_lover` enum('N','Y') default 'N', + `bypass_virus_checks` enum('N','Y') default 'N', + `bypass_spam_checks` enum('N','Y') default 'N', + `bypass_banned_checks` enum('N','Y') default 'N', + `bypass_header_checks` enum('N','Y') default 'N', + `spam_modifies_subj` enum('N','Y') default 'N', + `virus_quarantine_to` varchar(255) default NULL, + `spam_quarantine_to` varchar(255) default NULL, + `banned_quarantine_to` varchar(255) default NULL, + `bad_header_quarantine_to` varchar(255) default NULL, + `clean_quarantine_to` varchar(255) default NULL, + `other_quarantine_to` varchar(255) default NULL, + `spam_tag_level` DECIMAL(5,2) default NULL, + `spam_tag2_level` DECIMAL(5,2) default NULL, + `spam_kill_level` DECIMAL(5,2) default NULL, + `spam_dsn_cutoff_level` DECIMAL(5,2) default NULL, + `spam_quarantine_cutoff_level` DECIMAL(5,2) default NULL, + `addr_extension_virus` varchar(64) default NULL, + `addr_extension_spam` varchar(64) default NULL, + `addr_extension_banned` varchar(64) default NULL, + `addr_extension_bad_header` varchar(64) default NULL, + `warnvirusrecip` enum('N','Y') default 'N', + `warnbannedrecip` enum('N','Y') default 'N', + `warnbadhrecip` enum('N','Y') default 'N', + `newvirus_admin` varchar(64) default NULL, + `virus_admin` varchar(64) default NULL, + `banned_admin` varchar(64) default NULL, + `bad_header_admin` varchar(64) default NULL, + `spam_admin` varchar(64) default NULL, + `spam_subject_tag` varchar(64) default NULL, + `spam_subject_tag2` varchar(64) default NULL, + `message_size_limit` int(11) unsigned default NULL, + `banned_rulenames` varchar(64) default NULL, + `policyd_quota_in` int(11) NOT NULL DEFAULT '-1', + `policyd_quota_in_period` int(11) NOT NULL DEFAULT '24', + `policyd_quota_out` int(11) NOT NULL DEFAULT '-1', + `policyd_quota_out_period` int(11) NOT NULL DEFAULT '24', + `policyd_greylist` ENUM( 'Y', 'N' ) NOT NULL DEFAULT 'N', + PRIMARY KEY (`id`) +) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ; + +-- -------------------------------------------------------- + +-- +-- Table structure for table `spamfilter_users` +-- + +CREATE TABLE `spamfilter_users` ( + `id` int(11) unsigned NOT NULL auto_increment, + `sys_userid` int(11) unsigned NOT NULL DEFAULT '0', + `sys_groupid` int(11) unsigned NOT NULL DEFAULT '0', + `sys_perm_user` varchar(5) NOT NULL DEFAULT '', + `sys_perm_group` varchar(5) NOT NULL DEFAULT '', + `sys_perm_other` varchar(5) NOT NULL DEFAULT '', + `server_id` int(11) unsigned NOT NULL DEFAULT '0', + `priority` tinyint(3) unsigned NOT NULL default '7', + `policy_id` int(11) unsigned NOT NULL default '1', + `email` varchar(255) NOT NULL DEFAULT '', + `fullname` varchar(64) default NULL, + `local` varchar(1) default NULL, + PRIMARY KEY (`id`), + UNIQUE KEY `email` (`email`) +) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ; + +-- -------------------------------------------------------- + +-- +-- Table structure for table `spamfilter_wblist` +-- + +CREATE TABLE `spamfilter_wblist` ( + `wblist_id` int(11) unsigned NOT NULL auto_increment, + `sys_userid` int(11) unsigned NOT NULL DEFAULT '0', + `sys_groupid` int(11) unsigned NOT NULL DEFAULT '0', + `sys_perm_user` varchar(5) NOT NULL DEFAULT '', + `sys_perm_group` varchar(5) NOT NULL DEFAULT '', + `sys_perm_other` varchar(5) NOT NULL DEFAULT '', + `server_id` int(11) unsigned NOT NULL DEFAULT '0', + `wb` enum('W','B') NOT NULL default 'W', + `rid` int(11) unsigned NOT NULL DEFAULT '0', + `email` varchar(255) NOT NULL DEFAULT '', + `priority` tinyint(3) unsigned NOT NULL DEFAULT '0', + `active` enum('y','n') NOT NULL default 'y', + PRIMARY KEY (`wblist_id`) +) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ; + +-- -------------------------------------------------------- + +-- +-- Table structure for table `support_message` +-- + +CREATE TABLE `support_message` ( + `support_message_id` int(11) unsigned NOT NULL auto_increment, + `sys_userid` int(11) unsigned NOT NULL default '0', + `sys_groupid` int(11) unsigned NOT NULL default '0', + `sys_perm_user` varchar(5) default NULL, + `sys_perm_group` varchar(5) default NULL, + `sys_perm_other` varchar(5) default NULL, + `recipient_id` int(11) unsigned NOT NULL default '0', + `sender_id` int(11) unsigned NOT NULL default '0', + `subject` varchar(255) default NULL, + `message` text default NULL, + `tstamp` int(11) NOT NULL default '0', + PRIMARY KEY (`support_message_id`) +) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ; + +-- -------------------------------------------------------- + +-- +-- Table structure for table `sys_config` +-- + +CREATE TABLE `sys_config` ( + `group` varchar(64) NOT NULL DEFAULT '', + `name` varchar(64) NOT NULL DEFAULT '', + `value` varchar(255) NOT NULL DEFAULT '', + PRIMARY KEY (`group`, `name`) +) ENGINE=MyISAM DEFAULT CHARSET=utf8; + + +-- -------------------------------------------------------- + +-- +-- Table structure for table `sys_cron` +-- + +CREATE TABLE IF NOT EXISTS `sys_cron` ( + `name` varchar(50) NOT NULL DEFAULT '', + `last_run` datetime NULL DEFAULT NULL, + `next_run` datetime NULL DEFAULT NULL, + `running` tinyint(1) UNSIGNED NOT NULL DEFAULT '0', + PRIMARY KEY (`name`) +) ENGINE=MyISAM DEFAULT CHARSET=utf8; + + +-- -------------------------------------------------------- + +-- +-- Table structure for table `sys_datalog` +-- + +CREATE TABLE `sys_datalog` ( + `datalog_id` int(11) unsigned NOT NULL auto_increment, + `server_id` int(11) unsigned NOT NULL DEFAULT '0', + `dbtable` varchar(255) NOT NULL default '', + `dbidx` varchar(255) NOT NULL default '', + `action` char(1) NOT NULL default '', + `tstamp` int(11) NOT NULL default '0', + `user` varchar(255) NOT NULL default '', + `data` longtext, + `status` set('pending','ok','warning','error') NOT NULL default 'ok', + `error` mediumtext, + `session_id` varchar(64) NOT NULL DEFAULT '', + PRIMARY KEY (`datalog_id`), + KEY `server_id` (`server_id`,`status`) +) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ; + +-- -------------------------------------------------------- + +-- +-- Table structure for table `sys_dbsync` +-- + +CREATE TABLE `sys_dbsync` ( + `id` int(11) unsigned NOT NULL auto_increment, + `jobname` varchar(64) NOT NULL default '', + `sync_interval_minutes` int(11) unsigned NOT NULL default '0', + `db_type` varchar(16) NOT NULL default '', + `db_host` varchar(255) NOT NULL default '', + `db_name` varchar(64) NOT NULL default '', + `db_username` varchar(64) NOT NULL default '', + `db_password` varchar(64) NOT NULL default '', + `db_tables` varchar(255) NOT NULL default 'admin,forms', + `empty_datalog` int(11) unsigned NOT NULL default '0', + `sync_datalog_external` int(11) unsigned NOT NULL default '0', + `active` tinyint(1) NOT NULL default '1', + `last_datalog_id` int(11) unsigned NOT NULL default '0', + PRIMARY KEY (`id`), + KEY `last_datalog_id` (`last_datalog_id`) +) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ; + +-- -------------------------------------------------------- + +-- +-- Table structure for table `sys_filesync` +-- + +CREATE TABLE `sys_filesync` ( + `id` int(11) unsigned NOT NULL auto_increment, + `jobname` varchar(64) NOT NULL default '', + `sync_interval_minutes` int(11) unsigned NOT NULL default '0', + `ftp_host` varchar(255) NOT NULL default '', + `ftp_path` varchar(255) NOT NULL default '', + `ftp_username` varchar(64) NOT NULL default '', + `ftp_password` varchar(64) NOT NULL default '', + `local_path` varchar(255) NOT NULL default '', + `wput_options` varchar(255) NOT NULL default '--timestamping --reupload --dont-continue', + `active` tinyint(1) NOT NULL default '1', + PRIMARY KEY (`id`) +) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ; + +-- -------------------------------------------------------- + +-- +-- Table structure for table `sys_group` +-- + +CREATE TABLE `sys_group` ( + `groupid` int(11) unsigned NOT NULL auto_increment, + `name` varchar(64) NOT NULL default '', + `description` text, + `client_id` int(11) unsigned NOT NULL default '0', + PRIMARY KEY (`groupid`) +) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ; + +-- -------------------------------------------------------- + +-- +-- Table structure for table `sys_ini` +-- + +CREATE TABLE `sys_ini` ( + `sysini_id` int(11) unsigned NOT NULL auto_increment, + `config` longtext, + `default_logo` text NOT NULL, + `custom_logo` text NOT NULL, + PRIMARY KEY (`sysini_id`) +) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ; + +-- -------------------------------------------------------- + +-- +-- Table structure for table `sys_log` +-- + +CREATE TABLE `sys_log` ( + `syslog_id` int(11) unsigned NOT NULL auto_increment, + `server_id` int(11) unsigned NOT NULL default '0', + `datalog_id` int(11) unsigned NOT NULL default '0', + `loglevel` tinyint(4) NOT NULL default '0', + `tstamp` int(11) unsigned NOT NULL DEFAULT '0', + `message` text, + PRIMARY KEY (`syslog_id`) +) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ; + +-- -------------------------------------------------------- + +-- +-- Table structure for table `sys_remoteaction` +-- + +CREATE TABLE `sys_remoteaction` ( + `action_id` int(11) unsigned NOT NULL AUTO_INCREMENT, + `server_id` int(11) unsigned NOT NULL DEFAULT '0', + `tstamp` int(11) NOT NULL DEFAULT '0', + `action_type` varchar(20) NOT NULL DEFAULT '', + `action_param` mediumtext, + `action_state` enum('pending','ok','warning','error') NOT NULL DEFAULT 'pending', + `response` mediumtext, + PRIMARY KEY (`action_id`), + KEY `server_id` (`server_id`) +) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ; + +-- -------------------------------------------------------- + +-- +-- Table structure for table `sys_session` +-- + +CREATE TABLE `sys_session` ( + `session_id` varchar(64) NOT NULL DEFAULT '', + `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`), + KEY `last_updated` (`last_updated`) +) ENGINE=MyISAM DEFAULT CHARSET=utf8 ; + +-- -------------------------------------------------------- + +-- +-- Table structure for table `sys_theme` +-- + +CREATE TABLE IF NOT EXISTS `sys_theme` ( + `sys_userid` int(11) unsigned NOT NULL DEFAULT '0', + `sys_groupid` int(11) unsigned NOT NULL DEFAULT '0', + `sys_perm_user` varchar(5) DEFAULT NULL, + `sys_perm_group` varchar(5) DEFAULT NULL, + `sys_perm_other` varchar(5) DEFAULT NULL, + `var_id` int(11) unsigned NOT NULL AUTO_INCREMENT, + `tpl_name` varchar(32) NOT NULL DEFAULT '', + `username` varchar(64) NOT NULL DEFAULT '', + `logo_url` varchar(255) NOT NULL DEFAULT '', + PRIMARY KEY (`var_id`) +) ENGINE=MyISAM DEFAULT CHARSET=utf8 ; + +-- -------------------------------------------------------- + +-- +-- Table structure for table `sys_user` +-- + +CREATE TABLE `sys_user` ( + `userid` int(11) unsigned NOT NULL auto_increment, + `sys_userid` int(11) unsigned NOT NULL default '1' COMMENT 'Created by userid', + `sys_groupid` int(11) unsigned NOT NULL default '1' COMMENT 'Created by groupid', + `sys_perm_user` varchar(5) NOT NULL default 'riud', + `sys_perm_group` varchar(5) NOT NULL default 'riud', + `sys_perm_other` varchar(5) NOT NULL default '', + `username` varchar(64) NOT NULL default '', + `passwort` varchar(64) NOT NULL default '', + `modules` varchar(255) NOT NULL default '', + `startmodule` varchar(255) NOT NULL default '', + `app_theme` varchar(32) NOT NULL default 'default', + `typ` varchar(16) NOT NULL default 'user', + `active` tinyint(1) NOT NULL default '1', + `language` varchar(2) NOT NULL default 'en', + `groups` TEXT, + `default_group` int(11) unsigned NOT NULL default '0', + `client_id` int(11) unsigned NOT NULL default '0', + `id_rsa` VARCHAR( 2000 ) NOT NULL default '', + `ssh_rsa` VARCHAR( 600 ) NOT NULL default '', + `lost_password_function` tinyint(1) NOT NULL default '1', + `lost_password_hash` VARCHAR(50) NOT NULL default '', + `lost_password_reqtime` DATETIME NULL default NULL, + PRIMARY KEY (`userid`) +) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ; + +-- -------------------------------------------------------- + +-- +-- Table structure for table `webdav_user` +-- + +CREATE TABLE `webdav_user` ( + `webdav_user_id` int(11) unsigned NOT NULL AUTO_INCREMENT, + `sys_userid` int(11) unsigned NOT NULL DEFAULT '0', + `sys_groupid` int(11) unsigned NOT NULL DEFAULT '0', + `sys_perm_user` varchar(5) DEFAULT NULL, + `sys_perm_group` varchar(5) DEFAULT NULL, + `sys_perm_other` varchar(5) DEFAULT NULL, + `server_id` int(11) unsigned NOT NULL DEFAULT '0', + `parent_domain_id` int(11) unsigned NOT NULL DEFAULT '0', + `username` varchar(64) DEFAULT NULL, + `username_prefix` varchar(50) NOT NULL default '', + `password` varchar(64) DEFAULT NULL, + `active` enum('n','y') NOT NULL DEFAULT 'y', + `dir` varchar(255) DEFAULT NULL, + PRIMARY KEY (`webdav_user_id`) +) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ; + +-- -------------------------------------------------------- + +-- +-- Table structure for table `web_backup` +-- + +CREATE TABLE `web_backup` ( + `backup_id` int(10) unsigned NOT NULL AUTO_INCREMENT, + `server_id` int(10) unsigned NOT NULL DEFAULT '0', + `parent_domain_id` int(10) unsigned NOT NULL DEFAULT '0', + `backup_type` enum('web','mysql','mongodb') NOT NULL DEFAULT 'web', + `backup_mode` varchar(64) NOT NULL DEFAULT '', + `tstamp` int(10) unsigned NOT NULL DEFAULT '0', + `filename` varchar(255) NOT NULL DEFAULT '', + `filesize` VARCHAR(20) NOT NULL DEFAULT '', + PRIMARY KEY (`backup_id`) +) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ; + +-- -------------------------------------------------------- + +-- +-- Table structure for table `web_database` +-- + +CREATE TABLE `web_database` ( + `database_id` int(11) unsigned NOT NULL AUTO_INCREMENT, + `sys_userid` int(11) unsigned NOT NULL DEFAULT '0', + `sys_groupid` int(11) unsigned NOT NULL DEFAULT '0', + `sys_perm_user` varchar(5) DEFAULT NULL, + `sys_perm_group` varchar(5) DEFAULT NULL, + `sys_perm_other` varchar(5) DEFAULT NULL, + `server_id` int(11) unsigned NOT NULL DEFAULT '0', + `parent_domain_id` int(11) unsigned NOT NULL DEFAULT '0', + `type` varchar(16) NOT NULL DEFAULT 'y', + `database_name` varchar(64) DEFAULT NULL, + `database_name_prefix` varchar(50) NOT NULL default '', + `database_quota` int(11) DEFAULT NULL, + `quota_exceeded` enum('n','y') NOT NULL DEFAULT 'n', + `last_quota_notification` date NULL default NULL, + `database_user_id` int(11) unsigned DEFAULT NULL, + `database_ro_user_id` int(11) unsigned DEFAULT NULL, + `database_charset` varchar(64) DEFAULT NULL, + `remote_access` enum('n','y') NOT NULL DEFAULT 'y', + `remote_ips` text, + `backup_interval` VARCHAR( 255 ) NOT NULL DEFAULT 'none', + `backup_copies` INT NOT NULL DEFAULT '1', + `active` enum('n','y') NOT NULL DEFAULT 'y', + PRIMARY KEY (`database_id`), + KEY `database_user_id` (`database_user_id`), + KEY `database_ro_user_id` (`database_ro_user_id`) +) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ; + +-- -------------------------------------------------------- + +-- +-- Tabellenstruktur für Tabelle `web_database_user` +-- + +CREATE TABLE IF NOT EXISTS `web_database_user` ( + `database_user_id` int(11) unsigned NOT NULL AUTO_INCREMENT, + `sys_userid` int(11) unsigned NOT NULL DEFAULT '0', + `sys_groupid` int(11) unsigned NOT NULL DEFAULT '0', + `sys_perm_user` varchar(5) DEFAULT NULL, + `sys_perm_group` varchar(5) DEFAULT NULL, + `sys_perm_other` varchar(5) DEFAULT NULL, + `server_id` int(11) UNSIGNED NOT NULL DEFAULT '0', + `database_user` varchar(64) DEFAULT NULL, + `database_user_prefix` varchar(50) NOT NULL default '', + `database_password` varchar(64) DEFAULT NULL, + `database_password_mongo` varchar(32) DEFAULT NULL, + PRIMARY KEY (`database_user_id`) +) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ; + +-- -------------------------------------------------------- + +-- +-- Table structure for table `web_domain` +-- + +CREATE TABLE `web_domain` ( + `domain_id` int(11) unsigned NOT NULL auto_increment, + `sys_userid` int(11) unsigned NOT NULL default '0', + `sys_groupid` int(11) unsigned NOT NULL default '0', + `sys_perm_user` varchar(5) default NULL, + `sys_perm_group` varchar(5) default NULL, + `sys_perm_other` varchar(5) default NULL, + `server_id` int(11) unsigned NOT NULL default '0', + `ip_address` varchar(39) default NULL, + `ipv6_address` VARCHAR( 255 ) default NULL, + `domain` varchar(255) default NULL, + `type` varchar(32) default NULL, + `parent_domain_id` int(11) unsigned NOT NULL default '0', + `vhost_type` varchar(32) default NULL, + `document_root` varchar(255) default NULL, + `web_folder` varchar(100) default NULL, + `system_user` varchar(255) default NULL, + `system_group` varchar(255) default NULL, + `hd_quota` bigint(20) NOT NULL default '0', + `traffic_quota` bigint(20) NOT NULL default '-1', + `cgi` enum('n','y') NOT NULL default 'y', + `ssi` enum('n','y') NOT NULL default 'y', + `suexec` enum('n','y') NOT NULL default 'y', + `errordocs` tinyint(1) NOT NULL default '1', + `is_subdomainwww` tinyint(1) NOT NULL default '1', + `subdomain` enum('none','www','*') NOT NULL default 'none', + `php` varchar(32) NOT NULL default 'y', + `ruby` enum('n','y') NOT NULL default 'n', + `python` enum('n','y') NOT NULL default 'n', + `perl` enum('n','y') NOT NULL default 'n', + `redirect_type` varchar(255) default NULL, + `redirect_path` varchar(255) default NULL, + `seo_redirect` varchar(255) default NULL, + `rewrite_to_https` ENUM('y','n') NOT NULL DEFAULT 'n', + `ssl` enum('n','y') NOT NULL default 'n', + `ssl_letsencrypt` enum('n','y') NOT NULL DEFAULT 'n', + `ssl_letsencrypt_exclude` enum('n','y') NOT NULL DEFAULT 'n', + `ssl_state` varchar(255) NULL, + `ssl_locality` varchar(255) NULL, + `ssl_organisation` varchar(255) NULL, + `ssl_organisation_unit` varchar(255) NULL, + `ssl_country` varchar(255) NULL, + `ssl_domain` varchar(255) NULL, + `ssl_request` mediumtext NULL, + `ssl_cert` mediumtext NULL, + `ssl_bundle` mediumtext NULL, + `ssl_key` mediumtext NULL, + `ssl_action` varchar(16) NULL, + `stats_password` varchar(255) default NULL, + `stats_type` varchar(255) default 'awstats', + `allow_override` varchar(255) NOT NULL default 'All', + `apache_directives` mediumtext, + `nginx_directives` mediumtext, + `php_fpm_use_socket` ENUM('n','y') NOT NULL DEFAULT 'y', + `php_fpm_chroot` enum('n','y') NOT NULL DEFAULT 'n', + `pm` enum('static','dynamic','ondemand') NOT NULL DEFAULT 'dynamic', + `pm_max_children` int(11) NOT NULL DEFAULT '10', + `pm_start_servers` int(11) NOT NULL DEFAULT '2', + `pm_min_spare_servers` int(11) NOT NULL DEFAULT '1', + `pm_max_spare_servers` int(11) NOT NULL DEFAULT '5', + `pm_process_idle_timeout` int(11) NOT NULL DEFAULT '10', + `pm_max_requests` int(11) NOT NULL DEFAULT '0', + `php_open_basedir` mediumtext, + `custom_php_ini` mediumtext, + `backup_interval` VARCHAR( 255 ) NOT NULL DEFAULT 'none', + `backup_copies` INT NOT NULL DEFAULT '1', + `backup_excludes` mediumtext, + `active` enum('n','y') NOT NULL default 'y', + `traffic_quota_lock` enum('n','y') NOT NULL default 'n', + `fastcgi_php_version` varchar(255) DEFAULT NULL, + `proxy_directives` mediumtext, + `enable_spdy` ENUM('y','n') NULL DEFAULT 'n', + `last_quota_notification` date NULL default NULL, + `rewrite_rules` mediumtext, + `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', + `http_port` int(11) unsigned NOT NULL DEFAULT '80', + `https_port` int(11) unsigned NOT NULL DEFAULT '443', + `folder_directive_snippets` text, + `log_retention` int(11) NOT NULL DEFAULT '10', + PRIMARY KEY (`domain_id`), + UNIQUE KEY `serverdomain` ( `server_id` , `ip_address`, `domain` ) +) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ; + +-- -------------------------------------------------------- + +-- +-- Table structure for table `web_folder` +-- + +CREATE TABLE IF NOT EXISTS `web_folder` ( + `web_folder_id` bigint(20) NOT NULL AUTO_INCREMENT, + `sys_userid` int(11) NOT NULL DEFAULT '0', + `sys_groupid` int(11) NOT NULL DEFAULT '0', + `sys_perm_user` varchar(5) DEFAULT NULL, + `sys_perm_group` varchar(5) DEFAULT NULL, + `sys_perm_other` varchar(5) DEFAULT NULL, + `server_id` int(11) NOT NULL DEFAULT '0', + `parent_domain_id` int(11) NOT NULL DEFAULT '0', + `path` varchar(255) DEFAULT NULL, + `active` varchar(255) NOT NULL DEFAULT 'y', + PRIMARY KEY (`web_folder_id`) +) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ; + +-- +-- Dumping data for table `web_folder` +-- + + +-- -------------------------------------------------------- + +-- +-- Table structure for table `web_folder_user` +-- + +CREATE TABLE IF NOT EXISTS `web_folder_user` ( + `web_folder_user_id` bigint(20) NOT NULL AUTO_INCREMENT, + `sys_userid` int(11) NOT NULL DEFAULT '0', + `sys_groupid` int(11) NOT NULL DEFAULT '0', + `sys_perm_user` varchar(5) DEFAULT NULL, + `sys_perm_group` varchar(5) DEFAULT NULL, + `sys_perm_other` varchar(5) DEFAULT NULL, + `server_id` int(11) NOT NULL DEFAULT '0', + `web_folder_id` int(11) NOT NULL DEFAULT '0', + `username` varchar(255) DEFAULT NULL, + `password` varchar(255) DEFAULT NULL, + `active` varchar(255) NOT NULL DEFAULT 'y', + PRIMARY KEY (`web_folder_user_id`) +) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ; + +-- +-- Dumping data for table `web_folder_user` +-- + +-- -------------------------------------------------------- + +-- +-- Table structure for table `web_traffic` +-- + +CREATE TABLE `web_traffic` ( + `hostname` varchar(255) NOT NULL DEFAULT '', + `traffic_date` date NULL DEFAULT NULL, + `traffic_bytes` bigint(32) unsigned NOT NULL default '0', + UNIQUE KEY (`hostname`,`traffic_date`) +) ENGINE=MyISAM DEFAULT CHARSET=utf8 ; + +-- -------------------------------------------------------- + +-- +-- Table structure for table `xmpp_domain` +-- + +CREATE TABLE `xmpp_domain` ( + `domain_id` int(11) unsigned NOT NULL auto_increment, + `sys_userid` int(11) unsigned NOT NULL default '0', + `sys_groupid` int(11) unsigned NOT NULL default '0', + `sys_perm_user` varchar(5) NOT NULL default '', + `sys_perm_group` varchar(5) NOT NULL default '', + `sys_perm_other` varchar(5) NOT NULL default '', + `server_id` int(11) unsigned NOT NULL default '0', + `domain` varchar(255) NOT NULL default '', + + `management_method` ENUM( 'normal', 'maildomain' ) NOT NULL default 'normal', + `public_registration` ENUM( 'n', 'y' ) NOT NULL default 'n', + `registration_url` varchar(255) NOT NULL DEFAULT '', + `registration_message` varchar(255) NOT NULL DEFAULT '', + `domain_admins` text, + + `use_pubsub` enum('n','y') NOT NULL DEFAULT 'n', + `use_proxy` enum('n','y') NOT NULL DEFAULT 'n', + `use_anon_host` enum('n','y') NOT NULL DEFAULT 'n', + + `use_vjud` enum('n','y') NOT NULL DEFAULT 'n', + `vjud_opt_mode` enum('in', 'out') NOT NULL DEFAULT 'in', + + `use_muc_host` enum('n','y') NOT NULL DEFAULT 'n', + `muc_name` varchar(30) NOT NULL DEFAULT '', + `muc_restrict_room_creation` enum('n', 'y', 'm') NOT NULL DEFAULT 'm', + `muc_admins` text, + `use_pastebin` enum('n','y') NOT NULL DEFAULT 'n', + `pastebin_expire_after` int(3) NOT NULL DEFAULT 48, + `pastebin_trigger` varchar(10) NOT NULL DEFAULT '!paste', + `use_http_archive` enum('n','y') NOT NULL DEFAULT 'n', + `http_archive_show_join` enum('n', 'y') NOT NULL DEFAULT 'n', + `http_archive_show_status` enum('n', 'y') NOT NULL DEFAULT 'n', + `use_status_host` enum('n','y') NOT NULL DEFAULT 'n', + + `ssl_state` varchar(255) NULL, + `ssl_locality` varchar(255) NULL, + `ssl_organisation` varchar(255) NULL, + `ssl_organisation_unit` varchar(255) NULL, + `ssl_country` varchar(255) NULL, + `ssl_email` varchar(255) NULL, + `ssl_request` mediumtext NULL, + `ssl_cert` mediumtext NULL, + `ssl_bundle` mediumtext NULL, + `ssl_key` mediumtext NULL, + `ssl_action` varchar(16) NULL, + + `active` enum('n','y') NOT NULL DEFAULT 'n', + PRIMARY KEY (`domain_id`), + KEY `server_id` (`server_id`,`domain`), + KEY `domain_active` (`domain`,`active`) +) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ; + +-- -------------------------------------------------------- + +-- +-- Table structure for table `xmpp_user` +-- + +CREATE TABLE `xmpp_user` ( + `xmppuser_id` int(11) unsigned NOT NULL auto_increment, + `sys_userid` int(11) unsigned NOT NULL default '0', + `sys_groupid` int(11) unsigned NOT NULL default '0', + `sys_perm_user` varchar(5) NOT NULL default '', + `sys_perm_group` varchar(5) NOT NULL default '', + `sys_perm_other` varchar(5) NOT NULL default '', + `server_id` int(11) unsigned NOT NULL default '0', + `jid` varchar(255) NOT NULL default '', + `password` varchar(255) NOT NULL default '', + `active` enum('n','y') NOT NULL DEFAULT 'n', + PRIMARY KEY (`xmppuser_id`), + KEY `server_id` (`server_id`,`jid`), + KEY `jid_active` (`jid`,`active`) +) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ; + +-- -------------------------------------------------------- + +-- -------------------------------------------------------- +-- -------------------------------------------------------- +-- DB-DATA +-- -------------------------------------------------------- +-- -------------------------------------------------------- + +-- +-- Dumping data for table `aps_settings` +-- + +INSERT INTO `aps_settings` (`id`, `name`, `value`) VALUES(1, 'ignore-php-extension', ''); +INSERT INTO `aps_settings` (`id`, `name`, `value`) VALUES(2, 'ignore-php-configuration', ''); +INSERT INTO `aps_settings` (`id`, `name`, `value`) VALUES(3, 'ignore-webserver-module', ''); + +-- -------------------------------------------------------- + +-- +-- Dumping data for table `country` +-- + +INSERT INTO `country` (`iso`, `name`, `printable_name`, `iso3`, `numcode`, `eu`) VALUES +('AF', 'AFGHANISTAN', 'Afghanistan', 'AFG', 4, 'n'), +('AL', 'ALBANIA', 'Albania', 'ALB', 8, 'n'), +('DZ', 'ALGERIA', 'Algeria', 'DZA', 12, 'n'), +('AS', 'AMERICAN SAMOA', 'American Samoa', 'ASM', 16, 'n'), +('AD', 'ANDORRA', 'Andorra', 'AND', 20, 'n'), +('AO', 'ANGOLA', 'Angola', 'AGO', 24, 'n'), +('AI', 'ANGUILLA', 'Anguilla', 'AIA', 660, 'n'), +('AQ', 'ANTARCTICA', 'Antarctica', NULL, NULL, 'n'), +('AG', 'ANTIGUA AND BARBUDA', 'Antigua and Barbuda', 'ATG', 28, 'n'), +('AR', 'ARGENTINA', 'Argentina', 'ARG', 32, 'n'), +('AM', 'ARMENIA', 'Armenia', 'ARM', 51, 'n'), +('AW', 'ARUBA', 'Aruba', 'ABW', 533, 'n'), +('AU', 'AUSTRALIA', 'Australia', 'AUS', 36, 'n'), +('AT', 'AUSTRIA', 'Austria', 'AUT', 40, 'y'), +('AZ', 'AZERBAIJAN', 'Azerbaijan', 'AZE', 31, 'n'), +('BS', 'BAHAMAS', 'Bahamas', 'BHS', 44, 'n'), +('BH', 'BAHRAIN', 'Bahrain', 'BHR', 48, 'n'), +('BD', 'BANGLADESH', 'Bangladesh', 'BGD', 50, 'n'), +('BB', 'BARBADOS', 'Barbados', 'BRB', 52, 'n'), +('BY', 'BELARUS', 'Belarus', 'BLR', 112, 'n'), +('BE', 'BELGIUM', 'Belgium', 'BEL', 56, 'y'), +('BZ', 'BELIZE', 'Belize', 'BLZ', 84, 'n'), +('BJ', 'BENIN', 'Benin', 'BEN', 204, 'n'), +('BM', 'BERMUDA', 'Bermuda', 'BMU', 60, 'n'), +('BT', 'BHUTAN', 'Bhutan', 'BTN', 64, 'n'), +('BO', 'BOLIVIA', 'Bolivia', 'BOL', 68, 'n'), +('BA', 'BOSNIA AND HERZEGOVINA', 'Bosnia and Herzegovina', 'BIH', 70, 'n'), +('BW', 'BOTSWANA', 'Botswana', 'BWA', 72, 'n'), +('BV', 'BOUVET ISLAND', 'Bouvet Island', NULL, NULL, 'n'), +('BR', 'BRAZIL', 'Brazil', 'BRA', 76, 'n'), +('IO', 'BRITISH INDIAN OCEAN TERRITORY', 'British Indian Ocean Territory', NULL, NULL, 'n'), +('BN', 'BRUNEI DARUSSALAM', 'Brunei Darussalam', 'BRN', 96, 'n'), +('BG', 'BULGARIA', 'Bulgaria', 'BGR', 100, 'y'), +('BF', 'BURKINA FASO', 'Burkina Faso', 'BFA', 854, 'n'), +('BI', 'BURUNDI', 'Burundi', 'BDI', 108, 'n'), +('KH', 'CAMBODIA', 'Cambodia', 'KHM', 116, 'n'), +('CM', 'CAMEROON', 'Cameroon', 'CMR', 120, 'n'), +('CA', 'CANADA', 'Canada', 'CAN', 124, 'n'), +('CV', 'CAPE VERDE', 'Cape Verde', 'CPV', 132, 'n'), +('KY', 'CAYMAN ISLANDS', 'Cayman Islands', 'CYM', 136, 'n'), +('CF', 'CENTRAL AFRICAN REPUBLIC', 'Central African Republic', 'CAF', 140, 'n'), +('TD', 'CHAD', 'Chad', 'TCD', 148, 'n'), +('CL', 'CHILE', 'Chile', 'CHL', 152, 'n'), +('CN', 'CHINA', 'China', 'CHN', 156, 'n'), +('CX', 'CHRISTMAS ISLAND', 'Christmas Island', NULL, NULL, 'n'), +('CC', 'COCOS (KEELING) ISLANDS', 'Cocos (Keeling) Islands', NULL, NULL, 'n'), +('CO', 'COLOMBIA', 'Colombia', 'COL', 170, 'n'), +('KM', 'COMOROS', 'Comoros', 'COM', 174, 'n'), +('CG', 'CONGO', 'Congo', 'COG', 178, 'n'), +('CD', 'CONGO, THE DEMOCRATIC REPUBLIC OF THE', 'Congo, the Democratic Republic of the', 'COD', 180, 'n'), +('CK', 'COOK ISLANDS', 'Cook Islands', 'COK', 184, 'n'), +('CR', 'COSTA RICA', 'Costa Rica', 'CRI', 188, 'n'), +('CI', 'COTE D''IVOIRE', 'Cote D''Ivoire', 'CIV', 384, 'n'), +('HR', 'CROATIA', 'Croatia', 'HRV', 191, 'y'), +('CU', 'CUBA', 'Cuba', 'CUB', 192, 'n'), +('CY', 'CYPRUS', 'Cyprus', 'CYP', 196, 'y'), +('CZ', 'CZECH REPUBLIC', 'Czech Republic', 'CZE', 203, 'y'), +('DK', 'DENMARK', 'Denmark', 'DNK', 208, 'y'), +('DJ', 'DJIBOUTI', 'Djibouti', 'DJI', 262, 'n'), +('DM', 'DOMINICA', 'Dominica', 'DMA', 212, 'n'), +('DO', 'DOMINICAN REPUBLIC', 'Dominican Republic', 'DOM', 214, 'n'), +('EC', 'ECUADOR', 'Ecuador', 'ECU', 218, 'n'), +('EG', 'EGYPT', 'Egypt', 'EGY', 818, 'n'), +('SV', 'EL SALVADOR', 'El Salvador', 'SLV', 222, 'n'), +('GQ', 'EQUATORIAL GUINEA', 'Equatorial Guinea', 'GNQ', 226, 'n'), +('ER', 'ERITREA', 'Eritrea', 'ERI', 232, 'n'), +('EE', 'ESTONIA', 'Estonia', 'EST', 233, 'y'), +('ET', 'ETHIOPIA', 'Ethiopia', 'ETH', 231, 'n'), +('FK', 'FALKLAND ISLANDS (MALVINAS)', 'Falkland Islands (Malvinas)', 'FLK', 238, 'n'), +('FO', 'FAROE ISLANDS', 'Faroe Islands', 'FRO', 234, 'n'), +('FJ', 'FIJI', 'Fiji', 'FJI', 242, 'n'), +('FI', 'FINLAND', 'Finland', 'FIN', 246, 'y'), +('FR', 'FRANCE', 'France', 'FRA', 250, 'y'), +('GF', 'FRENCH GUIANA', 'French Guiana', 'GUF', 254, 'n'), +('PF', 'FRENCH POLYNESIA', 'French Polynesia', 'PYF', 258, 'n'), +('TF', 'FRENCH SOUTHERN TERRITORIES', 'French Southern Territories', NULL, NULL, 'n'), +('GA', 'GABON', 'Gabon', 'GAB', 266, 'n'), +('GM', 'GAMBIA', 'Gambia', 'GMB', 270, 'n'), +('GE', 'GEORGIA', 'Georgia', 'GEO', 268, 'n'), +('DE', 'GERMANY', 'Germany', 'DEU', 276, 'y'), +('GH', 'GHANA', 'Ghana', 'GHA', 288, 'n'), +('GI', 'GIBRALTAR', 'Gibraltar', 'GIB', 292, 'n'), +('GR', 'GREECE', 'Greece', 'GRC', 300, 'y'), +('GL', 'GREENLAND', 'Greenland', 'GRL', 304, 'n'), +('GD', 'GRENADA', 'Grenada', 'GRD', 308, 'n'), +('GP', 'GUADELOUPE', 'Guadeloupe', 'GLP', 312, 'n'), +('GU', 'GUAM', 'Guam', 'GUM', 316, 'n'), +('GT', 'GUATEMALA', 'Guatemala', 'GTM', 320, 'n'), +('GN', 'GUINEA', 'Guinea', 'GIN', 324, 'n'), +('GW', 'GUINEA-BISSAU', 'Guinea-Bissau', 'GNB', 624, 'n'), +('GY', 'GUYANA', 'Guyana', 'GUY', 328, 'n'), +('HT', 'HAITI', 'Haiti', 'HTI', 332, 'n'), +('HM', 'HEARD ISLAND AND MCDONALD ISLANDS', 'Heard Island and Mcdonald Islands', NULL, NULL, 'n'), +('VA', 'HOLY SEE (VATICAN CITY STATE)', 'Holy See (Vatican City State)', 'VAT', 336, 'n'), +('HN', 'HONDURAS', 'Honduras', 'HND', 340, 'n'), +('HK', 'HONG KONG', 'Hong Kong', 'HKG', 344, 'n'), +('HU', 'HUNGARY', 'Hungary', 'HUN', 348, 'y'), +('IS', 'ICELAND', 'Iceland', 'ISL', 352, 'n'), +('IN', 'INDIA', 'India', 'IND', 356, 'n'), +('ID', 'INDONESIA', 'Indonesia', 'IDN', 360, 'n'), +('IR', 'IRAN, ISLAMIC REPUBLIC OF', 'Iran, Islamic Republic of', 'IRN', 364, 'n'), +('IQ', 'IRAQ', 'Iraq', 'IRQ', 368, 'n'), +('IE', 'IRELAND', 'Ireland', 'IRL', 372, 'y'), +('IL', 'ISRAEL', 'Israel', 'ISR', 376, 'n'), +('IT', 'ITALY', 'Italy', 'ITA', 380, 'y'), +('JM', 'JAMAICA', 'Jamaica', 'JAM', 388, 'n'), +('JP', 'JAPAN', 'Japan', 'JPN', 392, 'n'), +('JO', 'JORDAN', 'Jordan', 'JOR', 400, 'n'), +('KZ', 'KAZAKHSTAN', 'Kazakhstan', 'KAZ', 398, 'n'), +('KE', 'KENYA', 'Kenya', 'KEN', 404, 'n'), +('KI', 'KIRIBATI', 'Kiribati', 'KIR', 296, 'n'), +('KP', 'KOREA, DEMOCRATIC PEOPLE''S REPUBLIC OF', 'Korea, Democratic People''s Republic of', 'PRK', 408, 'n'), +('KR', 'KOREA, REPUBLIC OF', 'Korea, Republic of', 'KOR', 410, 'n'), +('KW', 'KUWAIT', 'Kuwait', 'KWT', 414, 'n'), +('KG', 'KYRGYZSTAN', 'Kyrgyzstan', 'KGZ', 417, 'n'), +('LA', 'LAO PEOPLE''S DEMOCRATIC REPUBLIC', 'Lao People''s Democratic Republic', 'LAO', 418, 'n'), +('LV', 'LATVIA', 'Latvia', 'LVA', 428, 'y'), +('LB', 'LEBANON', 'Lebanon', 'LBN', 422, 'n'), +('LS', 'LESOTHO', 'Lesotho', 'LSO', 426, 'n'), +('LR', 'LIBERIA', 'Liberia', 'LBR', 430, 'n'), +('LY', 'LIBYAN ARAB JAMAHIRIYA', 'Libyan Arab Jamahiriya', 'LBY', 434, 'n'), +('LI', 'LIECHTENSTEIN', 'Liechtenstein', 'LIE', 438, 'n'), +('LT', 'LITHUANIA', 'Lithuania', 'LTU', 440, 'y'), +('LU', 'LUXEMBOURG', 'Luxembourg', 'LUX', 442, 'y'), +('MO', 'MACAO', 'Macao', 'MAC', 446, 'n'), +('MK', 'MACEDONIA, THE FORMER YUGOSLAV REPUBLIC OF', 'Macedonia, the Former Yugoslav Republic of', 'MKD', 807, 'n'), +('MG', 'MADAGASCAR', 'Madagascar', 'MDG', 450, 'n'), +('MW', 'MALAWI', 'Malawi', 'MWI', 454, 'n'), +('MY', 'MALAYSIA', 'Malaysia', 'MYS', 458, 'n'), +('MV', 'MALDIVES', 'Maldives', 'MDV', 462, 'n'), +('ML', 'MALI', 'Mali', 'MLI', 466, 'n'), +('MT', 'MALTA', 'Malta', 'MLT', 470, 'y'), +('MH', 'MARSHALL ISLANDS', 'Marshall Islands', 'MHL', 584, 'n'), +('MQ', 'MARTINIQUE', 'Martinique', 'MTQ', 474, 'n'), +('MR', 'MAURITANIA', 'Mauritania', 'MRT', 478, 'n'), +('MU', 'MAURITIUS', 'Mauritius', 'MUS', 480, 'n'), +('YT', 'MAYOTTE', 'Mayotte', NULL, NULL, 'n'), +('MX', 'MEXICO', 'Mexico', 'MEX', 484, 'n'), +('FM', 'MICRONESIA, FEDERATED STATES OF', 'Micronesia, Federated States of', 'FSM', 583, 'n'), +('MD', 'MOLDOVA, REPUBLIC OF', 'Moldova, Republic of', 'MDA', 498, 'n'), +('MC', 'MONACO', 'Monaco', 'MCO', 492, 'n'), +('MN', 'MONGOLIA', 'Mongolia', 'MNG', 496, 'n'), +('MS', 'MONTSERRAT', 'Montserrat', 'MSR', 500, 'n'), +('MA', 'MOROCCO', 'Morocco', 'MAR', 504, 'n'), +('MZ', 'MOZAMBIQUE', 'Mozambique', 'MOZ', 508, 'n'), +('MM', 'MYANMAR', 'Myanmar', 'MMR', 104, 'n'), +('NA', 'NAMIBIA', 'Namibia', 'NAM', 516, 'n'), +('NR', 'NAURU', 'Nauru', 'NRU', 520, 'n'), +('NP', 'NEPAL', 'Nepal', 'NPL', 524, 'n'), +('NL', 'NETHERLANDS', 'Netherlands', 'NLD', 528, 'y'), +('AN', 'NETHERLANDS ANTILLES', 'Netherlands Antilles', 'ANT', 530, 'n'), +('NC', 'NEW CALEDONIA', 'New Caledonia', 'NCL', 540, 'n'), +('NZ', 'NEW ZEALAND', 'New Zealand', 'NZL', 554, 'n'), +('NI', 'NICARAGUA', 'Nicaragua', 'NIC', 558, 'n'), +('NE', 'NIGER', 'Niger', 'NER', 562, 'n'), +('NG', 'NIGERIA', 'Nigeria', 'NGA', 566, 'n'), +('NU', 'NIUE', 'Niue', 'NIU', 570, 'n'), +('NF', 'NORFOLK ISLAND', 'Norfolk Island', 'NFK', 574, 'n'), +('MP', 'NORTHERN MARIANA ISLANDS', 'Northern Mariana Islands', 'MNP', 580, 'n'), +('NO', 'NORWAY', 'Norway', 'NOR', 578, 'n'), +('OM', 'OMAN', 'Oman', 'OMN', 512, 'n'), +('PK', 'PAKISTAN', 'Pakistan', 'PAK', 586, 'n'), +('PW', 'PALAU', 'Palau', 'PLW', 585, 'n'), +('PS', 'PALESTINIAN TERRITORY, OCCUPIED', 'Palestinian Territory, Occupied', NULL, NULL, 'n'), +('PA', 'PANAMA', 'Panama', 'PAN', 591, 'n'), +('PG', 'PAPUA NEW GUINEA', 'Papua New Guinea', 'PNG', 598, 'n'), +('PY', 'PARAGUAY', 'Paraguay', 'PRY', 600, 'n'), +('PE', 'PERU', 'Peru', 'PER', 604, 'n'), +('PH', 'PHILIPPINES', 'Philippines', 'PHL', 608, 'n'), +('PN', 'PITCAIRN', 'Pitcairn', 'PCN', 612, 'n'), +('PL', 'POLAND', 'Poland', 'POL', 616, 'y'), +('PT', 'PORTUGAL', 'Portugal', 'PRT', 620, 'y'), +('PR', 'PUERTO RICO', 'Puerto Rico', 'PRI', 630, 'n'), +('QA', 'QATAR', 'Qatar', 'QAT', 634, 'n'), +('RE', 'REUNION', 'Reunion', 'REU', 638, 'n'), +('RO', 'ROMANIA', 'Romania', 'ROM', 642, 'y'), +('RU', 'RUSSIAN FEDERATION', 'Russian Federation', 'RUS', 643, 'n'), +('RW', 'RWANDA', 'Rwanda', 'RWA', 646, 'n'), +('SH', 'SAINT HELENA', 'Saint Helena', 'SHN', 654, 'n'), +('KN', 'SAINT KITTS AND NEVIS', 'Saint Kitts and Nevis', 'KNA', 659, 'n'), +('LC', 'SAINT LUCIA', 'Saint Lucia', 'LCA', 662, 'n'), +('PM', 'SAINT PIERRE AND MIQUELON', 'Saint Pierre and Miquelon', 'SPM', 666, 'n'), +('VC', 'SAINT VINCENT AND THE GRENADINES', 'Saint Vincent and the Grenadines', 'VCT', 670, 'n'), +('WS', 'SAMOA', 'Samoa', 'WSM', 882, 'n'), +('SM', 'SAN MARINO', 'San Marino', 'SMR', 674, 'n'), +('ST', 'SAO TOME AND PRINCIPE', 'Sao Tome and Principe', 'STP', 678, 'n'), +('SA', 'SAUDI ARABIA', 'Saudi Arabia', 'SAU', 682, 'n'), +('SN', 'SENEGAL', 'Senegal', 'SEN', 686, 'n'), +('RS', 'SERBIA', 'Serbia', 'SRB', 381, 'n'), +('SC', 'SEYCHELLES', 'Seychelles', 'SYC', 690, 'n'), +('SL', 'SIERRA LEONE', 'Sierra Leone', 'SLE', 694, 'n'), +('SG', 'SINGAPORE', 'Singapore', 'SGP', 702, 'n'), +('SK', 'SLOVAKIA', 'Slovakia', 'SVK', 703, 'y'), +('SI', 'SLOVENIA', 'Slovenia', 'SVN', 705, 'y'), +('SB', 'SOLOMON ISLANDS', 'Solomon Islands', 'SLB', 90, 'n'), +('SO', 'SOMALIA', 'Somalia', 'SOM', 706, 'n'), +('ZA', 'SOUTH AFRICA', 'South Africa', 'ZAF', 710, 'n'), +('GS', 'SOUTH GEORGIA AND THE SOUTH SANDWICH ISLANDS', 'South Georgia and the South Sandwich Islands', NULL, NULL, 'n'), +('ES', 'SPAIN', 'Spain', 'ESP', 724, 'y'), +('LK', 'SRI LANKA', 'Sri Lanka', 'LKA', 144, 'n'), +('SD', 'SUDAN', 'Sudan', 'SDN', 736, 'n'), +('SR', 'SURINAME', 'Suriname', 'SUR', 740, 'n'), +('SJ', 'SVALBARD AND JAN MAYEN', 'Svalbard and Jan Mayen', 'SJM', 744, 'n'), +('SZ', 'SWAZILAND', 'Swaziland', 'SWZ', 748, 'n'), +('SE', 'SWEDEN', 'Sweden', 'SWE', 752, 'y'), +('CH', 'SWITZERLAND', 'Switzerland', 'CHE', 756, 'n'), +('SY', 'SYRIAN ARAB REPUBLIC', 'Syrian Arab Republic', 'SYR', 760, 'n'), +('TW', 'TAIWAN, PROVINCE OF CHINA', 'Taiwan, Province of China', 'TWN', 158, 'n'), +('TJ', 'TAJIKISTAN', 'Tajikistan', 'TJK', 762, 'n'), +('TZ', 'TANZANIA, UNITED REPUBLIC OF', 'Tanzania, United Republic of', 'TZA', 834, 'n'), +('TH', 'THAILAND', 'Thailand', 'THA', 764, 'n'), +('TL', 'TIMOR-LESTE', 'Timor-Leste', NULL, NULL, 'n'), +('TG', 'TOGO', 'Togo', 'TGO', 768, 'n'), +('TK', 'TOKELAU', 'Tokelau', 'TKL', 772, 'n'), +('TO', 'TONGA', 'Tonga', 'TON', 776, 'n'), +('TT', 'TRINIDAD AND TOBAGO', 'Trinidad and Tobago', 'TTO', 780, 'n'), +('TN', 'TUNISIA', 'Tunisia', 'TUN', 788, 'n'), +('TR', 'TURKEY', 'Turkey', 'TUR', 792, 'n'), +('TM', 'TURKMENISTAN', 'Turkmenistan', 'TKM', 795, 'n'), +('TC', 'TURKS AND CAICOS ISLANDS', 'Turks and Caicos Islands', 'TCA', 796, 'n'), +('TV', 'TUVALU', 'Tuvalu', 'TUV', 798, 'n'), +('UG', 'UGANDA', 'Uganda', 'UGA', 800, 'n'), +('UA', 'UKRAINE', 'Ukraine', 'UKR', 804, 'n'), +('AE', 'UNITED ARAB EMIRATES', 'United Arab Emirates', 'ARE', 784, 'n'), +('GB', 'UNITED KINGDOM', 'United Kingdom', 'GBR', 826, 'y'), +('US', 'UNITED STATES', 'United States', 'USA', 840, 'n'), +('UM', 'UNITED STATES MINOR OUTLYING ISLANDS', 'United States Minor Outlying Islands', NULL, NULL, 'n'), +('UY', 'URUGUAY', 'Uruguay', 'URY', 858, 'n'), +('UZ', 'UZBEKISTAN', 'Uzbekistan', 'UZB', 860, 'n'), +('VU', 'VANUATU', 'Vanuatu', 'VUT', 548, 'n'), +('VE', 'VENEZUELA', 'Venezuela', 'VEN', 862, 'n'), +('VN', 'VIET NAM', 'Viet Nam', 'VNM', 704, 'n'), +('VG', 'VIRGIN ISLANDS, BRITISH', 'Virgin Islands, British', 'VGB', 92, 'n'), +('VI', 'VIRGIN ISLANDS, U.S.', 'Virgin Islands, U.s.', 'VIR', 850, 'n'), +('WF', 'WALLIS AND FUTUNA', 'Wallis and Futuna', 'WLF', 876, 'n'), +('EH', 'WESTERN SAHARA', 'Western Sahara', 'ESH', 732, 'n'), +('YE', 'YEMEN', 'Yemen', 'YEM', 887, 'n'), +('ZM', 'ZAMBIA', 'Zambia', 'ZMB', 894, 'n'), +('ZW', 'ZIMBABWE', 'Zimbabwe', 'ZWE', 716, 'n'), +('ME', 'MONTENEGRO', 'Montenegro', 'MNE', 382, 'n'); + +-- -------------------------------------------------------- + +-- +-- 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,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'); + + +-- -------------------------------------------------------- + +-- +-- Dumping data for table `help_faq` +-- + +INSERT INTO `help_faq` VALUES (1,1,0,'I would like to know ...','Yes, of course.',1,1,'riud','riud','r'); + +-- -------------------------------------------------------- + +-- +-- Dumping data for table `help_faq_sections` +-- + +INSERT INTO `help_faq_sections` VALUES (1,'General',0,NULL,NULL,NULL,NULL,NULL); + +-- -------------------------------------------------------- + +-- +-- Dumping data for table `software_repo` +-- + +INSERT INTO `software_repo` (`software_repo_id`, `sys_userid`, `sys_groupid`, `sys_perm_user`, `sys_perm_group`, `sys_perm_other`, `repo_name`, `repo_url`, `repo_username`, `repo_password`, `active`) VALUES (1, 1, 1, 'riud', 'riud', '', 'ISPConfig Addons', 'http://repo.ispconfig.org/addons/', '', '', 'n'); + +-- -------------------------------------------------------- + +-- +-- Dumping data for table `spamfilter_policy` +-- + +INSERT INTO `spamfilter_policy` (`id`, `sys_userid`, `sys_groupid`, `sys_perm_user`, `sys_perm_group`, `sys_perm_other`, `policy_name`, `virus_lover`, `spam_lover`, `banned_files_lover`, `bad_header_lover`, `bypass_virus_checks`, `bypass_spam_checks`, `bypass_banned_checks`, `bypass_header_checks`, `spam_modifies_subj`, `virus_quarantine_to`, `spam_quarantine_to`, `banned_quarantine_to`, `bad_header_quarantine_to`, `clean_quarantine_to`, `other_quarantine_to`, `spam_tag_level`, `spam_tag2_level`, `spam_kill_level`, `spam_dsn_cutoff_level`, `spam_quarantine_cutoff_level`, `addr_extension_virus`, `addr_extension_spam`, `addr_extension_banned`, `addr_extension_bad_header`, `warnvirusrecip`, `warnbannedrecip`, `warnbadhrecip`, `newvirus_admin`, `virus_admin`, `banned_admin`, `bad_header_admin`, `spam_admin`, `spam_subject_tag`, `spam_subject_tag2`, `message_size_limit`, `banned_rulenames`) VALUES(1, 1, 0, 'riud', 'riud', 'r', 'Non-paying', 'N', 'N', 'N', 'N', 'Y', 'Y', 'Y', 'N', 'Y', '', '', '', '', '', '', 3, 7, 10, 0, 0, '', '', '', '', 'N', 'N', 'N', '', '', '', '', '', '', '', 0, ''); +INSERT INTO `spamfilter_policy` (`id`, `sys_userid`, `sys_groupid`, `sys_perm_user`, `sys_perm_group`, `sys_perm_other`, `policy_name`, `virus_lover`, `spam_lover`, `banned_files_lover`, `bad_header_lover`, `bypass_virus_checks`, `bypass_spam_checks`, `bypass_banned_checks`, `bypass_header_checks`, `spam_modifies_subj`, `virus_quarantine_to`, `spam_quarantine_to`, `banned_quarantine_to`, `bad_header_quarantine_to`, `clean_quarantine_to`, `other_quarantine_to`, `spam_tag_level`, `spam_tag2_level`, `spam_kill_level`, `spam_dsn_cutoff_level`, `spam_quarantine_cutoff_level`, `addr_extension_virus`, `addr_extension_spam`, `addr_extension_banned`, `addr_extension_bad_header`, `warnvirusrecip`, `warnbannedrecip`, `warnbadhrecip`, `newvirus_admin`, `virus_admin`, `banned_admin`, `bad_header_admin`, `spam_admin`, `spam_subject_tag`, `spam_subject_tag2`, `message_size_limit`, `banned_rulenames`) VALUES(2, 1, 0, 'riud', 'riud', 'r', 'Uncensored', 'Y', 'Y', 'Y', 'Y', 'N', 'N', 'N', 'N', 'N', NULL, NULL, NULL, NULL, NULL, NULL, 3, 999, 999, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `spamfilter_policy` (`id`, `sys_userid`, `sys_groupid`, `sys_perm_user`, `sys_perm_group`, `sys_perm_other`, `policy_name`, `virus_lover`, `spam_lover`, `banned_files_lover`, `bad_header_lover`, `bypass_virus_checks`, `bypass_spam_checks`, `bypass_banned_checks`, `bypass_header_checks`, `spam_modifies_subj`, `virus_quarantine_to`, `spam_quarantine_to`, `banned_quarantine_to`, `bad_header_quarantine_to`, `clean_quarantine_to`, `other_quarantine_to`, `spam_tag_level`, `spam_tag2_level`, `spam_kill_level`, `spam_dsn_cutoff_level`, `spam_quarantine_cutoff_level`, `addr_extension_virus`, `addr_extension_spam`, `addr_extension_banned`, `addr_extension_bad_header`, `warnvirusrecip`, `warnbannedrecip`, `warnbadhrecip`, `newvirus_admin`, `virus_admin`, `banned_admin`, `bad_header_admin`, `spam_admin`, `spam_subject_tag`, `spam_subject_tag2`, `message_size_limit`, `banned_rulenames`) VALUES(3, 1, 0, 'riud', 'riud', 'r', 'Wants all spam', 'N', 'Y', 'N', 'N', 'N', 'N', 'N', 'N', 'Y', NULL, NULL, NULL, NULL, NULL, NULL, 3, 999, 999, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `spamfilter_policy` (`id`, `sys_userid`, `sys_groupid`, `sys_perm_user`, `sys_perm_group`, `sys_perm_other`, `policy_name`, `virus_lover`, `spam_lover`, `banned_files_lover`, `bad_header_lover`, `bypass_virus_checks`, `bypass_spam_checks`, `bypass_banned_checks`, `bypass_header_checks`, `spam_modifies_subj`, `virus_quarantine_to`, `spam_quarantine_to`, `banned_quarantine_to`, `bad_header_quarantine_to`, `clean_quarantine_to`, `other_quarantine_to`, `spam_tag_level`, `spam_tag2_level`, `spam_kill_level`, `spam_dsn_cutoff_level`, `spam_quarantine_cutoff_level`, `addr_extension_virus`, `addr_extension_spam`, `addr_extension_banned`, `addr_extension_bad_header`, `warnvirusrecip`, `warnbannedrecip`, `warnbadhrecip`, `newvirus_admin`, `virus_admin`, `banned_admin`, `bad_header_admin`, `spam_admin`, `spam_subject_tag`, `spam_subject_tag2`, `message_size_limit`, `banned_rulenames`) VALUES(4, 1, 0, 'riud', 'riud', 'r', 'Wants viruses', 'Y', 'N', 'Y', 'Y', 'N', 'N', 'N', 'N', 'Y', NULL, NULL, NULL, NULL, NULL, NULL, 3, 6.9, 6.9, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `spamfilter_policy` (`id`, `sys_userid`, `sys_groupid`, `sys_perm_user`, `sys_perm_group`, `sys_perm_other`, `policy_name`, `virus_lover`, `spam_lover`, `banned_files_lover`, `bad_header_lover`, `bypass_virus_checks`, `bypass_spam_checks`, `bypass_banned_checks`, `bypass_header_checks`, `spam_modifies_subj`, `virus_quarantine_to`, `spam_quarantine_to`, `banned_quarantine_to`, `bad_header_quarantine_to`, `clean_quarantine_to`, `other_quarantine_to`, `spam_tag_level`, `spam_tag2_level`, `spam_kill_level`, `spam_dsn_cutoff_level`, `spam_quarantine_cutoff_level`, `addr_extension_virus`, `addr_extension_spam`, `addr_extension_banned`, `addr_extension_bad_header`, `warnvirusrecip`, `warnbannedrecip`, `warnbadhrecip`, `newvirus_admin`, `virus_admin`, `banned_admin`, `bad_header_admin`, `spam_admin`, `spam_subject_tag`, `spam_subject_tag2`, `message_size_limit`, `banned_rulenames`) VALUES(5, 1, 0, 'riud', 'riud', 'r', 'Normal', 'N', 'N', 'N', 'N', 'N', 'N', 'N', 'N', 'Y', '', '', '', '', '', '', 1, 4.5, 50, 0, 0, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, '', '***SPAM*** ', NULL, NULL); +INSERT INTO `spamfilter_policy` (`id`, `sys_userid`, `sys_groupid`, `sys_perm_user`, `sys_perm_group`, `sys_perm_other`, `policy_name`, `virus_lover`, `spam_lover`, `banned_files_lover`, `bad_header_lover`, `bypass_virus_checks`, `bypass_spam_checks`, `bypass_banned_checks`, `bypass_header_checks`, `spam_modifies_subj`, `virus_quarantine_to`, `spam_quarantine_to`, `banned_quarantine_to`, `bad_header_quarantine_to`, `clean_quarantine_to`, `other_quarantine_to`, `spam_tag_level`, `spam_tag2_level`, `spam_kill_level`, `spam_dsn_cutoff_level`, `spam_quarantine_cutoff_level`, `addr_extension_virus`, `addr_extension_spam`, `addr_extension_banned`, `addr_extension_bad_header`, `warnvirusrecip`, `warnbannedrecip`, `warnbadhrecip`, `newvirus_admin`, `virus_admin`, `banned_admin`, `bad_header_admin`, `spam_admin`, `spam_subject_tag`, `spam_subject_tag2`, `message_size_limit`, `banned_rulenames`) VALUES(6, 1, 0, 'riud', 'riud', 'r', 'Trigger happy', 'N', 'N', 'N', 'N', 'N', 'N', 'N', 'N', 'Y', NULL, NULL, NULL, NULL, NULL, NULL, 3, 5, 5, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL); +INSERT INTO `spamfilter_policy` (`id`, `sys_userid`, `sys_groupid`, `sys_perm_user`, `sys_perm_group`, `sys_perm_other`, `policy_name`, `virus_lover`, `spam_lover`, `banned_files_lover`, `bad_header_lover`, `bypass_virus_checks`, `bypass_spam_checks`, `bypass_banned_checks`, `bypass_header_checks`, `spam_modifies_subj`, `virus_quarantine_to`, `spam_quarantine_to`, `banned_quarantine_to`, `bad_header_quarantine_to`, `clean_quarantine_to`, `other_quarantine_to`, `spam_tag_level`, `spam_tag2_level`, `spam_kill_level`, `spam_dsn_cutoff_level`, `spam_quarantine_cutoff_level`, `addr_extension_virus`, `addr_extension_spam`, `addr_extension_banned`, `addr_extension_bad_header`, `warnvirusrecip`, `warnbannedrecip`, `warnbadhrecip`, `newvirus_admin`, `virus_admin`, `banned_admin`, `bad_header_admin`, `spam_admin`, `spam_subject_tag`, `spam_subject_tag2`, `message_size_limit`, `banned_rulenames`) VALUES(7, 1, 0, 'riud', 'riud', 'r', 'Permissive', 'N', 'N', 'N', 'Y', 'N', 'N', 'N', 'N', 'Y', NULL, NULL, NULL, NULL, NULL, NULL, 3, 10, 20, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL); + +-- -------------------------------------------------------- + +-- +-- Dumping data for table `sys_group` +-- + +INSERT INTO `sys_group` (`groupid`, `name`, `description`, `client_id`) VALUES (1, 'admin', 'Administrators group', 0); + +-- -------------------------------------------------------- + +-- +-- Dumping data for table `sys_ini` +-- + +INSERT INTO `sys_ini` (`sysini_id`, `config`, `default_logo`, `custom_logo`) VALUES (1, '', 'data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAMgAAABBCAYAAACU5+uOAAAItUlEQVR42u1dCWwVVRStUJZCK6HsFNAgWpaCJkKICZKApKUFhURQpEnZF4EEUJZYEEpBIamgkQpUQBZRW7YCBqQsggsQEAgKLbIGCYsSCNqyQ8D76h18Hd/MvJk/n/bXc5KT+TNz79vPzNv+/2FhAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAOAe++s0akTsRZxMnE6cGkKcxkwhPofaBPwWRzxxB/EO8UGI8xhxEGoV8EscY8qBKFRcgdoFAhXHC+VUHAbHo5aBQASyrZwL5DoxEjUNeBXI9XIuEMEE1DTgVSA3FA3qIDEtBLnTQiBDUNOAV4EUKhpURojmZQQEAjwKgSwK0bykWQgEU74ABAKBABAIBOIJffoNrkRsS0whDiMO5uNw4gBiSxvfGOJrbDtMOgr2JNa18HmZmETsopnGp4h9xdF0TcQRb8NEPkawTzv2qaWIoybnZYRUBoJD+difGAuBlCy0qsRM4mfERcTFfGygsBUF/xFxE/EQ8RixwIbi/j7il8R3iE8qwuxAXMJxuuFiTvNMYleb/E0gXiI+cOBaISTJrzLxcw2/+8Q5pjjfNNkM0RDILLadpbimw+bsc4DPkxRpuqkZ1orisoBAiguuhkUhPSvZRBA3u6gsK94g9jDFP9aHcAV3EKNNYX8i3RcNJ4M4nTiROJCYykIzbGZKvouk68vYbyS/cUbz+RrJZpzkO5Sv3eajaJhRDvUwg21nKK4VcF5WKPgFH6PZZw/7dJXC6S6lczunfbIQLpeDkZ+lJcoCAikuvChioaLBtfD4JHPiXSFKKexBPoa9Wwr3ael6skMZDGO7K3z+uOSb5OA7mu2KiOGmPH3ADVh8/sohnDS2S1NcG+uiO/kd+8RL146YRWzj359tb0Eg+gIpsHkjFNrQqiF3DZJABDtyuCP5/FuNRlHN8Ofz9nx+XLNR3jR1c4w8TSFGSmnr4FEgU7wKhI51jAeTpv+/ZQGBOAuEu1d/Ku6LV35t9rdigkUjHuMgkHPEecQsxdjjUx4zHbMI+10OdzqfZ2o0iiqSfzgPfMXnzZqN6iTbJ5jytMTU0E97FEhaAAJ5kc/PuJjQOCoIgegJpKbUl5b5vGaBT+A+vOgn5/JYIdFBIOs1wo1kIZl93+P70/h8oUZYFXkmKInPU9h3m2YeT8lvRilPyyWbi3xt4iMWSDc+P4lp3uAIRDxdryjui6dmuujXcr91IDcMmaJv31WISfTrLeJXCUT3yb1a4Ztmalyu61MaZG/XtD9tapRGnpZKNp2lNNZ3KZARAQgk3untBYEEPgbJ92FsIAax34v1AQ2B5Go2BlW60n0QyCC/BWISdJ5LgewWU8k86DdTzMyNh0BKVyAzfB5I93YQyBGeTlW9lQbwIle2Rdgzy7BAxJT6Hb6X6EIgTrznRSCiHli02cwcPor1pbkQiL5AKvOA+ZZPAtkfxFms3j4IZHAwBGJaRPxdjH00BSImJRqKOlEwjtjUo0Dm2pWla4HMzsyqQIxSMKI8C8RkL9YXuhDf5gqcw4NweaZJiGkh8UeLwi+Utkb4KZCrYszkVSDiQRDMN4hkf5DvZ2gKZJyLPJgFkmAjEDEF3EYSWzPeklO8Q8CLQGKJhQquK+eDdLFNZBJxFLEf8XUXFTbcYv2kRhAEIq+vGNO88zTTKVaRzxPrSSvPW11O8yZqCiROSnMsX0sP0ixWops1Hfbx/AaJIz5QcFc5n+ZVNcbxmoWtEsBNB4EU8Tgk32Gv1wneEybeWG1N8RoNbplmOo2neiyxE3/eoun7G9t31hGIqXuzl8/HB0kgxhvhD03/KoEIpIWFQPLK+UJhkWpgKLZP8IKhajNhJg8A7yt8/5K6QoFM8z5mc68Ph3VWM6wTbN+a+AR/vqThV13KYyMXAgmXps9FnK8GSSA17KaXFf7R3gUyd8H/TiBss9fngfQehzfMpkDLgxcS73J4k1y85WrxtTtOjZPuVZA2O55RhLfUId5XpI2UHwZDIHxtp7HtRrVL25SfhWy7z7VAMuYvipszd0FJcfxzHspdrMctGnGcZNPTZ4F0VszqyPSlPHm8JG9f2SDtgF3Nq/rnJZssyXeUdP0CN64c9l/FDfGyZNNNkaeVGmnMM+Vdtd19los8/2e7Ow/E70lxiG7pRmkn8AaeULlcoo4sBDLfKvL0nLUxablfX0hfmfuQ01avI65fUQYEkupRIJHcAMwbDWNNdmLgupV4zeMO3stcIZ1M4aYo4vZt0oO7Locd0ndGTEQofN+QxiZ22+y7W+RpgUb66vOU7232SZXupZqvaYT3Dfu8ZLrejtc47mvkJ9FoVEWKBmW7dyc7ZXD1Nb2TH3JVn5Tqa3r1repzY6/gwWeqhUCGO/XjWSTmjYYVLOzFoP0Z/qJTks033brxrtjmxCbGtK4ivEqKuH2fNuc0tDatIYgna4yGbz2eeTL8WhJbic2aDnmqqpm2KlLeK5vWn0pc0wirGvtUtBkzNdPKDzWe24oGdZX4CzGfWCD4U93GBQdqNSw4Uiny8K9h4buOhlU2scq+Q1G1i233k63hFwBPEfcS04l1FGJoynbH+fgz8ZKFQJLDAMDjk/psCPzw20XxE6mmdLd24d8KNQ14FciUEPl1xHvEhlK6W2j65aOWgUAEUpV4NEREstyDQNqjloFARVKL/xukrAvkGjGC09zGwfYKsQdqF/BTKMnEJcTtxC3EPAU3iic5cRkfjc/ZFvZuuZm4gXjOouG35LQ2Yfutkq/4pfpN/E9TDVCjQGkJqQExho+CjYlRPseRiQE3EIriaMZTw4K3mOJv23J8jme23RsEAMqqQJrb9PnnEbPEVpUAuJD4Mf/PoCqeONQCUJYFElGKf7ojpnqjUQtAWRdJaf1t2w8ofSAUBNKulATSEaUPhIpIRj9icbyFUgdCTSRTeR0i2HwfpQ0AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAQBnG392D9QU+JXhxAAAAAElFTkSuQmCC', ''); + +-- -------------------------------------------------------- + +-- +-- Dumping data for table `sys_user` +-- + +INSERT INTO `sys_theme` (`var_id`, `tpl_name`, `username`, `logo_url`) VALUES (NULL, 'default', 'global', 'themes/default/images/header_logo.png'); +INSERT INTO `sys_theme` (`var_id`, `tpl_name`, `username`, `logo_url`) VALUES (NULL, 'default-v2', 'global', 'themes/default-v2/images/header_logo.png'); + +-- -------------------------------------------------------- + +-- +-- Dumping data for table `sys_user` +-- + +INSERT INTO `sys_user` (`userid`, `sys_userid`, `sys_groupid`, `sys_perm_user`, `sys_perm_group`, `sys_perm_other`, `username`, `passwort`, `modules`, `startmodule`, `app_theme`, `typ`, `active`, `language`, `groups`, `default_group`, `client_id`) VALUES (1, 1, 0, 'riud', 'riud', '', 'admin', '21232f297a57a5a743894a0e4a801fc3', 'dashboard,admin,client,mail,monitor,sites,dns,vm,tools,help', 'dashboard', 'default', 'admin', 1, 'en', '1,2', 1, 0); + +-- -------------------------------------------------------- + +-- +-- Dumping data for table `sys_config` +-- + +INSERT INTO sys_config VALUES ('db','db_version','3.1dev'); +INSERT INTO sys_config VALUES ('interface','session_timeout','0'); + +SET FOREIGN_KEY_CHECKS = 1; diff --git a/install/sql/ispconfig3.sql.rej b/install/sql/ispconfig3.sql.rej new file mode 100644 index 0000000000..6c8d2e4a9c --- /dev/null +++ b/install/sql/ispconfig3.sql.rej @@ -0,0 +1,23 @@ +--- install/sql/ispconfig3.sql ++++ install/sql/ispconfig3.sql +@@ -2522,13 +2527,13 @@ INSERT INTO `software_repo` (`software_repo_id`, `sys_userid`, `sys_groupid`, `s + -- Dumping data for table `spamfilter_policy` + -- + +-INSERT INTO `spamfilter_policy` (`id`, `sys_userid`, `sys_groupid`, `sys_perm_user`, `sys_perm_group`, `sys_perm_other`, `policy_name`, `virus_lover`, `spam_lover`, `banned_files_lover`, `bad_header_lover`, `bypass_virus_checks`, `bypass_spam_checks`, `bypass_banned_checks`, `bypass_header_checks`, `spam_modifies_subj`, `virus_quarantine_to`, `spam_quarantine_to`, `banned_quarantine_to`, `bad_header_quarantine_to`, `clean_quarantine_to`, `other_quarantine_to`, `spam_tag_level`, `spam_tag2_level`, `spam_kill_level`, `spam_dsn_cutoff_level`, `spam_quarantine_cutoff_level`, `addr_extension_virus`, `addr_extension_spam`, `addr_extension_banned`, `addr_extension_bad_header`, `warnvirusrecip`, `warnbannedrecip`, `warnbadhrecip`, `newvirus_admin`, `virus_admin`, `banned_admin`, `bad_header_admin`, `spam_admin`, `spam_subject_tag`, `spam_subject_tag2`, `message_size_limit`, `banned_rulenames`) VALUES(1, 1, 0, 'riud', 'riud', 'r', 'Non-paying', 'N', 'N', 'N', 'N', 'Y', 'Y', 'Y', 'N', 'Y', '', '', '', '', '', '', 3, 7, 10, 0, 0, '', '', '', '', 'N', 'N', 'N', '', '', '', '', '', '', '', 0, ''); +-INSERT INTO `spamfilter_policy` (`id`, `sys_userid`, `sys_groupid`, `sys_perm_user`, `sys_perm_group`, `sys_perm_other`, `policy_name`, `virus_lover`, `spam_lover`, `banned_files_lover`, `bad_header_lover`, `bypass_virus_checks`, `bypass_spam_checks`, `bypass_banned_checks`, `bypass_header_checks`, `spam_modifies_subj`, `virus_quarantine_to`, `spam_quarantine_to`, `banned_quarantine_to`, `bad_header_quarantine_to`, `clean_quarantine_to`, `other_quarantine_to`, `spam_tag_level`, `spam_tag2_level`, `spam_kill_level`, `spam_dsn_cutoff_level`, `spam_quarantine_cutoff_level`, `addr_extension_virus`, `addr_extension_spam`, `addr_extension_banned`, `addr_extension_bad_header`, `warnvirusrecip`, `warnbannedrecip`, `warnbadhrecip`, `newvirus_admin`, `virus_admin`, `banned_admin`, `bad_header_admin`, `spam_admin`, `spam_subject_tag`, `spam_subject_tag2`, `message_size_limit`, `banned_rulenames`) VALUES(2, 1, 0, 'riud', 'riud', 'r', 'Uncensored', 'Y', 'Y', 'Y', 'Y', 'N', 'N', 'N', 'N', 'N', NULL, NULL, NULL, NULL, NULL, NULL, 3, 999, 999, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL); +-INSERT INTO `spamfilter_policy` (`id`, `sys_userid`, `sys_groupid`, `sys_perm_user`, `sys_perm_group`, `sys_perm_other`, `policy_name`, `virus_lover`, `spam_lover`, `banned_files_lover`, `bad_header_lover`, `bypass_virus_checks`, `bypass_spam_checks`, `bypass_banned_checks`, `bypass_header_checks`, `spam_modifies_subj`, `virus_quarantine_to`, `spam_quarantine_to`, `banned_quarantine_to`, `bad_header_quarantine_to`, `clean_quarantine_to`, `other_quarantine_to`, `spam_tag_level`, `spam_tag2_level`, `spam_kill_level`, `spam_dsn_cutoff_level`, `spam_quarantine_cutoff_level`, `addr_extension_virus`, `addr_extension_spam`, `addr_extension_banned`, `addr_extension_bad_header`, `warnvirusrecip`, `warnbannedrecip`, `warnbadhrecip`, `newvirus_admin`, `virus_admin`, `banned_admin`, `bad_header_admin`, `spam_admin`, `spam_subject_tag`, `spam_subject_tag2`, `message_size_limit`, `banned_rulenames`) VALUES(3, 1, 0, 'riud', 'riud', 'r', 'Wants all spam', 'N', 'Y', 'N', 'N', 'N', 'N', 'N', 'N', 'Y', NULL, NULL, NULL, NULL, NULL, NULL, 3, 999, 999, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL); +-INSERT INTO `spamfilter_policy` (`id`, `sys_userid`, `sys_groupid`, `sys_perm_user`, `sys_perm_group`, `sys_perm_other`, `policy_name`, `virus_lover`, `spam_lover`, `banned_files_lover`, `bad_header_lover`, `bypass_virus_checks`, `bypass_spam_checks`, `bypass_banned_checks`, `bypass_header_checks`, `spam_modifies_subj`, `virus_quarantine_to`, `spam_quarantine_to`, `banned_quarantine_to`, `bad_header_quarantine_to`, `clean_quarantine_to`, `other_quarantine_to`, `spam_tag_level`, `spam_tag2_level`, `spam_kill_level`, `spam_dsn_cutoff_level`, `spam_quarantine_cutoff_level`, `addr_extension_virus`, `addr_extension_spam`, `addr_extension_banned`, `addr_extension_bad_header`, `warnvirusrecip`, `warnbannedrecip`, `warnbadhrecip`, `newvirus_admin`, `virus_admin`, `banned_admin`, `bad_header_admin`, `spam_admin`, `spam_subject_tag`, `spam_subject_tag2`, `message_size_limit`, `banned_rulenames`) VALUES(4, 1, 0, 'riud', 'riud', 'r', 'Wants viruses', 'Y', 'N', 'Y', 'Y', 'N', 'N', 'N', 'N', 'Y', NULL, NULL, NULL, NULL, NULL, NULL, 3, 6.9, 6.9, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL); +-INSERT INTO `spamfilter_policy` (`id`, `sys_userid`, `sys_groupid`, `sys_perm_user`, `sys_perm_group`, `sys_perm_other`, `policy_name`, `virus_lover`, `spam_lover`, `banned_files_lover`, `bad_header_lover`, `bypass_virus_checks`, `bypass_spam_checks`, `bypass_banned_checks`, `bypass_header_checks`, `spam_modifies_subj`, `virus_quarantine_to`, `spam_quarantine_to`, `banned_quarantine_to`, `bad_header_quarantine_to`, `clean_quarantine_to`, `other_quarantine_to`, `spam_tag_level`, `spam_tag2_level`, `spam_kill_level`, `spam_dsn_cutoff_level`, `spam_quarantine_cutoff_level`, `addr_extension_virus`, `addr_extension_spam`, `addr_extension_banned`, `addr_extension_bad_header`, `warnvirusrecip`, `warnbannedrecip`, `warnbadhrecip`, `newvirus_admin`, `virus_admin`, `banned_admin`, `bad_header_admin`, `spam_admin`, `spam_subject_tag`, `spam_subject_tag2`, `message_size_limit`, `banned_rulenames`) VALUES(5, 1, 0, 'riud', 'riud', 'r', 'Normal', 'N', 'N', 'N', 'N', 'N', 'N', 'N', 'N', 'Y', '', '', '', '', '', '', 1, 4.5, 50, 0, 0, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, '', '***SPAM***', NULL, NULL); +-INSERT INTO `spamfilter_policy` (`id`, `sys_userid`, `sys_groupid`, `sys_perm_user`, `sys_perm_group`, `sys_perm_other`, `policy_name`, `virus_lover`, `spam_lover`, `banned_files_lover`, `bad_header_lover`, `bypass_virus_checks`, `bypass_spam_checks`, `bypass_banned_checks`, `bypass_header_checks`, `spam_modifies_subj`, `virus_quarantine_to`, `spam_quarantine_to`, `banned_quarantine_to`, `bad_header_quarantine_to`, `clean_quarantine_to`, `other_quarantine_to`, `spam_tag_level`, `spam_tag2_level`, `spam_kill_level`, `spam_dsn_cutoff_level`, `spam_quarantine_cutoff_level`, `addr_extension_virus`, `addr_extension_spam`, `addr_extension_banned`, `addr_extension_bad_header`, `warnvirusrecip`, `warnbannedrecip`, `warnbadhrecip`, `newvirus_admin`, `virus_admin`, `banned_admin`, `bad_header_admin`, `spam_admin`, `spam_subject_tag`, `spam_subject_tag2`, `message_size_limit`, `banned_rulenames`) VALUES(6, 1, 0, 'riud', 'riud', 'r', 'Trigger happy', 'N', 'N', 'N', 'N', 'N', 'N', 'N', 'N', 'Y', NULL, NULL, NULL, NULL, NULL, NULL, 3, 5, 5, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL); +-INSERT INTO `spamfilter_policy` (`id`, `sys_userid`, `sys_groupid`, `sys_perm_user`, `sys_perm_group`, `sys_perm_other`, `policy_name`, `virus_lover`, `spam_lover`, `banned_files_lover`, `bad_header_lover`, `bypass_virus_checks`, `bypass_spam_checks`, `bypass_banned_checks`, `bypass_header_checks`, `spam_modifies_subj`, `virus_quarantine_to`, `spam_quarantine_to`, `banned_quarantine_to`, `bad_header_quarantine_to`, `clean_quarantine_to`, `other_quarantine_to`, `spam_tag_level`, `spam_tag2_level`, `spam_kill_level`, `spam_dsn_cutoff_level`, `spam_quarantine_cutoff_level`, `addr_extension_virus`, `addr_extension_spam`, `addr_extension_banned`, `addr_extension_bad_header`, `warnvirusrecip`, `warnbannedrecip`, `warnbadhrecip`, `newvirus_admin`, `virus_admin`, `banned_admin`, `bad_header_admin`, `spam_admin`, `spam_subject_tag`, `spam_subject_tag2`, `message_size_limit`, `banned_rulenames`) VALUES(7, 1, 0, 'riud', 'riud', 'r', 'Permissive', 'N', 'N', 'N', 'Y', 'N', 'N', 'N', 'N', 'Y', NULL, NULL, NULL, NULL, NULL, NULL, 3, 10, 20, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL); ++INSERT INTO `spamfilter_policy` (`id`, `sys_userid`, `sys_groupid`, `sys_perm_user`, `sys_perm_group`, `sys_perm_other`, `policy_name`, `virus_lover`, `spam_lover`, `banned_files_lover`, `bad_header_lover`, `bypass_virus_checks`, `bypass_spam_checks`, `bypass_banned_checks`, `bypass_header_checks`, `spam_modifies_subj`, `virus_quarantine_to`, `spam_quarantine_to`, `banned_quarantine_to`, `bad_header_quarantine_to`, `clean_quarantine_to`, `other_quarantine_to`, `spam_tag_level`, `spam_tag2_level`, `spam_kill_level`, `spam_dsn_cutoff_level`, `spam_quarantine_cutoff_level`, `addr_extension_virus`, `addr_extension_spam`, `addr_extension_banned`, `addr_extension_bad_header`, `warnvirusrecip`, `warnbannedrecip`, `warnbadhrecip`, `newvirus_admin`, `virus_admin`, `banned_admin`, `bad_header_admin`, `spam_admin`, `spam_subject_tag`, `spam_subject_tag2`, `message_size_limit`, `banned_rulenames`, `rspamd_greylisting`, `rspamd_spam_greylisting_level`, `rspamd_spam_tag_level`, `rspamd_spam_tag_method`, `rspamd_spam_kill_level`) VALUES(1, 1, 0, 'riud', 'riud', 'r', 'Non-paying', 'N', 'N', 'N', 'N', 'Y', 'Y', 'Y', 'N', 'Y', '', '', '', '', '', '', 3, 7, 10, 0, 0, '', '', '', '', 'N', 'N', 'N', '', '', '', '', '', '', '', 0, '', 'n', 6.00, 8.00, 'rewrite_subject', 12.00); ++INSERT INTO `spamfilter_policy` (`id`, `sys_userid`, `sys_groupid`, `sys_perm_user`, `sys_perm_group`, `sys_perm_other`, `policy_name`, `virus_lover`, `spam_lover`, `banned_files_lover`, `bad_header_lover`, `bypass_virus_checks`, `bypass_spam_checks`, `bypass_banned_checks`, `bypass_header_checks`, `spam_modifies_subj`, `virus_quarantine_to`, `spam_quarantine_to`, `banned_quarantine_to`, `bad_header_quarantine_to`, `clean_quarantine_to`, `other_quarantine_to`, `spam_tag_level`, `spam_tag2_level`, `spam_kill_level`, `spam_dsn_cutoff_level`, `spam_quarantine_cutoff_level`, `addr_extension_virus`, `addr_extension_spam`, `addr_extension_banned`, `addr_extension_bad_header`, `warnvirusrecip`, `warnbannedrecip`, `warnbadhrecip`, `newvirus_admin`, `virus_admin`, `banned_admin`, `bad_header_admin`, `spam_admin`, `spam_subject_tag`, `spam_subject_tag2`, `message_size_limit`, `banned_rulenames`, `rspamd_greylisting`, `rspamd_spam_greylisting_level`, `rspamd_spam_tag_level`, `rspamd_spam_tag_method`, `rspamd_spam_kill_level`) VALUES(2, 1, 0, 'riud', 'riud', 'r', 'Uncensored', 'Y', 'Y', 'Y', 'Y', 'N', 'N', 'N', 'N', 'N', NULL, NULL, NULL, NULL, NULL, NULL, 3, 999, 999, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, 'n', 999.00, 999.00, 'rewrite_subject', 999.00); ++INSERT INTO `spamfilter_policy` (`id`, `sys_userid`, `sys_groupid`, `sys_perm_user`, `sys_perm_group`, `sys_perm_other`, `policy_name`, `virus_lover`, `spam_lover`, `banned_files_lover`, `bad_header_lover`, `bypass_virus_checks`, `bypass_spam_checks`, `bypass_banned_checks`, `bypass_header_checks`, `spam_modifies_subj`, `virus_quarantine_to`, `spam_quarantine_to`, `banned_quarantine_to`, `bad_header_quarantine_to`, `clean_quarantine_to`, `other_quarantine_to`, `spam_tag_level`, `spam_tag2_level`, `spam_kill_level`, `spam_dsn_cutoff_level`, `spam_quarantine_cutoff_level`, `addr_extension_virus`, `addr_extension_spam`, `addr_extension_banned`, `addr_extension_bad_header`, `warnvirusrecip`, `warnbannedrecip`, `warnbadhrecip`, `newvirus_admin`, `virus_admin`, `banned_admin`, `bad_header_admin`, `spam_admin`, `spam_subject_tag`, `spam_subject_tag2`, `message_size_limit`, `banned_rulenames`, `rspamd_greylisting`, `rspamd_spam_greylisting_level`, `rspamd_spam_tag_level`, `rspamd_spam_tag_method`, `rspamd_spam_kill_level`) VALUES(3, 1, 0, 'riud', 'riud', 'r', 'Wants all spam', 'N', 'Y', 'N', 'N', 'N', 'N', 'N', 'N', 'Y', NULL, NULL, NULL, NULL, NULL, NULL, 3, 999, 999, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, 'n', 999.00, 999.00, 'rewrite_subject', 999.00); ++INSERT INTO `spamfilter_policy` (`id`, `sys_userid`, `sys_groupid`, `sys_perm_user`, `sys_perm_group`, `sys_perm_other`, `policy_name`, `virus_lover`, `spam_lover`, `banned_files_lover`, `bad_header_lover`, `bypass_virus_checks`, `bypass_spam_checks`, `bypass_banned_checks`, `bypass_header_checks`, `spam_modifies_subj`, `virus_quarantine_to`, `spam_quarantine_to`, `banned_quarantine_to`, `bad_header_quarantine_to`, `clean_quarantine_to`, `other_quarantine_to`, `spam_tag_level`, `spam_tag2_level`, `spam_kill_level`, `spam_dsn_cutoff_level`, `spam_quarantine_cutoff_level`, `addr_extension_virus`, `addr_extension_spam`, `addr_extension_banned`, `addr_extension_bad_header`, `warnvirusrecip`, `warnbannedrecip`, `warnbadhrecip`, `newvirus_admin`, `virus_admin`, `banned_admin`, `bad_header_admin`, `spam_admin`, `spam_subject_tag`, `spam_subject_tag2`, `message_size_limit`, `banned_rulenames`, `rspamd_greylisting`, `rspamd_spam_greylisting_level`, `rspamd_spam_tag_level`, `rspamd_spam_tag_method`, `rspamd_spam_kill_level`) VALUES(4, 1, 0, 'riud', 'riud', 'r', 'Wants viruses', 'Y', 'N', 'Y', 'Y', 'N', 'N', 'N', 'N', 'Y', NULL, NULL, NULL, NULL, NULL, NULL, 3, 6.9, 6.9, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, 'y', 4.00, 6.00, 'rewrite_subject', 10.00); ++INSERT INTO `spamfilter_policy` (`id`, `sys_userid`, `sys_groupid`, `sys_perm_user`, `sys_perm_group`, `sys_perm_other`, `policy_name`, `virus_lover`, `spam_lover`, `banned_files_lover`, `bad_header_lover`, `bypass_virus_checks`, `bypass_spam_checks`, `bypass_banned_checks`, `bypass_header_checks`, `spam_modifies_subj`, `virus_quarantine_to`, `spam_quarantine_to`, `banned_quarantine_to`, `bad_header_quarantine_to`, `clean_quarantine_to`, `other_quarantine_to`, `spam_tag_level`, `spam_tag2_level`, `spam_kill_level`, `spam_dsn_cutoff_level`, `spam_quarantine_cutoff_level`, `addr_extension_virus`, `addr_extension_spam`, `addr_extension_banned`, `addr_extension_bad_header`, `warnvirusrecip`, `warnbannedrecip`, `warnbadhrecip`, `newvirus_admin`, `virus_admin`, `banned_admin`, `bad_header_admin`, `spam_admin`, `spam_subject_tag`, `spam_subject_tag2`, `message_size_limit`, `banned_rulenames`, `rspamd_greylisting`, `rspamd_spam_greylisting_level`, `rspamd_spam_tag_level`, `rspamd_spam_tag_method`, `rspamd_spam_kill_level`) VALUES(5, 1, 0, 'riud', 'riud', 'r', 'Normal', 'N', 'N', 'N', 'N', 'N', 'N', 'N', 'N', 'Y', '', '', '', '', '', '', 1, 4.5, 50, 0, 0, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, '', '***SPAM***', NULL, NULL, 'y', 4.00, 6.00, 'rewrite_subject', 10.00); ++INSERT INTO `spamfilter_policy` (`id`, `sys_userid`, `sys_groupid`, `sys_perm_user`, `sys_perm_group`, `sys_perm_other`, `policy_name`, `virus_lover`, `spam_lover`, `banned_files_lover`, `bad_header_lover`, `bypass_virus_checks`, `bypass_spam_checks`, `bypass_banned_checks`, `bypass_header_checks`, `spam_modifies_subj`, `virus_quarantine_to`, `spam_quarantine_to`, `banned_quarantine_to`, `bad_header_quarantine_to`, `clean_quarantine_to`, `other_quarantine_to`, `spam_tag_level`, `spam_tag2_level`, `spam_kill_level`, `spam_dsn_cutoff_level`, `spam_quarantine_cutoff_level`, `addr_extension_virus`, `addr_extension_spam`, `addr_extension_banned`, `addr_extension_bad_header`, `warnvirusrecip`, `warnbannedrecip`, `warnbadhrecip`, `newvirus_admin`, `virus_admin`, `banned_admin`, `bad_header_admin`, `spam_admin`, `spam_subject_tag`, `spam_subject_tag2`, `message_size_limit`, `banned_rulenames`, `rspamd_greylisting`, `rspamd_spam_greylisting_level`, `rspamd_spam_tag_level`, `rspamd_spam_tag_method`, `rspamd_spam_kill_level`) VALUES(6, 1, 0, 'riud', 'riud', 'r', 'Trigger happy', 'N', 'N', 'N', 'N', 'N', 'N', 'N', 'N', 'Y', NULL, NULL, NULL, NULL, NULL, NULL, 3, 5, 5, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, 'y', 2.00, 4.00, 'rewrite_subject', 8.00); ++INSERT INTO `spamfilter_policy` (`id`, `sys_userid`, `sys_groupid`, `sys_perm_user`, `sys_perm_group`, `sys_perm_other`, `policy_name`, `virus_lover`, `spam_lover`, `banned_files_lover`, `bad_header_lover`, `bypass_virus_checks`, `bypass_spam_checks`, `bypass_banned_checks`, `bypass_header_checks`, `spam_modifies_subj`, `virus_quarantine_to`, `spam_quarantine_to`, `banned_quarantine_to`, `bad_header_quarantine_to`, `clean_quarantine_to`, `other_quarantine_to`, `spam_tag_level`, `spam_tag2_level`, `spam_kill_level`, `spam_dsn_cutoff_level`, `spam_quarantine_cutoff_level`, `addr_extension_virus`, `addr_extension_spam`, `addr_extension_banned`, `addr_extension_bad_header`, `warnvirusrecip`, `warnbannedrecip`, `warnbadhrecip`, `newvirus_admin`, `virus_admin`, `banned_admin`, `bad_header_admin`, `spam_admin`, `spam_subject_tag`, `spam_subject_tag2`, `message_size_limit`, `banned_rulenames`, `rspamd_greylisting`, `rspamd_spam_greylisting_level`, `rspamd_spam_tag_level`, `rspamd_spam_tag_method`, `rspamd_spam_kill_level`) VALUES(7, 1, 0, 'riud', 'riud', 'r', 'Permissive', 'N', 'N', 'N', 'Y', 'N', 'N', 'N', 'N', 'Y', NULL, NULL, NULL, NULL, NULL, NULL, 3, 10, 20, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, 'n', 7.00, 10.00, 'rewrite_subject', 20.00); + + -- -------------------------------------------------------- + diff --git a/install/tpl/rspamd_antivirus.conf.master b/install/tpl/rspamd_antivirus.conf.master new file mode 100644 index 0000000000..f88d81ac7c --- /dev/null +++ b/install/tpl/rspamd_antivirus.conf.master @@ -0,0 +1,30 @@ +clamav { + # If set force this action if any virus is found (default unset: no action is forced) + #action = "reject"; + # if `true` only messages with non-image attachments will be checked (default true) + scan_mime_parts = true; + # If `max_size` is set, messages > n bytes in size are not scanned + #max_size = 20000000; + # symbol to add (add it to metric if you want non-zero weight) + symbol = "CLAM_VIRUS"; + # type of scanner: "clamav", "fprot", "sophos" or "savapi" + type = "clamav"; + # For "savapi" you must also specify the following variable + #product_id = 12345; + # You can enable logging for clean messages + #log_clean = true; + # servers to query (if port is unspecified, scanner-specific default is used) + # can be specified multiple times to pool servers + # can be set to a path to a unix socket + # Enable this in local.d/antivirus.conf + #servers = "127.0.0.1:3310"; + servers = "/var/run/clamav/clamd.ctl"; + # if `patterns` is specified virus name will be matched against provided regexes and the related + # symbol will be yielded if a match is found. If no match is found, default symbol is yielded. + patterns { + # symbol_name = "pattern"; + JUST_EICAR = "^Eicar-Test-Signature$"; + } + # `whitelist` points to a map of IP addresses. Mail from these addresses is not scanned. + whitelist = "/etc/rspamd/antivirus.wl"; +} \ No newline at end of file diff --git a/install/tpl/rspamd_classifier-bayes.conf.master b/install/tpl/rspamd_classifier-bayes.conf.master new file mode 100644 index 0000000000..1688d57e21 --- /dev/null +++ b/install/tpl/rspamd_classifier-bayes.conf.master @@ -0,0 +1,3 @@ +autolearn = [-0.01, 5.00]; +per_user = true; +per_language = true; \ No newline at end of file diff --git a/install/tpl/rspamd_dkim_signing.conf.master b/install/tpl/rspamd_dkim_signing.conf.master new file mode 100644 index 0000000000..0e55a7ead2 --- /dev/null +++ b/install/tpl/rspamd_dkim_signing.conf.master @@ -0,0 +1,2 @@ +path = "<tmpl_var name='dkim_path'>/$domain.private"; +selector = "default"; \ No newline at end of file diff --git a/install/tpl/rspamd_greylist.conf.master b/install/tpl/rspamd_greylist.conf.master new file mode 100644 index 0000000000..74ea715a22 --- /dev/null +++ b/install/tpl/rspamd_greylist.conf.master @@ -0,0 +1 @@ +servers = "127.0.0.1:6379"; \ No newline at end of file diff --git a/install/tpl/rspamd_groups.conf.master b/install/tpl/rspamd_groups.conf.master new file mode 100644 index 0000000000..62a986533a --- /dev/null +++ b/install/tpl/rspamd_groups.conf.master @@ -0,0 +1,4 @@ +group "antivirus" { + .include(try=true; priority=1; duplicate=merge) "$LOCAL_CONFDIR/local.d/antivirus_group.conf" + .include(try=true; priority=10) "$LOCAL_CONFDIR/override.d/antivirus_group.conf" +} diff --git a/install/tpl/rspamd_milter_headers.conf.master b/install/tpl/rspamd_milter_headers.conf.master new file mode 100644 index 0000000000..d399bbf4ec --- /dev/null +++ b/install/tpl/rspamd_milter_headers.conf.master @@ -0,0 +1,2 @@ +use = ["x-spamd-bar", "x-spam-level", "authentication-results"]; +authenticated_headers = ["authentication-results"]; \ No newline at end of file diff --git a/install/tpl/rspamd_mx_check.conf.master b/install/tpl/rspamd_mx_check.conf.master new file mode 100644 index 0000000000..0a628f9c83 --- /dev/null +++ b/install/tpl/rspamd_mx_check.conf.master @@ -0,0 +1,9 @@ +enabled = true; +servers = "localhost"; +key_prefix = "rmx"; +symbol_bad_mx = "MX_INVALID"; +symbol_no_mx = "MX_MISSING"; +symbol_good_mx = "MX_GOOD"; +expire = 86400; +expire_novalid = 7200; +greylist_invalid = false; \ No newline at end of file diff --git a/install/tpl/rspamd_neural.conf.master b/install/tpl/rspamd_neural.conf.master new file mode 100644 index 0000000000..76f8a6d344 --- /dev/null +++ b/install/tpl/rspamd_neural.conf.master @@ -0,0 +1,31 @@ +servers = 127.0.0.1:6379; +enabled = true; + +rules { + "LONG" { + train { + max_trains = 5000; + max_usages = 200; + max_iterations = 25; + learning_rate = 0.01, + spam_score = 10; + ham_score = -2; + } + symbol_spam = "NEURAL_SPAM_LONG"; + symbol_ham = "NEURAL_HAM_LONG"; + ann_expire = 100d; + } + "SHORT" { + train { + max_trains = 100; + max_usages = 2; + max_iterations = 25; + learning_rate = 0.01, + spam_score = 10; + ham_score = -2; + } + symbol_spam = "NEURAL_SPAM_SHORT"; + symbol_ham = "NEURAL_HAM_SHORT"; + ann_expire = 1d; + } +} \ No newline at end of file diff --git a/install/tpl/rspamd_neural_group.conf.master b/install/tpl/rspamd_neural_group.conf.master new file mode 100644 index 0000000000..5aabdefaff --- /dev/null +++ b/install/tpl/rspamd_neural_group.conf.master @@ -0,0 +1,18 @@ +symbols = { + "NEURAL_SPAM_LONG" { + weight = 1.0; # sample weight + description = "Neural network spam (long)"; + } + "NEURAL_HAM_LONG" { + weight = -2.0; # sample weight + description = "Neural network ham (long)"; + } + "NEURAL_SPAM_SHORT" { + weight = 0.5; # sample weight + description = "Neural network spam (short)"; + } + "NEURAL_HAM_SHORT" { + weight = -1.0; # sample weight + description = "Neural network ham (short)"; + } +} diff --git a/install/tpl/rspamd_options.inc.master b/install/tpl/rspamd_options.inc.master new file mode 100644 index 0000000000..69e40365b7 --- /dev/null +++ b/install/tpl/rspamd_options.inc.master @@ -0,0 +1,5 @@ +local_addrs = "127.0.0.0/8, ::1"; + +dns { + nameserver = ["127.0.0.1:53:10"]; +} diff --git a/install/tpl/rspamd_override_rbl.conf.master b/install/tpl/rspamd_override_rbl.conf.master new file mode 100644 index 0000000000..310e722832 --- /dev/null +++ b/install/tpl/rspamd_override_rbl.conf.master @@ -0,0 +1,53 @@ +# RBL +symbols = { + "RBL_SENDERSCORE" { + weight = 4.0; + description = "From address is listed in senderscore.com BL"; + } + "RBL_SPAMHAUS_SBL" { + weight = 2.0; + description = "From address is listed in zen sbl"; + } + "RBL_SPAMHAUS_CSS" { + weight = 2.0; + description = "From address is listed in zen css"; + } + "RBL_SPAMHAUS_XBL" { + weight = 4.0; + description = "From address is listed in zen xbl"; + } + "RBL_SPAMHAUS_XBL_ANY" { + weight = 4.0; + description = "From or receive address is listed in zen xbl (any list)"; + } + "RBL_SPAMHAUS_PBL" { + weight = 2.0; + description = "From address is listed in zen pbl (ISP list)"; + } + "RBL_SPAMHAUS_DROP" { + weight = 7.0; + description = "From address is listed in zen drop bl"; + } + "RECEIVED_SPAMHAUS_XBL" { + weight = 3.0; + description = "Received address is listed in zen xbl"; + one_shot = true; + } + "RBL_MAILSPIKE_WORST" { + weight = 2.0; + description = "From address is listed in RBL - worst possible reputation"; + } + "RBL_MAILSPIKE_VERYBAD" { + weight = 1.5; + description = "From address is listed in RBL - very bad reputation"; + } + "RBL_MAILSPIKE_BAD" { + weight = 1.0; + description = "From address is listed in RBL - bad reputation"; + } + "RBL_SEM" { + weight = 1.0; + description = "Address is listed in Spameatingmonkey RBL"; + } + # /RBL +} diff --git a/install/tpl/rspamd_override_surbl.conf.master b/install/tpl/rspamd_override_surbl.conf.master new file mode 100644 index 0000000000..30676a46fd --- /dev/null +++ b/install/tpl/rspamd_override_surbl.conf.master @@ -0,0 +1,108 @@ +symbols = { + # SURBL + "PH_SURBL_MULTI" { + weight = 5.5; + description = "SURBL: Phishing sites"; + } + "MW_SURBL_MULTI" { + weight = 5.5; + description = "SURBL: Malware sites"; + } + "ABUSE_SURBL" { + weight = 5.5; + description = "SURBL: ABUSE"; + } + "CRACKED_SURBL" { + weight = 4.0; + description = "SURBL: cracked site"; + } + "RAMBLER_URIBL" { + weight = 4.5; + description = "Rambler uribl"; + one_shot = true; + } + "RAMBLER_EMAILBL" { + weight = 9.5; + description = "Rambler emailbl"; + one_shot = true; + } + "MSBL_EBL" { + weight = 7.5; + description = "MSBL emailbl"; + one_shot = true; + } + "SEM_URIBL" { + weight = 3.5; + description = "Spameatingmonkey uribl"; + } + "SEM_URIBL_FRESH15" { + weight = 3.0; + description = "Spameatingmonkey uribl. Domains registered in the last 15 days (.AERO,.BIZ,.COM,.INFO,.NAME,.NET,.PRO,.SK,.TEL,.US)"; + } + "DBL" { + weight = 0.0; + description = "DBL unknown result"; + } + "DBL_SPAM" { + weight = 6.5; + description = "DBL uribl spam"; + } + "DBL_PHISH" { + weight = 6.5; + description = "DBL uribl phishing"; + } + "DBL_MALWARE" { + weight = 6.5; + description = "DBL uribl malware"; + } + "DBL_BOTNET" { + weight = 5.5; + description = "DBL uribl botnet C&C domain"; + } + "DBL_ABUSE" { + weight = 6.5; + description = "DBL uribl abused legit spam"; + } + "DBL_ABUSE_REDIR" { + weight = 1.5; + description = "DBL uribl abused spammed redirector domain"; + } + "DBL_ABUSE_PHISH" { + weight = 7.5; + description = "DBL uribl abused legit phish"; + } + "DBL_ABUSE_MALWARE" { + weight = 7.5; + description = "DBL uribl abused legit malware"; + } + "DBL_ABUSE_BOTNET" { + weight = 5.5; + description = "DBL uribl abused legit botnet C&C"; + } + "URIBL_BLACK" { + weight = 7.5; + description = "uribl.com black url"; + } + "URIBL_RED" { + weight = 3.5; + description = "uribl.com red url"; + } + "URIBL_GREY" { + weight = 1.5; + description = "uribl.com grey url"; + one_shot = true; + } + "URIBL_SBL" { + weight = 6.5; + description = "Spamhaus SBL URIBL"; + } + "URIBL_SBL_CSS" { + weight = 6.5; + description = "Spamhaus SBL CSS URIBL"; + } + "RBL_SARBL_BAD" { + weight = 2.5; + description = "A domain listed in the mail is blacklisted in SARBL"; + } + # /SURBL +} diff --git a/install/tpl/rspamd_redis.conf.master b/install/tpl/rspamd_redis.conf.master new file mode 100644 index 0000000000..b908af9f5e --- /dev/null +++ b/install/tpl/rspamd_redis.conf.master @@ -0,0 +1 @@ +servers = "127.0.0.1"; \ No newline at end of file diff --git a/install/tpl/rspamd_symbols_antivirus.conf.master b/install/tpl/rspamd_symbols_antivirus.conf.master new file mode 100644 index 0000000000..8c2d93d89e --- /dev/null +++ b/install/tpl/rspamd_symbols_antivirus.conf.master @@ -0,0 +1,15 @@ +subject = "***SPAM*** %s"; +symbols = { + "CLAM_VIRUS" { + weight = 50; + description = "Clamav has found a virus."; + } + "JUST_EICAR" { + weight = 50; + description = "Clamav has found a virus."; + } + "R_DUMMY" { + weight = 0.0; + description = "Dummy symbol"; + } +} \ No newline at end of file diff --git a/install/tpl/rspamd_users.conf.master b/install/tpl/rspamd_users.conf.master new file mode 100644 index 0000000000..73d437d6cb --- /dev/null +++ b/install/tpl/rspamd_users.conf.master @@ -0,0 +1,43 @@ +settings { + authenticated { + priority = 10; + authenticated = yes; + #apply "default" { groups_disabled = ["rbl", "spf"]; } + apply "default" { + #symbols_enabled = []; + symbols_disabled = []; + #groups_enabled = []; + groups_disabled = ["rbl"]; + } + } + whitelist { + priority = 10; + rcpt = "postmaster"; + rcpt = "hostmaster"; + rcpt = "abuse"; + want_spam = yes; + } + whitelist-ip { + priority = 10; +<tmpl_loop name="whitelist_ips"> + ip = "<tmpl_var name='ip'>"; +</tmpl_loop> + + want_spam = yes; + } +# whitelist-timmehosting { +# priority = 20; +# from = "@xxx"; +# from = "@xxx"; +# want_spam = yes; +# } + whitelist-ca { + priority = 20; + from = "@comodo.com"; + from = "@geotrust.com"; + from = "@geotrusteurope.com"; + want_spam = yes; + } + .include(try=true; glob=true) "$LOCAL_CONFDIR/local.d/users/*.conf" + .include(try=true; priority=1,duplicate=merge) "$LOCAL_CONFDIR/local.d/users.local.conf" +} diff --git a/install/tpl/rspamd_users.inc.conf.master b/install/tpl/rspamd_users.inc.conf.master new file mode 120000 index 0000000000..30bb52fd8e --- /dev/null +++ b/install/tpl/rspamd_users.inc.conf.master @@ -0,0 +1 @@ +../../server/conf/rspamd_users.inc.conf.master \ No newline at end of file diff --git a/install/tpl/rspamd_wblist.inc.conf.master b/install/tpl/rspamd_wblist.inc.conf.master new file mode 100644 index 0000000000..fc06127eae --- /dev/null +++ b/install/tpl/rspamd_wblist.inc.conf.master @@ -0,0 +1,18 @@ +spamfilter_wblist-<tmpl_var name='record_id'> { + priority = <tmpl_var name='priority'>; + from = "<tmpl_var name='from'>"; + rcpt = "<tmpl_var name='recipient'>"; +<tmpl_if name='wblist' op='==' value='W'> + want_spam = yes; +</tmpl_else> + apply "default" { + R_DUMMY = 999.0; + actions { + reject = 0.2; + add_header = 0.1; + greylist = 0.1; + rewrite_subject = 0.1; + } + } +</tmpl_if> +} \ No newline at end of file diff --git a/install/tpl/rspamd_worker-controller.inc.master b/install/tpl/rspamd_worker-controller.inc.master new file mode 120000 index 0000000000..dae1932369 --- /dev/null +++ b/install/tpl/rspamd_worker-controller.inc.master @@ -0,0 +1 @@ +../../server/conf/rspamd_worker-controller.inc.master \ No newline at end of file diff --git a/install/tpl/server.ini.master b/install/tpl/server.ini.master index 6441609cab..36f157d8e6 100644 --- a/install/tpl/server.ini.master +++ b/install/tpl/server.ini.master @@ -38,6 +38,8 @@ homedir_path=/var/vmail maildir_format=maildir dkim_path=/var/lib/amavis/dkim dkim_strength=1024 +content_filter=amavis +rspamd_password= pop3_imap_daemon=courier mail_filter_syntax=maildrop mailuser_uid=5000 diff --git a/install/update.php b/install/update.php index 104aab57ff..42ddd625f5 100644 --- a/install/update.php +++ b/install/update.php @@ -397,6 +397,12 @@ if($reconfigure_services_answer == 'yes' || $reconfigure_services_answer == 'sel $inst->configure_amavis(); } + //** Configure Rspamd + if($conf['rspamd']['installed'] == true && $inst->reconfigure_app('Rspamd', $reconfigure_services_answer)) { + swriteln('Configuring Rspamd'); + $inst->configure_rspamd(); + } + //** Configure Getmail if ($inst->reconfigure_app('Getmail', $reconfigure_services_answer)) { swriteln('Configuring Getmail'); @@ -532,6 +538,7 @@ if($reconfigure_services_answer == 'yes') { if($conf['postfix']['installed'] == true && $conf['postfix']['init_script'] != '') system($inst->getinitcommand($conf['postfix']['init_script'], 'restart')); if($conf['saslauthd']['installed'] == true && $conf['saslauthd']['init_script'] != '') system($inst->getinitcommand($conf['saslauthd']['init_script'], 'restart')); if($conf['amavis']['installed'] == true && $conf['amavis']['init_script'] != '') system($inst->getinitcommand($conf['amavis']['init_script'], 'restart')); + if($conf['rspamd']['installed'] == true && $conf['rspamd']['init_script'] != '') system($inst->getinitcommand($conf['rspamd']['init_script'], 'restart')); if($conf['clamav']['installed'] == true && $conf['clamav']['init_script'] != '') system($inst->getinitcommand($conf['clamav']['init_script'], 'restart')); if($conf['courier']['installed'] == true){ if($conf['courier']['courier-authdaemon'] != '') system($inst->getinitcommand($conf['courier']['courier-authdaemon'], 'restart')); diff --git a/interface/lib/lang/de.lng b/interface/lib/lang/de.lng index 6f2e2d00ba..bc217c30b0 100644 --- a/interface/lib/lang/de.lng +++ b/interface/lib/lang/de.lng @@ -158,4 +158,5 @@ $wb['security_check1_txt'] = 'Sicherheitsüberprüfung für:'; $wb['security_check2_txt'] = 'fehlgeschlagen.'; $wb['select_directive_snippet_txt'] = 'Direktiven Schnipsel'; $wb['select_master_directive_snippet_txt'] = 'Master Direktiven Schnipsel'; -?> +$wb['add_header_txt'] = 'Header (fügt "X-Spam: Yes" hinzu)'; +$wb['rewrite_subject_txt'] = 'Betreff (fügt "***SPAM***" am Anfang hinzu)'; diff --git a/interface/web/admin/form/server_config.tform.php b/interface/web/admin/form/server_config.tform.php index 1a6c8070cb..1c19d0928b 100644 --- a/interface/web/admin/form/server_config.tform.php +++ b/interface/web/admin/form/server_config.tform.php @@ -466,6 +466,29 @@ $form["tabs"]['mail'] = array( 'width' => '40', 'maxlength' => '255' ), + 'content_filter' => array( + 'datatype' => 'VARCHAR', + 'formtype' => 'SELECT', + 'default' => 'rspamd', + 'value' => array('amavisd' => 'Amavisd', 'rspamd' => 'Rspamd') + ), + 'rspamd_password' => array( + 'datatype' => 'VARCHAR', + 'formtype' => 'TEXT', + 'default' => '', + 'value' => '', + 'width' => '40', + 'maxlength' => '255', + 'filters' => array( 0 => array( 'event' => 'SAVE', + 'type' => 'TRIM'), + ), + ), + 'rspamd_available' => array( + 'datatype' => 'VARCHAR', + 'formtype' => 'CHECKBOX', + 'default' => 'n', + 'value' => array(0 => 'n', 1 => 'y') + ), 'dkim_path' => array( 'datatype' => 'VARCHAR', 'formtype' => 'TEXT', @@ -1953,4 +1976,10 @@ $form["tabs"]['rescue'] = array( //################################# ) ); -?> + +/*$mail_config = $app->getconf->get_server_config($conf['server_id'], 'mail'); +if(!isset($mail_config['rspamd_available']) || $mail_config['rspamd_available'] != 'y') { + $form['tabs']['mail']['fields']['content_filter']['default'] = 'amavisd'; + unset($form['tabs']['mail']['fields']['content_filter']['value']['rspamd']); + unset($form['tabs']['mail']['fields']['rspamd_password']); +}*/ \ No newline at end of file diff --git a/interface/web/admin/form/server_config.tform.php.orig b/interface/web/admin/form/server_config.tform.php.orig new file mode 100644 index 0000000000..1a6c8070cb --- /dev/null +++ b/interface/web/admin/form/server_config.tform.php.orig @@ -0,0 +1,1956 @@ +<?php + +/* + Form Definition + + Tabledefinition + + Datatypes: + - INTEGER (Forces the input to Int) + - DOUBLE + - CURRENCY (Formats the values to currency notation) + - VARCHAR (no format check, maxlength: 255) + - TEXT (no format check) + - DATE (Dateformat, automatic conversion to timestamps) + + Formtype: + - TEXT (Textfield) + - TEXTAREA (Textarea) + - PASSWORD (Password textfield, input is not shown when edited) + - SELECT (Select option field) + - RADIO + - CHECKBOX + - CHECKBOXARRAY + - FILE + + VALUE: + - Wert oder Array + + Hint: + The ID field of the database table is not part of the datafield definition. + The ID field must be always auto incement (int or bigint). + + + */ + +$form["title"] = "Server Config"; +$form["description"] = ""; +$form["name"] = "server_config"; +$form["action"] = "server_config_edit.php"; +$form["db_table"] = "server"; +$form["db_table_idx"] = "server_id"; +$form["db_history"] = "yes"; +$form["tab_default"] = "server"; +$form["list_default"] = "server_config_list.php"; +$form["auth"] = 'yes'; // yes / no + +$form["auth_preset"]["userid"] = 0; // 0 = id of the user, > 0 id must match with id of current user +$form["auth_preset"]["groupid"] = 0; // 0 = default groupid of the user, > 0 id must match with groupid of current user +$form["auth_preset"]["perm_user"] = 'riud'; //r = read, i = insert, u = update, d = delete +$form["auth_preset"]["perm_group"] = 'riud'; //r = read, i = insert, u = update, d = delete +$form["auth_preset"]["perm_other"] = ''; //r = read, i = insert, u = update, d = delete + +$form["tabs"]['server'] = array( + 'title' => "Server", + 'width' => 70, + 'template' => "templates/server_config_server_edit.htm", + 'fields' => array( + //################################# + // Begin Datatable fields + //################################# + 'auto_network_configuration' => array( + 'datatype' => 'VARCHAR', + 'formtype' => 'CHECKBOX', + 'default' => 'n', + 'value' => array(0 => 'n', 1 => 'y') + ), + 'ip_address' => array( + 'datatype' => 'VARCHAR', + 'formtype' => 'TEXT', + 'default' => '192.168.0.105', + 'validators' => array(0 => array('type' => 'ISIPV4', + 'errmsg' => 'ip_address_error_wrong'), + ), + 'value' => '', + 'width' => '15', + 'maxlength' => '255' + ), + 'netmask' => array( + 'datatype' => 'VARCHAR', + 'formtype' => 'TEXT', + 'default' => '255.255.255.0', + 'validators' => array(0 => array('type' => 'ISIPV4', + 'errmsg' => 'netmask_error_wrong'), + ), + 'value' => '', + 'width' => '15', + 'maxlength' => '255' + ), + 'v6_prefix' => array( + 'datatype' => 'VARCHAR', + 'formtype' => 'TEXT', + 'validators' => array( 0 => array('type' => 'ISV6PREFIX', + 'errmsg' => 'v6_prefix_wrong'), + 1 => array('type' => 'V6PREFIXEND', + 'errmsg' => 'v6_prefix_end'), + 2 => array('type' => 'V6PREFIXLENGTH', + 'errmsg' => 'v6_prefix_length') + ), + 'default' => '' + ), + 'gateway' => array( + 'datatype' => 'VARCHAR', + 'formtype' => 'TEXT', + 'default' => '192.168.0.1', + 'validators' => array(0 => array('type' => 'ISIPV4', + 'errmsg' => 'gateway_error_wrong'), + ), + 'value' => '', + 'width' => '15', + 'maxlength' => '255' + ), + 'firewall' => array( + 'datatype' => 'VARCHAR', + 'formtype' => 'SELECT', + 'default' => 'bastille', + 'value' => array('bastille' => 'bastille', 'ufw' => 'ufw'), + 'width' => '40', + 'maxlength' => '255' + ), + 'hostname' => array( + 'datatype' => 'VARCHAR', + 'formtype' => 'TEXT', + 'default' => 'server1.domain.tld', + 'filters' => array( 0 => array( 'event' => 'SAVE', + 'type' => 'IDNTOASCII'), + 1 => array( 'event' => 'SHOW', + 'type' => 'IDNTOUTF8'), + 2 => array( 'event' => 'SAVE', + 'type' => 'TOLOWER') + ), + 'validators' => array( 0 => array('type' => 'NOTEMPTY', + 'errmsg' => 'hostname_error_empty'), + 1 => array ('type' => 'REGEX', + 'regex' => '/^[\w\.\-]{2,255}\.[a-zA-Z0-9\-]{2,30}$/', + 'errmsg'=> 'hostname_error_regex'), + ), + 'value' => '', + 'width' => '40', + 'maxlength' => '255' + ), + 'nameservers' => array( + 'datatype' => 'VARCHAR', + 'formtype' => 'TEXT', + 'default' => '192.168.0.1,192.168.0.2', + 'validators' => array(0 => array('type' => 'NOTEMPTY', + 'errmsg' => 'nameservers_error_empty'), + ), + 'filters' => array( + 0 => array( 'event' => 'SAVE', + 'type' => 'STRIPTAGS'), + 1 => array( 'event' => 'SAVE', + 'type' => 'STRIPNL') + ), + 'value' => '', + 'width' => '40', + 'maxlength' => '255' + ), + 'loglevel' => array( + 'datatype' => 'INTEGER', + 'formtype' => 'SELECT', + 'default' => '2', + 'value' => array('0' => 'Debug', '1' => 'Warnings', '2' => 'Errors'), + 'width' => '40', + 'maxlength' => '255' + ), + 'admin_notify_events' => array( + 'datatype' => 'INTEGER', + 'formtype' => 'SELECT', + 'default' => '1', + 'value' => array('3' => 'no_notifications_txt', '0' => 'Debug', '1' => 'Warnings', '2' => 'Errors'), + 'width' => '40', + 'maxlength' => '255' + ), + 'backup_dir' => array( + 'datatype' => 'VARCHAR', + 'formtype' => 'TEXT', + 'default' => '/var/backup', + 'validators' => array( 0 => array ( 'type' => 'REGEX', + 'regex' => "/(|^\\/{1,2}(?:[\\w-]+[.]?\\/?){5,128})$/", + 'errmsg'=> 'backup_dir_error_regex'), + ), + 'value' => '', + 'width' => '40', + 'maxlength' => '255' + ), + 'backup_tmp' => array( + 'datatype' => 'VARCHAR', + 'formtype' => 'TEXT', + 'default' => '/tmp/', + 'validators' => array( 0 => array('type' => 'NOTEMPTY', + 'errmsg' => 'tmpdir_path_error_empty'), + 1 => array ( 'type' => 'REGEX', + 'regex' => "/^\/[a-zA-Z0-9\.\-\_\/]{3,128}$/", + 'errmsg'=> 'tmpdir_path_error_regex'), + ), + 'value' => '', + 'width' => '40', + 'maxlength' => '255' + ), + 'backup_dir_is_mount' => array( + 'datatype' => 'VARCHAR', + 'formtype' => 'CHECKBOX', + 'default' => 'y', + 'value' => array(0 => 'n', 1 => 'y') + ), + 'backup_mode' => array( + 'datatype' => 'VARCHAR', + 'formtype' => 'SELECT', + 'default' => 'userzip', + 'value' => array('userzip' => 'backup_mode_userzip', 'rootgz' => 'backup_mode_rootgz'), + 'width' => '40', + 'maxlength' => '255' + ), + 'backup_time' => array( + 'datatype' => 'VARCHAR', + 'formtype' => 'SELECT', + 'default' => '0:00', + 'value' => array( '0:00' => '0:00h', + '0:15' => '0:15h', + '0:30' => '0:30h', + '0:45' => '0:45h', + '1:00' => '1:00h', + '1:15' => '1:15h', + '1:30' => '1:30h', + '1:45' => '1:45h', + '2:00' => '2:00h', + '2:15' => '2:15h', + '2:30' => '2:30h', + '2:45' => '2:45h', + '3:00' => '3:00h', + '3:15' => '3:15h', + '3:30' => '3:30h', + '3:45' => '3:45h', + '4:00' => '4:00h', + '4:15' => '4:15h', + '4:30' => '4:30h', + '4:45' => '4:45h', + '5:00' => '5:00h', + '5:15' => '5:15h', + '5:30' => '5:30h', + '5:45' => '5:45h', + '6:00' => '6:00h', + '6:15' => '6:15h', + '6:30' => '6:30h', + '6:45' => '6:45h', + '7:00' => '7:00h', + '7:15' => '7:15h', + '7:30' => '7:30h', + '7:45' => '7:45h', + '8:00' => '8:00h', + '8:15' => '8:15h', + '8:30' => '8:30h', + '8:45' => '8:45h', + '9:00' => '9:00h', + '9:15' => '9:15h', + '9:30' => '9:30h', + '9:45' => '9:45h', + '10:00' => '10:00h', + '10:15' => '10:15h', + '10:30' => '10:30h', + '10:45' => '10:45h', + '11:00' => '11:00h', + '11:15' => '11:15h', + '11:30' => '11:30h', + '11:45' => '11:45h', + '12:00' => '12:00h', + '12:15' => '12:15h', + '12:30' => '12:30h', + '12:45' => '12:45h', + '13:00' => '13:00h', + '13:15' => '13:15h', + '13:30' => '13:30h', + '13:45' => '13:45h', + '14:00' => '14:00h', + '14:15' => '14:15h', + '14:30' => '14:30h', + '14:45' => '14:45h', + '15:00' => '15:00h', + '15:15' => '15:15h', + '15:30' => '15:30h', + '15:45' => '15:45h', + '16:00' => '16:00h', + '16:15' => '16:15h', + '16:30' => '16:30h', + '16:45' => '16:45h', + '17:00' => '17:00h', + '17:15' => '17:15h', + '17:30' => '17:30h', + '17:45' => '17:45h', + '18:00' => '18:00h', + '18:15' => '18:15h', + '18:30' => '18:30h', + '18:45' => '18:45h', + '19:00' => '19:00h', + '19:15' => '19:15h', + '19:30' => '19:30h', + '19:45' => '19:45h', + '20:00' => '20:00h', + '20:15' => '20:15h', + '20:30' => '20:30h', + '20:45' => '20:45h', + '21:00' => '21:00h', + '21:15' => '21:15h', + '21:30' => '21:30h', + '21:45' => '21:45h', + '22:00' => '22:00h', + '22:15' => '22:15h', + '22:30' => '22:30h', + '22:45' => '22:45h', + '23:00' => '23:00h', + '23:15' => '23:15h', + '23:30' => '23:30h', + '23:45' => '23:45h', + ), + 'width' => '40', + 'maxlength' => '255' + ), + 'backup_delete' => array( + 'datatype' => 'VARCHAR', + 'formtype' => 'CHECKBOX', + 'default' => 'y', + 'value' => array(0 => 'n', 1 => 'y') + ), + 'monit_url' => array( + 'datatype' => 'VARCHAR', + 'formtype' => 'TEXT', + 'default' => '', + 'validators' => array ( 0 => array ( 'type' => 'REGEX', + 'regex' => '/^[0-9a-zA-Z\:\/\-\.\[\]]{0,255}$/', + 'errmsg'=> 'monit_url_error_regex'), + ), + 'value' => '', + 'width' => '40', + 'maxlength' => '255' + ), + 'monit_user' => array( + 'datatype' => 'VARCHAR', + 'formtype' => 'TEXT', + 'filters' => array( + 0 => array( 'event' => 'SAVE', + 'type' => 'STRIPTAGS'), + 1 => array( 'event' => 'SAVE', + 'type' => 'STRIPNL') + ), + 'default' => '', + 'value' => '', + 'width' => '40', + 'maxlength' => '255' + ), + 'monit_password' => array( + 'datatype' => 'VARCHAR', + 'formtype' => 'TEXT', + 'default' => '', + 'value' => '', + 'width' => '40', + 'maxlength' => '255' + ), + 'munin_url' => array( + 'datatype' => 'VARCHAR', + 'formtype' => 'TEXT', + 'default' => '', + 'validators' => array ( 0 => array ( 'type' => 'REGEX', + 'regex' => '/^[0-9a-zA-Z\:\/\-\.\[\]]{0,255}$/', + 'errmsg'=> 'munin_url_error_regex'), + ), + 'value' => '', + 'width' => '40', + 'maxlength' => '255' + ), + 'munin_user' => array( + 'datatype' => 'VARCHAR', + 'formtype' => 'TEXT', + 'filters' => array( + 0 => array( 'event' => 'SAVE', + 'type' => 'STRIPTAGS'), + 1 => array( 'event' => 'SAVE', + 'type' => 'STRIPNL') + ), + 'default' => '', + 'value' => '', + 'width' => '40', + 'maxlength' => '255' + ), + 'munin_password' => array( + 'datatype' => 'VARCHAR', + 'formtype' => 'TEXT', + 'default' => '', + 'value' => '', + 'width' => '40', + 'maxlength' => '255' + ), + 'monitor_system_updates' => array( + 'datatype' => 'VARCHAR', + 'formtype' => 'CHECKBOX', + 'default' => 'y', + 'value' => array(0 => 'n', 1 => 'y') + ), + 'log_retention' => array ( + 'datatype' => 'INTEGER', + 'formtype' => 'TEXT', + 'validators' => array ( 0 => array ( 'type' => 'ISPOSITIVE', + 'errmsg'=> 'log_retention_error_ispositive'), + ), + 'default' => '30', + 'value' => '', + 'width' => '4', + 'maxlength' => '4' + ), + 'migration_mode' => array( + 'datatype' => 'VARCHAR', + 'formtype' => 'CHECKBOX', + 'default' => 'n', + 'value' => array(0 => 'n', 1 => 'y') + ), + //################################# + // ENDE Datatable fields + //################################# + ) +); + +$form["tabs"]['mail'] = array( + 'title' => "Mail", + 'width' => 60, + 'template' => "templates/server_config_mail_edit.htm", + 'fields' => array( + //################################# + // Begin Datatable fields + //################################# + 'module' => array( + 'datatype' => 'VARCHAR', + 'formtype' => 'SELECT', + 'default' => '', + 'value' => array('postfix_mysql' => 'postfix_mysql') + ), + 'maildir_path' => array( + 'datatype' => 'VARCHAR', + 'formtype' => 'TEXT', + 'default' => '/home/vmail/[domain]/[localpart]/', + 'validators' => array( 0 => array('type' => 'NOTEMPTY', + 'errmsg' => 'maildir_path_error_empty'), + 1 => array ( 'type' => 'REGEX', + 'regex' => '/^\/[a-zA-Z0-9\.\-\_\/\[\]]{5,128}$/', + 'errmsg'=> 'maildir_path_error_regex'), + ), + 'value' => '', + 'width' => '40', + 'maxlength' => '255' + ), + 'maildir_format' => array( + 'datatype' => 'VARCHAR', + 'formtype' => 'SELECT', + 'default' => '20', + 'value' => array('maildir' => 'Maildir', 'mdbox' => 'mdbox') + ), + 'homedir_path' => array( + 'datatype' => 'VARCHAR', + 'formtype' => 'TEXT', + 'default' => '/home/vmail/', + 'validators' => array( 0 => array('type' => 'NOTEMPTY', + 'errmsg' => 'homedir_path_error_empty'), + 1 => array ( 'type' => 'REGEX', + 'regex' => '/^\/[a-zA-Z0-9\.\-\_\/]{5,128}$/', + 'errmsg'=> 'homedir_path_error_regex'), + ), + 'value' => '', + 'width' => '40', + 'maxlength' => '255' + ), + 'dkim_path' => array( + 'datatype' => 'VARCHAR', + 'formtype' => 'TEXT', + 'filters' => array( + 0 => array( 'event' => 'SAVE', + 'type' => 'STRIPTAGS'), + 1 => array( 'event' => 'SAVE', + 'type' => 'STRIPNL') + ), + 'default' => '/var/lib/amavis/dkim', + 'value' => '', + 'width' => '40', + 'maxlength' => '255' + ), + 'dkim_strength' => array( + 'datatype' => 'INTEGER', + 'formtype' => 'SELECT', + 'default' => '2048', + 'value' => array('1024' => 'weak (1024)', '2048' => 'normal (2048)', '4096' => 'strong (4096)') + ), + 'relayhost_password' => array( + 'datatype' => 'VARCHAR', + 'formtype' => 'TEXT', + 'default' => '', + 'value' => '', + 'width' => '40', + 'maxlength' => '255' + ), + + 'pop3_imap_daemon' => array( + 'datatype' => 'VARCHAR', + 'formtype' => 'SELECT', + 'default' => '20', + 'value' => array('courier' => 'Courier', 'dovecot' => 'Dovecot') + ), + 'mail_filter_syntax' => array( + 'datatype' => 'VARCHAR', + 'formtype' => 'SELECT', + 'default' => '20', + 'value' => array('maildrop' => 'Maildrop', 'sieve' => 'Sieve') + ), + 'mailuser_uid' => array( + 'datatype' => 'INTEGER', + 'formtype' => 'TEXT', + 'default' => '5000', + 'validators' => array( 0 => array('type' => 'NOTEMPTY', + 'errmsg' => 'mailuser_uid_error_empty'), + 1 => array('type' => 'RANGE', + 'range' => '1999:', + 'errmsg' => 'mailuser_uid_error_range'), + ), + 'value' => '', + 'width' => '10', + 'maxlength' => '255' + ), + 'mailuser_gid' => array( + 'datatype' => 'INTEGER', + 'formtype' => 'TEXT', + 'default' => '5000', + 'validators' => array( 0 => array('type' => 'NOTEMPTY', + 'errmsg' => 'mailuser_gid_error_empty'), + 1 => array('type' => 'RANGE', + 'range' => '1999:', + 'errmsg' => 'mailuser_gid_error_range'), + ), + 'value' => '', + 'width' => '10', + 'maxlength' => '255' + ), + 'mailuser_name' => array( + 'datatype' => 'VARCHAR', + 'formtype' => 'TEXT', + 'default' => 'vmail', + 'validators' => array( 0 => array('type' => 'NOTEMPTY', + 'errmsg' => 'mailuser_name_error_empty'), + 1 => array ( 'type' => 'REGEX', + 'regex' => '/^(?!ispconfig|root)([a-zA-Z0-9]{1,20})$/', + 'errmsg'=> 'mailuser_name_error_regex'), + ), + 'value' => '', + 'width' => '10', + 'maxlength' => '255' + ), + 'mailuser_group' => array( + 'datatype' => 'VARCHAR', + 'formtype' => 'TEXT', + 'default' => 'vmail', + 'validators' => array( 0 => array('type' => 'NOTEMPTY', + 'errmsg' => 'mailuser_group_error_empty'), + 1 => array ( 'type' => 'REGEX', + 'regex' => '/^(?!ispconfig|root)([a-zA-Z0-9]{1,20})$/', + 'errmsg'=> 'mailuser_group_name_error_regex'), + ), + 'value' => '', + 'width' => '10', + 'maxlength' => '255' + ), + 'mailbox_virtual_uidgid_maps' => array( + 'datatype' => 'VARCHAR', + 'formtype' => 'CHECKBOX', + 'validators' => array (0 => array ( 'type' => 'CUSTOM', + 'class' => 'validate_server_mail_config', + 'function' => 'mailbox_virtual_uidgid_maps'), + ), + 'default' => 'n', + 'value' => array(0 => 'n', 1 => 'y') + ), + 'relayhost' => array( + 'datatype' => 'VARCHAR', + 'formtype' => 'TEXT', + 'filters' => array( + 0 => array( 'event' => 'SAVE', + 'type' => 'STRIPTAGS'), + 1 => array( 'event' => 'SAVE', + 'type' => 'STRIPNL') + ), + 'default' => '', + 'value' => '', + 'width' => '40', + 'maxlength' => '255' + ), + 'relayhost_user' => array( + 'datatype' => 'VARCHAR', + 'formtype' => 'TEXT', + 'filters' => array( + 0 => array( 'event' => 'SAVE', + 'type' => 'STRIPTAGS'), + 1 => array( 'event' => 'SAVE', + 'type' => 'STRIPNL') + ), + 'default' => '', + 'value' => '', + 'width' => '40', + 'maxlength' => '255' + ), + 'relayhost_password' => array( + 'datatype' => 'VARCHAR', + 'formtype' => 'TEXT', + 'default' => '', + 'value' => '', + 'width' => '40', + 'maxlength' => '255' + ), + 'reject_sender_login_mismatch' => array ( + 'datatype' => 'VARCHAR', + 'formtype' => 'CHECKBOX', + 'default' => 'n', + 'value' => array(0 => 'n', 1 => 'y') + ), + 'mailbox_size_limit' => array( + 'datatype' => 'INTEGER', + 'formtype' => 'TEXT', + 'default' => '0', + 'value' => '', + 'width' => '10', + 'maxlength' => '15' + ), + 'message_size_limit' => array( + 'datatype' => 'INTEGER', + 'formtype' => 'TEXT', + 'default' => '0', + 'value' => '', + 'width' => '10', + 'maxlength' => '15' + ), + 'mailbox_quota_stats' => array ( + 'datatype' => 'VARCHAR', + 'formtype' => 'CHECKBOX', + 'default' => 'y', + 'value' => array(0 => 'n', 1 => 'y') + ), + 'realtime_blackhole_list' => array( + 'datatype' => 'VARCHAR', + 'formtype' => 'TEXT', + 'default' => '', + 'validators' => array ( 0 => array ( 'type' => 'REGEX', + 'regex' => '/^((([a-zA-Z0-9]|[a-zA-Z0-9][a-zA-Z0-9\-]*[a-zA-Z0-9])\.)+([A-Za-z0-9]|[A-Za-z0-9][A-Za-z0-9\-]*[A-Za-z0-9])(,\s*(([a-zA-Z0-9]|[a-zA-Z0-9][a-zA-Z0-9\-]*[a-zA-Z0-9])\.)+([A-Za-z0-9]|[A-Za-z0-9][A-Za-z0-9\-]*[A-Za-z0-9]))*)?$/', + 'errmsg'=> 'rbl_error_regex'), + ), + 'value' => '', + 'width' => '40', + 'maxlength' => '255' + ), + 'overquota_notify_admin' => array( + 'datatype' => 'VARCHAR', + 'formtype' => 'CHECKBOX', + 'default' => 'y', + 'value' => array(0 => 'n', 1 => 'y') + ), + 'overquota_notify_client' => array( + 'datatype' => 'VARCHAR', + 'formtype' => 'CHECKBOX', + 'default' => 'y', + 'value' => array(0 => 'n', 1 => 'y') + ), + 'overquota_notify_freq' => array( + 'datatype' => 'INTEGER', + 'formtype' => 'TEXT', + 'default' => '7', + 'value' => '', + 'width' => '20', + 'maxlength' => '255' + ), + 'overquota_notify_onok' => array( + 'datatype' => 'VARCHAR', + 'formtype' => 'CHECKBOX', + 'default' => 'n', + 'value' => array(0 => 'n', 1 => 'y') + ), + //################################# + // ENDE Datatable fields + //################################# + ) +); + +$form["tabs"]['getmail'] = array( + 'title' => "Getmail", + 'width' => 80, + 'template' => "templates/server_config_getmail_edit.htm", + 'fields' => array( + //################################# + // Begin Datatable fields + //################################# + 'getmail_config_dir' => array( + 'datatype' => 'VARCHAR', + 'formtype' => 'TEXT', + 'default' => '', + 'validators' => array( 0 => array('type' => 'NOTEMPTY', + 'errmsg' => 'getmail_config_dir_error_empty'), + 1 => array ( 'type' => 'REGEX', + 'regex' => '/^\/[a-zA-Z0-9\.\-\_\/]{5,128}$/', + 'errmsg'=> 'getmail_config_dir_error_regex'), + ), + 'value' => '', + 'width' => '40', + 'maxlength' => '255' + ), + //################################# + // ENDE Datatable fields + //################################# + ) +); + +$form["tabs"]['web'] = array( + 'title' => "Web", + 'width' => 60, + 'template' => "templates/server_config_web_edit.htm", + 'fields' => array( + //################################# + // Begin Datatable fields + //################################# + 'server_type' => array( + 'datatype' => 'VARCHAR', + 'formtype' => 'SELECT', + 'default' => 'apache', + 'value' => array('apache' => 'Apache', 'nginx' => 'Nginx') + ), + 'website_basedir' => array( + 'datatype' => 'VARCHAR', + 'formtype' => 'TEXT', + 'default' => '', + 'validators' => array( 0 => array('type' => 'NOTEMPTY', + 'errmsg' => 'website_basedir_error_empty'), + 1 => array ( 'type' => 'REGEX', + 'regex' => '/^\/[a-zA-Z0-9\.\-\_\/]{5,128}$/', + 'errmsg'=> 'website_basedir_error_regex'), + ), + 'value' => '', + 'width' => '40', + 'maxlength' => '255' + ), + 'website_path' => array( + 'datatype' => 'VARCHAR', + 'formtype' => 'TEXT', + 'default' => '', + 'validators' => array( 0 => array( 'type' => 'NOTEMPTY', + 'errmsg' => 'website_path_error_empty'), + 1 => array ( 'type' => 'REGEX', + 'regex' => '/^\/[a-zA-Z0-9\.\-\_\/\[\]]{5,128}$/', + 'errmsg'=> 'website_path_error_regex'), + ), + 'value' => '', + 'width' => '40', + 'maxlength' => '255' + ), + 'website_symlinks' => array( + 'datatype' => 'VARCHAR', + 'formtype' => 'TEXT', + 'default' => '', + 'validators' => array( 0 => array('type' => 'NOTEMPTY', + 'errmsg' => 'website_symlinks_error_empty'), + 1 => array ( 'type' => 'REGEX', + 'regex' => '/^\/[a-zA-Z0-9\.\-\_\/\[\]\:]{5,128}$/', + 'errmsg'=> 'website_symlinks_error_regex'), + ), + 'value' => '', + 'width' => '40', + 'maxlength' => '255' + ), + 'website_symlinks_rel' => array ( + 'datatype' => 'VARCHAR', + 'formtype' => 'CHECKBOX', + 'default' => 'n', + 'value' => array(0 => 'n', 1 => 'y') + ), + 'network_filesystem' => array ( + 'datatype' => 'VARCHAR', + 'formtype' => 'CHECKBOX', + 'default' => 'n', + 'value' => array(0 => 'n', 1 => 'y') + ), + 'website_autoalias' => array( + 'datatype' => 'VARCHAR', + 'formtype' => 'TEXT', + 'filters' => array( + 0 => array( 'event' => 'SAVE', + 'type' => 'STRIPTAGS'), + 1 => array( 'event' => 'SAVE', + 'type' => 'STRIPNL') + ), + 'default' => '', + 'value' => '', + 'width' => '40', + 'maxlength' => '255' + ), + 'vhost_rewrite_v6' => array ( + 'datatype' => 'VARCHAR', + 'formtype' => 'CHECKBOX', + 'default' => 'n', + 'value' => array(0 => 'n',1 => 'y') + ), + 'vhost_conf_dir' => array( + 'datatype' => 'VARCHAR', + 'formtype' => 'TEXT', + 'default' => '', + 'validators' => array( 0 => array('type' => 'NOTEMPTY', + 'errmsg' => 'vhost_conf_dir_error_empty'), + 1 => array ( 'type' => 'REGEX', + 'regex' => '/^\/[a-zA-Z0-9\.\-\_\/]{5,128}$/', + 'errmsg'=> 'vhost_conf_dir_error_regex'), + ), + 'value' => '', + 'width' => '40', + 'maxlength' => '255' + ), + 'vhost_conf_enabled_dir' => array( + 'datatype' => 'VARCHAR', + 'formtype' => 'TEXT', + 'default' => '', + 'validators' => array( 0 => array('type' => 'NOTEMPTY', + 'errmsg' => 'vhost_conf_enabled_dir_error_empty'), + 1 => array ( 'type' => 'REGEX', + 'regex' => '/^\/[a-zA-Z0-9\.\-\_\/]{5,128}$/', + 'errmsg'=> 'vhost_conf_enabled_dir_error_regex'), + ), + 'value' => '', + 'width' => '40', + 'maxlength' => '255' + ), + 'nginx_enable_pagespeed' => array ( + 'datatype' => 'VARCHAR', + 'formtype' => 'CHECKBOX', + 'default' => 'n', + 'value' => array(0 => 'n',1 => 'y') + ), + 'nginx_vhost_conf_dir' => array( + 'datatype' => 'VARCHAR', + 'formtype' => 'TEXT', + 'default' => '', + 'validators' => array( 0 => array('type' => 'NOTEMPTY', + 'errmsg' => 'nginx_vhost_conf_dir_error_empty'), + 1 => array ( 'type' => 'REGEX', + 'regex' => '/^\/[a-zA-Z0-9\.\-\_\/]{5,128}$/', + 'errmsg'=> 'nginx_vhost_conf_dir_error_regex'), + ), + 'value' => '', + 'width' => '40', + 'maxlength' => '255' + ), + 'nginx_vhost_conf_enabled_dir' => array( + 'datatype' => 'VARCHAR', + 'formtype' => 'TEXT', + 'default' => '', + 'validators' => array( 0 => array('type' => 'NOTEMPTY', + 'errmsg' => 'nginx_vhost_conf_enabled_dir_error_empty'), + 1 => array ( 'type' => 'REGEX', + 'regex' => '/^\/[a-zA-Z0-9\.\-\_\/]{5,128}$/', + 'errmsg'=> 'nginx_vhost_conf_enabled_dir_error_regex'), + ), + 'value' => '', + 'width' => '40', + 'maxlength' => '255' + ), + 'CA_path' => array( + 'datatype' => 'VARCHAR', + 'formtype' => 'TEXT', + 'validators' => array( 0 => array ( 'type' => 'REGEX', + 'regex' => '/^[a-zA-Z0-9\.\-\_\/]{0,128}$/', + 'errmsg'=> 'ca_path_error_regex'), + ), + 'default' => '', + 'value' => '', + 'width' => '40', + 'maxlength' => '255' + ), + 'CA_pass' => array( + 'datatype' => 'VARCHAR', + 'formtype' => 'TEXT', + 'default' => '', + 'value' => '', + 'width' => '40', + 'maxlength' => '255' + ), + 'security_level' => array( + 'datatype' => 'VARCHAR', + 'formtype' => 'SELECT', + 'default' => '20', + 'value' => array('10' => 'Medium', '20' => 'High') + ), + 'set_folder_permissions_on_update' => array( + 'datatype' => 'VARCHAR', + 'formtype' => 'CHECKBOX', + 'default' => 'n', + 'value' => array(0 => 'n', 1 => 'y') + ), + 'web_folder_protection' => array( + 'datatype' => 'VARCHAR', + 'formtype' => 'CHECKBOX', + 'default' => 'y', + 'value' => array(0 => 'n', 1 => 'y') + ), + 'add_web_users_to_sshusers_group' => array( + 'datatype' => 'VARCHAR', + 'formtype' => 'CHECKBOX', + 'default' => 'y', + 'value' => array(0 => 'n', 1 => 'y') + ), + 'check_apache_config' => array( + 'datatype' => 'VARCHAR', + 'formtype' => 'CHECKBOX', + 'default' => 'y', + 'value' => array(0 => 'n', 1 => 'y') + ), + 'enable_sni' => array( + 'datatype' => 'VARCHAR', + 'formtype' => 'CHECKBOX', + 'default' => 'y', + 'value' => array(0 => 'n', 1 => 'y') + ), + 'enable_ip_wildcard' => array( + 'datatype' => 'VARCHAR', + 'formtype' => 'CHECKBOX', + 'default' => 'y', + 'value' => array(0 => 'n', 1 => 'y') + ), + 'logging' => array( + 'datatype' => 'VARCHAR', + 'formtype' => 'SELECT', + 'default' => 'yes', + 'value' => array('yes' => 'Yes', 'anon' => 'Anonymize IP', 'no' => 'No') + ), + 'overtraffic_notify_admin' => array( + 'datatype' => 'VARCHAR', + 'formtype' => 'CHECKBOX', + 'default' => 'y', + 'value' => array(0 => 'n', 1 => 'y') + ), + 'overtraffic_notify_client' => array( + 'datatype' => 'VARCHAR', + 'formtype' => 'CHECKBOX', + 'default' => 'y', + 'value' => array(0 => 'n', 1 => 'y') + ), + 'overquota_notify_admin' => array( + 'datatype' => 'VARCHAR', + 'formtype' => 'CHECKBOX', + 'default' => 'y', + 'value' => array(0 => 'n', 1 => 'y') + ), + 'overquota_notify_client' => array( + 'datatype' => 'VARCHAR', + 'formtype' => 'CHECKBOX', + 'default' => 'y', + 'value' => array(0 => 'n', 1 => 'y') + ), + 'overquota_db_notify_admin' => array( + 'datatype' => 'VARCHAR', + 'formtype' => 'CHECKBOX', + 'default' => 'y', + 'value' => array(0 => 'n', 1 => 'y') + ), + 'overquota_db_notify_client' => array( + 'datatype' => 'VARCHAR', + 'formtype' => 'CHECKBOX', + 'default' => 'y', + 'value' => array(0 => 'n', 1 => 'y') + ), + 'overquota_notify_freq' => array( + 'datatype' => 'INTEGER', + 'formtype' => 'TEXT', + 'default' => '7', + 'value' => '', + 'width' => '20', + 'maxlength' => '255' + ), + 'overquota_notify_onok' => array( + 'datatype' => 'VARCHAR', + 'formtype' => 'CHECKBOX', + 'default' => 'n', + 'value' => array(0 => 'n', 1 => 'y') + ), + 'user' => array( + 'datatype' => 'VARCHAR', + 'formtype' => 'TEXT', + 'default' => '', + 'validators' => array(0 => array('type' => 'NOTEMPTY', + 'errmsg' => 'apache_user_error_empty'), + 1 => array( + 'type' => 'CUSTOM', + 'class' => 'validate_systemuser', + 'function' => 'check_sysuser', + 'check_names' => false, + 'errmsg' => 'invalid_apache_user_txt' + ), + ), + 'value' => '', + 'width' => '40', + 'maxlength' => '255' + ), + 'group' => array( + 'datatype' => 'VARCHAR', + 'formtype' => 'TEXT', + 'default' => '', + 'validators' => array(0 => array('type' => 'NOTEMPTY', + 'errmsg' => 'apache_group_error_empty'), + 1 => array( + 'type' => 'CUSTOM', + 'class' => 'validate_systemuser', + 'function' => 'check_sysgroup', + 'check_names' => false, + 'errmsg' => 'invalid_apache_group_txt' + ), + ), + 'value' => '', + 'width' => '40', + 'maxlength' => '255' + ), + 'connect_userid_to_webid' => array( + 'datatype' => 'VARCHAR', + 'formtype' => 'CHECKBOX', + 'default' => 'n', + 'value' => array(0 => 'n', 1 => 'y') + ), + 'connect_userid_to_webid_start' => array( + 'datatype' => 'VARCHAR', + 'formtype' => 'TEXT', + 'default' => '10000', + 'validators' => array(0 => array('type' => 'ISINT', + 'errmsg' => 'connect_userid_to_webid_startid_isint'), + ), + 'value' => '', + 'width' => '40', + 'maxlength' => '255' + ), + 'nginx_user' => array( + 'datatype' => 'VARCHAR', + 'formtype' => 'TEXT', + 'default' => '', + 'validators' => array( 0 => array('type' => 'NOTEMPTY', + 'errmsg' => 'nginx_user_error_empty'), + 1 => array( + 'type' => 'CUSTOM', + 'class' => 'validate_systemuser', + 'function' => 'check_sysuser', + 'check_names' => false, + 'errmsg' => 'invalid_nginx_user_txt' + ), + ), + 'value' => '', + 'width' => '40', + 'maxlength' => '255' + ), + 'nginx_group' => array( + 'datatype' => 'VARCHAR', + 'formtype' => 'TEXT', + 'default' => '', + 'validators' => array( 0 => array('type' => 'NOTEMPTY', + 'errmsg' => 'nginx_group_error_empty'), + 1 => array( + 'type' => 'CUSTOM', + 'class' => 'validate_systemuser', + 'function' => 'check_sysgroup', + 'check_names' => false, + 'errmsg' => 'invalid_nginx_group_txt' + ), + ), + 'value' => '', + 'width' => '40', + 'maxlength' => '255' + ), + 'php_ini_path_apache' => array( + 'datatype' => 'VARCHAR', + 'formtype' => 'TEXT', + 'default' => '', + 'validators' => array( 0 => array('type' => 'NOTEMPTY', + 'errmsg' => 'php_ini_path_apache_error_empty'), + 1 => array ( 'type' => 'REGEX', + 'regex' => '/^\/[a-zA-Z0-9\.\-\_\/]{5,128}$/', + 'errmsg'=> 'php_ini_path_apache_error_regex'), + ), + 'value' => '', + 'width' => '40', + 'maxlength' => '255' + ), + 'php_ini_path_cgi' => array( + 'datatype' => 'VARCHAR', + 'formtype' => 'TEXT', + 'default' => '', + 'validators' => array( 0 => array('type' => 'NOTEMPTY', + 'errmsg' => 'php_ini_path_cgi_error_empty'), + 1 => array ( 'type' => 'REGEX', + 'regex' => '/^\/[a-zA-Z0-9\.\-\_\/]{5,128}$/', + 'errmsg'=> 'php_ini_path_cgi_error_regex'), + ), + 'value' => '', + 'width' => '40', + 'maxlength' => '255' + ), + 'php_default_name' => array( + 'datatype' => 'VARCHAR', + 'formtype' => 'TEXT', + 'default' => 'Default', + 'validators' => array( 0 => array('type' => 'NOTEMPTY', + 'errmsg' => 'php_default_name_error_empty'), + ), + 'filters' => array( + 0 => array( 'event' => 'SAVE', + 'type' => 'TRIM'), + 1 => array( 'event' => 'SAVE', + 'type' => 'STRIPTAGS'), + 2 => array( 'event' => 'SAVE', + 'type' => 'STRIPNL') + ), + 'width' => '40', + 'maxlength' => '255' + ), + 'php_fpm_init_script' => array( + 'datatype' => 'VARCHAR', + 'formtype' => 'TEXT', + 'default' => '', + 'validators' => array( 0 => array('type' => 'NOTEMPTY', + 'errmsg' => 'php_fpm_init_script_error_empty'), + 1 => array ( 'type' => 'REGEX', + 'regex' => '/^[a-zA-Z0-9\.\-\_]{1,128}$/', + 'errmsg'=> 'php_fpm_init_script_error_regex'), + ), + 'value' => '', + 'width' => '40', + 'maxlength' => '255' + ), + 'php_fpm_ini_path' => array( + 'datatype' => 'VARCHAR', + 'formtype' => 'TEXT', + 'default' => '', + 'validators' => array( 0 => array('type' => 'NOTEMPTY', + 'errmsg' => 'php_fpm_ini_path_error_empty'), + 1 => array ( 'type' => 'REGEX', + 'regex' => '/^\/[a-zA-Z0-9\.\-\_\/]{5,128}$/', + 'errmsg'=> 'php_fpm_ini_path_error_regex'), + ), + 'value' => '', + 'width' => '40', + 'maxlength' => '255' + ), + 'php_fpm_pool_dir' => array( + 'datatype' => 'VARCHAR', + 'formtype' => 'TEXT', + 'default' => '', + 'validators' => array( 0 => array('type' => 'NOTEMPTY', + 'errmsg' => 'php_fpm_pool_dir_error_empty'), + 1 => array ( 'type' => 'REGEX', + 'regex' => '/^\/[a-zA-Z0-9\.\-\_\/]{5,128}$/', + 'errmsg'=> 'php_fpm_pool_dir_error_regex'), + ), + 'value' => '', + 'width' => '40', + 'maxlength' => '255' + ), + 'php_fpm_start_port' => array( + 'datatype' => 'VARCHAR', + 'formtype' => 'TEXT', + 'default' => '', + 'validators' => array(0 => array('type' => 'ISPOSITIVE', + 'errmsg' => 'php_fpm_start_port_error_empty'), + ), + 'value' => '', + 'width' => '40', + 'maxlength' => '255' + ), + 'php_fpm_socket_dir' => array( + 'datatype' => 'VARCHAR', + 'formtype' => 'TEXT', + 'default' => '', + 'validators' => array( 0 => array('type' => 'NOTEMPTY', + 'errmsg' => 'php_fpm_socket_dir_error_empty'), + 1 => array ( 'type' => 'REGEX', + 'regex' => '/^\/[a-zA-Z0-9\.\-\_\/]{5,128}$/', + 'errmsg'=> 'php_fpm_socket_dir_error_regex'), + ), + 'value' => '', + 'width' => '40', + 'maxlength' => '255' + ), + 'php_open_basedir' => array( + 'datatype' => 'VARCHAR', + 'formtype' => 'TEXT', + 'default' => '', + 'validators' => array( 0 => array('type' => 'NOTEMPTY', + 'errmsg' => 'php_open_basedir_error_empty'), + 1 => array ( 'type' => 'REGEX', + 'regex' => '/^[a-zA-Z0-9\.\-\_\/\]\[\:]{1,}$/', + 'errmsg'=> 'php_open_basedir_error_regex'), + ), + 'value' => '', + 'width' => '40', + 'maxlength' => '4000' + ), + 'php_ini_check_minutes' => array( + 'datatype' => 'INTEGER', + 'formtype' => 'TEXT', + 'default' => '1', + 'validators' => array(0 => array('type' => 'NOTEMPTY', + 'errmsg' => 'php_ini_check_minutes_error_empty'), + ), + 'value' => '', + 'width' => '10', + 'maxlength' => '255' + ), + 'php_handler' => array( + 'datatype' => 'VARCHAR', + 'formtype' => 'SELECT', + 'default' => 'fast-cgi', + 'value' => array('no' => 'disabled_txt', 'fast-cgi' => 'Fast-CGI', 'cgi' => 'CGI', 'mod' => 'Mod-PHP', 'suphp' => 'SuPHP', 'php-fpm' => 'PHP-FPM', 'hhvm' => 'HHVM'), + 'searchable' => 2 + ), + 'php_fpm_incron_reload' => array( + 'datatype' => 'VARCHAR', + 'formtype' => 'CHECKBOX', + 'default' => 'y', + 'value' => array(0 => 'n', 1 => 'y') + ), + 'nginx_cgi_socket' => array( + 'datatype' => 'VARCHAR', + 'formtype' => 'TEXT', + 'default' => '', + 'validators' => array( 0 => array('type' => 'NOTEMPTY', + 'errmsg' => 'nginx_cgi_socket_empty'), + 1 => array ( 'type' => 'REGEX', + 'regex' => '/^\/[a-zA-Z0-9\.\-\_\/]{1,128}$/', + 'errmsg'=> 'nginx_cgi_socket_error_regex'), + ), + 'value' => '', + 'width' => '40', + 'maxlength' => '255' + ), + 'htaccess_allow_override' => array( + 'datatype' => 'VARCHAR', + 'formtype' => 'TEXT', + 'default' => '', + 'validators' => array( 0 => array('type' => 'NOTEMPTY', + 'errmsg' => 'htaccess_allow_override_error_empty'), + ), + 'filters' => array( + 0 => array( 'event' => 'SAVE', + 'type' => 'STRIPTAGS'), + 1 => array( 'event' => 'SAVE', + 'type' => 'STRIPNL') + ), + 'value' => '', + 'width' => '40', + 'maxlength' => '255' + ), + 'enable_spdy' => array ( + 'datatype' => 'VARCHAR', + 'formtype' => 'CHECKBOX', + 'default' => 'y', + 'value' => array ( + 0 => 'n', + 1 => 'y' + ) + ), + 'apps_vhost_enabled' => array ( + 'datatype' => 'VARCHAR', + 'formtype' => 'CHECKBOX', + 'default' => 'y', + 'value' => array (0 => 'n', 1 => 'y') + ), + 'apps_vhost_port' => array( + 'datatype' => 'VARCHAR', + 'formtype' => 'TEXT', + 'default' => '8081', + 'validators' => array(0 => array('type' => 'NOTEMPTY', + 'errmsg' => 'apps_vhost_port_error_empty'), + ), + 'filters' => array( + 0 => array( 'event' => 'SAVE', + 'type' => 'STRIPTAGS'), + 1 => array( 'event' => 'SAVE', + 'type' => 'STRIPNL') + ), + 'value' => '', + 'width' => '40', + 'maxlength' => '255' + ), + 'apps_vhost_ip' => array( + 'datatype' => 'VARCHAR', + 'formtype' => 'TEXT', + 'default' => '_default_', + 'validators' => array(0 => array('type' => 'NOTEMPTY', + 'errmsg' => 'apps_vhost_ip_error_empty'), + ), + 'filters' => array( + 0 => array( 'event' => 'SAVE', + 'type' => 'STRIPTAGS'), + 1 => array( 'event' => 'SAVE', + 'type' => 'STRIPNL') + ), + 'value' => '', + 'width' => '40', + 'maxlength' => '255' + ), + 'apps_vhost_servername' => array( + 'datatype' => 'VARCHAR', + 'formtype' => 'TEXT', + 'filters' => array( + 0 => array( 'event' => 'SAVE', + 'type' => 'STRIPTAGS'), + 1 => array( 'event' => 'SAVE', + 'type' => 'STRIPNL') + ), + 'default' => '', + 'value' => '', + 'width' => '40', + 'maxlength' => '255' + ), + 'awstats_conf_dir' => array( + 'datatype' => 'VARCHAR', + 'formtype' => 'TEXT', + 'filters' => array( + 0 => array( 'event' => 'SAVE', + 'type' => 'STRIPTAGS'), + 1 => array( 'event' => 'SAVE', + 'type' => 'STRIPNL') + ), + 'default' => '', + 'value' => '', + 'width' => '40', + 'maxlength' => '255' + ), + 'awstats_data_dir' => array( + 'datatype' => 'VARCHAR', + 'formtype' => 'TEXT', + 'validators' => array( 0 => array('type' => 'NOTEMPTY', + 'errmsg' => 'awstats_data_dir_empty'), + 1 => array ( 'type' => 'REGEX', + 'regex' => '/^\/[a-zA-Z0-9\.\-\_\/]{1,128}$/', + 'errmsg'=> 'awstats_data_dir_error_regex'), + ), + 'default' => '', + 'value' => '', + 'width' => '40', + 'maxlength' => '255' + ), + 'awstats_pl' => array( + 'datatype' => 'VARCHAR', + 'formtype' => 'TEXT', + 'validators' => array( 0 => array('type' => 'NOTEMPTY', + 'errmsg' => 'awstats_pl_empty'), + 1 => array ( 'type' => 'REGEX', + 'regex' => '/^\/[a-zA-Z0-9\.\-\_\/]{1,128}$/', + 'errmsg'=> 'awstats_pl_error_regex'), + ), + 'default' => '', + 'value' => '', + 'width' => '40', + 'maxlength' => '255' + ), + 'awstats_buildstaticpages_pl' => array( + 'datatype' => 'VARCHAR', + 'formtype' => 'TEXT', + 'validators' => array( 0 => array('type' => 'NOTEMPTY', + 'errmsg' => 'awstats_buildstaticpages_pl_empty'), + 1 => array ( 'type' => 'REGEX', + 'regex' => '/^\/[a-zA-Z0-9\.\-\_\/]{1,128}$/', + 'errmsg'=> 'awstats_buildstaticpages_pl_error_regex'), + ), + 'default' => '', + 'value' => '', + 'width' => '40', + 'maxlength' => '255' + ), + 'skip_le_check' => array ( + 'datatype' => 'VARCHAR', + 'formtype' => 'CHECKBOX', + 'default' => 'n', + 'value' => array ( + 0 => 'n', + 1 => 'y' + ) + ), + 'php_fpm_reload_mode' => array( + 'datatype' => 'VARCHAR', + 'formtype' => 'SELECT', + 'default' => 'reload', + 'value' => array('reload' => 'Reload', 'restart' => 'Restart'), + 'width' => '40', + 'maxlength' => '255' + ), + //################################# + // ENDE Datatable fields + //################################# + ) +); + +$form["tabs"]['dns'] = array( + 'title' => "DNS", + 'width' => 60, + 'template' => "templates/server_config_dns_edit.htm", + 'fields' => array( + //################################# + // Begin Datatable fields + //################################# + 'bind_user' => array( + 'datatype' => 'VARCHAR', + 'formtype' => 'TEXT', + 'default' => '', + 'validators' => array( 0 => array('type' => 'NOTEMPTY', + 'errmsg' => 'bind_user_error_empty'), + 1 => array ( 'type' => 'REGEX', + 'regex' => '/^(?!ispconfig)([a-zA-Z0-9]{1,20})$/', + 'errmsg'=> 'invalid_bind_user_txt'), + ), + 'value' => '', + 'width' => '40', + 'maxlength' => '255' + ), + 'bind_group' => array( + 'datatype' => 'VARCHAR', + 'formtype' => 'TEXT', + 'default' => '', + 'validators' => array( 0 => array('type' => 'NOTEMPTY', + 'errmsg' => 'bind_group_error_empty'), + 1 => array ( 'type' => 'REGEX', + 'regex' => '/^(?!ispconfig)([a-zA-Z0-9]{1,20})$/', + 'errmsg'=> 'invalid_bind_group_txt'), + ), + 'value' => '', + 'width' => '40', + 'maxlength' => '255' + ), + 'bind_zonefiles_dir' => array( + 'datatype' => 'VARCHAR', + 'formtype' => 'TEXT', + 'default' => '', + 'validators' => array( 0 => array('type' => 'NOTEMPTY', + 'errmsg' => 'bind_zonefiles_dir_error_empty'), + 1 => array ( 'type' => 'REGEX', + 'regex' => '/^\/[a-zA-Z0-9\.\-\_\/]{1,128}$/', + 'errmsg'=> 'bind_zonefiles_dir_error_regex'), + ), + 'value' => '', + 'width' => '40', + 'maxlength' => '255' + ), + 'named_conf_path' => array( + 'datatype' => 'VARCHAR', + 'formtype' => 'TEXT', + 'default' => '', + 'validators' => array( 0 => array('type' => 'NOTEMPTY', + 'errmsg' => 'named_conf_path_error_empty'), + 1 => array ( 'type' => 'REGEX', + 'regex' => '/^\/[a-zA-Z0-9\.\-\_\/]{1,128}$/', + 'errmsg'=> 'named_conf_path_error_regex'), + ), + 'value' => '', + 'width' => '40', + 'maxlength' => '255' + ), + 'named_conf_local_path' => array( + 'datatype' => 'VARCHAR', + 'formtype' => 'TEXT', + 'default' => '', + 'validators' => array( 0 => array('type' => 'NOTEMPTY', + 'errmsg' => 'named_conf_local_path_error_empty'), + 1 => array ( 'type' => 'REGEX', + 'regex' => '/^\/[a-zA-Z0-9\.\-\_\/]{1,128}$/', + 'errmsg'=> 'named_conf_local_path_error_regex'), + ), + 'value' => '', + 'width' => '40', + 'maxlength' => '255' + ), + 'disable_bind_log' => array ( + 'datatype' => 'VARCHAR', + 'formtype' => 'CHECKBOX', + 'default' => 'n', + 'value' => array(0 => 'n', 1 => 'y') + ), + //################################# + // ENDE Datatable fields + //################################# + ) +); + +$form["tabs"]['fastcgi'] = array( + 'title' => "FastCGI", + 'width' => 80, + 'template' => "templates/server_config_fastcgi_edit.htm", + 'fields' => array( + //################################# + // Begin Datatable fields + //################################# + 'fastcgi_starter_path' => array( + 'datatype' => 'VARCHAR', + 'formtype' => 'TEXT', + 'default' => '', + 'validators' => array( 0 => array('type' => 'NOTEMPTY', + 'errmsg' => 'fastcgi_starter_path_error_empty'), + 1 => array ( 'type' => 'REGEX', + 'regex' => '/^\/[a-zA-Z0-9\.\-\_\/\[\]]{1,128}$/', + 'errmsg'=> 'fastcgi_starter_path_error_regex'), + ), + 'value' => '', + 'width' => '40', + 'maxlength' => '255' + ), + 'fastcgi_starter_script' => array( + 'datatype' => 'VARCHAR', + 'formtype' => 'TEXT', + 'default' => '', + 'validators' => array( 0 => array('type' => 'NOTEMPTY', + 'errmsg' => 'fastcgi_starter_script_error_empty'), + 1 => array ( 'type' => 'REGEX', + 'regex' => '/^[a-zA-Z0-9\.\-\_\/]{1,128}$/', + 'errmsg'=> 'fastcgi_starter_script_error_regex'), + ), + 'value' => '', + 'width' => '40', + 'maxlength' => '255' + ), + 'fastcgi_alias' => array( + 'datatype' => 'VARCHAR', + 'formtype' => 'TEXT', + 'default' => '', + 'validators' => array( 0 => array('type' => 'NOTEMPTY', + 'errmsg' => 'fastcgi_alias_error_empty'), + 1 => array ( 'type' => 'REGEX', + 'regex' => '/^[a-zA-Z0-9\.\-\_\/]{1,128}$/', + 'errmsg'=> 'fastcgi_alias_error_regex'), + ), + 'value' => '', + 'width' => '40', + 'maxlength' => '255' + ), + 'fastcgi_phpini_path' => array( + 'datatype' => 'VARCHAR', + 'formtype' => 'TEXT', + 'default' => '', + 'validators' => array( 0 => array('type' => 'NOTEMPTY', + 'errmsg' => 'fastcgi_phpini_path_error_empty'), + 1 => array ( 'type' => 'REGEX', + 'regex' => '/^\/[a-zA-Z0-9\.\-\_\/\[\]]{1,128}$/', + 'errmsg'=> 'fastcgi_phpini_path_error_regex'), + ), + 'value' => '', + 'width' => '40', + 'maxlength' => '255' + ), + 'fastcgi_children' => array( + 'datatype' => 'VARCHAR', + 'formtype' => 'TEXT', + 'default' => '', + 'validators' => array(0 => array('type' => 'ISPOSITIVE', + 'errmsg' => 'fastcgi_children_error_empty'), + ), + 'value' => '', + 'width' => '40', + 'maxlength' => '255' + ), + 'fastcgi_max_requests' => array( + 'datatype' => 'VARCHAR', + 'formtype' => 'TEXT', + 'default' => '', + 'validators' => array( 0 => array( 'type' => 'ISINT', + 'errmsg' => 'fastcgi_max_requests_error_empty'), + 1 => array( 'type' => 'RANGE', + 'range' => '0:', + 'errmsg' => 'fastcgi_max_requests_error_empty'), + ), + 'value' => '', + 'width' => '40', + 'maxlength' => '255' + ), + 'fastcgi_bin' => array( + 'datatype' => 'VARCHAR', + 'formtype' => 'TEXT', + 'default' => '', + 'validators' => array( 0 => array('type' => 'NOTEMPTY', + 'errmsg' => 'fastcgi_bin_error_empty'), + 1 => array ( 'type' => 'REGEX', + 'regex' => '/^\/[a-zA-Z0-9\.\-\_\/\[\]]{1,128}$/', + 'errmsg'=> 'fastcgi_bin_error_regex'), + ), + 'value' => '', + 'width' => '40', + 'maxlength' => '255' + ), + 'fastcgi_config_syntax' => array( + 'datatype' => 'INTEGER', + 'formtype' => 'SELECT', + 'default' => '2', + 'value' => array('1' => 'Old (apache 2.0)', '2' => 'New (apache 2.2)'), + 'width' => '40', + 'maxlength' => '255' + ), + //################################# + // ENDE Datatable fields + //################################# + ) +); + + +$form["tabs"]['xmpp'] = array( + 'title' => "XMPP", + 'width' => 80, + 'template' => "templates/server_config_xmpp_edit.htm", + 'fields' => array( + //################################# + // Begin Datatable fields + //################################# + 'xmpp_use_ipv6' => array( + 'datatype' => 'VARCHAR', + 'formtype' => 'CHECKBOX', + 'default' => 'n', + 'value' => array(0 => 'n', 1 => 'y') + ), + 'xmpp_bosh_max_inactivity' => array( + 'datatype' => 'VARCHAR', + 'formtype' => 'TEXT', + 'default' => '30', + 'validators' => array(0 => array('type' => 'ISINT', + 'errmsg' => 'ip_address_error_wrong'), + array('type'=>'RANGE', 'range'=>'15:360', 'errmsg' => 'xmpp_bosh_timeout_range_wrong') + ), + 'value' => '', + 'width' => '15' + ), + + 'xmpp_server_admins' => array( + 'datatype' => 'VARCHAR', + 'formtype' => 'TEXT', + 'filters' => array( + 0 => array( 'event' => 'SAVE', + 'type' => 'STRIPTAGS'), + 1 => array( 'event' => 'SAVE', + 'type' => 'STRIPNL') + ), + 'default' => 'admin@service.com, superuser@service.com', + 'value' => '', + 'width' => '15' + ), + + 'xmpp_modules_enabled' => array( + 'datatype' => 'TEXT', + 'formtype' => 'TEXT', + 'filters' => array( + 0 => array( 'event' => 'SAVE', + 'type' => 'STRIPTAGS'), + 1 => array( 'event' => 'SAVE', + 'type' => 'STRIPNL') + ), + 'default' => "saslauth, tls, dialback, disco, discoitems, version, uptime, time, ping, admin_adhoc, admin_telnet, bosh, posix, announce, offline, webpresence, mam, stream_management, message_carbons", + 'value' => '', + 'separator' => "," + ), + + 'xmpp_port_http' => array( + 'datatype' => 'VARCHAR', + 'formtype' => 'TEXT', + 'default' => '5290', + 'validators' => array(0 => array('type' => 'ISINT')), + 'value' => '5290', + 'width' => '15' + ), + 'xmpp_port_https' => array( + 'datatype' => 'VARCHAR', + 'formtype' => 'TEXT', + 'default' => '5291', + 'validators' => array(0 => array('type' => 'ISINT')), + 'value' => '5291', + 'width' => '15' + ), + 'xmpp_port_pastebin' => array( + 'datatype' => 'VARCHAR', + 'formtype' => 'TEXT', + 'default' => '5292', + 'validators' => array(0 => array('type' => 'ISINT')), + 'value' => '5292', + 'width' => '15' + ), + 'xmpp_port_bosh' => array( + 'datatype' => 'VARCHAR', + 'formtype' => 'TEXT', + 'default' => '5280', + 'validators' => array(0 => array('type' => 'ISINT')), + 'value' => '5280', + 'width' => '15' + ), + //################################# + // ENDE Datatable fields + //################################# + ) +); + +$form["tabs"]['jailkit'] = array( + 'title' => "Jailkit", + 'width' => 80, + 'template' => "templates/server_config_jailkit_edit.htm", + 'fields' => array( + //################################# + // Begin Datatable fields + //################################# + 'jailkit_chroot_home' => array( + 'datatype' => 'VARCHAR', + 'formtype' => 'TEXT', + 'default' => '', + 'validators' => array( 0 => array('type' => 'NOTEMPTY', + 'errmsg' => 'jailkit_chroot_home_error_empty'), + 1 => array ( 'type' => 'REGEX', + 'regex' => '/^\/[a-zA-Z0-9\.\-\_\/\[\]]{1,128}$/', + 'errmsg'=> 'jailkit_chroot_home_error_regex'), + ), + 'value' => '', + 'width' => '40', + 'maxlength' => '255' + ), + 'jailkit_chroot_app_sections' => array( + 'datatype' => 'VARCHAR', + 'formtype' => 'TEXT', + 'default' => '', + 'validators' => array( 0 => array('type' => 'NOTEMPTY', + 'errmsg' => 'jailkit_chroot_app_sections_error_empty'), + 1 => array ( 'type' => 'REGEX', + 'regex' => '/^[a-zA-Z0-9\-\_\ ]{1,128}$/', + 'errmsg'=> 'jailkit_chroot_app_sections_error_regex'), + ), + 'value' => '', + 'width' => '40', + 'maxlength' => '1000' + ), + 'jailkit_chroot_app_programs' => array( + 'datatype' => 'VARCHAR', + 'formtype' => 'TEXT', + 'default' => '', + 'validators' => array( 0 => array('type' => 'NOTEMPTY', + 'errmsg' => 'jailkit_chroot_app_programs_error_empty'), + 1 => array ( 'type' => 'REGEX', + 'regex' => '/^[a-zA-Z0-9\.\-\_\/\ ]{1,}$/', + 'errmsg'=> 'jailkit_chroot_app_programs_error_regex'), + ), + 'value' => '', + 'width' => '40', + 'maxlength' => '1000' + ), + 'jailkit_chroot_cron_programs' => array( + 'datatype' => 'VARCHAR', + 'formtype' => 'TEXT', + 'default' => '', + 'validators' => array( 0 => array('type' => 'NOTEMPTY', + 'errmsg' => 'jailkit_chroot_cron_programs_error_empty'), + 1 => array ( 'type' => 'REGEX', + 'regex' => '/^[a-zA-Z0-9\.\-\_\/\ ]{1,}$/', + 'errmsg'=> 'jailkit_chroot_cron_programs_error_regex'), + ), + 'value' => '', + 'width' => '40', + 'maxlength' => '1000' + ), + //################################# + // ENDE Datatable fields + //################################# + ) +); + +/* +$form["tabs"]['ufw_firewall'] = array ( + 'title' => "UFW Firewall", + 'width' => 80, + 'template' => "templates/server_config_ufw_edit.htm", + 'fields' => array ( + ################################## + # Begin Datatable fields + ################################## + 'ufw_enable' => array ( + 'datatype' => 'VARCHAR', + 'formtype' => 'CHECKBOX', + 'default' => 'no', + 'value' => array(0 => 'no',1 => 'yes') + ), + 'ufw_manage_builtins' => array ( + 'datatype' => 'VARCHAR', + 'formtype' => 'CHECKBOX', + 'default' => 'no', + 'value' => array(0 => 'no',1 => 'yes') + ), + 'ufw_ipv6' => array ( + 'datatype' => 'VARCHAR', + 'formtype' => 'CHECKBOX', + 'default' => 'no', + 'value' => array(0 => 'no',1 => 'yes') + ), + 'ufw_default_input_policy' => array ( + 'datatype' => 'VARCHAR', + 'formtype' => 'SELECT', + 'default' => 'ACCEPT', + 'value' => array('ACCEPT' => 'accept', 'DROP' => 'drop', 'REJECT' => 'reject') + ), + 'ufw_default_output_policy' => array ( + 'datatype' => 'VARCHAR', + 'formtype' => 'SELECT', + 'default' => 'ACCEPT', + 'value' => array('ACCEPT' => 'accept', 'DROP' => 'drop', 'REJECT' => 'reject') + ), + 'ufw_default_forward_policy' => array ( + 'datatype' => 'VARCHAR', + 'formtype' => 'SELECT', + 'default' => 'ACCEPT', + 'value' => array('ACCEPT' => 'accept', 'DROP' => 'drop', 'REJECT' => 'reject') + ), + 'ufw_default_application_policy' => array ( + 'datatype' => 'VARCHAR', + 'formtype' => 'SELECT', + 'default' => 'DROP', + 'value' => array('ACCEPT' => 'accept', 'DROP' => 'drop', 'REJECT' => 'reject') + ), + 'ufw_log_level' => array ( + 'datatype' => 'VARCHAR', + 'formtype' => 'SELECT', + 'default' => 'low', + 'value' => array('low' => 'low', 'medium' => 'medium', 'high' => 'high') + ) + ################################## + # ENDE Datatable fields + ################################## + ) +); +*/ + +$form["tabs"]['vlogger'] = array( + 'title' => "vlogger", + 'width' => 80, + 'template' => "templates/server_config_vlogger_edit.htm", + 'fields' => array( + //################################# + // Begin Datatable fields + //################################# + 'config_dir' => array( + 'datatype' => 'VARCHAR', + 'formtype' => 'TEXT', + 'default' => '', + 'validators' => array( 0 => array('type' => 'NOTEMPTY', + 'errmsg' => 'vlogger_config_dir_error_empty'), + 1 => array ( 'type' => 'REGEX', + 'regex' => '/^\/[a-zA-Z0-9\.\-\_\/]{1,128}$/', + 'errmsg'=> 'vlogger_config_dir_error_regex'), + ), + 'value' => '', + 'width' => '40', + 'maxlength' => '255' + ), + //################################# + // ENDE Datatable fields + //################################# + ) +); + + + +$form["tabs"]['cron'] = array( + 'title' => "Cron", + 'width' => 80, + 'template' => "templates/server_config_cron_edit.htm", + 'fields' => array( + //################################# + // Begin Datatable fields + //################################# + 'init_script' => array( + 'datatype' => 'VARCHAR', + 'formtype' => 'TEXT', + 'default' => '', + 'validators' => array( 0 => array('type' => 'NOTEMPTY', + 'errmsg' => 'cron_init_script_error_empty'), + 1 => array ( 'type' => 'REGEX', + 'regex' => '/^[a-zA-Z0-9\-\_]{1,30}$/', + 'errmsg'=> 'cron_init_script_error_regex'), + ), + 'value' => '', + 'width' => '40', + 'maxlength' => '255' + ), + 'crontab_dir' => array( + 'datatype' => 'VARCHAR', + 'formtype' => 'TEXT', + 'default' => '', + 'validators' => array( 0 => array('type' => 'NOTEMPTY', + 'errmsg' => 'crontab_dir_error_empty'), + 1 => array ( 'type' => 'REGEX', + 'regex' => '/^\/[a-zA-Z0-9\.\-\_\/]{1,128}$/', + 'errmsg'=> 'crontab_dir_error_regex'), + ), + 'value' => '', + 'width' => '40', + 'maxlength' => '255' + ), + 'wget' => array( + 'datatype' => 'VARCHAR', + 'formtype' => 'TEXT', + 'default' => '', + 'validators' => array( 0 => array('type' => 'NOTEMPTY', + 'errmsg' => 'cron_wget_error_empty'), + 1 => array ( 'type' => 'REGEX', + 'regex' => '/^\/[a-zA-Z0-9\.\-\_\/]{1,128}$/', + 'errmsg'=> 'cron_wget_error_regex'), + ), + 'value' => '', + 'width' => '40', + 'maxlength' => '255' + ), + //################################# + // ENDE Datatable fields + //################################# + ) +); + +$form["tabs"]['rescue'] = array( + 'title' => "Rescue", + 'width' => 80, + 'template' => "templates/server_config_rescue_edit.htm", + 'fields' => array( + //################################# + // Begin Datatable fields + //################################# + 'try_rescue' => array( + 'datatype' => 'VARCHAR', + 'formtype' => 'CHECKBOX', + 'default' => 'n', + 'value' => array(0 => 'n', 1 => 'y') + ), + 'do_not_try_rescue_httpd' => array( + 'datatype' => 'VARCHAR', + 'formtype' => 'CHECKBOX', + 'default' => 'n', + 'value' => array(0 => 'n', 1 => 'y') + ), + 'do_not_try_rescue_mongodb' => array( + 'datatype' => 'VARCHAR', + 'formtype' => 'CHECKBOX', + 'default' => 'n', + 'value' => array(0 => 'n', 1 => 'y') + ), + 'do_not_try_rescue_mysql' => array( + 'datatype' => 'VARCHAR', + 'formtype' => 'CHECKBOX', + 'default' => 'n', + 'value' => array(0 => 'n', 1 => 'y') + ), + 'do_not_try_rescue_mail' => array( + 'datatype' => 'VARCHAR', + 'formtype' => 'CHECKBOX', + 'default' => 'n', + 'value' => array(0 => 'n', 1 => 'y') + ), + //################################# + // ENDE Datatable fields + //################################# + ) +); +?> diff --git a/interface/web/admin/lib/lang/de_server_config.lng b/interface/web/admin/lib/lang/de_server_config.lng index 108bf96de8..50b3514564 100644 --- a/interface/web/admin/lib/lang/de_server_config.lng +++ b/interface/web/admin/lib/lang/de_server_config.lng @@ -296,4 +296,7 @@ $wb['php_default_name_txt'] = 'Beschreibung Standard PHP'; $wb['php_default_name_error_empty'] = 'Beschreibung Standard PHP ist leer.'; $wb['error_mailbox_message_size_txt'] = 'Mailboxgröße muss gleich oder größer als max. Nachrichtengröße sein.'; $wb['php_fpm_reload_mode_txt'] = 'PHP-FPM reload Modus'; -?> +$wb['content_filter_txt'] = 'Content-Filter'; +$wb['rspamd_url_txt'] = 'Rspamd-URL'; +$wb['rspamd_user_txt'] = 'Rspamd-Benutzer'; +$wb['rspamd_password_txt'] = 'Rspamd-Passwort'; \ No newline at end of file diff --git a/interface/web/admin/lib/lang/de_server_config.lng.orig b/interface/web/admin/lib/lang/de_server_config.lng.orig new file mode 100644 index 0000000000..108bf96de8 --- /dev/null +++ b/interface/web/admin/lib/lang/de_server_config.lng.orig @@ -0,0 +1,299 @@ +<?php +$wb['jailkit_chroot_home_txt'] = 'Jailkit Chroot home'; +$wb['jailkit_chroot_app_sections_txt'] = 'Jailkit Chroot Anwendungsbereiche'; +$wb['jailkit_chroot_app_programs_txt'] = 'Jailkit Chrooted Anwendungen'; +$wb['jailkit_chroot_cron_programs_txt'] = 'Jailkit Cron Chrooted Anwendungen'; +$wb['website_path_txt'] = 'Webseiten Pfad'; +$wb['website_symlinks_txt'] = 'Webseiten Symlinks'; +$wb['website_symlinks_rel_txt'] = 'Erstelle relative Symlinks'; +$wb['vhost_conf_dir_txt'] = 'vHost Konfigurationsverzeichnis'; +$wb['vhost_conf_enabled_dir_txt'] = 'vHost config enabled dir'; +$wb['getmail_config_dir_txt'] = 'Getmail Konfigurationsverzeichnis'; +$wb['fastcgi_starter_path_txt'] = 'FastCGI Starter Pfad'; +$wb['fastcgi_starter_script_txt'] = 'FastCGI Starter Script'; +$wb['fastcgi_alias_txt'] = 'FastCGI Alias'; +$wb['fastcgi_phpini_path_txt'] = 'FastCGI php.ini Pfad'; +$wb['fastcgi_children_txt'] = 'FastCGI Children'; +$wb['fastcgi_max_requests_txt'] = 'FastCGI max. Anfragen'; +$wb['fastcgi_bin_txt'] = 'FastCGI Bin'; +$wb['module_txt'] = 'Modul'; +$wb['maildir_path_txt'] = 'Maildir Pfad'; +$wb['maildir_format_txt'] = 'Maildir Format'; +$wb['homedir_path_txt'] = 'Homedir Pfad'; +$wb['dkim_path_txt'] = 'DKIM Pfad'; +$wb['mailuser_uid_txt'] = 'Mailbenutzer UID'; +$wb['mailuser_gid_txt'] = 'Mailbenutzer GID'; +$wb['mailuser_name_txt'] = 'Mailbenutzer Name'; +$wb['mailuser_group_txt'] = 'Mailbenutzer Gruppe'; +$wb['mailbox_virtual_uidgid_maps_txt'] = 'Website Linux Uid für Mailboxen'; +$wb['mailbox_virtual_uidgid_maps_info_txt'] = 'nur für einzel-Server Installationen.'; +$wb['mailbox_virtual_uidgid_maps_error_nosingleserver'] = 'Uid kann in Multiserver-Umgebung nicht gemappt werden.'; +$wb['mailbox_virtual_uidgid_maps_error_nodovecot'] = 'Uid Mapping funktioniert nur in Verbindung mit dovecot.'; +$wb['mailbox_virtual_uidgid_maps_error_alreadyusers'] = 'Uid Mapping kann nur umgeschaltet werden, wenn noch keine Mailuser angelegt sind.'; +$wb['relayhost_txt'] = 'Relayhost'; +$wb['relayhost_user_txt'] = 'Relayhost Benutzer'; +$wb['relayhost_password_txt'] = 'Relayhost Passwort'; +$wb['reject_sender_login_mismatch_txt'] = 'Zurückweisen von Mails, wenn Sender nicht gleich Login'; +$wb['mailbox_size_limit_txt'] = 'E-Mailkonto Beschränkung'; +$wb['message_size_limit_txt'] = 'E-Mailgrößen Beschränkung'; +$wb['ip_address_txt'] = 'IP Adresse'; +$wb['netmask_txt'] = 'Netzmaske'; +$wb['gateway_txt'] = 'Gateway'; +$wb['hostname_txt'] = 'Hostname'; +$wb['nameservers_txt'] = 'Nameserver'; +$wb['auto_network_configuration_txt'] = 'Netzwerkkonfiguration'; +$wb['website_basedir_txt'] = 'Webseiten basedir'; +$wb['website_autoalias_txt'] = 'Webseiten Autoalias'; +$wb['website_autoalias_note_txt'] = 'Platzhalter:'; +$wb['ip_address_error_wrong'] = 'Ungültiges IP Adressen Format.'; +$wb['netmask_error_wrong'] = 'Ungültiges Netzmasken Format.'; +$wb['gateway_error_wrong'] = 'Ungültiges Gateway Format.'; +$wb['hostname_error_empty'] = 'Hostname ist leer.'; +$wb['nameservers_error_empty'] = 'Nameserver ist leer.'; +$wb['config_dir_txt'] = 'Konfigurationsverzeichnis'; +$wb['init_script_txt'] = 'Cron init Script Name'; +$wb['crontab_dir_txt'] = 'Pfad für individuelle Crontabs'; +$wb['wget_txt'] = 'Pfad zum wget Programm'; +$wb['web_user_txt'] = 'Apache Benutzer'; +$wb['web_group_txt'] = 'Apache Gruppe'; +$wb['security_level_txt'] = 'Sicherheitslevel'; +$wb['loglevel_txt'] = 'Loglevel'; +$wb['apps_vhost_port_txt'] = 'Apps vHost Port'; +$wb['apps_vhost_ip_txt'] = 'Apps vHost IP Adresse'; +$wb['apps_vhost_servername_txt'] = 'Apps vHost Domain'; +$wb['bind_user_txt'] = 'BIND Benutzer'; +$wb['bind_group_txt'] = 'BIND Gruppe'; +$wb['bind_zonefiles_dir_txt'] = 'BIND Zonefiles Verzeichnis'; +$wb['named_conf_path_txt'] = 'BIND named.conf Pfad'; +$wb['bind_user_error_empty'] = 'BIND Benutzer ist leer.'; +$wb['bind_group_error_empty'] = 'BIND Gruppe ist leer.'; +$wb['bind_zonefiles_dir_error_empty'] = 'BIND Zonefiles Verzeichnis ist leer.'; +$wb['named_conf_path_error_empty'] = 'BIND named.conf Pfad ist leer.'; +$wb['named_conf_local_path_error_empty'] = 'BIND named.conf.local Pfad ist leer.'; +$wb['mail_filter_syntax_txt'] = 'E-Mailfilter Syntax'; +$wb['pop3_imap_daemon_txt'] = 'POP3/IMAP Dämon'; +$wb['php_open_basedir_txt'] = 'PHP open_basedir'; +$wb['php_open_basedir_error_empty'] = 'PHP open_basedir ist leer.'; +$wb['htaccess_allow_override_txt'] = '.htaccess AllowOverride'; +$wb['htaccess_allow_override_error_empty'] = '.htaccess AllowOverride ist leer.'; +$wb['awstats_conf_dir_txt'] = 'AWStats Konfigurationsverzeichnis'; +$wb['awstats_data_dir_txt'] = 'AWStats Datenverzeichnis'; +$wb['awstats_pl_txt'] = 'AWStats awstats.pl Script'; +$wb['awstats_buildstaticpages_pl_txt'] = 'AWStats awstats_buildstaticpages.pl Script'; +$wb['backup_dir_txt'] = 'Backupverzeichnis'; +$wb['backup_tmp_txt'] = 'Backup tmp-Dir (zip)'; +$wb['named_conf_local_path_txt'] = 'BIND named.conf.local Pfad'; +$wb['php_ini_path_cgi_txt'] = 'CGI php.ini Pfad'; +$wb['php_ini_path_apache_txt'] = 'Apache php.ini Pfad'; +$wb['check_apache_config_txt'] = 'Teste Apache Konfiguration beim Neustart'; +$wb['CA_path_txt'] = 'CA Pfad'; +$wb['CA_pass_txt'] = 'CA Passwort'; +$wb['ufw_enable_txt'] = 'Aktivieren'; +$wb['ufw_manage_builtins_txt'] = 'Verwalte Builtin Rules'; +$wb['ufw_ipv6_txt'] = 'Aktiviere IPv6'; +$wb['ufw_default_input_policy_txt'] = 'Default Input Policy'; +$wb['ufw_default_output_policy_txt'] = 'Default Output Policy'; +$wb['ufw_default_forward_policy_txt'] = 'Default Forward Policy'; +$wb['ufw_default_application_policy_txt'] = 'Default Application Policy'; +$wb['ufw_log_level_txt'] = 'Loglevel'; +$wb['network_config_warning_txt'] = 'Die Netzwerk Konfiguration Option ist nur auf Debian- und Ubuntu Servern verfügbar. Aktivieren Sie diese Option nicht, falls Ihr Netzwerk Interface nicht eth0 heißt.'; +$wb['server_type_txt'] = 'Server Typ'; +$wb['nginx_vhost_conf_dir_txt'] = 'Nginx vHost Konfigurations Verzeichnis'; +$wb['nginx_vhost_conf_enabled_dir_txt'] = 'Nginx vHost config enabled dir'; +$wb['nginx_user_txt'] = 'Nginx Benutzer'; +$wb['nginx_group_txt'] = 'Nginx Gruppe'; +$wb['nginx_cgi_socket_txt'] = 'Nginx CGI Socket'; +$wb['backup_dir_error_empty'] = 'Backup Verzeichnis ist leer.'; +$wb['tmpdir_path_error_empty'] = 'Tmp-Dir Pfad ist leer.'; +$wb['tmpdir_path_error_regex'] = 'Invalid Tmp-Dir Pfad.'; +$wb['maildir_path_error_empty'] = 'Maildir Pfad ist leer.'; +$wb['homedir_path_error_empty'] = 'Homedir Pfad ist leer.'; +$wb['mailuser_uid_error_empty'] = 'Mail Benutzer UID ist leer.'; +$wb['mailuser_gid_error_empty'] = 'Mail Benutzer GID ist leer.'; +$wb['mailuser_name_error_empty'] = 'Mail Benutzer Name ist leer.'; +$wb['mailuser_group_error_empty'] = 'Mail Benutzer Gruppe ist leer.'; +$wb['getmail_config_dir_error_empty'] = 'Getmail config dir ist leer.'; +$wb['website_basedir_error_empty'] = 'Webseiten basedir ist leer.'; +$wb['website_path_error_empty'] = 'Webseiten Pfad ist leer.'; +$wb['website_symlinks_error_empty'] = 'Webseiten Symlinks ist leer.'; +$wb['vhost_conf_dir_error_empty'] = 'vHost config dir ist leer.'; +$wb['vhost_conf_enabled_dir_error_empty'] = 'vHost config enabled dir ist leer.'; +$wb['nginx_vhost_conf_dir_error_empty'] = 'Nginx vHost config dir ist leer.'; +$wb['nginx_vhost_conf_enabled_dir_error_empty'] = 'Nginx vHost config enabled dir ist leer.'; +$wb['apache_user_error_empty'] = 'Apache Benutzer ist leer.'; +$wb['apache_group_error_empty'] = 'Apache Grupp ist leer.'; +$wb['nginx_user_error_empty'] = 'Nginx Benutzer ist leer.'; +$wb['nginx_group_error_empty'] = 'Nginx Gruppe ist leer.'; +$wb['php_ini_path_apache_error_empty'] = 'Apache php.ini Pfad ist leer.'; +$wb['php_ini_path_cgi_error_empty'] = 'CGI php.ini Pfad ist leer.'; +$wb['nginx_cgi_socket_empty'] = 'Nginx CGI Socket ist leer.'; +$wb['apps_vhost_port_error_empty'] = 'Apps vHost Port ist leer.'; +$wb['apps_vhost_ip_error_empty'] = 'Apps vHost IP Adresse ist leer.'; +$wb['fastcgi_starter_path_error_empty'] = 'FastCGI Starter Pfad ist leer.'; +$wb['fastcgi_starter_script_error_empty'] = 'FastCGI Starter Script ist leer.'; +$wb['fastcgi_alias_error_empty'] = 'FastCGI Alias ist leer.'; +$wb['fastcgi_phpini_path_error_empty'] = 'FastCGI php.ini Pfad ist leer.'; +$wb['fastcgi_children_error_empty'] = 'FastCGI Children ist leer.'; +$wb['fastcgi_max_requests_error_empty'] = 'FastCGI max. Requests ist leer.'; +$wb['fastcgi_bin_error_empty'] = 'FastCGI Bin ist leer.'; +$wb['jailkit_chroot_home_error_empty'] = 'Jailkit Chroot home ist leer.'; +$wb['jailkit_chroot_app_sections_error_empty'] = 'Jailkit Chroot Anwendungsbereiche ist leer.'; +$wb['jailkit_chroot_app_programs_error_empty'] = 'Jailkit Chrooted Anwendungen ist leer.'; +$wb['jailkit_chroot_cron_programs_error_empty'] = 'Jailkit Cron Chrooted Anwendungen ist leer.'; +$wb['vlogger_config_dir_error_empty'] = 'Konfigurationsverzeichnis ist leer.'; +$wb['cron_init_script_error_empty'] = 'Cron Startscript Name ist leer.'; +$wb['crontab_dir_error_empty'] = 'Pfad für individuelle Crontabs ist leer.'; +$wb['cron_wget_error_empty'] = 'Pfad zum wget Programm ist leer.'; +$wb['php_fpm_init_script_txt'] = 'PHP-FPM Init Script'; +$wb['php_fpm_init_script_error_empty'] = 'PHP-FPM Init Script ist leer.'; +$wb['php_fpm_ini_path_txt'] = 'PHP-FPM php.ini Pfad'; +$wb['php_fpm_ini_path_error_empty'] = 'PHP-FPM php.ini Pfad ist leer.'; +$wb['php_fpm_pool_dir_txt'] = 'PHP-FPM Pool Verzeichnis'; +$wb['php_fpm_pool_dir_error_empty'] = 'PHP-FPM Pool Verzeichnis ist leer.'; +$wb['php_fpm_start_port_txt'] = 'PHP-FPM Start Port'; +$wb['php_fpm_start_port_error_empty'] = 'PHP-FPM Start Port ist leer.'; +$wb['php_fpm_socket_dir_txt'] = 'PHP-FPM Socket Verzeichnis'; +$wb['php_fpm_socket_dir_error_empty'] = 'PHP-FPM Socket Verzeichnis ist leer.'; +$wb['fastcgi_config_syntax_txt'] = 'FastCGI Konfigurations Syntax'; +$wb['try_rescue_txt'] = 'Aktiviere Service Monitoring und Neustart bei Unerreichbarkeit'; +$wb['do_not_try_rescue_httpd_txt'] = 'Deaktiviere HTTPD Monitoring'; +$wb['do_not_try_rescue_mongodb_txt'] = 'Deaktiviere MongoDB Monitoring'; +$wb['do_not_try_rescue_mysql_txt'] = 'Deaktiviere MySQL Monitoring'; +$wb['do_not_try_rescue_mail_txt'] = 'Deaktiviere E-Mail Monitoring'; +$wb['rescue_description_txt'] = '<b>Information:</b> Falls Sie MySQL stoppen möchten, wählen Sie die Funktion \'Deaktiviere MySQL Monitoring\' und warten Sie 2 bis 3 Minuten. Wenn Sie nicht 2 bis 3 Minuten warten wird ISPConfig versuchen MySQL wieder zu starten.'; +$wb['enable_sni_txt'] = 'Aktiviere SNI'; +$wb['set_folder_permissions_on_update_txt'] = 'Verzeichnisberechtigungen beim Update setzen'; +$wb['add_web_users_to_sshusers_group_txt'] = 'Webbenutzer zur -sshusers- hinzufügen'; +$wb['connect_userid_to_webid_txt'] = 'Linux Userid mit webid verknüpfen'; +$wb['connect_userid_to_webid_start_txt'] = 'Start ID für userid/webid Verknüpfung'; +$wb['realtime_blackhole_list_txt'] = 'Realtime Blackhole Liste'; +$wb['realtime_blackhole_list_note_txt'] = '(Mehrere Realtime Blackhole Listen mit Kommas trennen)'; +$wb['ssl_settings_txt'] = 'SSL Einstellungen'; +$wb['permissions_txt'] = 'Berechtigungen'; +$wb['php_settings_txt'] = 'PHP Einstellungen'; +$wb['apps_vhost_settings_txt'] = 'Apps vHost Einstellungen'; +$wb['awstats_settings_txt'] = 'AWStats Einstellungen'; +$wb['backup_mode_txt'] = 'Backupmodus'; +$wb['backup_mode_userzip'] = 'Backup Dateien gehören dem Web Benutzer (.zip Datei)'; +$wb['backup_mode_rootgz'] = 'Backup aller Dateien des Webverzeichnisses als Root Benutzer'; +$wb['backup_time_txt'] = 'Backupzeit'; +$wb['firewall_txt'] = 'Firewall'; +$wb['mailbox_quota_stats_txt'] = 'E-Mailkonto Beschränkung Statistiken'; +$wb['enable_ip_wildcard_txt'] = 'IP Adressen Wildcard (*) aktivieren'; +$wb['web_folder_protection_txt'] = 'Webverzeichnis unveränderlich machen (erweiterte Attribute)'; +$wb['overtraffic_notify_admin_txt'] = 'Ãœberschreiten des Datentransfer Limits an den Administrator senden'; +$wb['overtraffic_notify_client_txt'] = 'Ãœberschreiten des Datentransfer Limits an den Kunden senden'; +$wb['rbl_error_regex'] = 'Bitte geben Sie gültige RBL-Hostnamen an.'; +$wb['overquota_notify_admin_txt'] = 'Quota-Warnungen an den Administrator senden'; +$wb['overquota_notify_client_txt'] = 'Quota-Warnungen an den Kunden senden'; +$wb['overquota_notify_onok_txt'] = 'Meldung an den Kunden senden, wenn Belegung wieder ok'; +$wb['overquota_notify_freq_txt'] = 'Quota-Warnung alle X Tage versenden'; +$wb['overquota_notify_freq_note_txt'] = '0 = Meldung nur einmalig versenden, keine Wiederholung'; +$wb['admin_notify_events_txt'] = 'Sende E-Mail an Administrator ab folgendem Level'; +$wb['no_notifications_txt'] = 'Keine Benachrichtigungen'; +$wb['monit_url_txt'] = 'Monit-URL'; +$wb['monit_user_txt'] = 'Monit-Benutzer'; +$wb['monit_password_txt'] = 'Monit-Passwort'; +$wb['monit_url_error_regex'] = 'Ungültige Monit-URL'; +$wb['monit_url_note_txt'] = 'Platzhalter:'; +$wb['munin_url_txt'] = 'Munin-URL'; +$wb['munin_user_txt'] = 'Munin-Benutzer'; +$wb['munin_password_txt'] = 'Munin-Passwort'; +$wb['munin_url_error_regex'] = 'Ungültige Munin-URL'; +$wb['munin_url_note_txt'] = 'Platzhalter:'; +$wb['backup_dir_is_mount_txt'] = 'Backupverzeichnis ist ein eigener Mount?'; +$wb['backup_dir_mount_cmd_txt'] = 'Mount-Befehl, falls Backupverzeichnis nicht gemountet'; +$wb['backup_delete_txt'] = 'Backups loeschen wenn eine Domain / Webseite geloescht wird'; +$wb['v6_prefix_txt'] = 'IPv6 Prefix'; +$wb['vhost_rewrite_v6_txt'] = 'Rewrite IPv6 on Mirror'; +$wb['v6_prefix_length'] = 'Prefix zu lang fuer angegebene IPv6-Adresse '; +$wb['monitor_system_updates_txt'] = 'Suche nach Linux updates'; +$wb['dkim_strength_txt'] = 'DKIM Stärke'; +$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.'; +$wb['maildir_path_error_regex'] = 'Invalid maildir path.'; +$wb['homedir_path_error_regex'] = 'Invalid homedir path.'; +$wb['mailuser_name_error_regex'] = 'Invalid mailuser name.'; +$wb['mailuser_group_name_error_regex'] = 'Invalid mailuser group name.'; +$wb['mailuser_uid_error_range'] = 'Mailuser uid must be >= 2000'; +$wb['mailuser_gid_error_range'] = 'Mailuser gid must be >= 2000'; +$wb['getmail_config_dir_error_regex'] = 'Invalid getmail config directory.'; +$wb['website_basedir_error_regex'] = 'Invalid website basedir or path too short, min. length 5 chars.'; +$wb['website_symlinks_error_regex'] = 'Invalid website symlinks.'; +$wb['vhost_conf_dir_error_regex'] = 'Invalid vhost config directory.'; +$wb['vhost_conf_enabled_dir_error_regex'] = 'Invalid vhost conf enabled directory.'; +$wb['nginx_vhost_conf_dir_error_regex'] = 'Invalid nginx config directory.'; +$wb['nginx_vhost_conf_enabled_dir_error_regex'] = 'Invalid nginx conf enabled directory.'; +$wb['ca_path_error_regex'] = 'Invalid CA path.'; +$wb['invalid_nginx_user_txt'] = 'Invalid nginx user.'; +$wb['invalid_nginx_group_txt'] = 'Invalid nginx group.'; +$wb['php_ini_path_apache_error_regex'] = 'Invalid apache php.ini path.'; +$wb['php_ini_path_cgi_error_regex'] = 'Invalid cgi php.ini path.'; +$wb['php_fpm_init_script_error_regex'] = 'Invalid php-fpm init script.'; +$wb['php_fpm_ini_path_error_regex'] = 'Invalid php-fpm ini path.'; +$wb['php_fpm_pool_dir_error_regex'] = 'Invalid php-fpm pool directory.'; +$wb['php_fpm_socket_dir_error_regex'] = 'Invalid php-fpm socket directory.'; +$wb['php_open_basedir_error_regex'] = 'Invalid php open_basedir.'; +$wb['awstats_data_dir_empty'] = 'awstats data directory is empty'; +$wb['awstats_data_dir_error_regex'] = 'Invalid awstats data directory.'; +$wb['awstats_pl_empty'] = 'awstats.pl setting is empty.'; +$wb['awstats_pl_error_regex'] = 'Invalid awstats.pl path.'; +$wb['awstats_buildstaticpages_pl_empty'] = 'awstats_buildstaticpages.pl is empty'; +$wb['awstats_buildstaticpages_pl_error_regex'] = 'Invalid awstats_buildstaticpages.pl path.'; +$wb['invalid_bind_user_txt'] = 'Invalid BIND user.'; +$wb['invalid_bind_group_txt'] = 'Invalid BIND group.'; +$wb['bind_zonefiles_dir_error_regex'] = 'Invalid BIND zonefiles directory.'; +$wb['named_conf_path_error_regex'] = 'Invalid named.conf path.'; +$wb['named_conf_local_path_error_regex'] = 'Invalid named.conf.local path.'; +$wb['fastcgi_starter_path_error_regex'] = 'Invalid fastcgi starter path.'; +$wb['fastcgi_starter_script_error_regex'] = 'Invalid fastcgi starter script.'; +$wb['fastcgi_alias_error_regex'] = 'Invalid fastcgi alias.'; +$wb['fastcgi_phpini_path_error_regex'] = 'Invalid fastcgi path.'; +$wb['fastcgi_bin_error_regex'] = 'Invalid fastcgi bin.'; +$wb['jailkit_chroot_home_error_regex'] = 'Invalid jaikit chroot home.'; +$wb['jailkit_chroot_app_sections_error_regex'] = 'Invalid jaikit chroot sections.'; +$wb['jailkit_chroot_app_programs_error_regex'] = 'Invalid jaikit chroot app programs.'; +$wb['jailkit_chroot_cron_programs_error_regex'] = 'Invalid jaikit chroot cron programs.'; +$wb['vlogger_config_dir_error_regex'] = 'Invalid vlogger config dir.'; +$wb['cron_init_script_error_regex'] = 'Invalid cron init script.'; +$wb['crontab_dir_error_regex'] = 'Invalid crontab directory.'; +$wb['cron_wget_error_regex'] = 'Invalid cron wget path.'; +$wb['network_filesystem_txt'] = 'Netzwerk-Dateisystem'; +$wb['overquota_db_notify_admin_txt'] = 'Datenbank-Quota-Warnungen an den Administrator senden'; +$wb['overquota_db_notify_client_txt'] = 'Datenbank-Quota-Warnungen an den Kunden senden'; +$wb['php_ini_check_minutes_txt'] = 'Prüfe php.ini alle X Minuten auf Änderungen'; +$wb['php_ini_check_minutes_error_empty'] = 'Bitte geben Sie einen Wert an, wie oft die php.ini auf Änderungen geprüft werden soll.'; +$wb['php_ini_check_minutes_info_txt'] = '0 = keine Prüfung'; +$wb['php_handler_txt'] = 'Standard-PHP-Handler'; +$wb['php_fpm_incron_reload_txt'] = 'Install incron trigger file to reload PHP-FPM'; +$wb['enable_spdy_txt'] = 'Stellt SPDY/HTTP2 zur Verfügung'; +$wb['disable_bind_log_txt'] = 'Disable bind9 messages for Loglevel WARN'; +$wb['apps_vhost_enabled_txt'] = 'Apps-vhost enabled'; +$wb['disabled_txt'] = 'Disabled'; +$wb['web_settings_txt'] = 'Web Server'; +$wb['xmpp_server_txt'] = 'XMPP Server'; +$wb['xmpp_use_ipv6_txt'] = 'Use IPv6'; +$wb['xmpp_bosh_max_inactivity_txt'] = 'Max. BOSH inactivity time'; +$wb['xmpp_bosh_timeout_range_wrong'] = 'Please enter a bosh timeout range between 15 - 360'; +$wb['xmpp_module_saslauth'] = 'saslauth'; +$wb['xmpp_server_admins_txt'] = 'Server Admins (JIDs)'; +$wb['xmpp_modules_enabled_txt'] = 'Serverwide enabled plugins (one per line)'; +$wb['xmpp_ports_txt'] = 'Component ports'; +$wb['xmpp_port_http_txt'] = 'HTTP'; +$wb['xmpp_port_https_txt'] = 'HTTPS'; +$wb['xmpp_port_pastebin_txt'] = 'Pastebin'; +$wb['xmpp_port_bosh_txt'] = 'BOSH'; +$wb['skip_le_check_txt'] = 'Skip Lets Encrypt Check'; +$wb['migration_mode_txt'] = 'Server Migration Mode'; +$wb['nginx_enable_pagespeed_txt'] = 'Makes Pagespeed available'; +$wb['logging_txt'] = 'Store website access and error logs'; +$wb['logging_desc_txt'] = 'Use Tools > Resync to apply changes to existing sites. For Apache, access and error log can be anonymized. For nginx, only the access log is anonymized, the error log will contain IP addresses.'; +$wb['log_retention_txt'] = 'Log retention (days)'; +$wb['log_retention_error_ispositive'] = 'Log retention must be a number > 0'; +$wb['php_default_name_txt'] = 'Beschreibung Standard PHP'; +$wb['php_default_name_error_empty'] = 'Beschreibung Standard PHP ist leer.'; +$wb['error_mailbox_message_size_txt'] = 'Mailboxgröße muss gleich oder größer als max. Nachrichtengröße sein.'; +$wb['php_fpm_reload_mode_txt'] = 'PHP-FPM reload Modus'; +?> diff --git a/interface/web/admin/lib/lang/de_server_config.lng.rej b/interface/web/admin/lib/lang/de_server_config.lng.rej new file mode 100644 index 0000000000..eeed14711e --- /dev/null +++ b/interface/web/admin/lib/lang/de_server_config.lng.rej @@ -0,0 +1,11 @@ +--- interface/web/admin/lib/lang/de_server_config.lng ++++ interface/web/admin/lib/lang/de_server_config.lng +@@ -295,4 +295,7 @@ $wb['log_retention_error_ispositive'] = 'Log retention must be a number > 0'; + $wb['php_default_name_txt'] = 'Beschreibung Standard PHP'; + $wb['php_default_name_error_empty'] = 'Beschreibung Standard PHP ist leer.'; + $wb['error_mailbox_message_size_txt'] = 'Mailboxgröße muss gleich oder größer als max. Nachrichtengröße sein.'; +-?> ++$wb['content_filter_txt'] = 'Content-Filter'; ++$wb['rspamd_url_txt'] = 'Rspamd-URL'; ++$wb['rspamd_user_txt'] = 'Rspamd-Benutzer'; ++$wb['rspamd_password_txt'] = 'Rspamd-Passwort'; \ No newline at end of file diff --git a/interface/web/admin/lib/lang/en_server_config.lng b/interface/web/admin/lib/lang/en_server_config.lng index ac0ee42b90..0ba3638a0a 100644 --- a/interface/web/admin/lib/lang/en_server_config.lng +++ b/interface/web/admin/lib/lang/en_server_config.lng @@ -297,4 +297,7 @@ $wb['php_default_name_txt'] = 'Description Default PHP-Version'; $wb['php_default_name_error_empty'] = 'Description Default PHP-Version must not be empty'; $wb['error_mailbox_message_size_txt'] = 'Mailbox size must be larger or equal to message size'; $wb['php_fpm_reload_mode_txt'] = 'PHP-FPM reload mode'; -?> +$wb['content_filter_txt'] = 'Content Filter'; +$wb['rspamd_url_txt'] = 'Rspamd URL'; +$wb['rspamd_user_txt'] = 'Rspamd User'; +$wb['rspamd_password_txt'] = 'Rspamd Password'; diff --git a/interface/web/admin/lib/lang/en_server_config.lng.orig b/interface/web/admin/lib/lang/en_server_config.lng.orig new file mode 100644 index 0000000000..ac0ee42b90 --- /dev/null +++ b/interface/web/admin/lib/lang/en_server_config.lng.orig @@ -0,0 +1,300 @@ +<?php +$wb["ufw_enable_txt"] = 'Enable'; +$wb["ufw_manage_builtins_txt"] = 'Manage Builtin Rules'; +$wb["ufw_ipv6_txt"] = 'Enable IPv6'; +$wb["ufw_default_input_policy_txt"] = 'Default Input Policy'; +$wb["ufw_default_output_policy_txt"] = 'Default Output Policy'; +$wb["ufw_default_forward_policy_txt"] = 'Default Forward Policy'; +$wb["ufw_default_application_policy_txt"] = 'Default Application Policy'; +$wb["ufw_log_level_txt"] = 'Log Level'; +$wb["jailkit_chroot_home_txt"] = 'Jailkit chroot home'; +$wb["jailkit_chroot_app_sections_txt"] = 'Jailkit chroot app sections'; +$wb["jailkit_chroot_app_programs_txt"] = 'Jailkit chrooted applications'; +$wb["jailkit_chroot_cron_programs_txt"] = 'Jailkit cron chrooted applications'; +$wb["website_path_txt"] = 'Website path'; +$wb["website_symlinks_txt"] = 'Website symlinks'; +$wb['website_symlinks_rel_txt'] = 'Make relative symlinks'; +$wb["website_basedir_txt"] = 'Website basedir'; +$wb["website_autoalias_txt"] = 'Website auto alias'; +$wb["website_autoalias_note_txt"] = 'Placeholders:'; +$wb["vhost_conf_dir_txt"] = 'Vhost config dir'; +$wb["vhost_conf_enabled_dir_txt"] = 'Vhost config enabled dir'; +$wb["getmail_config_dir_txt"] = 'Getmail config dir'; +$wb["fastcgi_starter_path_txt"] = 'FastCGI starter path'; +$wb["fastcgi_starter_script_txt"] = 'FastCGI starter script'; +$wb["fastcgi_alias_txt"] = 'FastCGI Alias'; +$wb["fastcgi_phpini_path_txt"] = 'FastCGI php.ini Path'; +$wb["fastcgi_children_txt"] = 'FastCGI Children'; +$wb["fastcgi_max_requests_txt"] = 'FastCGI max. Requests'; +$wb["fastcgi_bin_txt"] = 'FastCGI Bin'; +$wb["module_txt"] = 'Module'; +$wb["maildir_path_txt"] = 'Maildir Path'; +$wb['maildir_format_txt'] = 'Maildir Format'; +$wb["homedir_path_txt"] = 'Homedir Path'; +$wb["dkim_path_txt"] = 'DKIM Path'; +$wb["mailuser_uid_txt"] = 'Mailuser UID'; +$wb["mailuser_gid_txt"] = 'Mailuser GID'; +$wb["mailuser_name_txt"] = 'Mailuser Name'; +$wb["mailuser_group_txt"] = 'Mailuser Group'; +$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 User'; +$wb["relayhost_password_txt"] = 'Relayhost Password'; +$wb['reject_sender_login_mismatch_txt'] = 'Reject sender and login mismatch'; +$wb["mailbox_size_limit_txt"] = 'Mailbox Size Limit'; +$wb["message_size_limit_txt"] = 'Message Size Limit'; +$wb["ip_address_txt"] = 'IP Address'; +$wb["netmask_txt"] = 'Netmask'; +$wb["gateway_txt"] = 'Gateway'; +$wb["hostname_txt"] = 'Hostname'; +$wb["nameservers_txt"] = 'Nameservers'; +$wb["auto_network_configuration_txt"] = 'Network Configuration'; +$wb["ip_address_error_wrong"] = 'Invalid IP address format.'; +$wb["netmask_error_wrong"] = 'Invalid Netmask format.'; +$wb["gateway_error_wrong"] = 'Invalid Gateway format.'; +$wb["hostname_error_empty"] = 'Hostname is empty.'; +$wb["hostname_error_regex"] = 'Invalid Hostname.'; +$wb["nameservers_error_empty"] = 'Nameserver is empty.'; +$wb["config_dir_txt"] = 'Config directory'; +$wb["init_script_txt"] = 'Cron init script name'; +$wb["crontab_dir_txt"] = 'Path for individual crontabs'; +$wb["wget_txt"] = 'Path to wget program'; +$wb["web_user_txt"] = 'Apache user'; +$wb["web_group_txt"] = 'Apache group'; +$wb["security_level_txt"] = 'Security level'; +$wb["loglevel_txt"] = 'Loglevel'; +$wb["apps_vhost_port_txt"] = 'Apps-vhost port'; +$wb["apps_vhost_ip_txt"] = 'Apps-vhost IP'; +$wb["apps_vhost_servername_txt"] = 'Apps-vhost Domain'; +$wb["bind_user_txt"] = 'BIND User'; +$wb["bind_group_txt"] = 'BIND Group'; +$wb["bind_zonefiles_dir_txt"] = 'BIND zonefiles directory'; +$wb["named_conf_path_txt"] = 'BIND named.conf path'; +$wb["bind_user_error_empty"] = 'BIND user is empty.'; +$wb["bind_group_error_empty"] = 'BIND group is empty.'; +$wb["bind_zonefiles_dir_error_empty"] = 'BIND zonefiles directory is empty.'; +$wb["named_conf_path_error_empty"] = 'BIND named.conf path is empty.'; +$wb["named_conf_local_path_error_empty"] = 'BIND named.conf.local path is empty.'; +$wb["mail_filter_syntax_txt"] = 'Mailfilter Syntax'; +$wb["pop3_imap_daemon_txt"] = 'POP3/IMAP Daemon'; +$wb["php_open_basedir_txt"] = 'PHP open_basedir'; +$wb["php_open_basedir_error_empty"] = 'PHP open_basedir is empty.'; +$wb["htaccess_allow_override_txt"] = '.htaccess AllowOverride'; +$wb["htaccess_allow_override_error_empty"] = '.htaccess AllowOverride is empty.'; +$wb["awstats_conf_dir_txt"] = 'awstats conf folder'; +$wb["awstats_data_dir_txt"] = 'awstats data folder'; +$wb["awstats_pl_txt"] = 'awstats.pl script'; +$wb["awstats_buildstaticpages_pl_txt"] = 'awstats_buildstaticpages.pl script'; +$wb["backup_dir_txt"] = 'Backup directory'; +$wb["backup_tmp_txt"] = 'Backup tmp directory for zip'; +$wb["named_conf_local_path_txt"] = 'BIND named.conf.local path'; +$wb["php_ini_path_cgi_txt"] = 'CGI php.ini path'; +$wb["php_ini_path_apache_txt"] = 'Apache php.ini path'; +$wb["check_apache_config_txt"] = 'Test apache configuration on restart'; +$wb["network_config_warning_txt"] = 'The network configuration option is only available for Debian and Ubuntu Servers. Do not enable this option if your network interface is not eth0.'; +$wb["CA_path_txt"] = 'CA Path'; +$wb["CA_pass_txt"] = 'CA passphrase'; +$wb["fastcgi_config_syntax_txt"] = 'FastCGI config syntax'; +$wb["backup_mode_txt"] = 'Backup mode'; +$wb["backup_mode_userzip"] = 'Backup web files owned by web user as zip'; +$wb["backup_mode_rootgz"] = 'Backup all files in web directory as root user'; +$wb['tmpdir_path_error_empty'] = 'tmp-dir Path is empty.'; +$wb['tmpdir_path_error_regex'] = 'Invalid tmp-dir path.'; +$wb["backup_time_txt"] = 'Backup time'; +$wb["server_type_txt"] = 'Server Type'; +$wb["nginx_vhost_conf_dir_txt"] = 'Nginx Vhost config dir'; +$wb["nginx_vhost_conf_enabled_dir_txt"] = 'Nginx Vhost config enabled dir'; +$wb["nginx_user_txt"] = 'Nginx user'; +$wb["nginx_group_txt"] = 'Nginx group'; +$wb["nginx_cgi_socket_txt"] = 'Nginx CGI Socket'; +$wb["backup_dir_error_empty"] = 'Backup directory is empty.'; +$wb["maildir_path_error_empty"] = 'Maildir Path is empty.'; +$wb["homedir_path_error_empty"] = 'Homedir Path is empty.'; +$wb["mailuser_uid_error_empty"] = 'Mailuser UID is empty.'; +$wb["mailuser_gid_error_empty"] = 'Mailuser GID is empty.'; +$wb["mailuser_name_error_empty"] = 'Mailuser Name is empty.'; +$wb["mailuser_group_error_empty"] = 'Mailuser Group is empty.'; +$wb["getmail_config_dir_error_empty"] = 'Getmail config dir is empty.'; +$wb["website_basedir_error_empty"] = 'Website basedir is empty.'; +$wb["website_path_error_empty"] = 'Website path is empty.'; +$wb["website_symlinks_error_empty"] = 'Website symlinks is empty.'; +$wb["vhost_conf_dir_error_empty"] = 'Vhost config dir is empty.'; +$wb["vhost_conf_enabled_dir_error_empty"] = 'Vhost config enabled dir is empty.'; +$wb["nginx_vhost_conf_dir_error_empty"] = 'Nginx Vhost config dir is empty.'; +$wb["nginx_vhost_conf_enabled_dir_error_empty"] = 'Nginx Vhost config enabled dir is empty.'; +$wb["apache_user_error_empty"] = 'Apache user is empty.'; +$wb["apache_group_error_empty"] = 'Apache group is empty.'; +$wb["nginx_user_error_empty"] = 'Nginx user is empty.'; +$wb["nginx_group_error_empty"] = 'Nginx group is empty.'; +$wb["php_ini_path_apache_error_empty"] = 'Apache php.ini path is empty.'; +$wb["php_ini_path_cgi_error_empty"] = 'CGI php.ini path is empty.'; +$wb["nginx_cgi_socket_empty"] = 'Nginx CGI Socket is empty.'; +$wb["apps_vhost_port_error_empty"] = 'Apps-vhost port is empty.'; +$wb["apps_vhost_ip_error_empty"] = 'Apps-vhost IP is empty.'; +$wb["fastcgi_starter_path_error_empty"] = 'FastCGI starter path is empty.'; +$wb["fastcgi_starter_script_error_empty"] = 'FastCGI starter script is empty.'; +$wb["fastcgi_alias_error_empty"] = 'FastCGI Alias is empty.'; +$wb["fastcgi_phpini_path_error_empty"] = 'FastCGI php.ini Path is empty.'; +$wb["fastcgi_children_error_empty"] = 'FastCGI Children is empty.'; +$wb["fastcgi_max_requests_error_empty"] = 'FastCGI max. Requests is empty.'; +$wb["fastcgi_bin_error_empty"] = 'FastCGI Bin is empty.'; +$wb["jailkit_chroot_home_error_empty"] = 'Jailkit chroot home is empty.'; +$wb["jailkit_chroot_app_sections_error_empty"] = 'Jailkit chroot app sections is empty.'; +$wb["jailkit_chroot_app_programs_error_empty"] = 'Jailkit chrooted applications is empty.'; +$wb["jailkit_chroot_cron_programs_error_empty"] = 'Jailkit cron chrooted applications is empty.'; +$wb["vlogger_config_dir_error_empty"] = 'Config directory is empty.'; +$wb["cron_init_script_error_empty"] = 'Cron init script name is empty.'; +$wb["crontab_dir_error_empty"] = 'Path for individual crontabs is empty.'; +$wb["cron_wget_error_empty"] = 'Path to wget program is empty.'; +$wb["php_fpm_init_script_txt"] = 'PHP-FPM init script'; +$wb["php_fpm_init_script_error_empty"] = 'PHP-FPM init script is empty.'; +$wb["php_fpm_ini_path_txt"] = 'PHP-FPM php.ini path'; +$wb["php_fpm_ini_path_error_empty"] = 'PHP-FPM php.ini path is empty.'; +$wb["php_fpm_pool_dir_txt"] = 'PHP-FPM pool directory'; +$wb["php_fpm_pool_dir_error_empty"] = 'PHP-FPM pool directory is empty.'; +$wb["php_fpm_start_port_txt"] = 'PHP-FPM start port'; +$wb["php_fpm_start_port_error_empty"] = 'PHP-FPM start port is empty.'; +$wb["php_fpm_socket_dir_txt"] = 'PHP-FPM socket directory'; +$wb["php_fpm_socket_dir_error_empty"] = 'PHP-FPM socket directory is empty.'; +$wb["try_rescue_txt"] = 'Enable service monitoring and restart on failure'; +$wb["do_not_try_rescue_httpd_txt"] = 'Disable HTTPD monitoring'; +$wb["do_not_try_rescue_mongodb_txt"] = 'Disable MongoDB monitoring'; +$wb["do_not_try_rescue_mysql_txt"] = 'Disable MySQL monitoring'; +$wb["do_not_try_rescue_mail_txt"] = 'Disable Email monitoring'; +$wb["rescue_description_txt"] = '<b>Information:</b> If you want to shut down mysql you have to select the "Disable MySQL monitor" checkbox and then wait 2-3 minutes.<br>If you do not wait 2-3 minutes, rescue will try to restart mysql!'; +$wb["enable_sni_txt"] = 'Enable SNI'; +$wb["set_folder_permissions_on_update_txt"] = 'Set folder permissions on update'; +$wb["add_web_users_to_sshusers_group_txt"] = 'Add web users to -sshusers- group'; +$wb["connect_userid_to_webid_txt"] = 'Connect Linux userid to webid'; +$wb["connect_userid_to_webid_start_txt"] = 'Start ID for userid/webid connect'; +$wb["realtime_blackhole_list_txt"] = 'Real-time Blackhole List'; +$wb["realtime_blackhole_list_note_txt"] = '(Separate RBL\'s with commas)'; +$wb["ssl_settings_txt"] = 'SSL Settings'; +$wb["permissions_txt"] = 'Permissions'; +$wb["php_settings_txt"] = 'PHP Settings'; +$wb["apps_vhost_settings_txt"] = 'Apps Vhost Settings'; +$wb["awstats_settings_txt"] = 'AWStats Settings'; +$wb["firewall_txt"] = 'Firewall'; +$wb["mailbox_quota_stats_txt"] = 'Mailbox quota statistics'; +$wb["enable_ip_wildcard_txt"] = 'Enable IP wildcard (*)'; +$wb["web_folder_protection_txt"] = 'Make web folders immutable (extended attributes)'; +$wb["overtraffic_notify_admin_txt"] = 'Send overtraffic notification to admin'; +$wb["overtraffic_notify_client_txt"] = 'Send overtraffic notification to client'; +$wb["rbl_error_regex"] = 'Please specify valid RBL hostnames.'; +$wb["overquota_notify_admin_txt"] = 'Send quota warnings to admin'; +$wb["overquota_notify_client_txt"] = 'Send quota warnings to client'; +$wb["overquota_notify_onok_txt"] = 'Send quota ok message to client'; +$wb['overquota_notify_freq_txt'] = 'Send quota warning each X days'; +$wb['overquota_notify_freq_note_txt'] = '0 = send message just once, no repeated messages'; +$wb['admin_notify_events_txt'] = 'Send email to admin starting with the following level'; +$wb['no_notifications_txt'] = 'No Notifications'; +$wb['monit_url_txt'] = 'Monit URL'; +$wb['monit_user_txt'] = 'Monit User'; +$wb['monit_password_txt'] = 'Monit Password'; +$wb['monit_url_error_regex'] = 'Invalid Monit URL'; +$wb['monit_url_note_txt'] = 'Placeholder:'; +$wb['munin_url_txt'] = 'Munin URL'; +$wb['munin_user_txt'] = 'Munin User'; +$wb['munin_password_txt'] = 'Munin Password'; +$wb['munin_url_error_regex'] = 'Invalid Munin URL'; +$wb['munin_url_note_txt'] = 'Placeholder:'; +$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_is_mount_txt'] = 'Backup directory is a mount?'; +$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['monitor_system_updates_txt'] = 'Check for Linux updates'; +$wb['php_handler_txt'] = "Default PHP Handler"; +$wb['php_fpm_incron_reload_txt'] = 'Install incron trigger file to reload PHP-FPM'; +$wb['disabled_txt'] = 'Disabled'; +$wb['dkim_strength_txt'] = 'DKIM strength'; +$wb['monitor_system_updates_txt'] = 'Check for Linux updates'; +$wb['invalid_apache_user_txt'] = 'Invalid apache user.'; +$wb['invalid_apache_group_txt'] = 'Invalid apache group.'; +$wb['backup_dir_error_regex'] = 'Invalid backup directory.'; +$wb['maildir_path_error_regex'] = 'Invalid maildir path.'; +$wb['homedir_path_error_regex'] = 'Invalid homedir path.'; +$wb['mailuser_name_error_regex'] = 'Invalid mailuser name.'; +$wb['mailuser_group_name_error_regex'] = 'Invalid mailuser group name.'; +$wb['mailuser_uid_error_range'] = 'Mailuser uid must be >= 2000'; +$wb['mailuser_gid_error_range'] = 'Mailuser gid must be >= 2000'; +$wb['getmail_config_dir_error_regex'] = 'Invalid getmail config directory.'; +$wb['website_basedir_error_regex'] = 'Invalid website basedir path, min. length 5 chars.'; +$wb['website_symlinks_error_regex'] = 'Invalid website symlinks.'; +$wb['vhost_conf_dir_error_regex'] = 'Invalid vhost config directory.'; +$wb['vhost_conf_enabled_dir_error_regex'] = 'Invalid vhost conf enabled directory.'; +$wb['nginx_vhost_conf_dir_error_regex'] = 'Invalid nginx config directory.'; +$wb['nginx_vhost_conf_enabled_dir_error_regex'] = 'Invalid nginx conf enabled directory.'; +$wb['ca_path_error_regex'] = 'Invalid CA path.'; +$wb['invalid_nginx_user_txt'] = 'Invalid nginx user.'; +$wb['invalid_nginx_group_txt'] = 'Invalid nginx group.'; +$wb['php_ini_path_apache_error_regex'] = 'Invalid apache php.ini path.'; +$wb['php_ini_path_cgi_error_regex'] = 'Invalid cgi php.ini path.'; +$wb['php_fpm_init_script_error_regex'] = 'Invalid php-fpm init script.'; +$wb['php_fpm_ini_path_error_regex'] = 'Invalid php-fpm ini path.'; +$wb['php_fpm_pool_dir_error_regex'] = 'Invalid php-fpm pool directory.'; +$wb['php_fpm_socket_dir_error_regex'] = 'Invalid php-fpm socket directory.'; +$wb['php_open_basedir_error_regex'] = 'Invalid php open_basedir.'; +$wb['awstats_data_dir_empty'] = 'awstats data directory is empty'; +$wb['awstats_data_dir_error_regex'] = 'Invalid awstats data directory.'; +$wb['awstats_pl_empty'] = 'awstats.pl setting is empty.'; +$wb['awstats_pl_error_regex'] = 'Invalid awstats.pl path.'; +$wb['awstats_buildstaticpages_pl_empty'] = 'awstats_buildstaticpages.pl is empty'; +$wb['awstats_buildstaticpages_pl_error_regex'] = 'Invalid awstats_buildstaticpages.pl path.'; +$wb['invalid_bind_user_txt'] = 'Invalid BIND user.'; +$wb['invalid_bind_group_txt'] = 'Invalid BIND group.'; +$wb['bind_zonefiles_dir_error_regex'] = 'Invalid BIND zonefiles directory.'; +$wb['named_conf_path_error_regex'] = 'Invalid named.conf path.'; +$wb['named_conf_local_path_error_regex'] = 'Invalid named.conf.local path.'; +$wb['fastcgi_starter_path_error_regex'] = 'Invalid fastcgi starter path.'; +$wb['fastcgi_starter_script_error_regex'] = 'Invalid fastcgi starter script.'; +$wb['fastcgi_alias_error_regex'] = 'Invalid fastcgi alias.'; +$wb['fastcgi_phpini_path_error_regex'] = 'Invalid fastcgi path.'; +$wb['fastcgi_bin_error_regex'] = 'Invalid fastcgi bin.'; +$wb['jailkit_chroot_home_error_regex'] = 'Invalid jaikit chroot home.'; +$wb['jailkit_chroot_app_sections_error_regex'] = 'Invalid jaikit chroot sections.'; +$wb['jailkit_chroot_app_programs_error_regex'] = 'Invalid jaikit chroot app programs.'; +$wb['jailkit_chroot_cron_programs_error_regex'] = 'Invalid jaikit chroot cron programs.'; +$wb['vlogger_config_dir_error_regex'] = 'Invalid vlogger config dir.'; +$wb['cron_init_script_error_regex'] = 'Invalid cron init script.'; +$wb['crontab_dir_error_regex'] = 'Invalid crontab directory.'; +$wb['cron_wget_error_regex'] = 'Invalid cron wget path.'; +$wb['network_filesystem_txt'] = 'Network Filesystem'; +$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'; +$wb['enable_spdy_txt'] = 'Makes SPDY/HTTP2 available'; +$wb['web_settings_txt'] = 'Web Server'; +$wb['xmpp_server_txt'] = 'XMPP Server'; +$wb['xmpp_use_ipv6_txt'] = 'Use IPv6'; +$wb['xmpp_bosh_max_inactivity_txt'] = 'Max. BOSH inactivity time'; +$wb['xmpp_bosh_timeout_range_wrong'] = 'Please enter a bosh timeout range between 15 - 360'; +$wb['xmpp_module_saslauth'] = 'saslauth'; +$wb['xmpp_server_admins_txt'] = 'Server Admins (JIDs)'; +$wb['xmpp_modules_enabled_txt'] = 'Serverwide enabled plugins (one per line)'; +$wb['xmpp_ports_txt'] = 'Component ports'; +$wb['xmpp_port_http_txt'] = 'HTTP'; +$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['skip_le_check_txt'] = 'Skip Lets Encrypt Check'; +$wb['migration_mode_txt'] = 'Server Migration Mode'; +$wb['nginx_enable_pagespeed_txt'] = 'Makes Pagespeed available'; +$wb['logging_txt'] = 'Store website access and error logs'; +$wb['logging_desc_txt'] = 'Use Tools > Resync to apply changes to existing sites. For Apache, access and error log can be anonymized. For nginx, only the access log is anonymized, the error log will contain IP addresses.'; +$wb['log_retention_txt'] = 'Log retention (days)'; +$wb['log_retention_error_ispositive'] = 'Log retention must be a number > 0'; +$wb['php_default_name_txt'] = 'Description Default PHP-Version'; +$wb['php_default_name_error_empty'] = 'Description Default PHP-Version must not be empty'; +$wb['error_mailbox_message_size_txt'] = 'Mailbox size must be larger or equal to message size'; +$wb['php_fpm_reload_mode_txt'] = 'PHP-FPM reload mode'; +?> diff --git a/interface/web/admin/lib/lang/en_server_config.lng.rej b/interface/web/admin/lib/lang/en_server_config.lng.rej new file mode 100644 index 0000000000..1460249765 --- /dev/null +++ b/interface/web/admin/lib/lang/en_server_config.lng.rej @@ -0,0 +1,11 @@ +--- interface/web/admin/lib/lang/en_server_config.lng ++++ interface/web/admin/lib/lang/en_server_config.lng +@@ -296,4 +296,7 @@ $wb['log_retention_error_ispositive'] = 'Log retention must be a number > 0'; + $wb['php_default_name_txt'] = 'Description Default PHP-Version'; + $wb['php_default_name_error_empty'] = 'Description Default PHP-Version must not be empty'; + $wb['error_mailbox_message_size_txt'] = 'Mailbox size must be larger or equal to message size'; +-?> ++$wb['content_filter_txt'] = 'Content Filter'; ++$wb['rspamd_url_txt'] = 'Rspamd URL'; ++$wb['rspamd_user_txt'] = 'Rspamd User'; ++$wb['rspamd_password_txt'] = 'Rspamd Password'; \ No newline at end of file diff --git a/interface/web/admin/server_config_edit.php b/interface/web/admin/server_config_edit.php index 523671c0c7..8a7cd770a3 100644 --- a/interface/web/admin/server_config_edit.php +++ b/interface/web/admin/server_config_edit.php @@ -52,6 +52,21 @@ $app->load('tform_actions'); class page_action extends tform_actions { + function onShow() { + global $app, $conf; + + // get the config + $app->uses('getconf'); + $web_config = $app->getconf->get_server_config($conf['server_id'], 'web'); + + if($web_config['server_type'] == 'nginx'){ + unset($app->tform->formDef["tabs"]["fastcgi"]); + unset($app->tform->formDef["tabs"]["vlogger"]); + } + + parent::onShow(); + } + function onSubmit() { global $app, $conf; @@ -73,11 +88,17 @@ class page_action extends tform_actions { $server_id = $this->id; $this->dataRecord = $app->getconf->get_server_config($server_id, $section); + + if($section == 'mail'){ + $server_config = $app->getconf->get_server_config($server_id, 'server'); + $rspamd_url = 'https://'.$server_config['hostname'].':8081/rspamd/'; + } } $record = $app->tform->getHTML($this->dataRecord, $this->active_tab, 'EDIT'); $record['id'] = $this->id; + if(isset($rspamd_url)) $record['rspamd_url'] = $rspamd_url; $app->tpl->setVar($record); } @@ -112,6 +133,14 @@ class page_action extends tform_actions { } } + if($section === 'mail') { + if(isset($server_config_array['mail']['rspamd_available']) && $server_config_array['mail']['rspamd_available'] === 'y') { + $this->dataRecord['rspamd_available'] = 'y'; + } else { + $this->dataRecord['rspamd_available'] = 'n'; + } + } + if($app->tform->errorMessage == '') { $server_config_array[$section] = $app->tform->encode($this->dataRecord, $section); $server_config_str = $app->ini_parser->get_ini_string($server_config_array); @@ -123,6 +152,48 @@ class page_action extends tform_actions { } } + function onAfterUpdate() { + global $app; + + if(isset($this->dataRecord['content_filter'])){ + $app->uses('ini_parser'); + $old_config = $app->ini_parser->parse_ini_string(stripslashes($this->oldDataRecord['config'])); + if($this->dataRecord['content_filter'] == 'rspamd' && $old_config['mail']['content_filter'] != $this->dataRecord['content_filter']){ + + $spamfilter_users = $app->db->queryAllRecords("SELECT * FROM spamfilter_users WHERE server_id = ?", intval($this->id)); + if(is_array($spamfilter_users) && !empty($spamfilter_users)){ + foreach($spamfilter_users as $spamfilter_user){ + $app->db->datalogUpdate('spamfilter_users', $spamfilter_user, 'id', $spamfilter_user["id"], true); + } + } + + $spamfilter_wblists = $app->db->queryAllRecords("SELECT * FROM spamfilter_wblist WHERE server_id = ?", intval($this->id)); + if(is_array($spamfilter_wblists) && !empty($spamfilter_wblists)){ + foreach($spamfilter_wblists as $spamfilter_wblist){ + $app->db->datalogUpdate('spamfilter_wblist', $spamfilter_wblist, 'wblist_id', $spamfilter_wblist["wblist_id"], true); + } + } + + $mail_users = $app->db->queryAllRecords("SELECT * FROM mail_user WHERE server_id = ? AND (autoresponder = 'y' OR move_junk = 'y')", intval($this->id)); + if(is_array($mail_users) && !empty($mail_users)){ + foreach($mail_users as $mail_user){ + if($mail_user['autoresponder'] == 'y'){ + $mail_user['autoresponder'] = 'n'; + $app->db->datalogUpdate('mail_user', $mail_user, 'mailuser_id', $mail_user["mailuser_id"], true); + $mail_user['autoresponder'] = 'y'; + $app->db->datalogUpdate('mail_user', $mail_user, 'mailuser_id', $mail_user["mailuser_id"], true); + } else { + $mail_user['move_junk'] = 'n'; + $app->db->datalogUpdate('mail_user', $mail_user, 'mailuser_id', $mail_user["mailuser_id"], true); + $mail_user['move_junk'] = 'y'; + $app->db->datalogUpdate('mail_user', $mail_user, 'mailuser_id', $mail_user["mailuser_id"], true); + } + + } + } + } + } + } } $app->tform_actions = new page_action; diff --git a/interface/web/admin/templates/server_config_mail_edit.htm b/interface/web/admin/templates/server_config_mail_edit.htm index c1531c654a..6ba37104ef 100644 --- a/interface/web/admin/templates/server_config_mail_edit.htm +++ b/interface/web/admin/templates/server_config_mail_edit.htm @@ -44,6 +44,20 @@ {tmpl_var name='mail_filter_syntax'} </select></div> </div> + <div class="form-group"> + <label class="col-sm-3 control-label">{tmpl_var name='content_filter_txt'}</label> + <div class="col-sm-9"><select name="content_filter" id="content_filter" class="form-control"> + {tmpl_var name='content_filter'} + </select></div> + </div> + <div class="form-group rspamd"> + <label for="rspamd_url" class="col-sm-3 control-label col-text">{tmpl_var name='rspamd_url_txt'}</label> + <div class="col-sm-6"><a href="{tmpl_var name='rspamd_url'}" target="_blank">{tmpl_var name='rspamd_url'}</a><a href="{tmpl_var name='rspamd_url'}" target="_blank" class="btn btn-default formbutton-default formbutton-narrow" style="margin-left:20px"><span class="icon icon-link"></span></a></div> + </div> + <div class="form-group rspamd"> + <label for="rspamd_password" class="col-sm-3 control-label">{tmpl_var name='rspamd_password_txt'}</label> + <div class="col-sm-9"><input type="text" name="rspamd_password" id="rspamd_password" value="{tmpl_var name='rspamd_password'}" class="form-control" /></div> + </div> <div class="form-group"> <label for="mailuser_uid" class="col-sm-3 control-label">{tmpl_var name='mailuser_uid_txt'}</label> <div class="col-sm-9"><input type="text" name="mailuser_uid" id="mailuser_uid" value="{tmpl_var name='mailuser_uid'}" class="form-control" /></div></div> @@ -125,3 +139,23 @@ <button class="btn btn-default formbutton-success" type="button" value="{tmpl_var name='btn_save_txt'}" data-submit-form="pageForm" data-form-action="admin/server_config_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="admin/server_config_list.php">{tmpl_var name='btn_cancel_txt'}</button> </div></div> +<script> + if($('#rspamd_password').val() == ''){ + var pword = password(8, false, 1); + jQuery('#rspamd_password').val(pword); + } + + if($('#content_filter').val() === 'rspamd'){ + $('.rspamd').show(); + } else { + $('.rspamd').hide(); + } + + $('#content_filter').change(function(){ + if($(this).val() === 'rspamd'){ + $('.rspamd').show(); + } else { + $('.rspamd').hide(); + } + }); +</script> diff --git a/interface/web/mail/form/spamfilter_policy.tform.php b/interface/web/mail/form/spamfilter_policy.tform.php index 31e8b8092a..d6ecef9bbc 100644 --- a/interface/web/mail/form/spamfilter_policy.tform.php +++ b/interface/web/mail/form/spamfilter_policy.tform.php @@ -304,6 +304,42 @@ $form["tabs"]['taglevel'] = array ( 'width' => '30', 'maxlength' => '255' ), + 'rspamd_greylisting' => array ( + 'datatype' => 'VARCHAR', + 'formtype' => 'CHECKBOX', + 'default' => 'y', + 'value' => array(0 => 'n', 1 => 'y') + ), + 'rspamd_spam_greylisting_level' => array ( + 'datatype' => 'DOUBLE', + 'formtype' => 'TEXT', + 'default' => '0', + 'value' => '', + 'width' => '10', + 'maxlength' => '255' + ), + 'rspamd_spam_tag_level' => array ( + 'datatype' => 'DOUBLE', + 'formtype' => 'TEXT', + 'default' => '0', + 'value' => '', + 'width' => '10', + 'maxlength' => '255' + ), + 'rspamd_spam_tag_method' => array ( + 'datatype' => 'VARCHAR', + 'formtype' => 'SELECT', + 'default' => 'rewrite_subject', + 'value' => array('add_header' => $app->lng('add_header_txt'), 'rewrite_subject' => $app->lng('rewrite_subject_txt')) + ), + 'rspamd_spam_kill_level' => array ( + 'datatype' => 'DOUBLE', + 'formtype' => 'TEXT', + 'default' => '0', + 'value' => '', + 'width' => '10', + 'maxlength' => '255' + ), //################################# // ENDE Datatable fields //################################# diff --git a/interface/web/mail/form/spamfilter_policy.tform.php.orig b/interface/web/mail/form/spamfilter_policy.tform.php.orig new file mode 100644 index 0000000000..31e8b8092a --- /dev/null +++ b/interface/web/mail/form/spamfilter_policy.tform.php.orig @@ -0,0 +1,496 @@ +<?php + +/* + Form Definition + + Tabledefinition + + Datatypes: + - INTEGER (Forces the input to Int) + - DOUBLE + - CURRENCY (Formats the values to currency notation) + - VARCHAR (no format check, maxlength: 255) + - TEXT (no format check) + - DATE (Dateformat, automatic conversion to timestamps) + + Formtype: + - TEXT (Textfield) + - TEXTAREA (Textarea) + - PASSWORD (Password textfield, input is not shown when edited) + - SELECT (Select option field) + - RADIO + - CHECKBOX + - CHECKBOXARRAY + - FILE + + VALUE: + - Wert oder Array + + Hint: + The ID field of the database table is not part of the datafield definition. + The ID field must be always auto incement (int or bigint). + + +*/ + +$form["title"] = "Spamfilter policy"; +$form["description"] = ""; +$form["name"] = "spamfilter_policy"; +$form["action"] = "spamfilter_policy_edit.php"; +$form["db_table"] = "spamfilter_policy"; +$form["db_table_idx"] = "id"; +$form["db_history"] = "yes"; +$form["tab_default"] = "policy"; +$form["list_default"] = "spamfilter_policy_list.php"; +$form["auth"] = 'yes'; // yes / no + +$form["auth_preset"]["userid"] = 0; // 0 = id of the user, > 0 id must match with id of current user +$form["auth_preset"]["groupid"] = 0; // 0 = default groupid of the user, > 0 id must match with groupid of current user +$form["auth_preset"]["perm_user"] = 'riud'; //r = read, i = insert, u = update, d = delete +$form["auth_preset"]["perm_group"] = 'riud'; //r = read, i = insert, u = update, d = delete +$form["auth_preset"]["perm_other"] = 'r'; //r = read, i = insert, u = update, d = delete + +$form["tabs"]['policy'] = array ( + 'title' => "Policy", + 'width' => 100, + 'template' => "templates/spamfilter_policy_edit.htm", + 'fields' => array ( + //################################# + // Begin Datatable fields + //################################# + 'policy_name' => array ( + 'datatype' => 'VARCHAR', + 'formtype' => 'TEXT', + 'default' => '', + 'validators' => array ( 0 => array ( 'type' => 'NOTEMPTY', + 'errmsg'=> 'policyname_error_notempty'), + ), + 'filters' => array( + 0 => array( 'event' => 'SAVE', + 'type' => 'STRIPTAGS'), + 1 => array( 'event' => 'SAVE', + 'type' => 'STRIPNL') + ), + 'value' => '', + 'width' => '30', + 'maxlength' => '255' + ), + 'virus_lover' => array ( + 'datatype' => 'VARCHAR', + 'formtype' => 'SELECT', + 'default' => 'N', + 'value' => array('N' => 'No', 'Y' => 'Yes') + ), + 'spam_lover' => array ( + 'datatype' => 'VARCHAR', + 'formtype' => 'SELECT', + 'default' => 'N', + 'value' => array('N' => 'No', 'Y' => 'Yes') + ), + 'banned_files_lover' => array ( + 'datatype' => 'VARCHAR', + 'formtype' => 'SELECT', + 'default' => 'N', + 'value' => array('N' => 'No', 'Y' => 'Yes') + ), + 'bad_header_lover' => array ( + 'datatype' => 'VARCHAR', + 'formtype' => 'SELECT', + 'default' => 'N', + 'value' => array('N' => 'No', 'Y' => 'Yes') + ), + 'bypass_virus_checks' => array ( + 'datatype' => 'VARCHAR', + 'formtype' => 'SELECT', + 'default' => 'N', + 'value' => array('N' => 'No', 'Y' => 'Yes') + ), + 'bypass_banned_checks' => array ( + 'datatype' => 'VARCHAR', + 'formtype' => 'SELECT', + 'default' => 'N', + 'value' => array('N' => 'No', 'Y' => 'Yes') + ), + 'bypass_header_checks' => array ( + 'datatype' => 'VARCHAR', + 'formtype' => 'SELECT', + 'default' => 'N', + 'value' => array('N' => 'No', 'Y' => 'Yes') + ), + //################################# + // ENDE Datatable fields + //################################# + ) +); + + +$form["tabs"]['quarantine'] = array ( + 'title' => "Quarantine", + 'width' => 100, + 'template' => "templates/spamfilter_quarantine_edit.htm", + 'fields' => array ( + //################################# + // Begin Datatable fields + //################################# + 'virus_quarantine_to' => array ( + 'datatype' => 'VARCHAR', + 'formtype' => 'TEXT', + 'filters' => array( + 0 => array( 'event' => 'SAVE', + 'type' => 'STRIPTAGS'), + 1 => array( 'event' => 'SAVE', + 'type' => 'STRIPNL') + ), + 'default' => '', + 'value' => '', + 'width' => '30', + 'maxlength' => '255' + ), + 'spam_quarantine_to' => array ( + 'datatype' => 'VARCHAR', + 'formtype' => 'TEXT', + 'filters' => array( + 0 => array( 'event' => 'SAVE', + 'type' => 'STRIPTAGS'), + 1 => array( 'event' => 'SAVE', + 'type' => 'STRIPNL') + ), + 'default' => '', + 'value' => '', + 'width' => '30', + 'maxlength' => '255' + ), + 'banned_quarantine_to' => array ( + 'datatype' => 'VARCHAR', + 'formtype' => 'TEXT', + 'filters' => array( + 0 => array( 'event' => 'SAVE', + 'type' => 'STRIPTAGS'), + 1 => array( 'event' => 'SAVE', + 'type' => 'STRIPNL') + ), + 'default' => '', + 'value' => '', + 'width' => '30', + 'maxlength' => '255' + ), + 'bad_header_quarantine_to' => array ( + 'datatype' => 'VARCHAR', + 'formtype' => 'TEXT', + 'filters' => array( + 0 => array( 'event' => 'SAVE', + 'type' => 'STRIPTAGS'), + 1 => array( 'event' => 'SAVE', + 'type' => 'STRIPNL') + ), + 'default' => '', + 'value' => '', + 'width' => '30', + 'maxlength' => '255' + ), + 'clean_quarantine_to' => array ( + 'datatype' => 'VARCHAR', + 'formtype' => 'TEXT', + 'filters' => array( + 0 => array( 'event' => 'SAVE', + 'type' => 'STRIPTAGS'), + 1 => array( 'event' => 'SAVE', + 'type' => 'STRIPNL') + ), + 'default' => '', + 'value' => '', + 'width' => '30', + 'maxlength' => '255' + ), + 'other_quarantine_to' => array ( + 'datatype' => 'VARCHAR', + 'formtype' => 'TEXT', + 'filters' => array( + 0 => array( 'event' => 'SAVE', + 'type' => 'STRIPTAGS'), + 1 => array( 'event' => 'SAVE', + 'type' => 'STRIPNL') + ), + 'default' => '', + 'value' => '', + 'width' => '30', + 'maxlength' => '255' + ), + //################################# + // ENDE Datatable fields + //################################# + ) +); + +$form["tabs"]['taglevel'] = array ( + 'title' => "Tag-Level", + 'width' => 100, + 'template' => "templates/spamfilter_taglevel_edit.htm", + 'fields' => array ( + //################################# + // Begin Datatable fields + //################################# + 'spam_tag_level' => array ( + 'datatype' => 'DOUBLE', + 'formtype' => 'TEXT', + 'default' => '0', + 'value' => '', + 'width' => '10', + 'maxlength' => '255' + ), + 'spam_tag2_level' => array ( + 'datatype' => 'DOUBLE', + 'formtype' => 'TEXT', + 'default' => '0', + 'value' => '', + 'width' => '10', + 'maxlength' => '255' + ), + 'spam_kill_level' => array ( + 'datatype' => 'DOUBLE', + 'formtype' => 'TEXT', + 'default' => '0', + 'value' => '', + 'width' => '10', + 'maxlength' => '255' + ), + 'spam_dsn_cutoff_level' => array ( + 'datatype' => 'DOUBLE', + 'formtype' => 'TEXT', + 'default' => '0', + 'value' => '', + 'width' => '10', + 'maxlength' => '255' + ), + 'spam_quarantine_cutoff_level' => array ( + 'datatype' => 'DOUBLE', + 'formtype' => 'TEXT', + 'default' => '0', + 'value' => '', + 'width' => '10', + 'maxlength' => '255' + ), + 'spam_modifies_subj' => array ( + 'datatype' => 'VARCHAR', + 'formtype' => 'SELECT', + 'default' => 'N', + 'value' => array('N' => 'No', 'Y' => 'Yes') + ), + 'spam_subject_tag' => array ( + 'datatype' => 'VARCHAR', + 'formtype' => 'TEXT', + 'filters' => array( + 0 => array( 'event' => 'SAVE', + 'type' => 'STRIPTAGS'), + 1 => array( 'event' => 'SAVE', + 'type' => 'STRIPNL') + ), + 'default' => '', + 'value' => '', + 'width' => '30', + 'maxlength' => '255' + ), + 'spam_subject_tag2' => array ( + 'datatype' => 'VARCHAR', + 'formtype' => 'TEXT', + 'filters' => array( + 0 => array( 'event' => 'SAVE', + 'type' => 'STRIPTAGS'), + 1 => array( 'event' => 'SAVE', + 'type' => 'STRIPNL') + ), + 'default' => '', + 'value' => '', + 'width' => '30', + 'maxlength' => '255' + ), + //################################# + // ENDE Datatable fields + //################################# + ) +); + + +$form["tabs"]['other'] = array ( + 'title' => "Other", + 'width' => 100, + 'template' => "templates/spamfilter_other_edit.htm", + 'fields' => array ( + //################################# + // Begin Datatable fields + //################################# + 'addr_extension_virus' => array ( + 'datatype' => 'VARCHAR', + 'formtype' => 'TEXT', + 'filters' => array( + 0 => array( 'event' => 'SAVE', + 'type' => 'STRIPTAGS'), + 1 => array( 'event' => 'SAVE', + 'type' => 'STRIPNL') + ), + 'default' => '', + 'value' => '', + 'width' => '30', + 'maxlength' => '255' + ), + 'addr_extension_spam' => array ( + 'datatype' => 'VARCHAR', + 'formtype' => 'TEXT', + 'filters' => array( + 0 => array( 'event' => 'SAVE', + 'type' => 'STRIPTAGS'), + 1 => array( 'event' => 'SAVE', + 'type' => 'STRIPNL') + ), + 'default' => '', + 'value' => '', + 'width' => '30', + 'maxlength' => '255' + ), + 'addr_extension_banned' => array ( + 'datatype' => 'VARCHAR', + 'formtype' => 'TEXT', + 'filters' => array( + 0 => array( 'event' => 'SAVE', + 'type' => 'STRIPTAGS'), + 1 => array( 'event' => 'SAVE', + 'type' => 'STRIPNL') + ), + 'default' => '', + 'value' => '', + 'width' => '30', + 'maxlength' => '255' + ), + 'addr_extension_bad_header' => array ( + 'datatype' => 'VARCHAR', + 'formtype' => 'TEXT', + 'filters' => array( + 0 => array( 'event' => 'SAVE', + 'type' => 'STRIPTAGS'), + 1 => array( 'event' => 'SAVE', + 'type' => 'STRIPNL') + ), + 'default' => '', + 'value' => '', + 'width' => '30', + 'maxlength' => '255' + ), + 'warnvirusrecip' => array ( + 'datatype' => 'VARCHAR', + 'formtype' => 'SELECT', + 'default' => 'N', + 'value' => array('N' => 'No', 'Y' => 'Yes') + ), + 'warnbannedrecip' => array ( + 'datatype' => 'VARCHAR', + 'formtype' => 'SELECT', + 'default' => 'N', + 'value' => array('N' => 'No', 'Y' => 'Yes') + ), + 'warnbadhrecip' => array ( + 'datatype' => 'VARCHAR', + 'formtype' => 'SELECT', + 'default' => 'N', + 'value' => array('N' => 'No', 'Y' => 'Yes') + ), + 'newvirus_admin' => array ( + 'datatype' => 'VARCHAR', + 'formtype' => 'TEXT', + 'filters' => array( + 0 => array( 'event' => 'SAVE', + 'type' => 'STRIPTAGS'), + 1 => array( 'event' => 'SAVE', + 'type' => 'STRIPNL') + ), + 'default' => '', + 'value' => '', + 'width' => '30', + 'maxlength' => '255' + ), + 'virus_admin' => array ( + 'datatype' => 'VARCHAR', + 'formtype' => 'TEXT', + 'filters' => array( + 0 => array( 'event' => 'SAVE', + 'type' => 'STRIPTAGS'), + 1 => array( 'event' => 'SAVE', + 'type' => 'STRIPNL') + ), + 'default' => '', + 'value' => '', + 'width' => '30', + 'maxlength' => '255' + ), + 'banned_admin' => array ( + 'datatype' => 'VARCHAR', + 'formtype' => 'TEXT', + 'filters' => array( + 0 => array( 'event' => 'SAVE', + 'type' => 'STRIPTAGS'), + 1 => array( 'event' => 'SAVE', + 'type' => 'STRIPNL') + ), + 'default' => '', + 'value' => '', + 'width' => '30', + 'maxlength' => '255' + ), + 'bad_header_admin' => array ( + 'datatype' => 'VARCHAR', + 'formtype' => 'TEXT', + 'filters' => array( + 0 => array( 'event' => 'SAVE', + 'type' => 'STRIPTAGS'), + 1 => array( 'event' => 'SAVE', + 'type' => 'STRIPNL') + ), + 'default' => '', + 'value' => '', + 'width' => '30', + 'maxlength' => '255' + ), + 'spam_admin' => array ( + 'datatype' => 'VARCHAR', + 'formtype' => 'TEXT', + 'filters' => array( + 0 => array( 'event' => 'SAVE', + 'type' => 'STRIPTAGS'), + 1 => array( 'event' => 'SAVE', + 'type' => 'STRIPNL') + ), + 'default' => '', + 'value' => '', + 'width' => '30', + 'maxlength' => '255' + ), + + 'message_size_limit' => array ( + 'datatype' => 'INTEGER', + 'formtype' => 'TEXT', + 'default' => '', + 'value' => '', + 'width' => '10', + 'maxlength' => '255' + ), + 'banned_rulenames' => array ( + 'datatype' => 'VARCHAR', + 'formtype' => 'TEXT', + 'filters' => array( + 0 => array( 'event' => 'SAVE', + 'type' => 'STRIPTAGS'), + 1 => array( 'event' => 'SAVE', + 'type' => 'STRIPNL') + ), + 'default' => '', + 'value' => '', + 'width' => '30', + 'maxlength' => '255' + ), + + //################################# + // ENDE Datatable fields + //################################# + ) +); + +?> diff --git a/interface/web/mail/lib/lang/de_spamfilter_policy.lng b/interface/web/mail/lib/lang/de_spamfilter_policy.lng index 32acca4686..04b8274478 100644 --- a/interface/web/mail/lib/lang/de_spamfilter_policy.lng +++ b/interface/web/mail/lib/lang/de_spamfilter_policy.lng @@ -35,4 +35,10 @@ $wb['bad_header_admin_txt'] = 'Bad Header Administrator'; $wb['spam_admin_txt'] = 'SPAM Administrator'; $wb['message_size_limit_txt'] = 'Nachrichtengrößen Limit'; $wb['banned_rulenames_txt'] = 'Banned Richtliniennamen'; -?> +$wb['rspamd_greylisting_txt'] = 'Greylisting nutzen'; +$wb['rspamd_spam_greylisting_level_txt'] = 'Greylisting-Level'; +$wb['rspamd_spam_tag_level_txt'] = 'SPAM-Markierungslevel'; +$wb['rspamd_spam_tag_method_txt'] = 'SPAM-Markierungsmethode'; +$wb['rspamd_spam_kill_level_txt'] = 'SPAM-Reject-Level'; +$wb['btn_save_txt'] = 'Speichern'; +$wb['btn_cancel_txt'] = 'Abbrechen'; diff --git a/interface/web/mail/lib/lang/en.lng b/interface/web/mail/lib/lang/en.lng index e5f9e678c7..22c67a286b 100644 --- a/interface/web/mail/lib/lang/en.lng +++ b/interface/web/mail/lib/lang/en.lng @@ -48,4 +48,5 @@ $wb['Global Filters'] = 'Global Filters'; $wb['Domain Alias'] = 'Domain Alias'; $wb["Relay Recipients"] = 'Relay Recipients'; $wb['Mailbox quota'] = 'Mailbox quota'; -?> \ No newline at end of file +$wb['add_header_txt'] = 'Header (adds "X-Spam: Yes")'; +$wb['rewrite_subject_txt'] = 'Subject (adds "***SPAM***" at the beginning)'; diff --git a/interface/web/mail/lib/lang/en_spamfilter_policy.lng b/interface/web/mail/lib/lang/en_spamfilter_policy.lng index 2e0f05d6c0..f9e8a8e303 100644 --- a/interface/web/mail/lib/lang/en_spamfilter_policy.lng +++ b/interface/web/mail/lib/lang/en_spamfilter_policy.lng @@ -35,4 +35,11 @@ $wb["bad_header_admin_txt"] = 'Bad header admin'; $wb["spam_admin_txt"] = 'SPAM admin'; $wb["message_size_limit_txt"] = 'Message size limit'; $wb["banned_rulenames_txt"] = 'Banned rulenames'; -?> +$wb['rspamd_greylisting_txt'] = 'Use greylisting'; +$wb['rspamd_spam_greylisting_level_txt'] = 'Greylisting level'; +$wb['rspamd_spam_tag_level_txt'] = 'SPAM tag level'; +$wb['rspamd_spam_tag_method_txt'] = 'SPAM tag method'; +$wb['rspamd_spam_kill_level_txt'] = 'SPAM reject level'; +$wb['btn_save_txt'] = 'Save'; +$wb['btn_cancel_txt'] = 'Cancel'; +?> \ No newline at end of file diff --git a/interface/web/mail/mail_domain_edit.php b/interface/web/mail/mail_domain_edit.php index 72877a774d..28d4f40917 100644 --- a/interface/web/mail/mail_domain_edit.php +++ b/interface/web/mail/mail_domain_edit.php @@ -273,7 +273,10 @@ class page_action extends tform_actions { } //* make sure that the email domain is lowercase - if(isset($this->dataRecord["domain"])) $this->dataRecord["domain"] = strtolower($this->dataRecord["domain"]); + if(isset($this->dataRecord["domain"])){ + $this->dataRecord["domain"] = $app->functions->idn_encode($this->dataRecord["domain"]); + $this->dataRecord["domain"] = strtolower($this->dataRecord["domain"]); + } parent::onSubmit(); @@ -317,7 +320,7 @@ class page_action extends tform_actions { $soaDomain = $this->dataRecord['domain'].'.'; while ((!isset($soa) && (substr_count($soaDomain,'.') > 1))) { $soa = $app->db->queryOneRecord("SELECT id AS zone, sys_userid, sys_groupid, sys_perm_user, sys_perm_group, sys_perm_other, server_id, ttl, serial FROM dns_soa WHERE active = 'Y' AND origin = ?", $soaDomain); - $soaDomain = preg_replace("/^\w+\./","",$soaDomain); + $soaDomain = preg_replace("/^[^\.]+\./","",$soaDomain); } if ( isset($soa) && !empty($soa) ) $this->update_dns($this->dataRecord, $soa); } @@ -450,7 +453,7 @@ class page_action extends tform_actions { $soaDomain = $domain.'.'; while ((!isset($soa) && (substr_count($soaDomain,'.') > 1))) { $soa = $app->db->queryOneRecord("SELECT id AS zone, sys_userid, sys_groupid, sys_perm_user, sys_perm_group, sys_perm_other, server_id, ttl, serial FROM dns_soa WHERE active = 'Y' AND origin = ?", $soaDomain); - $soaDomain = preg_replace("/^[\w\-]+\./","",$soaDomain); + $soaDomain = preg_replace("/^[^\.]+\./","",$soaDomain); } if ( ($selector || $dkim_private || $dkim_active) && $dkim_active ) diff --git a/interface/web/mail/mail_user_edit.php b/interface/web/mail/mail_user_edit.php index 910d7a096a..263b98ef31 100644 --- a/interface/web/mail/mail_user_edit.php +++ b/interface/web/mail/mail_user_edit.php @@ -295,7 +295,7 @@ class page_action extends tform_actions { "priority" => 10, "policy_id" => $policy_id, "email" => $this->dataRecord["email"], - "fullname" => $this->dataRecord["email"], + "fullname" => $app->functions->idn_decode($this->dataRecord["email"]), "local" => 'Y' ); $app->db->datalogInsert('spamfilter_users', $insert_data, 'id'); @@ -342,7 +342,7 @@ class page_action extends tform_actions { "priority" => 10, "policy_id" => $policy_id, "email" => $this->dataRecord["email"], - "fullname" => $this->dataRecord["email"], + "fullname" => $app->functions->idn_decode($this->dataRecord["email"]), "local" => 'Y' ); $app->db->datalogInsert('spamfilter_users', $insert_data, 'id'); diff --git a/interface/web/mail/spamfilter_policy_edit.php b/interface/web/mail/spamfilter_policy_edit.php index 5320506846..55a42fe847 100644 --- a/interface/web/mail/spamfilter_policy_edit.php +++ b/interface/web/mail/spamfilter_policy_edit.php @@ -49,6 +49,46 @@ $app->uses('tpl,tform,tform_actions'); $app->load('tform_actions'); class page_action extends tform_actions { + + function onShow() { + global $app, $conf; + + // get the config + $app->uses('getconf'); + $mail_config = $app->getconf->get_server_config($conf['server_id'], 'mail'); + + $content_filter = 'amavisd'; + if($mail_config['content_filter'] == 'rspamd'){ + $content_filter = 'rspamd'; + unset($app->tform->formDef["tabs"]["policy"]['fields']['banned_files_lover']); + unset($app->tform->formDef["tabs"]["policy"]['fields']['bad_header_lover']); + unset($app->tform->formDef["tabs"]["policy"]['fields']['bypass_virus_checks']); + unset($app->tform->formDef["tabs"]["policy"]['fields']['bypass_banned_checks']); + unset($app->tform->formDef["tabs"]["policy"]['fields']['bypass_header_checks']); + + unset($app->tform->formDef["tabs"]["taglevel"]['fields']['spam_tag_level']); + unset($app->tform->formDef["tabs"]["taglevel"]['fields']['spam_tag2_level']); + unset($app->tform->formDef["tabs"]["taglevel"]['fields']['spam_kill_level']); + unset($app->tform->formDef["tabs"]["taglevel"]['fields']['spam_dsn_cutoff_level']); + unset($app->tform->formDef["tabs"]["taglevel"]['fields']['spam_quarantine_cutoff_level']); + unset($app->tform->formDef["tabs"]["taglevel"]['fields']['spam_modifies_subj']); + unset($app->tform->formDef["tabs"]["taglevel"]['fields']['spam_subject_tag']); + unset($app->tform->formDef["tabs"]["taglevel"]['fields']['spam_subject_tag2']); + + unset($app->tform->formDef["tabs"]["quarantine"]); + unset($app->tform->formDef["tabs"]["other"]); + } else { + unset($app->tform->formDef["tabs"]["taglevel"]['fields']['rspamd_greylisting']); + unset($app->tform->formDef["tabs"]["taglevel"]['fields']['rspamd_spam_greylisting_level']); + unset($app->tform->formDef["tabs"]["taglevel"]['fields']['rspamd_spam_tag_level']); + unset($app->tform->formDef["tabs"]["taglevel"]['fields']['rspamd_spam_tag_method']); + unset($app->tform->formDef["tabs"]["taglevel"]['fields']['rspamd_spam_kill_level']); + } + $app->tpl->setVar("content_filter", $content_filter); + + parent::onShow(); + } + function onShowNew() { global $app, $conf; @@ -86,11 +126,37 @@ class page_action extends tform_actions { parent::onSubmit(); } + + function onAfterUpdate() { + global $app, $conf; + + $app->uses('getconf'); + $mail_config = $app->getconf->get_server_config($conf['server_id'], 'mail'); + + if($mail_config['content_filter'] == 'rspamd'){ + $record_has_changed = false; + if(isset($this->dataRecord['rspamd_spam_greylisting_level']) && !isset($this->dataRecord['rspamd_greylisting'])) $this->dataRecord['rspamd_greylisting'] = 'n'; + foreach($this->dataRecord as $key => $val) { + if(isset($this->oldDataRecord[$key]) && @$this->oldDataRecord[$key] != $val) { + // Record has changed + $record_has_changed = true; + } + } + + if($record_has_changed){ + $spamfilter_users = $app->db->queryAllRecords("SELECT * FROM spamfilter_users WHERE policy_id = ?", intval($this->id)); + + if(is_array($spamfilter_users) && !empty($spamfilter_users)){ + foreach($spamfilter_users as $spamfilter_user){ + $app->db->datalogUpdate('spamfilter_users', $spamfilter_user, 'id', $spamfilter_user["id"], true); + } + } + } + } + } } $app->tform_actions = new page_action; $app->tform_actions->onLoad(); - - -?> +?> \ No newline at end of file diff --git a/interface/web/mail/spamfilter_policy_list.php b/interface/web/mail/spamfilter_policy_list.php index c2ab38d5f7..2aa7c7bec1 100644 --- a/interface/web/mail/spamfilter_policy_list.php +++ b/interface/web/mail/spamfilter_policy_list.php @@ -16,9 +16,28 @@ $list_def_file = "list/spamfilter_policy.list.php"; $app->auth->check_module_permissions('mail'); $app->uses('listform_actions'); -//$app->listform_actions->SQLExtWhere = "wb = 'W'"; -$app->listform_actions->onLoad(); - - -?> +class list_action extends listform_actions { + + function onShow() { + global $app, $conf; + + // get the config + $app->uses('getconf'); + $mail_config = $app->getconf->get_server_config($conf['server_id'], 'mail'); + + $content_filter = 'amavisd'; + if($mail_config['content_filter'] == 'rspamd'){ + $content_filter = 'rspamd'; + } + $app->tpl->setVar("content_filter", $content_filter); + + parent::onShow(); + } + +} + +$list = new list_action; +//$list->SQLExtWhere = "wb = 'W'"; +$list->onLoad(); +?> \ No newline at end of file diff --git a/interface/web/mail/templates/spamfilter_policy_edit.htm b/interface/web/mail/templates/spamfilter_policy_edit.htm index 317bbdb822..0496d3a85a 100644 --- a/interface/web/mail/templates/spamfilter_policy_edit.htm +++ b/interface/web/mail/templates/spamfilter_policy_edit.htm @@ -20,6 +20,7 @@ {tmpl_var name='spam_lover'} </select></div> </div> + <tmpl_if name='content_filter' op='==' value='amavisd'> <div class="form-group"> <label for="banned_files_lover" class="col-sm-3 control-label">{tmpl_var name='banned_files_lover_txt'}</label> <div class="col-sm-9"><select name="banned_files_lover" id="banned_files_lover" class="form-control"> @@ -50,7 +51,7 @@ {tmpl_var name='bypass_header_checks'} </select></div> </div> - + </tmpl_if> <input type="hidden" name="id" value="{tmpl_var name='id'}"> diff --git a/interface/web/mail/templates/spamfilter_policy_list.htm b/interface/web/mail/templates/spamfilter_policy_list.htm index da1183d75f..0dd72dee54 100644 --- a/interface/web/mail/templates/spamfilter_policy_list.htm +++ b/interface/web/mail/templates/spamfilter_policy_list.htm @@ -19,16 +19,20 @@ <th data-column="policy_name"><tmpl_var name="policy_name_txt"></th> <th data-column="virus_lover"><tmpl_var name="virus_lover_txt"></th> <th data-column="spam_lover"><tmpl_var name="spam_lover_txt"></th> + <tmpl_if name='content_filter' op='==' value='amavisd'> <th data-column="banned_files_lover"><tmpl_var name="banned_files_lover_txt"></th> <th data-column="bad_header_lover"><tmpl_var name="bad_header_lover_txt"></th> + </tmpl_if> <th class="small-col text-right">{tmpl_var name='search_limit'}</th> </tr> <tr> <td><input class="form-control" type="text" name="search_policy_name" value="{tmpl_var name='search_policy_name'}" /></td> <td><select class="form-control" name="search_virus_lover">{tmpl_var name='search_virus_lover'}</select></td> <td><select class="form-control" name="search_spam_lover">{tmpl_var name='search_spam_lover'}</select></td> + <tmpl_if name='content_filter' op='==' value='amavisd'> <td><select class="form-control" name="search_banned_files_lover">{tmpl_var name='search_banned_files_lover'}</select></td> <td><select class="form-control" name="search_bad_header_lover">{tmpl_var name='search_bad_header_lover'}</select></td> + </tmpl_if> <td class="text-right"> <button type="button" class="btn btn-default formbutton-default formbutton-narrow" name="Filter" id="Filter" value="{tmpl_var name="filter_txt"}" data-submit-form="pageForm" data-form-action="mail/spamfilter_policy_list.php"><span class="icon icon-filter"></span></button> </td> @@ -40,8 +44,10 @@ <td><a href="#" data-load-content="mail/spamfilter_policy_edit.php?id={tmpl_var name='id'}">{tmpl_var name="policy_name"}</a></td> <td><a href="#" data-load-content="mail/spamfilter_policy_edit.php?id={tmpl_var name='id'}">{tmpl_var name="virus_lover"}</a></td> <td><a href="#" data-load-content="mail/spamfilter_policy_edit.php?id={tmpl_var name='id'}">{tmpl_var name="spam_lover"}</a></td> + <tmpl_if name='content_filter' op='==' value='amavisd'> <td><a href="#" data-load-content="mail/spamfilter_policy_edit.php?id={tmpl_var name='id'}">{tmpl_var name="banned_files_lover"}</a></td> <td><a href="#" data-load-content="mail/spamfilter_policy_edit.php?id={tmpl_var name='id'}">{tmpl_var name="bad_header_lover"}</a></td> + </tmpl_if> <td class="text-right"> <a class="btn btn-default formbutton-danger formbutton-narrow" href="javascript: ISPConfig.confirm_action('mail/spamfilter_policy_del.php?id={tmpl_var name='id'}&phpsessid={tmpl_var name='phpsessid'}','{tmpl_var name='delete_confirmation'}');"><span class="icon icon-delete"></span></a> </td> @@ -49,14 +55,14 @@ </tmpl_loop> <tmpl_unless name="records"> <tr class="tbl_row_noresults tbl_row_<tmpl_if name='__EVEN__'}even<tmpl_else>uneven</tmpl_if>"> - <td colspan="6">{tmpl_var name='globalsearch_noresults_text_txt'}</td> + <td colspan="{tmpl_if name='content_filter' op='==' value='amavisd'}6{/tmpl_else}4{/tmpl_if}">{tmpl_var name='globalsearch_noresults_text_txt'}</td> </tr> </tmpl_unless> </tbody> <tfoot> <tr> - <td colspan="6"><tmpl_var name="paging"></td> + <td colspan="{tmpl_if name='content_filter' op='==' value='amavisd'}6{/tmpl_else}4{/tmpl_if}"><tmpl_var name="paging"></td> </tr> </tfoot> </table> diff --git a/interface/web/mail/templates/spamfilter_taglevel_edit.htm b/interface/web/mail/templates/spamfilter_taglevel_edit.htm index ba92662ba6..1b3c3b482c 100644 --- a/interface/web/mail/templates/spamfilter_taglevel_edit.htm +++ b/interface/web/mail/templates/spamfilter_taglevel_edit.htm @@ -4,7 +4,7 @@ <p><tmpl_var name="list_desc_txt"></p> - + <tmpl_if name='content_filter' op='==' value='amavisd'> <div class="form-group"> <label for="spam_tag_level" class="col-sm-3 control-label">{tmpl_var name='spam_tag_level_txt'}</label> <div class="col-sm-9"><input type="text" name="spam_tag_level" id="spam_tag_level" value="{tmpl_var name='spam_tag_level'}" class="form-control" /></div></div> @@ -32,6 +32,33 @@ <div class="form-group"> <label for="spam_subject_tag2" class="col-sm-3 control-label">{tmpl_var name='spam_subject_tag2_txt'}</label> <div class="col-sm-9"><input type="text" name="spam_subject_tag2" id="spam_subject_tag2" value="{tmpl_var name='spam_subject_tag2'}" class="form-control" /></div></div> + </tmpl_if> + <tmpl_if name='content_filter' op='==' value='rspamd'> + <div class="form-group"> + <label class="col-sm-3 control-label">{tmpl_var name='rspamd_greylisting_txt'}</label> + <div class="col-sm-9"> + {tmpl_var name='rspamd_greylisting'} + </div> + </div> + <div class="form-group"> + <label for="rspamd_spam_greylisting_level" class="col-sm-3 control-label">{tmpl_var name='rspamd_spam_greylisting_level_txt'}</label> + <div class="col-sm-9"><input type="text" name="rspamd_spam_greylisting_level" id="rspamd_spam_greylisting_level" value="{tmpl_var name='rspamd_spam_greylisting_level'}" class="form-control" /></div> + </div> + <div class="form-group"> + <label for="rspamd_spam_tag_level" class="col-sm-3 control-label">{tmpl_var name='rspamd_spam_tag_level_txt'}</label> + <div class="col-sm-9"><input type="text" name="rspamd_spam_tag_level" id="rspamd_spam_tag_level" value="{tmpl_var name='rspamd_spam_tag_level'}" class="form-control" /></div> + </div> + <div class="form-group"> + <label for="rspamd_spam_tag_method" class="col-sm-3 control-label">{tmpl_var name='rspamd_spam_tag_method_txt'}</label> + <div class="col-sm-9"><select name="rspamd_spam_tag_method" id="rspamd_spam_tag_method" class="form-control"> + {tmpl_var name='rspamd_spam_tag_method'} + </select></div> + </div> + <div class="form-group"> + <label for="rspamd_spam_kill_level" class="col-sm-3 control-label">{tmpl_var name='rspamd_spam_kill_level_txt'}</label> + <div class="col-sm-9"><input type="text" name="rspamd_spam_kill_level" id="rspamd_spam_kill_level" value="{tmpl_var name='rspamd_spam_kill_level'}" class="form-control" /></div> + </div> + </tmpl_if> <input type="hidden" name="id" value="{tmpl_var name='id'}"> @@ -39,4 +66,4 @@ <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="mail/spamfilter_policy_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/spamfilter_policy_list.php">{tmpl_var name='btn_cancel_txt'}</button> - </div></div> \ No newline at end of file + </div></div> diff --git a/server/conf/apache_apps.vhost.master b/server/conf/apache_apps.vhost.master index d533f7b3c0..94982a6dc1 100644 --- a/server/conf/apache_apps.vhost.master +++ b/server/conf/apache_apps.vhost.master @@ -74,6 +74,16 @@ </Directory> </IfModule> +{tmpl_if name="use_rspamd"} + <Location /rspamd> + Order allow,deny + Allow from all + </Location> + RewriteEngine On + RewriteRule ^/rspamd$ /rspamd/ [R,L] + RewriteRule ^/rspamd/(.*) http://127.0.0.1:11334/$1 [P] +{/tmpl_if} + </VirtualHost> diff --git a/server/conf/autoresponder.master b/server/conf/autoresponder.master index 0126c998d4..114db23d64 100644 --- a/server/conf/autoresponder.master +++ b/server/conf/autoresponder.master @@ -4,7 +4,7 @@ if ($RETURNCODE==1) { if (!/^List-Unsubscribe:.*/:h ) { - if (!/^X-Spam-Flag: YES/:h ) + if (!/^(X-Spam-Flag: YES|X-Spam: Yes|Subject: \*\*\*\s*SPAM\s*\*\*\*.*)/:h ) { NOW=time if ({start_date} lt $NOW && {end_date} gt $NOW) diff --git a/server/conf/nginx_apps.vhost.master b/server/conf/nginx_apps.vhost.master index ed5e3a49ae..8a97f82a43 100644 --- a/server/conf/nginx_apps.vhost.master +++ b/server/conf/nginx_apps.vhost.master @@ -199,4 +199,29 @@ server { alias /var/lib/mailman/archives/public; autoindex on; } + + {use_rspamd}location /rspamd/ { + {use_rspamd}proxy_pass http://127.0.0.1:11334/; + {use_rspamd}rewrite ^//(.*) /$1; + {use_rspamd}proxy_set_header X-Forwarded-Proto $scheme; + {use_rspamd}proxy_set_header Host $host; + {use_rspamd}proxy_set_header X-Real-IP $remote_addr; + {use_rspamd}proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; + {use_rspamd}proxy_pass_header Authorization; + {use_rspamd}client_max_body_size 0; + {use_rspamd}client_body_buffer_size 1m; + {use_rspamd}proxy_intercept_errors on; + {use_rspamd}proxy_buffering on; + {use_rspamd}proxy_buffer_size 128k; + {use_rspamd}proxy_buffers 256 16k; + {use_rspamd}proxy_busy_buffers_size 256k; + {use_rspamd}proxy_temp_file_write_size 256k; + {use_rspamd}proxy_max_temp_file_size 0; + {use_rspamd}proxy_read_timeout 300; + {use_rspamd} + {use_rspamd}location ~* ^/rspamd/(.+\.(jpg|jpeg|gif|css|png|js|ico|html?|xml|txt))$ { + {use_rspamd}alias /usr/share/rspamd/www/$1; + {use_rspamd}} + {use_rspamd}} + } diff --git a/server/conf/rspamd_users.inc.conf.master b/server/conf/rspamd_users.inc.conf.master new file mode 100644 index 0000000000..18934c2760 --- /dev/null +++ b/server/conf/rspamd_users.inc.conf.master @@ -0,0 +1,41 @@ +spamfilter_users-<tmpl_var name='record_id'> { + priority = <tmpl_var name='priority'>; + <tmpl_if name='local' op='==' value='Y'>rcpt<tmpl_else>from</tmpl_if> = "<tmpl_var name='email'>"; +<tmpl_if name='spam_lover_virus_lover' op='==' value='spam_lover_AND_virus_lover'> + want_spam = yes; +</tmpl_if> +<tmpl_if name='spam_lover_virus_lover' op='==' value='spam_lover_AND_NOTvirus_lover'> + apply "default" { + CLAM_VIRUS = 1999.0; + JUST_EICAR = 1999.0; + actions { + reject = 999.0; + } + } +</tmpl_if> +<tmpl_if name='spam_lover_virus_lover' op='==' value='NOTspam_lover_AND_virus_lover'> + apply "default" { + CLAM_VIRUS = -999.0; + JUST_EICAR = -999.0; + actions { + <tmpl_if name='rspamd_greylisting' op='==' value='y'>greylist = <tmpl_var name='rspamd_spam_greylisting_level'>;</tmpl_if> + + <tmpl_var name='rspamd_spam_tag_method'> = <tmpl_var name='rspamd_spam_tag_level'>; + reject = <tmpl_var name='rspamd_spam_kill_level'>; + } + } +</tmpl_if> +<tmpl_if name='spam_lover_virus_lover' op='==' value='NOTspam_lover_AND_NOTvirus_lover'> + apply "default" { + CLAM_VIRUS = <tmpl_var name='rspamd_virus_kill_level'>; + JUST_EICAR = <tmpl_var name='rspamd_virus_kill_level'>; + actions { + <tmpl_if name='rspamd_greylisting' op='==' value='y'>greylist = <tmpl_var name='rspamd_spam_greylisting_level'>;</tmpl_if> + + <tmpl_var name='rspamd_spam_tag_method'> = <tmpl_var name='rspamd_spam_tag_level'>; + reject = <tmpl_var name='rspamd_spam_kill_level'>; + } + } +</tmpl_if> + +} \ No newline at end of file diff --git a/server/conf/rspamd_worker-controller.inc.master b/server/conf/rspamd_worker-controller.inc.master new file mode 100644 index 0000000000..75b744c883 --- /dev/null +++ b/server/conf/rspamd_worker-controller.inc.master @@ -0,0 +1,8 @@ +# Included from top-level .conf file + +type = "controller"; +count = 1; +password = "<tmpl_var name='rspamd_password'>"; +secure_ip = "127.0.0.1"; +secure_ip = "::1"; +static_dir = "${WWWDIR}"; \ No newline at end of file diff --git a/server/conf/sieve_filter.master b/server/conf/sieve_filter.master index 8e78c6c83a..13c08dd56b 100644 --- a/server/conf/sieve_filter.master +++ b/server/conf/sieve_filter.master @@ -1,4 +1,4 @@ -require ["fileinto", "regex", "vacation"]; +require ["fileinto", "regex", "date", "relational", "vacation", "imap4flags", "envelope", "subaddress", "copy", "reject"]; <tmpl_if name="cc"> # Send a copy of email to @@ -9,7 +9,7 @@ redirect "<tmpl_var name='address'>"; <tmpl_if name="move_junk" op="==" value="y"> # Move spam to spam folder -if header :contains "X-Spam-Flag" "YES" { +if anyof (header :contains "X-Spam-Flag" "YES", header :contains "X-Spam" "Yes", header :contains "subject" "*** SPAM ***", header :contains "subject" "***SPAM***") { fileinto "Junk"; # Stop here so that we do not reply on spams stop; @@ -26,7 +26,7 @@ keep; ################################################################# # Move spam to spam folder -if header :contains "X-Spam-Flag" "YES" { +if anyof (header :contains "X-Spam-Flag" "YES", header :contains "X-Spam" "Yes", header :contains "subject" "*** SPAM ***", header :contains "subject" "***SPAM***") { fileinto "Junk"; # Stop here so that we do not reply on spams stop; diff --git a/server/conf/sieve_filter_1.2.master b/server/conf/sieve_filter_1.2.master index b1f7fcb87d..5244693102 100644 --- a/server/conf/sieve_filter_1.2.master +++ b/server/conf/sieve_filter_1.2.master @@ -1,8 +1,8 @@ -require ["fileinto", "regex", "date", "relational", "vacation"]; +require ["fileinto", "regex", "date", "relational", "vacation", "imap4flags", "envelope", "subaddress", "copy", "reject"]; <tmpl_if name="move_junk" op="==" value="y"> # Move spam to spam folder -if header :contains "X-Spam-Flag" "YES" { +if anyof (header :contains "X-Spam-Flag" "YES", header :contains "X-Spam" "Yes", header :contains "subject" "*** SPAM ***", header :contains "subject" "***SPAM***") { fileinto "Junk"; # Stop here so that we do not reply on spams stop; @@ -26,7 +26,7 @@ keep; ################################################################# # Move spam to spam folder -if header :contains "X-Spam-Flag" "YES" { +if anyof (header :contains "X-Spam-Flag" "YES", header :contains "X-Spam" "Yes", header :contains "subject" "*** SPAM ***", header :contains "subject" "***SPAM***") { # Stop here so that we do not reply on spams stop; } diff --git a/server/mods-available/mail_module.inc.php b/server/mods-available/mail_module.inc.php index bc6d290145..14cbbb24e4 100644 --- a/server/mods-available/mail_module.inc.php +++ b/server/mods-available/mail_module.inc.php @@ -55,7 +55,14 @@ class mail_module { 'mail_content_filter_delete', 'mail_mailinglist_insert', 'mail_mailinglist_update', - 'mail_mailinglist_delete'); + 'mail_mailinglist_delete', + 'spamfilter_users_insert', + 'spamfilter_users_update', + 'spamfilter_users_delete', + 'spamfilter_wblist_insert', + 'spamfilter_wblist_update', + 'spamfilter_wblist_delete' + ); //* This function is called during ispconfig installation to determine // if a symlink shall be created for this plugin. @@ -102,7 +109,10 @@ class mail_module { $app->modules->registerTableHook('mail_get', 'mail_module', 'process'); $app->modules->registerTableHook('mail_content_filter', 'mail_module', 'process'); $app->modules->registerTableHook('mail_mailinglist', 'mail_module', 'process'); + $app->modules->registerTableHook('spamfilter_users', 'mail_module', 'process'); + $app->modules->registerTableHook('spamfilter_wblist', 'mail_module', 'process'); + $app->services->registerService('rspamd', 'mail_module', 'restartRspamd'); } /* @@ -154,9 +164,34 @@ class mail_module { if($action == 'u') $app->plugins->raiseEvent('mail_mailinglist_update', $data); if($action == 'd') $app->plugins->raiseEvent('mail_mailinglist_delete', $data); break; + case 'spamfilter_users': + if($action == 'i') $app->plugins->raiseEvent('spamfilter_users_insert', $data); + if($action == 'u') $app->plugins->raiseEvent('spamfilter_users_update', $data); + if($action == 'd') $app->plugins->raiseEvent('spamfilter_users_delete', $data); + break; + case 'spamfilter_wblist': + if($action == 'i') $app->plugins->raiseEvent('spamfilter_wblist_insert', $data); + if($action == 'u') $app->plugins->raiseEvent('spamfilter_wblist_update', $data); + if($action == 'd') $app->plugins->raiseEvent('spamfilter_wblist_delete', $data); + break; } // end switch } // end function + function restartRspamd($action = 'reload') { + global $app; + + $app->uses('system'); + + $daemon = 'rspamd'; + + $retval = array('output' => '', 'retval' => 0); + if($action == 'restart') { + exec($app->system->getinitcommand($daemon, 'restart').' 2>&1', $retval['output'], $retval['retval']); + } else { + exec($app->system->getinitcommand($daemon, 'reload').' 2>&1', $retval['output'], $retval['retval']); + } + return $retval; + } } // end class ?> diff --git a/server/plugins-available/apps_vhost_plugin.inc.php b/server/plugins-available/apps_vhost_plugin.inc.php index b843e3c8a4..32a62174ff 100644 --- a/server/plugins-available/apps_vhost_plugin.inc.php +++ b/server/plugins-available/apps_vhost_plugin.inc.php @@ -106,6 +106,16 @@ class apps_vhost_plugin { $vhost_port_listen = '#'; } $tpl->setVar('vhost_port_listen', $vhost_port_listen); + + $mail_config = $app->getconf->get_server_config($conf['server_id'], 'mail'); + if($mail_config['content_filter'] == 'rspamd'){ + $use_rspamd = true; + exec('/usr/sbin/a2enmod proxy'); + exec('/usr/sbin/a2enmod proxy_http'); + } else { + $use_rspamd = false; + } + $tpl->setVar('use_rspamd', $use_rspamd); $content = $tpl->grab(); @@ -184,6 +194,14 @@ class apps_vhost_plugin { $content = str_replace('{use_tcp}', $use_tcp, $content); $content = str_replace('{use_socket}', $use_socket, $content); + $mail_config = $app->getconf->get_server_config($conf['server_id'], 'mail'); + if($mail_config['content_filter'] == 'rspamd'){ + $use_rspamd = ''; + } else { + $use_rspamd = '#'; + } + $content = str_replace('{use_rspamd}', $use_rspamd, $content); + // Fix socket path on PHP 7 systems if(file_exists('/var/run/php/php7.0-fpm.sock')) $content = str_replace('/var/run/php5-fpm.sock', '/var/run/php/php7.0-fpm.sock', $content); if(file_exists('/var/run/php/php7.1-fpm.sock')) $content = str_replace('/var/run/php5-fpm.sock', '/var/run/php/php7.1-fpm.sock', $content); @@ -221,7 +239,3 @@ class apps_vhost_plugin { } // end class - - - -?> diff --git a/server/plugins-available/mail_plugin_dkim.inc.php b/server/plugins-available/mail_plugin_dkim.inc.php index 6f042e9070..405691d130 100755 --- a/server/plugins-available/mail_plugin_dkim.inc.php +++ b/server/plugins-available/mail_plugin_dkim.inc.php @@ -104,6 +104,9 @@ class mail_plugin_dkim { function check_system($data) { global $app, $mail_config; + /** TODO: FIX IF ONLY RSPAMD IS INSTALLED AND NO AMAVIS! **/ + /** TODO: FIX DKIM FOR RSPAMD, RSPAMD CANNOT READ FILES OF amavis:root **/ + $app->uses('getconf'); $check=true; diff --git a/server/plugins-available/postfix_server_plugin.inc.php b/server/plugins-available/postfix_server_plugin.inc.php index 2b0b1ba67b..bbd1c2546c 100644 --- a/server/plugins-available/postfix_server_plugin.inc.php +++ b/server/plugins-available/postfix_server_plugin.inc.php @@ -60,15 +60,11 @@ class postfix_server_plugin { Register for the events */ - $app->plugins->registerEvent('server_insert', 'postfix_server_plugin', 'insert'); - $app->plugins->registerEvent('server_update', 'postfix_server_plugin', 'update'); - - - + $app->plugins->registerEvent('server_insert', $this->plugin_name, 'insert'); + $app->plugins->registerEvent('server_update', $this->plugin_name, 'update'); } function insert($event_name, $data) { - global $app, $conf; $this->update($event_name, $data); @@ -116,7 +112,7 @@ class postfix_server_plugin { if($rbl_hosts != ''){ $rbl_hosts = explode(",", $rbl_hosts); } - $options = explode(", ", exec("postconf -h smtpd_recipient_restrictions")); + $options = preg_split("/,\s*/", exec("postconf -h smtpd_recipient_restrictions")); $new_options = array(); foreach ($options as $key => $value) { if (!preg_match('/reject_rbl_client/', $value)) { @@ -162,7 +158,8 @@ class postfix_server_plugin { } if($app->system->is_installed('dovecot')) { - $temp = exec("postconf -n virtual_transport", $out); + $out = null; + exec("postconf -n virtual_transport", $out); if ($mail_config["mailbox_virtual_uidgid_maps"] == 'y') { // If dovecot switch to lmtp if($out[0] != "virtual_transport = lmtp:unix:private/dovecot-lmtp") { @@ -182,12 +179,51 @@ class postfix_server_plugin { } } - exec("postconf -e 'mailbox_size_limit = ".intval($mail_config['mailbox_size_limit']*1024*1024)."'"); //TODO : no reload? - exec("postconf -e 'message_size_limit = ".intval($mail_config['message_size_limit']*1024*1024)."'"); //TODO : no reload? + if($mail_config['content_filter'] != $old_ini_data['mail']['content_filter']) { + if($mail_config['content_filter'] == 'rspamd'){ + exec("postconf -X 'receive_override_options'"); + exec("postconf -X 'content_filter'"); + + exec("postconf -e 'smtpd_milters = inet:localhost:11332'"); + exec("postconf -e 'non_smtpd_milters = inet:localhost:11332'"); + exec("postconf -e 'milter_protocol = 6'"); + exec("postconf -e 'milter_mail_macros = i {mail_addr} {client_addr} {client_name} {auth_authen}'"); + exec("postconf -e 'milter_default_action = accept'"); + + exec("postconf -e 'smtpd_sender_restrictions = check_sender_access mysql:/etc/postfix/mysql-virtual_sender.cf, permit_mynetworks, permit_sasl_authenticated'"); + + $new_options = array(); + $options = preg_split("/,\s*/", exec("postconf -h smtpd_recipient_restrictions")); + foreach ($options as $key => $value) { + if (!preg_match('/check_policy_service\s+inet:127.0.0.1:10023/', $value)) { + $new_options[] = $value; + } + } + exec("postconf -e 'smtpd_recipient_restrictions = ".implode(", ", $new_options)."'"); + } + if($mail_config['content_filter'] == 'amavisd'){ + exec("postconf -X 'smtpd_milters'"); + exec("postconf -X 'milter_protocol'"); + exec("postconf -X 'milter_mail_macros'"); + exec("postconf -X 'milter_default_action'"); + + exec("postconf -e 'receive_override_options = no_address_mappings'"); + exec("postconf -e 'content_filter = amavis:[127.0.0.1]:10024'"); + + exec("postconf -e 'smtpd_sender_restrictions = check_sender_access mysql:/etc/postfix/mysql-virtual_sender.cf regexp:/etc/postfix/tag_as_originating.re, permit_mynetworks, permit_sasl_authenticated, check_sender_access regexp:/etc/postfix/tag_as_foreign.re'"); + } + } + if($mail_config['content_filter'] == 'rspamd' && ($mail_config['rspamd_password'] != $old_ini_data['mail']['rspamd_password'] || $mail_config['content_filter'] != $old_ini_data['mail']['content_filter'])) { + $tpl = new tpl(); + $tpl->newTemplate('rspamd_worker-controller.inc.master'); + $tpl->setVar('rspamd_password', $mail_config['rspamd_password']); + $app->system->file_put_contents('/etc/rspamd/local.d/worker-controller.inc', $tpl->grab()); + $app->services->restartServiceDelayed('rspamd', 'reload'); + } + exec("postconf -e 'mailbox_size_limit = ".intval($mail_config['mailbox_size_limit']*1024*1024)."'"); + exec("postconf -e 'message_size_limit = ".intval($mail_config['message_size_limit']*1024*1024)."'"); + $app->services->restartServiceDelayed('postfix', 'reload'); } - } // end class - -?> diff --git a/server/plugins-available/rspamd_plugin.inc.php b/server/plugins-available/rspamd_plugin.inc.php new file mode 100644 index 0000000000..65f4522ba7 --- /dev/null +++ b/server/plugins-available/rspamd_plugin.inc.php @@ -0,0 +1,255 @@ +<?php + +/* +Copyright (c) 2018, Falko Timme, Timme Hosting GmbH & Co. KG +All rights reserved. + +Redistribution and use in source and binary forms, with or without modification, +are permitted provided that the following conditions are met: + + * Redistributions of source code must retain the above copyright notice, + this list of conditions and the following disclaimer. + * Redistributions in binary form must reproduce the above copyright notice, + this list of conditions and the following disclaimer in the documentation + and/or other materials provided with the distribution. + * Neither the name of ISPConfig nor the names of its contributors + may be used to endorse or promote products derived from this software without + specific prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND +ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED +WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. +IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, +INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, +BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY +OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING +NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, +EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. +*/ + +class rspamd_plugin { + + var $plugin_name = 'rspamd_plugin'; + var $class_name = 'rspamd_plugin'; + var $users_config_dir = '/etc/rspamd/local.d/users/'; + + //* This function is called during ispconfig installation to determine + // if a symlink shall be created for this plugin. + function onInstall() { + global $conf; + + if($conf['services']['mail'] == true) { + return true; + } else { + return false; + } + } + + /* + This function is called when the plugin is loaded + */ + + function onLoad() { + global $app; + + /* + Register for the events + */ + + //* spamfilter_users + $app->plugins->registerEvent('spamfilter_users_insert', $this->plugin_name, 'spamfilter_users_insert'); + $app->plugins->registerEvent('spamfilter_users_update', $this->plugin_name, 'spamfilter_users_update'); + $app->plugins->registerEvent('spamfilter_users_delete', $this->plugin_name, 'spamfilter_users_delete'); + + //* spamfilter_wblist + $app->plugins->registerEvent('spamfilter_wblist_insert', $this->plugin_name, 'spamfilter_wblist_insert'); + $app->plugins->registerEvent('spamfilter_wblist_update', $this->plugin_name, 'spamfilter_wblist_update'); + $app->plugins->registerEvent('spamfilter_wblist_delete', $this->plugin_name, 'spamfilter_wblist_delete'); + + //* server ip + $app->plugins->registerEvent('server_ip_insert', $this->plugin_name, 'server_ip'); + $app->plugins->registerEvent('server_ip_update', $this->plugin_name, 'server_ip'); + $app->plugins->registerEvent('server_ip_delete', $this->plugin_name, 'server_ip'); + } + + function spamfilter_users_insert($event_name, $data) { + global $app, $conf; + + $this->action = 'insert'; + // just run the spamfilter_users_update function + $this->spamfilter_users_update($event_name, $data); + } + + function spamfilter_users_update($event_name, $data) { + global $app, $conf; + + // get the config + $app->uses('getconf,system,functions'); + $mail_config = $app->getconf->get_server_config($conf['server_id'], 'mail'); + + if(is_dir('/etc/rspamd')) { + $policy = $app->db->queryOneRecord("SELECT * FROM spamfilter_policy WHERE id = ?", intval($data['new']['policy_id'])); + + //* Create the config file + $user_file = $this->users_config_dir.'spamfilter_user_'.intval($data['new']['id']).'.conf'; + + if(is_array($policy) && !empty($policy)){ + if(!is_dir($this->users_config_dir)){ + $app->system->mkdirpath($this->users_config_dir); + } + + $app->load('tpl'); + + $tpl = new tpl(); + $tpl->newTemplate('rspamd_users.inc.conf.master'); + $tpl->setVar('record_id', intval($data['new']['id'])); + $tpl->setVar('priority', intval($data['new']['priority'])); + $tpl->setVar('email', $app->functions->idn_encode($data['new']['email'])); + $tpl->setVar('local', $data['new']['local']); + + $tpl->setVar('rspamd_greylisting', $policy['rspamd_greylisting']); + $tpl->setVar('rspamd_spam_greylisting_level', floatval($policy['rspamd_spam_greylisting_level'])); + + $tpl->setVar('rspamd_spam_tag_level', floatval($policy['rspamd_spam_tag_level'])); + $tpl->setVar('rspamd_spam_tag_method', $policy['rspamd_spam_tag_method']); + + $tpl->setVar('rspamd_spam_kill_level', floatval($policy['rspamd_spam_kill_level'])); + $tpl->setVar('rspamd_virus_kill_level', floatval($policy['rspamd_spam_kill_level']) + 1000); + + $spam_lover_virus_lover = ''; + if($policy['spam_lover'] == 'Y' && $policy['virus_lover'] == 'Y') $spam_lover_virus_lover = 'spam_lover_AND_virus_lover'; + if($policy['spam_lover'] == 'Y' && $policy['virus_lover'] != 'Y') $spam_lover_virus_lover = 'spam_lover_AND_NOTvirus_lover'; + if($policy['spam_lover'] != 'Y' && $policy['virus_lover'] == 'Y') $spam_lover_virus_lover = 'NOTspam_lover_AND_virus_lover'; + if($policy['spam_lover'] != 'Y' && $policy['virus_lover'] != 'Y') $spam_lover_virus_lover = 'NOTspam_lover_AND_NOTvirus_lover'; + + $tpl->setVar('spam_lover_virus_lover', $spam_lover_virus_lover); + + //$groups_disabled = array(); + //if($policy['virus_lover'] == 'Y') $groups_disabled[] = ''; + + $app->system->file_put_contents($user_file, $tpl->grab()); + } else { + if(is_file($user_file)) { + unlink($user_file); + } + } + + if($mail_config['content_filter'] == 'rspamd'){ + if(is_file('/etc/init.d/rspamd')) $app->services->restartServiceDelayed('rspamd', 'reload'); + } + } + } + + function spamfilter_users_delete($event_name, $data) { + global $app, $conf; + + // get the config + $app->uses('getconf'); + $mail_config = $app->getconf->get_server_config($conf['server_id'], 'mail'); + + if(is_dir('/etc/rspamd')) { + //* delete the config file + $user_file = $this->users_config_dir.'spamfilter_user_'.intval($data['old']['id']).'.conf'; + if(is_file($user_file)) unlink($user_file); + + } + + if($mail_config['content_filter'] == 'rspamd') { + if(is_file('/etc/init.d/rspamd')) $app->services->restartServiceDelayed('rspamd', 'reload'); + } + } + + function spamfilter_wblist_insert($event_name, $data) { + global $app, $conf; + + $this->action = 'insert'; + // just run the spamfilter_wblist_update function + $this->spamfilter_wblist_update($event_name, $data); + } + + function spamfilter_wblist_update($event_name, $data) { + global $app, $conf; + + $app->uses('getconf,system,functions'); + $mail_config = $app->getconf->get_server_config($conf['server_id'], 'mail'); + + if(is_dir('/etc/rspamd')) { + $recipient = $app->db->queryOneRecord("SELECT email FROM spamfilter_users WHERE id = ?", intval($data['new']['rid'])); + //* Create the config file + $wblist_file = $this->users_config_dir.'spamfilter_wblist_'.intval($data['new']['wblist_id']).'.conf'; + + if($data['new']['active'] == 'y' && is_array($recipient) && !empty($recipient)){ + if(!is_dir($this->users_config_dir)){ + $app->system->mkdirpath($this->users_config_dir); + } + + $app->load('tpl'); + + $tpl = new tpl(); + $tpl->newTemplate('rspamd_wblist.inc.conf.master'); + $tpl->setVar('record_id', intval($data['new']['wblist_id'])); + $tpl->setVar('priority', intval($data['new']['priority'])); + $tpl->setVar('from', $app->functions->idn_encode($data['new']['email'])); + $tpl->setVar('recipient', $app->functions->idn_encode($recipient['email'])); + //$tpl->setVar('action', ($data['new']['wb'] == 'W'? 'want_spam = yes;' : 'action = "reject";')); + $tpl->setVar('wblist', $data['new']['wb']); + + $app->system->file_put_contents($wblist_file, $tpl->grab()); + } else { + if(is_file($wblist_file)) unlink($wblist_file); + } + + if($mail_config['content_filter'] == 'rspamd'){ + if(is_file('/etc/init.d/rspamd')) $app->services->restartServiceDelayed('rspamd', 'reload'); + } + } + } + + function spamfilter_wblist_delete($event_name, $data) { + global $app, $conf; + + $app->uses('getconf'); + $mail_config = $app->getconf->get_server_config($conf['server_id'], 'mail'); + + if(is_dir('/etc/rspamd')) { + //* delete the config file + $wblist_file = $this->users_config_dir.'spamfilter_wblist_'.intval($data['old']['wblist_id']).'.conf'; + if(is_file($wblist_file)) unlink($wblist_file); + + if($mail_config['content_filter'] == 'rspamd'){ + if(is_file('/etc/init.d/rspamd')) $app->services->restartServiceDelayed('rspamd', 'reload'); + } + } + } + + function server_ip($event_name, $data) { + global $app, $conf; + + // get the config + $app->uses("getconf,system"); + $app->load('tpl'); + + $mail_config = $app->getconf->get_server_config($conf['server_id'], 'mail'); + + if(is_dir('/etc/rspamd')) { + $tpl = new tpl(); + $tpl->newTemplate('rspamd_users.conf.master'); + + $whitelist_ips = array(); + $ips = $app->db->queryAllRecords("SELECT * FROM server_ip WHERE server_id = ?", $conf['server_id']); + if(is_array($ips) && !empty($ips)){ + foreach($ips as $ip){ + $whitelist_ips[] = array('ip' => $ip['ip_address']); + } + } + $tpl->setLoop('whitelist_ips', $whitelist_ips); + $app->system->file_put_contents('/etc/rspamd/local.d/users.conf', $tpl->grab()); + + if($mail_config['content_filter'] == 'rspamd'){ + $app->services->restartServiceDelayed('rspamd', 'reload'); + } + } + } + +} // end class -- GitLab From ae7c9c651284e1fd8d5d4de6a83a4622aa29c354 Mon Sep 17 00:00:00 2001 From: Till Brehm <tbrehm@ispconfig.org> Date: Mon, 8 Jul 2019 18:05:32 +0200 Subject: [PATCH 092/215] Set the same AllowOverride value for cgi-bin directory that is set for the website. --- server/conf/vhost.conf.master | 1 + 1 file changed, 1 insertion(+) diff --git a/server/conf/vhost.conf.master b/server/conf/vhost.conf.master index ee7dcac076..75f6a72e87 100644 --- a/server/conf/vhost.conf.master +++ b/server/conf/vhost.conf.master @@ -215,6 +215,7 @@ <tmpl_if name='cgi' op='==' value='y'> # cgi enabled <Directory {tmpl_var name='document_root'}/cgi-bin> + AllowOverride <tmpl_var name='allow_override'> <tmpl_if name='apache_version' op='>' value='2.2' format='version'> Require all granted <tmpl_else> -- GitLab From 0d8f89bbff775b0c6d2ec243b4297d369193f54c Mon Sep 17 00:00:00 2001 From: Marius Burkard <m.burkard@pixcept.de> Date: Mon, 8 Jul 2019 18:27:11 +0200 Subject: [PATCH 093/215] - added rspamd conditionals for mail dkim plugin --- install/lib/installer_base.lib.php | 6 + .../mail_plugin_dkim.inc.php | 188 +++++++++++------- 2 files changed, 118 insertions(+), 76 deletions(-) diff --git a/install/lib/installer_base.lib.php b/install/lib/installer_base.lib.php index 7221dd7dec..7abd315b84 100644 --- a/install/lib/installer_base.lib.php +++ b/install/lib/installer_base.lib.php @@ -1458,6 +1458,12 @@ class installer_base { exec("postconf -e 'smtpd_recipient_restrictions = ".implode(", ", $new_options)."'"); } + if(is_user('_rspamd') && is_group('amavis')) { + exec("usermod -G amavis _rspamd"); + } elseif(is_user('rspamd') && is_group('amavis')) { + exec("usermod -G amavis rspamd"); + } + if(!is_dir('/etc/rspamd/local.d/')){ mkdir('/etc/rspamd/local.d/', 0755, true); } diff --git a/server/plugins-available/mail_plugin_dkim.inc.php b/server/plugins-available/mail_plugin_dkim.inc.php index 405691d130..ff649971a9 100755 --- a/server/plugins-available/mail_plugin_dkim.inc.php +++ b/server/plugins-available/mail_plugin_dkim.inc.php @@ -29,6 +29,7 @@ EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. @author Florian Schaal, info@schaal-24.de + @author Marius Burkard, m.burkard@ispconfig.org (modified for rspamd) @copyright Florian Schaal, info@schaal-24.de */ @@ -59,8 +60,8 @@ class mail_plugin_dkim { /** * This function is called when the plugin is loaded */ - function onLoad() { - global $app, $conf; + public function onLoad() { + global $app; /* Register for the events */ @@ -73,7 +74,7 @@ class mail_plugin_dkim { * This function gets the amavisd-config file * @return string path to the amavisd-config for dkim-keys */ - function get_amavis_config() { + private function get_amavis_config() { $pos_config=array( '/etc/amavisd.conf/50-user', '/etc/amavis/conf.d/50-user', @@ -101,45 +102,59 @@ class mail_plugin_dkim { * @param array $data mail-settings * @return boolean - true when the amavis-config and the dkim-dir are writeable */ - function check_system($data) { - global $app, $mail_config; + private function check_system() { + global $app, $conf, $mail_config; - /** TODO: FIX IF ONLY RSPAMD IS INSTALLED AND NO AMAVIS! **/ - /** TODO: FIX DKIM FOR RSPAMD, RSPAMD CANNOT READ FILES OF amavis:root **/ - $app->uses('getconf'); - $check=true; - - /* check for amavis-config */ - $amavis_configfile = $this->get_amavis_config(); + $check = true; - //* Create the file if it does not exists. - if (substr_compare($amavis_configfile, '60-dkim', -7) === 0 && !file_exists($amavis_configfile)) - $app->system->touch($amavis_configfile); + $mail_config = $app->getconf->get_server_config($conf['server_id'], 'mail'); + if($mail_config['content_filter'] != 'rspamd') { + /* check for amavis-config */ + $amavis_configfile = $this->get_amavis_config(); - if ( $amavis_configfile == '' || !is_writeable($amavis_configfile) ) { - $app->log('Amavis-config not found or not writeable.', LOGLEVEL_ERROR); - $check=false; + //* Create the file if it does not exists. + if (substr_compare($amavis_configfile, '60-dkim', -7) === 0 && !file_exists($amavis_configfile)) { + $app->system->touch($amavis_configfile); + } + + if ( $amavis_configfile == '' || !is_writeable($amavis_configfile) ) { + $app->log('Amavis-config not found or not writeable.', LOGLEVEL_ERROR); + $check = false; + } } /* dir for dkim-keys writeable? */ - $mail_config = $app->getconf->get_server_config($conf['server_id'], 'mail'); if (isset($mail_config['dkim_path']) && !empty($mail_config['dkim_path']) && $mail_config['dkim_path'] != '/') { if (!is_dir($mail_config['dkim_path'])) { $app->log('DKIM Path '.$mail_config['dkim_path'].' not found - (re)created.', LOGLEVEL_DEBUG); if($app->system->is_user('amavis')) { $amavis_user='amavis'; + } elseif($app->system->is_user('_rspamd')) { + $amavis_user = '_rspamd'; + } elseif($app->system->is_user('rspamd')) { + $amavis_user = 'rspamd'; } elseif ($app->system->is_user('vscan')) { - $amavis_user='vscan'; + $amavis_user = 'vscan'; + } else { + $amavis_user = ''; } - else { - $amavis_user=''; + if($app->system->is_user('amavis')) { + $amavis_group='amavis'; + } elseif($app->system->is_user('_rspamd')) { + $amavis_group = '_rspamd'; + } elseif($app->system->is_user('rspamd')) { + $amavis_group = 'rspamd'; + } elseif ($app->system->is_user('vscan')) { + $amavis_group = 'vscan'; + } else { + $amavis_group = ''; } + if(!empty($amavis_user)) { - mkdir($mail_config['dkim_path'], 0750, true); - $app->system->chown($mail_config['dkim_path'], $amavis_user); + $app->system->mkdirpath($mail_config['dkim_path'], 0750, $amavis_user, $amavis_group); } else { - mkdir($mail_config['dkim_path'], 0755, true); + $app->system->mkdirpath($mail_config['dkim_path'], 0755); $app->log('No user amavis or vscan found - using root for '.$mail_config['dkim_path'], LOGLEVEL_WARNING); } } else { @@ -169,12 +184,15 @@ class mail_plugin_dkim { /** * This function restarts amavis */ - function restart_amavis() { + private function restart_amavis() { global $app; + $output = null; $initcommand = $app->system->getinitcommand(array('amavis', 'amavisd'), 'restart'); $app->log('Restarting amavis: '.$initcommand.'.', LOGLEVEL_DEBUG); exec($initcommand, $output); - foreach($output as $logline) $app->log($logline, LOGLEVEL_DEBUG); + foreach($output as $logline) { + $app->log($logline, LOGLEVEL_DEBUG); + } } /** @@ -184,8 +202,8 @@ class mail_plugin_dkim { * @param string $key_domain mail-domain * @return bool - true when the private key was written to disk */ - function write_dkim_key($key_file, $key_value, $key_domain) { - global $app, $mailconfig; + private function write_dkim_key($key_file, $key_value, $key_domain) { + global $app; $success=false; if ($key_file == '' || $key_value == '' || $key_domain == '') { $app->log('DKIM internal error for domain '.$key_domain, LOGLEVEL_ERROR); @@ -194,14 +212,20 @@ class mail_plugin_dkim { if ( $app->system->file_put_contents($key_file.'.private', $key_value) ) { $app->log('Saved DKIM Private-key to '.$key_file.'.private', LOGLEVEL_DEBUG); $success=true; + $pubkey = null; + $result = 0; /* now we get the DKIM Public-key */ exec('cat '.escapeshellarg($key_file.'.private').'|openssl rsa -pubout 2> /dev/null', $pubkey, $result); $public_key=''; - foreach($pubkey as $values) $public_key=$public_key.$values."\n"; + foreach($pubkey as $values) { + $public_key = $public_key . $values . "\n"; + } /* save the DKIM Public-key in dkim-dir */ - if ( $app->system->file_put_contents($key_file.'.public', $public_key) ) + if($app->system->file_put_contents($key_file.'.public', $public_key)) { $app->log('Saved DKIM Public to '.$key_domain.'.', LOGLEVEL_DEBUG); - else $app->log('Unable to save DKIM Public to '.$key_domain.'.', LOGLEVEL_DEBUG); + } else { + $app->log('Unable to save DKIM Public to '.$key_domain.'.', LOGLEVEL_DEBUG); + } } else { $app->log('Unable to save DKIM Private-key to '.$key_file.'.private', LOGLEVEL_ERROR); } @@ -213,26 +237,32 @@ class mail_plugin_dkim { * @param string $key_file full path to the key-file * @param string $key_domain mail-domain */ - function remove_dkim_key($key_file, $key_domain) { + private function remove_dkim_key($key_file, $key_domain) { global $app; if (file_exists($key_file.'.private')) { $app->system->unlink($key_file.'.private'); $app->log('Deleted the DKIM Private-key for '.$key_domain.'.', LOGLEVEL_DEBUG); - } else $app->log('Unable to delete the DKIM Private-key for '.$key_domain.' (not found).', LOGLEVEL_DEBUG); + } else { + $app->log('Unable to delete the DKIM Private-key for '.$key_domain.' (not found).', LOGLEVEL_DEBUG); + } if (file_exists($key_file.'.public')) { $app->system->unlink($key_file.'.public'); $app->log('Deleted the DKIM Public-key for '.$key_domain.'.', LOGLEVEL_DEBUG); - } else $app->log('Unable to delete the DKIM Public-key for '.$key_domain.' (not found).', LOGLEVEL_DEBUG); + } else { + $app->log('Unable to delete the DKIM Public-key for '.$key_domain.' (not found).', LOGLEVEL_DEBUG); + } } /** * This function adds the entry to the amavisd-config * @param string $key_domain mail-domain */ - function add_to_amavis($key_domain, $selector, $old_selector) { + private function add_to_amavis($key_domain, $selector, $old_selector) { global $app, $mail_config; - if (empty($selector)) $selector = 'default'; + if (empty($selector)) { + $selector = 'default'; + } $restart = false; $amavis_configfile = $this->get_amavis_config(); @@ -270,7 +300,7 @@ class mail_plugin_dkim { * This function removes the entry from the amavisd-config * @param string $key_domain mail-domain */ - function remove_from_amavis($key_domain) { + private function remove_from_amavis($key_domain) { global $app; $restart = false; @@ -308,14 +338,17 @@ class mail_plugin_dkim { * This function controlls new key-files and amavisd-entries * @param array $data mail-settings */ - function add_dkim($data) { - global $app; + private function add_dkim($data) { + global $app, $conf; if ($data['new']['active'] == 'y') { $mail_config = $app->getconf->get_server_config($conf['server_id'], 'mail'); - if ( substr($mail_config['dkim_path'], strlen($mail_config['dkim_path'])-1) == '/' ) + if ( substr($mail_config['dkim_path'], strlen($mail_config['dkim_path'])-1) == '/' ) { $mail_config['dkim_path'] = substr($mail_config['dkim_path'], 0, strlen($mail_config['dkim_path'])-1); + } if ($this->write_dkim_key($mail_config['dkim_path']."/".$data['new']['domain'], $data['new']['dkim_private'], $data['new']['domain'])) { - if ($this->add_to_amavis($data['new']['domain'], $data['new']['dkim_selector'], $data['old']['dkim_selector'] )) { + if($mail_config['content_filter'] == 'rspamd') { + $app->services->restartServiceDelayed('rspamd', 'reload'); + } elseif ($this->add_to_amavis($data['new']['domain'], $data['new']['dkim_selector'], $data['old']['dkim_selector'] )) { $this->restart_amavis(); } else { $this->remove_dkim_key($mail_config['dkim_path']."/".$data['new']['domain'], $data['new']['domain']); @@ -329,86 +362,89 @@ class mail_plugin_dkim { /** * This function controlls the removement of keyfiles (public and private) * and the entry in the amavisd-config - * @param array $data mail-settings + * @param array $_data mail-settings */ - function remove_dkim($_data) { - global $app; + private function remove_dkim($_data) { + global $app, $conf; $mail_config = $app->getconf->get_server_config($conf['server_id'], 'mail'); - if ( substr($mail_config['dkim_path'], strlen($mail_config['dkim_path'])-1) == '/' ) + if ( substr($mail_config['dkim_path'], strlen($mail_config['dkim_path'])-1) == '/' ) { $mail_config['dkim_path'] = substr($mail_config['dkim_path'], 0, strlen($mail_config['dkim_path'])-1); + } $this->remove_dkim_key($mail_config['dkim_path']."/".$_data['domain'], $_data['domain']); - if ($this->remove_from_amavis($_data['domain'])) + + if($mail_config['content_filter'] == 'rspamd') { + $app->services->restartServiceDelayed('rspamd', 'reload'); + } elseif ($this->remove_from_amavis($_data['domain'])) { $this->restart_amavis(); + } } /** * Function called by onLoad * deletes dkim-keys */ - function domain_dkim_delete($event_name, $data) { - if (isset($data['old']['dkim']) && $data['old']['dkim'] == 'y' && $data['old']['active'] == 'y') + public function domain_dkim_delete($event_name, $data) { + if (isset($data['old']['dkim']) && $data['old']['dkim'] == 'y' && $data['old']['active'] == 'y') { $this->remove_dkim($data['old']); + } } /** * Function called by onLoad * insert dkim-keys */ - function domain_dkim_insert($event_name, $data) { - if (isset($data['new']['dkim']) && $data['new']['dkim']=='y' && $this->check_system($data)) + public function domain_dkim_insert($event_name, $data) { + if (isset($data['new']['dkim']) && $data['new']['dkim']=='y' && $this->check_system()) { $this->add_dkim($data); + } } /** * Function called by onLoad * chang dkim-settings */ - function domain_dkim_update($event_name, $data) { + public function domain_dkim_update($event_name, $data) { global $app; if($data['new']['dkim'] == 'y' || $data['old']['dkim'] == 'y'){ - if ($this->check_system($data)) { + if ($this->check_system()) { /* maildomain disabled */ if ($data['new']['active'] == 'n' && $data['old']['active'] == 'y' && $data['new']['dkim']=='y') { $app->log('Maildomain '.$data['new']['domain'].' disabled - remove DKIM-settings', LOGLEVEL_DEBUG); $this->remove_dkim($data['new']); } /* maildomain re-enabled */ - if ($data['new']['active'] == 'y' && $data['old']['active'] == 'n' && $data['new']['dkim']=='y') + if ($data['new']['active'] == 'y' && $data['old']['active'] == 'n' && $data['new']['dkim']=='y') { $this->add_dkim($data); - + } + /* maildomain active - only dkim changes */ if ($data['new']['active'] == 'y' && $data['old']['active'] == 'y') { /* dkim disabled */ if ($data['new']['dkim'] != $data['old']['dkim'] && $data['new']['dkim'] == 'n') { $this->remove_dkim($data['new']); } - /* dkim enabled */ - elseif ($data['new']['dkim'] != $data['old']['dkim'] && $data['new']['dkim'] == 'y') { - $this->add_dkim($data); - } - /* new private-key */ - if ($data['new']['dkim_private'] != $data['old']['dkim_private'] && $data['new']['dkim'] == 'y') { - $this->add_dkim($data); - } - /* new selector */ - if ($data['new']['dkim_selector'] != $data['old']['dkim_selector'] && $data['new']['dkim'] == 'y') { + /* dkim enabled + * or new private-key + * or new selector + * or new domain-name + */ + elseif ( + ($data['new']['dkim'] != $data['old']['dkim'] && $data['new']['dkim'] == 'y') + || ($data['new']['dkim_private'] != $data['old']['dkim_private'] && $data['new']['dkim'] == 'y') + || ($data['new']['dkim_selector'] != $data['old']['dkim_selector'] && $data['new']['dkim'] == 'y') + || ($data['new']['domain'] != $data['old']['domain']) + ) { + if ($data['new']['domain'] != $data['old']['domain']) { + $this->remove_dkim($data['old']); + } $this->add_dkim($data); } - /* new domain-name */ - if ($data['new']['domain'] != $data['old']['domain']) { - $this->remove_dkim($data['old']); + /* resync */ + elseif($data['new'] == $data['old'] && $data['new']['dkim']=='y') { $this->add_dkim($data); } } - - /* resync */ - if ($data['new']['active'] == 'y' && $data['new'] == $data['old'] && $data['new']['dkim']=='y') { - $this->add_dkim($data); - } } } } - } - -?> -- GitLab From 938676a4ade832320c903deb20c90121e1a839e5 Mon Sep 17 00:00:00 2001 From: Till Brehm <tbrehm@ispconfig.org> Date: Mon, 8 Jul 2019 20:48:03 +0200 Subject: [PATCH 094/215] Fixed error in internal cron system. --- server/cron.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/server/cron.php b/server/cron.php index ba59ff4049..5e66f51a96 100644 --- a/server/cron.php +++ b/server/cron.php @@ -69,7 +69,7 @@ $conf['server_id'] = intval($conf['server_id']); // Load required base-classes -$app->uses('modules,ini_parser,file,services,getconf,system,cron,functions'); +$app->uses('modules,ini_parser,file,services,getconf,system,cron,functions,plugins'); $app->load('libdatetime,cronjob'); // read all cron jobs -- GitLab From cc8a3e8aae815c62b72fb9ba36ada041fba0e31c Mon Sep 17 00:00:00 2001 From: Till Brehm <tbrehm@ispconfig.org> Date: Mon, 8 Jul 2019 21:32:49 +0200 Subject: [PATCH 095/215] Missed to remove swriteln function in monitor lib/classes/monitor_tools.inc.php --- server/lib/classes/monitor_tools.inc.php | 3 --- 1 file changed, 3 deletions(-) diff --git a/server/lib/classes/monitor_tools.inc.php b/server/lib/classes/monitor_tools.inc.php index a15514fd72..1d3dab290b 100644 --- a/server/lib/classes/monitor_tools.inc.php +++ b/server/lib/classes/monitor_tools.inc.php @@ -217,21 +217,18 @@ class monitor_tools { $distconfid = 'debian100'; $distid = 'debian60'; $distbaseid = 'debian'; - swriteln("Operating System: Debian 10.0 (Buster) or compatible\n"); } elseif(strstr(trim(file_get_contents('/etc/debian_version')), '/sid')) { $distname = 'Debian'; $distver = 'Testing'; $distid = 'debian60'; $distconfid = 'debiantesting'; $distbaseid = 'debian'; - swriteln("Operating System: Debian Testing\n"); } else { $distname = 'Debian'; $distver = 'Unknown'; $distid = 'debian60'; $distconfid = 'debian100'; $distbaseid = 'debian'; - swriteln("Operating System: Debian or compatible, unknown version.\n"); } } -- GitLab From 13a54746407ec7bd0d8faefa5c2750ec99da1f91 Mon Sep 17 00:00:00 2001 From: Marius Burkard <m.burkard@pixcept.de> Date: Tue, 9 Jul 2019 11:42:45 +0200 Subject: [PATCH 096/215] - fixed cron lockfile check, fixes #5334 --- server/cron.php | 31 +++++++++++++++++++------------ 1 file changed, 19 insertions(+), 12 deletions(-) diff --git a/server/cron.php b/server/cron.php index ba59ff4049..d82abd3718 100644 --- a/server/cron.php +++ b/server/cron.php @@ -33,21 +33,28 @@ require SCRIPT_PATH."/lib/config.inc.php"; // Check whether another instance of this script is already running $lockFile = $conf['temppath'] . $conf['fs_div'] . '.ispconfig_cron_lock'; -if (is_file($lockFile)) { +if(is_file($lockFile)) { clearstatcache(); - - // Maybe we hit a deadlock and the lock file is no longer relevant - if(filemtime($lockFile) > time() - 86400) { // 86400 seconds = 1 day - if($conf['log_priority'] <= LOGLEVEL_WARN) print @date('d.m.Y-H:i').' - WARNING - The cron lock file is older than one day.' . "\n"; - exit; - } - - // Check if the process id we have in the lock file is still present + +// Check if the process id we have in the lock file is still present $pid = trim(file_get_contents($lockFile)); if(preg_match('/^[0-9]+$/', $pid)) { - if(file_exists('/proc/' . $pid)) { - if($conf['log_priority'] <= LOGLEVEL_WARN) print @date('d.m.Y-H:i').' - WARNING - There is already an instance of server.php running with pid ' . $pid . '.' . "\n"; - exit; + if(is_dir('/proc/' . $pid)) { + if(file_exists('/proc/' . $pid . '/cmdline')) { + if(strpos(file_get_contents('/proc/' . $pid . '/cmdline'), 'cron.php') !== false) { + if($conf['log_priority'] <= LOGLEVEL_WARN) print @date('d.m.Y-H:i').' - WARNING - There is already an instance of cron.php running with pid ' . $pid . '.' . "\n"; + exit; + } else { + if($conf['log_priority'] <= LOGLEVEL_WARN) print @date('d.m.Y-H:i').' - WARNING - There is a process running with pid ' . $pid . ' but it seems not to be cron.php, continuing.' . "\n"; + } + } else { + if(filemtime($lockFile) < time() - 86400) { + if($conf['log_priority'] <= LOGLEVEL_WARN) print @date('d.m.Y-H:i').' - WARNING - There is already an instance of cron.php running with pid ' . $pid . ' but process is older than 1 day. Continuing.' . "\n"; + } else { + if($conf['log_priority'] <= LOGLEVEL_WARN) print @date('d.m.Y-H:i').' - WARNING - There is already an instance of cron.php running with pid ' . $pid . '.' . "\n"; + exit; + } + } } } if($conf['log_priority'] <= LOGLEVEL_WARN) print @date('d.m.Y-H:i').' - WARNING - There is already a lockfile set, but no process running with this pid (' . $pid . '). Continuing.' . "\n"; -- GitLab From ab82c4dd7d2fabb57f11f9a8a73259be4b2cc66c Mon Sep 17 00:00:00 2001 From: Marius Burkard <m.burkard@pixcept.de> Date: Tue, 9 Jul 2019 13:30:50 +0200 Subject: [PATCH 097/215] - addition for previous commit (moving warning message) --- server/cron.php | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/server/cron.php b/server/cron.php index 6d7aa49785..ef13d06e2f 100644 --- a/server/cron.php +++ b/server/cron.php @@ -55,9 +55,11 @@ if(is_file($lockFile)) { exit; } } + } else { + if($conf['log_priority'] <= LOGLEVEL_WARN) print @date('d.m.Y-H:i').' - WARNING - There is already a lockfile set, but no process running with this pid (' . $pid . '). Continuing.' . "\n"; + } } - if($conf['log_priority'] <= LOGLEVEL_WARN) print @date('d.m.Y-H:i').' - WARNING - There is already a lockfile set, but no process running with this pid (' . $pid . '). Continuing.' . "\n"; } // Set Lockfile -- GitLab From e9c89a7a051bee0706820079e80aae310dfdd59d Mon Sep 17 00:00:00 2001 From: Marius Burkard <m.burkard@pixcept.de> Date: Wed, 10 Jul 2019 18:03:46 +0200 Subject: [PATCH 098/215] - fixed missing tpl class loading --- server/plugins-available/postfix_server_plugin.inc.php | 2 ++ 1 file changed, 2 insertions(+) diff --git a/server/plugins-available/postfix_server_plugin.inc.php b/server/plugins-available/postfix_server_plugin.inc.php index bbd1c2546c..4ed25fd5d1 100644 --- a/server/plugins-available/postfix_server_plugin.inc.php +++ b/server/plugins-available/postfix_server_plugin.inc.php @@ -215,6 +215,8 @@ class postfix_server_plugin { } if($mail_config['content_filter'] == 'rspamd' && ($mail_config['rspamd_password'] != $old_ini_data['mail']['rspamd_password'] || $mail_config['content_filter'] != $old_ini_data['mail']['content_filter'])) { + $app->load('tpl'); + $tpl = new tpl(); $tpl->newTemplate('rspamd_worker-controller.inc.master'); $tpl->setVar('rspamd_password', $mail_config['rspamd_password']); -- GitLab From 7f9a53e50c003c6c1c700340f4fa729ec1139070 Mon Sep 17 00:00:00 2001 From: Marius Burkard <m.burkard@pixcept.de> Date: Fri, 12 Jul 2019 15:55:34 +0200 Subject: [PATCH 099/215] - missing rspamd conf file on update --- install/tpl/rspamd_wblist.inc.conf.master | 19 +------------------ server/conf/rspamd_wblist.inc.conf.master | 18 ++++++++++++++++++ 2 files changed, 19 insertions(+), 18 deletions(-) mode change 100644 => 120000 install/tpl/rspamd_wblist.inc.conf.master create mode 100644 server/conf/rspamd_wblist.inc.conf.master diff --git a/install/tpl/rspamd_wblist.inc.conf.master b/install/tpl/rspamd_wblist.inc.conf.master deleted file mode 100644 index fc06127eae..0000000000 --- a/install/tpl/rspamd_wblist.inc.conf.master +++ /dev/null @@ -1,18 +0,0 @@ -spamfilter_wblist-<tmpl_var name='record_id'> { - priority = <tmpl_var name='priority'>; - from = "<tmpl_var name='from'>"; - rcpt = "<tmpl_var name='recipient'>"; -<tmpl_if name='wblist' op='==' value='W'> - want_spam = yes; -</tmpl_else> - apply "default" { - R_DUMMY = 999.0; - actions { - reject = 0.2; - add_header = 0.1; - greylist = 0.1; - rewrite_subject = 0.1; - } - } -</tmpl_if> -} \ No newline at end of file diff --git a/install/tpl/rspamd_wblist.inc.conf.master b/install/tpl/rspamd_wblist.inc.conf.master new file mode 120000 index 0000000000..1ab3744b99 --- /dev/null +++ b/install/tpl/rspamd_wblist.inc.conf.master @@ -0,0 +1 @@ +../../server/conf/rspamd_wblist.inc.conf.master \ No newline at end of file diff --git a/server/conf/rspamd_wblist.inc.conf.master b/server/conf/rspamd_wblist.inc.conf.master new file mode 100644 index 0000000000..fc06127eae --- /dev/null +++ b/server/conf/rspamd_wblist.inc.conf.master @@ -0,0 +1,18 @@ +spamfilter_wblist-<tmpl_var name='record_id'> { + priority = <tmpl_var name='priority'>; + from = "<tmpl_var name='from'>"; + rcpt = "<tmpl_var name='recipient'>"; +<tmpl_if name='wblist' op='==' value='W'> + want_spam = yes; +</tmpl_else> + apply "default" { + R_DUMMY = 999.0; + actions { + reject = 0.2; + add_header = 0.1; + greylist = 0.1; + rewrite_subject = 0.1; + } + } +</tmpl_if> +} \ No newline at end of file -- GitLab From 49d521e9147ca3e54ed79c6e7991224eef8b810f Mon Sep 17 00:00:00 2001 From: Till Brehm <tbrehm@ispconfig.org> Date: Fri, 12 Jul 2019 17:48:41 +0200 Subject: [PATCH 100/215] Fixed #5341 CSS Styles do not load in ISPConfig UI when no SSL is used --- install/tpl/apache_ispconfig.vhost.master | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/install/tpl/apache_ispconfig.vhost.master b/install/tpl/apache_ispconfig.vhost.master index 55135299f1..d8c56de22d 100644 --- a/install/tpl/apache_ispconfig.vhost.master +++ b/install/tpl/apache_ispconfig.vhost.master @@ -89,11 +89,11 @@ NameVirtualHost *:<tmpl_var name="vhost_port"> <IfModule mod_headers.c> # ISPConfig 3.1 currently requires unsafe-line for both scripts and styles, as well as unsafe-eval - Header set Content-Security-Policy "default-src 'self' 'unsafe-inline' 'unsafe-eval'; img-src 'self' data:; object-src 'none'; upgrade-insecure-requests" + <tmpl_var name="ssl_comment">Header set Content-Security-Policy "default-src 'self' 'unsafe-inline' 'unsafe-eval'; img-src 'self' data:; object-src 'none'; upgrade-insecure-requests" Header set X-Content-Type-Options: nosniff Header set X-Frame-Options: SAMEORIGIN Header set X-XSS-Protection: "1; mode=block" - Header always edit Set-Cookie (.*) "$1; HTTPOnly; Secure" + <tmpl_var name="ssl_comment">Header always edit Set-Cookie (.*) "$1; HTTPOnly; Secure" <IfVersion >= 2.4.7> Header setifempty Strict-Transport-Security "max-age=15768000" </IfVersion> -- GitLab From f5b9582436f59cd6262525330ef003a7907f1a02 Mon Sep 17 00:00:00 2001 From: Marius Burkard <m.burkard@pixcept.de> Date: Fri, 12 Jul 2019 18:31:50 +0200 Subject: [PATCH 101/215] - use crypted password for rspamd UI if possible --- server/plugins-available/postfix_server_plugin.inc.php | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/server/plugins-available/postfix_server_plugin.inc.php b/server/plugins-available/postfix_server_plugin.inc.php index 4ed25fd5d1..763a89b4b4 100644 --- a/server/plugins-available/postfix_server_plugin.inc.php +++ b/server/plugins-available/postfix_server_plugin.inc.php @@ -217,9 +217,15 @@ class postfix_server_plugin { if($mail_config['content_filter'] == 'rspamd' && ($mail_config['rspamd_password'] != $old_ini_data['mail']['rspamd_password'] || $mail_config['content_filter'] != $old_ini_data['mail']['content_filter'])) { $app->load('tpl'); + $rspamd_password = $mail_config['rspamd_password']; + $crypted_password = trim(exec('rspamadm pw -p ' . escapeshellarg($rspamd_password))); + if($crypted_password) { + $rspamd_password = $crypted_password; + } + $tpl = new tpl(); $tpl->newTemplate('rspamd_worker-controller.inc.master'); - $tpl->setVar('rspamd_password', $mail_config['rspamd_password']); + $tpl->setVar('rspamd_password', $rspamd_password); $app->system->file_put_contents('/etc/rspamd/local.d/worker-controller.inc', $tpl->grab()); $app->services->restartServiceDelayed('rspamd', 'reload'); } -- GitLab From eae236864fddd9753da68d0dbac622ff68aac55e Mon Sep 17 00:00:00 2001 From: Till Brehm <tbrehm@ispconfig.org> Date: Mon, 15 Jul 2019 17:09:30 +0200 Subject: [PATCH 102/215] Fixed #5340 Debian 10 warnings about deprecated dovecot config and missing dh params file. --- install/dist/lib/debian60.lib.php | 26 ++++++++++++++++++++++++ install/tpl/debian6_dovecot2.conf.master | 2 ++ 2 files changed, 28 insertions(+) diff --git a/install/dist/lib/debian60.lib.php b/install/dist/lib/debian60.lib.php index 0cd7116568..022d358932 100644 --- a/install/dist/lib/debian60.lib.php +++ b/install/dist/lib/debian60.lib.php @@ -116,6 +116,32 @@ class installer extends installer_base { file_put_contents($config_dir.'/'.$configfile,$content); unset($content); } + if(version_compare($dovecot_version,2.3) >= 0) { + // Remove deprecated setting(s) + removeLine($config_dir.'/'.$configfile, 'ssl_protocols ='); + + // Check if we have a dhparams file and if not, create it + if(!file_exists('/etc/dovecot/dh.pem')) { + swriteln('Creating new DHParams file, this takes several minutes. Do not interrupt the script.'); + if(file_exists('/var/lib/dovecot/ssl-parameters.dat')) { + // convert existing ssl parameters file + $command = 'dd if=/var/lib/dovecot/ssl-parameters.dat bs=1 skip=88 | openssl dhparam -inform der > /etc/dovecot/dh.pem'; + caselog($command.' &> /dev/null', __FILE__, __LINE__, "EXECUTED: $command", "Failed to execute the command $command"); + } else { + /* + Create a new dhparams file. We use 2048 bit only as it simply takes too long + on smaller systems to generate a 4096 bit dh file (> 30 minutes). If you need + a 4096 bit file, create it manually before you install ISPConfig + */ + $command = 'openssl dhparam -out /etc/dovecot/dh.pem 2048'; + caselog($command.' &> /dev/null', __FILE__, __LINE__, "EXECUTED: $command", "Failed to execute the command $command"); + } + } + } else { + // remove settings which are not supported in Dovecot < 2.3 + removeLine($config_dir.'/'.$configfile, 'ssl_min_protocol ='); + removeLine($config_dir.'/'.$configfile, 'ssl_dh ='); + } } else { if(is_file($conf['ispconfig_install_dir'].'/server/conf-custom/install/debian6_dovecot.conf.master')) { copy($conf['ispconfig_install_dir'].'/server/conf-custom/install/debian6_dovecot.conf.master', $config_dir.'/'.$configfile); diff --git a/install/tpl/debian6_dovecot2.conf.master b/install/tpl/debian6_dovecot2.conf.master index db6e0bfbe2..f13bbd53df 100644 --- a/install/tpl/debian6_dovecot2.conf.master +++ b/install/tpl/debian6_dovecot2.conf.master @@ -6,7 +6,9 @@ log_timestamp = "%Y-%m-%d %H:%M:%S " mail_privileged_group = vmail ssl_cert = </etc/postfix/smtpd.cert ssl_key = </etc/postfix/smtpd.key +ssl_dh = </etc/dovecot/dh.pem ssl_protocols = !SSLv2 !SSLv3 +ssl_min_protocol = TLSv1 mail_max_userip_connections = 100 passdb { args = /etc/dovecot/dovecot-sql.conf -- GitLab From 536e907f55e0405398e70203bc4e1d319162d45b Mon Sep 17 00:00:00 2001 From: Marius Burkard <m.burkard@pixcept.de> Date: Mon, 15 Jul 2019 18:39:50 +0200 Subject: [PATCH 103/215] - implemented per-domain-dkim, including custom selector --- install/lib/installer_base.lib.php | 14 ++++++++++++++ install/tpl/rspamd_dkim_signing.conf.master | 5 +++-- server/lib/classes/system.inc.php | 18 ++++++++++++++++-- .../plugins-available/mail_plugin_dkim.inc.php | 5 +++++ .../postfix_server_plugin.inc.php | 15 +++++++++++++++ 5 files changed, 53 insertions(+), 4 deletions(-) diff --git a/install/lib/installer_base.lib.php b/install/lib/installer_base.lib.php index 7abd315b84..4024e544b7 100644 --- a/install/lib/installer_base.lib.php +++ b/install/lib/installer_base.lib.php @@ -1456,6 +1456,20 @@ class installer_base { } } exec("postconf -e 'smtpd_recipient_restrictions = ".implode(", ", $new_options)."'"); + + if ( substr($mail_config['dkim_path'], strlen($mail_config['dkim_path'])-1) == '/' ) { + $mail_config['dkim_path'] = substr($mail_config['dkim_path'], 0, strlen($mail_config['dkim_path'])-1); + } + $dkim_domains = $this->db->queryAllRecords('SELECT `dkim_selector`, `domain` FROM `mail_domain` WHERE `dkim` = ? ORDER BY `domain` ASC', 'y'); + $fpp = fopen('/etc/rspamd/local.d/dkim_domains.map', 'w'); + $fps = fopen('/etc/rspamd/local.d/dkim_selectors.map', 'w'); + foreach($dkim_domains as $dkim_domain) { + fwrite($fpp, $dkim_domain['domain'] . ' ' . $mail_config['dkim_path'] . '/' . $dkim_domain['domain'] . '.private' . "\n"); + fwrite($fps, $dkim_domain['domain'] . ' ' . $dkim_domain['dkim_selector']); + } + fclose($fpp); + fclose($fps); + unset($dkim_domains); } if(is_user('_rspamd') && is_group('amavis')) { diff --git a/install/tpl/rspamd_dkim_signing.conf.master b/install/tpl/rspamd_dkim_signing.conf.master index 0e55a7ead2..a27ee78f91 100644 --- a/install/tpl/rspamd_dkim_signing.conf.master +++ b/install/tpl/rspamd_dkim_signing.conf.master @@ -1,2 +1,3 @@ -path = "<tmpl_var name='dkim_path'>/$domain.private"; -selector = "default"; \ No newline at end of file +try_fallback = false; +path_map = "/etc/rspamd/local.d/dkim_domains.map"; +selector_map = "/etc/rspamd/local.d/dkim_selectors.map";"; \ No newline at end of file diff --git a/server/lib/classes/system.inc.php b/server/lib/classes/system.inc.php index 5c277ada1a..304701a5f2 100644 --- a/server/lib/classes/system.inc.php +++ b/server/lib/classes/system.inc.php @@ -1535,7 +1535,14 @@ class system{ $found = 0; if(is_array($lines)) { foreach($lines as $line) { - if($strict == 0) { + if($strict == 0 && preg_match('/^REGEX:(.*)$/', $search_pattern)) { + if(preg_match(substr($search_pattern, 6), $line)) { + $out .= $new_line."\n"; + $found = 1; + } else { + $out .= $line; + } + } elseif($strict == 0) { if(stristr($line, $search_pattern)) { $out .= $new_line."\n"; $found = 1; @@ -1573,7 +1580,14 @@ class system{ if($lines = @file($filename)) { $out = ''; foreach($lines as $line) { - if($strict == 0) { + if($strict == 0 && preg_match('/^REGEX:(.*)$/', $search_pattern)) { + if(preg_match(substr($search_pattern, 6), $line)) { + $out .= $new_line."\n"; + $found = 1; + } else { + $out .= $line; + } + } elseif($strict == 0) { if(!stristr($line, $search_pattern)) { $out .= $line; } diff --git a/server/plugins-available/mail_plugin_dkim.inc.php b/server/plugins-available/mail_plugin_dkim.inc.php index ff649971a9..ebfd6c0ac7 100755 --- a/server/plugins-available/mail_plugin_dkim.inc.php +++ b/server/plugins-available/mail_plugin_dkim.inc.php @@ -347,6 +347,9 @@ class mail_plugin_dkim { } if ($this->write_dkim_key($mail_config['dkim_path']."/".$data['new']['domain'], $data['new']['dkim_private'], $data['new']['domain'])) { if($mail_config['content_filter'] == 'rspamd') { + $app->system->replaceLine('/etc/rspamd/local.d/dkim_domains.map', 'REGEX:/^' . preg_quote($data['new']['domain'], '/') . ' /', $data['new']['domain'] . ' ' . $mail_config['dkim_path']."/".$data['new']['domain'] . '.private'); + $app->system->replaceLine('/etc/rspamd/local.d/dkim_selectors.map', 'REGEX:/^' . preg_quote($data['new']['domain'], '/') . ' /', $data['new']['domain'] . ' ' . $data['new']['dkim_selector']); + $app->services->restartServiceDelayed('rspamd', 'reload'); } elseif ($this->add_to_amavis($data['new']['domain'], $data['new']['dkim_selector'], $data['old']['dkim_selector'] )) { $this->restart_amavis(); @@ -373,6 +376,8 @@ class mail_plugin_dkim { $this->remove_dkim_key($mail_config['dkim_path']."/".$_data['domain'], $_data['domain']); if($mail_config['content_filter'] == 'rspamd') { + $app->system->removeLine('/etc/rspamd/local.d/dkim_domains.map', 'REGEX:/^' . preg_quote($_data['domain'], '/') . ' /'); + $app->system->removeLine('/etc/rspamd/local.d/dkim_selectors.map', 'REGEX:/^' . preg_quote($_data['domain'], '/') . ' /'); $app->services->restartServiceDelayed('rspamd', 'reload'); } elseif ($this->remove_from_amavis($_data['domain'])) { $this->restart_amavis(); diff --git a/server/plugins-available/postfix_server_plugin.inc.php b/server/plugins-available/postfix_server_plugin.inc.php index 763a89b4b4..933db86b3b 100644 --- a/server/plugins-available/postfix_server_plugin.inc.php +++ b/server/plugins-available/postfix_server_plugin.inc.php @@ -200,6 +200,21 @@ class postfix_server_plugin { } } exec("postconf -e 'smtpd_recipient_restrictions = ".implode(", ", $new_options)."'"); + + // get all domains that have dkim enabled + if ( substr($mail_config['dkim_path'], strlen($mail_config['dkim_path'])-1) == '/' ) { + $mail_config['dkim_path'] = substr($mail_config['dkim_path'], 0, strlen($mail_config['dkim_path'])-1); + } + $dkim_domains = $app->db->queryAllRecords('SELECT `dkim_selector`, `domain` FROM `mail_domain` WHERE `dkim` = ? ORDER BY `domain` ASC', 'y'); + $fpp = fopen('/etc/rspamd/local.d/dkim_domains.map', 'w'); + $fps = fopen('/etc/rspamd/local.d/dkim_selectors.map', 'w'); + foreach($dkim_domains as $dkim_domain) { + fwrite($fpp, $dkim_domain['domain'] . ' ' . $mail_config['dkim_path'] . '/' . $dkim_domain['domain'] . '.private' . "\n"); + fwrite($fps, $dkim_domain['domain'] . ' ' . $dkim_domain['dkim_selector']); + } + fclose($fpp); + fclose($fps); + unset($dkim_domains); } if($mail_config['content_filter'] == 'amavisd'){ exec("postconf -X 'smtpd_milters'"); -- GitLab From 3d54268ee21a4351d45f94090526758e01824b77 Mon Sep 17 00:00:00 2001 From: Marius Burkard <m.burkard@pixcept.de> Date: Mon, 15 Jul 2019 18:51:10 +0200 Subject: [PATCH 104/215] - problem with missing newlines from previous commit --- install/lib/installer_base.lib.php | 27 ++++++++++--------- .../postfix_server_plugin.inc.php | 2 +- 2 files changed, 15 insertions(+), 14 deletions(-) diff --git a/install/lib/installer_base.lib.php b/install/lib/installer_base.lib.php index 4024e544b7..f752b693d0 100644 --- a/install/lib/installer_base.lib.php +++ b/install/lib/installer_base.lib.php @@ -1457,19 +1457,6 @@ class installer_base { } exec("postconf -e 'smtpd_recipient_restrictions = ".implode(", ", $new_options)."'"); - if ( substr($mail_config['dkim_path'], strlen($mail_config['dkim_path'])-1) == '/' ) { - $mail_config['dkim_path'] = substr($mail_config['dkim_path'], 0, strlen($mail_config['dkim_path'])-1); - } - $dkim_domains = $this->db->queryAllRecords('SELECT `dkim_selector`, `domain` FROM `mail_domain` WHERE `dkim` = ? ORDER BY `domain` ASC', 'y'); - $fpp = fopen('/etc/rspamd/local.d/dkim_domains.map', 'w'); - $fps = fopen('/etc/rspamd/local.d/dkim_selectors.map', 'w'); - foreach($dkim_domains as $dkim_domain) { - fwrite($fpp, $dkim_domain['domain'] . ' ' . $mail_config['dkim_path'] . '/' . $dkim_domain['domain'] . '.private' . "\n"); - fwrite($fps, $dkim_domain['domain'] . ' ' . $dkim_domain['dkim_selector']); - } - fclose($fpp); - fclose($fps); - unset($dkim_domains); } if(is_user('_rspamd') && is_group('amavis')) { @@ -1485,6 +1472,20 @@ class installer_base { if(!is_dir('/etc/rspamd/override.d/')){ mkdir('/etc/rspamd/override.d/', 0755, true); } + + if ( substr($mail_config['dkim_path'], strlen($mail_config['dkim_path'])-1) == '/' ) { + $mail_config['dkim_path'] = substr($mail_config['dkim_path'], 0, strlen($mail_config['dkim_path'])-1); + } + $dkim_domains = $this->db->queryAllRecords('SELECT `dkim_selector`, `domain` FROM `mail_domain` WHERE `dkim` = ? ORDER BY `domain` ASC', 'y'); + $fpp = fopen('/etc/rspamd/local.d/dkim_domains.map', 'w'); + $fps = fopen('/etc/rspamd/local.d/dkim_selectors.map', 'w'); + foreach($dkim_domains as $dkim_domain) { + fwrite($fpp, $dkim_domain['domain'] . ' ' . $mail_config['dkim_path'] . '/' . $dkim_domain['domain'] . '.private' . "\n"); + fwrite($fps, $dkim_domain['domain'] . ' ' . $dkim_domain['dkim_selector'] . "\n"); + } + fclose($fpp); + fclose($fps); + unset($dkim_domains); $tpl = new tpl(); $tpl->newTemplate('rspamd_users.conf.master'); diff --git a/server/plugins-available/postfix_server_plugin.inc.php b/server/plugins-available/postfix_server_plugin.inc.php index 933db86b3b..f66fc40d42 100644 --- a/server/plugins-available/postfix_server_plugin.inc.php +++ b/server/plugins-available/postfix_server_plugin.inc.php @@ -210,7 +210,7 @@ class postfix_server_plugin { $fps = fopen('/etc/rspamd/local.d/dkim_selectors.map', 'w'); foreach($dkim_domains as $dkim_domain) { fwrite($fpp, $dkim_domain['domain'] . ' ' . $mail_config['dkim_path'] . '/' . $dkim_domain['domain'] . '.private' . "\n"); - fwrite($fps, $dkim_domain['domain'] . ' ' . $dkim_domain['dkim_selector']); + fwrite($fps, $dkim_domain['domain'] . ' ' . $dkim_domain['dkim_selector'] . "\n"); } fclose($fpp); fclose($fps); -- GitLab From 0f15aff2403e6ec8270607e4ce880908833ea644 Mon Sep 17 00:00:00 2001 From: Marius Burkard <m.burkard@pixcept.de> Date: Mon, 15 Jul 2019 18:59:08 +0200 Subject: [PATCH 105/215] - added missing database name set on update of ISPConfig --- install/update.php | 1 + 1 file changed, 1 insertion(+) diff --git a/install/update.php b/install/update.php index 42ddd625f5..b700219f2e 100644 --- a/install/update.php +++ b/install/update.php @@ -253,6 +253,7 @@ prepareDBDump(); //* initialize the database $inst->db = new db(); +$inst->db->setDBName($conf['mysql']['database']); //* initialize the master DB, if we have a multiserver setup if($conf['mysql']['master_slave_setup'] == 'y') { -- GitLab From 66357f0779da7af83fe1d8310849672db5b08df6 Mon Sep 17 00:00:00 2001 From: Marius Burkard <m.burkard@pixcept.de> Date: Mon, 15 Jul 2019 19:05:45 +0200 Subject: [PATCH 106/215] - still problem with domain selector on update of ISPC --- install/lib/installer_base.lib.php | 2 +- install/update.php | 1 - 2 files changed, 1 insertion(+), 2 deletions(-) diff --git a/install/lib/installer_base.lib.php b/install/lib/installer_base.lib.php index f752b693d0..4db0da1ecf 100644 --- a/install/lib/installer_base.lib.php +++ b/install/lib/installer_base.lib.php @@ -1476,7 +1476,7 @@ class installer_base { if ( substr($mail_config['dkim_path'], strlen($mail_config['dkim_path'])-1) == '/' ) { $mail_config['dkim_path'] = substr($mail_config['dkim_path'], 0, strlen($mail_config['dkim_path'])-1); } - $dkim_domains = $this->db->queryAllRecords('SELECT `dkim_selector`, `domain` FROM `mail_domain` WHERE `dkim` = ? ORDER BY `domain` ASC', 'y'); + $dkim_domains = $this->db->queryAllRecords('SELECT `dkim_selector`, `domain` FROM ?? WHERE `dkim` = ? ORDER BY `domain` ASC', $conf['mysql']['database'] . '.mail_domain', 'y'); $fpp = fopen('/etc/rspamd/local.d/dkim_domains.map', 'w'); $fps = fopen('/etc/rspamd/local.d/dkim_selectors.map', 'w'); foreach($dkim_domains as $dkim_domain) { diff --git a/install/update.php b/install/update.php index b700219f2e..42ddd625f5 100644 --- a/install/update.php +++ b/install/update.php @@ -253,7 +253,6 @@ prepareDBDump(); //* initialize the database $inst->db = new db(); -$inst->db->setDBName($conf['mysql']['database']); //* initialize the master DB, if we have a multiserver setup if($conf['mysql']['master_slave_setup'] == 'y') { -- GitLab From 78041c8dff476bca0d75d57bdadfe881f4d40512 Mon Sep 17 00:00:00 2001 From: Marius Burkard <m.burkard@pixcept.de> Date: Mon, 15 Jul 2019 19:09:02 +0200 Subject: [PATCH 107/215] - syntax error in config for rspamd dkim --- install/tpl/rspamd_dkim_signing.conf.master | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/install/tpl/rspamd_dkim_signing.conf.master b/install/tpl/rspamd_dkim_signing.conf.master index a27ee78f91..ed9abe40ee 100644 --- a/install/tpl/rspamd_dkim_signing.conf.master +++ b/install/tpl/rspamd_dkim_signing.conf.master @@ -1,3 +1,3 @@ try_fallback = false; path_map = "/etc/rspamd/local.d/dkim_domains.map"; -selector_map = "/etc/rspamd/local.d/dkim_selectors.map";"; \ No newline at end of file +selector_map = "/etc/rspamd/local.d/dkim_selectors.map"; \ No newline at end of file -- GitLab From 1eb51aa6feb069c3ff969b95d1e452abae916f78 Mon Sep 17 00:00:00 2001 From: Marius Burkard <m.burkard@pixcept.de> Date: Thu, 18 Jul 2019 11:00:53 +0200 Subject: [PATCH 108/215] - fixed white/blacklisting for rspamd --- install/lib/update.lib.php | 2 +- server/conf/rspamd_users.inc.conf.master | 16 ++++++++-------- server/conf/rspamd_wblist.inc.conf.master | 14 +++++++++++--- server/plugins-available/rspamd_plugin.inc.php | 3 ++- 4 files changed, 22 insertions(+), 13 deletions(-) diff --git a/install/lib/update.lib.php b/install/lib/update.lib.php index 3406b760b0..fd1a34b2ca 100644 --- a/install/lib/update.lib.php +++ b/install/lib/update.lib.php @@ -103,7 +103,7 @@ function checkDbHealth() { $notok = array(); echo "Checking ISPConfig database .. "; - exec("mysqlcheck -h ".escapeshellarg($conf['mysql']['host'])." -u ".escapeshellarg($conf['mysql']['admin_user'])." -p".escapeshellarg($conf['mysql']['admin_password'])." -P ".escapeshellarg($conf['mysql']['port'])." -r ".escapeshellarg($conf["mysql"]["database"]), $result); + exec("mysqlcheck -h ".escapeshellarg($conf['mysql']['host'])." -u ".escapeshellarg($conf['mysql']['admin_user'])." -p".escapeshellarg($conf['mysql']['admin_password'])." -P ".escapeshellarg($conf['mysql']['port'])." --auto-repair ".escapeshellarg($conf["mysql"]["database"]), $result); for( $i=0; $i<sizeof($result);$i++) { if ( substr($result[$i], -2) != "OK" ) { $notok[] = $result[$i]; diff --git a/server/conf/rspamd_users.inc.conf.master b/server/conf/rspamd_users.inc.conf.master index 18934c2760..43890e8135 100644 --- a/server/conf/rspamd_users.inc.conf.master +++ b/server/conf/rspamd_users.inc.conf.master @@ -5,34 +5,34 @@ spamfilter_users-<tmpl_var name='record_id'> { want_spam = yes; </tmpl_if> <tmpl_if name='spam_lover_virus_lover' op='==' value='spam_lover_AND_NOTvirus_lover'> - apply "default" { + apply { CLAM_VIRUS = 1999.0; JUST_EICAR = 1999.0; actions { - reject = 999.0; + reject = null; } } </tmpl_if> <tmpl_if name='spam_lover_virus_lover' op='==' value='NOTspam_lover_AND_virus_lover'> - apply "default" { + apply { CLAM_VIRUS = -999.0; JUST_EICAR = -999.0; actions { <tmpl_if name='rspamd_greylisting' op='==' value='y'>greylist = <tmpl_var name='rspamd_spam_greylisting_level'>;</tmpl_if> - - <tmpl_var name='rspamd_spam_tag_method'> = <tmpl_var name='rspamd_spam_tag_level'>; + <tmpl_if name='rspamd_spam_tag_method' op='==' value='rewrite_subject'>"rewrite subject" = <tmpl_var name='rspamd_spam_tag_level'>;</tmpl_if> + <tmpl_if name='rspamd_spam_tag_method' op='==' value='add_header'>"add header" = <tmpl_var name='rspamd_spam_tag_level'>;</tmpl_if> reject = <tmpl_var name='rspamd_spam_kill_level'>; } } </tmpl_if> <tmpl_if name='spam_lover_virus_lover' op='==' value='NOTspam_lover_AND_NOTvirus_lover'> - apply "default" { + apply { CLAM_VIRUS = <tmpl_var name='rspamd_virus_kill_level'>; JUST_EICAR = <tmpl_var name='rspamd_virus_kill_level'>; actions { <tmpl_if name='rspamd_greylisting' op='==' value='y'>greylist = <tmpl_var name='rspamd_spam_greylisting_level'>;</tmpl_if> - - <tmpl_var name='rspamd_spam_tag_method'> = <tmpl_var name='rspamd_spam_tag_level'>; + <tmpl_if name='rspamd_spam_tag_method' op='==' value='rewrite_subject'>"rewrite subject" = <tmpl_var name='rspamd_spam_tag_level'>;</tmpl_if> + <tmpl_if name='rspamd_spam_tag_method' op='==' value='add_header'>"add header" = <tmpl_var name='rspamd_spam_tag_level'>;</tmpl_if> reject = <tmpl_var name='rspamd_spam_kill_level'>; } } diff --git a/server/conf/rspamd_wblist.inc.conf.master b/server/conf/rspamd_wblist.inc.conf.master index fc06127eae..aaa7d06f67 100644 --- a/server/conf/rspamd_wblist.inc.conf.master +++ b/server/conf/rspamd_wblist.inc.conf.master @@ -4,14 +4,22 @@ spamfilter_wblist-<tmpl_var name='record_id'> { rcpt = "<tmpl_var name='recipient'>"; <tmpl_if name='wblist' op='==' value='W'> want_spam = yes; + apply { + actions { + reject = null; + "add header" = null; + greylist = null; + "rewrite subject" = null; + } + } </tmpl_else> - apply "default" { + apply { R_DUMMY = 999.0; actions { reject = 0.2; - add_header = 0.1; + "add header" = 0.1; greylist = 0.1; - rewrite_subject = 0.1; + "rewrite subject" = 0.1; } } </tmpl_if> diff --git a/server/plugins-available/rspamd_plugin.inc.php b/server/plugins-available/rspamd_plugin.inc.php index 65f4522ba7..b6eddc401f 100644 --- a/server/plugins-available/rspamd_plugin.inc.php +++ b/server/plugins-available/rspamd_plugin.inc.php @@ -189,7 +189,8 @@ class rspamd_plugin { $tpl = new tpl(); $tpl->newTemplate('rspamd_wblist.inc.conf.master'); $tpl->setVar('record_id', intval($data['new']['wblist_id'])); - $tpl->setVar('priority', intval($data['new']['priority'])); + // we need to add 10 to priority to avoid mailbox/domain spamfilter settings overriding white/blacklists + $tpl->setVar('priority', intval($data['new']['priority']) + 10); $tpl->setVar('from', $app->functions->idn_encode($data['new']['email'])); $tpl->setVar('recipient', $app->functions->idn_encode($recipient['email'])); //$tpl->setVar('action', ($data['new']['wb'] == 'W'? 'want_spam = yes;' : 'action = "reject";')); -- GitLab From f343e169a2afda4512cf64d98b074ded71fbe532 Mon Sep 17 00:00:00 2001 From: Marius Burkard <m.burkard@pixcept.de> Date: Tue, 23 Jul 2019 19:32:22 +0200 Subject: [PATCH 109/215] Insufficient escaping of whitespace in FTP user paths, fixes #5350 --- interface/web/sites/form/ftp_user.tform.php | 5 ++++- server/plugins-available/ftpuser_base_plugin.inc.php | 6 ++---- 2 files changed, 6 insertions(+), 5 deletions(-) diff --git a/interface/web/sites/form/ftp_user.tform.php b/interface/web/sites/form/ftp_user.tform.php index 239bfdb858..5e77de4b5f 100644 --- a/interface/web/sites/form/ftp_user.tform.php +++ b/interface/web/sites/form/ftp_user.tform.php @@ -276,7 +276,10 @@ if($app->auth->is_admin()) { 'formtype' => 'TEXT', 'validators' => array ( 0 => array ( 'type' => 'NOTEMPTY', 'errmsg'=> 'directory_error_empty'), - 1 => array ( 'type' => 'CUSTOM', + 1 => array ( 'type' => 'REGEX', + 'regex' => '/^\/[a-zA-Z0-9\ \.\-\_\/]{10,128}$/', + 'errmsg'=> 'directory_error_regex'), + 2 => array ( 'type' => 'CUSTOM', 'class' => 'validate_ftpuser', 'function' => 'ftp_dir', 'errmsg' => 'directory_error_notinweb'), diff --git a/server/plugins-available/ftpuser_base_plugin.inc.php b/server/plugins-available/ftpuser_base_plugin.inc.php index af5870a4ba..c34371a181 100644 --- a/server/plugins-available/ftpuser_base_plugin.inc.php +++ b/server/plugins-available/ftpuser_base_plugin.inc.php @@ -83,8 +83,7 @@ class ftpuser_base_plugin { } $app->system->web_folder_protection($web['document_root'], false); - exec('mkdir -p '.escapeshellcmd($data['new']['dir'])); - exec('chown '.escapeshellcmd($web["system_user"]).':'.escapeshellcmd($web['system_group']).' '.$data['new']['dir']); + $app->system->mkdirpath($data['new']['dir'], 0755, $web["system_user"], $web["system_group"]); $app->system->web_folder_protection($web['document_root'], true); $app->log("Added ftpuser_dir: ".$data['new']['dir'], LOGLEVEL_DEBUG); @@ -109,8 +108,7 @@ class ftpuser_base_plugin { } $app->system->web_folder_protection($web['document_root'], false); - exec('mkdir -p '.escapeshellcmd($data['new']['dir'])); - exec('chown '.escapeshellcmd($web["system_user"]).':'.escapeshellcmd($web['system_group']).' '.$data['new']['dir']); + $app->system->mkdirpath($data['new']['dir'], 0755, $web["system_user"], $web["system_group"]); $app->system->web_folder_protection($web['document_root'], true); -- GitLab From 2d6d9eb4ffaaf5371ecfba1734ab1f86873013ea Mon Sep 17 00:00:00 2001 From: Marius Burkard <m.burkard@pixcept.de> Date: Sat, 27 Jul 2019 21:18:24 +0200 Subject: [PATCH 110/215] - Support CRYPT-SHA512 and SHA256 for passwords, implements #5353 --- .../sql/incremental/upd_dev_collection.sql | 5 ++++ install/sql/ispconfig3.sql | 10 ++++---- interface/lib/classes/auth.inc.php | 25 +++++++++++++++---- interface/lib/classes/remote.d/client.inc.php | 14 ++++------- interface/lib/classes/remoting.inc.php | 10 ++------ interface/web/admin/users_edit.php | 10 +++----- interface/web/client/reseller_edit.php | 24 +++++++----------- 7 files changed, 49 insertions(+), 49 deletions(-) diff --git a/install/sql/incremental/upd_dev_collection.sql b/install/sql/incremental/upd_dev_collection.sql index e69de29bb2..d5b7b0e017 100644 --- a/install/sql/incremental/upd_dev_collection.sql +++ b/install/sql/incremental/upd_dev_collection.sql @@ -0,0 +1,5 @@ +ALTER TABLE `client` CHANGE COLUMN `password` `password` VARCHAR(200) DEFAULT NULL; +ALTER TABLE `ftp_user` CHANGE COLUMN `password` `password` VARCHAR(200) DEFAULT NULL; +ALTER TABLE `shell_user` CHANGE COLUMN `password` `password` VARCHAR(200) DEFAULT NULL; +ALTER TABLE `sys_user` CHANGE COLUMN `passwort` `passwort` VARCHAR(200) DEFAULT NULL; +ALTER TABLE `webdav_user` CHANGE COLUMN `password` `password` VARCHAR(200) DEFAULT NULL; \ No newline at end of file diff --git a/install/sql/ispconfig3.sql b/install/sql/ispconfig3.sql index 2417ef0d21..3f534eedf0 100644 --- a/install/sql/ispconfig3.sql +++ b/install/sql/ispconfig3.sql @@ -243,7 +243,7 @@ CREATE TABLE `client` ( `limit_openvz_vm_template_id` int(11) NOT NULL DEFAULT '0', `parent_client_id` int(11) unsigned NOT NULL DEFAULT '0', `username` varchar(64) DEFAULT NULL, - `password` varchar(64) DEFAULT NULL, + `password` varchar(200) DEFAULT NULL, `language` char(2) NOT NULL DEFAULT 'en', `usertheme` varchar(32) NOT NULL DEFAULT 'default', `template_master` int(11) unsigned NOT NULL DEFAULT '0', @@ -705,7 +705,7 @@ CREATE TABLE `ftp_user` ( `parent_domain_id` int(11) unsigned NOT NULL default '0', `username` varchar(64) default NULL, `username_prefix` varchar(50) NOT NULL default '', - `password` varchar(64) default NULL, + `password` varchar(200) default NULL, `quota_size` bigint(20) NOT NULL default '-1', `active` enum('n','y') NOT NULL default 'y', `uid` varchar(64) default NULL, @@ -1440,7 +1440,7 @@ CREATE TABLE `shell_user` ( `parent_domain_id` int(11) unsigned NOT NULL default '0', `username` varchar(64) default NULL, `username_prefix` varchar(50) NOT NULL default '', - `password` varchar(64) default NULL, + `password` varchar(200) default NULL, `quota_size` bigint(20) NOT NULL default '-1', `active` enum('n','y') NOT NULL default 'y', `puser` varchar(255) default NULL, @@ -1864,7 +1864,7 @@ CREATE TABLE `sys_user` ( `sys_perm_group` varchar(5) NOT NULL default 'riud', `sys_perm_other` varchar(5) NOT NULL default '', `username` varchar(64) NOT NULL default '', - `passwort` varchar(64) NOT NULL default '', + `passwort` varchar(200) NOT NULL default '', `modules` varchar(255) NOT NULL default '', `startmodule` varchar(255) NOT NULL default '', `app_theme` varchar(32) NOT NULL default 'default', @@ -1899,7 +1899,7 @@ CREATE TABLE `webdav_user` ( `parent_domain_id` int(11) unsigned NOT NULL DEFAULT '0', `username` varchar(64) DEFAULT NULL, `username_prefix` varchar(50) NOT NULL default '', - `password` varchar(64) DEFAULT NULL, + `password` varchar(200) DEFAULT NULL, `active` enum('n','y') NOT NULL DEFAULT 'y', `dir` varchar(255) DEFAULT NULL, PRIMARY KEY (`webdav_user_id`) diff --git a/interface/lib/classes/auth.inc.php b/interface/lib/classes/auth.inc.php index 6658c4c116..afe50ac692 100644 --- a/interface/lib/classes/auth.inc.php +++ b/interface/lib/classes/auth.inc.php @@ -231,12 +231,27 @@ class auth { if($charset != 'UTF-8') { $cleartext_password = mb_convert_encoding($cleartext_password, $charset, 'UTF-8'); } - $salt="$1$"; - $base64_alphabet='ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/'; - for ($n=0;$n<8;$n++) { - $salt.=$base64_alphabet[mt_rand(0, 63)]; + + if(defined('CRYPT_SHA512') && CRYPT_SHA512 == 1) { + $salt = '$6$rounds=5000$'; + $salt_length = 16; + } elseif(defined('CRYPT_SHA256') && CRYPT_SHA256 == 1) { + $salt = '$5$rounds=5000$'; + $salt_length = 16; + } else { + $salt = '$1$'; + $salt_length = 12; + } + + if(function_exists('openssl_random_pseudo_bytes')) { + $salt .= substr(bin2hex(openssl_random_pseudo_bytes($salt_length)), 0, $salt_length); + } else { + $base64_alphabet = 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789./'; + for($n = 0; $n < $salt_length; $n++) { + $salt .= $base64_alphabet[mt_rand(0, 63)]; + } } - $salt.="$"; + $salt .= "$"; return crypt($cleartext_password, $salt); } diff --git a/interface/lib/classes/remote.d/client.inc.php b/interface/lib/classes/remote.d/client.inc.php index b91909c9d3..e07e227e60 100644 --- a/interface/lib/classes/remote.d/client.inc.php +++ b/interface/lib/classes/remote.d/client.inc.php @@ -604,11 +604,9 @@ class remoting_client extends remoting { if($user) { $saved_password = stripslashes($user['password']); - if(substr($saved_password, 0, 3) == '$1$') { - //* The password is crypt-md5 encrypted - $salt = '$1$'.substr($saved_password, 3, 8).'$'; - - if(crypt(stripslashes($password), $salt) != $saved_password) { + if(preg_match('/^\$[156]\$/', $saved_password)) { + //* The password is crypt encrypted + if(crypt(stripslashes($password), $saved_password) !== $saved_password) { $user = false; } } else { @@ -636,11 +634,9 @@ class remoting_client extends remoting { if($user) { $saved_password = stripslashes($user['passwort']); - if(substr($saved_password, 0, 3) == '$1$') { + if(preg_match('/^\$[156]\$/', $saved_password)) { //* The password is crypt-md5 encrypted - $salt = '$1$'.substr($saved_password, 3, 8).'$'; - - if(crypt(stripslashes($password), $salt) != $saved_password) { + if(crypt(stripslashes($password), $saved_password) != $saved_password) { $user = false; } } else { diff --git a/interface/lib/classes/remoting.inc.php b/interface/lib/classes/remoting.inc.php index 6e551355a6..e1fc1ada86 100644 --- a/interface/lib/classes/remoting.inc.php +++ b/interface/lib/classes/remoting.inc.php @@ -99,28 +99,22 @@ class remoting { if($user) { $saved_password = stripslashes($user['passwort']); - if(substr($saved_password, 0, 3) == '$1$') { + if(preg_match('/^\$[156]\$/', $saved_password)) { //* The password is crypt-md5 encrypted - $salt = '$1$'.substr($saved_password, 3, 8).'$'; - - if(crypt(stripslashes($password), $salt) != $saved_password) { + if(crypt(stripslashes($password), $saved_password) != $saved_password) { throw new SoapFault('client_login_failed', 'The login failed. Username or password wrong.'); - return false; } } else { //* The password is md5 encrypted if(md5($password) != $saved_password) { throw new SoapFault('client_login_failed', 'The login failed. Username or password wrong.'); - return false; } } } else { throw new SoapFault('client_login_failed', 'The login failed. Username or password wrong.'); - return false; } if($user['active'] != 1) { throw new SoapFault('client_login_failed', 'The login failed. User is blocked.'); - return false; } // now we need the client data diff --git a/interface/web/admin/users_edit.php b/interface/web/admin/users_edit.php index 4c5c97409f..7f0c691c42 100644 --- a/interface/web/admin/users_edit.php +++ b/interface/web/admin/users_edit.php @@ -104,6 +104,8 @@ class page_action extends tform_actions { function onAfterUpdate() { global $app, $conf; + $app->uses('auth'); + $client = $app->db->queryOneRecord("SELECT * FROM sys_user WHERE userid = ?", $this->id); $client_id = $app->functions->intval($client['client_id']); $username = $this->dataRecord["username"]; @@ -121,13 +123,7 @@ class page_action extends tform_actions { // password changed if(isset($conf['demo_mode']) && $conf['demo_mode'] != true && isset($this->dataRecord["passwort"]) && $this->dataRecord["passwort"] != '') { $password = $this->dataRecord["passwort"]; - $salt="$1$"; - $base64_alphabet='ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/'; - for ($n=0;$n<8;$n++) { - $salt.=$base64_alphabet[mt_rand(0, 63)]; - } - $salt.="$"; - $password = crypt(stripslashes($password), $salt); + $password = $app->auth->crypt_password($password); $sql = "UPDATE client SET password = ? WHERE client_id = ? AND username = ?"; $app->db->query($sql, $password, $client_id, $username); } diff --git a/interface/web/client/reseller_edit.php b/interface/web/client/reseller_edit.php index 59699ec163..3078e01fbc 100644 --- a/interface/web/client/reseller_edit.php +++ b/interface/web/client/reseller_edit.php @@ -200,6 +200,9 @@ class page_action extends tform_actions { */ function onAfterInsert() { global $app, $conf; + + $app->uses('auth'); + // Create the group for the reseller $groupid = $app->db->datalogInsert('sys_group', array("name" => $this->dataRecord["username"], "description" => '', "client_id" => $this->id), 'groupid'); $groups = $groupid; @@ -213,14 +216,8 @@ class page_action extends tform_actions { $active = 1; $language = $this->dataRecord["language"]; - $salt="$1$"; - $base64_alphabet='ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/'; - for ($n=0;$n<8;$n++) { - $salt.=$base64_alphabet[mt_rand(0, 63)]; - } - $salt.="$"; - $password = crypt(stripslashes($password), $salt); - + $password = $app->auth->crypt_password(stripslashes($password)); + // Create the controlpaneluser for the reseller $sql = "INSERT INTO sys_user (`username`,`passwort`,`modules`,`startmodule`,`app_theme`,`typ`, `active`,`language`,`groups`,`default_group`,`client_id`) VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?)"; @@ -313,6 +310,8 @@ class page_action extends tform_actions { function onAfterUpdate() { global $app, $conf; + $app->uses('auth'); + // username changed if(isset($conf['demo_mode']) && $conf['demo_mode'] != true && isset($this->dataRecord['username']) && $this->dataRecord['username'] != '' && $this->oldDataRecord['username'] != $this->dataRecord['username']) { $username = $this->dataRecord["username"]; @@ -329,13 +328,8 @@ class page_action extends tform_actions { if(isset($conf['demo_mode']) && $conf['demo_mode'] != true && isset($this->dataRecord["password"]) && $this->dataRecord["password"] != '') { $password = $this->dataRecord["password"]; $client_id = $this->id; - $salt="$1$"; - $base64_alphabet='ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/'; - for ($n=0;$n<8;$n++) { - $salt.=$base64_alphabet[mt_rand(0, 63)]; - } - $salt.="$"; - $password = crypt(stripslashes($password), $salt); + + $password = $app->auth->crypt_password(stripslashes($password)); $sql = "UPDATE sys_user SET passwort = ? WHERE client_id = ?"; $app->db->query($sql, $password, $client_id); } -- GitLab From 2b60a7a979567cb8c4513553f6b78909b4046bf1 Mon Sep 17 00:00:00 2001 From: Marius Burkard <m.burkard@pixcept.de> Date: Sat, 27 Jul 2019 22:57:40 +0200 Subject: [PATCH 111/215] WIP: change system exec calls to safe variant --- interface/lib/app.inc.php | 2 +- interface/lib/classes/functions.inc.php | 4 +- interface/lib/classes/system.inc.php | 43 +++++++++- interface/lib/classes/validate_dkim.inc.php | 5 +- interface/web/mail/ajax_get_json.php | 10 ++- server/lib/app.inc.php | 16 ++++ server/lib/classes/aps_installer.inc.php | 19 +++-- .../cron.d/100-monitor_email_quota.inc.php | 5 +- server/lib/classes/cron.d/150-awstats.inc.php | 16 ++-- .../lib/classes/cron.d/150-webalizer.inc.php | 14 ++-- .../lib/classes/cron.d/200-logfiles.inc.php | 26 +++--- server/lib/classes/cron.d/500-backup.inc.php | 33 +++++--- .../classes/cron.d/500-backup_mail.inc.php | 30 ++++--- .../cron.d/600-purge_mailboxes.inc.php | 2 +- .../classes/cron.d/900-letsencrypt.inc.php | 2 +- server/lib/classes/functions.inc.php | 4 +- server/lib/classes/letsencrypt.inc.php | 6 +- server/lib/classes/monitor_tools.inc.php | 3 +- server/lib/classes/system.inc.php | 82 +++++++++++++------ .../remoteaction_core_module.inc.php | 19 +++-- .../plugins-available/apache2_plugin.inc.php | 29 ++++--- .../apps_vhost_plugin.inc.php | 6 +- 22 files changed, 246 insertions(+), 130 deletions(-) diff --git a/interface/lib/app.inc.php b/interface/lib/app.inc.php index b02ae8526d..46f7213240 100755 --- a/interface/lib/app.inc.php +++ b/interface/lib/app.inc.php @@ -78,7 +78,7 @@ class app { $this->uses($prop); if(property_exists($this, $prop)) return $this->{$prop}; - else return null; + else trigger_error('Undefined property ' . $name . ' of class app', E_USER_WARNING); } public function __destruct() { diff --git a/interface/lib/classes/functions.inc.php b/interface/lib/classes/functions.inc.php index 28ab9ce384..03e331f0f1 100644 --- a/interface/lib/classes/functions.inc.php +++ b/interface/lib/classes/functions.inc.php @@ -451,9 +451,9 @@ class functions { if(file_exists($id_rsa_file)) unset($id_rsa_file); if(file_exists($id_rsa_pub_file)) unset($id_rsa_pub_file); if(!file_exists($id_rsa_file) && !file_exists($id_rsa_pub_file)) { - exec('ssh-keygen -t rsa -C '.$username.'-rsa-key-'.time().' -f '.$id_rsa_file.' -N ""'); + $app->system->exec_safe('ssh-keygen -t rsa -C ? -f ? -N ""', $username.'-rsa-key-'.time(), $id_rsa_file); $app->db->query("UPDATE client SET created_at = UNIX_TIMESTAMP(), id_rsa = ?, ssh_rsa = ? WHERE client_id = ?", @file_get_contents($id_rsa_file), @file_get_contents($id_rsa_pub_file), $client_id); - exec('rm -f '.$id_rsa_file.' '.$id_rsa_pub_file); + $app->system->exec_safe('rm -f ? ?', $id_rsa_file, $id_rsa_pub_file); } else { $app->log("Failed to create SSH keypair for ".$username, LOGLEVEL_WARN); } diff --git a/interface/lib/classes/system.inc.php b/interface/lib/classes/system.inc.php index cef9424a75..d4d9cccefe 100644 --- a/interface/lib/classes/system.inc.php +++ b/interface/lib/classes/system.inc.php @@ -31,6 +31,8 @@ EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. class system { var $client_service = null; + private $_last_exec_out = null; + private $_last_exec_retcode = null; public function has_service($userid, $service) { global $app; @@ -52,8 +54,43 @@ class system { return false; } } -} //* End Class - -?> + public function last_exec_out() { + return $this->_last_exec_out; + } + + public function last_exec_retcode() { + return $this->_last_exec_retcode; + } + + public function exec_safe($cmd) { + $arg_count = func_num_args(); + if($arg_count > 1) { + $args = func_get_args(); + $pos = 0; + $a = 0; + foreach($args as $value) { + $a++; + + $pos = strpos($cmd, '?', $pos); + if($pos === false) { + break; + } + $value = escapeshellarg($value); + $cmd = substr_replace($cmd, $value, $pos, 1); + $pos += strlen($value); + } + } + + $this->_last_exec_out = null; + $this->_last_exec_retcode = null; + return exec($cmd, $this->_last_exec_out, $this->_last_exec_retcode); + } + + public function system_safe($cmd) { + call_user_func_array(array($this, 'exec_safe'), func_get_args()); + return implode("\n", $this->_last_exec_out); + } + +} //* End Class diff --git a/interface/lib/classes/validate_dkim.inc.php b/interface/lib/classes/validate_dkim.inc.php index 443fe76d7f..3fbc28a0a1 100644 --- a/interface/lib/classes/validate_dkim.inc.php +++ b/interface/lib/classes/validate_dkim.inc.php @@ -49,10 +49,13 @@ class validate_dkim { * Validator function for private DKIM-Key */ function check_private_key($field_name, $field_value, $validator) { + global $app; + $dkim_enabled=$_POST['dkim']; if ($dkim_enabled == 'y') { if (empty($field_value)) return $this->get_error($validator['errmsg']); - exec('echo '.escapeshellarg($field_value).'|openssl rsa -check', $output, $result); + $app->system->exec_safe('echo ?|openssl rsa -check', $field_value); + $result = $app->system->last_exec_retcode(); if($result != 0) return $this->get_error($validator['errmsg']); } } diff --git a/interface/web/mail/ajax_get_json.php b/interface/web/mail/ajax_get_json.php index 17fd4cf45a..69705ba6f7 100644 --- a/interface/web/mail/ajax_get_json.php +++ b/interface/web/mail/ajax_get_json.php @@ -54,8 +54,8 @@ if($type == 'create_dkim' && $domain_id != ''){ if ($dkim_strength=='') $dkim_strength = 2048; $rnd_val = $dkim_strength * 10; - exec('openssl rand -out ../../temp/random-data.bin '.$rnd_val.' 2> /dev/null', $output, $result); - exec('openssl genrsa -rand ../../temp/random-data.bin '.$dkim_strength.' 2> /dev/null', $privkey, $result); + $app->system->exec_safe('openssl rand -out ../../temp/random-data.bin '.$rnd_val.' 2> /dev/null', $output, $result); + $app->system->exec_safe('openssl genrsa -rand ../../temp/random-data.bin '.$dkim_strength.' 2> /dev/null', $privkey, $result); unlink("../../temp/random-data.bin"); $dkim_private=''; foreach($privkey as $values) $dkim_private=$dkim_private.$values."\n"; @@ -79,12 +79,14 @@ if($type == 'create_dkim' && $domain_id != ''){ $selector = 'invalid domain or selector'; } unset($dkim_public); - exec('echo '.escapeshellarg($dkim_private).'|openssl rsa -pubout -outform PEM 2> /dev/null',$pubkey,$result); + $app->system->exec_safe('echo ?|openssl rsa -pubout -outform PEM 2> /dev/null', $dkim_private); + $pubkey = $app->system->last_exec_out(); foreach($pubkey as $values) $dkim_public=$dkim_public.$values."\n"; $selector = $dkim_selector; } else { unset($dkim_public); - exec('echo '.escapeshellarg($dkim_private).'|openssl rsa -pubout -outform PEM 2> /dev/null',$pubkey,$result); + $app->system->exec_safe('echo ?|openssl rsa -pubout -outform PEM 2> /dev/null', $dkim_private); + $pubkey = $app->system->last_exec_out(); foreach($pubkey as $values) $dkim_public=$dkim_public.$values."\n"; $selector = $dkim_selector; } diff --git a/server/lib/app.inc.php b/server/lib/app.inc.php index 86df2a86f6..146f2465c0 100644 --- a/server/lib/app.inc.php +++ b/server/lib/app.inc.php @@ -69,6 +69,22 @@ class app { } + public function __get($name) { + $valid_names = array('functions', 'getconf', 'letsencrypt', 'modules', 'plugins', 'services', 'system'); + if(!in_array($name, $valid_names)) { + trigger_error('Undefined property ' . $name . ' of class app', E_USER_WARNING); + } + if(property_exists($this, $name)) { + return $this->{$name}; + } + $this->uses($name); + if(property_exists($this, $name)) { + return $this->{$name}; + } else { + trigger_error('Undefined property ' . $name . ' of class app', E_USER_WARNING); + } + } + function setCaller($caller) { $this->_calling_script = $caller; } diff --git a/server/lib/classes/aps_installer.inc.php b/server/lib/classes/aps_installer.inc.php index 9b601d90b3..2995b01e07 100644 --- a/server/lib/classes/aps_installer.inc.php +++ b/server/lib/classes/aps_installer.inc.php @@ -395,7 +395,7 @@ class ApsInstaller extends ApsBase mkdir($this->document_root, 0777, true); } } else { - exec("rm -Rf ".escapeshellarg($this->local_installpath).'*'); + $app->system->exec_safe("rm -Rf ?*", $this->local_installpath); } } else { mkdir($this->local_installpath, 0777, true); @@ -412,7 +412,7 @@ class ApsInstaller extends ApsBase || ($this->extractZip($this->packages_dir.'/'.$task['path'], 'scripts', $this->local_installpath.'install_scripts/') === false) ) { // Clean already extracted data - exec("rm -Rf ".escapeshellarg($this->local_installpath).'*'); + $app->system->exec_safe("rm -Rf ?*", $this->local_installpath); throw new Exception('Unable to extract the package '.$task['path']); } @@ -423,11 +423,11 @@ class ApsInstaller extends ApsBase $owner_res = $app->db->queryOneRecord("SELECT system_user, system_group FROM web_domain WHERE domain = ?", $main_domain['value']); $this->file_owner_user = $owner_res['system_user']; $this->file_owner_group = $owner_res['system_group']; - exec('chown -R '.$this->file_owner_user.':'.$this->file_owner_group.' '.escapeshellarg($this->local_installpath)); + $app->system->exec_safe('chown -R ?:? ?', $this->file_owner_user, $this->file_owner_group, $this->local_installpath); //* Chown stats directory back if(is_dir($this->local_installpath.'stats')) { - exec('chown -R root:root '.escapeshellarg($this->local_installpath.'stats')); + $app->system->exec_safe('chown -R root:root ?', $this->local_installpath.'stats'); } } } @@ -554,7 +554,9 @@ class ApsInstaller extends ApsBase $shell_retcode = true; $shell_ret = array(); - exec('php '.escapeshellarg($this->local_installpath.'install_scripts/'.$cfgscript).' install 2>&1', $shell_ret, $shell_retcode); + $app->system->exec_safe('php ? install 2>&1', $this->local_installpath.'install_scripts/'.$cfgscript); + $shell_ret = $app->system->last_exec_out(); + $shell_retcode = $app->system->last_exec_retcode(); $shell_ret = array_filter($shell_ret); $shell_ret_str = implode("\n", $shell_ret); @@ -566,11 +568,11 @@ class ApsInstaller extends ApsBase else { // The install succeeded, chown newly created files too - exec('chown -R '.$this->file_owner_user.':'.$this->file_owner_group.' '.escapeshellarg($this->local_installpath)); + $app->system->exec_safe('chown -R ?:? ?', $this->file_owner_user, $this->file_owner_group, $this->local_installpath); //* Chown stats directory back if(is_dir($this->local_installpath.'stats')) { - exec('chown -R root:root '.escapeshellarg($this->local_installpath.'stats')); + $app->system->exec_safe('chown -R root:root ?', $this->local_installpath.'stats'); } $app->dbmaster->query('UPDATE aps_instances SET instance_status = ? WHERE id = ?', INSTANCE_SUCCESS, $task['instance_id']); @@ -597,8 +599,9 @@ class ApsInstaller extends ApsBase */ private function cleanup($task, $sxe) { + global $app; chdir($this->local_installpath); - exec("rm -Rf ".escapeshellarg($this->local_installpath).'install_scripts'); + $app->system->exec_safe("rm -Rf ?", $this->local_installpath.'install_scripts'); } diff --git a/server/lib/classes/cron.d/100-monitor_email_quota.inc.php b/server/lib/classes/cron.d/100-monitor_email_quota.inc.php index 75014c347d..8adf7c7253 100644 --- a/server/lib/classes/cron.d/100-monitor_email_quota.inc.php +++ b/server/lib/classes/cron.d/100-monitor_email_quota.inc.php @@ -90,7 +90,7 @@ class cronjob_monitor_email_quota extends cronjob { $email_parts = explode('@', $mb['email']); $filename = $mb['maildir'].'/.quotausage'; if(!file_exists($filename) && $dovecot) { - exec('doveadm quota recalc -u '.$email); + $app->system->exec_safe('doveadm quota recalc -u ?', $email); } if(file_exists($filename) && !is_link($filename)) { $quotafile = file($filename); @@ -99,7 +99,8 @@ class cronjob_monitor_email_quota extends cronjob { $app->log("Mail storage $email: " . $storage_value[1], LOGLEVEL_DEBUG); unset($quotafile); } else { - exec('du -s '.escapeshellcmd($mb['maildir']), $out); + $app->system->exec_safe('du -s ?', $mb['maildir']); + $out = $app->system->last_exec_out(); $parts = explode(' ', $out[0]); $data[$email]['used'] = intval($parts[0])*1024; unset($out); diff --git a/server/lib/classes/cron.d/150-awstats.inc.php b/server/lib/classes/cron.d/150-awstats.inc.php index 2d281c7d39..0b1cbd5a44 100644 --- a/server/lib/classes/cron.d/150-awstats.inc.php +++ b/server/lib/classes/cron.d/150-awstats.inc.php @@ -71,16 +71,16 @@ class cronjob_awstats extends cronjob { $log_folder .= '/' . $subdomain_host; unset($tmp); } - $logfile = escapeshellcmd($rec['document_root'].'/' . $log_folder . '/'.$yesterday.'-access.log'); + $logfile = $rec['document_root'].'/' . $log_folder . '/'.$yesterday.'-access.log'; if(!@is_file($logfile)) { - $logfile = escapeshellcmd($rec['document_root'].'/' . $log_folder . '/'.$yesterday.'-access.log.gz'); + $logfile = $rec['document_root'].'/' . $log_folder . '/'.$yesterday.'-access.log.gz'; if(!@is_file($logfile)) { continue; } } $web_folder = (($rec['type'] == 'vhostsubdomain' || $rec['type'] == 'vhostalias') ? $rec['web_folder'] : 'web'); - $domain = escapeshellcmd($rec['domain']); - $statsdir = escapeshellcmd($rec['document_root'].'/'.$web_folder.'/stats'); + $domain = $rec['domain']; + $statsdir = $rec['document_root'].'/'.$web_folder.'/stats'; $awstats_pl = $web_config['awstats_pl']; $awstats_buildstaticpages_pl = $web_config['awstats_buildstaticpages_pl']; @@ -117,8 +117,8 @@ class cronjob_awstats extends cronjob { } if(!@is_dir($statsdir)) mkdir($statsdir); - $username = escapeshellcmd($rec['system_user']); - $groupname = escapeshellcmd($rec['system_group']); + $username = $rec['system_user']; + $groupname = $rec['system_group']; chown($statsdir, $username); chgrp($statsdir, $groupname); if(is_link('/var/log/ispconfig/httpd/'.$domain.'/yesterday-access.log')) unlink('/var/log/ispconfig/httpd/'.$domain.'/yesterday-access.log'); @@ -138,7 +138,7 @@ class cronjob_awstats extends cronjob { // awstats_buildstaticpages.pl -update -config=mydomain.com -lang=en -dir=/var/www/domain.com/'.$web_folder.'/stats -awstatsprog=/path/to/awstats.pl // $command = "$awstats_buildstaticpages_pl -update -config='$domain' -lang=".$conf['language']." -dir='$statsdir' -awstatsprog='$awstats_pl'"; - $command = "$awstats_buildstaticpages_pl -month='$awmonth' -year='$awyear' -update -config='$domain' -lang=".$conf['language']." -dir='$statsdir' -awstatsprog='$awstats_pl'"; + $command = escapeshellcmd($awstats_buildstaticpages_pl) . ' -month=' . escapeshellarg($awmonth) . ' -year=' . escapeshellarg($awyear) . ' -update -config=' . escapeshellarg($domain) . ' -lang=' . escapeshellarg($conf['language']) . ' -dir=' . escapeshellarg($statsdir) . ' -awstatsprog=' . escapeshellarg($awstats_pl); if (date("d") == 2) { $awmonth = date("m")-1; @@ -178,7 +178,7 @@ class cronjob_awstats extends cronjob { chgrp($rec['document_root']."/".$web_folder."/stats/index.php", $rec['system_group']); } - exec('chown -R '.$username.':'.$groupname.' '.$statsdir); + $app->system->exec_safe('chown -R ?:? ?', $username, $groupname, $statsdir); } diff --git a/server/lib/classes/cron.d/150-webalizer.inc.php b/server/lib/classes/cron.d/150-webalizer.inc.php index 0ae05dd682..5d341cefe7 100644 --- a/server/lib/classes/cron.d/150-webalizer.inc.php +++ b/server/lib/classes/cron.d/150-webalizer.inc.php @@ -102,11 +102,11 @@ class cronjob_webalizer extends cronjob { } } - $domain = escapeshellcmd($rec['domain']); - $statsdir = escapeshellcmd($rec['document_root'].'/'.(($rec['type'] == 'vhostsubdomain' || $rec['type'] == 'vhostalias') ? $rec['web_folder'] : 'web').'/stats'); + $domain = $rec['domain']; + $statsdir = $rec['document_root'].'/'.(($rec['type'] == 'vhostsubdomain' || $rec['type'] == 'vhostalias') ? $rec['web_folder'] : 'web').'/stats'; $webalizer = '/usr/bin/webalizer'; $webalizer_conf_main = '/etc/webalizer/webalizer.conf'; - $webalizer_conf = escapeshellcmd($rec['document_root'].'/log/webalizer.conf'); + $webalizer_conf = $rec['document_root'].'/log/webalizer.conf'; if(is_file($statsdir.'/index.php')) unlink($statsdir.'/index.php'); @@ -122,13 +122,13 @@ class cronjob_webalizer extends cronjob { if(!@is_dir($statsdir)) mkdir($statsdir); - $username = escapeshellcmd($rec['system_user']); - $groupname = escapeshellcmd($rec['system_group']); + $username = $rec['system_user']; + $groupname = $rec['system_group']; chown($statsdir, $username); chgrp($statsdir, $groupname); - exec("$webalizer -c $webalizer_conf -n $domain -s $domain -r $domain -q -T -p -o $statsdir $logfile"); + $app->system->exec_safe("$webalizer -c ? -n ? -s ? -r ? -q -T -p -o ? ?", $webalizer_conf, $domain, $domain, $domain, $statsdir, $logfile); - exec('chown -R '.$username.':'.$groupname.' '.$statsdir); + exec('chown -R ?:? ?', $username, $groupname, $statsdir); } diff --git a/server/lib/classes/cron.d/200-logfiles.inc.php b/server/lib/classes/cron.d/200-logfiles.inc.php index 6f38f0b403..d1dbf94291 100644 --- a/server/lib/classes/cron.d/200-logfiles.inc.php +++ b/server/lib/classes/cron.d/200-logfiles.inc.php @@ -54,7 +54,7 @@ class cronjob_logfiles extends cronjob { $server_config = $app->getconf->get_server_config($conf['server_id'], 'server'); if($server_config['log_retention'] > 0) { - $max_syslog = $server_config['log_retention']; + $max_syslog = $app->functions->intval($server_config['log_retention']); } else { $max_syslog = 10; } @@ -113,18 +113,18 @@ class cronjob_logfiles extends cronjob { } $yesterday2 = date('Ymd', time() - 86400*2); - $logfile = escapeshellcmd($rec['document_root'].'/' . $log_folder . '/'.$yesterday2.'-access.log'); + $logfile = $rec['document_root'].'/' . $log_folder . '/'.$yesterday2.'-access.log'; //* Compress logfile if(@is_file($logfile)) { // Compress yesterdays logfile - exec("gzip -c $logfile > $logfile.gz"); + $app->system->exec_safe("gzip -c ? > ?", $logfile, $logfile . '.gz'); unlink($logfile); } $cron_logfiles = array('cron.log', 'cron_error.log', 'cron_wget.log'); foreach($cron_logfiles as $cron_logfile) { - $cron_logfile = escapeshellcmd($rec['document_root'].'/' . $log_folder . '/' . $cron_logfile); + $cron_logfile = $rec['document_root'].'/' . $log_folder . '/' . $cron_logfile; // rename older files (move up by one) $num = $log_retention; @@ -135,8 +135,8 @@ class cronjob_logfiles extends cronjob { // compress current logfile if(is_file($cron_logfile)) { - exec("gzip -c $cron_logfile > $cron_logfile.1.gz"); - exec("cat /dev/null > $cron_logfile"); + $app->system->exec_safe("gzip -c ? > ?", $cron_logfile, $cron_logfile . '.1.gz'); + $app->system->exec_safe("cat /dev/null > ?", $cron_logfile); } // remove older logs $num = $log_retention; @@ -156,8 +156,8 @@ class cronjob_logfiles extends cronjob { } // compress current logfile if(is_file($error_logfile)) { - exec("gzip -c $error_logfile > $error_logfile.1.gz"); - exec("cat /dev/null > $error_logfile"); + $app->system->exec_safe("gzip -c ? > ?", $error_logfile, $error_logfile . '.1.gz'); + $app->system->exec_safe("cat /dev/null > ?", $error_logfile); } // delete logfiles after x days (default 10) @@ -175,7 +175,7 @@ class cronjob_logfiles extends cronjob { //* Delete old logfiles in /var/log/ispconfig/httpd/ that were created by vlogger for the hostname of the server exec('hostname -f', $tmp_hostname); if($tmp_hostname[0] != '' && is_dir('/var/log/ispconfig/httpd/'.$tmp_hostname[0])) { - exec('cd /var/log/ispconfig/httpd/'.$tmp_hostname[0]."; find . -mtime +$max_syslog -name '*.log' | xargs rm > /dev/null 2> /dev/null"); + $app->system->exec_safe("cd ?; find . -mtime +$max_syslog -name '*.log' | xargs rm > /dev/null 2> /dev/null", '/var/log/ispconfig/httpd/'.$tmp_hostname[0]); } unset($tmp_hostname); @@ -195,8 +195,8 @@ class cronjob_logfiles extends cronjob { } // compress current logfile if(is_file($ispconfig_logfile)) { - exec("gzip -c $ispconfig_logfile > $ispconfig_logfile.1.gz"); - exec("cat /dev/null > $ispconfig_logfile"); + $app->system->exec_safe("gzip -c ? > ?", $ispconfig_logfile, $ispconfig_logfile . '.1.gz'); + $app->system->exec_safe("cat /dev/null > ?", $ispconfig_logfile); } // remove older logs $num = $max_syslog; @@ -215,9 +215,9 @@ class cronjob_logfiles extends cronjob { $app->uses('system'); if(is_array($records)) { foreach($records as $rec){ - $tmp_path = realpath(escapeshellcmd($rec['document_root'].'/tmp')); + $tmp_path = realpath($rec['document_root'].'/tmp'); if($tmp_path != '' && strlen($tmp_path) > 10 && is_dir($tmp_path) && $app->system->is_user($rec['system_user'])){ - exec('cd '.$tmp_path."; find . -mtime +1 -name 'sess_*' | grep -v -w .no_delete | xargs rm > /dev/null 2> /dev/null"); + exec("cd ?; find . -mtime +1 -name 'sess_*' | grep -v -w .no_delete | xargs rm > /dev/null 2> /dev/null", $tmp_path); } } } diff --git a/server/lib/classes/cron.d/500-backup.inc.php b/server/lib/classes/cron.d/500-backup.inc.php index 77b355fe6e..579e0174ba 100644 --- a/server/lib/classes/cron.d/500-backup.inc.php +++ b/server/lib/classes/cron.d/500-backup.inc.php @@ -69,9 +69,9 @@ class cronjob_backup extends cronjob { } if(!is_dir($backup_dir)) { - mkdir(escapeshellcmd($backup_dir), $backup_dir_permissions, true); + mkdir($backup_dir, $backup_dir_permissions, true); } else { - chmod(escapeshellcmd($backup_dir), $backup_dir_permissions); + chmod($backup_dir, $backup_dir_permissions); } $run_backups = true; //* mount backup directory, if necessary @@ -127,16 +127,20 @@ class cronjob_backup extends cronjob { if($backup_mode == 'userzip') { //* Create a .zip backup as web user and include also files owned by apache / nginx user $web_backup_file = 'web'.$web_id.'_'.date('Y-m-d_H-i').'.zip'; - exec('cd '.escapeshellarg($web_path).' && sudo -u '.escapeshellarg($web_user).' find . -group '.escapeshellarg($web_group).' -print 2> /dev/null | zip -b '.escapeshellarg($backup_tmp).' --exclude=./backup\*'.$backup_excludes.' --symlinks '.escapeshellarg($web_backup_dir.'/'.$web_backup_file).' -@', $tmp_output, $retval); - if($retval == 0 || $retval == 12) exec('cd '.escapeshellarg($web_path).' && sudo -u '.escapeshellarg($web_user).' find . -user '.escapeshellarg($http_server_user).' -print 2> /dev/null | zip -b '.escapeshellarg($backup_tmp).' --exclude=./backup\*'.$backup_excludes.' --update --symlinks '.escapeshellarg($web_backup_dir.'/'.$web_backup_file).' -@', $tmp_output, $retval); + $app->system->exec_safe('cd ? && sudo -u ? find . -group ? -print 2> /dev/null | zip -b ? --exclude=./backup\*'.$backup_excludes.' --symlinks ? -@', $web_path, $web_user, $web_group, $backup_tmp, $web_backup_dir.'/'.$web_backup_file); + $retval = $app->system->last_exec_retcode(); + if($retval == 0 || $retval == 12) $app->system->exec_safe('cd ? && sudo -u ? find . -user ? -print 2> /dev/null | zip -b ? --exclude=./backup\*'.$backup_excludes.' --update --symlinks ? -@', $web_path, $web_user, $http_server_user, $backup_tmp, $web_backup_dir.'/'.$web_backup_file); + $retval = $app->system->last_exec_retcode(); } else { //* Create a tar.gz backup as root user $web_backup_file = 'web'.$web_id.'_'.date('Y-m-d_H-i').'.tar.gz'; if ($use_pigz) { - exec('tar pcf - --directory '.escapeshellarg($web_path).' . --exclude=./backup\*'.$backup_excludes.' | pigz > '.escapeshellarg($web_backup_dir.'/'.$web_backup_file), $tmp_output, $retval); + $app->system->exec_safe('tar pcf - --directory ? . --exclude=./backup\*'.$backup_excludes.' | pigz > ?', $web_path, $web_backup_dir.'/'.$web_backup_file); + $retval = $app->system->last_exec_retcode(); } else { - exec('tar pczf '.escapeshellarg($web_backup_dir.'/'.$web_backup_file).' --exclude=./backup\*'.$backup_excludes.' --directory '.escapeshellarg($web_path).' .', $tmp_output, $retval); -} + $app->system->exec_safe('tar pczf ? --exclude=./backup\*'.$backup_excludes.' --directory ? .', $web_backup_dir.'/'.$web_backup_file, $web_path); + $retval = $app->system->last_exec_retcode(); + } } if($retval == 0 || ($backup_mode != 'userzip' && $retval == 1) || ($backup_mode == 'userzip' && $retval == 12)) { // tar can return 1, zip can return 12(due to harmless warings) and still create valid backups if(is_file($web_backup_dir.'/'.$web_backup_file)){ @@ -256,13 +260,16 @@ class cronjob_backup extends cronjob { $db_id = $rec['database_id']; $db_name = $rec['database_name']; $db_backup_file = 'db_'.$db_name.'_'.date('Y-m-d_H-i').'.sql'; - //$command = "mysqldump -h '".escapeshellcmd($clientdb_host)."' -u '".escapeshellcmd($clientdb_user)."' -p'".escapeshellcmd($clientdb_password)."' -c --add-drop-table --create-options --quick --result-file='".$db_backup_dir.'/'.$db_backup_file."' '".$db_name."'"; - $command = "mysqldump -h ".escapeshellarg($clientdb_host)." -u ".escapeshellarg($clientdb_user)." -p".escapeshellarg($clientdb_password)." -c --add-drop-table --create-options --quick --max_allowed_packet=512M ".$mysqldump_routines." --result-file='".$db_backup_dir.'/'.$db_backup_file."' '".$db_name."'"; - exec($command, $tmp_output, $retval); - + $command = "mysqldump -h ? -u ? -p? -c --add-drop-table --create-options --quick --max_allowed_packet=512M ".$mysqldump_routines." --result-file=? ?"; + $app->system->exec_safe($command, $clientdb_host, $clientdb_user, $clientdb_password, $db_backup_dir.'/'.$db_backup_file, $db_name); + $retval = $app->system->last_exec_retcode(); + //* Compress the backup with gzip / pigz - if($retval == 0) exec("$zip_cmd -c '".escapeshellcmd($db_backup_dir.'/'.$db_backup_file)."' > '".escapeshellcmd($db_backup_dir.'/'.$db_backup_file).".gz'", $tmp_output, $retval); - + if($retval == 0) { + $app->system->exec_safe("$zip_cmd -c ? > ?", $db_backup_dir.'/'.$db_backup_file, $db_backup_dir.'/'.$db_backup_file . '.gz'); + $retval = $app->system->last_exec_retcode(); + } + if($retval == 0){ if(is_file($db_backup_dir.'/'.$db_backup_file.'.gz')){ chmod($db_backup_dir.'/'.$db_backup_file.'.gz', 0750); diff --git a/server/lib/classes/cron.d/500-backup_mail.inc.php b/server/lib/classes/cron.d/500-backup_mail.inc.php index b05caf70d7..6cd689edca 100644 --- a/server/lib/classes/cron.d/500-backup_mail.inc.php +++ b/server/lib/classes/cron.d/500-backup_mail.inc.php @@ -122,24 +122,28 @@ class cronjob_backup_mail extends cronjob { if ($rec['maildir_format'] == 'mdbox') { if (empty($this->tmp_backup_dir)) $this->tmp_backup_dir = $rec['maildir']; // Create temporary backup-mailbox - exec("su -c 'dsync backup -u \"".$rec["email"]."\" mdbox:".$this->tmp_backup_dir."/backup'", $tmp_output, $retval); + exec("su -c ?", 'dsync backup -u "'.$rec["email"].'" mdbox:' . $this->tmp_backup_dir . '/backup'); if($backup_mode == 'userzip') { $mail_backup_file.='.zip'; - exec('cd '.$this->tmp_backup_dir.' && zip '.$mail_backup_dir.'/'.$mail_backup_file.' -b '.escapeshellarg($backup_tmp).' -r backup > /dev/null && rm -rf backup', $tmp_output, $retval); - } - else { + $app->system->exec_safe('cd ? && zip ? -b ? -r backup > /dev/null && rm -rf backup', $this->tmp_backup_dir, $mail_backup_dir.'/'.$mail_backup_file, $backup_tmp); + $retval = $app->system->last_exec_retcode(); + } else { $mail_backup_file.='.tar.gz'; if ($use_pigz) { - exec('tar pcf - --directory '.escapeshellarg($this->tmp_backup_dir).' backup | pigz > '.$mail_backup_dir.'/'.$mail_backup_file.' && rm -rf '.$this->tmp_backup_dir.'/backup', $tmp_output, $retval); + $app->system->exec_safe('tar pcf - --directory ? backup | pigz > ? && rm -rf ?', $this->tmp_backup_dir, $mail_backup_dir.'/'.$mail_backup_file, $this->tmp_backup_dir.'/backup'); + $retval = $app->system->last_exec_retcode(); } else { - exec(escapeshellcmd('tar pczf '.$mail_backup_dir.'/'.$mail_backup_file.' --directory '.$this->tmp_backup_dir.' backup && rm -rf '.$this->tmp_backup_dir.'/backup'), $tmp_output, $retval); + $app->system->exec_safe('tar pczf ? --directory ? backup && rm -rf ?', $mail_backup_dir.'/'.$mail_backup_file, $this->tmp_backup_dir, $this->tmp_backup_dir.'/backup'); + $retval = $app->system->last_exec_retcode(); } } if ($retval != 0) { // Cleanup - if (file_exists($this->tmp_backup_dir.'/backup')) exec('rm -rf '.$this->tmp_backup_dir.'/backup'); + if(file_exists($this->tmp_backup_dir . '/backup')) { + $app->system->exec_safe('rm -rf ?', $this->tmp_backup_dir . '/backup'); + } } } else { @@ -154,15 +158,17 @@ class cronjob_backup_mail extends cronjob { //* create archives if($backup_mode == 'userzip') { $mail_backup_file.='.zip'; - exec('cd '.$domain_dir.' && zip '.$mail_backup_dir.'/'.$mail_backup_file.' -b '.escapeshellarg($backup_tmp).' -r '.$source_dir.' > /dev/null', $tmp_output, $retval); + $app->system->exec_safe('cd ? && zip ? -b ? -r ? > /dev/null', $domain_dir, $mail_backup_dir.'/'.$mail_backup_file, $backup_tmp, $source_dir); + $retval = $app->system->last_exec_retcode(); } else { /* Create a tar.gz backup */ $mail_backup_file.='.tar.gz'; if ($use_pigz) { - exec('tar pcf - --directory '.escapeshellarg($domain_dir).' '.escapeshellarg($source_dir).' | pigz > '.$mail_backup_dir.'/'.$mail_backup_file, $tmp_output, $retval); + $app->system->exec_safe('tar pcf - --directory ? ? | pigz > ?', $domain_dir, $source_dir, $mail_backup_dir.'/'.$mail_backup_file); } else { - exec(escapeshellcmd('tar pczf '.$mail_backup_dir.'/'.$mail_backup_file.' --directory '.$domain_dir.' '.$source_dir), $tmp_output, $retval); + $app->system->exec_safe('tar pczf ? --directory ? ?', $mail_backup_dir.'/'.$mail_backup_file, $domain_dir, $source_dir); } + $retval = $app->system->last_exec_retcode(); } } @@ -181,7 +187,9 @@ class cronjob_backup_mail extends cronjob { if(is_file($mail_backup_dir.'/'.$mail_backup_file)) unlink($mail_backup_dir.'/'.$mail_backup_file); // And remove backup-mdbox if ($rec['maildir_format'] == 'mdbox') { - if(file_exists($rec['maildir'].'/backup')) exec("su -c 'rm -rf ".$rec['maildir']."/backup'"); + if(file_exists($rec['maildir'] . '/backup')) { + $app->system->exec_safe('rm -rf ?', $rec['maildir'] . '/backup'); + } } $app->log($mail_backup_file.' NOK:'.implode('',$tmp_output), LOGLEVEL_WARN); } diff --git a/server/lib/classes/cron.d/600-purge_mailboxes.inc.php b/server/lib/classes/cron.d/600-purge_mailboxes.inc.php index 59775fb7be..451eb56642 100644 --- a/server/lib/classes/cron.d/600-purge_mailboxes.inc.php +++ b/server/lib/classes/cron.d/600-purge_mailboxes.inc.php @@ -58,7 +58,7 @@ class cronjob_purge_mailboxes extends cronjob { if(is_array($records)) { foreach($records as $rec){ - exec("su -c 'doveadm purge -u \"".$rec["email"]."\"'"); + $app->system->exec_safe("su -c ?", 'doveadm purge -u "' . $rec["email"] . '"'); } } diff --git a/server/lib/classes/cron.d/900-letsencrypt.inc.php b/server/lib/classes/cron.d/900-letsencrypt.inc.php index 30a23fe973..3e2c9190c6 100644 --- a/server/lib/classes/cron.d/900-letsencrypt.inc.php +++ b/server/lib/classes/cron.d/900-letsencrypt.inc.php @@ -66,7 +66,7 @@ class cronjob_letsencrypt extends cronjob { } else { $marker_file = '/usr/local/ispconfig/server/le.restart'; $cmd = "echo '1' > " . $marker_file; - exec($letsencrypt . ' -n renew --post-hook ' . escapeshellarg($cmd)); + $app->system->exec_safe($letsencrypt . ' -n renew --post-hook ?', $cmd); if(file_exists($marker_file) && trim(file_get_contents($marker_file)) == '1') { unlink($marker_file); $app->services->restartServiceDelayed('httpd', 'force-reload'); diff --git a/server/lib/classes/functions.inc.php b/server/lib/classes/functions.inc.php index e36ed5b04f..1d9dd67569 100644 --- a/server/lib/classes/functions.inc.php +++ b/server/lib/classes/functions.inc.php @@ -425,9 +425,9 @@ class functions { if(file_exists($id_rsa_file)) unset($id_rsa_file); if(file_exists($id_rsa_pub_file)) unset($id_rsa_pub_file); if(!file_exists($id_rsa_file) && !file_exists($id_rsa_pub_file)) { - exec('ssh-keygen -t rsa -C '.$username.'-rsa-key-'.time().' -f '.$id_rsa_file.' -N ""'); + $app->system->exec_safe('ssh-keygen -t rsa -C ? -f ? -N ""', $username.'-rsa-key-'.time(), $id_rsa_file); $app->db->query("UPDATE client SET created_at = UNIX_TIMESTAMP(), id_rsa = ?, ssh_rsa = ? WHERE client_id = ?", $app->system->file_get_contents($id_rsa_file), $app->system->file_get_contents($id_rsa_pub_file), $client_id); - exec('rm -f '.$id_rsa_file.' '.$id_rsa_pub_file); + $app->system->exec_safe('rm -f ? ?', $id_rsa_file, $id_rsa_pub_file); } else { $app->log("Failed to create SSH keypair for ".$username, LOGLEVEL_WARN); } diff --git a/server/lib/classes/letsencrypt.inc.php b/server/lib/classes/letsencrypt.inc.php index 583e1c25bb..62080e29b4 100644 --- a/server/lib/classes/letsencrypt.inc.php +++ b/server/lib/classes/letsencrypt.inc.php @@ -389,7 +389,7 @@ class letsencrypt { } if(@is_link($key_file)) $app->system->unlink($key_file); - if(@file_exists($key_tmp_file)) exec("ln -s ".escapeshellcmd($key_tmp_file)." ".escapeshellcmd($key_file)); + if(@file_exists($key_tmp_file)) $app->system->exec_safe("ln -s ? ?", $key_tmp_file, $key_file); if(is_file($crt_file)) { $app->system->copy($crt_file, $crt_file.'.old.'.$date); @@ -398,7 +398,7 @@ class letsencrypt { } if(@is_link($crt_file)) $app->system->unlink($crt_file); - if(@file_exists($crt_tmp_file))exec("ln -s ".escapeshellcmd($crt_tmp_file)." ".escapeshellcmd($crt_file)); + if(@file_exists($crt_tmp_file))$app->system->exec_safe("ln -s ? ?", $crt_tmp_file, $crt_file); if(is_file($bundle_file)) { $app->system->copy($bundle_file, $bundle_file.'.old.'.$date); @@ -407,7 +407,7 @@ class letsencrypt { } if(@is_link($bundle_file)) $app->system->unlink($bundle_file); - if(@file_exists($bundle_tmp_file)) exec("ln -s ".escapeshellcmd($bundle_tmp_file)." ".escapeshellcmd($bundle_file)); + if(@file_exists($bundle_tmp_file)) $app->system->exec_safe("ln -s ? ?", $bundle_tmp_file, $bundle_file); return true; } else { diff --git a/server/lib/classes/monitor_tools.inc.php b/server/lib/classes/monitor_tools.inc.php index 1d3dab290b..fefdbcd681 100644 --- a/server/lib/classes/monitor_tools.inc.php +++ b/server/lib/classes/monitor_tools.inc.php @@ -593,13 +593,12 @@ class monitor_tools { // Getting the logfile content if ($logfile != '') { - $logfile = escapeshellcmd($logfile); if (stristr($logfile, ';') or substr($logfile, 0, 9) != '/var/log/' or stristr($logfile, '..')) { $log = 'Logfile path error.'; } else { $log = ''; if (is_readable($logfile)) { - $fd = popen('tail -n 100 ' . $logfile, 'r'); + $fd = popen('tail -n 100 ' . escapeshellarg($logfile), 'r'); if ($fd) { while (!feof($fd)) { $log .= fgets($fd, 4096); diff --git a/server/lib/classes/system.inc.php b/server/lib/classes/system.inc.php index 5c277ada1a..9f3e963eea 100644 --- a/server/lib/classes/system.inc.php +++ b/server/lib/classes/system.inc.php @@ -37,6 +37,9 @@ class system{ var $min_uid = 500; var $min_gid = 500; + private $_last_exec_out = null; + private $_last_exec_retcode = null; + /** * Construct for this class * @@ -716,8 +719,10 @@ class system{ function posix_getgrnam($group) { if(!function_exists('posix_getgrnam')){ $group_datei = $this->server_conf['group_datei']; - $cmd = 'grep -m 1 "^'.$group.':" '.$group_datei; - exec($cmd, $output, $return_var); + $cmd = 'grep -m 1 ? ?'; + $this->exec_safe($cmd, '^'.$group.':', $group_datei); + $output = $this->last_exec_out(); + $return_var = $this->last_exec_retcode(); if($return_var != 0 || !$output[0]) return false; list($f1, $f2, $f3, $f4) = explode(':', $output[0]); $f2 = trim($f2); @@ -1073,10 +1078,10 @@ class system{ } else { // Linux if(substr($dist, 0, 4) == 'suse'){ if($action == 'on'){ - exec("chkconfig --add $service &> /dev/null"); + $this->exec_safe("chkconfig --add ? &> /dev/null", $service); } if($action == 'off'){ - exec("chkconfig --del $service &> /dev/null"); + $this->exec_safe("chkconfig --del ? &> /dev/null", $service); } } else { $runlevels = explode(',', $rl); @@ -1375,7 +1380,7 @@ class system{ if(!empty($ifconfig['IP'])){ foreach($ifconfig['IP'] as $key => $val){ if(!strstr($val, 'lo') && !strstr($val, 'lp') && strstr($val, $main_interface)){ - exec('ifconfig '.$val.' down &> /dev/null'); + $this->exec_safe('ifconfig ? down &> /dev/null', $val); unset($ifconfig['INTERFACE'][$val]); } } @@ -1391,7 +1396,7 @@ class system{ $i = -1; } } - exec('ifconfig '.$new_interface.' '.$to.' netmask '.$this->server_conf['server_netzmaske'].' up &> /dev/null'); + $this->exec_safe('ifconfig ? ? netmask ? up &> /dev/null', $new_interface, $to, $this->server_conf['server_netzmaske']); $ifconfig['INTERFACE'][$new_interface] = $to; } } @@ -1627,15 +1632,6 @@ class system{ chmod($dir, 0700); - /* - if($user != '' && $this->is_user($user) && $user != 'root') { - $user = escapeshellcmd($user); - // I assume that the name of the (vmail group) is the same as the name of the mail user in ISPConfig 3 - $group = $user; - exec("chown $user:$group $dir $dir_cur $dir_new $dir_tmp"); - } - */ - //* Add the subfolder to the subscriptions and courierimapsubscribed files if($subfolder != '') { @@ -1698,7 +1694,9 @@ class system{ //* Check if a application is installed function is_installed($appname) { - exec('which '.escapeshellcmd($appname).' 2> /dev/null', $out, $returncode); + $this->exec_safe('which ? 2> /dev/null', $appname); + $out = $this->last_exec_out(); + $returncode = $this->last_exec_retcode(); if(isset($out[0]) && stristr($out[0], $appname) && $returncode == 0) { return true; } else { @@ -1720,10 +1718,10 @@ class system{ if($protect == true && $web_config['web_folder_protection'] == 'y') { //* Add protection - if($document_root != '' && $document_root != '/' && strlen($document_root) > 6 && !stristr($document_root, '..')) exec('chattr +i '.escapeshellcmd($document_root)); + if($document_root != '' && $document_root != '/' && strlen($document_root) > 6 && !stristr($document_root, '..')) $this->exec_safe('chattr +i ?', $document_root); } else { //* Remove protection - if($document_root != '' && $document_root != '/' && strlen($document_root) > 6 && !stristr($document_root, '..')) exec('chattr -i '.escapeshellcmd($document_root)); + if($document_root != '' && $document_root != '/' && strlen($document_root) > 6 && !stristr($document_root, '..')) $this->exec_safe('chattr -i ?', $document_root); } } @@ -1835,8 +1833,9 @@ class system{ function is_mounted($mountpoint){ //$cmd = 'df 2>/dev/null | grep " '.$mountpoint.'$"'; - $cmd = 'mount 2>/dev/null | grep " on '.$mountpoint.' type "'; - exec($cmd, $output, $return_var); + $cmd = 'mount 2>/dev/null | grep ?'; + exec($cmd, ' on '. $mountpoint . ' type '); + $return_var = $this->last_exec_retcode(); return $return_var == 0 ? true : false; } @@ -1908,7 +1907,8 @@ class system{ // systemd if(is_executable('/bin/systemd') || is_executable('/usr/bin/systemctl')){ if ($check_service) { - exec("systemctl is-enabled ".$servicename." 2>&1", $out, $ret_val); + $this->exec_safe("systemctl is-enabled ? 2>&1", $servicename); + $ret_val = $this->last_exec_retcode(); } if ($ret_val == 0 || !$check_service) { return 'systemctl '.$action.' '.$servicename.'.service'; @@ -2049,6 +2049,42 @@ class system{ return true; } + public function last_exec_out() { + return $this->_last_exec_out; + } + + public function last_exec_retcode() { + return $this->_last_exec_retcode; + } + + public function exec_safe($cmd) { + $arg_count = func_num_args(); + if($arg_count > 1) { + $args = func_get_args(); + + $pos = 0; + $a = 0; + foreach($args as $value) { + $a++; + + $pos = strpos($cmd, '?', $pos); + if($pos === false) { + break; + } + $value = escapeshellarg($value); + $cmd = substr_replace($cmd, $value, $pos, 1); + $pos += strlen($value); + } + } + + $this->_last_exec_out = null; + $this->_last_exec_retcode = null; + return exec($cmd, $this->_last_exec_out, $this->_last_exec_retcode); + } + + public function system_safe($cmd) { + call_user_func_array(array($this, 'exec_safe'), func_get_args()); + return implode("\n", $this->_last_exec_out); + } + } - -?> diff --git a/server/mods-available/remoteaction_core_module.inc.php b/server/mods-available/remoteaction_core_module.inc.php index 807de5060a..e0ce33a5e4 100644 --- a/server/mods-available/remoteaction_core_module.inc.php +++ b/server/mods-available/remoteaction_core_module.inc.php @@ -152,10 +152,10 @@ class remoteaction_core_module { $template_cache_dir = '/vz/template/cache/'; $template_name = escapeshellcmd($parts[1]); if($veid > 0 && $template_name != '' && is_dir($template_cache_dir)) { - $command = "vzdump --suspend --compress --stdexcludes --dumpdir $template_cache_dir $veid"; - exec($command); - exec("mv ".$template_cache_dir."vzdump-openvz-".$veid."*.tgz ".$template_cache_dir.$template_name.".tar.gz"); - exec("rm -f ".$template_cache_dir."vzdump-openvz-".$veid."*.log"); + $command = "vzdump --suspend --compress --stdexcludes --dumpdir ? ?"; + $app->system->exec_safe($command, $template_cache_dir, $veid); + $app->system->exec_safe("mv ?*.tgz ?", $template_cache_dir."vzdump-openvz-".$veid, $template_cache_dir.$template_name.".tar.gz"); + $app->system->exec_safe("rm -f ?*.log", $template_cache_dir."vzdump-openvz-".$veid); } $this->_actionDone($action['action_id'], 'ok'); /* this action takes so much time, @@ -191,7 +191,8 @@ class remoteaction_core_module { } private function _doIspCUpdate($action) { - + global $app; + // Ensure that this code is not executed twice as this would cause a loop in case of a failure $this->_actionDone($action['action_id'], 'ok'); @@ -210,14 +211,14 @@ class remoteaction_core_module { chdir("/tmp"); /* delete the old files (if there are any...) */ - exec("rm /tmp/ISPConfig-" . $new_version . ".tar.gz"); + $app->system->exec_safe("rm ?", "/tmp/ISPConfig-" . $new_version . ".tar.gz"); exec("rm /tmp/ispconfig3_install -R"); /* get the newest version */ - exec("wget http://www.ispconfig.org/downloads/ISPConfig-" . $new_version . ".tar.gz"); + $app->system->exec_safe("wget ?", "http://www.ispconfig.org/downloads/ISPConfig-" . $new_version . ".tar.gz"); /* extract the files */ - exec("tar xvfz ISPConfig-" . $new_version . ".tar.gz"); + $app->system->exec_safe("tar xvfz ?", "ISPConfig-" . $new_version . ".tar.gz"); /* * Initialize the automated update @@ -229,7 +230,7 @@ class remoteaction_core_module { /* * do some clean-up */ - exec("rm /tmp/ISPConfig-" . $new_version . ".tar.gz"); + $app->system->exec_safe("rm ?", "/tmp/ISPConfig-" . $new_version . ".tar.gz"); /* * go back to the "old path" diff --git a/server/plugins-available/apache2_plugin.inc.php b/server/plugins-available/apache2_plugin.inc.php index 7ecbb76109..28a3c4d5d6 100644 --- a/server/plugins-available/apache2_plugin.inc.php +++ b/server/plugins-available/apache2_plugin.inc.php @@ -332,36 +332,38 @@ class apache2_plugin { $ssl_cnf_file = $ssl_dir.'/openssl.conf'; $app->system->file_put_contents($ssl_cnf_file, $ssl_cnf); - $rand_file = escapeshellcmd($rand_file); - $key_file2 = escapeshellcmd($key_file2); + $rand_file = $rand_file; + $key_file2 = $key_file2; $openssl_cmd_key_file2 = $key_file2; if(substr($domain, 0, 2) == '*.' && strpos($key_file2, '/ssl/\*.') !== false) $key_file2 = str_replace('/ssl/\*.', '/ssl/*.', $key_file2); // wildcard certificate - $key_file = escapeshellcmd($key_file); + $key_file = $key_file; $openssl_cmd_key_file = $key_file; if(substr($domain, 0, 2) == '*.' && strpos($key_file, '/ssl/\*.') !== false) $key_file = str_replace('/ssl/\*.', '/ssl/*.', $key_file); // wildcard certificate $ssl_days = 3650; - $csr_file = escapeshellcmd($csr_file); + $csr_file = $csr_file; $openssl_cmd_csr_file = $csr_file; if(substr($domain, 0, 2) == '*.' && strpos($csr_file, '/ssl/\*.') !== false) $csr_file = str_replace('/ssl/\*.', '/ssl/*.', $csr_file); // wildcard certificate - $config_file = escapeshellcmd($ssl_cnf_file); - $crt_file = escapeshellcmd($crt_file); + $config_file = $ssl_cnf_file; + $crt_file = $crt_file; $openssl_cmd_crt_file = $crt_file; if(substr($domain, 0, 2) == '*.' && strpos($crt_file, '/ssl/\*.') !== false) $crt_file = str_replace('/ssl/\*.', '/ssl/*.', $crt_file); // wildcard certificate if(is_file($ssl_cnf_file) && !is_link($ssl_cnf_file)) { - exec("openssl genrsa -des3 -rand $rand_file -passout pass:$ssl_password -out $openssl_cmd_key_file2 2048"); - exec("openssl req -new -sha256 -passin pass:$ssl_password -passout pass:$ssl_password -key $openssl_cmd_key_file2 -out $openssl_cmd_csr_file -days $ssl_days -config $config_file"); - exec("openssl rsa -passin pass:$ssl_password -in $openssl_cmd_key_file2 -out $openssl_cmd_key_file"); + $app->system->exec_safe("openssl genrsa -des3 -rand ? -passout pass:? -out ? 2048", $rand_file, $ssl_password, $openssl_cmd_key_file2); + $app->system->exec_safe("openssl req -new -sha256 -passin pass:? -passout pass:? -key ? -out ? -days ? -config ?", $ssl_password, $ssl_password, $openssl_cmd_key_file2, $openssl_cmd_csr_file, $ssl_days, $config_file); + $app->system->exec_safe("openssl rsa -passin pass:? -in ? -out ?", $ssl_password, $openssl_cmd_key_file2, $openssl_cmd_key_file); if(file_exists($web_config['CA_path'].'/openssl.cnf')) { - exec("openssl ca -batch -out $openssl_cmd_crt_file -config ".$web_config['CA_path']."/openssl.cnf -passin pass:".$web_config['CA_pass']." -in $openssl_cmd_csr_file"); + $app->system->exec_safe("openssl ca -batch -out ? -config ? -passin pass:? -in ?", $openssl_cmd_crt_file, $web_config['CA_path']."/openssl.cnf", $web_config['CA_pass'], $openssl_cmd_csr_file); $app->log("Creating CA-signed SSL Cert for: $domain", LOGLEVEL_DEBUG); - if (filesize($crt_file)==0 || !file_exists($crt_file)) $app->log("CA-Certificate signing failed. openssl ca -out $openssl_cmd_crt_file -config ".$web_config['CA_path']."/openssl.cnf -passin pass:".$web_config['CA_pass']." -in $openssl_cmd_csr_file", LOGLEVEL_ERROR); + if(filesize($crt_file) == 0 || !file_exists($crt_file)) { + $app->log("CA-Certificate signing failed. openssl ca -out $openssl_cmd_crt_file -config " . $web_config['CA_path'] . "/openssl.cnf -passin pass:" . $web_config['CA_pass'] . " -in $openssl_cmd_csr_file", LOGLEVEL_ERROR); + } }; if (@filesize($crt_file)==0 || !file_exists($crt_file)){ - exec("openssl req -x509 -passin pass:$ssl_password -passout pass:$ssl_password -key $openssl_cmd_key_file2 -in $openssl_cmd_csr_file -out $openssl_cmd_crt_file -days $ssl_days -config $config_file "); + $app->system->exec_safe("openssl req -x509 -passin pass:? -passout pass:? -key ? -in ? -out ? -days ? -config ? ", $ssl_password, $ssl_password, $openssl_cmd_key_file2, $openssl_cmd_csr_file, $openssl_cmd_crt_file, $ssl_days, $config_file); $app->log("Creating self-signed SSL Cert for: $domain", LOGLEVEL_DEBUG); }; @@ -402,7 +404,8 @@ class apache2_plugin { if($data["new"]["ssl_action"] == 'save') { $tmp = array(); $crt_data = ''; - exec('openssl x509 -noout -text -in '.escapeshellarg($crt_file),$tmp); + $app->system->exec_safe('openssl x509 -noout -text -in ?', $crt_file); + $tmp = $app->system->last_exec_out(); $crt_data = implode("\n",$tmp); if(stristr($crt_data,'.acme.invalid')) { $data["new"]["ssl_action"] = ''; diff --git a/server/plugins-available/apps_vhost_plugin.inc.php b/server/plugins-available/apps_vhost_plugin.inc.php index b843e3c8a4..41e3cdd82c 100644 --- a/server/plugins-available/apps_vhost_plugin.inc.php +++ b/server/plugins-available/apps_vhost_plugin.inc.php @@ -156,11 +156,11 @@ class apps_vhost_plugin { $apps_vhost_ip = $web_config['apps_vhost_ip'].':'; } - $socket_dir = escapeshellcmd($web_config['php_fpm_socket_dir']); + $socket_dir = $web_config['php_fpm_socket_dir']; if(substr($socket_dir, -1) != '/') $socket_dir .= '/'; - if(!is_dir($socket_dir)) exec('mkdir -p '.$socket_dir); + if(!is_dir($socket_dir)) $app->system->exec_safe('mkdir -p ?', $socket_dir); $fpm_socket = $socket_dir.'apps.sock'; - $cgi_socket = escapeshellcmd($web_config['nginx_cgi_socket']); + $cgi_socket = $web_config['nginx_cgi_socket']; $content = str_replace('{apps_vhost_ip}', $apps_vhost_ip, $content); $content = str_replace('{apps_vhost_port}', $web_config['apps_vhost_port'], $content); -- GitLab From 0c815b5661849d3755f62fd20a249e95d6b9328f Mon Sep 17 00:00:00 2001 From: Florian Schaal <info@schaal-24.de> Date: Mon, 29 Jul 2019 09:35:06 +0200 Subject: [PATCH 112/215] add parameter-option to ispconfig_patch for unattended patches --- server/scripts/ispconfig_patch | 15 +++++++++++---- 1 file changed, 11 insertions(+), 4 deletions(-) diff --git a/server/scripts/ispconfig_patch b/server/scripts/ispconfig_patch index 6ed2a3f5ae..a3361f507d 100644 --- a/server/scripts/ispconfig_patch +++ b/server/scripts/ispconfig_patch @@ -87,6 +87,13 @@ function is_installed($appname) { } } +$cmd_opt = getopt('', array('patch_id::')); +$auto = false; +if(isset($cmd_opt['patch_id'])) { + $patch_id = $cmd_opt['patch_id']; + $auto = true; +} + echo "\n\n".str_repeat('-',80)."\n"; echo " _____ ___________ _____ __ _ |_ _/ ___| ___ \ / __ \ / _(_) @@ -98,14 +105,14 @@ echo " _____ ___________ _____ __ _ |___/ "; echo "\n".str_repeat('-',80)."\n"; echo "\n\n>> Patch tool \n\n"; -echo "Please enter the patch id that you want to be applied to your ISPConfig installation.\nPlease be aware that we take NO responsibility that this will work for you.\nOnly use patches if you know what you are doing.\n\n"; +if(!$auto) echo "Please enter the patch id that you want to be applied to your ISPConfig installation.\nPlease be aware that we take NO responsibility that this will work for you.\nOnly use patches if you know what you are doing.\n\n"; if(!is_installed('patch')) { swriteln("The program 'patch' is missing on your server. Please install it and try again."); exit; } -$patch_id = simple_query('Enter patch id', false, ''); +if(!$auto) $patch_id = simple_query('Enter patch id', false, ''); if($patch_id == '') { swriteln("Patch terminated by user.\n"); die(); @@ -122,7 +129,7 @@ if(!$patch_data) { $patch_text = @file_get_contents('http://ispconfig.org/downloads/patches/' . $patch_id . '.txt'); if($patch_text) { - $ok = simple_query("Patch description:\n".str_repeat("-", 80)."\n".$patch_text."\n".str_repeat("-", 80)."\nDo you really want to apply this patch now?", array('y','n'), 'y'); + if($auto) $ok = 'y'; else $ok = simple_query("Patch description:\n".str_repeat("-", 80)."\n".$patch_text."\n".str_repeat("-", 80)."\nDo you really want to apply this patch now?", array('y','n'), 'y'); if($ok != 'y') { swriteln("Patch terminated by user.\n"); die(); @@ -140,4 +147,4 @@ unlink($temp_file); exit; -?> \ No newline at end of file +?> -- GitLab From e2a6024bc078e75b3e554972fd4952f42071df9a Mon Sep 17 00:00:00 2001 From: Marius Burkard <m.burkard@pixcept.de> Date: Tue, 30 Jul 2019 14:08:34 +0200 Subject: [PATCH 113/215] Implement a more secure way to use exec, system and shell_exec, fixes #5355 --- interface/lib/classes/system.inc.php | 4 + server/lib/classes/aps_installer.inc.php | 1 - .../lib/classes/cron.d/150-webalizer.inc.php | 4 +- .../lib/classes/cron.d/200-logfiles.inc.php | 4 +- .../classes/cron.d/500-backup_mail.inc.php | 6 +- server/lib/classes/system.inc.php | 14 +- .../remoteaction_core_module.inc.php | 2 +- .../plugins-available/apache2_plugin.inc.php | 281 ++++++++---------- .../apps_vhost_plugin.inc.php | 4 +- .../plugins-available/backup_plugin.inc.php | 56 ++-- server/plugins-available/bind_plugin.inc.php | 37 ++- .../cron_jailkit_plugin.inc.php | 72 ++--- server/plugins-available/cron_plugin.inc.php | 24 +- .../plugins-available/firewall_plugin.inc.php | 28 +- .../plugins-available/getmail_plugin.inc.php | 4 +- server/plugins-available/mail_plugin.inc.php | 137 +++------ .../mail_plugin_dkim.inc.php | 3 +- .../plugins-available/mailman_plugin.inc.php | 8 +- .../mysql_clientdb_plugin.inc.php | 22 +- .../network_settings_plugin.inc.php | 4 +- server/plugins-available/nginx_plugin.inc.php | 256 ++++++++-------- .../nginx_reverseproxy_plugin.inc.php | 35 +-- .../plugins-available/openvz_plugin.inc.php | 20 +- .../postfix_server_plugin.inc.php | 12 +- .../plugins-available/powerdns_plugin.inc.php | 12 +- .../shelluser_base_plugin.inc.php | 134 ++++----- .../shelluser_jailkit_plugin.inc.php | 97 ++---- .../software_update_plugin.inc.php | 33 +- server/plugins-available/xmpp_plugin.inc.php | 12 +- 29 files changed, 574 insertions(+), 752 deletions(-) diff --git a/interface/lib/classes/system.inc.php b/interface/lib/classes/system.inc.php index d4d9cccefe..ede53034d3 100644 --- a/interface/lib/classes/system.inc.php +++ b/interface/lib/classes/system.inc.php @@ -65,6 +65,10 @@ class system { public function exec_safe($cmd) { $arg_count = func_num_args(); + if($arg_count != substr_count($cmd, '?') + 1) { + trigger_error('Placeholder count not matching argument list.', E_USER_WARNING); + return false; + } if($arg_count > 1) { $args = func_get_args(); diff --git a/server/lib/classes/aps_installer.inc.php b/server/lib/classes/aps_installer.inc.php index 2995b01e07..922f32e612 100644 --- a/server/lib/classes/aps_installer.inc.php +++ b/server/lib/classes/aps_installer.inc.php @@ -544,7 +544,6 @@ class ApsInstaller extends ApsBase chmod($this->local_installpath.'install_scripts/'.$cfgscript, 0755); // Change to the install folder (import for the exec() below!) - //exec('chown -R '.$this->file_owner_user.':'.$this->file_owner_group.' '.escapeshellarg($this->local_installpath)); chdir($this->local_installpath.'install_scripts/'); // Set the enviroment variables diff --git a/server/lib/classes/cron.d/150-webalizer.inc.php b/server/lib/classes/cron.d/150-webalizer.inc.php index 5d341cefe7..42aa125e0f 100644 --- a/server/lib/classes/cron.d/150-webalizer.inc.php +++ b/server/lib/classes/cron.d/150-webalizer.inc.php @@ -94,9 +94,9 @@ class cronjob_webalizer extends cronjob { $log_folder .= '/' . $subdomain_host; unset($tmp); } - $logfile = escapeshellcmd($rec['document_root'].'/' . $log_folder . '/'.$yesterday.'-access.log'); + $logfile = $rec['document_root'].'/' . $log_folder . '/'.$yesterday.'-access.log'; if(!@is_file($logfile)) { - $logfile = escapeshellcmd($rec['document_root'].'/' . $log_folder . '/'.$yesterday.'-access.log.gz'); + $logfile = $rec['document_root'].'/' . $log_folder . '/'.$yesterday.'-access.log.gz'; if(!@is_file($logfile)) { continue; } diff --git a/server/lib/classes/cron.d/200-logfiles.inc.php b/server/lib/classes/cron.d/200-logfiles.inc.php index d1dbf94291..b229c76a8a 100644 --- a/server/lib/classes/cron.d/200-logfiles.inc.php +++ b/server/lib/classes/cron.d/200-logfiles.inc.php @@ -147,7 +147,7 @@ class cronjob_logfiles extends cronjob { } // rotate and compress the error.log - $error_logfile = escapeshellcmd($rec['document_root'].'/' . $log_folder . '/error.log'); + $error_logfile = $rec['document_root'].'/' . $log_folder . '/error.log'; // rename older files (move up by one) $num = $log_retention; while($num >= 1) { @@ -187,7 +187,7 @@ class cronjob_logfiles extends cronjob { $ispconfig_logfiles = array('ispconfig.log', 'cron.log', 'auth.log'); foreach($ispconfig_logfiles as $ispconfig_logfile) { $num = $max_syslog; - $ispconfig_logfile = escapeshellcmd($conf['ispconfig_log_dir'].'/'.$ispconfig_logfile); + $ispconfig_logfile = $conf['ispconfig_log_dir'].'/'.$ispconfig_logfile; // rename older files (move up by one) while($num >= 1) { if(is_file($ispconfig_logfile . '.' . $num . '.gz')) rename($ispconfig_logfile . '.' . $num . '.gz', $ispconfig_logfile . '.' . ($num + 1) . '.gz'); diff --git a/server/lib/classes/cron.d/500-backup_mail.inc.php b/server/lib/classes/cron.d/500-backup_mail.inc.php index 6cd689edca..234f02771d 100644 --- a/server/lib/classes/cron.d/500-backup_mail.inc.php +++ b/server/lib/classes/cron.d/500-backup_mail.inc.php @@ -69,9 +69,9 @@ class cronjob_backup_mail extends cronjob { $records = $app->db->queryAllRecords("SELECT * FROM mail_user WHERE server_id = ? AND maildir != ''", intval($conf['server_id'])); if(is_array($records) && $run_backups) { if(!is_dir($backup_dir)) { - mkdir(escapeshellcmd($backup_dir), $backup_dir_permissions, true); + mkdir($backup_dir, $backup_dir_permissions, true); } else { - chmod(escapeshellcmd($backup_dir), $backup_dir_permissions); + chmod($backup_dir, $backup_dir_permissions); } system('which pigz > /dev/null', $ret); if($ret === 0) { @@ -122,7 +122,7 @@ class cronjob_backup_mail extends cronjob { if ($rec['maildir_format'] == 'mdbox') { if (empty($this->tmp_backup_dir)) $this->tmp_backup_dir = $rec['maildir']; // Create temporary backup-mailbox - exec("su -c ?", 'dsync backup -u "'.$rec["email"].'" mdbox:' . $this->tmp_backup_dir . '/backup'); + $app->system->exec_safe("su -c ?", 'dsync backup -u "'.$rec["email"].'" mdbox:' . $this->tmp_backup_dir . '/backup'); if($backup_mode == 'userzip') { $mail_backup_file.='.zip'; diff --git a/server/lib/classes/system.inc.php b/server/lib/classes/system.inc.php index 9f3e963eea..051f3554a6 100644 --- a/server/lib/classes/system.inc.php +++ b/server/lib/classes/system.inc.php @@ -1601,22 +1601,20 @@ class system{ $mail_config = $app->getconf->get_server_config($conf["server_id"], 'mail'); if($subfolder != '') { - $dir = escapeshellcmd($maildir_path.'/.'.$subfolder); + $dir = $maildir_path.'/.'.$subfolder; } else { - $dir = escapeshellcmd($maildir_path); + $dir = $maildir_path; } if(!is_dir($dir)) mkdir($dir, 0700, true); if($user != '' && $user != 'root' && $this->is_user($user)) { - $user = escapeshellcmd($user); if(is_dir($dir)) $this->chown($dir, $user); $chown_mdsub = true; } if($group != '' && $group != 'root' && $this->is_group($group)) { - $group = escapeshellcmd($group); if(is_dir($dir)) $this->chgrp($dir, $group); $chgrp_mdsub = true; @@ -1638,7 +1636,7 @@ class system{ // Courier if($mail_config['pop3_imap_daemon'] == 'courier') { if(!is_file($maildir_path.'/courierimapsubscribed')) { - $tmp_file = escapeshellcmd($maildir_path.'/courierimapsubscribed'); + $tmp_file = $maildir_path.'/courierimapsubscribed'; touch($tmp_file); chmod($tmp_file, 0744); chown($tmp_file, 'vmail'); @@ -1650,7 +1648,7 @@ class system{ // Dovecot if($mail_config['pop3_imap_daemon'] == 'dovecot') { if(!is_file($maildir_path.'/subscriptions')) { - $tmp_file = escapeshellcmd($maildir_path.'/subscriptions'); + $tmp_file = $maildir_path.'/subscriptions'; touch($tmp_file); chmod($tmp_file, 0744); chown($tmp_file, 'vmail'); @@ -2059,6 +2057,10 @@ class system{ public function exec_safe($cmd) { $arg_count = func_num_args(); + if($arg_count != substr_count($cmd, '?') + 1) { + trigger_error('Placeholder count not matching argument list.', E_USER_WARNING); + return false; + } if($arg_count > 1) { $args = func_get_args(); diff --git a/server/mods-available/remoteaction_core_module.inc.php b/server/mods-available/remoteaction_core_module.inc.php index e0ce33a5e4..3b6bb9fb49 100644 --- a/server/mods-available/remoteaction_core_module.inc.php +++ b/server/mods-available/remoteaction_core_module.inc.php @@ -150,7 +150,7 @@ class remoteaction_core_module { $parts = explode(':', $action['action_param']); $veid = intval($parts[0]); $template_cache_dir = '/vz/template/cache/'; - $template_name = escapeshellcmd($parts[1]); + $template_name = $parts[1]; if($veid > 0 && $template_name != '' && is_dir($template_cache_dir)) { $command = "vzdump --suspend --compress --stdexcludes --dumpdir ? ?"; $app->system->exec_safe($command, $template_cache_dir, $veid); diff --git a/server/plugins-available/apache2_plugin.inc.php b/server/plugins-available/apache2_plugin.inc.php index 28a3c4d5d6..2183e96eb4 100644 --- a/server/plugins-available/apache2_plugin.inc.php +++ b/server/plugins-available/apache2_plugin.inc.php @@ -476,7 +476,7 @@ class apache2_plugin { if($data['new']['ssl_action'] == 'del') { if(file_exists($web_config['CA_path'].'/openssl.cnf') && !is_link($web_config['CA_path'].'/openssl.cnf')) { - exec("openssl ca -batch -config ".$web_config['CA_path']."/openssl.cnf -passin pass:".$web_config['CA_pass']." -revoke ".escapeshellcmd($crt_file)); + $app->system->exec_safe("openssl ca -batch -config ? -passin pass:? -revoke ?", $web_config['CA_path']."/openssl.cnf", $web_config['CA_pass'], $crt_file); $app->log("Revoking CA-signed SSL Cert for: $domain", LOGLEVEL_DEBUG); }; $app->system->unlink($csr_file); @@ -594,31 +594,31 @@ class apache2_plugin { //* Check if a ispconfigend user and group exists and create them if(!$app->system->is_group('ispconfigend')) { - exec('groupadd --gid '.($connect_userid_to_webid_start + 10000).' ispconfigend'); + $app->system->exec_safe('groupadd --gid ? ispconfigend', $connect_userid_to_webid_start + 10000); } if(!$app->system->is_user('ispconfigend')) { - exec('useradd -g ispconfigend -d /usr/local/ispconfig --uid '.($connect_userid_to_webid_start + 10000).' ispconfigend'); + $app->system->exec_safe('useradd -g ispconfigend -d /usr/local/ispconfig --uid ? ispconfigend', $connect_userid_to_webid_start + 10000); } } else { $fixed_uid_param = ''; $fixed_gid_param = ''; } - $groupname = escapeshellcmd($data['new']['system_group']); + $groupname = $data['new']['system_group']; if($data['new']['system_group'] != '' && !$app->system->is_group($data['new']['system_group'])) { - exec('groupadd '.$fixed_gid_param.' '.$groupname); - if($apache_chrooted) $app->system->_exec('chroot '.escapeshellcmd($web_config['website_basedir']).' groupadd '.$groupname); + $app->system->exec_safe('groupadd ? ?', $fixed_gid_param, $groupname); + if($apache_chrooted) $app->system->exec_safe('chroot ? groupadd ?', $web_config['website_basedir'], $groupname); $app->log('Adding the group: '.$groupname, LOGLEVEL_DEBUG); } - $username = escapeshellcmd($data['new']['system_user']); + $username = $data['new']['system_user']; if($data['new']['system_user'] != '' && !$app->system->is_user($data['new']['system_user'])) { if($web_config['add_web_users_to_sshusers_group'] == 'y') { - exec('useradd -d '.escapeshellcmd($data['new']['document_root'])." -g $groupname $fixed_uid_param -G sshusers $username -s /bin/false"); - if($apache_chrooted) $app->system->_exec('chroot '.escapeshellcmd($web_config['website_basedir']).' useradd -d '.escapeshellcmd($data['new']['document_root'])." -g $groupname $fixed_uid_param -G sshusers $username -s /bin/false"); + $app->system->exec_safe('useradd -d ? -g ? ? -G sshusers ? -s /bin/false', $data['new']['document_root'], $groupname, $fixed_uid_param, $username); + if($apache_chrooted) $app->system->exec_safe('chroot ? useradd -d ? -g ? ? -G sshusers ? -s /bin/false', $web_config['website_basedir'], $data['new']['document_root'], $groupname, $fixed_uid_param, $username); } else { - exec('useradd -d '.escapeshellcmd($data['new']['document_root'])." -g $groupname $fixed_uid_param $username -s /bin/false"); - if($apache_chrooted) $app->system->_exec('chroot '.escapeshellcmd($web_config['website_basedir']).' useradd -d '.escapeshellcmd($data['new']['document_root'])." -g $groupname $fixed_uid_param $username -s /bin/false"); + $app->system->exec_safe('useradd -d ? -g ? ? ? -s /bin/false', $data['new']['document_root'], $groupname, $fixed_uid_param, $username); + if($apache_chrooted) $app->system->exec_safe('chroot ? useradd -d ? -g ? ? ? -s /bin/false', $web_config['website_basedir'], $data['new']['document_root'], $groupname, $fixed_uid_param, $username); } $app->log('Adding the user: '.$username, LOGLEVEL_DEBUG); } @@ -641,7 +641,7 @@ class apache2_plugin { if(substr($tmp_symlink, -1, 1) == '/') $tmp_symlink = substr($tmp_symlink, 0, -1); // create the symlinks, if not exist if(is_link($tmp_symlink)) { - exec('rm -f '.escapeshellcmd($tmp_symlink)); + $app->system->exec_safe('rm -f ?', $tmp_symlink); $app->log('Removed symlink: rm -f '.$tmp_symlink, LOGLEVEL_DEBUG); } } @@ -668,13 +668,12 @@ class apache2_plugin { } //* Unmount the old log directory bfore we move the log dir - //exec('fuser -km '.escapeshellcmd($old_dir.'/log')); - exec('umount '.escapeshellcmd($data['old']['document_root'].'/log')); + $app->system->exec_safe('umount ?', $data['old']['document_root'].'/log'); //* Create new base directory, if it does not exist yet if(!is_dir($new_dir)) $app->system->mkdirpath($new_dir); $app->system->web_folder_protection($data['old']['document_root'], false); - exec('mv '.escapeshellarg($data['old']['document_root']).' '.escapeshellarg($new_dir)); + $app->system->exec_safe('mv ? ?', $data['old']['document_root'], $new_dir); //$app->system->rename($data['old']['document_root'],$new_dir); $app->log('Moving site to new document root: mv '.$data['old']['document_root'].' '.$new_dir, LOGLEVEL_DEBUG); @@ -682,17 +681,17 @@ class apache2_plugin { $data['new']['php_open_basedir'] = str_replace($data['old']['document_root'], $data['new']['document_root'], $data['old']['php_open_basedir']); //* Change the owner of the website files to the new website owner - exec('chown --recursive --from='.escapeshellcmd($data['old']['system_user']).':'.escapeshellcmd($data['old']['system_group']).' '.escapeshellcmd($data['new']['system_user']).':'.escapeshellcmd($data['new']['system_group']).' '.$new_dir); + $app->system->exec_safe('chown --recursive --from=?:? ?:? ?', $data['old']['system_user'], $data['old']['system_group'], $data['new']['system_user'], $data['new']['system_group'], $new_dir); //* Change the home directory and group of the website user - $command = 'killall -u '.escapeshellcmd($data['new']['system_user']).' ; usermod'; - $command .= ' --home '.escapeshellcmd($data['new']['document_root']); - $command .= ' --gid '.escapeshellcmd($data['new']['system_group']); - $command .= ' '.escapeshellcmd($data['new']['system_user']).' 2>/dev/null'; - exec($command); + $command = 'killall -u ? ; usermod'; + $command .= ' --home ?'; + $command .= ' --gid ?'; + $command .= ' ? 2>/dev/null'; + $app->system->exec_safe($command, $data['new']['system_user'], $data['new']['document_root'], $data['new']['system_group'], $data['new']['system_user']); } - if($apache_chrooted) $app->system->_exec('chroot '.escapeshellcmd($web_config['website_basedir']).' '.$command); + if($apache_chrooted) $app->system->exec_safe('chroot ? ?', $web_config['website_basedir'], $command); //* Change the log mount /* @@ -714,7 +713,7 @@ class apache2_plugin { $app->system->replaceLine('/etc/fstab', $fstab_line_old, $fstab_line, 0, 1); } - exec('mount --bind '.escapeshellarg('/var/log/ispconfig/httpd/'.$data['new']['domain']).' '.escapeshellarg($data['new']['document_root'].'/'.$log_folder)); + $app->system->exec_safe('mount --bind ? ?', '/var/log/ispconfig/httpd/'.$data['new']['domain'], $data['new']['document_root'].'/'.$log_folder); } @@ -726,7 +725,6 @@ class apache2_plugin { if(!is_dir($data['new']['document_root'].'/' . $web_folder)) $app->system->mkdirpath($data['new']['document_root'].'/' . $web_folder); if(!is_dir($data['new']['document_root'].'/' . $web_folder . '/error') and $data['new']['errordocs']) $app->system->mkdirpath($data['new']['document_root'].'/' . $web_folder . '/error'); if($data['new']['stats_type'] != '' && !is_dir($data['new']['document_root'].'/' . $web_folder . '/stats')) $app->system->mkdirpath($data['new']['document_root'].'/' . $web_folder . '/stats'); - //if(!is_dir($data['new']['document_root'].'/'.$log_folder)) exec('mkdir -p '.$data['new']['document_root'].'/'.$log_folder); if(!is_dir($data['new']['document_root'].'/ssl')) $app->system->mkdirpath($data['new']['document_root'].'/ssl'); if(!is_dir($data['new']['document_root'].'/cgi-bin')) $app->system->mkdirpath($data['new']['document_root'].'/cgi-bin'); if(!is_dir($data['new']['document_root'].'/tmp')) $app->system->mkdirpath($data['new']['document_root'].'/tmp'); @@ -750,7 +748,7 @@ class apache2_plugin { // Remove the symlink for the site, if site is renamed if($this->action == 'update' && $data['old']['domain'] != '' && $data['new']['domain'] != $data['old']['domain']) { - if(is_dir('/var/log/ispconfig/httpd/'.$data['old']['domain'])) exec('rm -rf /var/log/ispconfig/httpd/'.$data['old']['domain']); + if(is_dir('/var/log/ispconfig/httpd/'.$data['old']['domain'])) $app->system->exec_safe('rm -rf ?', '/var/log/ispconfig/httpd/'.$data['old']['domain']); if(is_link($data['old']['document_root'].'/'.$old_log_folder)) $app->system->unlink($data['old']['document_root'].'/'.$old_log_folder); //* remove old log mount @@ -758,19 +756,18 @@ class apache2_plugin { $app->system->removeLine('/etc/fstab', $fstab_line); //* Unmount log directory - //exec('fuser -km '.escapeshellarg($data['old']['document_root'].'/'.$old_log_folder)); - exec('umount '.escapeshellarg($data['old']['document_root'].'/'.$old_log_folder)); + $app->system->exec_safe('umount ?', $data['old']['document_root'].'/'.$old_log_folder); } //* Create the log dir if nescessary and mount it if(!is_dir($data['new']['document_root'].'/'.$log_folder) || !is_dir('/var/log/ispconfig/httpd/'.$data['new']['domain']) || is_link($data['new']['document_root'].'/'.$log_folder)) { if(is_link($data['new']['document_root'].'/'.$log_folder)) unlink($data['new']['document_root'].'/'.$log_folder); - if(!is_dir('/var/log/ispconfig/httpd/'.$data['new']['domain'])) exec('mkdir -p /var/log/ispconfig/httpd/'.$data['new']['domain']); + if(!is_dir('/var/log/ispconfig/httpd/'.$data['new']['domain'])) $app->system->exec_safe('mkdir -p ?', '/var/log/ispconfig/httpd/'.$data['new']['domain']); $app->system->mkdirpath($data['new']['document_root'].'/'.$log_folder); $app->system->chown($data['new']['document_root'].'/'.$log_folder, 'root'); $app->system->chgrp($data['new']['document_root'].'/'.$log_folder, 'root'); $app->system->chmod($data['new']['document_root'].'/'.$log_folder, 0755); - exec('mount --bind '.escapeshellarg('/var/log/ispconfig/httpd/'.$data['new']['domain']).' '.escapeshellarg($data['new']['document_root'].'/'.$log_folder)); + $app->system->exec_safe('mount --bind ? ?', '/var/log/ispconfig/httpd/'.$data['new']['domain'], $data['new']['document_root'].'/'.$log_folder); //* add mountpoint to fstab $fstab_line = '/var/log/ispconfig/httpd/'.$data['new']['domain'].' '.$data['new']['document_root'].'/'.$log_folder.' none bind,nobootwait'; $fstab_line .= @($web_config['network_filesystem'] == 'y')?',_netdev 0 0':' 0 0'; @@ -795,7 +792,7 @@ class apache2_plugin { if(substr($tmp_symlink, -1, 1) == '/') $tmp_symlink = substr($tmp_symlink, 0, -1); // remove the symlinks, if not exist if(is_link($tmp_symlink)) { - exec('rm -f '.escapeshellcmd($tmp_symlink)); + $app->system->exec_safe('rm -f ?', $tmp_symlink); $app->log('Removed symlink: rm -f '.$tmp_symlink, LOGLEVEL_DEBUG); } } @@ -816,11 +813,10 @@ class apache2_plugin { } // create the symlinks, if not exist if(!is_link($tmp_symlink)) { - // exec("ln -s ".escapeshellcmd($data["new"]["document_root"])."/ ".escapeshellcmd($tmp_symlink)); if ($web_config["website_symlinks_rel"] == 'y') { - $app->system->create_relative_link(escapeshellcmd($data["new"]["document_root"]), escapeshellcmd($tmp_symlink)); + $app->system->create_relative_link($data["new"]["document_root"], $tmp_symlink); } else { - exec("ln -s ".escapeshellcmd($data["new"]["document_root"])."/ ".escapeshellcmd($tmp_symlink)); + $app->system->exec_safe("ln -s ? ?", $data["new"]["document_root"]."/", $tmp_symlink); } $app->log('Creating symlink: ln -s '.$data['new']['document_root'].'/ '.$tmp_symlink, LOGLEVEL_DEBUG); @@ -840,69 +836,67 @@ class apache2_plugin { // Copy the error pages if($data['new']['errordocs']) { - $error_page_path = escapeshellcmd($data['new']['document_root']).'/' . $web_folder . '/error/'; - if (file_exists($conf['rootpath'] . '/conf-custom/error/'.substr(escapeshellcmd($conf['language']), 0, 2))) { - exec('cp ' . $conf['rootpath'] . '/conf-custom/error/'.substr(escapeshellcmd($conf['language']), 0, 2).'/* '.$error_page_path); + $error_page_path = $data['new']['document_root'].'/' . $web_folder . '/error/'; + if (file_exists($conf['rootpath'] . '/conf-custom/error/'.substr($conf['language'], 0, 2))) { + $app->system->exec_safe('cp ?* ?', $conf['rootpath'] . '/conf-custom/error/'.substr($conf['language'], 0, 2).'/', $error_page_path); } else { if (file_exists($conf['rootpath'] . '/conf-custom/error/400.html')) { - exec('cp '. $conf['rootpath'] . '/conf-custom/error/*.html '.$error_page_path); + $app->system->exec_safe('cp ?*.html ?', $conf['rootpath'] . '/conf-custom/error/', $error_page_path); } else { - exec('cp ' . $conf['rootpath'] . '/conf/error/'.substr(escapeshellcmd($conf['language']), 0, 2).'/* '.$error_page_path); + $app->system->exec_safe('cp ?* ?', $conf['rootpath'] . '/conf/error/'.substr($conf['language'], 0, 2).'/', $error_page_path); } } - exec('chmod -R a+r '.$error_page_path); + $app->system->exec_safe('chmod -R a+r ?', $error_page_path); } //* Copy the web skeleton files only when there is no index.ph or index.html file yet if(!file_exists($data['new']['document_root'].'/'.$web_folder.'/index.html') && !file_exists($data['new']['document_root'].'/'.$web_folder.'/index.php')) { - if (file_exists($conf['rootpath'] . '/conf-custom/index/standard_index.html_'.substr(escapeshellcmd($conf['language']), 0, 2))) { - if(!file_exists(escapeshellcmd($data['new']['document_root']).'/' . $web_folder . '/index.html')) exec('cp ' . $conf['rootpath'] . '/conf-custom/index/standard_index.html_'.substr(escapeshellcmd($conf['language']), 0, 2).' '.escapeshellcmd($data['new']['document_root']).'/' . $web_folder . '/index.html'); + if (file_exists($conf['rootpath'] . '/conf-custom/index/standard_index.html_'.substr($conf['language'], 0, 2))) { + if(!file_exists($data['new']['document_root'] . '/' . $web_folder . '/index.html')) { + $app->system->exec_safe('cp ? ?', $conf['rootpath'] . '/conf-custom/index/standard_index.html_' . substr($conf['language'], 0, 2), $data['new']['document_root'] . '/' . $web_folder . '/index.html'); + } if(is_file($conf['rootpath'] . '/conf-custom/index/favicon.ico')) { - if(!file_exists(escapeshellcmd($data['new']['document_root']).'/' . $web_folder . '/favicon.ico')) exec('cp ' . $conf['rootpath'] . '/conf-custom/index/favicon.ico '.escapeshellcmd($data['new']['document_root']).'/' . $web_folder . '/'); + if(!file_exists($data['new']['document_root'].'/' . $web_folder . '/favicon.ico')) $app->system->exec_safe('cp ? ?', $conf['rootpath'] . '/conf-custom/index/favicon.ico', $data['new']['document_root'].'/' . $web_folder . '/'); } if(is_file($conf['rootpath'] . '/conf-custom/index/robots.txt')) { - if(!file_exists(escapeshellcmd($data['new']['document_root']).'/' . $web_folder . '/robots.txt')) exec('cp ' . $conf['rootpath'] . '/conf-custom/index/robots.txt '.escapeshellcmd($data['new']['document_root']).'/' . $web_folder . '/'); + if(!file_exists($data['new']['document_root'].'/' . $web_folder . '/robots.txt')) $app->system->exec_safe('cp ? ?', $conf['rootpath'] . '/conf-custom/index/robots.txt', $data['new']['document_root'].'/' . $web_folder . '/'); } - //if(is_file($conf['rootpath'] . '/conf-custom/index/.htaccess')) { - // exec('cp ' . $conf['rootpath'] . '/conf-custom/index/.htaccess '.escapeshellcmd($data['new']['document_root']).'/' . $web_folder . '/'); - //} } else { if (file_exists($conf['rootpath'] . '/conf-custom/index/standard_index.html')) { - if(!file_exists(escapeshellcmd($data['new']['document_root']).'/' . $web_folder . '/index.html')) exec('cp ' . $conf['rootpath'] . '/conf-custom/index/standard_index.html '.escapeshellcmd($data['new']['document_root']).'/' . $web_folder . '/index.html'); + if(!file_exists($data['new']['document_root'].'/' . $web_folder . '/index.html')) $app->system->exec_safe('cp ? ?', $conf['rootpath'] . '/conf-custom/index/standard_index.html', $data['new']['document_root'].'/' . $web_folder . '/index.html'); } else { - if(!file_exists(escapeshellcmd($data['new']['document_root']).'/' . $web_folder . '/index.html')) exec('cp ' . $conf['rootpath'] . '/conf/index/standard_index.html_'.substr(escapeshellcmd($conf['language']), 0, 2).' '.escapeshellcmd($data['new']['document_root']).'/' . $web_folder . '/index.html'); + if(!file_exists($data['new']['document_root'].'/' . $web_folder . '/index.html')) $app->system->exec_safe('cp ? ?', $conf['rootpath'] . '/conf/index/standard_index.html_'.substr($conf['language'], 0, 2), $data['new']['document_root'].'/' . $web_folder . '/index.html'); if(is_file($conf['rootpath'] . '/conf/index/favicon.ico')){ - if(!file_exists(escapeshellcmd($data['new']['document_root']).'/' . $web_folder . '/favicon.ico')) exec('cp ' . $conf['rootpath'] . '/conf/index/favicon.ico '.escapeshellcmd($data['new']['document_root']).'/' . $web_folder . '/'); + if(!file_exists($data['new']['document_root'].'/' . $web_folder . '/favicon.ico')) $app->system->exec_safe('cp ? ?', $conf['rootpath'] . '/conf/index/favicon.ico', $data['new']['document_root'].'/' . $web_folder . '/'); } if(is_file($conf['rootpath'] . '/conf/index/robots.txt')){ - if(!file_exists(escapeshellcmd($data['new']['document_root']).'/' . $web_folder . '/robots.txt')) exec('cp ' . $conf['rootpath'] . '/conf/index/robots.txt '.escapeshellcmd($data['new']['document_root']).'/' . $web_folder . '/'); + if(!file_exists($data['new']['document_root'].'/' . $web_folder . '/robots.txt')) $app->system->exec_safe('cp ? ?', $conf['rootpath'] . '/conf/index/robots.txt', $data['new']['document_root'].'/' . $web_folder . '/'); } - //if(is_file($conf['rootpath'] . '/conf/index/.htaccess')) exec('cp ' . $conf['rootpath'] . '/conf/index/.htaccess '.escapeshellcmd($data['new']['document_root']).'/' . $web_folder . '/'); } } } - exec('chmod -R a+r '.escapeshellcmd($data['new']['document_root']).'/' . $web_folder . '/'); + $app->system->exec_safe('chmod -R a+r ?', $data['new']['document_root'].'/' . $web_folder . '/'); //** Copy the error documents on update when the error document checkbox has been activated and was deactivated before } elseif ($this->action == 'update' && ($data['new']['type'] == 'vhost' || $data['new']['type'] == 'vhostsubdomain' || $data['new']['type'] == 'vhostalias') && $data['old']['errordocs'] == 0 && $data['new']['errordocs'] == 1) { - $error_page_path = escapeshellcmd($data['new']['document_root']).'/' . $web_folder . '/error/'; - if (file_exists($conf['rootpath'] . '/conf-custom/error/'.substr(escapeshellcmd($conf['language']), 0, 2))) { - exec('cp ' . $conf['rootpath'] . '/conf-custom/error/'.substr(escapeshellcmd($conf['language']), 0, 2).'/* '.$error_page_path); + $error_page_path = $data['new']['document_root'].'/' . $web_folder . '/error/'; + if (file_exists($conf['rootpath'] . '/conf-custom/error/'.substr($conf['language'], 0, 2))) { + $app->system->exec_safe('cp ?* ?', $conf['rootpath'] . '/conf-custom/error/'.substr($conf['language'], 0, 2).'/', $error_page_path); } else { if (file_exists($conf['rootpath'] . '/conf-custom/error/400.html')) { - exec('cp ' . $conf['rootpath'] . '/conf-custom/error/*.html '.$error_page_path); + $app->system->exec_safe('cp ?*.html ?', $conf['rootpath'] . '/conf-custom/error/', $error_page_path); } else { - exec('cp ' . $conf['rootpath'] . '/conf/error/'.substr(escapeshellcmd($conf['language']), 0, 2).'/* '.$error_page_path); + $app->system->exec_safe('cp ?* ?', $conf['rootpath'] . '/conf/error/'.substr($conf['language'], 0, 2).'/', $error_page_path); } } - exec('chmod -R a+r '.$error_page_path); - exec('chown -R '.$data['new']['system_user'].':'.$data['new']['system_group'].' '.$error_page_path); + $app->system->exec_safe('chmod -R a+r ?', $error_page_path); + $app->system->exec_safe('chown -R ?:? ?', $data['new']['system_user'], $data['new']['system_group'], $error_page_path); } // end copy error docs // Set the quota for the user, but only for vhosts, not vhostsubdomains or vhostalias @@ -917,39 +911,39 @@ class apache2_plugin { } // get the primitive folder for document_root and the filesystem, will need it later. - $df_output=explode(" ", exec("df -T " . escapeshellarg($data['new']['document_root']) . "|awk 'END{print \$2,\$NF}'")); + $df_output=explode(" ", $app->system->exec_safe("df -T ?|awk 'END{print \$2,\$NF}'", $data['new']['document_root'])); $file_system = $df_output[0]; $primitive_root = $df_output[1]; if($file_system == 'xfs') { - exec("xfs_quota -x -c " . escapeshellarg("limit -u bsoft=$mb_soft" . 'm'. " bhard=$mb_hard" . 'm'. " " . $username) . " " . escapeshellarg($primitive_root)); + $app->system->exec_safe("xfs_quota -x -c ? ?", "limit -u bsoft=$mb_soft" . 'm'. " bhard=$mb_hard" . 'm'. " " . $username, $primitive_root); // xfs only supports timers globally, not per user. - exec("xfs_quota -x -c 'timer -bir -i 604800' " . escapeshellarg($primitive_root)); + $app->system->exec_safe("xfs_quota -x -c 'timer -bir -i 604800' ?", $primitive_root); unset($project_uid, $username_position, $xfs_projects); unset($primitive_root, $df_output, $mb_hard, $mb_soft); } else { if($app->system->is_installed('setquota')) { - exec('setquota -u '. $username . ' ' . $blocks_soft . ' ' . $blocks_hard . ' 0 0 -a &> /dev/null'); - exec('setquota -T -u '.$username.' 604800 604800 -a &> /dev/null'); + $app->system->exec_safe('setquota -u ? ? ? 0 0 -a &> /dev/null', $username, $blocks_soft, $blocks_hard); + $app->system->exec_safe('setquota -T -u ? 604800 604800 -a &> /dev/null', $username); } } } if($this->action == 'insert' || $data["new"]["system_user"] != $data["old"]["system_user"]) { // Chown and chmod the directories below the document root - $app->system->_exec('chown -R '.$username.':'.$groupname.' '.escapeshellcmd($data['new']['document_root']).'/' . $web_folder); + $app->system->exec_safe('chown -R ?:? ?', $username, $groupname, $data['new']['document_root'].'/' . $web_folder); // The document root itself has to be owned by root in normal level and by the web owner in security level 20 if($web_config['security_level'] == 20) { - $app->system->_exec('chown '.$username.':'.$groupname.' '.escapeshellcmd($data['new']['document_root']).'/' . $web_folder); + $app->system->exec_safe('chown ?:? ?', $username, $groupname, $data['new']['document_root'].'/' . $web_folder); } else { - $app->system->_exec('chown root:root '.escapeshellcmd($data['new']['document_root']).'/' . $web_folder); + $app->system->exec_safe('chown root:root ?', $data['new']['document_root'].'/' . $web_folder); } } //* add the Apache user to the client group if this is a vhost and security level is set to high, no matter if this is an insert or update and regardless of set_folder_permissions_on_update - if($data['new']['type'] == 'vhost' && $web_config['security_level'] == 20) $app->system->add_user_to_group($groupname, escapeshellcmd($web_config['user'])); + if($data['new']['type'] == 'vhost' && $web_config['security_level'] == 20) $app->system->add_user_to_group($groupname, $web_config['user']); //* If the security level is set to high if(($this->action == 'insert' && $data['new']['type'] == 'vhost') or ($web_config['set_folder_permissions_on_update'] == 'y' && $data['new']['type'] == 'vhost')) { @@ -978,18 +972,18 @@ class apache2_plugin { if($web_config['add_web_users_to_sshusers_group'] == 'y') { $command = 'usermod'; $command .= ' --groups sshusers'; - $command .= ' '.escapeshellcmd($data['new']['system_user']).' 2>/dev/null'; - $app->system->_exec($command); + $command .= ' ? 2>/dev/null'; + $app->system->exec_safe($command, $data['new']['system_user']); } //* if we have a chrooted Apache environment if($apache_chrooted) { - $app->system->_exec('chroot '.escapeshellcmd($web_config['website_basedir']).' '.$command); + $app->system->exec_safe('chroot ? ?', $web_config['website_basedir'], $command); //* add the apache user to the client group in the chroot environment $tmp_groupfile = $app->system->server_conf['group_datei']; $app->system->server_conf['group_datei'] = $web_config['website_basedir'].'/etc/group'; - $app->system->add_user_to_group($groupname, escapeshellcmd($web_config['user'])); + $app->system->add_user_to_group($groupname, $web_config['user']); $app->system->server_conf['group_datei'] = $tmp_groupfile; unset($tmp_groupfile); } @@ -1092,7 +1086,9 @@ class apache2_plugin { if($data['new']['type'] == 'vhost') { // Change the ownership of the error log to the root user - if(!@is_file('/var/log/ispconfig/httpd/'.$data['new']['domain'].'/error.log')) exec('touch '.escapeshellcmd('/var/log/ispconfig/httpd/'.$data['new']['domain'].'/error.log')); + if(!@is_file('/var/log/ispconfig/httpd/'.$data['new']['domain'].'/error.log')) { + $app->system->exec_safe('touch ?', '/var/log/ispconfig/httpd/'.$data['new']['domain'].'/error.log'); + } $app->system->chown('/var/log/ispconfig/httpd/'.$data['new']['domain'].'/error.log', 'root'); $app->system->chgrp('/var/log/ispconfig/httpd/'.$data['new']['domain'].'/error.log', 'root'); } @@ -1165,7 +1161,7 @@ class apache2_plugin { $vhost_data['php_open_basedir'] = ($data['new']['php_open_basedir'] == '')?$data['new']['document_root']:$data['new']['php_open_basedir']; $vhost_data['ssl_domain'] = $data['new']['ssl_domain']; $vhost_data['has_custom_php_ini'] = $has_custom_php_ini; - $vhost_data['custom_php_ini_dir'] = escapeshellcmd($custom_php_ini_dir); + $vhost_data['custom_php_ini_dir'] = $custom_php_ini_dir; $vhost_data['logging'] = $web_config['logging']; // Custom Apache directives @@ -1455,13 +1451,10 @@ class apache2_plugin { if (!is_dir($fastcgi_starter_path)) { $app->system->mkdirpath($fastcgi_starter_path); - //exec('chown '.$data['new']['system_user'].':'.$data['new']['system_group'].' '.escapeshellcmd($fastcgi_starter_path)); - $app->log('Creating fastcgi starter script directory: '.$fastcgi_starter_path, LOGLEVEL_DEBUG); } - //exec('chown -R '.$data['new']['system_user'].':'.$data['new']['system_group'].' '.escapeshellcmd($fastcgi_starter_path)); $app->system->chown($fastcgi_starter_path, $data['new']['system_user']); $app->system->chgrp($fastcgi_starter_path, $data['new']['system_group']); if($web_config['security_level'] == 10) { @@ -1483,29 +1476,29 @@ class apache2_plugin { } if($has_custom_php_ini) { - $fcgi_tpl->setVar('php_ini_path', escapeshellcmd($custom_php_ini_dir)); + $fcgi_tpl->setVar('php_ini_path', $custom_php_ini_dir); } else { if($default_fastcgi_php){ - $fcgi_tpl->setVar('php_ini_path', escapeshellcmd($fastcgi_config['fastcgi_phpini_path'])); + $fcgi_tpl->setVar('php_ini_path', $fastcgi_config['fastcgi_phpini_path']); } else { - $fcgi_tpl->setVar('php_ini_path', escapeshellcmd($custom_fastcgi_php_ini_dir)); + $fcgi_tpl->setVar('php_ini_path', $custom_fastcgi_php_ini_dir); } } - $fcgi_tpl->setVar('document_root', escapeshellcmd($data['new']['document_root'])); - $fcgi_tpl->setVar('php_fcgi_children', escapeshellcmd($fastcgi_config['fastcgi_children'])); - $fcgi_tpl->setVar('php_fcgi_max_requests', escapeshellcmd($fastcgi_config['fastcgi_max_requests'])); + $fcgi_tpl->setVar('document_root', $data['new']['document_root']); + $fcgi_tpl->setVar('php_fcgi_children', $fastcgi_config['fastcgi_children']); + $fcgi_tpl->setVar('php_fcgi_max_requests', $fastcgi_config['fastcgi_max_requests']); if($default_fastcgi_php){ - $fcgi_tpl->setVar('php_fcgi_bin', escapeshellcmd($fastcgi_config['fastcgi_bin'])); + $fcgi_tpl->setVar('php_fcgi_bin', $fastcgi_config['fastcgi_bin']); } else { - $fcgi_tpl->setVar('php_fcgi_bin', escapeshellcmd($custom_fastcgi_php_executable)); + $fcgi_tpl->setVar('php_fcgi_bin', $custom_fastcgi_php_executable); } $fcgi_tpl->setVar('security_level', intval($web_config['security_level'])); - $fcgi_tpl->setVar('domain', escapeshellcmd($data['new']['domain'])); + $fcgi_tpl->setVar('domain', $data['new']['domain']); $php_open_basedir = ($data['new']['php_open_basedir'] == '')?$data['new']['document_root']:$data['new']['php_open_basedir']; - $fcgi_tpl->setVar('open_basedir', escapeshellcmd($php_open_basedir)); + $fcgi_tpl->setVar('open_basedir', $php_open_basedir); - $fcgi_starter_script = escapeshellcmd($fastcgi_starter_path.$fastcgi_config['fastcgi_starter_script'].(($data['new']['type'] == 'vhostsubdomain' || $data['new']['type'] == 'vhostalias') ? '_web' . $data['new']['domain_id'] : '')); + $fcgi_starter_script = $fastcgi_starter_path.$fastcgi_config['fastcgi_starter_script'].(($data['new']['type'] == 'vhostsubdomain' || $data['new']['type'] == 'vhostalias') ? '_web' . $data['new']['domain_id'] : ''); $app->system->file_put_contents($fcgi_starter_script, $fcgi_tpl->grab()); unset($fcgi_tpl); @@ -1565,14 +1558,13 @@ class apache2_plugin { } if($default_php_fpm){ - $pool_dir = escapeshellcmd($web_config['php_fpm_pool_dir']); - } else { + $pool_dir = $web_config['php_fpm_pool_dir']; $pool_dir = $custom_php_fpm_pool_dir; } $pool_dir = trim($pool_dir); if(substr($pool_dir, -1) != '/') $pool_dir .= '/'; $pool_name = 'web'.$data['new']['domain_id']; - $socket_dir = escapeshellcmd($web_config['php_fpm_socket_dir']); + $socket_dir = $web_config['php_fpm_socket_dir']; if(substr($socket_dir, -1) != '/') $socket_dir .= '/'; if($data['new']['php_fpm_use_socket'] == 'y'){ @@ -1625,8 +1617,8 @@ class apache2_plugin { // This works because PHP "rewrites" a symlink to the physical path $php_open_basedir = ($data['new']['php_open_basedir'] == '')?$data['new']['document_root']:$data['new']['php_open_basedir']; - $cgi_tpl->setVar('open_basedir', escapeshellcmd($php_open_basedir)); - $cgi_tpl->setVar('document_root', escapeshellcmd($data['new']['document_root'])); + $cgi_tpl->setVar('open_basedir', $php_open_basedir); + $cgi_tpl->setVar('document_root', $data['new']['document_root']); // This will NOT work! //$cgi_tpl->setVar('open_basedir', '/var/www/' . $data['new']['domain']); @@ -1635,12 +1627,12 @@ class apache2_plugin { $cgi_tpl->setVar('has_custom_php_ini', $has_custom_php_ini); if($has_custom_php_ini) { - $cgi_tpl->setVar('php_ini_path', escapeshellcmd($custom_php_ini_dir)); + $cgi_tpl->setVar('php_ini_path', $custom_php_ini_dir); } else { - $cgi_tpl->setVar('php_ini_path', escapeshellcmd($fastcgi_config['fastcgi_phpini_path'])); + $cgi_tpl->setVar('php_ini_path', $fastcgi_config['fastcgi_phpini_path']); } - $cgi_starter_script = escapeshellcmd($cgi_starter_path.$cgi_config['cgi_starter_script'].(($data['new']['type'] == 'vhostsubdomain' || $data['new']['type'] == 'vhostalias') ? '_web' . $data['new']['domain_id'] : '')); + $cgi_starter_script = $cgi_starter_path.$cgi_config['cgi_starter_script'].(($data['new']['type'] == 'vhostsubdomain' || $data['new']['type'] == 'vhostalias') ? '_web' . $data['new']['domain_id'] : ''); $app->system->file_put_contents($cgi_starter_script, $cgi_tpl->grab()); unset($cgi_tpl); @@ -1660,7 +1652,7 @@ class apache2_plugin { } - $vhost_file = escapeshellcmd($web_config['vhost_conf_dir'].'/'.$data['new']['domain'].'.vhost'); + $vhost_file = $web_config['vhost_conf_dir'].'/'.$data['new']['domain'].'.vhost'; //* Make a backup copy of vhost file if(file_exists($vhost_file)) $app->system->copy($vhost_file, $vhost_file.'~'); @@ -1753,17 +1745,17 @@ class apache2_plugin { //* Set the symlink to enable the vhost //* First we check if there is a old type of symlink and remove it - $vhost_symlink = escapeshellcmd($web_config['vhost_conf_enabled_dir'].'/'.$data['new']['domain'].'.vhost'); + $vhost_symlink = $web_config['vhost_conf_enabled_dir'].'/'.$data['new']['domain'].'.vhost'; if(is_link($vhost_symlink)) $app->system->unlink($vhost_symlink); //* Remove old or changed symlinks if($data['new']['subdomain'] != $data['old']['subdomain'] or $data['new']['active'] == 'n') { - $vhost_symlink = escapeshellcmd($web_config['vhost_conf_enabled_dir'].'/900-'.$data['new']['domain'].'.vhost'); + $vhost_symlink = $web_config['vhost_conf_enabled_dir'].'/900-'.$data['new']['domain'].'.vhost'; if(is_link($vhost_symlink)) { $app->system->unlink($vhost_symlink); $app->log('Removing symlink: '.$vhost_symlink.'->'.$vhost_file, LOGLEVEL_DEBUG); } - $vhost_symlink = escapeshellcmd($web_config['vhost_conf_enabled_dir'].'/100-'.$data['new']['domain'].'.vhost'); + $vhost_symlink = $web_config['vhost_conf_enabled_dir'].'/100-'.$data['new']['domain'].'.vhost'; if(is_link($vhost_symlink)) { $app->system->unlink($vhost_symlink); $app->log('Removing symlink: '.$vhost_symlink.'->'.$vhost_file, LOGLEVEL_DEBUG); @@ -1772,9 +1764,9 @@ class apache2_plugin { //* New symlink if($data['new']['subdomain'] == '*') { - $vhost_symlink = escapeshellcmd($web_config['vhost_conf_enabled_dir'].'/900-'.$data['new']['domain'].'.vhost'); + $vhost_symlink = $web_config['vhost_conf_enabled_dir'].'/900-'.$data['new']['domain'].'.vhost'; } else { - $vhost_symlink = escapeshellcmd($web_config['vhost_conf_enabled_dir'].'/100-'.$data['new']['domain'].'.vhost'); + $vhost_symlink = $web_config['vhost_conf_enabled_dir'].'/100-'.$data['new']['domain'].'.vhost'; } if($data['new']['active'] == 'y' && !is_link($vhost_symlink)) { symlink($vhost_file, $vhost_symlink); @@ -1783,22 +1775,22 @@ class apache2_plugin { // remove old symlink and vhost file, if domain name of the site has changed if($this->action == 'update' && $data['old']['domain'] != '' && $data['new']['domain'] != $data['old']['domain']) { - $vhost_symlink = escapeshellcmd($web_config['vhost_conf_enabled_dir'].'/900-'.$data['old']['domain'].'.vhost'); + $vhost_symlink = $web_config['vhost_conf_enabled_dir'].'/900-'.$data['old']['domain'].'.vhost'; if(is_link($vhost_symlink)) { $app->system->unlink($vhost_symlink); $app->log('Removing symlink: '.$vhost_symlink.'->'.$vhost_file, LOGLEVEL_DEBUG); } - $vhost_symlink = escapeshellcmd($web_config['vhost_conf_enabled_dir'].'/100-'.$data['old']['domain'].'.vhost'); + $vhost_symlink = $web_config['vhost_conf_enabled_dir'].'/100-'.$data['old']['domain'].'.vhost'; if(is_link($vhost_symlink)) { $app->system->unlink($vhost_symlink); $app->log('Removing symlink: '.$vhost_symlink.'->'.$vhost_file, LOGLEVEL_DEBUG); } - $vhost_symlink = escapeshellcmd($web_config['vhost_conf_enabled_dir'].'/'.$data['old']['domain'].'.vhost'); + $vhost_symlink = $web_config['vhost_conf_enabled_dir'].'/'.$data['old']['domain'].'.vhost'; if(is_link($vhost_symlink)) { $app->system->unlink($vhost_symlink); $app->log('Removing symlink: '.$vhost_symlink.'->'.$vhost_file, LOGLEVEL_DEBUG); } - $vhost_file = escapeshellcmd($web_config['vhost_conf_dir'].'/'.$data['old']['domain'].'.vhost'); + $vhost_file = $web_config['vhost_conf_dir'].'/'.$data['old']['domain'].'.vhost'; $app->system->unlink($vhost_file); $app->log('Removing file: '.$vhost_file, LOGLEVEL_DEBUG); } @@ -2032,14 +2024,10 @@ class apache2_plugin { if($data['old']['type'] == 'vhost' || $data['old']['type'] == 'vhostsubdomain' || $data['old']['type'] == 'vhostalias'){ if(is_array($log_folders) && !empty($log_folders)){ foreach($log_folders as $log_folder){ - //if($app->system->is_mounted($data['old']['document_root'].'/'.$log_folder)) exec('umount '.escapeshellarg($data['old']['document_root'].'/'.$log_folder)); - //exec('fuser -km '.escapeshellarg($data['old']['document_root'].'/'.$log_folder).' 2>/dev/null'); - exec('umount '.escapeshellarg($data['old']['document_root'].'/'.$log_folder).' 2>/dev/null'); + $app->system->exec_safe('umount ? 2>/dev/null', $data['old']['document_root'].'/'.$log_folder); } } else { - //if($app->system->is_mounted($data['old']['document_root'].'/'.$log_folder)) exec('umount '.escapeshellarg($data['old']['document_root'].'/'.$log_folder)); - //exec('fuser -km '.escapeshellarg($data['old']['document_root'].'/'.$log_folder).' 2>/dev/null'); - exec('umount '.escapeshellarg($data['old']['document_root'].'/'.$log_folder).' 2>/dev/null'); + $app->system->exec_safe('umount ? 2>/dev/null', $data['old']['document_root'].'/'.$log_folder); } // remove letsencrypt if it exists (renew will always fail otherwise) @@ -2079,19 +2067,19 @@ class apache2_plugin { } else { //* This is a website // Deleting the vhost file, symlink and the data directory - $vhost_file = escapeshellcmd($web_config['vhost_conf_dir'].'/'.$data['old']['domain'].'.vhost'); + $vhost_file = $web_config['vhost_conf_dir'].'/'.$data['old']['domain'].'.vhost'; - $vhost_symlink = escapeshellcmd($web_config['vhost_conf_enabled_dir'].'/'.$data['old']['domain'].'.vhost'); + $vhost_symlink = $web_config['vhost_conf_enabled_dir'].'/'.$data['old']['domain'].'.vhost'; if(is_link($vhost_symlink)){ $app->system->unlink($vhost_symlink); $app->log('Removing symlink: '.$vhost_symlink.'->'.$vhost_file, LOGLEVEL_DEBUG); } - $vhost_symlink = escapeshellcmd($web_config['vhost_conf_enabled_dir'].'/900-'.$data['old']['domain'].'.vhost'); + $vhost_symlink = $web_config['vhost_conf_enabled_dir'].'/900-'.$data['old']['domain'].'.vhost'; if(is_link($vhost_symlink)){ $app->system->unlink($vhost_symlink); $app->log('Removing symlink: '.$vhost_symlink.'->'.$vhost_file, LOGLEVEL_DEBUG); } - $vhost_symlink = escapeshellcmd($web_config['vhost_conf_enabled_dir'].'/100-'.$data['old']['domain'].'.vhost'); + $vhost_symlink = $web_config['vhost_conf_enabled_dir'].'/100-'.$data['old']['domain'].'.vhost'; if(is_link($vhost_symlink)){ $app->system->unlink($vhost_symlink); $app->log('Removing symlink: '.$vhost_symlink.'->'.$vhost_file, LOGLEVEL_DEBUG); @@ -2101,11 +2089,11 @@ class apache2_plugin { $app->log('Removing vhost file: '.$vhost_file, LOGLEVEL_DEBUG); if($data['old']['type'] == 'vhost' || $data['old']['type'] == 'vhostsubdomain' || $data['old']['type'] == 'vhostalias') { - $docroot = escapeshellcmd($data['old']['document_root']); + $docroot = $data['old']['document_root']; if($docroot != '' && !stristr($docroot, '..')) { if($data['old']['type'] == 'vhost') { // this is a vhost - we delete everything in here. - exec('rm -rf '.$docroot); + $app->system->exec_safe('rm -rf ?', $docroot); } elseif(!stristr($data['old']['web_folder'], '..')) { // this is a vhost subdomain // IMPORTANT: do some folder checks before we delete this! @@ -2155,7 +2143,7 @@ class apache2_plugin { unset($used_paths); } - if($do_delete === true && $delete_folder !== '') exec('rm -rf '.$docroot.'/'.$delete_folder); + if($do_delete === true && $delete_folder !== '') $app->system->exec_safe('rm -rf ?', $docroot.'/'.$delete_folder); unset($delete_folder); unset($path_elements); @@ -2167,12 +2155,12 @@ class apache2_plugin { $fastcgi_starter_path = str_replace('[system_user]', $data['old']['system_user'], $fastcgi_config['fastcgi_starter_path']); if($data['old']['type'] == 'vhost') { if (is_dir($fastcgi_starter_path)) { - exec('rm -rf '.$fastcgi_starter_path); + $app->system->exec_safe('rm -rf ?', $fastcgi_starter_path); } } else { $fcgi_starter_script = $fastcgi_starter_path.$fastcgi_config['fastcgi_starter_script'].'_web'.$data['old']['domain_id']; if (file_exists($fcgi_starter_script)) { - exec('rm -f '.$fcgi_starter_script); + $app->system->exec_safe('rm -f ?', $fcgi_starter_script); } } } @@ -2192,12 +2180,12 @@ class apache2_plugin { $cgi_starter_path = str_replace('[system_user]', $data['old']['system_user'], $web_config['cgi_starter_path']); if($data['old']['type'] == 'vhost') { if (is_dir($cgi_starter_path)) { - exec('rm -rf '.$cgi_starter_path); + $app->system->exec_safe('rm -rf ?', $cgi_starter_path); } } else { $cgi_starter_script = $cgi_starter_path.'php-cgi-starter_web'.$data['old']['domain_id']; if (file_exists($cgi_starter_script)) { - exec('rm -f '.$cgi_starter_script); + $app->system->exec_safe('rm -f ?', $cgi_starter_script); } } } @@ -2226,16 +2214,15 @@ class apache2_plugin { } // Delete the log file directory - $vhost_logfile_dir = escapeshellcmd('/var/log/ispconfig/httpd/'.$data['old']['domain']); - if($data['old']['domain'] != '' && !stristr($vhost_logfile_dir, '..')) exec('rm -rf '.$vhost_logfile_dir); + $vhost_logfile_dir = '/var/log/ispconfig/httpd/'.$data['old']['domain']; + if($data['old']['domain'] != '' && !stristr($vhost_logfile_dir, '..')) $app->system->exec_safe('rm -rf ?', $vhost_logfile_dir); $app->log('Removing website logfile directory: '.$vhost_logfile_dir, LOGLEVEL_DEBUG); if($data['old']['type'] == 'vhost') { //delete the web user - $command = 'killall -u '.escapeshellcmd($data['old']['system_user']).' ; userdel'; - $command .= ' '.escapeshellcmd($data['old']['system_user']); - exec($command); - if($apache_chrooted) $app->system->_exec('chroot '.escapeshellcmd($web_config['website_basedir']).' '.$command); + $command = 'killall -u ? ; userdel ?'; + $app->system->exec_safe($command, $data['old']['system_user'], $data['old']['system_user']); + if($apache_chrooted) $app->system->exec_safe('chroot ? ?', $web_config['website_basedir'], $command); } @@ -2267,7 +2254,7 @@ class apache2_plugin { if($mount_backup){ $web_backup_dir = $backup_dir.'/web'.$data_old['domain_id']; //** do not use rm -rf $web_backup_dir because database(s) may exits - exec(escapeshellcmd('rm -f '.$web_backup_dir.'/web'.$data_old['domain_id'].'_').'*'); + $app->system->exec_safe('rm -f ?*', $web_backup_dir.'/web'.$data_old['domain_id'].'_'); //* cleanup database $sql = "DELETE FROM web_backup WHERE server_id = ? AND parent_domain_id = ? AND filename LIKE ?"; $app->db->query($sql, $conf['server_id'], $data_old['domain_id'], "web".$data_old['domain_id']."_%"); @@ -2322,7 +2309,7 @@ class apache2_plugin { $tpl->setLoop('ip_adresses', $records_out); } - $vhost_file = escapeshellcmd($web_config['vhost_conf_dir'].'/ispconfig.conf'); + $vhost_file = $web_config['vhost_conf_dir'].'/ispconfig.conf'; $app->system->file_put_contents($vhost_file, $tpl->grab()); $app->log('Writing the conf file: '.$vhost_file, LOGLEVEL_DEBUG); unset($tpl); @@ -2355,7 +2342,7 @@ class apache2_plugin { //* Get the folder path. if(substr($folder['path'], 0, 1) == '/') $folder['path'] = substr($folder['path'], 1); if(substr($folder['path'], -1) == '/') $folder['path'] = substr($folder['path'], 0, -1); - $folder_path = escapeshellcmd($website['document_root'].'/' . $web_folder . '/'.$folder['path']); + $folder_path = $website['document_root'].'/' . $web_folder . '/'.$folder['path']; if(substr($folder_path, -1) != '/') $folder_path .= '/'; //* Check if the resulting path is inside the docroot @@ -2501,7 +2488,7 @@ class apache2_plugin { if(substr($data['new']['path'], 0, 1) == '/') $data['new']['path'] = substr($data['new']['path'], 1); if(substr($data['new']['path'], -1) == '/') $data['new']['path'] = substr($data['new']['path'], 0, -1); - $new_folder_path = escapeshellcmd($website['document_root'].'/' . $web_folder . '/'.$data['new']['path']); + $new_folder_path = $website['document_root'].'/' . $web_folder . '/'.$data['new']['path']; if(substr($new_folder_path, -1) != '/') $new_folder_path .= '/'; //* Check if the resulting path is inside the docroot @@ -2681,8 +2668,6 @@ class apache2_plugin { /* * The webdav - Root needs the group/user as owner and the apache as read and write */ - //$app->system->_exec('chown ' . $user . ':' . $group . ' ' . escapeshellcmd($documentRoot . '/webdav/')); - //$app->system->_exec('chmod 770 ' . escapeshellcmd($documentRoot . '/webdav/')); $app->system->chown($documentRoot . '/webdav', $user); $app->system->chgrp($documentRoot . '/webdav', $group); $app->system->chmod($documentRoot . '/webdav', 0770); @@ -2691,8 +2676,6 @@ class apache2_plugin { * The webdav folder (not the webdav-root!) needs the same (not in ONE step, because the * pwd-files are owned by root) */ - //$app->system->_exec('chown ' . $user . ':' . $group . ' ' . escapeshellcmd($webdav_user_dir.' -R')); - //$app->system->_exec('chmod 770 ' . escapeshellcmd($webdav_user_dir.' -R')); $app->system->chown($webdav_user_dir, $user); $app->system->chgrp($webdav_user_dir, $group); $app->system->chmod($webdav_user_dir, 0770); @@ -2712,7 +2695,7 @@ class apache2_plugin { /* * Next step, patch the vhost - file */ - $vhost_file = escapeshellcmd($web_config['vhost_conf_dir'] . '/' . $domain . '.vhost'); + $vhost_file = $web_config['vhost_conf_dir'] . '/' . $domain . '.vhost'; $this->_patchVhostWebdav($vhost_file, $documentRoot . '/webdav'); /* @@ -2744,7 +2727,7 @@ class apache2_plugin { /* * Next step, patch the vhost - file */ - $vhost_file = escapeshellcmd($web_config['vhost_conf_dir'] . '/' . $domain . '.vhost'); + $vhost_file = $web_config['vhost_conf_dir'] . '/' . $domain . '.vhost'; $this->_patchVhostWebdav($vhost_file, $documentRoot . '/webdav'); /* @@ -3004,9 +2987,9 @@ class apache2_plugin { $content = str_replace('{SYSTEM_USER}', $data['new']['system_user'], $content); file_put_contents('/etc/init.d/hhvm_' . $data['new']['system_user'], $content); - exec('chmod +x /etc/init.d/hhvm_' . $data['new']['system_user'] . ' >/dev/null 2>&1'); - exec('/usr/sbin/update-rc.d hhvm_' . $data['new']['system_user'] . ' defaults >/dev/null 2>&1'); - exec('/etc/init.d/hhvm_' . $data['new']['system_user'] . ' restart >/dev/null 2>&1'); + $app->system->exec_safe('chmod +x ? >/dev/null 2>&1', '/etc/init.d/hhvm_' . $data['new']['system_user']); + $app->system->exec_safe('/usr/sbin/update-rc.d ? defaults >/dev/null 2>&1', 'hhvm_' . $data['new']['system_user']); + $app->system->exec_safe('? restart >/dev/null 2>&1', '/etc/init.d/hhvm_' . $data['new']['system_user']); if(is_dir('/etc/monit/conf.d')){ $monit_content = str_replace('{SYSTEM_USER}', $data['new']['system_user'], $monit_content); @@ -3017,8 +3000,8 @@ class apache2_plugin { } elseif($data['new']['php'] != 'hhvm' && $data['old']['php'] == 'hhvm') { if($data['old']['system_user'] != ''){ - exec('/etc/init.d/hhvm_' . $data['old']['system_user'] . ' stop >/dev/null 2>&1'); - exec('/usr/sbin/update-rc.d hhvm_' . $data['old']['system_user'] . ' remove >/dev/null 2>&1'); + $app->system->exec_safe('? stop >/dev/null 2>&1', '/etc/init.d/hhvm_' . $data['old']['system_user']); + $app->system->exec_safe('/usr/sbin/update-rc.d ? remove >/dev/null 2>&1', 'hhvm_' . $data['old']['system_user']); unlink('/etc/init.d/hhvm_' . $data['old']['system_user']); if(is_file('/etc/hhvm/'.$data['old']['system_user'].'.ini')) unlink('/etc/hhvm/'.$data['old']['system_user'].'.ini'); } @@ -3117,7 +3100,7 @@ class apache2_plugin { $tpl->setVar('document_root', $data['new']['document_root']); $tpl->setVar('security_level', $web_config['security_level']); $tpl->setVar('domain', $data['new']['domain']); - $php_open_basedir = ($data['new']['php_open_basedir'] == '')?escapeshellcmd($data['new']['document_root']):escapeshellcmd($data['new']['php_open_basedir']); + $php_open_basedir = ($data['new']['php_open_basedir'] == '')?$data['new']['document_root']:$data['new']['php_open_basedir']; $tpl->setVar('php_open_basedir', $php_open_basedir); if($php_open_basedir != ''){ $tpl->setVar('enable_php_open_basedir', ''); @@ -3204,7 +3187,7 @@ class apache2_plugin { unset($tpl); // delete pool in all other PHP versions - $default_pool_dir = trim(escapeshellcmd($web_config['php_fpm_pool_dir'])); + $default_pool_dir = trim($web_config['php_fpm_pool_dir']); if(substr($default_pool_dir, -1) != '/') $default_pool_dir .= '/'; if($default_pool_dir != $pool_dir){ if ( @is_file($default_pool_dir.$pool_name.'.conf') ) { @@ -3258,7 +3241,7 @@ class apache2_plugin { } if($default_php_fpm){ - $pool_dir = escapeshellcmd($web_config['php_fpm_pool_dir']); + $pool_dir = $web_config['php_fpm_pool_dir']; } else { $pool_dir = $custom_php_fpm_pool_dir; } @@ -3275,7 +3258,7 @@ class apache2_plugin { } // delete pool in all other PHP versions - $default_pool_dir = trim(escapeshellcmd($web_config['php_fpm_pool_dir'])); + $default_pool_dir = trim($web_config['php_fpm_pool_dir']); if(substr($default_pool_dir, -1) != '/') $default_pool_dir .= '/'; if($default_pool_dir != $pool_dir){ if ( @is_file($default_pool_dir.$pool_name.'.conf') ) { @@ -3335,7 +3318,7 @@ class apache2_plugin { } if($app->system->is_group('client'.$client_id)){ - $app->system->_exec('groupdel client'.$client_id); + $app->system->exec_safe('groupdel ?', 'client'.$client_id); $app->log('Removed group client'.$client_id, LOGLEVEL_DEBUG); } } diff --git a/server/plugins-available/apps_vhost_plugin.inc.php b/server/plugins-available/apps_vhost_plugin.inc.php index 41e3cdd82c..ea2359d602 100644 --- a/server/plugins-available/apps_vhost_plugin.inc.php +++ b/server/plugins-available/apps_vhost_plugin.inc.php @@ -121,7 +121,7 @@ class apps_vhost_plugin { $app->system->file_put_contents("$vhost_conf_dir/apps.vhost", $content); // enabled / disable apps-vhost - $vhost_symlink = escapeshellcmd($web_config['vhost_conf_enabled_dir'].'/000-apps.vhost'); + $vhost_symlink = $web_config['vhost_conf_enabled_dir'].'/000-apps.vhost'; if(is_link($vhost_symlink) && $web_config['apps_vhost_enabled'] == 'n') { $app->system->unlink($vhost_symlink); } @@ -207,7 +207,7 @@ class apps_vhost_plugin { file_put_contents("$vhost_conf_dir/apps.vhost", $content); // enabled / disable apps-vhost - $vhost_symlink = escapeshellcmd($web_config['vhost_conf_enabled_dir'].'/000-apps.vhost'); + $vhost_symlink = $web_config['vhost_conf_enabled_dir'].'/000-apps.vhost'; if(is_link($vhost_symlink) && $web_config['apps_vhost_enabled'] == 'n') { $app->system->unlink($vhost_symlink); } diff --git a/server/plugins-available/backup_plugin.inc.php b/server/plugins-available/backup_plugin.inc.php index 6ce8c98939..3308289d41 100644 --- a/server/plugins-available/backup_plugin.inc.php +++ b/server/plugins-available/backup_plugin.inc.php @@ -104,13 +104,13 @@ class backup_plugin { // extract tar.gz archive $dump_directory = str_replace(".tar.gz", "", $backup['filename']); $extracted = "/usr/local/ispconfig/server/temp"; - exec("tar -xzvf ".escapeshellarg($backup_dir.'/'.$backup['filename'])." --directory=".escapeshellarg($extracted)); + $app->system->exec_safe("tar -xzvf ? --directory=?", $backup_dir.'/'.$backup['filename'], $extracted); $restore_directory = $extracted."/".$dump_directory."/".$db_name; // mongorestore -h 127.0.0.1 -u root -p 123456 --authenticationDatabase admin -d c1debug --drop ./toRestore - $command = "mongorestore -h 127.0.0.1 --port 27017 -u root -p 123456 --authenticationDatabase admin -d ".$db_name." --drop ".escapeshellarg($restore_directory); - exec($command); - exec("rm -rf ".escapeshellarg($extracted."/".$dump_directory)); + $command = "mongorestore -h 127.0.0.1 --port 27017 -u root -p 123456 --authenticationDatabase admin -d ? --drop ?"; + $app->system->exec_safe($command, $db_name, $restore_directory); + $app->system->exec_safe("rm -rf ?", $extracted."/".$dump_directory); } unset($clientdb_host); @@ -129,8 +129,8 @@ class backup_plugin { //$db_name = $parts[1]; preg_match('@^db_(.+)_\d{4}-\d{2}-\d{2}_\d{2}-\d{2}\.sql\.gz$@', $backup['filename'], $matches); $db_name = $matches[1]; - $command = "gunzip --stdout ".escapeshellarg($backup_dir.'/'.$backup['filename'])." | mysql -h ".escapeshellarg($clientdb_host)." -u ".escapeshellarg($clientdb_user)." -p".escapeshellarg($clientdb_password)." ".escapeshellarg($db_name); - exec($command); + $command = "gunzip --stdout ? | mysql -h ? -u ? -p? ?"; + $app->system->exec_safe($command, $backup_dir.'/'.$backup['filename'], $clientdb_host, $clientdb_user, $clientdb_password, $db_name); } unset($clientdb_host); unset($clientdb_user); @@ -147,8 +147,8 @@ class backup_plugin { copy($backup_dir.'/'.$backup['filename'], $web['document_root'].'/backup/'.$backup['filename']); chgrp($web['document_root'].'/backup/'.$backup['filename'], $web['system_group']); //chown($web['document_root'].'/backup/'.$backup['filename'],$web['system_user']); - $command = 'sudo -u '.escapeshellarg($web['system_user']).' unzip -qq -o '.escapeshellarg($web['document_root'].'/backup/'.$backup['filename']).' -d '.escapeshellarg($web['document_root']).' 2> /dev/null'; - exec($command); + $command = 'sudo -u ? unzip -qq -o ? -d ? 2> /dev/null'; + $app->system->exec_safe($command, $web['system_user'], $web['document_root'].'/backup/'.$backup['filename'], $web['document_root']); unlink($web['document_root'].'/backup/'.$backup['filename']); if(file_exists($web['document_root'].'/backup/'.$backup['filename'].'.bak')) rename($web['document_root'].'/backup/'.$backup['filename'].'.bak', $web['document_root'].'/backup/'.$backup['filename']); $app->log('Restored Web backup '.$backup_dir.'/'.$backup['filename'], LOGLEVEL_DEBUG); @@ -156,8 +156,8 @@ class backup_plugin { } if($backup['backup_mode'] == 'rootgz') { if(file_exists($backup_dir.'/'.$backup['filename']) && $web['document_root'] != '' && $web['document_root'] != '/' && !stristr($backup_dir.'/'.$backup['filename'], '..') && !stristr($backup_dir.'/'.$backup['filename'], 'etc')) { - $command = 'tar xzf '.escapeshellarg($backup_dir.'/'.$backup['filename']).' --directory '.escapeshellarg($web['document_root']); - exec($command); + $command = 'tar xzf ? --directory ?'; + $app->system->exec_safe($command, $backup_dir.'/'.$backup['filename'], $web['document_root']); $app->log('Restored Web backup '.$backup_dir.'/'.$backup['filename'], LOGLEVEL_DEBUG); } } @@ -237,22 +237,24 @@ class backup_plugin { if($mail_backup['backup_mode'] == 'userzip') { copy($mail_backup_file, $record['maildir'].'/'.$mail_backup['filename']); chgrp($record['maildir'].'/'.$mail_backup['filename'], $mail_config['mailuser_group']); - $command = 'sudo -u '.$mail_config['mailuser_name'].' unzip -qq -o '.escapeshellarg($record['maildir'].'/'.$mail_backup['filename']).' -d '.escapeshellarg($record['maildir']).' 2> /dev/null'; - exec($command,$tmp_output, $retval); + $command = 'sudo -u ? unzip -qq -o ? -d ? 2> /dev/null'; + $app->system->exec_safe($command, $mail_config['mailuser_name'], $record['maildir'].'/'.$mail_backup['filename'], $record['maildir']); + $retval = $app->system->last_exec_retcode(); unlink($record['maildir'].'/'.$mail_backup['filename']); - } - if($mail_backup['backup_mode'] == 'rootgz') { - $command='tar xfz '.escapeshellarg($mail_backup_file).' --directory '.escapeshellarg($record['maildir']); - exec($command,$tmp_output, $retval); + } elseif($mail_backup['backup_mode'] == 'rootgz') { + $command='tar xfz ? --directory ?'; + $app->system->exec_safe($command, $mail_backup_file, $record['maildir']); + $retval = $app->system->last_exec_retcode(); } if($retval == 0) { // Now import backup-mailbox into special backup-folder $backupname = "backup-".date("Y-m-d", $mail_backup['tstamp']); - exec("doveadm mailbox create -u \"".$record["email"]."\" $backupname"); - exec("doveadm import -u \"".$record["email"]."\" mdbox:".$record['maildir']."/backup $backupname all", $tmp_output, $retval); - exec("for f in `doveadm mailbox list -u \"".$record["email"]."\" $backupname*`; do doveadm mailbox subscribe -u \"".$record["email"]."\" \$f; done", $tmp_output, $retval); - exec('rm -rf '.$record['maildir'].'/backup'); + $app->system->exec_safe("doveadm mailbox create -u ? ?", $record["email"], $backupname); + $app->system->exec_safe("doveadm import -u ? mdbox:? ? all", $record["email"], $record['maildir']."/backup", $backupname); + $app->system->exec_safe("for f in `doveadm mailbox list -u ? ?*`; do doveadm mailbox subscribe -u ? \$f; done", $record["email"], $backupname, $record["email"]); + $retval = $app->system->last_exec_retcode(); + $app->system->exec_safe('rm -rf ?', $record['maildir'].'/backup'); } if($retval == 0){ @@ -260,7 +262,7 @@ class backup_plugin { } else { // cleanup if (file_exists($record['maildir'].'/'.$mail_backup['filename'])) unlink($record['maildir'].'/'.$mail_backup['filename']); - if (file_exists($record['maildir']."/backup")) exec('rm -rf '.$record['maildir']."/backup"); + if (file_exists($record['maildir']."/backup")) $app->system->exec_safe('rm -rf ?', $record['maildir']."/backup"); $app->log('Unable to restore Mail backup '.$mail_backup_file.' '.$tmp_output,LOGLEVEL_ERROR); } @@ -269,8 +271,10 @@ class backup_plugin { if($mail_backup['backup_mode'] == 'userzip') { copy($mail_backup_file, $domain_dir.'/'.$mail_backup['filename']); chgrp($domain_dir.'/'.$mail_backup['filename'], $mail_config['mailuser_group']); - $command = 'sudo -u '.$mail_config['mailuser_name'].' unzip -qq -o '.escapeshellarg($domain_dir.'/'.$mail_backup['filename']).' -d '.escapeshellarg($domain_dir).' 2> /dev/null'; - exec($command,$tmp_output, $retval); + $command = 'sudo -u ? unzip -qq -o ? -d ? 2> /dev/null'; + $app->system->exec_safe($command, $mail_config['mailuser_name'], $domain_dir.'/'.$mail_backup['filename'], $domain_dir); + $retval = $app->system->last_exec_retcode(); + $tmp_output = $app->system->last_exec_out(); unlink($domain_dir.'/'.$mail_backup['filename']); if($retval == 0){ $app->log('Restored Mail backup '.$mail_backup_file,LOGLEVEL_DEBUG); @@ -279,8 +283,10 @@ class backup_plugin { } } if($mail_backup['backup_mode'] == 'rootgz') { - $command='tar xfz '.escapeshellarg($mail_backup_file).' --directory '.escapeshellarg($domain_dir); - exec($command,$tmp_output, $retval); + $command='tar xfz ? --directory ?'; + $app->system->exec_safe($command, $mail_backup_file, $domain_dir); + $retval = $app->system->last_exec_retcode(); + $tmp_output = $app->system->last_exec_out(); if($retval == 0){ $app->log('Restored Mail backup '.$mail_backup_file,LOGLEVEL_DEBUG); } else { diff --git a/server/plugins-available/bind_plugin.inc.php b/server/plugins-available/bind_plugin.inc.php index edf7b93d9f..29d841ef8a 100644 --- a/server/plugins-available/bind_plugin.inc.php +++ b/server/plugins-available/bind_plugin.inc.php @@ -114,9 +114,7 @@ class bind_plugin { } //Do some magic... - exec('cd '.escapeshellcmd($dns_config['bind_zonefiles_dir']).';'. - 'dnssec-keygen -a NSEC3RSASHA1 -b 2048 -n ZONE '.escapeshellcmd($domain).';'. - 'dnssec-keygen -f KSK -a NSEC3RSASHA1 -b 4096 -n ZONE '.escapeshellcmd($domain)); + $app->system->exec_safe('cd ?; dnssec-keygen -a NSEC3RSASHA1 -b 2048 -n ZONE ?; dnssec-keygen -f KSK -a NSEC3RSASHA1 -b 4096 -n ZONE ?', $dns_config['bind_zonefiles_dir'], $domain, $domain); $this->soa_dnssec_sign($data); //Now sign the zone for the first time $data['new']['dnssec_initialized']='Y'; @@ -148,8 +146,7 @@ class bind_plugin { 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']).';'. - '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)); + $app->system->exec_safe('cd ?; dnssec-signzone -A -e +1382400 -3 $(head -c 1000 /dev/random | sha1sum | cut -b 1-16) -N increment -o ? -t ?', $dns_config['bind_zonefiles_dir'], $domain, $filespre.$domain); //Write Data back ino DB $dnssecdata = "DS-Records:\n".file_get_contents($dns_config['bind_zonefiles_dir'].'/dsset-'.$domain.'.'); @@ -187,8 +184,8 @@ class bind_plugin { 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=?', 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); + $app->system->exec_safe('cd ?; named-checkzone ? ? | egrep -ho \'[0-9]{10}\'', $dns_config['bind_zonefiles_dir'], $domain, $dns_config['bind_zonefiles_dir'].'/'.$filespre.$domain); + $retState = $app->system->last_exec_retcode(); if ($retState != 0) { $app->log('DNSSEC Error: Error in Zonefile for '.$domain, LOGLEVEL_ERR); return false; @@ -283,20 +280,22 @@ class bind_plugin { //TODO : change this when distribution information has been integrated into server record if (file_exists('/etc/gentoo-release')) { - $filename = escapeshellcmd($dns_config['bind_zonefiles_dir'].'/pri/'.str_replace("/", "_", substr($zone['origin'], 0, -1))); + $filename = $dns_config['bind_zonefiles_dir'].'/pri/'.str_replace("/", "_", substr($zone['origin'], 0, -1)); } else { - $filename = escapeshellcmd($dns_config['bind_zonefiles_dir'].'/pri.'.str_replace("/", "_", substr($zone['origin'], 0, -1))); + $filename = $dns_config['bind_zonefiles_dir'].'/pri.'.str_replace("/", "_", substr($zone['origin'], 0, -1)); } $old_zonefile = @file_get_contents($filename); file_put_contents($filename, $tpl->grab()); - chown($filename, escapeshellcmd($dns_config['bind_user'])); - chgrp($filename, escapeshellcmd($dns_config['bind_group'])); + chown($filename, $dns_config['bind_user']); + chgrp($filename, $dns_config['bind_group']); //* Check the zonefile if(is_file($filename.'.err')) unlink($filename.'.err'); - exec('named-checkzone '.escapeshellarg($zone['origin']).' '.escapeshellarg($filename), $out, $return_status); + $app->system->exec_safe('named-checkzone ? ?', $zone['origin'], $filename); + $out = $app->system->last_exec_out(); + $return_status = $app->system->last_exec_retcode(); if($return_status === 0) { $app->log("Writing BIND domain file: ".$filename, LOGLEVEL_DEBUG); } else { @@ -309,8 +308,8 @@ class bind_plugin { if ($old_zonefile != '') { rename($filename, $filename.'.err'); file_put_contents($filename, $old_zonefile); - chown($filename, escapeshellcmd($dns_config['bind_user'])); - chgrp($filename, escapeshellcmd($dns_config['bind_group'])); + chown($filename, $dns_config['bind_user']); + chgrp($filename, $dns_config['bind_group']); } else { rename($filename, $filename.'.err'); } @@ -392,7 +391,10 @@ class bind_plugin { $app->log("Deleting BIND domain file: ".$zone_file_name, LOGLEVEL_DEBUG); //* DNSSEC-Implementation - if ($data['old']['dnssec_initialized'] == 'Y') exec('/usr/local/ispconfig/server/scripts/dnssec-delete.sh '.$data['old']['origin']); //delete keys + if($data['old']['dnssec_initialized'] == 'Y') { + //delete keys + $app->system->exec_safe('/usr/local/ispconfig/server/scripts/dnssec-delete.sh ?', $data['old']['origin']); + } //* Reload bind nameserver $app->services->restartServiceDelayed('bind', 'reload'); @@ -582,11 +584,6 @@ class bind_plugin { 'zonefile_path' => $sec_zonefiles_path.str_replace("/", "_", substr($tmp['origin'], 0, -1)), 'options' => $options ); - - // $filename = escapeshellcmd($dns_config['bind_zonefiles_dir'].'/slave/sec.'.substr($tmp['origin'],0,-1)); - // $app->log("Writing BIND domain file: ".$filename,LOGLEVEL_DEBUG); - - } $tpl_sec = new tpl(); diff --git a/server/plugins-available/cron_jailkit_plugin.inc.php b/server/plugins-available/cron_jailkit_plugin.inc.php index c652f299eb..f8f6640444 100644 --- a/server/plugins-available/cron_jailkit_plugin.inc.php +++ b/server/plugins-available/cron_jailkit_plugin.inc.php @@ -103,20 +103,6 @@ class cron_jailkit_plugin { if ($data['new']['type'] == "chrooted") { // load the server configuration options - /* - $app->uses("getconf"); - $this->data = $data; - $this->app = $app; - $this->jailkit_config = $app->getconf->get_server_config($conf["server_id"], 'jailkit'); - $this->parent_domain = $parent_domain; - - $this->_setup_jailkit_chroot(); - - //$command .= 'usermod -U '.escapeshellcmd($parent_domain['system_user']); - //exec($command); - - $this->_add_jailkit_user(); - */ $app->uses("getconf"); $this->data = $data; $this->app = $app; @@ -130,8 +116,8 @@ class cron_jailkit_plugin { $this->_add_jailkit_user(); - $command .= 'usermod -U '.escapeshellcmd($parent_domain["system_user"]).' 2>/dev/null'; - exec($command); + $command .= 'usermod -U ? 2>/dev/null'; + $app->system->exec_safe($command, $parent_domain["system_user"]); $this->_update_website_security_level(); @@ -231,14 +217,12 @@ class cron_jailkit_plugin { if (!is_dir($this->parent_domain['document_root'].'/etc/jailkit')) { $command = '/usr/local/ispconfig/server/scripts/create_jailkit_chroot.sh'; - $command .= ' '.escapeshellcmd($this->parent_domain['document_root']); - $command .= ' \''.$this->jailkit_config['jailkit_chroot_app_sections'].'\''; - exec($command.' 2>/dev/null'); + $command .= ' ?'; + $command .= ' ?'; + $app->system->exec_safe($command.' 2>/dev/null', $this->parent_domain['document_root'], $this->jailkit_config['jailkit_chroot_app_sections']); $this->app->log("Added jailkit chroot with command: ".$command, LOGLEVEL_DEBUG); - //$this->_add_jailkit_programs(); // done later on - $this->app->load('tpl'); $tpl = new tpl(); @@ -248,7 +232,7 @@ class cron_jailkit_plugin { $tpl->setVar('domain', $this->parent_domain['domain']); $tpl->setVar('home_dir', $this->_get_home_dir("")); - $bashrc = escapeshellcmd($this->parent_domain['document_root']).'/etc/bash.bashrc'; + $bashrc = $this->parent_domain['document_root'].'/etc/bash.bashrc'; if(@is_file($bashrc) || @is_link($bashrc)) unlink($bashrc); $app->system->file_put_contents($bashrc, $tpl->grab()); @@ -261,7 +245,7 @@ class cron_jailkit_plugin { $tpl->setVar('domain', $this->parent_domain['domain']); - $motd = escapeshellcmd($this->parent_domain['document_root']).'/var/run/motd'; + $motd = $this->parent_domain['document_root'].'/var/run/motd'; if(@is_file($motd) || @is_link($motd)) unlink($motd); $app->system->file_put_contents($motd, $tpl->grab()); @@ -276,16 +260,16 @@ class cron_jailkit_plugin { //copy over further programs and its libraries $command = '/usr/local/ispconfig/server/scripts/create_jailkit_programs.sh'; - $command .= ' '.escapeshellcmd($this->parent_domain['document_root']); - $command .= ' \''.$this->jailkit_config['jailkit_chroot_app_programs'].'\''; - exec($command.' 2>/dev/null'); + $command .= ' ?'; + $command .= ' ?'; + $app->system->exec_safe($command.' 2>/dev/null', $this->parent_domain['document_root'], $this->jailkit_config['jailkit_chroot_app_programs']); $this->app->log("Added programs to jailkit chroot with command: ".$command, LOGLEVEL_DEBUG); $command = '/usr/local/ispconfig/server/scripts/create_jailkit_programs.sh'; - $command .= ' '.escapeshellcmd($this->parent_domain['document_root']); - $command .= ' \''.$this->jailkit_config['jailkit_chroot_cron_programs'].'\''; - exec($command.' 2>/dev/null'); + $command .= ' ?'; + $command .= ' ?'; + $app->system->exec_safe($command.' 2>/dev/null', $this->parent_domain['document_root'], $this->jailkit_config['jailkit_chroot_cron_programs']); $this->app->log("Added cron programs to jailkit chroot with command: ".$command, LOGLEVEL_DEBUG); } @@ -298,30 +282,30 @@ class cron_jailkit_plugin { $jailkit_chroot_userhome = $this->_get_home_dir($this->parent_domain['system_user']); if(!is_dir($this->parent_domain['document_root'].'/etc')) mkdir($this->parent_domain['document_root'].'/etc'); - if(!is_file($this->parent_domain['document_root'].'/etc/passwd')) exec('touch '.$this->parent_domain['document_root'].'/etc/passwd'); + if(!is_file($this->parent_domain['document_root'].'/etc/passwd')) $app->system->exec_safe('touch ?', $this->parent_domain['document_root'].'/etc/passwd'); // IMPORTANT! // ALWAYS create the user. Even if the user was created before // if we check if the user exists, then a update (no shell -> jailkit) will not work // and the user has FULL ACCESS to the root of the server! $command = '/usr/local/ispconfig/server/scripts/create_jailkit_user.sh'; - $command .= ' '.escapeshellcmd($this->parent_domain['system_user']); - $command .= ' '.escapeshellcmd($this->parent_domain['document_root']); - $command .= ' '.$jailkit_chroot_userhome; - $command .= ' '.escapeshellcmd("/bin/bash"); - exec($command.' 2>/dev/null'); + $command .= ' ?'; + $command .= ' ?'; + $command .= ' ?'; + $command .= ' /bin/bash'; + $app->system->exec_safe($command.' 2>/dev/null', $this->parent_domain['system_user'], $this->parent_domain['document_root'], $jailkit_chroot_userhome); $this->app->log("Added jailkit user to chroot with command: ".$command, LOGLEVEL_DEBUG); - $app->system->mkdir(escapeshellcmd($this->parent_domain['document_root'].$jailkit_chroot_userhome), 0755, true); - $app->system->chown(escapeshellcmd($this->parent_domain['document_root'].$jailkit_chroot_userhome), escapeshellcmd($this->parent_domain['system_user'])); - $app->system->chgrp(escapeshellcmd($this->parent_domain['document_root'].$jailkit_chroot_userhome), escapeshellcmd($this->parent_domain['system_group'])); + $app->system->mkdir($this->parent_domain['document_root'].$jailkit_chroot_userhome, 0755, true); + $app->system->chown($this->parent_domain['document_root'].$jailkit_chroot_userhome, $this->parent_domain['system_user']); + $app->system->chgrp($this->parent_domain['document_root'].$jailkit_chroot_userhome, $this->parent_domain['system_group']); } function _get_home_dir($username) { - return str_replace("[username]", escapeshellcmd($username), $this->jailkit_config["jailkit_chroot_home"]); + return str_replace("[username]", $username, $this->jailkit_config["jailkit_chroot_home"]); } //* Update the website root directory permissions depending on the security level @@ -345,15 +329,5 @@ class cron_jailkit_plugin { } } - //* Wrapper for exec function for easier debugging - private function _exec($command) { - global $app; - $app->log('exec: '.$command, LOGLEVEL_DEBUG); - exec($command); - } - - - } // end class -?> diff --git a/server/plugins-available/cron_plugin.inc.php b/server/plugins-available/cron_plugin.inc.php index fb623b9213..af4e24d974 100644 --- a/server/plugins-available/cron_plugin.inc.php +++ b/server/plugins-available/cron_plugin.inc.php @@ -112,15 +112,15 @@ class cron_plugin { // Create group and user, if not exist $app->uses("system"); - $groupname = escapeshellcmd($parent_domain["system_group"]); + $groupname = $parent_domain["system_group"]; if($parent_domain["system_group"] != '' && !$app->system->is_group($parent_domain["system_group"])) { - exec("groupadd $groupname"); + $app->system->exec_safe("groupadd ?", $groupname); $app->log("Adding the group: $groupname", LOGLEVEL_DEBUG); } - $username = escapeshellcmd($parent_domain["system_user"]); + $username = $parent_domain["system_user"]; if($parent_domain["system_user"] != '' && !$app->system->is_user($parent_domain["system_user"])) { - exec("useradd -d ".escapeshellcmd($parent_domain["document_root"])." -g $groupname $username -s /bin/false"); + $app->system->exec_safe("useradd -d ? -g ? ? -s /bin/false", $parent_domain["document_root"], $groupname, $username); $app->log("Adding the user: $username", LOGLEVEL_DEBUG); } @@ -136,19 +136,19 @@ class cron_plugin { } // get the primitive folder for document_root and the filesystem, will need it later. - $df_output=explode(" ", exec("df -T " . escapeshellarg($parent_domain["document_root"]) . "|awk 'END{print \$2,\$NF}'")); + $df_output=explode(" ", $app->system->exec_safe("df -T ?|awk 'END{print \$2,\$NF}'", $parent_domain["document_root"])); $file_system = $df_output[0]; $primitive_root = $df_output[1]; if ( in_array($file_system , array('ext2','ext3','ext4'),true) ) { - exec('setquota -u '. $username . ' ' . $blocks_soft . ' ' . $blocks_hard . ' 0 0 -a &> /dev/null'); - exec('setquota -T -u '.$username.' 604800 604800 -a &> /dev/null'); + $app->system->exec_safe('setquota -u ? ? ? 0 0 -a &> /dev/null', $username, $blocks_soft, $blocks_hard); + $app->system->exec_safe('setquota -T -u ? 604800 604800 -a &> /dev/null', $username); } elseif ($file_system == 'xfs') { - exec("xfs_quota -x -c 'limit -u bsoft=$mb_soft" . 'm'. " bhard=$mb_hard" . 'm'. " $username' $primitive_root"); + $app->system->exec_safe("xfs_quota -x -c ? ?", "limit -u bsoft=$mb_soft" . 'm'. " bhard=$mb_hard" . 'm'. " $username", $primitive_root); // xfs only supports timers globally, not per user. - exec("xfs_quota -x -c 'timer -bir -i 604800' $primitive_root"); + $app->system->exec_safe("xfs_quota -x -c 'timer -bir -i 604800' ?", $primitive_root); unset($project_uid, $username_position, $xfs_projects); unset($primitive_root, $df_output, $mb_hard, $mb_soft); @@ -164,7 +164,7 @@ class cron_plugin { } // make temp directory writable for the apache and website users - $app->system->chmod(escapeshellcmd($parent_domain["document_root"].'/tmp'), 0777); + $app->system->chmod($parent_domain["document_root"].'/tmp', 0777); /** TODO READ CRON MASTER **/ @@ -272,7 +272,7 @@ class cron_plugin { } } - $cron_file = escapeshellcmd($cron_config["crontab_dir"].'/ispc_'.$this->parent_domain["system_user"]); + $cron_file = $cron_config["crontab_dir"].'/ispc_'.$this->parent_domain["system_user"]; //TODO : change this when distribution information has been integrated into server record //* Gentoo vixie-cron requires files to end with .cron in the cron.d directory if (file_exists('/etc/gentoo-release')) { @@ -287,7 +287,7 @@ class cron_plugin { $app->log("Deleted Cron file $cron_file", LOGLEVEL_DEBUG); } - $cron_file = escapeshellcmd($cron_config["crontab_dir"].'/ispc_chrooted_'.$this->parent_domain["system_user"]); + $cron_file = $cron_config["crontab_dir"].'/ispc_chrooted_'.$this->parent_domain["system_user"]; if($chr_cmd_count > 0) { $app->system->file_put_contents($cron_file, $chr_cron_content); $app->log("Wrote Cron file $cron_file with content:\n$chr_cron_content", LOGLEVEL_DEBUG); diff --git a/server/plugins-available/firewall_plugin.inc.php b/server/plugins-available/firewall_plugin.inc.php index 67ed2379fb..b924f43a26 100644 --- a/server/plugins-available/firewall_plugin.inc.php +++ b/server/plugins-available/firewall_plugin.inc.php @@ -145,7 +145,7 @@ class firewall_plugin { //* add tcp ports foreach($tcp_ports_new_array as $port) { if(!in_array($port, $tcp_ports_old_array) && $port > 0) { - exec('ufw allow '.$port.'/tcp'); + $app->system->exec_safe('ufw allow ?', $port.'/tcp'); $app->log('ufw allow '.$port.'/tcp', LOGLEVEL_DEBUG); sleep(1); } @@ -154,7 +154,7 @@ class firewall_plugin { //* remove tcp ports foreach($tcp_ports_old_array as $port) { if(!in_array($port, $tcp_ports_new_array) && $port > 0) { - exec('ufw delete allow '.$port.'/tcp'); + $app->system->exec_safe('ufw delete allow ?', $port.'/tcp'); $app->log('ufw delete allow '.$port.'/tcp', LOGLEVEL_DEBUG); sleep(1); } @@ -163,7 +163,7 @@ class firewall_plugin { //* add udp ports foreach($udp_ports_new_array as $port) { if(!in_array($port, $udp_ports_old_array) && $port > 0) { - exec('ufw allow '.$port.'/udp'); + $app->system->exec_safe('ufw allow ?', $port.'/udp'); $app->log('ufw allow '.$port.'/udp', LOGLEVEL_DEBUG); sleep(1); } @@ -172,32 +172,12 @@ class firewall_plugin { //* remove udp ports foreach($udp_ports_old_array as $port) { if(!in_array($port, $udp_ports_new_array) && $port > 0) { - exec('ufw delete allow '.$port.'/udp'); + $app->system->exec_safe('ufw delete allow ?', $port.'/udp'); $app->log('ufw delete allow '.$port.'/udp', LOGLEVEL_DEBUG); sleep(1); } } - /* - if($tcp_ports_new != $tcp_ports_old) { - exec('ufw allow to any proto tcp port '.$tcp_ports_new); - $app->log('ufw allow to any proto tcp port '.$tcp_ports_new,LOGLEVEL_DEBUG); - if($event_name == 'firewall_update') { - exec('ufw delete allow to any proto tcp port '.$tcp_ports_old); - $app->log('ufw delete allow to any proto tcp port '.$tcp_ports_old,LOGLEVEL_DEBUG); - } - } - - if($udp_ports_new != $udp_ports_old) { - exec('ufw allow to any proto udp port '.$udp_ports_new); - $app->log('ufw allow to any proto udp port '.$udp_ports_new,LOGLEVEL_DEBUG); - if($event_name == 'firewall_update') { - exec('ufw delete allow to any proto udp port '.$udp_ports_old); - $app->log('ufw delete allow to any proto udp port '.$udp_ports_old,LOGLEVEL_DEBUG); - } - } - */ - if($data['new']['active'] == 'y') { if($data['new']['active'] == $data['old']['active']) { exec('ufw reload'); diff --git a/server/plugins-available/getmail_plugin.inc.php b/server/plugins-available/getmail_plugin.inc.php index a4481037f7..c3f4f7e1dc 100644 --- a/server/plugins-available/getmail_plugin.inc.php +++ b/server/plugins-available/getmail_plugin.inc.php @@ -94,7 +94,7 @@ class getmail_plugin { $this->delete($event_name, $data); // Get the new config file path - $config_file_path = escapeshellcmd($this->getmail_config_dir.'/'.$this->_clean_path($data["new"]["source_server"]).'_'.$this->_clean_path($data["new"]["source_username"]).'.conf'); + $config_file_path = $this->getmail_config_dir.'/'.$this->_clean_path($data["new"]["source_server"]).'_'.$this->_clean_path($data["new"]["source_username"]).'.conf'; if(stristr($config_file_path, "..") or stristr($config_file_path, "|") or stristr($config_file_path, ";") or stristr($config_file_path, '$')) { $app->log("Possibly faked path for getmail config file: '$config_file_path'. File is not written.", LOGLEVEL_ERROR); return false; @@ -162,7 +162,7 @@ class getmail_plugin { $getmail_config = $app->getconf->get_server_config($conf["server_id"], 'getmail'); $this->getmail_config_dir = $getmail_config["getmail_config_dir"]; - $config_file_path = escapeshellcmd($this->getmail_config_dir.'/'.$this->_clean_path($data["old"]["source_server"]).'_'.$this->_clean_path($data["old"]["source_username"]).'.conf'); + $config_file_path = $this->getmail_config_dir.'/'.$this->_clean_path($data["old"]["source_server"]).'_'.$this->_clean_path($data["old"]["source_username"]).'.conf'; if(stristr($config_file_path, "..") || stristr($config_file_path, "|") || stristr($config_file_path, ";") || stristr($config_file_path, '$')) { $app->log("Possibly faked path for getmail config file: '$config_file_path'. File is not written.", LOGLEVEL_ERROR); return false; diff --git a/server/plugins-available/mail_plugin.inc.php b/server/plugins-available/mail_plugin.inc.php index 8275696620..4d5ac826d3 100644 --- a/server/plugins-available/mail_plugin.inc.php +++ b/server/plugins-available/mail_plugin.inc.php @@ -125,23 +125,22 @@ class mail_plugin { $group = $app->system->getgroup($data['new']['gid']); //* Create the mail domain directory, if it does not exist if(!empty($base_path) && !is_dir($base_path)) { - //exec("su -c 'mkdir -p ".escapeshellcmd($base_path)."' ".$mail_config['mailuser_name']); $app->system->mkdirpath($base_path, 0770, $mail_config['mailuser_name'], $mail_config['mailuser_group']); // needs group-access because users of subfolders may differ from vmail $app->log('Created Directory: '.$base_path, LOGLEVEL_DEBUG); } if ($data['new']['maildir_format'] == 'mdbox') { - exec("su -c 'doveadm mailbox create -u \"".$data["new"]["email"]."\" INBOX'"); - exec("su -c 'doveadm mailbox create -u \"".$data["new"]["email"]."\" Sent'"); - exec("su -c 'doveadm mailbox create -u \"".$data["new"]["email"]."\" Trash'"); - exec("su -c 'doveadm mailbox create -u \"".$data["new"]["email"]."\" Junk'"); - exec("su -c 'doveadm mailbox create -u \"".$data["new"]["email"]."\" Drafts'"); + $app->system->exec_safe("su -c 'doveadm mailbox create -u ? INBOX'", $data["new"]["email"]); + $app->system->exec_safe("su -c 'doveadm mailbox create -u ? Sent'", $data["new"]["email"]); + $app->system->exec_safe("su -c 'doveadm mailbox create -u ? Trash'", $data["new"]["email"]); + $app->system->exec_safe("su -c 'doveadm mailbox create -u ? Junk'", $data["new"]["email"]); + $app->system->exec_safe("su -c 'doveadm mailbox create -u ? Drafts'", $data["new"]["email"]); - exec("su -c 'doveadm mailbox subscribe -u \"".$data["new"]["email"]."\" INBOX'"); - exec("su -c 'doveadm mailbox subscribe -u \"".$data["new"]["email"]."\" Sent'"); - exec("su -c 'doveadm mailbox subscribe -u \"".$data["new"]["email"]."\" Trash'"); - exec("su -c 'doveadm mailbox subscribe -u \"".$data["new"]["email"]."\" Junk'"); - exec("su -c 'doveadm mailbox subscribe -u \"".$data["new"]["email"]."\" Drafts'"); + $app->system->exec_safe("su -c 'doveadm mailbox subscribe -u ? INBOX'", $data["new"]["email"]); + $app->system->exec_safe("su -c 'doveadm mailbox subscribe -u ? Sent'", $data["new"]["email"]); + $app->system->exec_safe("su -c 'doveadm mailbox subscribe -u ? Trash'", $data["new"]["email"]); + $app->system->exec_safe("su -c 'doveadm mailbox subscribe -u ? Junk'", $data["new"]["email"]); + $app->system->exec_safe("su -c 'doveadm mailbox subscribe -u ? Drafts'", $data["new"]["email"]); } else { // Dovecot uses a different mail layout with a separate 'Maildir' subdirectory. @@ -154,53 +153,44 @@ class mail_plugin { //* When the mail user dir exists but it is not a valid maildir, move it to corrupted maildir folder if(!empty($maildomain_path) && is_dir($maildomain_path) && !is_dir($maildomain_path.'/new') && !is_dir($maildomain_path.'/cur')) { if(!is_dir($mail_config['homedir_path'].'/corrupted/'.$data['new']['mailuser_id'])) $app->system->mkdirpath($mail_config['homedir_path'].'/corrupted/'.$data['new']['mailuser_id'], 0700, $mail_config['mailuser_name'], $mail_config['mailuser_group']); - exec("su -c 'mv -f ".escapeshellcmd($data['new']['maildir'])." ".$mail_config['homedir_path'].'/corrupted/'.$data['new']['mailuser_id']."' vmail"); - $app->log('Moved invalid maildir to corrupted Maildirs folder: '.escapeshellcmd($data['new']['maildir']), LOGLEVEL_WARN); + $app->system->exec_safe("su -c ? vmail", "mv -f " . $data['new']['maildir']." ".$mail_config['homedir_path'].'/corrupted/'.$data['new']['mailuser_id']); + $app->log('Moved invalid maildir to corrupted Maildirs folder: '.$data['new']['maildir'], LOGLEVEL_WARN); } //* Create the maildir, if it doesn not exist, set permissions, set quota. if(!empty($maildomain_path) && !is_dir($maildomain_path)) { - //exec("su -c 'maildirmake ".escapeshellcmd($maildomain_path)."' ".$mail_config['mailuser_name']); $app->system->maildirmake($maildomain_path, $user, '', $group); //* This is to fix the maildrop quota not being rebuilt after the quota is changed. if($mail_config['pop3_imap_daemon'] != 'dovecot') { - if(is_dir($maildomain_path)) exec("su -c 'maildirmake -q ".$data['new']['quota']."S ".escapeshellcmd($maildomain_path)."' ".$user); // Avoid maildirmake quota bug, see debian bug #214911 - $app->log('Created Maildir: '."su -c 'maildirmake -q ".$data['new']['quota']."S ".escapeshellcmd($maildomain_path)."' ".$user, LOGLEVEL_DEBUG); + if(is_dir($maildomain_path)) $app->system->exec_safe("su -c ? ?", "maildirmake -q ".$data['new']['quota']."S ".$maildomain_path, $user); // Avoid maildirmake quota bug, see debian bug #214911 + $app->log('Created Maildir: '."su -c 'maildirmake -q ".$data['new']['quota']."S ".$maildomain_path."' ".$user, LOGLEVEL_DEBUG); } } if(!is_dir($data['new']['maildir'].'/.Sent')) { - //exec("su -c 'maildirmake -f Sent ".escapeshellcmd($maildomain_path)."' ".$mail_config['mailuser_name']); - //$app->log('Created submaildir Sent: '."su -c 'maildirmake -f Sent ".escapeshellcmd($maildomain_path)."' ".$mail_config['mailuser_name'],LOGLEVEL_DEBUG); $app->system->maildirmake($maildomain_path, $user, 'Sent', $group); } if(!is_dir($data['new']['maildir'].'/.Drafts')) { - //exec("su -c 'maildirmake -f Drafts ".escapeshellcmd($maildomain_path)."' ".$mail_config['mailuser_name']); - //$app->log('Created submaildir Drafts: '."su -c 'maildirmake -f Drafts ".escapeshellcmd($maildomain_path)."' ".$mail_config['mailuser_name'],LOGLEVEL_DEBUG); $app->system->maildirmake($maildomain_path, $user, 'Drafts', $group); } if(!is_dir($data['new']['maildir'].'/.Trash')) { - //exec("su -c 'maildirmake -f Trash ".escapeshellcmd($maildomain_path)."' ".$mail_config['mailuser_name']); - //$app->log('Created submaildir Trash: '."su -c 'maildirmake -f Trash ".escapeshellcmd($maildomain_path)."' ".$mail_config['mailuser_name'],LOGLEVEL_DEBUG); $app->system->maildirmake($maildomain_path, $user, 'Trash', $group); } if(!is_dir($data['new']['maildir'].'/.Junk')) { - //exec("su -c 'maildirmake -f Junk ".escapeshellcmd($maildomain_path)."' ".$mail_config['mailuser_name']); - //$app->log('Created submaildir Junk: '."su -c 'maildirmake -f Junk ".escapeshellcmd($maildomain_path)."' ".$mail_config['mailuser_name'],LOGLEVEL_DEBUG); $app->system->maildirmake($maildomain_path, $user, 'Junk', $group); } // Set permissions now recursive - exec('chown -R '.$user.':'.$group.' '.escapeshellcmd($data['new']['maildir'])); - $app->log('Set ownership on '.escapeshellcmd($data['new']['maildir']), LOGLEVEL_DEBUG); + $app->system->exec_safe('chown -R ?:? ?', $user, $group, $data['new']['maildir']); + $app->log('Set ownership on '.$data['new']['maildir'], LOGLEVEL_DEBUG); //* Set the maildir quota if(is_dir($data['new']['maildir'].'/new') && $mail_config['pop3_imap_daemon'] != 'dovecot') { if($data['new']['quota'] > 0) { - if(is_dir($data['new']['maildir'])) exec("su -c 'maildirmake -q ".$data['new']['quota']."S ".escapeshellcmd($data['new']['maildir'])."' ".$user); - $app->log('Set Maildir quota: '."su -c 'maildirmake -q ".$data['new']['quota']."S ".escapeshellcmd($data['new']['maildir'])."' ".$user, LOGLEVEL_DEBUG); + if(is_dir($data['new']['maildir'])) $app->system->exec_safe("su -c ? ? ", "maildirmake -q ".$data['new']['quota']."S ". $data['new']['maildir'], $user); + $app->log('Set Maildir quota: '."su -c 'maildirmake -q ".$data['new']['quota']."S ".$data['new']['maildir']."' ".$user, LOGLEVEL_DEBUG); } } } @@ -269,19 +259,6 @@ class mail_plugin { $app->uses('getconf,system'); $mail_config = $app->getconf->get_server_config($conf['server_id'], 'mail'); - // convert to lower case - it could cause problems if some directory above has upper case name - // $data['new']['maildir'] = strtolower($data['new']['maildir']); - - // Create the maildir, if it does not exist - /* - if(!is_dir($data['new']['maildir'])) { - mkdir(escapeshellcmd($data['new']['maildir']), 0, true); - chown(escapeshellcmd($data['new']['maildir']), $mail_config['mailuser_name']); - chgrp(escapeshellcmd($data['new']['maildir']), $mail_config['mailuser_group']); - $app->log('Created Maildir: '.$data['new']['maildir'],LOGLEVEL_DEBUG); - } - */ - // Maildir-Format must not be changed on this way !! $data['new']['maildir_format'] = $data['old']['maildir_format']; @@ -324,7 +301,6 @@ class mail_plugin { //* Create the mail domain directory, if it does not exist if(!empty($base_path) && !is_dir($base_path)) { - //exec("su -c 'mkdir -p ".escapeshellcmd($base_path)."' ".$mail_config['mailuser_name']); $app->system->mkdirpath($base_path, 0770, $mail_config['mailuser_name'], $mail_config['mailuser_group']); // needs group-access because users of subfolders may differ from vmail $app->log('Created Directory: '.$base_path, LOGLEVEL_DEBUG); } @@ -333,29 +309,26 @@ class mail_plugin { // Move mailbox, if domain has changed and delete old mailbox if($data['new']['maildir'] != $data['old']['maildir'] && is_dir($data['old']['maildir'])) { if(is_dir($data['new']['maildir'])) { - exec("rm -fr ".escapeshellcmd($data['new']['maildir'])); + $app->system->exec_safe("rm -fr ?", $data['new']['maildir']); //rmdir($data['new']['maildir']); } - exec('mv -f '.escapeshellcmd($data['old']['maildir']).' '.escapeshellcmd($data['new']['maildir'])); - // exec('mv -f '.escapeshellcmd($data['old']['maildir']).'/* '.escapeshellcmd($data['new']['maildir'])); - // if(is_file($data['old']['maildir'].'.ispconfig_mailsize'))exec('mv -f '.escapeshellcmd($data['old']['maildir']).'.ispconfig_mailsize '.escapeshellcmd($data['new']['maildir'])); - // rmdir($data['old']['maildir']); + $app->system->exec_safe('mv -f ? ?'. $data['old']['maildir'], $data['new']['maildir']); $app->log('Moved Maildir from: '.$data['old']['maildir'].' to '.$data['new']['maildir'], LOGLEVEL_DEBUG); } //* Create the maildir, if it doesn not exist, set permissions, set quota. if(!is_dir($data['new']['maildir'].'/mdbox')) { - exec("su -c 'doveadm mailbox create -u \"".$data["new"]["email"]."\" INBOX'"); - exec("su -c 'doveadm mailbox create -u \"".$data["new"]["email"]."\" Sent'"); - exec("su -c 'doveadm mailbox create -u \"".$data["new"]["email"]."\" Trash'"); - exec("su -c 'doveadm mailbox create -u \"".$data["new"]["email"]."\" Junk'"); - exec("su -c 'doveadm mailbox create -u \"".$data["new"]["email"]."\" Drafts'"); + $app->system->exec_safe("su -c 'doveadm mailbox create -u ? INBOX'", $data["new"]["email"]); + $app->system->exec_safe("su -c 'doveadm mailbox create -u ? Sent'", $data["new"]["email"]); + $app->system->exec_safe("su -c 'doveadm mailbox create -u ? Trash'", $data["new"]["email"]); + $app->system->exec_safe("su -c 'doveadm mailbox create -u ? Junk'", $data["new"]["email"]); + $app->system->exec_safe("su -c 'doveadm mailbox create -u ? Drafts'", $data["new"]["email"]); - exec("su -c 'doveadm mailbox subscribe -u \"".$data["new"]["email"]."\" INBOX'"); - exec("su -c 'doveadm mailbox subscribe -u \"".$data["new"]["email"]."\" Sent'"); - exec("su -c 'doveadm mailbox subscribe -u \"".$data["new"]["email"]."\" Trash'"); - exec("su -c 'doveadm mailbox subscribe -u \"".$data["new"]["email"]."\" Junk'"); - exec("su -c 'doveadm mailbox subscribe -u \"".$data["new"]["email"]."\" Drafts'"); + $app->system->exec_safe("su -c 'doveadm mailbox subscribe -u ? INBOX'", $data["new"]["email"]); + $app->system->exec_safe("su -c 'doveadm mailbox subscribe -u ? Sent'", $data["new"]["email"]); + $app->system->exec_safe("su -c 'doveadm mailbox subscribe -u ? Trash'", $data["new"]["email"]); + $app->system->exec_safe("su -c 'doveadm mailbox subscribe -u ? Junk'", $data["new"]["email"]); + $app->system->exec_safe("su -c 'doveadm mailbox subscribe -u ? Drafts'", $data["new"]["email"]); } } else { @@ -369,21 +342,19 @@ class mail_plugin { //* When the mail user dir exists but it is not a valid maildir, move it to corrupted maildir folder if(!empty($maildomain_path) && is_dir($maildomain_path) && !is_dir($maildomain_path.'/new') && !is_dir($maildomain_path.'/cur')) { if(!is_dir($mail_config['homedir_path'].'/corrupted/'.$data['new']['mailuser_id'])) $app->system->mkdirpath($mail_config['homedir_path'].'/corrupted/'.$data['new']['mailuser_id'], 0700, $mail_config['mailuser_name'], $mail_config['mailuser_group']); - exec("su -c 'mv -f ".escapeshellcmd($data['new']['maildir'])." ".$mail_config['homedir_path'].'/corrupted/'.$data['new']['mailuser_id']."' vmail"); - $app->log('Moved invalid maildir to corrupted Maildirs folder: '.escapeshellcmd($data['new']['maildir']), LOGLEVEL_WARN); + $app->system->exec_safe("su -c ? ?", "mv -f ".$data['new']['maildir']." ".$mail_config['homedir_path'].'/corrupted/'.$data['new']['mailuser_id'], 'vmail'); + $app->log('Moved invalid maildir to corrupted Maildirs folder: '.$data['new']['maildir'], LOGLEVEL_WARN); } //* Create the maildir, if it doesn not exist, set permissions, set quota. if(!empty($maildomain_path) && !is_dir($maildomain_path.'/new')) { - //exec("su -c 'maildirmake ".escapeshellcmd($maildomain_path)."' ".$mail_config['mailuser_name']); - //$app->log("Created Maildir "."su -c 'maildirmake ".escapeshellcmd($maildomain_path)."' ".$mail_config['mailuser_name'],LOGLEVEL_DEBUG); $app->system->maildirmake($maildomain_path, $user, '', $group); //* This is to fix the maildrop quota not being rebuilt after the quota is changed. if($mail_config['pop3_imap_daemon'] != 'dovecot') { if($data['new']['quota'] > 0) { - if(is_dir($maildomain_path)) exec("su -c 'maildirmake -q ".$data['new']['quota']."S ".escapeshellcmd($maildomain_path)."' ".$user); // Avoid maildirmake quota bug, see debian bug #214911 - $app->log('Updated Maildir quota: '."su -c 'maildirmake -q ".$data['new']['quota']."S ".escapeshellcmd($maildomain_path)."' ".$user, LOGLEVEL_DEBUG); + if(is_dir($maildomain_path)) $app->system->exec_safe("su -c ? ?", "maildirmake -q ".$data['new']['quota']."S ".$maildomain_path, $user); // Avoid maildirmake quota bug, see debian bug #214911 + $app->log('Updated Maildir quota: '."su -c 'maildirmake -q ".$data['new']['quota']."S ".$maildomain_path."' ".$user, LOGLEVEL_DEBUG); } else { if(file_exists($data['new']['maildir'].'/maildirsize')) unlink($data['new']['maildir'].'/maildirsize'); $app->log('Set Maildir quota to unlimited.', LOGLEVEL_DEBUG); @@ -392,48 +363,36 @@ class mail_plugin { } if(!is_dir($data['new']['maildir'].'/.Sent')) { - //exec("su -c 'maildirmake -f Sent ".escapeshellcmd($maildomain_path)."' ".$mail_config['mailuser_name']); - //$app->log('Created submaildir Sent: '."su -c 'maildirmake -f Sent ".escapeshellcmd($maildomain_path)."' ".$mail_config['mailuser_name'],LOGLEVEL_DEBUG); $app->system->maildirmake($maildomain_path, $user, 'Sent', $group); } if(!is_dir($data['new']['maildir'].'/.Drafts')) { - //exec("su -c 'maildirmake -f Drafts ".escapeshellcmd($maildomain_path)."' ".$mail_config['mailuser_name']); - //$app->log('Created submaildir Drafts: '."su -c 'maildirmake -f Drafts ".escapeshellcmd($maildomain_path)."' ".$mail_config['mailuser_name'],LOGLEVEL_DEBUG); $app->system->maildirmake($maildomain_path, $user, 'Drafts', $group); } if(!is_dir($data['new']['maildir'].'/.Trash')) { - //exec("su -c 'maildirmake -f Trash ".escapeshellcmd($maildomain_path)."' ".$mail_config['mailuser_name']); - //$app->log('Created submaildir Trash: '."su -c 'maildirmake -f Trash ".escapeshellcmd($maildomain_path)."' ".$mail_config['mailuser_name'],LOGLEVEL_DEBUG); $app->system->maildirmake($maildomain_path, $user, 'Trash', $group); } if(!is_dir($data['new']['maildir'].'/.Junk')) { - //exec("su -c 'maildirmake -f Junk ".escapeshellcmd($maildomain_path)."' ".$mail_config['mailuser_name']); - //$app->log('Created submaildir Junk: '."su -c 'maildirmake -f Junk ".escapeshellcmd($maildomain_path)."' ".$mail_config['mailuser_name'],LOGLEVEL_DEBUG); $app->system->maildirmake($maildomain_path, $user, 'Junk', $group); } // Set permissions now recursive - exec('chown -R '.$user.':'.$group.' '.escapeshellcmd($data['new']['maildir'])); - $app->log('Set ownership on '.escapeshellcmd($data['new']['maildir']), LOGLEVEL_DEBUG); + $app->system->exec_safe('chown -R ?:? ?', $user, $group, $data['new']['maildir']); + $app->log('Set ownership on '.$data['new']['maildir'], LOGLEVEL_DEBUG); // Move mailbox, if domain has changed and delete old mailbox if($data['new']['maildir'] != $data['old']['maildir'] && is_dir($data['old']['maildir'])) { if(is_dir($data['new']['maildir'])) { - exec("rm -fr ".escapeshellcmd($data['new']['maildir'])); - //rmdir($data['new']['maildir']); + $app->system->exec_safe("rm -fr ?", $data['new']['maildir']); } - exec('mv -f '.escapeshellcmd($data['old']['maildir']).' '.escapeshellcmd($data['new']['maildir'])); - // exec('mv -f '.escapeshellcmd($data['old']['maildir']).'/* '.escapeshellcmd($data['new']['maildir'])); - // if(is_file($data['old']['maildir'].'.ispconfig_mailsize'))exec('mv -f '.escapeshellcmd($data['old']['maildir']).'.ispconfig_mailsize '.escapeshellcmd($data['new']['maildir'])); - // rmdir($data['old']['maildir']); + $app->system->exec_safe('mv -f ? ?', $data['old']['maildir'], $data['new']['maildir']); $app->log('Moved Maildir from: '.$data['old']['maildir'].' to '.$data['new']['maildir'], LOGLEVEL_DEBUG); } //This is to fix the maildrop quota not being rebuilt after the quota is changed. // Courier Layout if(is_dir($data['new']['maildir'].'/new') && $mail_config['pop3_imap_daemon'] != 'dovecot') { if($data['new']['quota'] > 0) { - if(is_dir($data['new']['maildir'])) exec("su -c 'maildirmake -q ".$data['new']['quota']."S ".escapeshellcmd($data['new']['maildir'])."' ".$user); - $app->log('Updated Maildir quota: '."su -c 'maildirmake -q ".$data['new']['quota']."S ".escapeshellcmd($data['new']['maildir'])."' ".$user, LOGLEVEL_DEBUG); + if(is_dir($data['new']['maildir'])) $app->system->exec_safe("su -c ? ?", "maildirmake -q ".$data['new']['quota']."S ".$data['new']['maildir'], $user); + $app->log('Updated Maildir quota: '."su -c 'maildirmake -q ".$data['new']['quota']."S ".$data['new']['maildir']."' ".$user, LOGLEVEL_DEBUG); } else { if(file_exists($data['new']['maildir'].'/maildirsize')) unlink($data['new']['maildir'].'/maildirsize'); $app->log('Set Maildir quota to unlimited.', LOGLEVEL_DEBUG); @@ -450,9 +409,9 @@ class mail_plugin { $mail_config = $app->getconf->get_server_config($conf['server_id'], 'mail'); $maildir_path_deleted = false; - $old_maildir_path = escapeshellcmd($data['old']['maildir']); + $old_maildir_path = $data['old']['maildir']; if($old_maildir_path != $mail_config['homedir_path'] && strlen($old_maildir_path) > strlen($mail_config['homedir_path']) && !stristr($old_maildir_path, '//') && !stristr($old_maildir_path, '..') && !stristr($old_maildir_path, '*') && strlen($old_maildir_path) >= 10) { - exec('rm -rf '.escapeshellcmd($old_maildir_path)); + $app->system->exec_safe('rm -rf ?', $old_maildir_path); $app->log('Deleted the Maildir: '.$data['old']['maildir'], LOGLEVEL_DEBUG); $maildir_path_deleted = true; } else { @@ -474,7 +433,7 @@ class mail_plugin { if (is_array($domain_rec)) { $mail_backup_dir = $backup_dir.'/mail'.$domain_rec['domain_id']; $mail_backup_files = 'mail'.$data['old']['mailuser_id']; - exec(escapeshellcmd('rm -f '.$mail_backup_dir.'/'.$mail_backup_files).'*'); + $app->system->exec_safe('rm -f ?*', $mail_backup_dir.'/'.$mail_backup_files); //* cleanup database $sql = "DELETE FROM mail_backup WHERE server_id = ? AND parent_domain_id = ? AND mailuser_id = ?"; $app->db->query($sql, $conf['server_id'], $domain_rec['domain_id'], $data['old']['mailuser_id']); @@ -494,9 +453,9 @@ class mail_plugin { $maildomain_path_deleted = false; //* Delete maildomain path - $old_maildomain_path = escapeshellcmd($mail_config['homedir_path'].'/'.$data['old']['domain']); + $old_maildomain_path = $mail_config['homedir_path'].'/'.$data['old']['domain']; if($old_maildomain_path != $mail_config['homedir_path'] && !stristr($old_maildomain_path, '//') && !stristr($old_maildomain_path, '..') && !stristr($old_maildomain_path, '*') && !stristr($old_maildomain_path, '&') && strlen($old_maildomain_path) >= 10 && !empty($data['old']['domain'])) { - exec('rm -rf '.escapeshellcmd($old_maildomain_path)); + $app->system->exec_safe('rm -rf ?', $old_maildomain_path); $app->log('Deleted the mail domain directory: '.$old_maildomain_path, LOGLEVEL_DEBUG); $maildomain_path_deleted = true; } else { @@ -504,9 +463,9 @@ class mail_plugin { } //* Delete mailfilter path - $old_maildomain_path = escapeshellcmd($mail_config['homedir_path'].'/mailfilters/'.$data['old']['domain']); + $old_maildomain_path = $mail_config['homedir_path'].'/mailfilters/'.$data['old']['domain']; if($old_maildomain_path != $mail_config['homedir_path'].'/mailfilters/' && !stristr($old_maildomain_path, '//') && !stristr($old_maildomain_path, '..') && !stristr($old_maildomain_path, '*') && !stristr($old_maildomain_path, '&') && strlen($old_maildomain_path) >= 10 && !empty($data['old']['domain'])) { - exec('rm -rf '.escapeshellcmd($old_maildomain_path)); + $app->system->exec_safe('rm -rf ?', $old_maildomain_path); $app->log('Deleted the mail domain mailfilter directory: '.$old_maildomain_path, LOGLEVEL_DEBUG); } else { $app->log('Possible security violation when deleting the mail domain mailfilter directory: '.$old_maildomain_path, LOGLEVEL_ERROR); @@ -521,7 +480,7 @@ class mail_plugin { if( $server_config['backup_dir_is_mount'] == 'y' && !$app->system->mount_backup_dir($backup_dir) ) $mount_backup = false; if($mount_backup){ $mail_backup_dir = $backup_dir.'/mail'.$data['old']['domain_id']; - exec(escapeshellcmd('rm -rf '.$mail_backup_dir)); + $app->system->exec_safe('rm -rf ?', $mail_backup_dir); //* cleanup database $sql = "DELETE FROM mail_backup WHERE server_id = ? AND parent_domain_id = ?"; $app->db->query($sql, $conf['server_id'], $data['old']['domain_id']); diff --git a/server/plugins-available/mail_plugin_dkim.inc.php b/server/plugins-available/mail_plugin_dkim.inc.php index 6f042e9070..b54f4f56c7 100755 --- a/server/plugins-available/mail_plugin_dkim.inc.php +++ b/server/plugins-available/mail_plugin_dkim.inc.php @@ -192,7 +192,8 @@ class mail_plugin_dkim { $app->log('Saved DKIM Private-key to '.$key_file.'.private', LOGLEVEL_DEBUG); $success=true; /* now we get the DKIM Public-key */ - exec('cat '.escapeshellarg($key_file.'.private').'|openssl rsa -pubout 2> /dev/null', $pubkey, $result); + $app->system->exec_safe('cat ?|openssl rsa -pubout 2> /dev/null', $key_file.'.private'); + $pubkey = $app->system->last_exec_out(); $public_key=''; foreach($pubkey as $values) $public_key=$public_key.$values."\n"; /* save the DKIM Public-key in dkim-dir */ diff --git a/server/plugins-available/mailman_plugin.inc.php b/server/plugins-available/mailman_plugin.inc.php index 99ac9db7d2..e6251aedf1 100644 --- a/server/plugins-available/mailman_plugin.inc.php +++ b/server/plugins-available/mailman_plugin.inc.php @@ -73,7 +73,7 @@ class mailman_plugin { $this->update_config(); - $pid = exec("nohup /usr/lib/mailman/bin/newlist -u ".escapeshellcmd($data["new"]["domain"])." -e ".escapeshellcmd($data["new"]["domain"])." ".escapeshellcmd($data["new"]["listname"])." ".escapeshellcmd($data["new"]["email"])." ".escapeshellcmd($data["new"]["password"])." >/dev/null 2>&1 & echo $!;"); + $pid = $app->system->exec_safe("nohup /usr/lib/mailman/bin/newlist -u ? -e ? ? ? ? >/dev/null 2>&1 & echo $!;", $data["new"]["domain"], $data["new"]["domain"], $data["new"]["listname"], $data["new"]["email"], $data["new"]["password"]); // wait for /usr/lib/mailman/bin/newlist-call $running = true; do { @@ -91,7 +91,7 @@ class mailman_plugin { exec('nohup '.$conf['init_scripts'] . '/' . 'mailman reload >/dev/null 2>&1 &'); // Fix list URL - exec('/usr/sbin/withlist -l -r fix_url '.escapeshellcmd($data["new"]["listname"])); + $app->system->exec_safe('/usr/sbin/withlist -l -r fix_url ?', $data["new"]["listname"]); $app->db->query("UPDATE mail_mailinglist SET password = '' WHERE mailinglist_id = ?", $data["new"]['mailinglist_id']); @@ -104,7 +104,7 @@ class mailman_plugin { $this->update_config(); if($data["new"]["password"] != $data["old"]["password"] && $data["new"]["password"] != '') { - exec("nohup /usr/lib/mailman/bin/change_pw -l ".escapeshellcmd($data["new"]["listname"])." -p ".escapeshellcmd($data["new"]["password"])." >/dev/null 2>&1 &"); + $app->system->exec_safe("nohup /usr/lib/mailman/bin/change_pw -l ? -p ? >/dev/null 2>&1 &", $data["new"]["listname"], $data["new"]["password"]); exec('nohup '.$conf['init_scripts'] . '/' . 'mailman reload >/dev/null 2>&1 &'); $app->db->query("UPDATE mail_mailinglist SET password = '' WHERE mailinglist_id = ?", $data["new"]['mailinglist_id']); } @@ -118,7 +118,7 @@ class mailman_plugin { $this->update_config(); - exec("nohup /usr/lib/mailman/bin/rmlist -a ".escapeshellcmd($data["old"]["listname"])." >/dev/null 2>&1 &"); + $app->system->exec_safe("nohup /usr/lib/mailman/bin/rmlist -a ? >/dev/null 2>&1 &", $data["old"]["listname"]); exec('nohup '.$conf['init_scripts'] . '/' . 'mailman reload >/dev/null 2>&1 &'); diff --git a/server/plugins-available/mysql_clientdb_plugin.inc.php b/server/plugins-available/mysql_clientdb_plugin.inc.php index efe7142c8d..a26129eed9 100644 --- a/server/plugins-available/mysql_clientdb_plugin.inc.php +++ b/server/plugins-available/mysql_clientdb_plugin.inc.php @@ -344,15 +344,15 @@ class mysql_clientdb_plugin { $triggers_array[] = $row; } $app->log('Dumping triggers from '.$old_name, LOGLEVEL_DEBUG); - $command = "mysqldump -h ".escapeshellarg($clientdb_host)." -u ".escapeshellarg($clientdb_user)." -p".escapeshellarg($clientdb_password)." ".$old_name." -d -t -R -E > ".$timestamp.$old_name.'.triggers'; - exec($command, $out, $ret); + $command = "mysqldump -h ? -u ? -p? ? -d -t -R -E > ?"; + $app->system->exec_safe($command, $clientdb_host, $clientdb_user, $clientdb_password, $old_name, $timestamp.$old_name.'.triggers'); + $ret = $app->system->last_exec_retcode(); $app->system->chmod($timestamp.$old_name.'.triggers', 0600); if ($ret != 0) { unset($triggers_array); $app->system->unlink($timestamp.$old_name.'.triggers'); $app->log('Unable to dump triggers from '.$old_name, LOGLEVEL_ERROR); } - unset($out); } //* save views @@ -366,15 +366,15 @@ class mysql_clientdb_plugin { } $app->log('Dumping views from '.$old_name, LOGLEVEL_DEBUG); $temp_views = implode(' ', $temp); - $command = "mysqldump -h ".escapeshellarg($clientdb_host)." -u ".escapeshellarg($clientdb_user)." -p".escapeshellarg($clientdb_password)." ".$old_name." ".$temp_views." > ".$timestamp.$old_name.'.views'; - exec($command, $out, $ret); + $command = "mysqldump -h ? -u ? -p? ? ? > ?"; + $app->system->exec_safe($command, $clientdb_host, $clientdb_user, $clientdb_password, $old_name, $temp_views, $timestamp.$old_name.'.views'); + $ret = $app->system->last_exec_retcode(); $app->system->chmod($timestamp.$old_name.'.views', 0600); if ($ret != 0) { unset($views_array); $app->system->unlink($timestamp.$old_name.'.views'); $app->log('Unable to dump views from '.$old_name, LOGLEVEL_ERROR); } - unset($out); unset($temp); unset($temp_views); } @@ -405,8 +405,9 @@ class mysql_clientdb_plugin { unset($_trigger); } //* update triggers, routines and events - $command = "mysql -h ".escapeshellarg($clientdb_host)." -u ".escapeshellarg($clientdb_user)." -p".escapeshellarg($clientdb_password)." ".$new_name." < ".$timestamp.$old_name.'.triggers'; - exec($command, $out, $ret); + $command = "mysql -h ? -u ? -p? ? < ?"; + $app->system->exec_safe($command, $clientdb_host, $clientdb_user, $clientdb_password, $new_name, $timestamp.$old_name.'.triggers'); + $ret = $app->system->last_exec_retcode(); if ($ret != 0) { $app->log('Unable to import triggers for '.$new_name, LOGLEVEL_ERROR); } else { @@ -416,8 +417,9 @@ class mysql_clientdb_plugin { //* loading views if (@is_array($views_array)) { - $command = "mysql -h ".escapeshellarg($clientdb_host)." -u ".escapeshellarg($clientdb_user)." -p".escapeshellarg($clientdb_password)." ".$new_name." < ".$timestamp.$old_name.'.views'; - exec($command, $out, $ret); + $command = "mysql -h ? -u ? -p? ? < ?"; + $app->system->exec_safe($command, $clientdb_host, $clientdb_user, $clientdb_password, $new_name, $timestamp.$old_name.'.views'); + $ret = $app->system->last_exec_retcode(); if ($ret != 0) { $app->log('Unable to import views for '.$new_name, LOGLEVEL_ERROR); } else { diff --git a/server/plugins-available/network_settings_plugin.inc.php b/server/plugins-available/network_settings_plugin.inc.php index 5ce6f934b8..1ed12f3a1c 100644 --- a/server/plugins-available/network_settings_plugin.inc.php +++ b/server/plugins-available/network_settings_plugin.inc.php @@ -280,8 +280,8 @@ class network_settings_plugin { //* Executing the postconf commands foreach($postconf_commands as $cmd) { - $command = "postconf -e '$cmd'"; - exec($command); + $command = "postconf -e ?"; + $app->system->exec_safe($command, $cmd); } $app->log('Changed changed myhostname and mydestination in postfix main.cf to '.$new_hostname, LOGLEVEL_DEBUG); diff --git a/server/plugins-available/nginx_plugin.inc.php b/server/plugins-available/nginx_plugin.inc.php index 30f9501505..9913299aa5 100644 --- a/server/plugins-available/nginx_plugin.inc.php +++ b/server/plugins-available/nginx_plugin.inc.php @@ -105,7 +105,6 @@ class nginx_plugin { //* Only vhosts can have a ssl cert if($data["new"]["type"] != "vhost" && $data["new"]["type"] != "vhostsubdomain" && $data["new"]["type"] != "vhostalias") return; - // if(!is_dir($data['new']['document_root'].'/ssl')) exec('mkdir -p '.$data['new']['document_root'].'/ssl'); if(!is_dir($data['new']['document_root'].'/ssl') && !is_dir($data['old']['document_root'].'/ssl')) $app->system->mkdirpath($data['new']['document_root'].'/ssl'); $ssl_dir = $data['new']['document_root'].'/ssl'; @@ -170,36 +169,36 @@ class nginx_plugin { $ssl_cnf_file = $ssl_dir.'/openssl.conf'; $app->system->file_put_contents($ssl_cnf_file, $ssl_cnf); - $rand_file = escapeshellcmd($rand_file); - $key_file2 = escapeshellcmd($key_file2); + $rand_file = $rand_file; + $key_file2 = $key_file2; $openssl_cmd_key_file2 = $key_file2; if(substr($domain, 0, 2) == '*.' && strpos($key_file2, '/ssl/\*.') !== false) $key_file2 = str_replace('/ssl/\*.', '/ssl/*.', $key_file2); // wildcard certificate - $key_file = escapeshellcmd($key_file); + $key_file = $key_file; $openssl_cmd_key_file = $key_file; if(substr($domain, 0, 2) == '*.' && strpos($key_file, '/ssl/\*.') !== false) $key_file = str_replace('/ssl/\*.', '/ssl/*.', $key_file); // wildcard certificate $ssl_days = 3650; - $csr_file = escapeshellcmd($csr_file); + $csr_file = $csr_file; $openssl_cmd_csr_file = $csr_file; if(substr($domain, 0, 2) == '*.' && strpos($csr_file, '/ssl/\*.') !== false) $csr_file = str_replace('/ssl/\*.', '/ssl/*.', $csr_file); // wildcard certificate - $config_file = escapeshellcmd($ssl_cnf_file); - $crt_file = escapeshellcmd($crt_file); + $config_file = $ssl_cnf_file; + $crt_file = $crt_file; $openssl_cmd_crt_file = $crt_file; if(substr($domain, 0, 2) == '*.' && strpos($crt_file, '/ssl/\*.') !== false) $crt_file = str_replace('/ssl/\*.', '/ssl/*.', $crt_file); // wildcard certificate if(is_file($ssl_cnf_file) && !is_link($ssl_cnf_file)) { - exec("openssl genrsa -des3 -rand $rand_file -passout pass:$ssl_password -out $openssl_cmd_key_file2 2048"); - exec("openssl req -new -sha256 -passin pass:$ssl_password -passout pass:$ssl_password -key $openssl_cmd_key_file2 -out $openssl_cmd_csr_file -days $ssl_days -config $config_file"); - exec("openssl rsa -passin pass:$ssl_password -in $openssl_cmd_key_file2 -out $openssl_cmd_key_file"); + $app->system->exec_safe("openssl genrsa -des3 -rand ? -passout pass:? -out ? 2048", $rand_file, $ssl_password, $openssl_cmd_key_file2); + $app->system->exec_safe("openssl req -new -sha256 -passin pass:? -passout pass:? -key ? -out ? -days ? -config ?", $ssl_password, $ssl_password, $openssl_cmd_key_file2, $openssl_cmd_csr_file, $ssl_days, $config_file); + $app->system->exec_safe("openssl rsa -passin pass:? -in ? -out ?", $ssl_password, $openssl_cmd_key_file2, $openssl_cmd_key_file); if(file_exists($web_config['CA_path'].'/openssl.cnf')) { - exec("openssl ca -batch -out $openssl_cmd_crt_file -config ".$web_config['CA_path']."/openssl.cnf -passin pass:".$web_config['CA_pass']." -in $openssl_cmd_csr_file"); + $app->system->exec_safe("openssl ca -batch -out ? -config ? -passin pass:? -in ?", $openssl_cmd_crt_file, $web_config['CA_path']."/openssl.cnf", $web_config['CA_pass'], $openssl_cmd_csr_file); $app->log("Creating CA-signed SSL Cert for: $domain", LOGLEVEL_DEBUG); if (filesize($crt_file)==0 || !file_exists($crt_file)) $app->log("CA-Certificate signing failed. openssl ca -out $openssl_cmd_crt_file -config ".$web_config['CA_path']."/openssl.cnf -passin pass:".$web_config['CA_pass']." -in $openssl_cmd_csr_file", LOGLEVEL_ERROR); }; if (@filesize($crt_file)==0 || !file_exists($crt_file)){ - exec("openssl req -x509 -passin pass:$ssl_password -passout pass:$ssl_password -key $openssl_cmd_key_file2 -in $openssl_cmd_csr_file -out $openssl_cmd_crt_file -days $ssl_days -config $config_file "); + $app->system->exec_safe("openssl req -x509 -passin pass:? -passout pass:? -key ? -in ? -out ? -days ? -config ?", $ssl_password, $ssl_password, $openssl_cmd_key_file2, $openssl_cmd_csr_file, $openssl_cmd_crt_file, $ssl_days, $config_file); $app->log("Creating self-signed SSL Cert for: $domain", LOGLEVEL_DEBUG); }; @@ -240,7 +239,8 @@ class nginx_plugin { if($data["new"]["ssl_action"] == 'save') { $tmp = array(); $crt_data = ''; - exec('openssl x509 -noout -text -in '.escapeshellarg($crt_file),$tmp); + $app->system->exec_safe('openssl x509 -noout -text -in ?', $crt_file); + $tmp = $app->system->last_exec_out(); $crt_data = implode("\n",$tmp); if(stristr($crt_data,'.acme.invalid')) { $data["new"]["ssl_action"] = ''; @@ -303,7 +303,7 @@ class nginx_plugin { if($data['new']['ssl_action'] == 'del') { if(file_exists($web_config['CA_path'].'/openssl.cnf') && !is_link($web_config['CA_path'].'/openssl.cnf')) { - exec("openssl ca -batch -config ".$web_config['CA_path']."/openssl.cnf -passin pass:".$web_config['CA_pass']." -revoke ".escapeshellcmd($crt_file)); + $app->system->exec_safe("openssl ca -batch -config ? -passin pass:? -revoke ?", $web_config['CA_path']."/openssl.cnf", $web_config['CA_pass'], $crt_file); $app->log("Revoking CA-signed SSL Cert for: $domain", LOGLEVEL_DEBUG); }; $app->system->unlink($csr_file); @@ -439,31 +439,31 @@ class nginx_plugin { //* Check if a ispconfigend user and group exists and create them if(!$app->system->is_group('ispconfigend')) { - exec('groupadd --gid '.($connect_userid_to_webid_start + 10000).' ispconfigend'); + $app->system->exec_safe('groupadd --gid ? ispconfigend', $connect_userid_to_webid_start + 10000); } if(!$app->system->is_user('ispconfigend')) { - exec('useradd -g ispconfigend -d /usr/local/ispconfig --uid '.($connect_userid_to_webid_start + 10000).' ispconfigend'); + $app->system->exec_safe('useradd -g ispconfigend -d /usr/local/ispconfig --uid ? ispconfigend', $connect_userid_to_webid_start + 10000); } } else { $fixed_uid_param = ''; $fixed_gid_param = ''; } - $groupname = escapeshellcmd($data['new']['system_group']); + $groupname = $data['new']['system_group']; if($data['new']['system_group'] != '' && !$app->system->is_group($data['new']['system_group'])) { - exec('groupadd '.$fixed_gid_param.' '.$groupname); - if($nginx_chrooted) $app->system->_exec('chroot '.escapeshellcmd($web_config['website_basedir']).' groupadd '.$groupname); + $app->system->exec_safe('groupadd ? ?', $fixed_gid_param, $groupname); + if($nginx_chrooted) $app->system->exec_safe('chroot ? groupadd ?', $web_config['website_basedir'], $groupname); $app->log('Adding the group: '.$groupname, LOGLEVEL_DEBUG); } - $username = escapeshellcmd($data['new']['system_user']); + $username = $data['new']['system_user']; if($data['new']['system_user'] != '' && !$app->system->is_user($data['new']['system_user'])) { if($web_config['add_web_users_to_sshusers_group'] == 'y') { - exec('useradd -d '.escapeshellcmd($data['new']['document_root'])." -g $groupname $fixed_uid_param -G sshusers $username -s /bin/false"); - if($nginx_chrooted) $app->system->_exec('chroot '.escapeshellcmd($web_config['website_basedir']).' useradd -d '.escapeshellcmd($data['new']['document_root'])." -g $groupname $fixed_uid_param -G sshusers $username -s /bin/false"); + $app->system->exec_safe('useradd -d ? -g ? ? -G sshusers ? -s /bin/false', $data['new']['document_root'], $groupname, $fixed_uid_param, $username); + if($nginx_chrooted) $app->system->exec_safe('chroot ? useradd -d ? -g ? ? -G sshusers ? -s /bin/false', $web_config['website_basedir'], $data['new']['document_root'], $groupname, $fixed_uid_param, $username); } else { - exec('useradd -d '.escapeshellcmd($data['new']['document_root'])." -g $groupname $fixed_uid_param $username -s /bin/false"); - if($nginx_chrooted) $app->system->_exec('chroot '.escapeshellcmd($web_config['website_basedir']).' useradd -d '.escapeshellcmd($data['new']['document_root'])." -g $groupname $fixed_uid_param $username -s /bin/false"); + $app->system->exec_safe('useradd -d ? -g ? ? ? -s /bin/false', $data['new']['document_root'], $groupname, $fixed_uid_param, $username); + if($nginx_chrooted) $app->system->exec_safe('chroot ? useradd -d ? -g ? ? ? -s /bin/false', $web_config['website_basedir'], $data['new']['document_root'], $groupname, $fixed_uid_param, $username); } $app->log('Adding the user: '.$username, LOGLEVEL_DEBUG); } @@ -486,7 +486,7 @@ class nginx_plugin { if(substr($tmp_symlink, -1, 1) == '/') $tmp_symlink = substr($tmp_symlink, 0, -1); // create the symlinks, if not exist if(is_link($tmp_symlink)) { - exec('rm -f '.escapeshellcmd($tmp_symlink)); + $app->system->exec_safe('rm -f ?', $tmp_symlink); $app->log('Removed symlink: rm -f '.$tmp_symlink, LOGLEVEL_DEBUG); } } @@ -510,12 +510,12 @@ class nginx_plugin { } //* Unmount the old log directory bfore we move the log dir - exec('umount '.escapeshellcmd($old_dir.'/log')); + $app->system->exec_safe('umount ?', $old_dir.'/log'); //* Create new base directory, if it does not exist yet if(!is_dir($new_dir)) $app->system->mkdirpath($new_dir); $app->system->web_folder_protection($data['old']['document_root'], false); - exec('mv '.escapeshellarg($data['old']['document_root']).' '.escapeshellarg($new_dir)); + $app->system->exec_safe('mv ? ?', $data['old']['document_root'], $new_dir); //$app->system->rename($data['old']['document_root'],$new_dir); $app->log('Moving site to new document root: mv '.$data['old']['document_root'].' '.$new_dir, LOGLEVEL_DEBUG); @@ -523,17 +523,17 @@ class nginx_plugin { $data['new']['php_open_basedir'] = str_replace($data['old']['document_root'], $data['new']['document_root'], $data['old']['php_open_basedir']); //* Change the owner of the website files to the new website owner - exec('chown --recursive --from='.escapeshellcmd($data['old']['system_user']).':'.escapeshellcmd($data['old']['system_group']).' '.escapeshellcmd($data['new']['system_user']).':'.escapeshellcmd($data['new']['system_group']).' '.$new_dir); + $app->system->exec_safe('chown --recursive --from=?:? ?:? ?', $data['old']['system_user'], $data['old']['system_group'], $data['new']['system_user'], $data['new']['system_group'], $new_dir); //* Change the home directory and group of the website user - $command = 'killall -u '.escapeshellcmd($data['new']['system_user']).' ; usermod'; - $command .= ' --home '.escapeshellcmd($data['new']['document_root']); - $command .= ' --gid '.escapeshellcmd($data['new']['system_group']); - $command .= ' '.escapeshellcmd($data['new']['system_user']).' 2>/dev/null'; - exec($command); + $command = 'killall -u ? ; usermod'; + $command .= ' --home ?'; + $command .= ' --gid ?'; + $command .= ' ? 2>/dev/null'; + $app->system->exec_safe($command, $data['new']['system_user'], $data['new']['document_root'], $data['new']['system_group'], $data['new']['system_user']); } - if($nginx_chrooted) $app->system->_exec('chroot '.escapeshellcmd($web_config['website_basedir']).' '.$command); + if($nginx_chrooted) $app->system->exec_safe('chroot ? ?', $web_config['website_basedir'], $command); //* Change the log mount /* @@ -555,7 +555,7 @@ class nginx_plugin { $app->system->replaceLine('/etc/fstab', $fstab_line_old, $fstab_line, 0, 1); } - exec('mount --bind '.escapeshellarg('/var/log/ispconfig/httpd/'.$data['new']['domain']).' '.escapeshellarg($data['new']['document_root'].'/'.$log_folder)); + $app->system->exec_safe('mount --bind ? ?', '/var/log/ispconfig/httpd/'.$data['new']['domain'], $data['new']['document_root'].'/'.$log_folder); } @@ -567,11 +567,9 @@ class nginx_plugin { if(!is_dir($data['new']['document_root'].'/' . $web_folder)) $app->system->mkdirpath($data['new']['document_root'].'/' . $web_folder); if(!is_dir($data['new']['document_root'].'/' . $web_folder . '/error') and $data['new']['errordocs']) $app->system->mkdirpath($data['new']['document_root'].'/' . $web_folder . '/error'); if($data['new']['stats_type'] != '' && !is_dir($data['new']['document_root'].'/' . $web_folder . '/stats')) $app->system->mkdirpath($data['new']['document_root'].'/' . $web_folder . '/stats'); - //if(!is_dir($data['new']['document_root'].'/'.$log_folder)) exec('mkdir -p '.$data['new']['document_root'].'/'.$log_folder); if(!is_dir($data['new']['document_root'].'/ssl')) $app->system->mkdirpath($data['new']['document_root'].'/ssl'); if(!is_dir($data['new']['document_root'].'/cgi-bin')) $app->system->mkdirpath($data['new']['document_root'].'/cgi-bin'); if(!is_dir($data['new']['document_root'].'/tmp')) $app->system->mkdirpath($data['new']['document_root'].'/tmp'); - //if(!is_dir($data['new']['document_root'].'/webdav')) $app->system->mkdirpath($data['new']['document_root'].'/webdav'); if(!is_dir($data['new']['document_root'].'/.ssh')) { $app->system->mkdirpath($data['new']['document_root'].'/.ssh'); @@ -591,7 +589,7 @@ class nginx_plugin { // Remove the symlink for the site, if site is renamed if($this->action == 'update' && $data['old']['domain'] != '' && $data['new']['domain'] != $data['old']['domain']) { - if(is_dir('/var/log/ispconfig/httpd/'.$data['old']['domain'])) exec('rm -rf /var/log/ispconfig/httpd/'.$data['old']['domain']); + if(is_dir('/var/log/ispconfig/httpd/'.$data['old']['domain'])) $app->system->exec_safe('rm -rf ?', '/var/log/ispconfig/httpd/'.$data['old']['domain']); if(is_link($data['old']['document_root'].'/'.$old_log_folder)) $app->system->unlink($data['old']['document_root'].'/'.$old_log_folder); //* remove old log mount @@ -599,19 +597,18 @@ class nginx_plugin { $app->system->removeLine('/etc/fstab', $fstab_line); //* Unmount log directory - //exec('fuser -km '.escapeshellarg($data['old']['document_root'].'/'.$old_log_folder)); - exec('umount '.escapeshellarg($data['old']['document_root'].'/'.$old_log_folder)); + $app->system->exec_safe('umount ?', $data['old']['document_root'].'/'.$old_log_folder); } //* Create the log dir if nescessary and mount it if(!is_dir($data['new']['document_root'].'/'.$log_folder) || !is_dir('/var/log/ispconfig/httpd/'.$data['new']['domain']) || is_link($data['new']['document_root'].'/'.$log_folder)) { if(is_link($data['new']['document_root'].'/'.$log_folder)) unlink($data['new']['document_root'].'/'.$log_folder); - if(!is_dir('/var/log/ispconfig/httpd/'.$data['new']['domain'])) exec('mkdir -p /var/log/ispconfig/httpd/'.$data['new']['domain']); + if(!is_dir('/var/log/ispconfig/httpd/'.$data['new']['domain'])) $app->system->exec_safe('mkdir -p ?', '/var/log/ispconfig/httpd/'.$data['new']['domain']); $app->system->mkdirpath($data['new']['document_root'].'/'.$log_folder); $app->system->chown($data['new']['document_root'].'/'.$log_folder, 'root'); $app->system->chgrp($data['new']['document_root'].'/'.$log_folder, 'root'); $app->system->chmod($data['new']['document_root'].'/'.$log_folder, 0755); - exec('mount --bind '.escapeshellarg('/var/log/ispconfig/httpd/'.$data['new']['domain']).' '.escapeshellarg($data['new']['document_root'].'/'.$log_folder)); + $app->system->exec_safe('mount --bind ? ?', '/var/log/ispconfig/httpd/'.$data['new']['domain'], $data['new']['document_root'].'/'.$log_folder); //* add mountpoint to fstab $fstab_line = '/var/log/ispconfig/httpd/'.$data['new']['domain'].' '.$data['new']['document_root'].'/'.$log_folder.' none bind,nobootwait'; $fstab_line .= @($web_config['network_filesystem'] == 'y')?',_netdev 0 0':' 0 0'; @@ -636,7 +633,7 @@ class nginx_plugin { if(substr($tmp_symlink, -1, 1) == '/') $tmp_symlink = substr($tmp_symlink, 0, -1); // remove the symlinks, if not exist if(is_link($tmp_symlink)) { - exec('rm -f '.escapeshellcmd($tmp_symlink)); + $app->system->exec_safe('rm -f ?', $tmp_symlink); $app->log('Removed symlink: rm -f '.$tmp_symlink, LOGLEVEL_DEBUG); } } @@ -657,11 +654,10 @@ class nginx_plugin { } // create the symlinks, if not exist if(!is_link($tmp_symlink)) { - // exec("ln -s ".escapeshellcmd($data["new"]["document_root"])."/ ".escapeshellcmd($tmp_symlink)); if ($web_config["website_symlinks_rel"] == 'y') { - $app->system->create_relative_link(escapeshellcmd($data["new"]["document_root"]), escapeshellcmd($tmp_symlink)); + $app->system->create_relative_link($data["new"]["document_root"], $tmp_symlink); } else { - exec("ln -s ".escapeshellcmd($data["new"]["document_root"])."/ ".escapeshellcmd($tmp_symlink)); + $app->system->exec_safe("ln -s ? ?", $data["new"]["document_root"]."/", $tmp_symlink); } $app->log('Creating symlink: ln -s '.$data['new']['document_root'].'/ '.$tmp_symlink, LOGLEVEL_DEBUG); @@ -681,69 +677,65 @@ class nginx_plugin { // Copy the error pages if($data['new']['errordocs']) { - $error_page_path = escapeshellcmd($data['new']['document_root']).'/' . $web_folder . '/error/'; - if (file_exists($conf['rootpath'] . '/conf-custom/error/'.substr(escapeshellcmd($conf['language']), 0, 2))) { - exec('cp ' . $conf['rootpath'] . '/conf-custom/error/'.substr(escapeshellcmd($conf['language']), 0, 2).'/* '.$error_page_path); + $error_page_path = $data['new']['document_root'].'/' . $web_folder . '/error/'; + if (file_exists($conf['rootpath'] . '/conf-custom/error/'.substr($conf['language'], 0, 2))) { + $app->system->exec_safe('cp ?* ?', $conf['rootpath'] . '/conf-custom/error/'.substr($conf['language'], 0, 2).'/', $error_page_path); } else { if (file_exists($conf['rootpath'] . '/conf-custom/error/400.html')) { - exec('cp '. $conf['rootpath'] . '/conf-custom/error/*.html '.$error_page_path); + $app->system->exec_safe('cp ?*.html ?', $conf['rootpath'] . '/conf-custom/error/', $error_page_path); } else { - exec('cp ' . $conf['rootpath'] . '/conf/error/'.substr(escapeshellcmd($conf['language']), 0, 2).'/* '.$error_page_path); + $app->system->exec_safe('cp ?* ?', $conf['rootpath'] . '/conf/error/'.substr($conf['language'], 0, 2).'/', $error_page_path); } } - exec('chmod -R a+r '.$error_page_path); + $app->system->exec_safe('chmod -R a+r ?', $error_page_path); } //* Copy the web skeleton files only when there is no index.ph or index.html file yet if(!file_exists($data['new']['document_root'].'/'.$web_folder.'/index.html') && !file_exists($data['new']['document_root'].'/'.$web_folder.'/index.php')) { - if (file_exists($conf['rootpath'] . '/conf-custom/index/standard_index.html_'.substr(escapeshellcmd($conf['language']), 0, 2))) { - if(!file_exists(escapeshellcmd($data['new']['document_root']).'/' . $web_folder . '/index.html')) exec('cp ' . $conf['rootpath'] . '/conf-custom/index/standard_index.html_'.substr(escapeshellcmd($conf['language']), 0, 2).' '.escapeshellcmd($data['new']['document_root']).'/' . $web_folder . '/index.html'); + if (file_exists($conf['rootpath'] . '/conf-custom/index/standard_index.html_'.substr($conf['language']), 0, 2)) { + if(!file_exists($data['new']['document_root'].'/' . $web_folder . '/index.html')) $app->system->exec_safe('cp ? ?', $conf['rootpath'] . '/conf-custom/index/standard_index.html_'.substr($conf['language'], 0, 2), $data['new']['document_root'].'/' . $web_folder . '/index.html'); if(is_file($conf['rootpath'] . '/conf-custom/index/favicon.ico')) { - if(!file_exists(escapeshellcmd($data['new']['document_root']).'/' . $web_folder . '/favicon.ico')) exec('cp ' . $conf['rootpath'] . '/conf-custom/index/favicon.ico '.escapeshellcmd($data['new']['document_root']).'/' . $web_folder . '/'); + if(!file_exists($data['new']['document_root'].'/' . $web_folder . '/favicon.ico')) $app->system->exec_safe('cp ? ?', $conf['rootpath'] . '/conf-custom/index/favicon.ico', $data['new']['document_root'].'/' . $web_folder . '/'); } if(is_file($conf['rootpath'] . '/conf-custom/index/robots.txt')) { - if(!file_exists(escapeshellcmd($data['new']['document_root']).'/' . $web_folder . '/robots.txt')) exec('cp ' . $conf['rootpath'] . '/conf-custom/index/robots.txt '.escapeshellcmd($data['new']['document_root']).'/' . $web_folder . '/'); + if(!file_exists($data['new']['document_root'].'/' . $web_folder . '/robots.txt')) $app->system->exec_safe('cp ? ?', $conf['rootpath'] . '/conf-custom/index/robots.txt', $data['new']['document_root'].'/' . $web_folder . '/'); } - //if(is_file($conf['rootpath'] . '/conf-custom/index/.htaccess')) { - // exec('cp ' . $conf['rootpath'] . '/conf-custom/index/.htaccess '.escapeshellcmd($data['new']['document_root']).'/' . $web_folder . '/'); - //} } else { if (file_exists($conf['rootpath'] . '/conf-custom/index/standard_index.html')) { - if(!file_exists(escapeshellcmd($data['new']['document_root']).'/' . $web_folder . '/index.html')) exec('cp ' . $conf['rootpath'] . '/conf-custom/index/standard_index.html '.escapeshellcmd($data['new']['document_root']).'/' . $web_folder . '/index.html'); + if(!file_exists($data['new']['document_root'].'/' . $web_folder . '/index.html')) $app->system->exec_safe('cp ? ?', $conf['rootpath'] . '/conf-custom/index/standard_index.html', $data['new']['document_root'].'/' . $web_folder . '/index.html'); } else { - if(!file_exists(escapeshellcmd($data['new']['document_root']).'/' . $web_folder . '/index.html')) exec('cp ' . $conf['rootpath'] . '/conf/index/standard_index.html_'.substr(escapeshellcmd($conf['language']), 0, 2).' '.escapeshellcmd($data['new']['document_root']).'/' . $web_folder . '/index.html'); + if(!file_exists($data['new']['document_root'].'/' . $web_folder . '/index.html')) $app->system->exec_safe('cp ? ?', $conf['rootpath'] . '/conf/index/standard_index.html_'.substr($conf['language'], 0, 2), $data['new']['document_root'].'/' . $web_folder . '/index.html'); if(is_file($conf['rootpath'] . '/conf/index/favicon.ico')){ - if(!file_exists(escapeshellcmd($data['new']['document_root']).'/' . $web_folder . '/favicon.ico')) exec('cp ' . $conf['rootpath'] . '/conf/index/favicon.ico '.escapeshellcmd($data['new']['document_root']).'/' . $web_folder . '/'); + if(!file_exists($data['new']['document_root'].'/' . $web_folder . '/favicon.ico')) $app->system->exec_safe('cp ? ?', $conf['rootpath'] . '/conf/index/favicon.ico', $data['new']['document_root'].'/' . $web_folder . '/'); } if(is_file($conf['rootpath'] . '/conf/index/robots.txt')){ - if(!file_exists(escapeshellcmd($data['new']['document_root']).'/' . $web_folder . '/robots.txt')) exec('cp ' . $conf['rootpath'] . '/conf/index/robots.txt '.escapeshellcmd($data['new']['document_root']).'/' . $web_folder . '/'); + if(!file_exists($data['new']['document_root'].'/' . $web_folder . '/robots.txt')) $app->system->exec_safe('cp ? ?', $conf['rootpath'] . '/conf/index/robots.txt', $data['new']['document_root'].'/' . $web_folder . '/'); } - //if(is_file($conf['rootpath'] . '/conf/index/.htaccess')) exec('cp ' . $conf['rootpath'] . '/conf/index/.htaccess '.escapeshellcmd($data['new']['document_root']).'/' . $web_folder . '/'); } } } - exec('chmod -R a+r '.escapeshellcmd($data['new']['document_root']).'/' . $web_folder . '/'); + $app->system->exec_safe('chmod -R a+r ?', $data['new']['document_root'].'/' . $web_folder . '/'); //** Copy the error documents on update when the error document checkbox has been activated and was deactivated before } elseif ($this->action == 'update' && ($data['new']['type'] == 'vhost' || $data['new']['type'] == 'vhostsubdomain' || $data['new']['type'] == 'vhostalias') && $data['old']['errordocs'] == 0 && $data['new']['errordocs'] == 1) { - $error_page_path = escapeshellcmd($data['new']['document_root']).'/' . $web_folder . '/error/'; - if (file_exists($conf['rootpath'] . '/conf-custom/error/'.substr(escapeshellcmd($conf['language']), 0, 2))) { - exec('cp ' . $conf['rootpath'] . '/conf-custom/error/'.substr(escapeshellcmd($conf['language']), 0, 2).'/* '.$error_page_path); + $error_page_path = $data['new']['document_root'].'/' . $web_folder . '/error/'; + if (file_exists($conf['rootpath'] . '/conf-custom/error/'.substr($conf['language'], 0, 2))) { + $app->system->exec_safe('cp ?* ?', $conf['rootpath'] . '/conf-custom/error/'.substr($conf['language'], 0, 2).'/', $error_page_path); } else { if (file_exists($conf['rootpath'] . '/conf-custom/error/400.html')) { - exec('cp ' . $conf['rootpath'] . '/conf-custom/error/*.html '.$error_page_path); + $app->system->exec_safe('cp ?*.html ?', $conf['rootpath'] . '/conf-custom/error/', $error_page_path); } else { - exec('cp ' . $conf['rootpath'] . '/conf/error/'.substr(escapeshellcmd($conf['language']), 0, 2).'/* '.$error_page_path); + $app->system->exec_safe('cp ?* ?', $conf['rootpath'] . '/conf/error/'.substr($conf['language'], 0, 2).'/', $error_page_path); } } - exec('chmod -R a+r '.$error_page_path); - exec('chown -R '.$data['new']['system_user'].':'.$data['new']['system_group'].' '.$error_page_path); + $app->system->exec_safe('chmod -R a+r ?', $error_page_path); + $app->system->exec_safe('chown -R ?:? ?', $data['new']['system_user'], $data['new']['system_group'], $error_page_path); } // end copy error docs // Set the quota for the user, but only for vhosts, not vhostsubdomains or vhostalias @@ -758,39 +750,39 @@ class nginx_plugin { } // get the primitive folder for document_root and the filesystem, will need it later. - $df_output=explode(" ", exec("df -T " . escapeshellarg($data['new']['document_root']) . "|awk 'END{print \$2,\$NF}'")); + $df_output=explode(" ", $app->system->exec_safe("df -T ?|awk 'END{print \$2,\$NF}'", $data['new']['document_root'])); $file_system = $df_output[0]; $primitive_root = $df_output[1]; if($file_system == 'xfs') { - exec("xfs_quota -x -c " . escapeshellarg("limit -u bsoft=$mb_soft" . 'm'. " bhard=$mb_hard" . 'm'. " " . $username) . " " . escapeshellarg($primitive_root)); + $app->system->exec_safe("xfs_quota -x -c ? ?", "limit -u bsoft=$mb_soft" . 'm'. " bhard=$mb_hard" . 'm'. " " . $username, $primitive_root); // xfs only supports timers globally, not per user. - exec("xfs_quota -x -c 'timer -bir -i 604800' " . escapeshellarg($primitive_root)); + $app->system->exec_safe("xfs_quota -x -c 'timer -bir -i 604800' ?", $primitive_root); unset($project_uid, $username_position, $xfs_projects); unset($primitive_root, $df_output, $mb_hard, $mb_soft); } else { if($app->system->is_installed('setquota')) { - exec('setquota -u '. $username . ' ' . $blocks_soft . ' ' . $blocks_hard . ' 0 0 -a &> /dev/null'); - exec('setquota -T -u '.$username.' 604800 604800 -a &> /dev/null'); + $app->system->exec_safe('setquota -u ? ? ? 0 0 -a &> /dev/null', $username, $blocks_soft, $blocks_hard); + $app->system->exec_safe('setquota -T -u ? 604800 604800 -a &> /dev/null', $username); } } } if($this->action == 'insert' || $data["new"]["system_user"] != $data["old"]["system_user"]) { // Chown and chmod the directories below the document root - $app->system->_exec('chown -R '.$username.':'.$groupname.' '.escapeshellcmd($data['new']['document_root']).'/' . $web_folder); + $app->system->exec_safe('chown -R ?:? ?', $username, $groupname, $data['new']['document_root'].'/' . $web_folder); // The document root itself has to be owned by root in normal level and by the web owner in security level 20 if($web_config['security_level'] == 20) { - $app->system->_exec('chown '.$username.':'.$groupname.' '.escapeshellcmd($data['new']['document_root']).'/' . $web_folder); + $app->system->exec_safe('chown ?:? ?', $username, $groupname, $data['new']['document_root'].'/' . $web_folder); } else { - $app->system->_exec('chown root:root '.escapeshellcmd($data['new']['document_root']).'/' . $web_folder); + $app->system->exec_safe('chown root:root ?', $data['new']['document_root'].'/' . $web_folder); } } //* add the nginx user to the client group if this is a vhost and security level is set to high, no matter if this is an insert or update and regardless of set_folder_permissions_on_update - if($data['new']['type'] == 'vhost' && $web_config['security_level'] == 20) $app->system->add_user_to_group($groupname, escapeshellcmd($web_config['nginx_user'])); + if($data['new']['type'] == 'vhost' && $web_config['security_level'] == 20) $app->system->add_user_to_group($groupname, $web_config['nginx_user']); //* If the security level is set to high if(($this->action == 'insert' && $data['new']['type'] == 'vhost') or ($web_config['set_folder_permissions_on_update'] == 'y' && $data['new']['type'] == 'vhost') or ($web_folder != $old_web_folder && $data['new']['type'] == 'vhost')) { @@ -820,18 +812,18 @@ class nginx_plugin { if($web_config['add_web_users_to_sshusers_group'] == 'y') { $command = 'usermod'; $command .= ' --groups sshusers'; - $command .= ' '.escapeshellcmd($data['new']['system_user']).' 2>/dev/null'; - $app->system->_exec($command); + $command .= ' ? 2>/dev/null'; + $app->system->exec_safe($command, $data['new']['system_user']); } //* if we have a chrooted nginx environment if($nginx_chrooted) { - $app->system->_exec('chroot '.escapeshellcmd($web_config['website_basedir']).' '.$command); + $app->system->exec_safe('chroot ? ?', $web_config['website_basedir'], $command); //* add the nginx user to the client group in the chroot environment $tmp_groupfile = $app->system->server_conf['group_datei']; $app->system->server_conf['group_datei'] = $web_config['website_basedir'].'/etc/group'; - $app->system->add_user_to_group($groupname, escapeshellcmd($web_config['nginx_user'])); + $app->system->add_user_to_group($groupname, $web_config['nginx_user']); $app->system->server_conf['group_datei'] = $tmp_groupfile; unset($tmp_groupfile); } @@ -945,7 +937,7 @@ class nginx_plugin { if($data['new']['type'] == 'vhost') { // Change the ownership of the error log to the root user - if(!@is_file('/var/log/ispconfig/httpd/'.$data['new']['domain'].'/error.log')) exec('touch '.escapeshellcmd('/var/log/ispconfig/httpd/'.$data['new']['domain'].'/error.log')); + if(!@is_file('/var/log/ispconfig/httpd/'.$data['new']['domain'].'/error.log')) $app->system->exec_safe('touch ?', '/var/log/ispconfig/httpd/'.$data['new']['domain'].'/error.log'); $app->system->chown('/var/log/ispconfig/httpd/'.$data['new']['domain'].'/error.log', 'root'); $app->system->chgrp('/var/log/ispconfig/httpd/'.$data['new']['domain'].'/error.log', 'root'); } @@ -1023,14 +1015,14 @@ class nginx_plugin { } if($default_php_fpm){ - $pool_dir = escapeshellcmd($web_config['php_fpm_pool_dir']); + $pool_dir = $web_config['php_fpm_pool_dir']; } else { $pool_dir = $custom_php_fpm_pool_dir; } $pool_dir = trim($pool_dir); if(substr($pool_dir, -1) != '/') $pool_dir .= '/'; $pool_name = 'web'.$data['new']['domain_id']; - $socket_dir = escapeshellcmd($web_config['php_fpm_socket_dir']); + $socket_dir = $web_config['php_fpm_socket_dir']; if(substr($socket_dir, -1) != '/') $socket_dir .= '/'; if($data['new']['php_fpm_use_socket'] == 'y'){ @@ -1814,7 +1806,7 @@ class nginx_plugin { $basic_auth_locations = $this->_create_web_folder_auth_configuration($data['new']); if(is_array($basic_auth_locations) && !empty($basic_auth_locations)) $tpl->setLoop('basic_auth_locations', $basic_auth_locations); - $vhost_file = escapeshellcmd($web_config['nginx_vhost_conf_dir'].'/'.$data['new']['domain'].'.vhost'); + $vhost_file = $web_config['nginx_vhost_conf_dir'].'/'.$data['new']['domain'].'.vhost'; //* Make a backup copy of vhost file if(file_exists($vhost_file)) copy($vhost_file, $vhost_file.'~'); @@ -1825,17 +1817,17 @@ class nginx_plugin { //* Set the symlink to enable the vhost //* First we check if there is a old type of symlink and remove it - $vhost_symlink = escapeshellcmd($web_config['nginx_vhost_conf_enabled_dir'].'/'.$data['new']['domain'].'.vhost'); + $vhost_symlink = $web_config['nginx_vhost_conf_enabled_dir'].'/'.$data['new']['domain'].'.vhost'; if(is_link($vhost_symlink)) $app->system->unlink($vhost_symlink); //* Remove old or changed symlinks if($data['new']['subdomain'] != $data['old']['subdomain'] or $data['new']['active'] == 'n') { - $vhost_symlink = escapeshellcmd($web_config['nginx_vhost_conf_enabled_dir'].'/900-'.$data['new']['domain'].'.vhost'); + $vhost_symlink = $web_config['nginx_vhost_conf_enabled_dir'].'/900-'.$data['new']['domain'].'.vhost'; if(is_link($vhost_symlink)) { $app->system->unlink($vhost_symlink); $app->log('Removing symlink: '.$vhost_symlink.'->'.$vhost_file, LOGLEVEL_DEBUG); } - $vhost_symlink = escapeshellcmd($web_config['nginx_vhost_conf_enabled_dir'].'/100-'.$data['new']['domain'].'.vhost'); + $vhost_symlink = $web_config['nginx_vhost_conf_enabled_dir'].'/100-'.$data['new']['domain'].'.vhost'; if(is_link($vhost_symlink)) { $app->system->unlink($vhost_symlink); $app->log('Removing symlink: '.$vhost_symlink.'->'.$vhost_file, LOGLEVEL_DEBUG); @@ -1844,9 +1836,9 @@ class nginx_plugin { //* New symlink if($data['new']['subdomain'] == '*') { - $vhost_symlink = escapeshellcmd($web_config['nginx_vhost_conf_enabled_dir'].'/900-'.$data['new']['domain'].'.vhost'); + $vhost_symlink = $web_config['nginx_vhost_conf_enabled_dir'].'/900-'.$data['new']['domain'].'.vhost'; } else { - $vhost_symlink = escapeshellcmd($web_config['nginx_vhost_conf_enabled_dir'].'/100-'.$data['new']['domain'].'.vhost'); + $vhost_symlink = $web_config['nginx_vhost_conf_enabled_dir'].'/100-'.$data['new']['domain'].'.vhost'; } if($data['new']['active'] == 'y' && !is_link($vhost_symlink)) { symlink($vhost_file, $vhost_symlink); @@ -1855,22 +1847,22 @@ class nginx_plugin { // remove old symlink and vhost file, if domain name of the site has changed if($this->action == 'update' && $data['old']['domain'] != '' && $data['new']['domain'] != $data['old']['domain']) { - $vhost_symlink = escapeshellcmd($web_config['nginx_vhost_conf_enabled_dir'].'/900-'.$data['old']['domain'].'.vhost'); + $vhost_symlink = $web_config['nginx_vhost_conf_enabled_dir'].'/900-'.$data['old']['domain'].'.vhost'; if(is_link($vhost_symlink)) { $app->system->unlink($vhost_symlink); $app->log('Removing symlink: '.$vhost_symlink.'->'.$vhost_file, LOGLEVEL_DEBUG); } - $vhost_symlink = escapeshellcmd($web_config['nginx_vhost_conf_enabled_dir'].'/100-'.$data['old']['domain'].'.vhost'); + $vhost_symlink = $web_config['nginx_vhost_conf_enabled_dir'].'/100-'.$data['old']['domain'].'.vhost'; if(is_link($vhost_symlink)) { $app->system->unlink($vhost_symlink); $app->log('Removing symlink: '.$vhost_symlink.'->'.$vhost_file, LOGLEVEL_DEBUG); } - $vhost_symlink = escapeshellcmd($web_config['nginx_vhost_conf_enabled_dir'].'/'.$data['old']['domain'].'.vhost'); + $vhost_symlink = $web_config['nginx_vhost_conf_enabled_dir'].'/'.$data['old']['domain'].'.vhost'; if(is_link($vhost_symlink)) { $app->system->unlink($vhost_symlink); $app->log('Removing symlink: '.$vhost_symlink.'->'.$vhost_file, LOGLEVEL_DEBUG); } - $vhost_file = escapeshellcmd($web_config['nginx_vhost_conf_dir'].'/'.$data['old']['domain'].'.vhost'); + $vhost_file = $web_config['nginx_vhost_conf_dir'].'/'.$data['old']['domain'].'.vhost'; $app->system->unlink($vhost_file); $app->log('Removing file: '.$vhost_file, LOGLEVEL_DEBUG); } @@ -2062,14 +2054,10 @@ class nginx_plugin { if($data['old']['type'] == 'vhost' || $data['old']['type'] == 'vhostsubdomain' || $data['old']['type'] == 'vhostalias'){ if(is_array($log_folders) && !empty($log_folders)){ foreach($log_folders as $log_folder){ - //if($app->system->is_mounted($data['old']['document_root'].'/'.$log_folder)) exec('umount '.escapeshellarg($data['old']['document_root'].'/'.$log_folder)); - //exec('fuser -km '.escapeshellarg($data['old']['document_root'].'/'.$log_folder).' 2>/dev/null'); - exec('umount '.escapeshellarg($data['old']['document_root'].'/'.$log_folder).' 2>/dev/null'); + $app->system->exec_safe('umount ? 2>/dev/null', $data['old']['document_root'].'/'.$log_folder); } } else { - //if($app->system->is_mounted($data['old']['document_root'].'/'.$log_folder)) exec('umount '.escapeshellarg($data['old']['document_root'].'/'.$log_folder)); - //exec('fuser -km '.escapeshellarg($data['old']['document_root'].'/'.$log_folder).' 2>/dev/null'); - exec('umount '.escapeshellarg($data['old']['document_root'].'/'.$log_folder).' 2>/dev/null'); + $app->system->exec_safe('umount ? 2>/dev/null', $data['old']['document_root'].'/'.$log_folder); } // remove letsencrypt if it exists (renew will always fail otherwise) @@ -2109,19 +2097,19 @@ class nginx_plugin { } else { //* This is a website // Deleting the vhost file, symlink and the data directory - $vhost_file = escapeshellcmd($web_config['nginx_vhost_conf_dir'].'/'.$data['old']['domain'].'.vhost'); + $vhost_file = $web_config['nginx_vhost_conf_dir'].'/'.$data['old']['domain'].'.vhost'; - $vhost_symlink = escapeshellcmd($web_config['nginx_vhost_conf_enabled_dir'].'/'.$data['old']['domain'].'.vhost'); + $vhost_symlink = $web_config['nginx_vhost_conf_enabled_dir'].'/'.$data['old']['domain'].'.vhost'; if(is_link($vhost_symlink)){ $app->system->unlink($vhost_symlink); $app->log('Removing symlink: '.$vhost_symlink.'->'.$vhost_file, LOGLEVEL_DEBUG); } - $vhost_symlink = escapeshellcmd($web_config['nginx_vhost_conf_enabled_dir'].'/900-'.$data['old']['domain'].'.vhost'); + $vhost_symlink = $web_config['nginx_vhost_conf_enabled_dir'].'/900-'.$data['old']['domain'].'.vhost'; if(is_link($vhost_symlink)){ $app->system->unlink($vhost_symlink); $app->log('Removing symlink: '.$vhost_symlink.'->'.$vhost_file, LOGLEVEL_DEBUG); } - $vhost_symlink = escapeshellcmd($web_config['nginx_vhost_conf_enabled_dir'].'/100-'.$data['old']['domain'].'.vhost'); + $vhost_symlink = $web_config['nginx_vhost_conf_enabled_dir'].'/100-'.$data['old']['domain'].'.vhost'; if(is_link($vhost_symlink)){ $app->system->unlink($vhost_symlink); $app->log('Removing symlink: '.$vhost_symlink.'->'.$vhost_file, LOGLEVEL_DEBUG); @@ -2131,11 +2119,11 @@ class nginx_plugin { $app->log('Removing vhost file: '.$vhost_file, LOGLEVEL_DEBUG); if($data['old']['type'] == 'vhost' || $data['old']['type'] == 'vhostsubdomain' || $data['old']['type'] == 'vhostalias') { - $docroot = escapeshellcmd($data['old']['document_root']); + $docroot = $data['old']['document_root']; if($docroot != '' && !stristr($docroot, '..')) { if($data['old']['type'] == 'vhost') { // this is a vhost - we delete everything in here. - exec('rm -rf '.$docroot); + $app->system->exec_safe('rm -rf ?', $docroot); } elseif(!stristr($data['old']['web_folder'], '..')) { // this is a vhost subdomain // IMPORTANT: do some folder checks before we delete this! @@ -2185,7 +2173,7 @@ class nginx_plugin { unset($used_paths); } - if($do_delete === true && $delete_folder !== '') exec('rm -rf '.$docroot.'/'.$delete_folder); + if($do_delete === true && $delete_folder !== '') $app->system->exec_safe('rm -rf ?', $docroot.'/'.$delete_folder); unset($delete_folder); unset($path_elements); @@ -2198,12 +2186,12 @@ class nginx_plugin { $fastcgi_starter_path = str_replace('[system_user]', $data['old']['system_user'], $web_config['fastcgi_starter_path']); if($data['old']['type'] == 'vhost') { if (is_dir($fastcgi_starter_path)) { - exec('rm -rf '.$fastcgi_starter_path); + $app->system->exec_safe('rm -rf ?', $fastcgi_starter_path); } } else { $fcgi_starter_script = $fastcgi_starter_path.$web_config['fastcgi_starter_script'].'_web'.$data['old']['domain_id']; if (file_exists($fcgi_starter_script)) { - exec('rm -f '.$fcgi_starter_script); + $app->system->exec_safe('rm -f ?', $fcgi_starter_script); } } } @@ -2224,12 +2212,12 @@ class nginx_plugin { $cgi_starter_path = str_replace('[system_user]', $data['old']['system_user'], $web_config['cgi_starter_path']); if($data['old']['type'] == 'vhost') { if (is_dir($cgi_starter_path)) { - exec('rm -rf '.$cgi_starter_path); + $app->system->exec_safe('rm -rf ?', $cgi_starter_path); } } else { $cgi_starter_script = $cgi_starter_path.'php-cgi-starter_web'.$data['old']['domain_id']; if (file_exists($cgi_starter_script)) { - exec('rm -f '.$cgi_starter_script); + $app->system->exec_safe('rm -f ?', $cgi_starter_script); } } } @@ -2258,16 +2246,16 @@ class nginx_plugin { } // Delete the log file directory - $vhost_logfile_dir = escapeshellcmd('/var/log/ispconfig/httpd/'.$data['old']['domain']); - if($data['old']['domain'] != '' && !stristr($vhost_logfile_dir, '..')) exec('rm -rf '.$vhost_logfile_dir); + $vhost_logfile_dir = '/var/log/ispconfig/httpd/'.$data['old']['domain']; + if($data['old']['domain'] != '' && !stristr($vhost_logfile_dir, '..')) $app->system->exec_safe('rm -rf ?', $vhost_logfile_dir); $app->log('Removing website logfile directory: '.$vhost_logfile_dir, LOGLEVEL_DEBUG); if($data['old']['type'] == 'vhost') { //delete the web user - $command = 'killall -u '.escapeshellcmd($data['old']['system_user']).' ; userdel'; - $command .= ' '.escapeshellcmd($data['old']['system_user']); - exec($command); - if($nginx_chrooted) $app->system->_exec('chroot '.escapeshellcmd($web_config['website_basedir']).' '.$command); + $command = 'killall -u ? ; userdel'; + $command .= ' ?'; + $app->system->exec_safe($command, $data['old']['system_user'], $data['old']['system_user']); + if($nginx_chrooted) $app->system->exec_safe('chroot ? ?', $web_config['website_basedir'], $command); } @@ -2288,7 +2276,7 @@ class nginx_plugin { if($mount_backup){ $web_backup_dir = $backup_dir.'/web'.$data_old['domain_id']; //** do not use rm -rf $web_backup_dir because database(s) may exits - exec(escapeshellcmd('rm -f '.$web_backup_dir.'/web'.$data_old['domain_id'].'_').'*'); + $app->system->exec_safe('rm -f ?*', $web_backup_dir.'/web'.$data_old['domain_id'].'_'); //* cleanup database $sql = "DELETE FROM web_backup WHERE server_id = ? AND parent_domain_id = ? AND filename LIKE ?"; $app->db->query($sql, $conf['server_id'], $data_old['domain_id'], "web".$data_old['domain_id']."_%"); @@ -2338,7 +2326,7 @@ class nginx_plugin { //* Get the folder path. if(substr($folder['path'], 0, 1) == '/') $folder['path'] = substr($folder['path'], 1); if(substr($folder['path'], -1) == '/') $folder['path'] = substr($folder['path'], 0, -1); - $folder_path = escapeshellcmd($website['document_root'].'/' . $web_folder . '/'.$folder['path']); + $folder_path = $website['document_root'].'/' . $web_folder . '/'.$folder['path']; if(substr($folder_path, -1) != '/') $folder_path .= '/'; //* Check if the resulting path is inside the docroot @@ -2444,7 +2432,7 @@ class nginx_plugin { if(substr($data['new']['path'], 0, 1) == '/') $data['new']['path'] = substr($data['new']['path'], 1); if(substr($data['new']['path'], -1) == '/') $data['new']['path'] = substr($data['new']['path'], 0, -1); - $new_folder_path = escapeshellcmd($website['document_root'].'/' . $web_folder . '/'.$data['new']['path']); + $new_folder_path = $website['document_root'].'/' . $web_folder . '/'.$data['new']['path']; if(substr($new_folder_path, -1) != '/') $new_folder_path .= '/'; //* Check if the resulting path is inside the docroot @@ -2491,7 +2479,7 @@ class nginx_plugin { //* Create the domain.auth file which is included in the vhost configuration file $app->uses('getconf'); $web_config = $app->getconf->get_server_config($conf['server_id'], 'web'); - $basic_auth_file = escapeshellcmd($web_config['nginx_vhost_conf_dir'].'/'.$website['domain'].'.auth'); + $basic_auth_file = $web_config['nginx_vhost_conf_dir'].'/'.$website['domain'].'.auth'; //$app->load('tpl'); //$tpl = new tpl(); //$tpl->newTemplate('nginx_http_authentication.auth.master'); @@ -2616,9 +2604,9 @@ class nginx_plugin { $content = str_replace('{SYSTEM_USER}', $data['new']['system_user'], $content); file_put_contents('/etc/init.d/hhvm_' . $data['new']['system_user'], $content); - exec('chmod +x /etc/init.d/hhvm_' . $data['new']['system_user'] . ' >/dev/null 2>&1'); - exec('/usr/sbin/update-rc.d hhvm_' . $data['new']['system_user'] . ' defaults >/dev/null 2>&1'); - exec('/etc/init.d/hhvm_' . $data['new']['system_user'] . ' restart >/dev/null 2>&1'); + $app->system->exec_safe('chmod +x ? >/dev/null 2>&1', '/etc/init.d/hhvm_' . $data['new']['system_user']); + $app->system->exec_safe('/usr/sbin/update-rc.d ? defaults >/dev/null 2>&1', 'hhvm_' . $data['new']['system_user']); + $app->system->exec_safe('/etc/init.d/hhvm_' . $data['new']['system_user'] . ' restart >/dev/null 2>&1'); if(is_dir('/etc/monit/conf.d')){ $monit_content = str_replace('{SYSTEM_USER}', $data['new']['system_user'], $monit_content); @@ -2630,7 +2618,7 @@ class nginx_plugin { } elseif($data['new']['php'] != 'hhvm' && $data['old']['php'] == 'hhvm') { if($data['old']['system_user'] != ''){ exec('/etc/init.d/hhvm_' . $data['old']['system_user'] . ' stop >/dev/null 2>&1'); - exec('/usr/sbin/update-rc.d hhvm_' . $data['old']['system_user'] . ' remove >/dev/null 2>&1'); + $app->system->exec_safe('/usr/sbin/update-rc.d remove >/dev/null 2>&1', 'hhvm_' . $data['old']['system_user']); unlink('/etc/init.d/hhvm_' . $data['old']['system_user']); if(is_file('/etc/hhvm/'.$data['old']['system_user'].'.ini')) unlink('/etc/hhvm/'.$data['old']['system_user'].'.ini'); } @@ -2743,7 +2731,7 @@ class nginx_plugin { $tpl->setVar('document_root', $data['new']['document_root']); $tpl->setVar('security_level', $web_config['security_level']); $tpl->setVar('domain', $data['new']['domain']); - $php_open_basedir = ($data['new']['php_open_basedir'] == '')?escapeshellcmd($data['new']['document_root']):escapeshellcmd($data['new']['php_open_basedir']); + $php_open_basedir = ($data['new']['php_open_basedir'] == '')?$data['new']['document_root']:$data['new']['php_open_basedir']; $tpl->setVar('php_open_basedir', $php_open_basedir); if($php_open_basedir != ''){ $tpl->setVar('enable_php_open_basedir', ''); @@ -2830,7 +2818,7 @@ class nginx_plugin { unset($tpl); // delete pool in all other PHP versions - $default_pool_dir = trim(escapeshellcmd($web_config['php_fpm_pool_dir'])); + $default_pool_dir = trim($web_config['php_fpm_pool_dir']); if(substr($default_pool_dir, -1) != '/') $default_pool_dir .= '/'; if($default_pool_dir != $pool_dir){ if ( @is_file($default_pool_dir.$pool_name.'.conf') ) { @@ -2875,7 +2863,7 @@ class nginx_plugin { } if($default_php_fpm){ - $pool_dir = escapeshellcmd($web_config['php_fpm_pool_dir']); + $pool_dir = $web_config['php_fpm_pool_dir']; } else { $pool_dir = $custom_php_fpm_pool_dir; } @@ -2890,7 +2878,7 @@ class nginx_plugin { } // delete pool in all other PHP versions - $default_pool_dir = trim(escapeshellcmd($web_config['php_fpm_pool_dir'])); + $default_pool_dir = trim($web_config['php_fpm_pool_dir']); if(substr($default_pool_dir, -1) != '/') $default_pool_dir .= '/'; if($default_pool_dir != $pool_dir){ if ( @is_file($default_pool_dir.$pool_name.'.conf') ) { @@ -3093,7 +3081,7 @@ class nginx_plugin { } if($app->system->is_group('client'.$client_id)){ - $app->system->_exec('groupdel client'.$client_id); + $app->system->exec_safe('groupdel ?', 'client'.$client_id); $app->log('Removed group client'.$client_id, LOGLEVEL_DEBUG); } } diff --git a/server/plugins-available/nginx_reverseproxy_plugin.inc.php b/server/plugins-available/nginx_reverseproxy_plugin.inc.php index b5881dbf24..1013042254 100644 --- a/server/plugins-available/nginx_reverseproxy_plugin.inc.php +++ b/server/plugins-available/nginx_reverseproxy_plugin.inc.php @@ -176,7 +176,7 @@ class nginx_reverseproxy_plugin { } - $vhost_file = escapeshellcmd($nginx_config['nginx_vhost_conf_dir'].'/'.$data['new']['domain'].'.vhost'); + $vhost_file = $nginx_config['nginx_vhost_conf_dir'].'/'.$data['new']['domain'].'.vhost'; //* Make a backup copy of vhost file copy($vhost_file, $vhost_file.'~'); @@ -187,7 +187,7 @@ class nginx_reverseproxy_plugin { // Set the symlink to enable the vhost - $vhost_symlink = escapeshellcmd($nginx_config['nginx_vhost_conf_enabled_dir'].'/'.$data['new']['domain'].'.vhost'); + $vhost_symlink = $nginx_config['nginx_vhost_conf_enabled_dir'].'/'.$data['new']['domain'].'.vhost'; if($data['new']['active'] == 'y' && !is_link($vhost_symlink)) { symlink($vhost_file, $vhost_symlink); $app->log('Creating symlink: '.$vhost_symlink.'->'.$vhost_file, LOGLEVEL_DEBUG); @@ -199,18 +199,18 @@ class nginx_reverseproxy_plugin { $app->log('Removing symlink: '.$vhost_symlink.'->'.$vhost_file, LOGLEVEL_DEBUG); } - if(!is_dir('/var/log/ispconfig/nginx/'.$data['new']['domain'])) exec('mkdir -p /var/log/ispconfig/nginx/'.$data['new']['domain']); + if(!is_dir('/var/log/ispconfig/nginx/'.$data['new']['domain'])) $app->system->exec_safe('mkdir -p ?', '/var/log/ispconfig/nginx/'.$data['new']['domain']); // remove old symlink and vhost file, if domain name of the site has changed if($this->action == 'update' && $data['old']['domain'] != '' && $data['new']['domain'] != $data['old']['domain']) { - $vhost_symlink = escapeshellcmd($nginx_config['nginx_vhost_conf_enabled_dir'].'/'.$data['old']['domain'].'.vhost'); + $vhost_symlink = $nginx_config['nginx_vhost_conf_enabled_dir'].'/'.$data['old']['domain'].'.vhost'; unlink($vhost_symlink); $app->log('Removing symlink: '.$vhost_symlink.'->'.$vhost_file, LOGLEVEL_DEBUG); - $vhost_file = escapeshellcmd($nginx_config['nginx_vhost_conf_dir'].'/'.$data['old']['domain'].'.vhost'); + $vhost_file = $nginx_config['nginx_vhost_conf_dir'].'/'.$data['old']['domain'].'.vhost'; unlink($vhost_file); $app->log('Removing file: '.$vhost_file, LOGLEVEL_DEBUG); - if(is_dir('/var/log/ispconfig/nginx/'.$data['old']['domain'])) exec('rm -rf /var/log/ispconfig/nginx/'.$data['old']['domain']); + if(is_dir('/var/log/ispconfig/nginx/'.$data['old']['domain'])) $app->system->exec_safe('rm -rf ?', '/var/log/ispconfig/nginx/'.$data['old']['domain']); } // request a httpd reload when all records have been processed @@ -232,7 +232,7 @@ class nginx_reverseproxy_plugin { function ssl($event_name, $data) { global $app, $conf; - if(!is_dir($conf['nginx']['config_dir'].'/ssl')) exec('mkdir -p '.$conf['nginx']['config_dir'].'/ssl'); + if(!is_dir($conf['nginx']['config_dir'].'/ssl')) $app->system->exec_safe('mkdir -p ?', $conf['nginx']['config_dir'].'/ssl'); $ssl_dir = $conf['nginx']['config_dir'].'/ssl'; $domain = $data['new']['ssl_domain']; $key_file = $ssl_dir.'/'.$domain.'.key.org'; @@ -250,7 +250,7 @@ class nginx_reverseproxy_plugin { //$csr_file = $ssl_dir.'/'.$domain.".csr"; //$crt_file = $ssl_dir.'/'.$domain.".crt"; //$bundle_file = $ssl_dir.'/'.$domain.".bundle"; - $this->_exec('rsync -v -e ssh root@'.$web['ip_address'].':~/$src_ssl_dir '.$ssl_dir); + $app->system->exec_safe('rsync -v -e ssh root@?:? ?', $web['ip_address'], '~/'.$src_ssl_dir, $ssl_dir); $app->log('Syncing SSL Cert for: '.$domain, LOGLEVEL_DEBUG); } @@ -284,31 +284,24 @@ class nginx_reverseproxy_plugin { //* This is a website // Deleting the vhost file, symlink and the data directory - $vhost_symlink = escapeshellcmd($nginx_config['nginx_vhost_conf_enabled_dir'].'/'.$data['old']['domain'].'.vhost'); + $vhost_symlink = $nginx_config['nginx_vhost_conf_enabled_dir'].'/'.$data['old']['domain'].'.vhost'; unlink($vhost_symlink); $app->log('Removing symlink: '.$vhost_symlink.'->'.$vhost_file, LOGLEVEL_DEBUG); - $vhost_file = escapeshellcmd($nginx_config['nginx_vhost_conf_dir'].'/'.$data['old']['domain'].'.vhost'); + $vhost_file = $nginx_config['nginx_vhost_conf_dir'].'/'.$data['old']['domain'].'.vhost'; unlink($vhost_file); $app->log('Removing vhost file: '.$vhost_file, LOGLEVEL_DEBUG); // Delete the log file directory - $vhost_logfile_dir = escapeshellcmd('/var/log/ispconfig/nginx/'.$data['old']['domain']); - if($data['old']['domain'] != '' && !stristr($vhost_logfile_dir, '..')) exec('rm -rf '.$vhost_logfile_dir); + $vhost_logfile_dir = '/var/log/ispconfig/nginx/'.$data['old']['domain']; + if($data['old']['domain'] != '' && !stristr($vhost_logfile_dir, '..')) $app->system->exec_safe('rm -rf ?', $vhost_logfile_dir); $app->log('Removing website logfile directory: '.$vhost_logfile_dir, LOGLEVEL_DEBUG); } } - //* Wrapper for exec function for easier debugging - private function _exec($command) { - global $app; - $app->log('exec: '.$command, LOGLEVEL_DEBUG); - exec($command); - } - function rewrite_insert($event_name, $data) { global $app, $conf; @@ -329,7 +322,7 @@ class nginx_reverseproxy_plugin { $tpl->newTemplate("nginx_reverseproxy_rewrites.conf.master"); if (!empty($rules))$tpl->setLoop('nginx_rewrite_rules', $rules); - $rewrites_file = escapeshellcmd($nginx_config['nginx_vhost_conf_dir'].'/default.rewrites.conf'); + $rewrites_file = $nginx_config['nginx_vhost_conf_dir'].'/default.rewrites.conf'; //* Make a backup copy of vhost file copy($rewrites_file, $rewrites_file.'~'); @@ -340,7 +333,7 @@ class nginx_reverseproxy_plugin { // Set the symlink to enable the vhost - $rewrite_symlink = escapeshellcmd($nginx_config['nginx_vhost_conf_enabled_dir'].'/default.rewrites.conf'); + $rewrite_symlink = $nginx_config['nginx_vhost_conf_enabled_dir'].'/default.rewrites.conf'; if(!is_link($rewrite_symlink)) { symlink($rewrites_file, $rewrite_symlink); diff --git a/server/plugins-available/openvz_plugin.inc.php b/server/plugins-available/openvz_plugin.inc.php index 5cc4bf6522..f17edb7b8c 100644 --- a/server/plugins-available/openvz_plugin.inc.php +++ b/server/plugins-available/openvz_plugin.inc.php @@ -86,11 +86,11 @@ class openvz_plugin { } $tmp = $app->db->queryOneRecord("SELECT template_file FROM openvz_ostemplate WHERE ostemplate_id = ?", $data['new']['ostemplate_id']); - $ostemplate = escapeshellcmd($tmp['template_file']); + $ostemplate = $tmp['template_file']; unset($tmp); //* Create the virtual machine - exec("vzctl create $veid --ostemplate $ostemplate"); + $app->system->exec_safe("vzctl create ? --ostemplate ?", $veid, $ostemplate); $app->log("Create OpenVZ VM: vzctl create $veid --ostemplate $ostemplate", LOGLEVEL_DEBUG); //* Write the configuration of the VM @@ -103,7 +103,7 @@ class openvz_plugin { } //* Set the root password in the virtual machine - exec("vzctl set $veid --userpasswd root:".escapeshellcmd($data['new']['vm_password'])); + $app->system->exec_safe("vzctl set ? --userpasswd root:?", $veid, $data['new']['vm_password']); } @@ -123,7 +123,7 @@ class openvz_plugin { //* new diskspace for ploop-containers requieres "vzctl set" if($data['new']['diskspace'] != $data['old']['diskspace']) { - exec("vzctl set ".$veid." --diskspace ".$data['new']['diskspace']."G --save"); + escapeshell("vzctl set ? --diskspace ? --save", $veid, $data['new']['diskspace']."G"); } //* Apply config changes to the VM @@ -140,7 +140,7 @@ class openvz_plugin { //* Set the root password in the virtual machine if($data['new']['vm_password'] != $data['old']['vm_password']) { - exec("vzctl set $veid --userpasswd root:".escapeshellcmd($data['new']['vm_password'])); + $app->system->exec_safe("vzctl set ? --userpasswd root:?", $veid, $data['new']['vm_password']); } @@ -193,12 +193,12 @@ class openvz_plugin { $parts = explode(':', $data); $veid = intval($parts[0]); $template_cache_dir = '/vz/template/cache/'; - $template_name = escapeshellcmd($parts[1]); + $template_name = $parts[1]; if($veid > 0 && $template_name != '' && is_dir($template_cache_dir)) { - $command = "vzdump --suspend --compress --stdexcludes --dumpdir $template_cache_dir $veid"; - exec($command); - exec("mv ".$template_cache_dir."vzdump-openvz-".$veid."*.tgz ".$template_cache_dir.$template_name.".tar.gz"); - exec("rm -f ".$template_cache_dir."vzdump-openvz-".$veid."*.log"); + $command = "vzdump --suspend --compress --stdexcludes --dumpdir ? ?"; + $app->system->exec_safe($command, $template_cache_dir, $veid); + $app->system->exec_safe("mv ?*.tgz ?", $template_cache_dir."vzdump-openvz-".$veid, $template_cache_dir.$template_name.".tar.gz"); + $app->system->exec_safe("rm -f ?*.log", $template_cache_dir."vzdump-openvz-".$veid); } $app->log("Created OpenVZ OStemplate $template_name from VM $veid", LOGLEVEL_DEBUG); return 'ok'; diff --git a/server/plugins-available/postfix_server_plugin.inc.php b/server/plugins-available/postfix_server_plugin.inc.php index 2b0b1ba67b..569959b84f 100644 --- a/server/plugins-available/postfix_server_plugin.inc.php +++ b/server/plugins-available/postfix_server_plugin.inc.php @@ -99,7 +99,7 @@ class postfix_server_plugin { exec("postconf -e 'smtp_sasl_auth_enable = no'"); } - exec("postconf -e 'relayhost = ".$mail_config['relayhost']."'"); + $app->system->exec_safe("postconf -e ?", 'relayhost = '.$mail_config['relayhost']); file_put_contents('/etc/postfix/sasl_passwd', $content); chmod('/etc/postfix/sasl_passwd', 0600); chown('/etc/postfix/sasl_passwd', 'root'); @@ -138,7 +138,7 @@ class postfix_server_plugin { if($value != '') $new_options[] = "reject_rbl_client ".$value; } } - exec("postconf -e 'smtpd_recipient_restrictions = ".implode(", ", $new_options)."'"); + $app->system->exec_safe("postconf -e ?", 'smtpd_recipient_restrictions = '.implode(", ", $new_options)); exec('postfix reload'); } @@ -157,7 +157,7 @@ class postfix_server_plugin { while (isset($new_options[$i]) && substr($new_options[$i], 0, 19) == 'check_sender_access') ++$i; array_splice($new_options, $i, 0, array('reject_authenticated_sender_login_mismatch')); } - exec("postconf -e 'smtpd_sender_restrictions = ".implode(", ", $new_options)."'"); + $app->system->exec_safe("postconf -e ?", 'smtpd_sender_restrictions = '.implode(", ", $new_options)); exec('postfix reload'); } @@ -182,9 +182,9 @@ class postfix_server_plugin { } } - exec("postconf -e 'mailbox_size_limit = ".intval($mail_config['mailbox_size_limit']*1024*1024)."'"); //TODO : no reload? - exec("postconf -e 'message_size_limit = ".intval($mail_config['message_size_limit']*1024*1024)."'"); //TODO : no reload? - + exec("postconf -e 'mailbox_size_limit = ".intval($mail_config['mailbox_size_limit']*1024*1024)."'"); + exec("postconf -e 'message_size_limit = ".intval($mail_config['message_size_limit']*1024*1024)."'"); + exec('postfix reload'); } diff --git a/server/plugins-available/powerdns_plugin.inc.php b/server/plugins-available/powerdns_plugin.inc.php index 1ecdfaf501..2e44e014d5 100644 --- a/server/plugins-available/powerdns_plugin.inc.php +++ b/server/plugins-available/powerdns_plugin.inc.php @@ -448,16 +448,20 @@ class powerdns_plugin { } function notifySlave($data) { + global $app; + $pdns_control = $this->find_pdns_control(); if ( $pdns_control != false ) { - exec($pdns_control . ' notify ' . rtrim($data["new"]["origin"],".")); + $app->system->exec_safe($pdns_control . ' notify ?', rtrim($data["new"]["origin"],".")); } } function fetchFromMaster($data) { + global $app; + $pdns_control = $this->find_pdns_control(); if ( $pdns_control != false ) { - exec($pdns_control . ' retrieve ' . rtrim($data["new"]["origin"],".")); + $app->system->exec_safe($pdns_control . ' retrieve ?', rtrim($data["new"]["origin"],".")); } } @@ -693,11 +697,11 @@ class powerdns_plugin { if ( $pdns_pdnssec != false ) { if (isset($data["new"]["origin"])) { //* data has origin field only for SOA recordtypes - exec($pdns_pdnssec . ' rectify-zone ' . rtrim($data["new"]["origin"],".")); + $app->system->exec_safe($pdns_pdnssec . ' rectify-zone ?', rtrim($data["new"]["origin"],".")); } else { // get origin from DB for all other recordtypes $zn = $app->db->queryOneRecord("SELECT d.name AS name FROM powerdns.domains d, powerdns.records r WHERE r.ispconfig_id=? AND r.domain_id = d.id", $data["new"]["id"]); - exec($pdns_pdnssec . ' rectify-zone ' . trim($zn["name"])); + $app->system->exec_safe($pdns_pdnssec . ' rectify-zone ?', trim($zn["name"])); } } } diff --git a/server/plugins-available/shelluser_base_plugin.inc.php b/server/plugins-available/shelluser_base_plugin.inc.php index 9c4568901d..90e3293ad7 100755 --- a/server/plugins-available/shelluser_base_plugin.inc.php +++ b/server/plugins-available/shelluser_base_plugin.inc.php @@ -115,34 +115,28 @@ class shelluser_base_plugin { // Create home base directory if it does not exist if(!is_dir($data['new']['dir'].'/home')){ - $app->file->mkdirs(escapeshellcmd($data['new']['dir'].'/home'), '0755'); + $app->file->mkdirs($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); + $app->system->chown($data['new']['dir'].'/home','root'); + $app->system->chgrp($data['new']['dir'].'/home','root'); + $app->system->chmod($data['new']['dir'].'/home',0755); if(!is_dir($homedir)){ - $app->file->mkdirs(escapeshellcmd($homedir), '0750'); - $app->system->chown(escapeshellcmd($homedir),escapeshellcmd($data['new']['puser']),false); - $app->system->chgrp(escapeshellcmd($homedir),escapeshellcmd($data['new']['pgroup']),false); + $app->file->mkdirs($homedir, '0750'); + $app->system->chown($homedir,$data['new']['puser'],false); + $app->system->chgrp($homedir,$data['new']['pgroup'],false); } - $command = 'useradd'; - $command .= ' -d '.escapeshellcmd($homedir); - $command .= ' -g '.escapeshellcmd($data['new']['pgroup']); - $command .= ' -o '; // non unique - if($data['new']['password'] != '') $command .= ' -p '.escapeshellcmd($data['new']['password']); - $command .= ' -s '.escapeshellcmd($data['new']['shell']); - $command .= ' -u '.escapeshellcmd($uid); - $command .= ' '.escapeshellcmd($data['new']['username']); - - exec($command); + $command = 'useradd -d ? -g ? -o ?'; // non unique + if($data['new']['password'] != '') $command .= ' -p ?'; + $command .= ' -s ? -u ? ?'; + $app->system->exec_safe($command, $homedir, $data['new']['pgroup'], $data['new']['password'], $data['new']['shell'], $uid, $data['new']['username']); $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']),false); - $app->system->chgrp(escapeshellcmd($data['new']['dir']),escapeshellcmd($data['new']['pgroup']),false); + $app->system->chown($data['new']['dir'],$data['new']['username'],false); + $app->system->chgrp($data['new']['dir'],$data['new']['pgroup'],false); // call the ssh-rsa update function @@ -152,21 +146,21 @@ class shelluser_base_plugin { $this->_setup_ssh_rsa(); //* Create .bash_history file - $app->system->touch(escapeshellcmd($homedir).'/.bash_history'); - $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']); + $app->system->touch($homedir.'/.bash_history'); + $app->system->chmod($homedir.'/.bash_history', 0750); + $app->system->chown($homedir.'/.bash_history', $data['new']['username']); + $app->system->chgrp($homedir.'/.bash_history', $data['new']['pgroup']); //* Create .profile file - $app->system->touch(escapeshellcmd($homedir).'/.profile'); - $app->system->chmod(escapeshellcmd($homedir).'/.profile', 0644); - $app->system->chown(escapeshellcmd($homedir).'/.profile', $data['new']['username']); - $app->system->chgrp(escapeshellcmd($homedir).'/.profile', $data['new']['pgroup']); + $app->system->touch($homedir.'/.profile'); + $app->system->chmod($homedir.'/.profile', 0644); + $app->system->chown($homedir.'/.profile', $data['new']['username']); + $app->system->chgrp($homedir.'/.profile', $data['new']['pgroup']); //* Disable shell user temporarily if we use jailkit if($data['new']['chroot'] == 'jailkit') { - $command = 'usermod -s /bin/false -L '.escapeshellcmd($data['new']['username']).' 2>/dev/null'; - exec($command); + $command = 'usermod -s /bin/false -L ? 2>/dev/null'; + $app->system->exec_safe($command, $data['new']['username']); $app->log("Disabling shelluser temporarily: ".$command, LOGLEVEL_DEBUG); } @@ -233,55 +227,32 @@ class shelluser_base_plugin { if($app->system->is_user($data['old']['username'])) { //* Remove webfolder protection $app->system->web_folder_protection($web['document_root'], false); - - /* - $command = 'usermod'; - $command .= ' --home '.escapeshellcmd($data['new']['dir']); - $command .= ' --gid '.escapeshellcmd($data['new']['pgroup']); - // $command .= ' --non-unique '; - $command .= ' --password '.escapeshellcmd($data['new']['password']); - if($data['new']['chroot'] != 'jailkit') $command .= ' --shell '.escapeshellcmd($data['new']['shell']); - // $command .= ' --uid '.escapeshellcmd($uid); - $command .= ' --login '.escapeshellcmd($data['new']['username']); - $command .= ' '.escapeshellcmd($data['old']['username']); - - exec($command); - $app->log("Executed command: $command ",LOGLEVEL_DEBUG); - */ - //$groupinfo = $app->system->posix_getgrnam($data['new']['pgroup']); + if($homedir != $homedir_old){ $app->system->web_folder_protection($web['document_root'], false); // Rename dir, in case the new directory exists already. if(is_dir($homedir)) { $app->log("New Homedir exists, renaming it to ".$homedir.'_bak', LOGLEVEL_DEBUG); - $app->system->rename(escapeshellcmd($homedir),escapeshellcmd($homedir.'_bak')); + $app->system->rename($homedir,$homedir.'_bak'); } - /*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($homedir), '0755'); - $app->system->chown(escapeshellcmd($homedir),'root'); - $app->system->chgrp(escapeshellcmd($homedir),'root');*/ // Move old directory to new path - $app->system->rename(escapeshellcmd($homedir_old),escapeshellcmd($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->rename($homedir_old,$homedir); + $app->file->mkdirs($homedir, '0750'); + $app->system->chown($homedir,$data['new']['puser']); + $app->system->chgrp($homedir,$data['new']['pgroup']); $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'), '0755'); - $app->system->chown(escapeshellcmd($data['new']['dir'].'/home'),'root'); - $app->system->chgrp(escapeshellcmd($data['new']['dir'].'/home'),'root'); + $app->file->mkdirs($data['new']['dir'].'/home', '0755'); + $app->system->chown($data['new']['dir'].'/home','root'); + $app->system->chgrp($data['new']['dir'].'/home','root'); } - $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($homedir, '0750'); + $app->system->chown($homedir,$data['new']['puser']); + $app->system->chgrp($homedir,$data['new']['pgroup']); $app->system->web_folder_protection($web['document_root'], true); } } @@ -296,18 +267,18 @@ class shelluser_base_plugin { //* 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', 0750); - $app->system->chown(escapeshellcmd($homedir).'/.bash_history', escapeshellcmd($data['new']['username'])); - $app->system->chgrp(escapeshellcmd($homedir).'/.bash_history', escapeshellcmd($data['new']['pgroup'])); + $app->system->touch($homedir.'/.bash_history'); + $app->system->chmod($homedir.'/.bash_history', 0750); + $app->system->chown($homedir.'/.bash_history', $data['new']['username']); + $app->system->chgrp($homedir.'/.bash_history', $data['new']['pgroup']); } //* Create .profile file if(!is_file($data['new']['dir']).'/.profile') { - $app->system->touch(escapeshellcmd($homedir).'/.profile'); - $app->system->chmod(escapeshellcmd($homedir).'/.profile', 0644); - $app->system->chown(escapeshellcmd($homedir).'/.profile', escapeshellcmd($data['new']['username'])); - $app->system->chgrp(escapeshellcmd($homedir).'/.profile', escapeshellcmd($data['new']['pgroup'])); + $app->system->touch($homedir.'/.profile'); + $app->system->chmod($homedir.'/.profile', 0644); + $app->system->chown($homedir.'/.profile', $data['new']['username']); + $app->system->chgrp($homedir.'/.profile', $data['new']['pgroup']); } //* Add webfolder protection again @@ -362,7 +333,7 @@ class shelluser_base_plugin { if(is_file($homedir . $delfile) && fileowner($homedir . $delfile) == $userid) unlink($homedir . $delfile); } foreach($dirs as $deldir) { - if(is_dir($homedir . $deldir) && fileowner($homedir . $deldir) == $userid) exec('rm -rf ' . escapeshellarg($homedir . $deldir)); + if(is_dir($homedir . $deldir) && fileowner($homedir . $deldir) == $userid) $app->system->exec_safe('rm -rf ?', $homedir . $deldir); } $empty = true; $dirres = opendir($homedir); @@ -401,9 +372,8 @@ class shelluser_base_plugin { $app->services->restartService('php-fpm', 'stop:'.$conf['init_scripts'].'/'.$web_config['php_fpm_init_script']); } } - $command = 'killall -u '.escapeshellcmd($data['old']['username']).' ; userdel -f'; - $command .= ' '.escapeshellcmd($data['old']['username']).' &> /dev/null'; - exec($command); + $command = 'killall -u ? ; userdel -f ? &> /dev/null'; + $app->system->exec_safe($command, $data['old']['username'], $data['old']['username']); $app->log("Deleted shelluser: ".$data['old']['username'], LOGLEVEL_DEBUG); // start PHP-FPM again if($web['php'] == 'php-fpm'){ @@ -447,12 +417,10 @@ class shelluser_base_plugin { } } $sshrsa = trim($sshrsa); - $usrdir = escapeshellcmd($this->data['new']['dir']); + $usrdir = $this->data['new']['dir']; //* Home directory of the new shell user - if($this->data['new']['chroot'] == 'jailkit') { - $usrdir = escapeshellcmd($this->data['new']['dir']); - } else { - $usrdir = escapeshellcmd($this->data['new']['dir'].'/home/'.$this->data['new']['username']); + if($this->data['new']['chroot'] != 'jailkit') { + $usrdir = $this->data['new']['dir'].'/home/'.$this->data['new']['username']; } $sshdir = $usrdir.'/.ssh'; $sshkeys= $usrdir.'/.ssh/authorized_keys'; @@ -528,8 +496,8 @@ class shelluser_base_plugin { $this->app->log("ssh-rsa key updated in ".$sshkeys, LOGLEVEL_DEBUG); // set proper file permissions - exec("chown -R ".escapeshellcmd($this->data['new']['puser']).":".escapeshellcmd($this->data['new']['pgroup'])." ".$sshdir); - exec("chmod 600 '$sshkeys'"); + $app->system->exec_safe("chown -R ?:? ?", $this->data['new']['puser'], $this->data['new']['pgroup'], $sshdir); + $app->system->exec_safe("chmod 600 ?", $sshkeys); } diff --git a/server/plugins-available/shelluser_jailkit_plugin.inc.php b/server/plugins-available/shelluser_jailkit_plugin.inc.php index c7112c497a..1f3a08face 100755 --- a/server/plugins-available/shelluser_jailkit_plugin.inc.php +++ b/server/plugins-available/shelluser_jailkit_plugin.inc.php @@ -121,13 +121,11 @@ class shelluser_jailkit_plugin { //* call the ssh-rsa update function $this->_setup_ssh_rsa(); - //$command .= 'usermod -s /usr/sbin/jk_chrootsh -U '.escapeshellcmd($data['new']['username']); - //exec($command); $app->system->usermod($data['new']['username'], 0, 0, '', '/usr/sbin/jk_chrootsh', '', ''); //* Unlock user - $command = 'usermod -U '.escapeshellcmd($data['new']['username']).' 2>/dev/null'; - exec($command); + $command = 'usermod -U ? 2>/dev/null'; + $app->system->exec_safe($command, $data['new']['username']); $this->_update_website_security_level(); $app->system->web_folder_protection($web['document_root'], true); @@ -242,15 +240,12 @@ class shelluser_jailkit_plugin { $jailkit_chroot_userhome = $this->_get_home_dir($data['old']['username']); - //commented out proved to be dangerous on config errors - //exec('rm -rf '.$data['old']['dir'].$jailkit_chroot_userhome); - $app->system->web_folder_protection($web['document_root'], false); $userid = intval($app->system->getuid($data['old']['username'])); - $command = 'killall -u '.escapeshellcmd($data['old']['username']).' ; '; - $command .= 'userdel -f '.escapeshellcmd($data['old']['username']).' &> /dev/null'; - exec($command); + $command = 'killall -u ? ; '; + $command .= 'userdel -f ? &> /dev/null'; + $app->system->exec_safe($command, $data['old']['username'], $data['old']['username']); // Remove the jailed user from passwd and shadow file inside the jail $app->system->removeLine($data['old']['dir'].'/etc/passwd', $data['old']['username']); @@ -278,10 +273,8 @@ class shelluser_jailkit_plugin { //check if the chroot environment is created yet if not create it with a list of program sections from the config if (!is_dir($this->data['new']['dir'].'/etc/jailkit')) { - $command = '/usr/local/ispconfig/server/scripts/create_jailkit_chroot.sh'; - $command .= ' '.escapeshellcmd($this->data['new']['dir']); - $command .= ' \''.$this->jailkit_config['jailkit_chroot_app_sections'].'\''; - exec($command.' 2>/dev/null'); + $command = '/usr/local/ispconfig/server/scripts/create_jailkit_chroot.sh ? ?'; + $app->system->exec_safe($command.' 2>/dev/null', $this->data['new']['dir'], $this->jailkit_config['jailkit_chroot_app_sections']); $this->app->log("Added jailkit chroot with command: ".$command, LOGLEVEL_DEBUG); @@ -300,7 +293,7 @@ class shelluser_jailkit_plugin { $tpl->setVar('domain', $web['domain']); $tpl->setVar('home_dir', $this->_get_home_dir("")); - $bashrc = escapeshellcmd($this->data['new']['dir']).'/etc/bash.bashrc'; + $bashrc = $this->data['new']['dir'].'/etc/bash.bashrc'; if(@is_file($bashrc) || @is_link($bashrc)) unlink($bashrc); file_put_contents($bashrc, $tpl->grab()); @@ -313,7 +306,7 @@ class shelluser_jailkit_plugin { $tpl->setVar('domain', $web['domain']); - $motd = escapeshellcmd($this->data['new']['dir']).'/var/run/motd'; + $motd = $this->data['new']['dir'].'/var/run/motd'; if(@is_file($motd) || @is_link($motd)) unlink($motd); $app->system->file_put_contents($motd, $tpl->grab()); @@ -323,16 +316,15 @@ class shelluser_jailkit_plugin { function _add_jailkit_programs() { + global $app; $jailkit_chroot_app_programs = preg_split("/[\s,]+/", $this->jailkit_config['jailkit_chroot_app_programs']); if(is_array($jailkit_chroot_app_programs) && !empty($jailkit_chroot_app_programs)){ foreach($jailkit_chroot_app_programs as $jailkit_chroot_app_program){ $jailkit_chroot_app_program = trim($jailkit_chroot_app_program); if(is_file($jailkit_chroot_app_program) || is_dir($jailkit_chroot_app_program)){ //copy over further programs and its libraries - $command = '/usr/local/ispconfig/server/scripts/create_jailkit_programs.sh'; - $command .= ' '.escapeshellcmd($this->data['new']['dir']); - $command .= ' '.$jailkit_chroot_app_program; - exec($command.' 2>/dev/null'); + $command = '/usr/local/ispconfig/server/scripts/create_jailkit_programs.sh ? ?'; + $app->system->exec_safe($command.' 2>/dev/null', $this->data['new']['dir'], $jailkit_chroot_app_program); $this->app->log("Added programs to jailkit chroot with command: ".$command, LOGLEVEL_DEBUG); } @@ -342,7 +334,7 @@ class shelluser_jailkit_plugin { function _get_home_dir($username) { - return str_replace("[username]", escapeshellcmd($username), $this->jailkit_config['jailkit_chroot_home']); + return str_replace("[username]", $username, $this->jailkit_config['jailkit_chroot_home']); } function _add_jailkit_user() @@ -365,36 +357,8 @@ class shelluser_jailkit_plugin { // ALWAYS create the user. Even if the user was created before // if we check if the user exists, then a update (no shell -> jailkit) will not work // and the user has FULL ACCESS to the root of the server! - $command = '/usr/local/ispconfig/server/scripts/create_jailkit_user.sh'; - $command .= ' '.escapeshellcmd($this->data['new']['username']); - $command .= ' '.escapeshellcmd($this->data['new']['dir']); - $command .= ' '.$jailkit_chroot_userhome; - $command .= ' '.escapeshellcmd($this->data['new']['shell']); - $command .= ' '.$this->data['new']['puser']; - $command .= ' '.$jailkit_chroot_puserhome; - exec($command.' 2>/dev/null'); - - //* Change the homedir of the shell user and parent user - //* We have to do this manually as the usermod command fails - //* when the user is logged in or a command is running under that user - /* - $passwd_file_array = file('/etc/passwd'); - $passwd_out = ''; - if(is_array($passwd_file_array)) { - foreach($passwd_file_array as $line) { - $line = trim($line); - $parts = explode(':',$line); - if($parts[0] == $this->data['new']['username']) { - $parts[5] = escapeshellcmd($this->data['new']['dir'].'/.'.$jailkit_chroot_userhome); - $parts[6] = escapeshellcmd('/usr/sbin/jk_chrootsh'); - $new_line = implode(':',$parts); - copy('/etc/passwd','/etc/passwd~'); - chmod('/etc/passwd~',0600); - $app->uses('system'); - $app->system->replaceLine('/etc/passwd',$line,$new_line,1,0); - } - } - }*/ + $command = '/usr/local/ispconfig/server/scripts/create_jailkit_user.sh ? ? ? ? ? ?'; + $app->system->exec_safe($command.' 2>/dev/null', $this->data['new']['username'], $this->data['new']['dir'], $jailkit_chroot_userhome, $this->data['new']['shell'], $this->data['new']['puser'], $jailkit_chroot_puserhome); $shell = '/usr/sbin/jk_chrootsh'; if($this->data['new']['active'] != 'y') $shell = '/bin/false'; @@ -406,19 +370,19 @@ class shelluser_jailkit_plugin { if(!is_dir($this->data['new']['dir'].$jailkit_chroot_userhome)) { if(is_dir($this->data['old']['dir'].$jailkit_chroot_userhome_old)) { - $app->system->rename(escapeshellcmd($this->data['old']['dir'].$jailkit_chroot_userhome_old),escapeshellcmd($this->data['new']['dir'].$jailkit_chroot_userhome)); + $app->system->rename($this->data['old']['dir'].$jailkit_chroot_userhome_old,$this->data['new']['dir'].$jailkit_chroot_userhome); } else { - mkdir(escapeshellcmd($this->data['new']['dir'].$jailkit_chroot_userhome), 0750, true); + mkdir($this->data['new']['dir'].$jailkit_chroot_userhome, 0750, true); } } - $app->system->chown(escapeshellcmd($this->data['new']['dir'].$jailkit_chroot_userhome), $this->data['new']['username']); - $app->system->chgrp(escapeshellcmd($this->data['new']['dir'].$jailkit_chroot_userhome), $this->data['new']['pgroup']); + $app->system->chown($this->data['new']['dir'].$jailkit_chroot_userhome, $this->data['new']['username']); + $app->system->chgrp($this->data['new']['dir'].$jailkit_chroot_userhome, $this->data['new']['pgroup']); $this->app->log("Added created jailkit user home in : ".$this->data['new']['dir'].$jailkit_chroot_userhome, LOGLEVEL_DEBUG); - if(!is_dir($this->data['new']['dir'].$jailkit_chroot_puserhome)) mkdir(escapeshellcmd($this->data['new']['dir'].$jailkit_chroot_puserhome), 0750, true); - $app->system->chown(escapeshellcmd($this->data['new']['dir'].$jailkit_chroot_puserhome), $this->data['new']['puser']); - $app->system->chgrp(escapeshellcmd($this->data['new']['dir'].$jailkit_chroot_puserhome), $this->data['new']['pgroup']); + if(!is_dir($this->data['new']['dir'].$jailkit_chroot_puserhome)) mkdir($this->data['new']['dir'].$jailkit_chroot_puserhome, 0750, true); + $app->system->chown($this->data['new']['dir'].$jailkit_chroot_puserhome, $this->data['new']['puser']); + $app->system->chgrp($this->data['new']['dir'].$jailkit_chroot_puserhome, $this->data['new']['pgroup']); $this->app->log("Added jailkit parent user home in : ".$this->data['new']['dir'].$jailkit_chroot_puserhome, LOGLEVEL_DEBUG); @@ -447,13 +411,6 @@ class shelluser_jailkit_plugin { } - //* Wrapper for exec function for easier debugging - private function _exec($command) { - global $app; - $app->log('exec: '.$command, LOGLEVEL_DEBUG); - exec($command); - } - private function _setup_ssh_rsa() { global $app; $this->app->log("ssh-rsa setup shelluser_jailkit", LOGLEVEL_DEBUG); @@ -469,7 +426,7 @@ class shelluser_jailkit_plugin { // ssh-rsa authentication variables $sshrsa = $this->data['new']['ssh_rsa']; - $usrdir = escapeshellcmd($this->data['new']['dir']).'/'.$this->_get_home_dir($this->data['new']['username']); + $usrdir = $this->data['new']['dir'].'/'.$this->_get_home_dir($this->data['new']['username']); $sshdir = $usrdir.'/.ssh'; $sshkeys= $usrdir.'/.ssh/authorized_keys'; @@ -545,9 +502,9 @@ class shelluser_jailkit_plugin { $this->app->log("ssh-rsa key updated in ".$sshkeys, LOGLEVEL_DEBUG); // set proper file permissions - exec("chown -R ".escapeshellcmd($this->data['new']['puser']).":".escapeshellcmd($this->data['new']['pgroup'])." ".$sshdir); - exec("chmod 700 ".$sshdir); - exec("chmod 600 '$sshkeys'"); + $app->system->exec_safe("chown -R ?:? ?", $this->data['new']['puser'], $this->data['new']['pgroup'], $sshdir); + $app->system->exec_safe("chmod 700 ?", $sshdir); + $app->system->exec_safe("chmod 600 ?", $sshkeys); } @@ -569,7 +526,7 @@ class shelluser_jailkit_plugin { if(is_file($homedir . $delfile) && fileowner($homedir . $delfile) == $userid) unlink($homedir . $delfile); } foreach($dirs as $deldir) { - if(is_dir($homedir . $deldir) && fileowner($homedir . $deldir) == $userid) exec('rm -rf ' . escapeshellarg($homedir . $deldir)); + if(is_dir($homedir . $deldir) && fileowner($homedir . $deldir) == $userid) $app->system->exec_safe('rm -rf ?', $homedir . $deldir); } $empty = true; $dirres = opendir($homedir); diff --git a/server/plugins-available/software_update_plugin.inc.php b/server/plugins-available/software_update_plugin.inc.php index 587bd4f09a..2626d1e756 100644 --- a/server/plugins-available/software_update_plugin.inc.php +++ b/server/plugins-available/software_update_plugin.inc.php @@ -111,11 +111,12 @@ class software_update_plugin { $software_update["update_url"] = str_replace('{key}', $software_package['package_key'], $software_update["update_url"]); //* Download the update package - $cmd = "cd $temp_dir && wget ".$software_update["update_url"]; if($installuser == '') { - exec($cmd); + $cmd = "cd ? && wget ?"; + $app->system->exec_safe($cmd, $temp_dir, $software_update["update_url"]); } else { - exec("su -c ".escapeshellarg($cmd)." $installuser"); + $cmd = "cd $temp_dir && wget ".$software_update["update_url"]; + $app->system->exec_safe("su -c ? ?", $cmd, $installuser); } $app->log("Downloading the update file from: ".$software_update["update_url"], LOGLEVEL_DEBUG); @@ -135,7 +136,7 @@ class software_update_plugin { if($update_filename == '') { $app->log("No package file found. Download failed? Installation aborted.", LOGLEVEL_WARN); - exec("rm -rf $temp_dir"); + $app->system->exec_safe("rm -rf ?", $temp_dir); $app->log("Deleting the temp directory $temp_dir", LOGLEVEL_DEBUG); $this->set_install_status($data["new"]["software_update_inst_id"], "failed"); return false; @@ -148,7 +149,7 @@ class software_update_plugin { //* Checking the md5sum if(md5_file($temp_dir.'/'.$update_filename) != $software_update["update_md5"]) { $app->log("The md5 sum of the downloaded file is incorrect. Update aborted.", LOGLEVEL_WARN); - exec("rm -rf $temp_dir"); + $app->system->exec_safe("rm -rf ", $temp_dir); $app->log("Deleting the temp directory $temp_dir", LOGLEVEL_DEBUG); $this->set_install_status($data["new"]["software_update_inst_id"], "failed"); return false; @@ -158,11 +159,13 @@ class software_update_plugin { //* unpacking the update - $cmd = "cd $temp_dir && unzip $update_filename"; + if($installuser == '') { - exec($cmd); + $cmd = "cd ? && unzip ?"; + $app->system->exec_safe($cmd, $temp_dir, $update_filename); } else { - exec("su -c ".escapeshellarg($cmd)." $installuser"); + $cmd = "cd $temp_dir && unzip $update_filename"; + $app->system->exec_safe("su -c ? ?", $cmd, $installuser); } //* Create a database, if the package requires one @@ -181,7 +184,7 @@ class software_update_plugin { $db_config['database_password'] != '' && $db_config['database_name'] != '' && $db_config['database_host'] != '') { - system("mysql --default-character-set=utf8 --force -h '".$db_config['database_host']."' -u '".$db_config['database_user']."' ".$db_config['database_name']." < ".escapeshellcmd($temp_dir.'/setup.sql')); + $app->system->exec_safe("mysql --default-character-set=utf8 --force -h ? -u ? ? < ?", $db_config['database_host'], $db_config['database_user'], $db_config['database_name'], $temp_dir.'/setup.sql'); $app->log("Loading setup.sql dump into the app db.", LOGLEVEL_DEBUG); } } @@ -196,13 +199,15 @@ class software_update_plugin { if(is_file($temp_dir.'/setup.sh')) { // Execute the setup script - exec('chmod +x '.$temp_dir.'/setup.sh'); + $app->system->exec_safe('chmod +x ?', $temp_dir.'/setup.sh'); $app->log("Executing setup.sh file in directory $temp_dir", LOGLEVEL_DEBUG); - $cmd = 'cd '.$temp_dir.' && ./setup.sh > package_install.log'; + if($installuser == '') { - exec($cmd); + $cmd = 'cd ? && ./setup.sh > package_install.log'; + $app->system->exec_safe($cmd, $temp_dir); } else { - exec("su -c ".escapeshellarg($cmd)." $installuser"); + $cmd = 'cd '.$temp_dir.' && ./setup.sh > package_install.log'; + $app->system->exec_safe("su -c ? ?", $cmd, $installuser); } $log_data = @file_get_contents("{$temp_dir}/package_install.log"); @@ -223,7 +228,7 @@ class software_update_plugin { $this->set_install_status($data["new"]["software_update_inst_id"], "failed"); } - if($temp_dir != '' && $temp_dir != '/') exec("rm -rf $temp_dir"); + if($temp_dir != '' && $temp_dir != '/') $app->system->exec_safe("rm -rf ?", $temp_dir); $app->log("Deleting the temp directory $temp_dir", LOGLEVEL_DEBUG); } diff --git a/server/plugins-available/xmpp_plugin.inc.php b/server/plugins-available/xmpp_plugin.inc.php index 128a88ebb4..c680e62f0e 100644 --- a/server/plugins-available/xmpp_plugin.inc.php +++ b/server/plugins-available/xmpp_plugin.inc.php @@ -240,8 +240,8 @@ class xmpp_plugin { $app->system->unlink("/etc/metronome/certs/$domain.csr"); // Remove all stored data var_dump('rm -rf /var/lib/metronome/'.$folder); - exec('rm -rf /var/lib/metronome/'.$folder); - exec('rm -rf /var/lib/metronome/*%2e'.$folder); + $app->system->exec_safe('rm -rf ?', '/var/lib/metronome/'.$folder); + $app->system->exec_safe('rm -rf ?*?', '/var/lib/metronome/', '%2e'.$folder); $app->services->restartServiceDelayed('metronome', 'reload'); } @@ -264,7 +264,7 @@ class xmpp_plugin { // Don't allow manual user deletion for mailaccount controlled domains // Remove account from metronome - exec('metronomectl deluser '.$data['old']['jid']); + $app->system->exec_safe('metronomectl deluser ?', $data['old']['jid']); } // Handle the creation of SSL certificates @@ -311,9 +311,9 @@ class xmpp_plugin { $app->system->file_put_contents($cnf_file, $tpl->grab()); // Generate new key, csr and cert - exec("(cd /etc/metronome/certs && make $domain.key)"); - exec("(cd /etc/metronome/certs && make $domain.csr)"); - exec("(cd /etc/metronome/certs && make $domain.cert)"); + $app->system->exec_safe("(cd /etc/metronome/certs && make ?)", "$domain.key"); + $app->system->exec_safe("(cd /etc/metronome/certs && make ?)", "$domain.csr"); + $app->system->exec_safe("(cd /etc/metronome/certs && make ?)", "$domain.cert"); $ssl_key = $app->system->file_get_contents($key_file); $app->system->chmod($key_file, 0400); -- GitLab From 709638f18ed87b5df3703c8d879001dfb05a10e3 Mon Sep 17 00:00:00 2001 From: Marius Burkard <m.burkard@pixcept.de> Date: Tue, 30 Jul 2019 14:10:11 +0200 Subject: [PATCH 114/215] - Coding guidelines --- server/scripts/ispconfig_patch | 22 +++++++++++++++------- 1 file changed, 15 insertions(+), 7 deletions(-) diff --git a/server/scripts/ispconfig_patch b/server/scripts/ispconfig_patch index a3361f507d..4470552c13 100644 --- a/server/scripts/ispconfig_patch +++ b/server/scripts/ispconfig_patch @@ -79,7 +79,9 @@ function simple_query($query, $answers, $default) } function is_installed($appname) { - exec('which '.escapeshellcmd($appname).' 2> /dev/null',$out,$returncode); + $out = array(); + $returncode = null; + exec('which '.escapeshellarg($appname).' 2> /dev/null',$out,$returncode); if(isset($out[0]) && stristr($out[0],$appname) && $returncode == 0) { return true; } else { @@ -105,14 +107,18 @@ echo " _____ ___________ _____ __ _ |___/ "; echo "\n".str_repeat('-',80)."\n"; echo "\n\n>> Patch tool \n\n"; -if(!$auto) echo "Please enter the patch id that you want to be applied to your ISPConfig installation.\nPlease be aware that we take NO responsibility that this will work for you.\nOnly use patches if you know what you are doing.\n\n"; +if(!$auto) { + echo "Please enter the patch id that you want to be applied to your ISPConfig installation.\nPlease be aware that we take NO responsibility that this will work for you.\nOnly use patches if you know what you are doing.\n\n"; +} if(!is_installed('patch')) { swriteln("The program 'patch' is missing on your server. Please install it and try again."); exit; } -if(!$auto) $patch_id = simple_query('Enter patch id', false, ''); +if(!$auto) { + $patch_id = simple_query('Enter patch id', false, ''); +} if($patch_id == '') { swriteln("Patch terminated by user.\n"); die(); @@ -129,8 +135,12 @@ if(!$patch_data) { $patch_text = @file_get_contents('http://ispconfig.org/downloads/patches/' . $patch_id . '.txt'); if($patch_text) { - if($auto) $ok = 'y'; else $ok = simple_query("Patch description:\n".str_repeat("-", 80)."\n".$patch_text."\n".str_repeat("-", 80)."\nDo you really want to apply this patch now?", array('y','n'), 'y'); - if($ok != 'y') { + if($auto) { + $ok = 'y'; + } else { + $ok = simple_query("Patch description:\n" . str_repeat("-", 80) . "\n" . $patch_text . "\n" . str_repeat("-", 80) . "\nDo you really want to apply this patch now?", array('y', 'n'), 'y'); + } + if($ok != 'y') { swriteln("Patch terminated by user.\n"); die(); } @@ -146,5 +156,3 @@ passthru('patch -p0 < ' . escapeshellarg($temp_file)); unlink($temp_file); exit; - -?> -- GitLab From 0c5140ab1f60f13e5e1b8e2fae9cf4115b34d66c Mon Sep 17 00:00:00 2001 From: Marius Burkard <m.burkard@pixcept.de> Date: Tue, 30 Jul 2019 15:16:22 +0200 Subject: [PATCH 115/215] - fixed syntax error from previous commits --- server/lib/classes/system.inc.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/server/lib/classes/system.inc.php b/server/lib/classes/system.inc.php index 051f3554a6..dafae52c85 100644 --- a/server/lib/classes/system.inc.php +++ b/server/lib/classes/system.inc.php @@ -1832,7 +1832,7 @@ class system{ function is_mounted($mountpoint){ //$cmd = 'df 2>/dev/null | grep " '.$mountpoint.'$"'; $cmd = 'mount 2>/dev/null | grep ?'; - exec($cmd, ' on '. $mountpoint . ' type '); + $this->exec_safe($cmd, ' on '. $mountpoint . ' type '); $return_var = $this->last_exec_retcode(); return $return_var == 0 ? true : false; } -- GitLab From c7e0c3fc89a6024b4b6fa1101475ba59f6a38f17 Mon Sep 17 00:00:00 2001 From: Marius Burkard <m.burkard@pixcept.de> Date: Tue, 30 Jul 2019 17:37:17 +0200 Subject: [PATCH 116/215] - implemented rspamd version of "global black/whitelist" --- server/conf/rspamd_wblist.inc.conf.master | 12 +- .../plugins-available/rspamd_plugin.inc.php | 103 ++++++++++++++---- 2 files changed, 94 insertions(+), 21 deletions(-) diff --git a/server/conf/rspamd_wblist.inc.conf.master b/server/conf/rspamd_wblist.inc.conf.master index aaa7d06f67..b614244515 100644 --- a/server/conf/rspamd_wblist.inc.conf.master +++ b/server/conf/rspamd_wblist.inc.conf.master @@ -1,7 +1,17 @@ -spamfilter_wblist-<tmpl_var name='record_id'> { +<tmpl_var name='list_scope'>_wblist-<tmpl_var name='record_id'> { priority = <tmpl_var name='priority'>; +<tmpl_if name="from"> from = "<tmpl_var name='from'>"; +</tmpl_if> +<tmpl_if name="recipient"> rcpt = "<tmpl_var name='recipient'>"; +</tmpl_if> +<tmpl_if name="ip"> + ip = "<tmpl_var name='ip'>"; +</tmpl_if> +<tmpl_if name="hostname"> + hostname = "<tmpl_var name='hostname'>"; +</tmpl_if> <tmpl_if name='wblist' op='==' value='W'> want_spam = yes; apply { diff --git a/server/plugins-available/rspamd_plugin.inc.php b/server/plugins-available/rspamd_plugin.inc.php index b6eddc401f..7fd3ebf773 100644 --- a/server/plugins-available/rspamd_plugin.inc.php +++ b/server/plugins-available/rspamd_plugin.inc.php @@ -71,11 +71,14 @@ class rspamd_plugin { $app->plugins->registerEvent('server_ip_insert', $this->plugin_name, 'server_ip'); $app->plugins->registerEvent('server_ip_update', $this->plugin_name, 'server_ip'); $app->plugins->registerEvent('server_ip_delete', $this->plugin_name, 'server_ip'); + + //* global mail access filters + $app->plugins->registerEvent('mail_access_insert', $this->plugin_name, 'spamfilter_wblist_insert'); + $app->plugins->registerEvent('mail_access_update', $this->plugin_name, 'spamfilter_wblist_update'); + $app->plugins->registerEvent('mail_access_delete', $this->plugin_name, 'spamfilter_wblist_delete'); } function spamfilter_users_insert($event_name, $data) { - global $app, $conf; - $this->action = 'insert'; // just run the spamfilter_users_update function $this->spamfilter_users_update($event_name, $data); @@ -161,8 +164,6 @@ class rspamd_plugin { } function spamfilter_wblist_insert($event_name, $data) { - global $app, $conf; - $this->action = 'insert'; // just run the spamfilter_wblist_update function $this->spamfilter_wblist_update($event_name, $data); @@ -175,34 +176,78 @@ class rspamd_plugin { $mail_config = $app->getconf->get_server_config($conf['server_id'], 'mail'); if(is_dir('/etc/rspamd')) { - $recipient = $app->db->queryOneRecord("SELECT email FROM spamfilter_users WHERE id = ?", intval($data['new']['rid'])); + $global_filter = false; //* Create the config file - $wblist_file = $this->users_config_dir.'spamfilter_wblist_'.intval($data['new']['wblist_id']).'.conf'; + $filter = null; + if($event_name === 'mail_access_insert' || $event_name === 'mail_access_update') { + $global_filter = true; + $record_id = intval($data['new']['access_id']); + $wblist_file = $this->users_config_dir.'global_wblist_'.$record_id.'.conf'; + $filter = array( + 'wb' => ($data['new']['access'] === 'OK' ? 'W' : 'B'), + 'from' => ($data['new']['type'] === 'sender' ? $app->functions->idn_encode($data['new']['source']) : ''), + 'rcpt' => ($data['new']['type'] === 'recipient' ? $app->functions->idn_encode($data['new']['source']) : ''), + 'ip' => ($data['new']['type'] === 'client' && $this->_is_valid_ip_address($data['new']['source']) ? $data['new']['source'] : ''), + 'hostname' => ($data['new']['type'] === 'client' && !$this->_is_valid_ip_address($data['new']['source']) ? $data['new']['source'] : '') + ); + } else { + $record_id = intval($data['new']['wblist_id']); + $wblist_file = $this->users_config_dir.'spamfilter_wblist_'.$record_id.'.conf'; + $tmp = $app->db->queryOneRecord("SELECT email FROM spamfilter_users WHERE id = ?", intval($data['new']['rid'])); + if($tmp && !empty($tmp)) { + $filter = array( + 'wb' => $data['new']['wb'], + 'from' => $app->functions->idn_encode($data['new']['email']), + 'rcpt' => $app->functions->idn_encode($tmp['email']), + 'ip' => '', + 'hostname' => '' + ); + } + } - if($data['new']['active'] == 'y' && is_array($recipient) && !empty($recipient)){ + if($data['new']['active'] == 'y' && is_array($filter) && !empty($filter)){ if(!is_dir($this->users_config_dir)){ $app->system->mkdirpath($this->users_config_dir); } $app->load('tpl'); + $filter_from = $filter['from']; + if($filter_from != '') { + if(strpos($filter_from, '@') === false) { + $filter_from = '@' . $filter_from; + } elseif(substr($filter_from, 0, 2) === '*@') { + $filter_from = substr($filter_from, 1); + } + } + $filter_rcpt = $filter['rcpt']; + if($filter_rcpt != '') { + if(strpos($filter_rcpt, '@') === false) { + $filter_rcpt = '@' . $filter_rcpt; + } elseif(substr($filter_rcpt, 0, 2) === '*@') { + $filter_rcpt = substr($filter_rcpt, 1); + } + } + $tpl = new tpl(); $tpl->newTemplate('rspamd_wblist.inc.conf.master'); - $tpl->setVar('record_id', intval($data['new']['wblist_id'])); + $tpl->setVar('list_scope', ($global_filter ? 'global' : 'spamfilter')); + $tpl->setVar('record_id', $record_id); // we need to add 10 to priority to avoid mailbox/domain spamfilter settings overriding white/blacklists - $tpl->setVar('priority', intval($data['new']['priority']) + 10); - $tpl->setVar('from', $app->functions->idn_encode($data['new']['email'])); - $tpl->setVar('recipient', $app->functions->idn_encode($recipient['email'])); - //$tpl->setVar('action', ($data['new']['wb'] == 'W'? 'want_spam = yes;' : 'action = "reject";')); - $tpl->setVar('wblist', $data['new']['wb']); + $tpl->setVar('priority', intval($data['new']['priority']) + ($global_filter ? 20 : 10)); + $tpl->setVar('from', $filter_from); + $tpl->setVar('recipient', $filter_rcpt); + $tpl->setVar('hostname', $filter['hostname']); + $tpl->setVar('ip', $filter['ip']); + $tpl->setVar('wblist', $filter['wb']); $app->system->file_put_contents($wblist_file, $tpl->grab()); - } else { - if(is_file($wblist_file)) unlink($wblist_file); + } elseif(is_file($wblist_file)) { + unlink($wblist_file); } - if($mail_config['content_filter'] == 'rspamd'){ - if(is_file('/etc/init.d/rspamd')) $app->services->restartServiceDelayed('rspamd', 'reload'); + if($mail_config['content_filter'] == 'rspamd' && is_file('/etc/init.d/rspamd')) { + $app->services->restartServiceDelayed('rspamd', 'reload'); } } } @@ -215,9 +260,15 @@ class rspamd_plugin { if(is_dir('/etc/rspamd')) { //* delete the config file - $wblist_file = $this->users_config_dir.'spamfilter_wblist_'.intval($data['old']['wblist_id']).'.conf'; - if(is_file($wblist_file)) unlink($wblist_file); - + if($event_name === 'mail_access_delete') { + $wblist_file = $this->users_config_dir.'global_wblist_'.intval($data['old']['access_id']).'.conf'; + } else { + $wblist_file = $this->users_config_dir.'spamfilter_wblist_'.intval($data['old']['wblist_id']).'.conf'; + } + if(is_file($wblist_file)) { + unlink($wblist_file); + } + if($mail_config['content_filter'] == 'rspamd'){ if(is_file('/etc/init.d/rspamd')) $app->services->restartServiceDelayed('rspamd', 'reload'); } @@ -253,4 +304,16 @@ class rspamd_plugin { } } + private function _is_valid_ip_address($ip) { + if(function_exists('filter_var')) { + if(!filter_var($ip, FILTER_VALIDATE_IP, FILTER_FLAG_IPV4 | FILTER_FLAG_IPV6)) { + return false; + } else { + return true; + } + } else { + return false; + } + } + } // end class -- GitLab From c5bdf04515c2db52ccad6e887b1d2966954164a6 Mon Sep 17 00:00:00 2001 From: Marius Burkard <m.burkard@pixcept.de> Date: Tue, 30 Jul 2019 22:22:21 +0200 Subject: [PATCH 117/215] - removed ENGINE=MyISAM from sql files, fixes #5342 --- install/sql/incremental/upd_0002.sql | 2 +- install/sql/incremental/upd_0004.sql | 4 +- install/sql/incremental/upd_0007.sql | 2 +- install/sql/incremental/upd_0009.sql | 6 +- install/sql/incremental/upd_0012.sql | 10 +- install/sql/incremental/upd_0013.sql | 2 +- install/sql/incremental/upd_0019.sql | 8 +- install/sql/incremental/upd_0028.sql | 2 +- install/sql/incremental/upd_0031.sql | 2 +- install/sql/incremental/upd_0033.sql | 2 +- install/sql/incremental/upd_0034.sql | 8 +- install/sql/incremental/upd_0035.sql | 2 +- install/sql/incremental/upd_0039.sql | 2 +- install/sql/incremental/upd_0040.sql | 2 +- install/sql/incremental/upd_0050.sql | 2 +- install/sql/incremental/upd_0056.sql | 2 +- install/sql/incremental/upd_0057.sql | 2 +- install/sql/incremental/upd_0062.sql | 2 +- install/sql/incremental/upd_0063.sql | 2 +- install/sql/incremental/upd_0075.sql | 2 +- install/sql/incremental/upd_0081.sql | 8 +- install/sql/incremental/upd_0087.sql | 2 +- install/sql/ispconfig3.sql | 160 +++++++++++++-------------- 23 files changed, 118 insertions(+), 118 deletions(-) diff --git a/install/sql/incremental/upd_0002.sql b/install/sql/incremental/upd_0002.sql index e71e111826..7802dfa160 100644 --- a/install/sql/incremental/upd_0002.sql +++ b/install/sql/incremental/upd_0002.sql @@ -5,4 +5,4 @@ CREATE TABLE IF NOT EXISTS `sys_session` ( `session_data` longtext, PRIMARY KEY (`session_id`), KEY `last_updated` (`last_updated`) -) ENGINE=MyISAM; \ No newline at end of file +); \ No newline at end of file diff --git a/install/sql/incremental/upd_0004.sql b/install/sql/incremental/upd_0004.sql index 3bba2461a6..6153fc7732 100644 --- a/install/sql/incremental/upd_0004.sql +++ b/install/sql/incremental/upd_0004.sql @@ -11,7 +11,7 @@ CREATE TABLE `help_faq_sections` ( `sys_perm_group` varchar(5) DEFAULT NULL, `sys_perm_other` varchar(5) DEFAULT NULL, PRIMARY KEY (`hfs_id`) -) ENGINE=MyISAM AUTO_INCREMENT=1; +) AUTO_INCREMENT=1; INSERT INTO `help_faq_sections` VALUES (1,'General',0,NULL,NULL,NULL,NULL,NULL); @@ -27,7 +27,7 @@ CREATE TABLE `help_faq` ( `sys_perm_group` varchar(5) DEFAULT NULL, `sys_perm_other` varchar(5) DEFAULT NULL, PRIMARY KEY (`hf_id`) -) ENGINE=MyISAM AUTO_INCREMENT=1; +) AUTO_INCREMENT=1; INSERT INTO `help_faq` VALUES (1,1,0,'I\'d like to know ...','Yes, of course.',1,1,'riud','riud','r'); diff --git a/install/sql/incremental/upd_0007.sql b/install/sql/incremental/upd_0007.sql index cea3813229..0cdf99e2bc 100644 --- a/install/sql/incremental/upd_0007.sql +++ b/install/sql/incremental/upd_0007.sql @@ -14,6 +14,6 @@ CREATE TABLE IF NOT EXISTS `mail_mailinglist` ( `email` varchar(255) NOT NULL, `password` varchar(255) NOT NULL, PRIMARY KEY (`mailinglist_id`) -) ENGINE=MyISAM AUTO_INCREMENT=1; +) AUTO_INCREMENT=1; DROP TABLE `mail_mailman_domain`; \ No newline at end of file diff --git a/install/sql/incremental/upd_0009.sql b/install/sql/incremental/upd_0009.sql index 5be069c735..43262d65b9 100644 --- a/install/sql/incremental/upd_0009.sql +++ b/install/sql/incremental/upd_0009.sql @@ -10,7 +10,7 @@ CREATE TABLE IF NOT EXISTS `proxy_reverse` ( `rewrite_url_dst` varchar(100) NOT NULL, `active` enum('n','y') NOT NULL default 'y', PRIMARY KEY (`rewrite_id`) -) ENGINE=MyISAM AUTO_INCREMENT=5 DEFAULT CHARSET=utf8; +) AUTO_INCREMENT=5 DEFAULT CHARSET=utf8; CREATE TABLE IF NOT EXISTS `firewall_filter` ( @@ -38,7 +38,7 @@ CREATE TABLE IF NOT EXISTS `firewall_filter` ( `active` enum('n','y') NOT NULL default 'y', `client_id` int(11) NOT NULL, PRIMARY KEY (`firewall_id`) -) ENGINE=MyISAM AUTO_INCREMENT=12 DEFAULT CHARSET=utf8; +) AUTO_INCREMENT=12 DEFAULT CHARSET=utf8; CREATE TABLE IF NOT EXISTS `firewall_forward` ( `firewall_id` int(11) unsigned NOT NULL auto_increment, @@ -59,7 +59,7 @@ CREATE TABLE IF NOT EXISTS `firewall_forward` ( `active` enum('n','y') NOT NULL default 'y', `client_id` int(11) NOT NULL, PRIMARY KEY (`firewall_id`) -) ENGINE=MyISAM AUTO_INCREMENT=12 DEFAULT CHARSET=utf8; +) AUTO_INCREMENT=12 DEFAULT CHARSET=utf8; alter table `server` add column `proxy_server` tinyint(1) not null after `vserver_server`; alter table `server` add column `firewall_server` tinyint(1) not null after `proxy_server`; diff --git a/install/sql/incremental/upd_0012.sql b/install/sql/incremental/upd_0012.sql index 2ba957f8d9..1fd355160c 100644 --- a/install/sql/incremental/upd_0012.sql +++ b/install/sql/incremental/upd_0012.sql @@ -14,7 +14,7 @@ CREATE TABLE IF NOT EXISTS `openvz_ip` ( `vm_id` int(11) NOT NULL DEFAULT '0', `reserved` varchar(255) NOT NULL DEFAULT 'n', PRIMARY KEY (`ip_address_id`) -) ENGINE=MyISAM DEFAULT CHARSET=utf8 ; +) DEFAULT CHARSET=utf8 ; -- -- Dumping data for table `openvz_ip` @@ -40,7 +40,7 @@ CREATE TABLE IF NOT EXISTS `openvz_ostemplate` ( `active` varchar(255) NOT NULL DEFAULT 'y', `description` text, PRIMARY KEY (`ostemplate_id`) -) ENGINE=MyISAM DEFAULT CHARSET=utf8 ; +) DEFAULT CHARSET=utf8 ; -- -- Dumping data for table `openvz_ostemplate` @@ -100,7 +100,7 @@ CREATE TABLE IF NOT EXISTS `openvz_template` ( `create_dns` varchar(1) NOT NULL DEFAULT 'n', `capability` varchar(255) DEFAULT NULL, PRIMARY KEY (`template_id`) -) ENGINE=MyISAM DEFAULT CHARSET=utf8 ; +) DEFAULT CHARSET=utf8 ; -- -- Dumping data for table `openvz_template` @@ -119,7 +119,7 @@ CREATE TABLE IF NOT EXISTS `openvz_traffic` ( `traffic_date` date NOT NULL, `traffic_bytes` bigint(32) unsigned NOT NULL DEFAULT '0', PRIMARY KEY (`veid`,`traffic_date`) -) ENGINE=MyISAM DEFAULT CHARSET=utf8; +) DEFAULT CHARSET=utf8; -- -- Dumping data for table `openvz_traffic` @@ -164,7 +164,7 @@ CREATE TABLE IF NOT EXISTS `openvz_vm` ( `capability` text NOT NULL, `config` mediumtext NOT NULL, PRIMARY KEY (`vm_id`) -) ENGINE=MyISAM DEFAULT CHARSET=utf8 ; +) DEFAULT CHARSET=utf8 ; -- -- Dumping data for table `openvz_vm` diff --git a/install/sql/incremental/upd_0013.sql b/install/sql/incremental/upd_0013.sql index 9b43d33616..bc38241bb4 100644 --- a/install/sql/incremental/upd_0013.sql +++ b/install/sql/incremental/upd_0013.sql @@ -16,5 +16,5 @@ CREATE TABLE `iptables` ( `target` varchar(10) DEFAULT NULL COMMENT 'ACCEPT DROP REJECT LOG', `active` enum('n','y') NOT NULL DEFAULT 'y', PRIMARY KEY (`iptables_id`) -) ENGINE=MyISAM AUTO_INCREMENT=5 DEFAULT CHARSET=utf8; +) AUTO_INCREMENT=5 DEFAULT CHARSET=utf8; diff --git a/install/sql/incremental/upd_0019.sql b/install/sql/incremental/upd_0019.sql index 60c464cea7..1bd990c5d0 100644 --- a/install/sql/incremental/upd_0019.sql +++ b/install/sql/incremental/upd_0019.sql @@ -10,7 +10,7 @@ CREATE TABLE IF NOT EXISTS `help_faq` ( `sys_perm_group` varchar(5) DEFAULT NULL, `sys_perm_other` varchar(5) DEFAULT NULL, PRIMARY KEY (`hf_id`) -) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ; +) DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ; CREATE TABLE IF NOT EXISTS `help_faq_sections` ( `hfs_id` int(11) NOT NULL AUTO_INCREMENT, @@ -22,7 +22,7 @@ CREATE TABLE IF NOT EXISTS `help_faq_sections` ( `sys_perm_group` varchar(5) DEFAULT NULL, `sys_perm_other` varchar(5) DEFAULT NULL, PRIMARY KEY (`hfs_id`) -) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ; +) DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ; CREATE TABLE IF NOT EXISTS `web_folder` ( `web_folder_id` bigint(20) NOT NULL AUTO_INCREMENT, @@ -36,7 +36,7 @@ CREATE TABLE IF NOT EXISTS `web_folder` ( `path` varchar(255) DEFAULT NULL, `active` varchar(255) NOT NULL DEFAULT 'y', PRIMARY KEY (`web_folder_id`) -) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ; +) DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ; CREATE TABLE IF NOT EXISTS `web_folder_user` ( `web_folder_user_id` bigint(20) NOT NULL AUTO_INCREMENT, @@ -50,7 +50,7 @@ CREATE TABLE IF NOT EXISTS `web_folder_user` ( `password` varchar(255) DEFAULT NULL, `active` varchar(255) NOT NULL DEFAULT 'y', PRIMARY KEY (`web_folder_user_id`) -) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ; +) DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ; DROP TABLE `mail_greylist`; DROP TABLE `firewall_filter`; diff --git a/install/sql/incremental/upd_0028.sql b/install/sql/incremental/upd_0028.sql index 0020cdd9ac..67023de067 100644 --- a/install/sql/incremental/upd_0028.sql +++ b/install/sql/incremental/upd_0028.sql @@ -9,4 +9,4 @@ CREATE TABLE `web_backup` ( `tstamp` int(10) unsigned NOT NULL, `filename` varchar(255) NOT NULL, PRIMARY KEY (`backup_id`) -) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ; +) DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ; diff --git a/install/sql/incremental/upd_0031.sql b/install/sql/incremental/upd_0031.sql index 0fb25a5d40..7ebdef95c0 100644 --- a/install/sql/incremental/upd_0031.sql +++ b/install/sql/incremental/upd_0031.sql @@ -14,5 +14,5 @@ CREATE TABLE `server_php` ( `php_fpm_ini_dir` varchar(255) DEFAULT NULL, `php_fpm_pool_dir` varchar(255) DEFAULT NULL, PRIMARY KEY (`server_php_id`) -) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ; +) DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ; ALTER TABLE `web_domain` ADD `fastcgi_php_version` VARCHAR( 255 ) NULL DEFAULT NULL; \ No newline at end of file diff --git a/install/sql/incremental/upd_0033.sql b/install/sql/incremental/upd_0033.sql index d4b3c0d6a2..5d2b93cdba 100644 --- a/install/sql/incremental/upd_0033.sql +++ b/install/sql/incremental/upd_0033.sql @@ -10,4 +10,4 @@ CREATE TABLE IF NOT EXISTS `client_circle` ( `description` text, `active` enum('n','y') NOT NULL default 'y', PRIMARY KEY (`circle_id`) -) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ; \ No newline at end of file +) DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ; \ No newline at end of file diff --git a/install/sql/incremental/upd_0034.sql b/install/sql/incremental/upd_0034.sql index 8ae098c011..85e49f70bb 100644 --- a/install/sql/incremental/upd_0034.sql +++ b/install/sql/incremental/upd_0034.sql @@ -16,7 +16,7 @@ CREATE TABLE IF NOT EXISTS `aps_instances` ( `package_id` int(4) NOT NULL, `instance_status` int(4) NOT NULL, PRIMARY KEY (`id`) -) ENGINE=MyISAM DEFAULT CHARSET=utf8 ; +) DEFAULT CHARSET=utf8 ; -- -------------------------------------------------------- @@ -31,7 +31,7 @@ CREATE TABLE IF NOT EXISTS `aps_instances_settings` ( `name` varchar(255) NOT NULL, `value` text NOT NULL, PRIMARY KEY (`id`) -) ENGINE=MyISAM DEFAULT CHARSET=utf8 ; +) DEFAULT CHARSET=utf8 ; -- -------------------------------------------------------- @@ -49,7 +49,7 @@ CREATE TABLE IF NOT EXISTS `aps_packages` ( `package_url` TEXT NOT NULL, `package_status` int(1) NOT NULL DEFAULT '2', PRIMARY KEY (`id`) -) ENGINE=MyISAM DEFAULT CHARSET=utf8 ; +) DEFAULT CHARSET=utf8 ; -- -------------------------------------------------------- @@ -63,7 +63,7 @@ CREATE TABLE IF NOT EXISTS `aps_settings` ( `value` text NOT NULL, PRIMARY KEY (`id`), UNIQUE KEY `name` (`name`) -) ENGINE=MyISAM DEFAULT CHARSET=utf8 ; +) DEFAULT CHARSET=utf8 ; -- -------------------------------------------------------- diff --git a/install/sql/incremental/upd_0035.sql b/install/sql/incremental/upd_0035.sql index 5f8031c514..1a453e5875 100644 --- a/install/sql/incremental/upd_0035.sql +++ b/install/sql/incremental/upd_0035.sql @@ -10,7 +10,7 @@ CREATE TABLE IF NOT EXISTS `sys_theme` ( `username` varchar(64) NOT NULL, `logo_url` varchar(255) NOT NULL, PRIMARY KEY (`var_id`) -) ENGINE=MyISAM DEFAULT CHARSET=utf8 ; +) DEFAULT CHARSET=utf8 ; -- -------------------------------------------------------- diff --git a/install/sql/incremental/upd_0039.sql b/install/sql/incremental/upd_0039.sql index af8a5afc5a..b090db4f74 100644 --- a/install/sql/incremental/upd_0039.sql +++ b/install/sql/incremental/upd_0039.sql @@ -15,7 +15,7 @@ CREATE TABLE IF NOT EXISTS `web_database_user` ( `database_user` varchar(64) DEFAULT NULL, `database_password` varchar(64) DEFAULT NULL, PRIMARY KEY (`database_user_id`) -) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ; +) DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ; -- -------------------------------------------------------- diff --git a/install/sql/incremental/upd_0040.sql b/install/sql/incremental/upd_0040.sql index b39e8f11ff..f572a6e73b 100644 --- a/install/sql/incremental/upd_0040.sql +++ b/install/sql/incremental/upd_0040.sql @@ -21,4 +21,4 @@ CREATE TABLE IF NOT EXISTS `directive_snippets` ( `snippet` mediumtext, `active` enum('n','y') NOT NULL DEFAULT 'y', PRIMARY KEY (`directive_snippets_id`) -) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ; +) DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ; diff --git a/install/sql/incremental/upd_0050.sql b/install/sql/incremental/upd_0050.sql index bc31868a70..0ce01b9b45 100644 --- a/install/sql/incremental/upd_0050.sql +++ b/install/sql/incremental/upd_0050.sql @@ -13,7 +13,7 @@ CREATE TABLE IF NOT EXISTS `dns_slave` ( PRIMARY KEY (`id`), KEY `origin` (`origin`), KEY `active` (`active`) -) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ; +) DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ; ALTER TABLE `dns_slave` DROP INDEX `origin`; ALTER TABLE `dns_slave` ADD CONSTRAINT `slave` UNIQUE (`origin`,`server_id`); \ No newline at end of file diff --git a/install/sql/incremental/upd_0056.sql b/install/sql/incremental/upd_0056.sql index c7cb5285ce..d9e1e02289 100644 --- a/install/sql/incremental/upd_0056.sql +++ b/install/sql/incremental/upd_0056.sql @@ -4,7 +4,7 @@ CREATE TABLE `client_template_assigned` ( `client_template_id` int(11) NOT NULL DEFAULT '0', PRIMARY KEY (`assigned_template_id`), KEY `client_id` (`client_id`) -) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ; +) DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ; ALTER TABLE `client` ADD `gender` enum('','m','f') NOT NULL DEFAULT '' AFTER `company_id`, ADD `locked` enum('n','y') NOT NULL DEFAULT 'n' AFTER `created_at`, diff --git a/install/sql/incremental/upd_0057.sql b/install/sql/incremental/upd_0057.sql index b8452fe6e9..01b2c58de0 100644 --- a/install/sql/incremental/upd_0057.sql +++ b/install/sql/incremental/upd_0057.sql @@ -4,4 +4,4 @@ CREATE TABLE IF NOT EXISTS `sys_cron` ( `next_run` datetime NULL DEFAULT NULL, `running` tinyint(1) UNSIGNED NOT NULL DEFAULT '0', PRIMARY KEY (`name`) -) ENGINE=MyISAM DEFAULT CHARSET=utf8; +) DEFAULT CHARSET=utf8; diff --git a/install/sql/incremental/upd_0062.sql b/install/sql/incremental/upd_0062.sql index cee5ff93cc..039a0bd005 100644 --- a/install/sql/incremental/upd_0062.sql +++ b/install/sql/incremental/upd_0062.sql @@ -8,7 +8,7 @@ CREATE TABLE `mail_backup` ( `filename` varchar(255) NOT NULL, `filesize` VARCHAR(10) NOT NULL, PRIMARY KEY (`backup_id`) -) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ; +) DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ; ALTER TABLE `mail_user` ADD `backup_interval` VARCHAR( 255 ) NOT NULL DEFAULT 'none'; ALTER TABLE `mail_user` ADD `backup_copies` INT NOT NULL DEFAULT '1'; diff --git a/install/sql/incremental/upd_0063.sql b/install/sql/incremental/upd_0063.sql index fc2534ac24..08e2f04f93 100644 --- a/install/sql/incremental/upd_0063.sql +++ b/install/sql/incremental/upd_0063.sql @@ -12,7 +12,7 @@ CREATE TABLE `client_message_template` ( `subject` varchar(255) DEFAULT NULL, `message` text, PRIMARY KEY (`client_message_template_id`) -) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ; +) DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ; ALTER TABLE `spamfilter_policy` ADD `policyd_quota_in` int(11) NOT NULL DEFAULT '-1', ADD `policyd_quota_in_period` int(11) NOT NULL DEFAULT '24', ADD `policyd_quota_out` int(11) NOT NULL DEFAULT '-1', diff --git a/install/sql/incremental/upd_0075.sql b/install/sql/incremental/upd_0075.sql index acca4e6ac8..ce1bacf2d1 100644 --- a/install/sql/incremental/upd_0075.sql +++ b/install/sql/incremental/upd_0075.sql @@ -77,4 +77,4 @@ CREATE TABLE IF NOT EXISTS `dns_slave` ( PRIMARY KEY (`id`), UNIQUE KEY `slave` (`origin`,`server_id`), KEY `active` (`active`) -) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ; +) DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ; diff --git a/install/sql/incremental/upd_0081.sql b/install/sql/incremental/upd_0081.sql index 69236784c7..d24ce19ce9 100644 --- a/install/sql/incremental/upd_0081.sql +++ b/install/sql/incremental/upd_0081.sql @@ -126,7 +126,7 @@ CREATE TABLE `xmpp_domain` ( PRIMARY KEY (`domain_id`), KEY `server_id` (`server_id`,`domain`), KEY `domain_active` (`domain`,`active`) -) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ; +) DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ; -- -- Table structure for table `xmpp_user` @@ -146,7 +146,7 @@ CREATE TABLE `xmpp_user` ( PRIMARY KEY (`xmppuser_id`), KEY `server_id` (`server_id`,`jid`), KEY `jid_active` (`jid`,`active`) -) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ; +) DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ; -- -------------------------------------------------------- @@ -176,7 +176,7 @@ CREATE TABLE `server_ip_map` ( `destination_ip` varchar(35) DEFAULT '', `active` enum('n','y') NOT NULL DEFAULT 'y', PRIMARY KEY (`server_ip_map_id`) -) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ; +) DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ; ALTER TABLE `web_domain` ADD COLUMN `rewrite_to_https` ENUM('y','n') NOT NULL DEFAULT 'n' AFTER `seo_redirect`; @@ -199,7 +199,7 @@ CREATE TABLE `ftp_traffic` ( `in_bytes` bigint(32) unsigned NOT NULL, `out_bytes` bigint(32) unsigned NOT NULL, UNIQUE KEY (`hostname`,`traffic_date`) -) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ; +) DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ; ALTER TABLE `mail_forwarding` ADD COLUMN `allow_send_as` ENUM('n','y') NOT NULL DEFAULT 'n' AFTER `active`; UPDATE `mail_forwarding` SET `allow_send_as` = 'y' WHERE `type` = 'alias'; diff --git a/install/sql/incremental/upd_0087.sql b/install/sql/incremental/upd_0087.sql index 55e3b846d7..4d392cc441 100644 --- a/install/sql/incremental/upd_0087.sql +++ b/install/sql/incremental/upd_0087.sql @@ -18,7 +18,7 @@ CREATE TABLE IF NOT EXISTS `dns_ssl_ca` ( `ca_critical` tinyint(1) NOT NULL DEFAULT '0', PRIMARY KEY (`id`), UNIQUE KEY (`ca_issue`) -) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ; +) DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ; ALTER TABLE `dns_ssl_ca` ADD UNIQUE(`ca_issue`); diff --git a/install/sql/ispconfig3.sql b/install/sql/ispconfig3.sql index 3f534eedf0..c7e170ca58 100644 --- a/install/sql/ispconfig3.sql +++ b/install/sql/ispconfig3.sql @@ -69,7 +69,7 @@ CREATE TABLE IF NOT EXISTS `aps_instances` ( `package_id` int(4) NOT NULL DEFAULT '0', `instance_status` int(4) NOT NULL DEFAULT '0', PRIMARY KEY (`id`) -) ENGINE=MyISAM DEFAULT CHARSET=utf8 ; +) DEFAULT CHARSET=utf8 ; -- -------------------------------------------------------- @@ -84,7 +84,7 @@ CREATE TABLE IF NOT EXISTS `aps_instances_settings` ( `name` varchar(255) NOT NULL DEFAULT '', `value` text, PRIMARY KEY (`id`) -) ENGINE=MyISAM DEFAULT CHARSET=utf8 ; +) DEFAULT CHARSET=utf8 ; -- -------------------------------------------------------- @@ -102,7 +102,7 @@ CREATE TABLE IF NOT EXISTS `aps_packages` ( `package_url` TEXT, `package_status` int(1) NOT NULL DEFAULT '2', PRIMARY KEY (`id`) -) ENGINE=MyISAM DEFAULT CHARSET=utf8 ; +) DEFAULT CHARSET=utf8 ; -- -------------------------------------------------------- @@ -116,7 +116,7 @@ CREATE TABLE IF NOT EXISTS `aps_settings` ( `value` text, PRIMARY KEY (`id`), UNIQUE KEY `name` (`name`) -) ENGINE=MyISAM DEFAULT CHARSET=utf8 ; +) DEFAULT CHARSET=utf8 ; -- -------------------------------------------------------- @@ -128,7 +128,7 @@ CREATE TABLE `attempts_login` ( `ip` varchar(39) NOT NULL DEFAULT '', `times` int(11) DEFAULT NULL, `login_time` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP -) ENGINE=MyISAM DEFAULT CHARSET=utf8 ; +) DEFAULT CHARSET=utf8 ; -- -------------------------------------------------------- @@ -264,7 +264,7 @@ CREATE TABLE `client` ( `risk_score` int(10) unsigned NOT NULL DEFAULT '0', `activation_code` varchar(10) NOT NULL DEFAULT '', PRIMARY KEY (`client_id`) -) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ; +) DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ; -- -------------------------------------------------------- @@ -284,7 +284,7 @@ CREATE TABLE `client_circle` ( `description` text, `active` enum('n','y') NOT NULL default 'y', PRIMARY KEY (`circle_id`) -) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ; +) DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ; -- -------------------------------------------------------- @@ -369,7 +369,7 @@ CREATE TABLE `client_template` ( `limit_openvz_vm` int(11) NOT NULL DEFAULT '0', `limit_openvz_vm_template_id` int(11) NOT NULL DEFAULT '0', PRIMARY KEY (`template_id`) -) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ; +) DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ; -- -------------------------------------------------------- @@ -383,7 +383,7 @@ CREATE TABLE `client_template_assigned` ( `client_template_id` int(11) NOT NULL DEFAULT '0', PRIMARY KEY (`assigned_template_id`), KEY `client_id` (`client_id`) -) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ; +) DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ; -- -------------------------------------------------------- -- @@ -402,7 +402,7 @@ CREATE TABLE `client_message_template` ( `subject` varchar(255) DEFAULT NULL, `message` text, PRIMARY KEY (`client_message_template_id`) -) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ; +) DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ; -- -- Dumping data for table `invoice_message_template` @@ -422,7 +422,7 @@ CREATE TABLE `country` ( `numcode` smallint(6) DEFAULT NULL, `eu` enum('n','y') NOT NULL DEFAULT 'n', PRIMARY KEY (`iso`) -) ENGINE=MyISAM DEFAULT CHARSET=utf8 ; +) DEFAULT CHARSET=utf8 ; -- -------------------------------------------------------- @@ -448,7 +448,7 @@ CREATE TABLE `cron` ( `log` enum('n','y') NOT NULL default 'n', `active` enum('n','y') NOT NULL default 'y', PRIMARY KEY (`id`) -) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ; +) DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ; -- -------------------------------------------------------- @@ -471,7 +471,7 @@ CREATE TABLE IF NOT EXISTS `directive_snippets` ( `active` enum('n','y') NOT NULL DEFAULT 'y', `master_directive_snippets_id` int(11) unsigned NOT NULL DEFAULT '0', PRIMARY KEY (`directive_snippets_id`) -) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ; +) DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ; -- -------------------------------------------------------- @@ -497,7 +497,7 @@ CREATE TABLE `dns_rr` ( `serial` int(10) unsigned default NULL, PRIMARY KEY (`id`), KEY `rr` (`zone`,`type`,`name`) -) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ; +) DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ; -- -------------------------------------------------------- @@ -520,7 +520,7 @@ CREATE TABLE `dns_slave` ( PRIMARY KEY (`id`), UNIQUE KEY `slave` (`origin`,`server_id`), KEY `active` (`active`) -) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ; +) DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ; -- -------------------------------------------------------- @@ -543,7 +543,7 @@ CREATE TABLE IF NOT EXISTS `dns_ssl_ca` ( `ca_critical` tinyint(1) NOT NULL DEFAULT '0', PRIMARY KEY (`id`), UNIQUE KEY (`ca_issue`) -) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ; +) DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ; ALTER TABLE `dns_ssl_ca` ADD UNIQUE(`ca_issue`); @@ -630,7 +630,7 @@ CREATE TABLE `dns_soa` ( PRIMARY KEY (`id`), UNIQUE KEY `origin` (`origin`), KEY `active` (`active`) -) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ; +) DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ; -- -------------------------------------------------------- @@ -650,7 +650,7 @@ CREATE TABLE `dns_template` ( `template` text, `visible` enum('N','Y') NOT NULL default 'Y', PRIMARY KEY (`template_id`) -) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ; +) DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ; -- -- Table structure for table `domain` @@ -666,7 +666,7 @@ CREATE TABLE `domain` ( `domain` varchar(255) NOT NULL default '', PRIMARY KEY (`domain_id`), UNIQUE KEY `domain` (`domain`) -) ENGINE=MyISAM DEFAULT CHARSET=utf8 ; +) DEFAULT CHARSET=utf8 ; -- -------------------------------------------------------- @@ -686,7 +686,7 @@ CREATE TABLE `firewall` ( `udp_port` text, `active` enum('n','y') NOT NULL default 'y', PRIMARY KEY (`firewall_id`) -) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ; +) DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ; -- -------------------------------------------------------- @@ -724,7 +724,7 @@ CREATE TABLE `ftp_user` ( KEY `server_id` (`server_id`), KEY `username` (`username`), KEY `quota_files` (`quota_files`) -) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ; +) DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ; -- -------------------------------------------------------- @@ -738,7 +738,7 @@ CREATE TABLE `ftp_traffic` ( `in_bytes` bigint(32) unsigned NOT NULL, `out_bytes` bigint(32) unsigned NOT NULL, UNIQUE KEY (`hostname`,`traffic_date`) -) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ; +) DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ; -- -------------------------------------------------------- @@ -758,7 +758,7 @@ CREATE TABLE `help_faq` ( `sys_perm_group` varchar(5) DEFAULT NULL, `sys_perm_other` varchar(5) DEFAULT NULL, PRIMARY KEY (`hf_id`) -) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ; +) DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ; -- -------------------------------------------------------- @@ -776,7 +776,7 @@ CREATE TABLE `help_faq_sections` ( `sys_perm_group` varchar(5) DEFAULT NULL, `sys_perm_other` varchar(5) DEFAULT NULL, PRIMARY KEY (`hfs_id`) -) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ; +) DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ; -- -------------------------------------------------------- @@ -797,7 +797,7 @@ CREATE TABLE `iptables` ( `target` varchar(10) DEFAULT NULL COMMENT 'ACCEPT DROP REJECT LOG', `active` enum('n','y') NOT NULL DEFAULT 'y', PRIMARY KEY (`iptables_id`) -) ENGINE=MyISAM AUTO_INCREMENT=5 DEFAULT CHARSET=utf8; +) AUTO_INCREMENT=5 DEFAULT CHARSET=utf8; -- -------------------------------------------------------- @@ -819,7 +819,7 @@ CREATE TABLE `mail_access` ( `active` enum('n','y') NOT NULL default 'y', PRIMARY KEY (`access_id`), KEY `server_id` (`server_id`,`source`) -) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ; +) DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ; -- -------------------------------------------------------- @@ -837,7 +837,7 @@ CREATE TABLE `mail_backup` ( `filename` varchar(255) NOT NULL DEFAULT '', `filesize` VARCHAR(20) NOT NULL DEFAULT '', PRIMARY KEY (`backup_id`) -) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ; +) DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ; -- -------------------------------------------------------- @@ -859,7 +859,7 @@ CREATE TABLE `mail_content_filter` ( `action` varchar(255) default NULL, `active` varchar(255) NOT NULL default 'y', PRIMARY KEY (`content_filter_id`) -) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ; +) DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ; -- -------------------------------------------------------- @@ -884,7 +884,7 @@ CREATE TABLE `mail_domain` ( PRIMARY KEY (`domain_id`), KEY `server_id` (`server_id`,`domain`), KEY `domain_active` (`domain`,`active`) -) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ; +) DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ; -- -------------------------------------------------------- @@ -909,7 +909,7 @@ CREATE TABLE `mail_forwarding` ( PRIMARY KEY (`forwarding_id`), KEY `server_id` (`server_id`,`source`), KEY `type` (`type`) -) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ; +) DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ; -- -------------------------------------------------------- @@ -934,7 +934,7 @@ CREATE TABLE `mail_get` ( `destination` varchar(255) default NULL, `active` varchar(255) NOT NULL default 'y', PRIMARY KEY (`mailget_id`) -) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ; +) DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ; -- -------------------------------------------------------- @@ -955,7 +955,7 @@ CREATE TABLE `mail_mailinglist` ( `email` varchar(255) NOT NULL DEFAULT '', `password` varchar(255) NOT NULL DEFAULT '', PRIMARY KEY (`mailinglist_id`) -) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ; +) DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ; -- -------------------------------------------------------- @@ -975,7 +975,7 @@ CREATE TABLE IF NOT EXISTS `mail_relay_recipient` ( `access` varchar(255) NOT NULL DEFAULT 'OK', `active` varchar(255) NOT NULL DEFAULT 'y', PRIMARY KEY (`relay_recipient_id`) -) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ; +) DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ; -- -------------------------------------------------------- @@ -990,7 +990,7 @@ CREATE TABLE `mail_traffic` ( `traffic` bigint(20) unsigned NOT NULL DEFAULT '0', PRIMARY KEY (`traffic_id`), KEY `mailuser_id` (`mailuser_id`,`month`) -) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ; +) DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ; -- -------------------------------------------------------- @@ -1013,7 +1013,7 @@ CREATE TABLE `mail_transport` ( PRIMARY KEY (`transport_id`), KEY `server_id` (`server_id`,`transport`), KEY `server_id_2` (`server_id`,`domain`) -) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ; +) DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ; -- -------------------------------------------------------- @@ -1066,7 +1066,7 @@ CREATE TABLE `mail_user` ( PRIMARY KEY (`mailuser_id`), KEY `server_id` (`server_id`,`email`), KEY `email_access` (`email`,`access`) -) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ; +) DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ; -- -------------------------------------------------------- @@ -1090,7 +1090,7 @@ CREATE TABLE `mail_user_filter` ( `target` varchar(255) default NULL, `active` enum('n','y') NOT NULL default 'y', PRIMARY KEY (`filter_id`) -) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ; +) DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ; -- -------------------------------------------------------- @@ -1105,7 +1105,7 @@ CREATE TABLE `monitor_data` ( `data` mediumtext, `state` enum('no_state','unknown','ok','info','warning','critical','error') NOT NULL DEFAULT 'unknown', PRIMARY KEY (`server_id`,`type`,`created`) -) ENGINE=MyISAM DEFAULT CHARSET=utf8 ; +) DEFAULT CHARSET=utf8 ; -- -------------------------------------------------------- @@ -1126,7 +1126,7 @@ CREATE TABLE IF NOT EXISTS `openvz_ip` ( `reserved` varchar(255) NOT NULL DEFAULT 'n', `additional` varchar(255) NOT NULL DEFAULT 'n', PRIMARY KEY (`ip_address_id`) -) ENGINE=MyISAM DEFAULT CHARSET=utf8 ; +) DEFAULT CHARSET=utf8 ; -- -- Dumping data for table `openvz_ip` @@ -1152,7 +1152,7 @@ CREATE TABLE IF NOT EXISTS `openvz_ostemplate` ( `active` varchar(255) NOT NULL DEFAULT 'y', `description` text, PRIMARY KEY (`ostemplate_id`) -) ENGINE=MyISAM DEFAULT CHARSET=utf8 ; +) DEFAULT CHARSET=utf8 ; -- -- Dumping data for table `openvz_ostemplate` @@ -1215,7 +1215,7 @@ CREATE TABLE IF NOT EXISTS `openvz_template` ( `iptables` varchar(255) DEFAULT NULL, `custom` text, PRIMARY KEY (`template_id`) -) ENGINE=MyISAM DEFAULT CHARSET=utf8 ; +) DEFAULT CHARSET=utf8 ; -- -- Dumping data for table `openvz_template` @@ -1234,7 +1234,7 @@ CREATE TABLE IF NOT EXISTS `openvz_traffic` ( `traffic_date` date NULL DEFAULT NULL, `traffic_bytes` bigint(32) unsigned NOT NULL DEFAULT '0', UNIQUE KEY (`veid`,`traffic_date`) -) ENGINE=MyISAM DEFAULT CHARSET=utf8; +) DEFAULT CHARSET=utf8; -- -- Dumping data for table `openvz_traffic` @@ -1283,7 +1283,7 @@ CREATE TABLE IF NOT EXISTS `openvz_vm` ( `config` mediumtext, `custom` text, PRIMARY KEY (`vm_id`) -) ENGINE=MyISAM DEFAULT CHARSET=utf8 ; +) DEFAULT CHARSET=utf8 ; -- -- Dumping data for table `openvz_vm` @@ -1302,7 +1302,7 @@ CREATE TABLE `remote_session` ( `client_login` tinyint(1) unsigned NOT NULL default '0', `tstamp` int(10) unsigned NOT NULL DEFAULT '0', PRIMARY KEY (`remote_session`) -) ENGINE=MyISAM DEFAULT CHARSET=utf8 ; +) DEFAULT CHARSET=utf8 ; -- -------------------------------------------------------- @@ -1323,7 +1323,7 @@ CREATE TABLE `remote_user` ( `remote_ips` TEXT, `remote_functions` text, PRIMARY KEY (`remote_userid`) -) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ; +) DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ; -- -------------------------------------------------------- @@ -1354,7 +1354,7 @@ CREATE TABLE `server` ( `dbversion` int(11) unsigned NOT NULL default '1', `active` tinyint(1) NOT NULL default '1', PRIMARY KEY (`server_id`) -) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ; +) DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ; -- -------------------------------------------------------- @@ -1376,7 +1376,7 @@ CREATE TABLE `server_ip` ( `virtualhost` enum('n','y') NOT NULL default 'y', `virtualhost_port` varchar(255) default '80,443', PRIMARY KEY (`server_ip_id`) -) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ; +) DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ; -- -------------------------------------------------------- @@ -1396,7 +1396,7 @@ CREATE TABLE `server_ip_map` ( `destination_ip` varchar(35) DEFAULT '', `active` enum('n','y') NOT NULL DEFAULT 'y', PRIMARY KEY (`server_ip_map_id`) -) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ; +) DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ; -- -------------------------------------------------------- @@ -1421,7 +1421,7 @@ CREATE TABLE `server_php` ( `php_fpm_pool_dir` varchar(255) DEFAULT NULL, `active` enum('n','y') NOT NULL DEFAULT 'y', PRIMARY KEY (`server_php_id`) -) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ; +) DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ; -- -------------------------------------------------------- @@ -1450,7 +1450,7 @@ CREATE TABLE `shell_user` ( `chroot` varchar(255) NOT NULL DEFAULT '', `ssh_rsa` text, PRIMARY KEY (`shell_user_id`) -) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ; +) DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ; -- -------------------------------------------------------- @@ -1473,7 +1473,7 @@ CREATE TABLE `software_package` ( `package_config` text, PRIMARY KEY (`package_id`), UNIQUE KEY `package_name` (`package_name`) -) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ; +) DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ; -- -------------------------------------------------------- @@ -1494,7 +1494,7 @@ CREATE TABLE `software_repo` ( `repo_password` varchar(64) default NULL, `active` enum('n','y') NOT NULL default 'y', PRIMARY KEY (`software_repo_id`) -) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ; +) DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ; -- -------------------------------------------------------- @@ -1516,7 +1516,7 @@ CREATE TABLE `software_update` ( `v4` tinyint(1) NOT NULL default '0', `type` enum('full','update') NOT NULL default 'full', PRIMARY KEY (`software_update_id`) -) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ; +) DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ; -- -------------------------------------------------------- @@ -1532,7 +1532,7 @@ CREATE TABLE `software_update_inst` ( `status` enum('none','installing','installed','deleting','deleted','failed') NOT NULL default 'none', PRIMARY KEY (`software_update_inst_id`), UNIQUE KEY `software_update_id` (`software_update_id`,`package_name`,`server_id`) -) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ; +) DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ; -- -------------------------------------------------------- @@ -1590,7 +1590,7 @@ CREATE TABLE `spamfilter_policy` ( `policyd_quota_out_period` int(11) NOT NULL DEFAULT '24', `policyd_greylist` ENUM( 'Y', 'N' ) NOT NULL DEFAULT 'N', PRIMARY KEY (`id`) -) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ; +) DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ; -- -------------------------------------------------------- @@ -1613,7 +1613,7 @@ CREATE TABLE `spamfilter_users` ( `local` varchar(1) default NULL, PRIMARY KEY (`id`), UNIQUE KEY `email` (`email`) -) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ; +) DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ; -- -------------------------------------------------------- @@ -1635,7 +1635,7 @@ CREATE TABLE `spamfilter_wblist` ( `priority` tinyint(3) unsigned NOT NULL DEFAULT '0', `active` enum('y','n') NOT NULL default 'y', PRIMARY KEY (`wblist_id`) -) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ; +) DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ; -- -------------------------------------------------------- @@ -1656,7 +1656,7 @@ CREATE TABLE `support_message` ( `message` text default NULL, `tstamp` int(11) NOT NULL default '0', PRIMARY KEY (`support_message_id`) -) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ; +) DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ; -- -------------------------------------------------------- @@ -1669,7 +1669,7 @@ CREATE TABLE `sys_config` ( `name` varchar(64) NOT NULL DEFAULT '', `value` varchar(255) NOT NULL DEFAULT '', PRIMARY KEY (`group`, `name`) -) ENGINE=MyISAM DEFAULT CHARSET=utf8; +) DEFAULT CHARSET=utf8; -- -------------------------------------------------------- @@ -1684,7 +1684,7 @@ CREATE TABLE IF NOT EXISTS `sys_cron` ( `next_run` datetime NULL DEFAULT NULL, `running` tinyint(1) UNSIGNED NOT NULL DEFAULT '0', PRIMARY KEY (`name`) -) ENGINE=MyISAM DEFAULT CHARSET=utf8; +) DEFAULT CHARSET=utf8; -- -------------------------------------------------------- @@ -1707,7 +1707,7 @@ CREATE TABLE `sys_datalog` ( `session_id` varchar(64) NOT NULL DEFAULT '', PRIMARY KEY (`datalog_id`), KEY `server_id` (`server_id`,`status`) -) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ; +) DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ; -- -------------------------------------------------------- @@ -1731,7 +1731,7 @@ CREATE TABLE `sys_dbsync` ( `last_datalog_id` int(11) unsigned NOT NULL default '0', PRIMARY KEY (`id`), KEY `last_datalog_id` (`last_datalog_id`) -) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ; +) DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ; -- -------------------------------------------------------- @@ -1751,7 +1751,7 @@ CREATE TABLE `sys_filesync` ( `wput_options` varchar(255) NOT NULL default '--timestamping --reupload --dont-continue', `active` tinyint(1) NOT NULL default '1', PRIMARY KEY (`id`) -) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ; +) DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ; -- -------------------------------------------------------- @@ -1765,7 +1765,7 @@ CREATE TABLE `sys_group` ( `description` text, `client_id` int(11) unsigned NOT NULL default '0', PRIMARY KEY (`groupid`) -) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ; +) DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ; -- -------------------------------------------------------- @@ -1779,7 +1779,7 @@ CREATE TABLE `sys_ini` ( `default_logo` text NOT NULL, `custom_logo` text NOT NULL, PRIMARY KEY (`sysini_id`) -) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ; +) DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ; -- -------------------------------------------------------- @@ -1795,7 +1795,7 @@ CREATE TABLE `sys_log` ( `tstamp` int(11) unsigned NOT NULL DEFAULT '0', `message` text, PRIMARY KEY (`syslog_id`) -) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ; +) DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ; -- -------------------------------------------------------- @@ -1813,7 +1813,7 @@ CREATE TABLE `sys_remoteaction` ( `response` mediumtext, PRIMARY KEY (`action_id`), KEY `server_id` (`server_id`) -) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ; +) DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ; -- -------------------------------------------------------- @@ -1829,7 +1829,7 @@ CREATE TABLE `sys_session` ( `session_data` longtext, PRIMARY KEY (`session_id`), KEY `last_updated` (`last_updated`) -) ENGINE=MyISAM DEFAULT CHARSET=utf8 ; +) DEFAULT CHARSET=utf8 ; -- -------------------------------------------------------- @@ -1848,7 +1848,7 @@ CREATE TABLE IF NOT EXISTS `sys_theme` ( `username` varchar(64) NOT NULL DEFAULT '', `logo_url` varchar(255) NOT NULL DEFAULT '', PRIMARY KEY (`var_id`) -) ENGINE=MyISAM DEFAULT CHARSET=utf8 ; +) DEFAULT CHARSET=utf8 ; -- -------------------------------------------------------- @@ -1880,7 +1880,7 @@ CREATE TABLE `sys_user` ( `lost_password_hash` VARCHAR(50) NOT NULL default '', `lost_password_reqtime` DATETIME NULL default NULL, PRIMARY KEY (`userid`) -) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ; +) DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ; -- -------------------------------------------------------- @@ -1903,7 +1903,7 @@ CREATE TABLE `webdav_user` ( `active` enum('n','y') NOT NULL DEFAULT 'y', `dir` varchar(255) DEFAULT NULL, PRIMARY KEY (`webdav_user_id`) -) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ; +) DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ; -- -------------------------------------------------------- @@ -1921,7 +1921,7 @@ CREATE TABLE `web_backup` ( `filename` varchar(255) NOT NULL DEFAULT '', `filesize` VARCHAR(20) NOT NULL DEFAULT '', PRIMARY KEY (`backup_id`) -) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ; +) DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ; -- -------------------------------------------------------- @@ -1955,7 +1955,7 @@ CREATE TABLE `web_database` ( PRIMARY KEY (`database_id`), KEY `database_user_id` (`database_user_id`), KEY `database_ro_user_id` (`database_ro_user_id`) -) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ; +) DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ; -- -------------------------------------------------------- @@ -1976,7 +1976,7 @@ CREATE TABLE IF NOT EXISTS `web_database_user` ( `database_password` varchar(64) DEFAULT NULL, `database_password_mongo` varchar(32) DEFAULT NULL, PRIMARY KEY (`database_user_id`) -) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ; +) DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ; -- -------------------------------------------------------- @@ -2068,7 +2068,7 @@ CREATE TABLE `web_domain` ( `log_retention` int(11) NOT NULL DEFAULT '10', PRIMARY KEY (`domain_id`), UNIQUE KEY `serverdomain` ( `server_id` , `ip_address`, `domain` ) -) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ; +) DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ; -- -------------------------------------------------------- @@ -2088,7 +2088,7 @@ CREATE TABLE IF NOT EXISTS `web_folder` ( `path` varchar(255) DEFAULT NULL, `active` varchar(255) NOT NULL DEFAULT 'y', PRIMARY KEY (`web_folder_id`) -) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ; +) DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ; -- -- Dumping data for table `web_folder` @@ -2114,7 +2114,7 @@ CREATE TABLE IF NOT EXISTS `web_folder_user` ( `password` varchar(255) DEFAULT NULL, `active` varchar(255) NOT NULL DEFAULT 'y', PRIMARY KEY (`web_folder_user_id`) -) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ; +) DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ; -- -- Dumping data for table `web_folder_user` @@ -2131,7 +2131,7 @@ CREATE TABLE `web_traffic` ( `traffic_date` date NULL DEFAULT NULL, `traffic_bytes` bigint(32) unsigned NOT NULL default '0', UNIQUE KEY (`hostname`,`traffic_date`) -) ENGINE=MyISAM DEFAULT CHARSET=utf8 ; +) DEFAULT CHARSET=utf8 ; -- -------------------------------------------------------- @@ -2190,7 +2190,7 @@ CREATE TABLE `xmpp_domain` ( PRIMARY KEY (`domain_id`), KEY `server_id` (`server_id`,`domain`), KEY `domain_active` (`domain`,`active`) -) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ; +) DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ; -- -------------------------------------------------------- @@ -2212,7 +2212,7 @@ CREATE TABLE `xmpp_user` ( PRIMARY KEY (`xmppuser_id`), KEY `server_id` (`server_id`,`jid`), KEY `jid_active` (`jid`,`active`) -) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ; +) DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ; -- -------------------------------------------------------- -- GitLab From 3c2f3189ce3f56cc1c6d48b285b748df50a40d05 Mon Sep 17 00:00:00 2001 From: Marius Burkard <m.burkard@pixcept.de> Date: Tue, 30 Jul 2019 22:23:26 +0200 Subject: [PATCH 118/215] - removed files from failed patches (orig/rej) --- install/dist/conf/debiantesting.conf.php.orig | 234 -- install/lib/installer_base.lib.php.orig | 2962 ----------------- .../incremental/upd_dev_collection.sql.orig | 0 .../incremental/upd_dev_collection.sql.rej | 40 - install/sql/ispconfig3.sql.orig | 2570 -------------- install/sql/ispconfig3.sql.rej | 23 - .../admin/form/server_config.tform.php.orig | 1956 ----------- .../admin/lib/lang/de_server_config.lng.orig | 299 -- .../admin/lib/lang/de_server_config.lng.rej | 11 - .../admin/lib/lang/en_server_config.lng.orig | 300 -- .../admin/lib/lang/en_server_config.lng.rej | 11 - .../form/spamfilter_policy.tform.php.orig | 496 --- 12 files changed, 8902 deletions(-) delete mode 100644 install/dist/conf/debiantesting.conf.php.orig delete mode 100644 install/lib/installer_base.lib.php.orig delete mode 100644 install/sql/incremental/upd_dev_collection.sql.orig delete mode 100644 install/sql/incremental/upd_dev_collection.sql.rej delete mode 100644 install/sql/ispconfig3.sql.orig delete mode 100644 install/sql/ispconfig3.sql.rej delete mode 100644 interface/web/admin/form/server_config.tform.php.orig delete mode 100644 interface/web/admin/lib/lang/de_server_config.lng.orig delete mode 100644 interface/web/admin/lib/lang/de_server_config.lng.rej delete mode 100644 interface/web/admin/lib/lang/en_server_config.lng.orig delete mode 100644 interface/web/admin/lib/lang/en_server_config.lng.rej delete mode 100644 interface/web/mail/form/spamfilter_policy.tform.php.orig diff --git a/install/dist/conf/debiantesting.conf.php.orig b/install/dist/conf/debiantesting.conf.php.orig deleted file mode 100644 index 5e5e32f474..0000000000 --- a/install/dist/conf/debiantesting.conf.php.orig +++ /dev/null @@ -1,234 +0,0 @@ -<?php - -/* -Copyright (c) 2016, Till Brehm, ISPConfig UG -All rights reserved. - -Redistribution and use in source and binary forms, with or without modification, -are permitted provided that the following conditions are met: - - * Redistributions of source code must retain the above copyright notice, - this list of conditions and the following disclaimer. - * Redistributions in binary form must reproduce the above copyright notice, - this list of conditions and the following disclaimer in the documentation - and/or other materials provided with the distribution. - * Neither the name of ISPConfig nor the names of its contributors - may be used to endorse or promote products derived from this software without - specific prior written permission. - -THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND -ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED -WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. -IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, -INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, -BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY -OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING -NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, -EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. -*/ - -//*** Debian Testing default settings - -//* Main -$conf['language'] = 'en'; -$conf['distname'] = 'debian100'; -$conf['hostname'] = 'server1.domain.tld'; // Full hostname -$conf['ispconfig_install_dir'] = '/usr/local/ispconfig'; -$conf['ispconfig_config_dir'] = '/usr/local/ispconfig'; -$conf['ispconfig_log_priority'] = 2; // 0 = Debug, 1 = Warning, 2 = Error -$conf['ispconfig_log_dir'] = '/var/log/ispconfig'; -$conf['server_id'] = 1; -$conf['init_scripts'] = '/etc/init.d'; -$conf['runlevel'] = '/etc'; -$conf['shells'] = '/etc/shells'; -$conf['pam'] = '/etc/pam.d'; - -//* Services provided by this server, this selection will be overridden by the expert mode -$conf['services']['mail'] = true; -$conf['services']['web'] = true; -$conf['services']['dns'] = true; -$conf['services']['file'] = true; -$conf['services']['db'] = true; -$conf['services']['vserver'] = true; -$conf['services']['proxy'] = false; -$conf['services']['firewall'] = false; - -//* MySQL -$conf['mysql']['installed'] = false; // will be detected automatically during installation -$conf['mysql']['init_script'] = 'mysql'; -$conf['mysql']['host'] = 'localhost'; -$conf['mysql']['ip'] = '127.0.0.1'; -$conf['mysql']['port'] = '3306'; -$conf['mysql']['database'] = 'dbispconfig'; -$conf['mysql']['admin_user'] = 'root'; -$conf['mysql']['admin_password'] = ''; -$conf['mysql']['charset'] = 'utf8'; -$conf['mysql']['ispconfig_user'] = 'ispconfig'; -$conf['mysql']['ispconfig_password'] = md5(uniqid(rand())); -$conf['mysql']['master_slave_setup'] = 'n'; -$conf['mysql']['master_host'] = ''; -$conf['mysql']['master_database'] = 'dbispconfig'; -$conf['mysql']['master_admin_user'] = 'root'; -$conf['mysql']['master_admin_password'] = ''; -$conf['mysql']['master_ispconfig_user'] = ''; -$conf['mysql']['master_ispconfig_password'] = md5(uniqid(rand())); - -//* Apache -$conf['apache']['installed'] = false; // will be detected automatically during installation -$conf['apache']['user'] = 'www-data'; -$conf['apache']['group'] = 'www-data'; -$conf['apache']['init_script'] = 'apache2'; -$conf['apache']['version'] = '2.4'; -$conf['apache']['vhost_conf_dir'] = '/etc/apache2/sites-available'; -$conf['apache']['vhost_conf_enabled_dir'] = '/etc/apache2/sites-enabled'; -$conf['apache']['vhost_port'] = '8080'; -$conf['apache']['php_ini_path_apache'] = '/etc/php/7.3/apache2/php.ini'; -$conf['apache']['php_ini_path_cgi'] = '/etc/php/7.3/cgi/php.ini'; - -//* Website base settings -$conf['web']['website_basedir'] = '/var/www'; -$conf['web']['website_path'] = '/var/www/clients/client[client_id]/web[website_id]'; -$conf['web']['website_symlinks'] = '/var/www/[website_domain]/:/var/www/clients/client[client_id]/[website_domain]/'; - -//* Apps base settings -$conf['web']['apps_vhost_ip'] = '_default_'; -$conf['web']['apps_vhost_port'] = '8081'; -$conf['web']['apps_vhost_servername'] = ''; -$conf['web']['apps_vhost_user'] = 'ispapps'; -$conf['web']['apps_vhost_group'] = 'ispapps'; - -//* Fastcgi -$conf['fastcgi']['fastcgi_phpini_path'] = '/etc/php/7.3/cgi/'; -$conf['fastcgi']['fastcgi_starter_path'] = '/var/www/php-fcgi-scripts/[system_user]/'; -$conf['fastcgi']['fastcgi_bin'] = '/usr/bin/php-cgi'; - -//* Postfix -$conf['postfix']['installed'] = false; // will be detected automatically during installation -$conf['postfix']['config_dir'] = '/etc/postfix'; -$conf['postfix']['init_script'] = 'postfix'; -$conf['postfix']['user'] = 'postfix'; -$conf['postfix']['group'] = 'postfix'; -$conf['postfix']['vmail_userid'] = '5000'; -$conf['postfix']['vmail_username'] = 'vmail'; -$conf['postfix']['vmail_groupid'] = '5000'; -$conf['postfix']['vmail_groupname'] = 'vmail'; -$conf['postfix']['vmail_mailbox_base'] = '/var/vmail'; - -//* Mailman -$conf['mailman']['installed'] = false; // will be detected automatically during installation -$conf['mailman']['config_dir'] = '/etc/mailman'; -$conf['mailman']['init_script'] = 'mailman'; - -//* mlmmj -$conf['mlmmj']['installed'] = false; // will be detected automatically during installation -$conf['mlmmj']['config_dir'] = '/etc/mlmmj'; - -//* Getmail -$conf['getmail']['installed'] = false; // will be detected automatically during installation -$conf['getmail']['config_dir'] = '/etc/getmail'; -$conf['getmail']['program'] = '/usr/bin/getmail'; - -//* Courier -$conf['courier']['installed'] = false; // will be detected automatically during installation -$conf['courier']['config_dir'] = '/etc/courier'; -$conf['courier']['courier-authdaemon'] = 'courier-authdaemon'; -$conf['courier']['courier-imap'] = 'courier-imap'; -$conf['courier']['courier-imap-ssl'] = 'courier-imap-ssl'; -$conf['courier']['courier-pop'] = 'courier-pop'; -$conf['courier']['courier-pop-ssl'] = 'courier-pop-ssl'; - -//* Dovecot -$conf['dovecot']['installed'] = false; // will be detected automatically during installation -$conf['dovecot']['config_dir'] = '/etc/dovecot'; -$conf['dovecot']['init_script'] = 'dovecot'; - -//* SASL -$conf['saslauthd']['installed'] = false; // will be detected automatically during installation -$conf['saslauthd']['config'] = '/etc/default/saslauthd'; -$conf['saslauthd']['init_script'] = 'saslauthd'; - -//* Amavisd -$conf['amavis']['installed'] = false; // will be detected automatically during installation -$conf['amavis']['config_dir'] = '/etc/amavis'; -$conf['amavis']['init_script'] = 'amavis'; - -//* ClamAV -$conf['clamav']['installed'] = false; // will be detected automatically during installation -$conf['clamav']['init_script'] = 'clamav-daemon'; - -//* Pureftpd -$conf['pureftpd']['installed'] = false; // will be detected automatically during installation -$conf['pureftpd']['config_dir'] = '/etc/pure-ftpd'; -$conf['pureftpd']['init_script'] = 'pure-ftpd-mysql'; - -//* MyDNS -$conf['mydns']['installed'] = false; // will be detected automatically during installation -$conf['mydns']['config_dir'] = '/etc'; -$conf['mydns']['init_script'] = 'mydns'; - -//* PowerDNS -$conf['powerdns']['installed'] = false; // will be detected automatically during installation -$conf['powerdns']['database'] = 'powerdns'; -$conf["powerdns"]["config_dir"] = '/etc/powerdns/pdns.d'; -$conf['powerdns']['init_script'] = 'pdns'; - -//* BIND DNS Server -$conf['bind']['installed'] = false; // will be detected automatically during installation -$conf['bind']['bind_user'] = 'root'; -$conf['bind']['bind_group'] = 'bind'; -$conf['bind']['bind_zonefiles_dir'] = '/etc/bind'; -$conf['bind']['named_conf_path'] = '/etc/bind/named.conf'; -$conf['bind']['named_conf_local_path'] = '/etc/bind/named.conf.local'; -$conf['bind']['init_script'] = 'bind9'; - -//* Jailkit -$conf['jailkit']['installed'] = false; // will be detected automatically during installation -$conf['jailkit']['config_dir'] = '/etc/jailkit'; -$conf['jailkit']['jk_init'] = 'jk_init.ini'; -$conf['jailkit']['jk_chrootsh'] = 'jk_chrootsh.ini'; -$conf['jailkit']['jailkit_chroot_app_programs'] = '/usr/bin/groups /usr/bin/id /usr/bin/dircolors /usr/bin/lesspipe /usr/bin/basename /usr/bin/dirname /usr/bin/nano /usr/bin/pico /usr/bin/mysql /usr/bin/mysqldump /usr/bin/git /usr/bin/git-receive-pack /usr/bin/git-upload-pack /usr/bin/unzip /usr/bin/zip /bin/tar /bin/rm /usr/bin/patch'; -$conf['jailkit']['jailkit_chroot_cron_programs'] = '/usr/bin/php /usr/bin/perl /usr/share/perl /usr/share/php'; - -//* Squid -$conf['squid']['installed'] = false; // will be detected automatically during installation -$conf['squid']['config_dir'] = '/etc/squid'; -$conf['squid']['init_script'] = 'squid'; - -//* Nginx -$conf['nginx']['installed'] = false; // will be detected automatically during installation -$conf['nginx']['user'] = 'www-data'; -$conf['nginx']['group'] = 'www-data'; -$conf['nginx']['config_dir'] = '/etc/nginx'; -$conf['nginx']['vhost_conf_dir'] = '/etc/nginx/sites-available'; -$conf['nginx']['vhost_conf_enabled_dir'] = '/etc/nginx/sites-enabled'; -$conf['nginx']['init_script'] = 'nginx'; -$conf['nginx']['vhost_port'] = '8080'; -$conf['nginx']['cgi_socket'] = '/var/run/fcgiwrap.socket'; -$conf['nginx']['php_fpm_init_script'] = 'php7.3-fpm'; -$conf['nginx']['php_fpm_ini_path'] = '/etc/php/7.3/fpm/php.ini'; -$conf['nginx']['php_fpm_pool_dir'] = '/etc/php/7.3/fpm/pool.d'; -$conf['nginx']['php_fpm_start_port'] = 9010; -$conf['nginx']['php_fpm_socket_dir'] = '/var/lib/php7.3-fpm'; - -//* OpenVZ -$conf['openvz']['installed'] = false; - -//*Bastille-Firwall -$conf['bastille']['installed'] = false; -$conf['bastille']['config_dir'] = '/etc/Bastille'; - -//* vlogger -$conf['vlogger']['config_dir'] = '/etc'; - -//* cron -$conf['cron']['init_script'] = 'cron'; -$conf['cron']['crontab_dir'] = '/etc/cron.d'; -$conf['cron']['wget'] = '/usr/bin/wget'; - -//* Metronome XMPP -$conf['xmpp']['installed'] = false; -$conf['xmpp']['init_script'] = 'metronome'; - - -?> diff --git a/install/lib/installer_base.lib.php.orig b/install/lib/installer_base.lib.php.orig deleted file mode 100644 index 8d0456ef5b..0000000000 --- a/install/lib/installer_base.lib.php.orig +++ /dev/null @@ -1,2962 +0,0 @@ -<?php - -/* -Copyright (c) 2007-2010, Till Brehm, projektfarm Gmbh -All rights reserved. - -Redistribution and use in source and binary forms, with or without modification, -are permitted provided that the following conditions are met: - - * Redistributions of source code must retain the above copyright notice, - this list of conditions and the following disclaimer. - * Redistributions in binary form must reproduce the above copyright notice, - this list of conditions and the following disclaimer in the documentation - and/or other materials provided with the distribution. - * Neither the name of ISPConfig nor the names of its contributors - may be used to endorse or promote products derived from this software without - specific prior written permission. - -THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND -ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED -WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. -IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, -INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, -BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY -OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING -NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, -EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. -*/ - -class installer_base { - - var $wb = array(); - var $language = 'en'; - var $db; - public $conf; - public $install_ispconfig_interface = true; - public $is_update = false; // true if it is an update, falsi if it is a new install - public $min_php = '5.3.3'; // minimal php-version for update / install - protected $mailman_group = 'list'; - - - public function __construct() { - global $conf; //TODO: maybe $conf should be passed to constructor - //$this->conf = $conf; - } - - //: TODO Implement the translation function and language files for the installer. - public function lng($text) { - return $text; - } - - public function error($msg) { - die('ERROR: '.$msg."\n"); - } - - public function warning($msg) { - echo 'WARNING: '.$msg."\n"; - } - - public function simple_query($query, $answers, $default, $name = '') { - global $autoinstall, $autoupdate; - $finished = false; - do { - if($name != '' && $autoinstall[$name] != '') { - if($autoinstall[$name] == 'default') { - $input = $default; - } else { - $input = $autoinstall[$name]; - } - } elseif($name != '' && $autoupdate[$name] != '') { - if($autoupdate[$name] == 'default') { - $input = $default; - } else { - $input = $autoupdate[$name]; - } - } else { - $answers_str = implode(',', $answers); - swrite($this->lng($query).' ('.$answers_str.') ['.$default.']: '); - $input = sread(); - } - - //* Stop the installation - if($input == 'quit') { - swriteln($this->lng("Installation terminated by user.\n")); - die(); - } - - //* Select the default - if($input == '') { - $answer = $default; - $finished = true; - } - - //* Set answer id valid - if(in_array($input, $answers)) { - $answer = $input; - $finished = true; - } - - } while ($finished == false); - swriteln(); - return $answer; - } - - public function free_query($query, $default, $name = '') { - global $autoinstall, $autoupdate; - if($name != '' && $autoinstall[$name] != '') { - if($autoinstall[$name] == 'default') { - $input = $default; - } else { - $input = $autoinstall[$name]; - } - } elseif($name != '' && $autoupdate[$name] != '') { - if($autoupdate[$name] == 'default') { - $input = $default; - } else { - $input = $autoupdate[$name]; - } - } else { - swrite($this->lng($query).' ['.$default.']: '); - $input = sread(); - } - - //* Stop the installation - if($input == 'quit') { - swriteln($this->lng("Installation terminated by user.\n")); - die(); - } - - $answer = ($input == '') ? $default : $input; - swriteln(); - return $answer; - } - - /* - // TODO: this function is not used atmo I think - pedro - function request_language(){ - - swriteln(lng('Enter your language')); - swriteln(lng('de, en')); - - } - */ - - //** Detect PHP-Version - public function get_php_version() { - if(version_compare(PHP_VERSION, $this->min_php, '<')) return false; - else return true; - } - - //** Detect installed applications - public function find_installed_apps() { - global $conf; - - if(is_installed('mysql') || is_installed('mysqld')) $conf['mysql']['installed'] = true; - if(is_installed('postfix')) $conf['postfix']['installed'] = true; - if(is_installed('postgrey')) $conf['postgrey']['installed'] = true; - if(is_installed('mailman') || is_installed('mmsitepass')) $conf['mailman']['installed'] = true; - if(is_installed('apache') || is_installed('apache2') || is_installed('httpd') || is_installed('httpd2')) $conf['apache']['installed'] = true; - if(is_installed('getmail')) $conf['getmail']['installed'] = true; - if(is_installed('courierlogger')) $conf['courier']['installed'] = true; - if(is_installed('dovecot')) $conf['dovecot']['installed'] = true; - if(is_installed('saslauthd')) $conf['saslauthd']['installed'] = true; - if(is_installed('amavisd-new') || is_installed('amavisd')) $conf['amavis']['installed'] = true; - if(is_installed('clamdscan')) $conf['clamav']['installed'] = true; - if(is_installed('pure-ftpd') || is_installed('pure-ftpd-wrapper')) $conf['pureftpd']['installed'] = true; - if(is_installed('mydns') || is_installed('mydns-ng')) $conf['mydns']['installed'] = true; - if(is_installed('jk_chrootsh')) $conf['jailkit']['installed'] = true; - if(is_installed('pdns_server') || is_installed('pdns_control')) $conf['powerdns']['installed'] = true; - if(is_installed('named') || is_installed('bind') || is_installed('bind9')) $conf['bind']['installed'] = true; - if(is_installed('squid')) $conf['squid']['installed'] = true; - if(is_installed('nginx')) $conf['nginx']['installed'] = true; - if(is_installed('iptables') && is_installed('ufw')) { - $conf['ufw']['installed'] = true; - } elseif(is_installed('iptables')) { - $conf['firewall']['installed'] = true; - } - if(is_installed('fail2ban-server')) $conf['fail2ban']['installed'] = true; - if(is_installed('vzctl')) $conf['openvz']['installed'] = true; - if(is_installed('metronome') && is_installed('metronomectl')) $conf['xmpp']['installed'] = true; - if(is_installed('spamassassin')) $conf['spamassassin']['installed'] = true; - // if(is_installed('vlogger')) $conf['vlogger']['installed'] = true; - // ISPConfig ships with vlogger, so it is always installed. - $conf['vlogger']['installed'] = true; - if(is_installed('cron') || is_installed('anacron')) $conf['cron']['installed'] = true; - - if (($conf['apache']['installed'] && is_file($conf['apache']["vhost_conf_enabled_dir"]."/000-ispconfig.vhost")) || ($conf['nginx']['installed'] && is_file($conf['nginx']["vhost_conf_enabled_dir"]."/000-ispconfig.vhost"))) $this->ispconfig_interface_installed = true; - } - - public function force_configure_app($service, $enable_force=true) { - $force = false; - if(AUTOINSTALL == true) return false; - if($enable_force == true) { - swriteln("[WARN] autodetect for $service failed"); - } else { - swriteln("[INFO] service $service not detected"); - } - if($enable_force) { - if(strtolower($this->simple_query("Force configure $service", array('y', 'n'), 'n') ) == 'y') { - $force = true; - } else swriteln("Skipping $service\n"); - } - return $force; - } - - public function reconfigure_app($service, $reconfigure_services_answer) { - $reconfigure = false; - if ($reconfigure_services_answer != 'selected') { - $reconfigure = true; - } else { - if(strtolower($this->simple_query("Reconfigure $service", array('y', 'n'), 'y') ) == 'y') { - $reconfigure = true; - } else { - swriteln("Skip reconfigure $service\n"); - } - } - return $reconfigure; - } - - /** Create the database for ISPConfig */ - - - public function configure_database() { - global $conf; - - //* check sql-mode - /*$check_sql_mode = $this->db->queryOneRecord("SELECT @@sql_mode"); - - if ($check_sql_mode['@@sql_mode'] != '' && $check_sql_mode['@@sql_mode'] != 'NO_ENGINE_SUBSTITUTION') { - echo "Wrong SQL-mode. You should use NO_ENGINE_SUBSTITUTION. Add\n\n"; - echo " sql-mode=\"NO_ENGINE_SUBSTITUTION\"\n\n"; - echo"to the mysqld-section in your mysql-config on this server and restart mysqld afterwards\n"; - die(); - }*/ - - $unwanted_sql_plugins = array('validate_password'); - $sql_plugins = $this->db->queryAllRecords("SELECT plugin_name FROM information_schema.plugins WHERE plugin_status='ACTIVE' AND plugin_name IN ?", $unwanted_sql_plugins); - if(is_array($sql_plugins) && !empty($sql_plugins)) { - foreach ($sql_plugins as $plugin) echo "Login in to MySQL and disable $plugin[plugin_name] with:\n\n UNINSTALL PLUGIN $plugin[plugin_name];"; - die(); - } - - //** Create the database - if(!$this->db->query('CREATE DATABASE IF NOT EXISTS ?? DEFAULT CHARACTER SET ?', $conf['mysql']['database'], $conf['mysql']['charset'])) { - $this->error('Unable to create MySQL database: '.$conf['mysql']['database'].'.'); - } - - //* Set the database name in the DB library - $this->db->setDBName($conf['mysql']['database']); - - //* Load the database dump into the database, if database contains no tables - $db_tables = $this->db->getTables(); - if(count($db_tables) > 0) { - $this->error('Stopped: Database already contains some tables.'); - } else { - if($conf['mysql']['admin_password'] == '') { - caselog("mysql --default-character-set=".escapeshellarg($conf['mysql']['charset'])." -h ".escapeshellarg($conf['mysql']['host'])." -u ".escapeshellarg($conf['mysql']['admin_user'])." -P ".escapeshellarg($conf['mysql']['port'])." ".escapeshellarg($conf['mysql']['database'])." < '".ISPC_INSTALL_ROOT."/install/sql/ispconfig3.sql' &> /dev/null", - __FILE__, __LINE__, 'read in ispconfig3.sql', 'could not read in ispconfig3.sql'); - } else { - caselog("mysql --default-character-set=".escapeshellarg($conf['mysql']['charset'])." -h ".escapeshellarg($conf['mysql']['host'])." -u ".escapeshellarg($conf['mysql']['admin_user'])." -p".escapeshellarg($conf['mysql']['admin_password'])." -P ".escapeshellarg($conf['mysql']['port'])." ".escapeshellarg($conf['mysql']['database'])." < '".ISPC_INSTALL_ROOT."/install/sql/ispconfig3.sql' &> /dev/null", - __FILE__, __LINE__, 'read in ispconfig3.sql', 'could not read in ispconfig3.sql'); - } - $db_tables = $this->db->getTables(); - if(count($db_tables) == 0) { - $this->error('Unable to load SQL-Dump into database table.'); - } - - //* Load system.ini into the sys_ini table - $system_ini = rf('tpl/system.ini.master'); - $this->db->query("UPDATE sys_ini SET config = ? WHERE sysini_id = 1", $system_ini); - - } - } - - //** Create the server record in the database - public function add_database_server_record() { - - global $conf; - - if($conf['mysql']['host'] == 'localhost') { - $from_host = 'localhost'; - } else { - $from_host = $conf['hostname']; - } - - // Delete ISPConfig user in the local database, in case that it exists - $this->db->query("DROP USER ?@?", $conf['mysql']['ispconfig_user'], $from_host); - $this->db->query("DROP DATABASE IF EXISTS ?", $conf['mysql']['database']); - - //* Create the ISPConfig database user and grant permissions in the local database - $query = 'CREATE USER ?@? IDENTIFIED BY ?'; - if(!$this->db->query($query, $conf['mysql']['ispconfig_user'], $from_host, $conf['mysql']['ispconfig_password'])) { - $this->error('Unable to create database user: '.$conf['mysql']['ispconfig_user'].' Error: '.$this->db->errorMessage); - } - $query = 'GRANT SELECT, INSERT, UPDATE, DELETE ON ?? TO ?@?'; - if(!$this->db->query($query, $conf['mysql']['database'] . ".*", $conf['mysql']['ispconfig_user'], $from_host)) { - $this->error('Unable to grant databse permissions to user: '.$conf['mysql']['ispconfig_user'].' Error: '.$this->db->errorMessage); - } - - //* Set the database name in the DB library - $this->db->setDBName($conf['mysql']['database']); - - $tpl_ini_array = ini_to_array(rf('tpl/server.ini.master')); - - //* Update further distribution specific parameters for server config here - //* HINT: Every line added here has to be added in update.lib.php too!! - $tpl_ini_array['web']['vhost_conf_dir'] = $conf['apache']['vhost_conf_dir']; - $tpl_ini_array['web']['vhost_conf_enabled_dir'] = $conf['apache']['vhost_conf_enabled_dir']; - $tpl_ini_array['jailkit']['jailkit_chroot_app_programs'] = $conf['jailkit']['jailkit_chroot_app_programs']; - $tpl_ini_array['fastcgi']['fastcgi_phpini_path'] = $conf['fastcgi']['fastcgi_phpini_path']; - $tpl_ini_array['fastcgi']['fastcgi_starter_path'] = $conf['fastcgi']['fastcgi_starter_path']; - $tpl_ini_array['fastcgi']['fastcgi_bin'] = $conf['fastcgi']['fastcgi_bin']; - $tpl_ini_array['server']['hostname'] = $conf['hostname']; - $tpl_ini_array['server']['ip_address'] = @gethostbyname($conf['hostname']); - $tpl_ini_array['server']['firewall'] = ($conf['ufw']['installed'] == true)?'ufw':'bastille'; - $tpl_ini_array['web']['website_basedir'] = $conf['web']['website_basedir']; - $tpl_ini_array['web']['website_path'] = $conf['web']['website_path']; - $tpl_ini_array['web']['website_symlinks'] = $conf['web']['website_symlinks']; - $tpl_ini_array['cron']['crontab_dir'] = $conf['cron']['crontab_dir']; - $tpl_ini_array['web']['security_level'] = 20; - $tpl_ini_array['web']['user'] = $conf['apache']['user']; - $tpl_ini_array['web']['group'] = $conf['apache']['group']; - $tpl_ini_array['web']['php_ini_path_apache'] = $conf['apache']['php_ini_path_apache']; - $tpl_ini_array['web']['php_ini_path_cgi'] = $conf['apache']['php_ini_path_cgi']; - $tpl_ini_array['mail']['pop3_imap_daemon'] = ($conf['dovecot']['installed'] == true)?'dovecot':'courier'; - $tpl_ini_array['mail']['mail_filter_syntax'] = ($conf['dovecot']['installed'] == true)?'sieve':'maildrop'; - $tpl_ini_array['dns']['bind_user'] = $conf['bind']['bind_user']; - $tpl_ini_array['dns']['bind_group'] = $conf['bind']['bind_group']; - $tpl_ini_array['dns']['bind_zonefiles_dir'] = $conf['bind']['bind_zonefiles_dir']; - $tpl_ini_array['dns']['named_conf_path'] = $conf['bind']['named_conf_path']; - $tpl_ini_array['dns']['named_conf_local_path'] = $conf['bind']['named_conf_local_path']; - - $tpl_ini_array['web']['nginx_vhost_conf_dir'] = $conf['nginx']['vhost_conf_dir']; - $tpl_ini_array['web']['nginx_vhost_conf_enabled_dir'] = $conf['nginx']['vhost_conf_enabled_dir']; - $tpl_ini_array['web']['nginx_user'] = $conf['nginx']['user']; - $tpl_ini_array['web']['nginx_group'] = $conf['nginx']['group']; - $tpl_ini_array['web']['nginx_cgi_socket'] = $conf['nginx']['cgi_socket']; - $tpl_ini_array['web']['php_fpm_init_script'] = $conf['nginx']['php_fpm_init_script']; - $tpl_ini_array['web']['php_fpm_ini_path'] = $conf['nginx']['php_fpm_ini_path']; - $tpl_ini_array['web']['php_fpm_pool_dir'] = $conf['nginx']['php_fpm_pool_dir']; - $tpl_ini_array['web']['php_fpm_start_port'] = $conf['nginx']['php_fpm_start_port']; - $tpl_ini_array['web']['php_fpm_socket_dir'] = $conf['nginx']['php_fpm_socket_dir']; - - if ($conf['nginx']['installed'] == true) { - $tpl_ini_array['web']['server_type'] = 'nginx'; - $tpl_ini_array['global']['webserver'] = 'nginx'; - } - - if (array_key_exists('awstats', $conf)) { - foreach ($conf['awstats'] as $aw_sett => $aw_value) { - $tpl_ini_array['web']['awstats_'.$aw_sett] = $aw_value; - } - } - - $server_ini_content = array_to_ini($tpl_ini_array); - - $mail_server_enabled = ($conf['services']['mail'])?1:0; - $web_server_enabled = ($conf['services']['web'])?1:0; - $dns_server_enabled = ($conf['services']['dns'])?1:0; - $file_server_enabled = ($conf['services']['file'])?1:0; - $db_server_enabled = ($conf['services']['db'])?1:0; - $vserver_server_enabled = ($conf['openvz']['installed'])?1:0; - $proxy_server_enabled = (isset($conf['services']['proxy']) && $conf['services']['proxy'])?1:0; - $firewall_server_enabled = (isset($conf['services']['firewall']) && $conf['services']['firewall'])?1:0; - - //** Get the database version number based on the patchfiles - $found = true; - $current_db_version = 1; - while($found == true) { - $next_db_version = intval($current_db_version + 1); - $patch_filename = realpath(dirname(__FILE__).'/../').'/sql/incremental/upd_'.str_pad($next_db_version, 4, '0', STR_PAD_LEFT).'.sql'; - if(is_file($patch_filename)) { - $current_db_version = $next_db_version; - } else { - $found = false; - } - } - $current_db_version = intval($current_db_version); - - - if($conf['mysql']['master_slave_setup'] == 'y') { - - //* Insert the server record in master DB - $sql = "INSERT INTO `server` (`sys_userid`, `sys_groupid`, `sys_perm_user`, `sys_perm_group`, `sys_perm_other`, `server_name`, `mail_server`, `web_server`, `dns_server`, `file_server`, `db_server`, `vserver_server`, `config`, `updated`, `active`, `dbversion`,`firewall_server`,`proxy_server`) VALUES (1, 1, 'riud', 'riud', 'r', ?, ?, ?, ?, ?, ?, ?, ?, 0, 1, ?, ?, ?);"; - $this->dbmaster->query($sql, $conf['hostname'], $mail_server_enabled, $web_server_enabled, $dns_server_enabled, $file_server_enabled, $db_server_enabled, $vserver_server_enabled, $server_ini_content, $current_db_version, $proxy_server_enabled, $firewall_server_enabled); - $conf['server_id'] = $this->dbmaster->insertID(); - $conf['server_id'] = $conf['server_id']; - - //* Insert the same record in the local DB - $sql = "INSERT INTO `server` (`server_id`, `sys_userid`, `sys_groupid`, `sys_perm_user`, `sys_perm_group`, `sys_perm_other`, `server_name`, `mail_server`, `web_server`, `dns_server`, `file_server`, `db_server`, `vserver_server`, `config`, `updated`, `active`, `dbversion`,`firewall_server`,`proxy_server`) VALUES (?,1, 1, 'riud', 'riud', 'r', ?, ?, ?, ?, ?, ?, ?, ?, 0, 1, ?, ?, ?);"; - $this->db->query($sql, $conf['server_id'], $conf['hostname'], $mail_server_enabled, $web_server_enabled, $dns_server_enabled, $file_server_enabled, $db_server_enabled, $vserver_server_enabled, $server_ini_content, $current_db_version, $proxy_server_enabled, $firewall_server_enabled); - - //* username for the ispconfig user - $conf['mysql']['master_ispconfig_user'] = 'ispcsrv'.$conf['server_id']; - - $this->grant_master_database_rights(); - - } else { - //* Insert the server, if its not a mster / slave setup - $sql = "INSERT INTO `server` (`sys_userid`, `sys_groupid`, `sys_perm_user`, `sys_perm_group`, `sys_perm_other`, `server_name`, `mail_server`, `web_server`, `dns_server`, `file_server`, `db_server`, `vserver_server`, `config`, `updated`, `active`, `dbversion`,`firewall_server`,`proxy_server`) VALUES (1, 1, 'riud', 'riud', 'r', ?, ?, ?, ?, ?, ?, ?, ?, 0, 1, ?, ?, ?);"; - $this->db->query($sql, $conf['hostname'], $mail_server_enabled, $web_server_enabled, $dns_server_enabled, $file_server_enabled, $db_server_enabled, $vserver_server_enabled, $server_ini_content, $current_db_version, $proxy_server_enabled, $firewall_server_enabled); - $conf['server_id'] = $this->db->insertID(); - $conf['server_id'] = $conf['server_id']; - } - - - } - - public function detect_ips(){ - global $conf; - - exec("ip addr show | awk '/global/ { print $2 }' | cut -d '/' -f 1", $output, $retval); - - if($retval == 0){ - if(is_array($output) && !empty($output)){ - foreach($output as $line){ - $line = trim($line); - $ip_type = ''; - if (filter_var($line, FILTER_VALIDATE_IP, FILTER_FLAG_IPV4)) { - $ip_type = 'IPv4'; - } - if (filter_var($line, FILTER_VALIDATE_IP, FILTER_FLAG_IPV6)) { - $ip_type = 'IPv6'; - } - if($ip_type == '') continue; - if($this->db->dbHost != $this->dbmaster->dbHost){ - $this->dbmaster->query('INSERT INTO server_ip ( - sys_userid, sys_groupid, sys_perm_user, sys_perm_group, - sys_perm_other, server_id, client_id, ip_type, ip_address, - virtualhost, virtualhost_port - ) VALUES ( - 1, - 1, - "riud", - "riud", - "", - ?, - 0, - ?, - ?, - "y", - "80,443" - )', $conf['server_id'], $ip_type, $line); - $server_ip_id = $this->dbmaster->insertID(); - $this->db->query('INSERT INTO server_ip ( - server_php_id, sys_userid, sys_groupid, sys_perm_user, sys_perm_group, - sys_perm_other, server_id, client_id, ip_type, ip_address, - virtualhost, virtualhost_port - ) VALUES ( - ?, - 1, - 1, - "riud", - "riud", - "", - ?, - 0, - ?, - ?, - "y", - "80,443" - )', $server_ip_id, $conf['server_id'], $ip_type, $line); - } else { - $this->db->query('INSERT INTO server_ip ( - sys_userid, sys_groupid, sys_perm_user, sys_perm_group, - sys_perm_other, server_id, client_id, ip_type, ip_address, - virtualhost, virtualhost_port - ) VALUES ( - 1, - 1, - "riud", - "riud", - "", - ?, - 0, - ?, - ?, - "y", - "80,443" - )', $conf['server_id'], $ip_type, $line); - } - } - } - } - } - - public function grant_master_database_rights($verbose = false) { - global $conf; - - /* - * The following code is a little bit tricky: - * * If we HAVE a master-slave - Setup then the client has to grant the rights for himself - * at the master. - * * If we DO NOT have a master-slave - Setup then we have two possibilities - * 1) it is a single server - * 2) it is the MASTER of n clients - */ - $hosts = array(); - - if($conf['mysql']['master_slave_setup'] == 'y') { - /* - * it is a master-slave - Setup so the slave has to grant its rights in the master - * database - */ - - //* insert the ispconfig user in the remote server - $from_host = $conf['hostname']; - $from_ip = gethostbyname($conf['hostname']); - - $hosts[$from_host]['user'] = $conf['mysql']['master_ispconfig_user']; - $hosts[$from_host]['db'] = $conf['mysql']['master_database']; - $hosts[$from_host]['pwd'] = $conf['mysql']['master_ispconfig_password']; - - $hosts[$from_ip]['user'] = $conf['mysql']['master_ispconfig_user']; - $hosts[$from_ip]['db'] = $conf['mysql']['master_database']; - $hosts[$from_ip]['pwd'] = $conf['mysql']['master_ispconfig_password']; - } else{ - /* - * it is NOT a master-slave - Setup so we have to find out all clients and their - * host - */ - $query = "SELECT Host, User FROM mysql.user WHERE User like 'ispcsrv%' ORDER BY User, Host"; - $data = $this->dbmaster->queryAllRecords($query); - if($data === false) { - $this->error('Unable to get the user rights: '.$value['db'].' Error: '.$this->dbmaster->errorMessage); - } - foreach ($data as $item){ - $hosts[$item['Host']]['user'] = $item['User']; - $hosts[$item['Host']]['db'] = $conf['mysql']['master_database']; - $hosts[$item['Host']]['pwd'] = ''; // the user already exists, so we need no pwd! - } - } - - if(count($hosts) > 0) { - foreach($hosts as $host => $value) { - /* - * If a pwd exists, this means, we have to add the new user (and his pwd). - * if not, the user already exists and we do not need the pwd - */ - if ($value['pwd'] != ''){ - $query = "CREATE USER ?@? IDENTIFIED BY ?"; - if ($verbose){ - echo "\n\n" . $query ."\n"; - } - $this->dbmaster->query($query, $value['user'], $host, $value['pwd']); // ignore the error - } - - /* - * Try to delete all rights of the user in case that it exists. - * In Case that it will not exist, do nothing (ignore the error!) - */ - $query = "REVOKE ALL PRIVILEGES, GRANT OPTION FROM ?@?"; - if ($verbose){ - echo "\n\n" . $query ."\n"; - } - $this->dbmaster->query($query, $value['user'], $host); // ignore the error - - //* Create the ISPConfig database user in the remote database - $query = "GRANT SELECT ON ?? TO ?@?"; - if ($verbose){ - echo $query ."\n"; - } - if(!$this->dbmaster->query($query, $value['db'] . '.server', $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, INSERT ON ?? TO ?@?"; - if ($verbose){ - echo $query ."\n"; - } - if(!$this->dbmaster->query($query, $value['db'] . '.sys_log', $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(`status`, `error`) ON ?? TO ?@?"; - if ($verbose){ - echo $query ."\n"; - } - if(!$this->dbmaster->query($query, $value['db'] . '.sys_datalog', $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(`status`) ON ?? TO ?@?"; - if ($verbose){ - echo $query ."\n"; - } - if(!$this->dbmaster->query($query, $value['db'] . '.software_update_inst', $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(`updated`) ON ?? TO ?@?"; - if ($verbose){ - echo $query ."\n"; - } - if(!$this->dbmaster->query($query, $value['db'] . '.server', $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 (`ssl`, `ssl_letsencrypt`, `ssl_request`, `ssl_cert`, `ssl_action`, `ssl_key`) ON ?? TO ?@?"; - if ($verbose){ - echo $query ."\n"; - } - if(!$this->dbmaster->query($query, $value['db'] . '.web_domain', $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 ON ?? TO ?@?"; - if ($verbose){ - echo $query ."\n"; - } - if(!$this->dbmaster->query($query, $value['db'] . '.sys_group', $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 (`action_state`, `response`) ON ?? TO ?@?"; - if ($verbose){ - echo $query ."\n"; - } - if(!$this->dbmaster->query($query, $value['db'] . '.sys_remoteaction', $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, INSERT , DELETE ON ?? TO ?@?"; - if ($verbose){ - echo $query ."\n"; - } - if(!$this->dbmaster->query($query, $value['db'] . '.monitor_data', $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, INSERT, UPDATE ON ?? TO ?@?"; - if ($verbose){ - echo $query ."\n"; - } - if(!$this->dbmaster->query($query, $value['db'] . '.mail_traffic', $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, INSERT, UPDATE ON ?? TO ?@?"; - if ($verbose){ - echo $query ."\n"; - } - if(!$this->dbmaster->query($query, $value['db'] . '.web_traffic', $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, DELETE ON ?? TO ?@?"; - if ($verbose){ - echo $query ."\n"; - } - if(!$this->dbmaster->query($query, $value['db'] . '.aps_instances', $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, DELETE ON ?? TO ?@?"; - if ($verbose){ - echo $query ."\n"; - } - if(!$this->dbmaster->query($query, $value['db'] . '.aps_instances_settings', $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, INSERT, DELETE ON ?? TO ?@?"; - if ($verbose){ - echo $query ."\n"; - } - if(!$this->dbmaster->query($query, $value['db'] . '.web_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, INSERT, DELETE ON ?? TO ?@?"; - if ($verbose){ - echo $query ."\n"; - } - 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); - } - - $query = "GRANT SELECT, INSERT, UPDATE ON ?? TO ?@?"; - if ($verbose){ - echo $query ."\n"; - } - if(!$this->dbmaster->query($query, $value['db'] . '.ftp_traffic', $value['user'], $host)) { - $this->warning('Unable to set rights of user in master database: '.$value['db']."\n Query: ".$query."\n Error: ".$this->dbmaster->errorMessage); - } - - } - - } - - } - - //** writes postfix configuration files - public function process_postfix_config($configfile) { - global $conf; - - $config_dir = $conf['postfix']['config_dir'].'/'; - $full_file_name = $config_dir.$configfile; - //* Backup exiting file - if(is_file($full_file_name)) { - copy($full_file_name, $config_dir.$configfile.'~'); - } - $content = rfsel($conf['ispconfig_install_dir'].'/server/conf-custom/install/'.$configfile.'.master', 'tpl/'.$configfile.'.master'); - $content = str_replace('{mysql_server_ispconfig_user}', $conf['mysql']['ispconfig_user'], $content); - $content = str_replace('{mysql_server_ispconfig_password}', $conf['mysql']['ispconfig_password'], $content); - $content = str_replace('{mysql_server_database}', $conf['mysql']['database'], $content); - $content = str_replace('{mysql_server_ip}', $conf['mysql']['ip'], $content); - $content = str_replace('{server_id}', $conf['server_id'], $content); - wf($full_file_name, $content); - } - - public function configure_jailkit() { - global $conf; - - $cf = $conf['jailkit']; - $config_dir = $cf['config_dir']; - $jk_init = $cf['jk_init']; - $jk_chrootsh = $cf['jk_chrootsh']; - - if (is_dir($config_dir)) { - if(is_file($config_dir.'/'.$jk_init)) copy($config_dir.'/'.$jk_init, $config_dir.'/'.$jk_init.'~'); - if(is_file($config_dir.'/'.$jk_chrootsh.'.master')) copy($config_dir.'/'.$jk_chrootsh.'.master', $config_dir.'/'.$jk_chrootsh.'~'); - - if(is_file($conf['ispconfig_install_dir'].'/server/conf-custom/install/'.$jk_init.'.master')) { - copy($conf['ispconfig_install_dir'].'/server/conf-custom/install/'.$jk_init.'.master', $config_dir.'/'.$jk_init); - } else { - copy('tpl/'.$jk_init.'.master', $config_dir.'/'.$jk_init); - } - if(is_file($conf['ispconfig_install_dir'].'/server/conf-custom/install/'.$jk_chrootsh.'.master')) { - copy($conf['ispconfig_install_dir'].'/server/conf-custom/install/'.$jk_chrootsh.'.master', $config_dir.'/'.$jk_chrootsh); - } else { - copy('tpl/'.$jk_chrootsh.'.master', $config_dir.'/'.$jk_chrootsh); - } - } - - //* help jailkit fo find its ini files - if(!is_link('/usr/jk_socketd.ini')) exec('ln -s /etc/jailkit/jk_socketd.ini /usr/jk_socketd.ini'); - if(!is_link('/usr/jk_init.ini')) exec('ln -s /etc/jailkit/jk_init.ini /usr/jk_init.ini'); - - } - - public function configure_mailman($status = 'insert') { - global $conf; - - $config_dir = $conf['mailman']['config_dir'].'/'; - $full_file_name = $config_dir.'mm_cfg.py'; - //* Backup exiting file - if(is_file($full_file_name)) { - copy($full_file_name, $config_dir.'mm_cfg.py~'); - } - - // load files - $content = rfsel($conf['ispconfig_install_dir'].'/server/conf-custom/install/mm_cfg.py.master', 'tpl/mm_cfg.py.master'); - $old_file = rf($full_file_name); - - $old_options = array(); - $lines = explode("\n", $old_file); - foreach ($lines as $line) - { - if (trim($line) != '' && substr($line, 0, 1) != '#') - { - @list($key, $value) = @explode("=", $line); - if (isset($value) && $value !== '') - { - $key = rtrim($key); - $old_options[$key] = trim($value); - } - } - } - - $virtual_domains = ''; - if($status == 'update') - { - // create virtual_domains list - $domainAll = $this->db->queryAllRecords("SELECT domain FROM mail_mailinglist GROUP BY domain"); - - if(is_array($domainAll)) { - foreach($domainAll as $domain) - { - if ($domainAll[0]['domain'] == $domain['domain']) - $virtual_domains .= "'".$domain['domain']."'"; - else - $virtual_domains .= ", '".$domain['domain']."'"; - } - } - } - else - $virtual_domains = "' '"; - - $content = str_replace('{hostname}', $conf['hostname'], $content); - if(!isset($old_options['DEFAULT_SERVER_LANGUAGE']) || $old_options['DEFAULT_SERVER_LANGUAGE'] == '') $old_options['DEFAULT_SERVER_LANGUAGE'] = "'en'"; - $content = str_replace('{default_language}', $old_options['DEFAULT_SERVER_LANGUAGE'], $content); - $content = str_replace('{virtual_domains}', $virtual_domains, $content); - - wf($full_file_name, $content); - - //* Write virtual_to_transport.sh script - $config_dir = $conf['mailman']['config_dir'].'/'; - $full_file_name = $config_dir.'virtual_to_transport.sh'; - - //* Backup exiting virtual_to_transport.sh script - if(is_file($full_file_name)) { - copy($full_file_name, $config_dir.'virtual_to_transport.sh~'); - } - - if(is_dir('/etc/mailman')) { - if(is_file($conf['ispconfig_install_dir'].'/server/conf-custom/install/mailman-virtual_to_transport.sh')) { - copy($conf['ispconfig_install_dir'].'/server/conf-custom/install/mailman-virtual_to_transport.sh', $full_file_name); - } else { - copy('tpl/mailman-virtual_to_transport.sh', $full_file_name); - } - chgrp($full_file_name, $this->mailman_group); - chmod($full_file_name, 0755); - } - - //* Create aliasaes - if($status == 'install') exec('/usr/lib/mailman/bin/genaliases 2>/dev/null'); - - if(!is_file('/var/lib/mailman/data/transport-mailman')) touch('/var/lib/mailman/data/transport-mailman'); - exec('/usr/sbin/postmap /var/lib/mailman/data/transport-mailman'); - } - - public function get_postfix_service($service, $type) { - global $conf; - - exec("postconf -M 2> /dev/null", $out, $ret); - - if ($ret === 0) { //* with postfix >= 2.9 we can detect configured services with postconf - unset($out); - exec ("postconf -M $service/$type 2> /dev/null", $out, $ret); //* Postfix >= 2.11 - if (!isset($out[0])) { //* try Postfix 2.9 - exec ("postconf -M $service.$type 2> /dev/null", $out, $ret); - } - $postfix_service = @($out[0]=='')?false:true; - } else { //* fallback - Postfix < 2.9 - $content = rf($conf['postfix']['config_dir'].'/master.cf'); - $regex = "/^((?!#)".$service.".*".$type.".*)$/m"; - $postfix_service = @(preg_match($regex, $content))?true:false; - } - - return $postfix_service; - } - - public function configure_postfix($options = '') { - global $conf,$autoinstall; - $cf = $conf['postfix']; - $config_dir = $cf['config_dir']; - - if(!is_dir($config_dir)) { - $this->error("The postfix configuration directory '$config_dir' does not exist."); - } - - //* mysql-virtual_domains.cf - $this->process_postfix_config('mysql-virtual_domains.cf'); - - //* mysql-virtual_forwardings.cf - $this->process_postfix_config('mysql-virtual_forwardings.cf'); - - //* mysql-virtual_mailboxes.cf - $this->process_postfix_config('mysql-virtual_mailboxes.cf'); - - //* mysql-virtual_email2email.cf - $this->process_postfix_config('mysql-virtual_email2email.cf'); - - //* mysql-virtual_transports.cf - $this->process_postfix_config('mysql-virtual_transports.cf'); - - //* mysql-virtual_recipient.cf - $this->process_postfix_config('mysql-virtual_recipient.cf'); - - //* mysql-virtual_sender.cf - $this->process_postfix_config('mysql-virtual_sender.cf'); - - //* mysql-virtual_sender_login_maps.cf - $this->process_postfix_config('mysql-virtual_sender_login_maps.cf'); - - //* mysql-virtual_client.cf - $this->process_postfix_config('mysql-virtual_client.cf'); - - //* mysql-virtual_relaydomains.cf - $this->process_postfix_config('mysql-virtual_relaydomains.cf'); - - //* mysql-virtual_relayrecipientmaps.cf - $this->process_postfix_config('mysql-virtual_relayrecipientmaps.cf'); - - //* mysql-virtual_outgoing_bcc.cf - $this->process_postfix_config('mysql-virtual_outgoing_bcc.cf'); - - //* mysql-virtual_policy_greylist.cf - $this->process_postfix_config('mysql-virtual_policy_greylist.cf'); - - //* mysql-virtual_gids.cf.master - $this->process_postfix_config('mysql-virtual_gids.cf'); - - //* mysql-virtual_uids.cf - $this->process_postfix_config('mysql-virtual_uids.cf'); - - //* postfix-dkim - $filename='tag_as_originating.re'; - $full_file_name=$config_dir.'/'.$filename; - if(is_file($full_file_name)) copy($full_file_name, $full_file_name.'~'); - $content = rfsel($conf['ispconfig_install_dir'].'/server/conf-custom/install/postfix-'.$filename.'.master', 'tpl/postfix-'.$filename.'.master'); - wf($full_file_name, $content); - - $filename='tag_as_foreign.re'; - $full_file_name=$config_dir.'/'.$filename; - if(is_file($full_file_name)) copy($full_file_name, $full_file_name.'~'); - $content = rfsel($conf['ispconfig_install_dir'].'/server/conf-custom/install/postfix-'.$filename.'.master', 'tpl/postfix-'.$filename.'.master'); - wf($full_file_name, $content); - - //* Changing mode and group of the new created config files. - caselog('chmod u=rw,g=r,o= '.$config_dir.'/mysql-virtual_*.cf* &> /dev/null', - __FILE__, __LINE__, 'chmod on mysql-virtual_*.cf*', 'chmod on mysql-virtual_*.cf* failed'); - caselog('chgrp '.$cf['group'].' '.$config_dir.'/mysql-virtual_*.cf* &> /dev/null', - __FILE__, __LINE__, 'chgrp on mysql-virtual_*.cf*', 'chgrp on mysql-virtual_*.cf* failed'); - - //* Creating virtual mail user and group - $command = 'groupadd -g '.$cf['vmail_groupid'].' '.$cf['vmail_groupname']; - if(!is_group($cf['vmail_groupname'])) caselog($command.' &> /dev/null', __FILE__, __LINE__, "EXECUTED: $command", "Failed to execute the command $command"); - - $command = 'useradd -g '.$cf['vmail_groupname'].' -u '.$cf['vmail_userid'].' '.$cf['vmail_username'].' -d '.$cf['vmail_mailbox_base'].' -m'; - if(!is_user($cf['vmail_username'])) caselog("$command &> /dev/null", __FILE__, __LINE__, "EXECUTED: $command", "Failed to execute the command $command"); - - //* These postconf commands will be executed on installation and update - $server_ini_rec = $this->db->queryOneRecord("SELECT config FROM ?? WHERE server_id = ?", $conf["mysql"]["database"] . '.server', $conf['server_id']); - $server_ini_array = ini_to_array(stripslashes($server_ini_rec['config'])); - unset($server_ini_rec); - - //* If there are RBL's defined, format the list and add them to smtp_recipient_restrictions to prevent removeal after an update - $rbl_list = ''; - if (@isset($server_ini_array['mail']['realtime_blackhole_list']) && $server_ini_array['mail']['realtime_blackhole_list'] != '') { - $rbl_hosts = explode(",", str_replace(" ", "", $server_ini_array['mail']['realtime_blackhole_list'])); - foreach ($rbl_hosts as $key => $value) { - $rbl_list .= ", reject_rbl_client ". $value; - } - } - unset($rbl_hosts); - - //* If Postgrey is installed, configure it - $greylisting = ''; - if($conf['postgrey']['installed'] == true) { - $greylisting = ', check_recipient_access mysql:/etc/postfix/mysql-virtual_policy_greylist.cf'; - } - - $reject_sender_login_mismatch = ''; - if(isset($server_ini_array['mail']['reject_sender_login_mismatch']) && ($server_ini_array['mail']['reject_sender_login_mismatch'] == 'y')) { - $reject_sender_login_mismatch = ', reject_authenticated_sender_login_mismatch'; - } - unset($server_ini_array); - - $tmp = str_replace('.','\.',$conf['hostname']); - - $postconf_placeholders = array('{config_dir}' => $config_dir, - '{vmail_mailbox_base}' => $cf['vmail_mailbox_base'], - '{vmail_userid}' => $cf['vmail_userid'], - '{vmail_groupid}' => $cf['vmail_groupid'], - '{rbl_list}' => $rbl_list, - '{greylisting}' => $greylisting, - '{reject_slm}' => $reject_sender_login_mismatch, - '{myhostname}' => $tmp, - ); - - $postconf_tpl = rfsel($conf['ispconfig_install_dir'].'/server/conf-custom/install/debian_postfix.conf.master', 'tpl/debian_postfix.conf.master'); - $postconf_tpl = strtr($postconf_tpl, $postconf_placeholders); - $postconf_commands = array_filter(explode("\n", $postconf_tpl)); // read and remove empty lines - - //* These postconf commands will be executed on installation only - if($this->is_update == false) { - $postconf_commands = array_merge($postconf_commands, array( - 'myhostname = '.$conf['hostname'], - 'mydestination = '.$conf['hostname'].', localhost, localhost.localdomain', - 'mynetworks = 127.0.0.0/8 [::1]/128' - )); - } - - //* Create the header and body check files - touch($config_dir.'/header_checks'); - touch($config_dir.'/mime_header_checks'); - touch($config_dir.'/nested_header_checks'); - touch($config_dir.'/body_checks'); - - //* Create the mailman files - if(!is_dir('/var/lib/mailman/data')) exec('mkdir -p /var/lib/mailman/data'); - if(!is_file('/var/lib/mailman/data/aliases')) touch('/var/lib/mailman/data/aliases'); - exec('postalias /var/lib/mailman/data/aliases'); - if(!is_file('/var/lib/mailman/data/virtual-mailman')) touch('/var/lib/mailman/data/virtual-mailman'); - exec('postmap /var/lib/mailman/data/virtual-mailman'); - if(!is_file('/var/lib/mailman/data/transport-mailman')) touch('/var/lib/mailman/data/transport-mailman'); - exec('/usr/sbin/postmap /var/lib/mailman/data/transport-mailman'); - - //* Create auxillary postfix conf files - $configfile = 'helo_access'; - if(is_file($config_dir.'/'.$configfile)) { - copy($config_dir.'/'.$configfile, $config_dir.'/'.$configfile.'~'); - chmod($config_dir.'/'.$configfile.'~', 0400); - } - $content = rfsel($conf['ispconfig_install_dir'].'/server/conf-custom/install/'.$configfile.'.master', 'tpl/'.$configfile.'.master'); - $content = strtr($content, $postconf_placeholders); - # todo: look up this server's ip addrs and loop through each - # todo: look up domains hosted on this server and loop through each - wf($config_dir.'/'.$configfile, $content); - - $configfile = 'blacklist_helo'; - if(is_file($config_dir.'/'.$configfile)) { - copy($config_dir.'/'.$configfile, $config_dir.'/'.$configfile.'~'); - chmod($config_dir.'/'.$configfile.'~', 0400); - } - $content = rfsel($conf['ispconfig_install_dir'].'/server/conf-custom/install/'.$configfile.'.master', 'tpl/'.$configfile.'.master'); - $content = strtr($content, $postconf_placeholders); - wf($config_dir.'/'.$configfile, $content); - - //* Make a backup copy of the main.cf file - copy($config_dir.'/main.cf', $config_dir.'/main.cf~'); - - //* Executing the postconf commands - foreach($postconf_commands as $cmd) { - $command = "postconf -e '$cmd'"; - caselog($command." &> /dev/null", __FILE__, __LINE__, 'EXECUTED: '.$command, 'Failed to execute the command '.$command); - } - - if(!stristr($options, 'dont-create-certs')) { - //* Create the SSL certificate - if(AUTOINSTALL){ - $command = 'cd '.$config_dir.'; ' - ."openssl req -new -subj '/C=".escapeshellcmd($autoinstall['ssl_cert_country'])."/ST=".escapeshellcmd($autoinstall['ssl_cert_state'])."/L=".escapeshellcmd($autoinstall['ssl_cert_locality'])."/O=".escapeshellcmd($autoinstall['ssl_cert_organisation'])."/OU=".escapeshellcmd($autoinstall['ssl_cert_organisation_unit'])."/CN=".escapeshellcmd($autoinstall['ssl_cert_common_name'])."' -outform PEM -out smtpd.cert -newkey rsa:4096 -nodes -keyout smtpd.key -keyform PEM -days 3650 -x509"; - } else { - $command = 'cd '.$config_dir.'; ' - .'openssl req -new -outform PEM -out smtpd.cert -newkey rsa:4096 -nodes -keyout smtpd.key -keyform PEM -days 3650 -x509'; - } - exec($command); - - $command = 'chmod o= '.$config_dir.'/smtpd.key'; - caselog($command.' &> /dev/null', __FILE__, __LINE__, 'EXECUTED: '.$command, 'Failed to execute the command '.$command); - } - - //** We have to change the permissions of the courier authdaemon directory to make it accessible for maildrop. - $command = 'chmod 755 /var/run/courier/authdaemon/'; - if(is_file('/var/run/courier/authdaemon/')) caselog($command.' &> /dev/null', __FILE__, __LINE__, 'EXECUTED: '.$command, 'Failed to execute the command '.$command); - - //* Check maildrop service in posfix master.cf - $regex = "/^maildrop unix.*pipe flags=DRhu user=vmail argv=\\/usr\\/bin\\/maildrop -d ".$cf['vmail_username']." \\$\{extension} \\$\{recipient} \\$\{user} \\$\{nexthop} \\$\{sender}/"; - $configfile = $config_dir.'/master.cf'; - if($this->get_postfix_service('maildrop', 'unix')) { - exec ("postconf -M maildrop.unix 2> /dev/null", $out, $ret); - $change_maildrop_flags = @(preg_match($regex, $out[0]) && $out[0] !='')?false:true; - } else { - $change_maildrop_flags = @(preg_match($regex, $configfile))?false:true; - } - if ($change_maildrop_flags) { - //* Change maildrop service in posfix master.cf - if(is_file($config_dir.'/master.cf')) { - copy($config_dir.'/master.cf', $config_dir.'/master.cf~'); - } - if(is_file($config_dir.'/master.cf~')) { - chmod($config_dir.'/master.cf~', 0400); - } - $configfile = $config_dir.'/master.cf'; - $content = rf($configfile); - $content = str_replace('flags=DRhu user=vmail argv=/usr/bin/maildrop -d ${recipient}', - 'flags=DRhu user='.$cf['vmail_username'].' argv=/usr/bin/maildrop -d '.$cf['vmail_username'].' ${extension} ${recipient} ${user} ${nexthop} ${sender}', - $content); - wf($configfile, $content); - } - - //* Writing the Maildrop mailfilter file - $configfile = 'mailfilter'; - if(is_file($cf['vmail_mailbox_base'].'/.'.$configfile)) { - copy($cf['vmail_mailbox_base'].'/.'.$configfile, $cf['vmail_mailbox_base'].'/.'.$configfile.'~'); - } - $content = rfsel($conf['ispconfig_install_dir'].'/server/conf-custom/install/'.$configfile.'.master', 'tpl/'.$configfile.'.master'); - $content = str_replace('{dist_postfix_vmail_mailbox_base}', $cf['vmail_mailbox_base'], $content); - wf($cf['vmail_mailbox_base'].'/.'.$configfile, $content); - - //* Create the directory for the custom mailfilters - if(!is_dir($cf['vmail_mailbox_base'].'/mailfilters')) { - $command = 'mkdir '.$cf['vmail_mailbox_base'].'/mailfilters'; - caselog($command." &> /dev/null", __FILE__, __LINE__, "EXECUTED: $command", "Failed to execute the command $command"); - } - - //* Chmod and chown the .mailfilter file - $command = 'chown '.$cf['vmail_username'].':'.$cf['vmail_groupname'].' '.$cf['vmail_mailbox_base'].'/.mailfilter'; - caselog($command." &> /dev/null", __FILE__, __LINE__, "EXECUTED: $command", "Failed to execute the command $command"); - - $command = 'chmod 600 '.$cf['vmail_mailbox_base'].'/.mailfilter'; - caselog($command." &> /dev/null", __FILE__, __LINE__, "EXECUTED: $command", "Failed to execute the command $command"); - - } - - public function configure_saslauthd() { - global $conf; - - //* Get saslsauthd version - exec('saslauthd -v 2>&1', $out); - $parts = explode(' ', $out[0]); - $saslversion = $parts[1]; - unset($parts); - unset($out); - - if(version_compare($saslversion , '2.1.23', '<=')) { - //* Configfile for saslauthd versions up to 2.1.23 - $configfile = 'sasl_smtpd.conf'; - } else { - //* Configfile for saslauthd versions 2.1.24 and newer - $configfile = 'sasl_smtpd2.conf'; - } - - if(is_file($conf['postfix']['config_dir'].'/sasl/smtpd.conf')) copy($conf['postfix']['config_dir'].'/sasl/smtpd.conf', $conf['postfix']['config_dir'].'/sasl/smtpd.conf~'); - if(is_file($conf['postfix']['config_dir'].'/sasl/smtpd.conf~')) chmod($conf['postfix']['config_dir'].'/sasl/smtpd.conf~', 0400); - $content = rfsel($conf['ispconfig_install_dir'].'/server/conf-custom/install/'.$configfile.'.master', 'tpl/'.$configfile.'.master'); - $content = str_replace('{mysql_server_ispconfig_user}', $conf['mysql']['ispconfig_user'], $content); - $content = str_replace('{mysql_server_ispconfig_password}', $conf['mysql']['ispconfig_password'], $content); - $content = str_replace('{mysql_server_database}', $conf['mysql']['database'], $content); - $content = str_replace('{mysql_server_ip}', $conf['mysql']['ip'], $content); - wf($conf['postfix']['config_dir'].'/sasl/smtpd.conf', $content); - - // TODO: Chmod and chown on the config file - - - // Recursively create the spool directory - if(!@is_dir('/var/spool/postfix/var/run/saslauthd')) mkdir('/var/spool/postfix/var/run/saslauthd', 0755, true); - - // Edit the file /etc/default/saslauthd - $configfile = $conf['saslauthd']['config']; - if(is_file($configfile)) copy($configfile, $configfile.'~'); - if(is_file($configfile.'~')) chmod($configfile.'~', 0400); - $content = rf($configfile); - $content = str_replace('START=no', 'START=yes', $content); - // Debian - $content = str_replace('OPTIONS="-c"', 'OPTIONS="-m /var/spool/postfix/var/run/saslauthd -r"', $content); - // Ubuntu - $content = str_replace('OPTIONS="-c -m /var/run/saslauthd"', 'OPTIONS="-c -m /var/spool/postfix/var/run/saslauthd -r"', $content); - wf($configfile, $content); - - // Edit the file /etc/init.d/saslauthd - $configfile = $conf['init_scripts'].'/'.$conf['saslauthd']['init_script']; - $content = rf($configfile); - $content = str_replace('PIDFILE=$RUN_DIR/saslauthd.pid', 'PIDFILE="/var/spool/postfix/var/run/${NAME}/saslauthd.pid"', $content); - wf($configfile, $content); - - // add the postfix user to the sasl group (at least necessary for Ubuntu 8.04 and most likely Debian Lenny as well. - exec('adduser postfix sasl'); - - - } - - public function configure_pam() { - global $conf; - $pam = $conf['pam']; - //* configure pam for SMTP authentication agains the ispconfig database - $configfile = 'pamd_smtp'; - if(is_file($pam.'/smtp')) copy($pam.'/smtp', $pam.'/smtp~'); - if(is_file($pam.'/smtp~')) chmod($pam.'/smtp~', 0400); - - $content = rfsel($conf['ispconfig_install_dir'].'/server/conf-custom/install/'.$configfile.'.master', 'tpl/'.$configfile.'.master'); - $content = str_replace('{mysql_server_ispconfig_user}', $conf['mysql']['ispconfig_user'], $content); - $content = str_replace('{mysql_server_ispconfig_password}', $conf['mysql']['ispconfig_password'], $content); - $content = str_replace('{mysql_server_database}', $conf['mysql']['database'], $content); - $content = str_replace('{mysql_server_ip}', $conf['mysql']['ip'], $content); - wf($pam.'/smtp', $content); - // On some OSes smtp is world readable which allows for reading database information. Removing world readable rights should have no effect. - if(is_file($pam.'/smtp')) exec("chmod o= $pam/smtp"); - chmod($pam.'/smtp', 0660); - chown($pam.'/smtp', 'daemon'); - chgrp($pam.'/smtp', 'daemon'); - - } - - public function configure_courier() { - global $conf; - $config_dir = $conf['courier']['config_dir']; - //* authmysqlrc - $configfile = 'authmysqlrc'; - if(is_file($config_dir.'/'.$configfile)) { - copy($config_dir.'/'.$configfile, $config_dir.'/'.$configfile.'~'); - } - chmod($config_dir.'/'.$configfile.'~', 0400); - $content = rfsel($conf['ispconfig_install_dir'].'/server/conf-custom/install/'.$configfile.'.master', 'tpl/'.$configfile.'.master'); - $content = str_replace('{mysql_server_ispconfig_user}', $conf['mysql']['ispconfig_user'], $content); - $content = str_replace('{mysql_server_ispconfig_password}', $conf['mysql']['ispconfig_password'], $content); - $content = str_replace('{mysql_server_database}', $conf['mysql']['database'], $content); - $content = str_replace('{mysql_server_host}', $conf['mysql']['host'], $content); - $content = str_replace('{mysql_server_port}', $conf['mysql']['port'], $content); - wf($config_dir.'/'.$configfile, $content); - - chmod($config_dir.'/'.$configfile, 0660); - chown($config_dir.'/'.$configfile, 'daemon'); - chgrp($config_dir.'/'.$configfile, 'daemon'); - - //* authdaemonrc - $configfile = $config_dir.'/authdaemonrc'; - if(is_file($configfile)) { - copy($configfile, $configfile.'~'); - } - if(is_file($configfile.'~')) { - chmod($configfile.'~', 0400); - } - $content = rf($configfile); - $content = str_replace('authmodulelist="authpam"', 'authmodulelist="authmysql"', $content); - wf($configfile, $content); - } - - public function configure_dovecot() { - global $conf; - - $virtual_transport = 'dovecot'; - - $configure_lmtp = false; - - // check if virtual_transport must be changed - if ($this->is_update) { - $tmp = $this->db->queryOneRecord("SELECT * FROM ?? WHERE server_id = ?", $conf["mysql"]["database"] . ".server", $conf['server_id']); - $ini_array = ini_to_array(stripslashes($tmp['config'])); - // ini_array needs not to be checked, because already done in update.php -> updateDbAndIni() - - if(isset($ini_array['mail']['mailbox_virtual_uidgid_maps']) && $ini_array['mail']['mailbox_virtual_uidgid_maps'] == 'y') { - $virtual_transport = 'lmtp:unix:private/dovecot-lmtp'; - $configure_lmtp = true; - } - } - - $config_dir = $conf['postfix']['config_dir']; - - //* Configure master.cf and add a line for deliver - if(!$this->get_postfix_service('dovecot', 'unix')) { - //* backup - if(is_file($config_dir.'/master.cf')){ - copy($config_dir.'/master.cf', $config_dir.'/master.cf~2'); - } - if(is_file($config_dir.'/master.cf~')){ - chmod($config_dir.'/master.cf~2', 0400); - } - //* Configure master.cf and add a line for deliver - $content = rf($conf["postfix"]["config_dir"].'/master.cf'); - $deliver_content = 'dovecot unix - n n - - pipe'."\n".' flags=DRhu user=vmail:vmail argv=/usr/lib/dovecot/deliver -f ${sender} -d ${user}@${nexthop}'."\n"; - af($config_dir.'/master.cf', $deliver_content); - unset($content); - unset($deliver_content); - } - - //* Reconfigure postfix to use dovecot authentication - // Adding the amavisd commands to the postfix configuration - $postconf_commands = array ( - 'dovecot_destination_recipient_limit = 1', - 'virtual_transport = '.$virtual_transport, - 'smtpd_sasl_type = dovecot', - 'smtpd_sasl_path = private/auth' - ); - - // Make a backup copy of the main.cf file - copy($conf['postfix']['config_dir'].'/main.cf', $conf['postfix']['config_dir'].'/main.cf~3'); - - // Executing the postconf commands - foreach($postconf_commands as $cmd) { - $command = "postconf -e '$cmd'"; - caselog($command." &> /dev/null", __FILE__, __LINE__, "EXECUTED: $command", "Failed to execute the command $command"); - } - - //* backup dovecot.conf - $config_dir = $conf['dovecot']['config_dir']; - $configfile = 'dovecot.conf'; - if(is_file($config_dir.'/'.$configfile)) { - copy($config_dir.'/'.$configfile, $config_dir.'/'.$configfile.'~'); - } - - //* Get the dovecot version - exec('dovecot --version', $tmp); - $dovecot_version = $tmp[0]; - unset($tmp); - - //* Copy dovecot configuration file - if(version_compare($dovecot_version,1, '<=')) { //* Dovecot 1.x - if(is_file($conf['ispconfig_install_dir'].'/server/conf-custom/install/debian_dovecot.conf.master')) { - copy($conf['ispconfig_install_dir'].'/server/conf-custom/install/debian_dovecot.conf.master', $config_dir.'/'.$configfile); - } else { - copy('tpl/debian_dovecot.conf.master', $config_dir.'/'.$configfile); - } - } else { //* Dovecot 2.x - if(is_file($conf['ispconfig_install_dir'].'/server/conf-custom/install/debian_dovecot2.conf.master')) { - copy($conf['ispconfig_install_dir'].'/server/conf-custom/install/debian_dovecot2.conf.master', $config_dir.'/'.$configfile); - } else { - copy('tpl/debian_dovecot2.conf.master', $config_dir.'/'.$configfile); - } - replaceLine($config_dir.'/'.$configfile, 'postmaster_address = postmaster@example.com', 'postmaster_address = postmaster@'.$conf['hostname'], 1, 0); - replaceLine($config_dir.'/'.$configfile, 'postmaster_address = webmaster@localhost', 'postmaster_address = postmaster@'.$conf['hostname'], 1, 0); - if(version_compare($dovecot_version, 2.1, '<')) { - removeLine($config_dir.'/'.$configfile, 'ssl_protocols ='); - } - if(version_compare($dovecot_version,2.2) >= 0) { - // Dovecot > 2.2 does not recognize !SSLv2 anymore on Debian 9 - $content = file_get_contents($config_dir.'/'.$configfile); - $content = str_replace('!SSLv2','',$content); - file_put_contents($config_dir.'/'.$configfile,$content); - unset($content); - } - } - - //* dovecot-lmtpd - if($configure_lmtp) { - replaceLine($config_dir.'/'.$configfile, 'protocols = imap pop3', 'protocols = imap pop3 lmtp', 1, 0); - } - - //* dovecot-sql.conf - $configfile = 'dovecot-sql.conf'; - if(is_file($config_dir.'/'.$configfile)) { - copy($config_dir.'/'.$configfile, $config_dir.'/'.$configfile.'~'); - } - if(is_file($config_dir.'/'.$configfile.'~')) chmod($config_dir.'/'.$configfile.'~', 0400); - $content = rfsel($conf['ispconfig_install_dir'].'/server/conf-custom/install/debian_dovecot-sql.conf.master', 'tpl/debian_dovecot-sql.conf.master'); - $content = str_replace('{mysql_server_ispconfig_user}', $conf['mysql']['ispconfig_user'], $content); - $content = str_replace('{mysql_server_ispconfig_password}', $conf['mysql']['ispconfig_password'], $content); - $content = str_replace('{mysql_server_database}', $conf['mysql']['database'], $content); - $content = str_replace('{mysql_server_host}', $conf['mysql']['host'], $content); - $content = str_replace('{mysql_server_port}', $conf['mysql']['port'], $content); - $content = str_replace('{server_id}', $conf['server_id'], $content); - # enable iterate_query for dovecot2 - if(version_compare($dovecot_version,2, '>=')) { - $content = str_replace('# iterate_query', 'iterate_query', $content); - } - wf($config_dir.'/'.$configfile, $content); - - chmod($config_dir.'/'.$configfile, 0600); - chown($config_dir.'/'.$configfile, 'root'); - chgrp($config_dir.'/'.$configfile, 'root'); - - // Dovecot shall ignore mounts in website directory - if(is_installed('doveadm')) exec("doveadm mount add '/var/www/*' ignore > /dev/null 2> /dev/null"); - - } - - public function configure_amavis() { - global $conf; - - // amavisd user config file - $configfile = 'amavisd_user_config'; - if(is_file($conf['amavis']['config_dir'].'/conf.d/50-user')) copy($conf['amavis']['config_dir'].'/conf.d/50-user', $conf['amavis']['config_dir'].'/50-user~'); - if(is_file($conf['amavis']['config_dir'].'/conf.d/50-user~')) chmod($conf['amavis']['config_dir'].'/50-user~', 0400); - $content = rfsel($conf['ispconfig_install_dir'].'/server/conf-custom/install/'.$configfile.'.master', 'tpl/'.$configfile.'.master'); - $content = str_replace('{mysql_server_ispconfig_user}', $conf['mysql']['ispconfig_user'], $content); - $content = str_replace('{mysql_server_ispconfig_password}', $conf['mysql']['ispconfig_password'], $content); - $content = str_replace('{mysql_server_database}', $conf['mysql']['database'], $content); - $content = str_replace('{mysql_server_port}', $conf['mysql']['port'], $content); - $content = str_replace('{mysql_server_ip}', $conf['mysql']['ip'], $content); - wf($conf['amavis']['config_dir'].'/conf.d/50-user', $content); - chmod($conf['amavis']['config_dir'].'/conf.d/50-user', 0640); - - // TODO: chmod and chown on the config file - - - // Adding the amavisd commands to the postfix configuration - // Add array for no error in foreach and maybe future options - $postconf_commands = array (); - - // Check for amavisd -> pure webserver with postfix for mailing without antispam - if ($conf['amavis']['installed']) { - $postconf_commands[] = 'content_filter = amavis:[127.0.0.1]:10024'; - $postconf_commands[] = 'receive_override_options = no_address_mappings'; - } - - // Make a backup copy of the main.cf file - copy($conf['postfix']['config_dir'].'/main.cf', $conf['postfix']['config_dir'].'/main.cf~2'); - - // Executing the postconf commands - foreach($postconf_commands as $cmd) { - $command = "postconf -e '$cmd'"; - caselog($command." &> /dev/null", __FILE__, __LINE__, "EXECUTED: $command", "Failed to execute the command $command"); - } - - $config_dir = $conf['postfix']['config_dir']; - - // Adding amavis-services to the master.cf file if the service does not already exists - $add_amavis = !$this->get_postfix_service('amavis','unix'); - $add_amavis_10025 = !$this->get_postfix_service('127.0.0.1:10025','inet'); - $add_amavis_10027 = !$this->get_postfix_service('127.0.0.1:10027','inet'); - //*TODO: check templates against existing postfix-services to make sure we use the template - - if ($add_amavis || $add_amavis_10025 || $add_amavis_10027) { - //* backup master.cf - if(is_file($config_dir.'/master.cf')) copy($config_dir.'/master.cf', $config_dir.'/master.cf~'); - // adjust amavis-config - if($add_amavis) { - $content = rfsel($conf['ispconfig_install_dir'].'/server/conf-custom/install/master_cf_amavis.master', 'tpl/master_cf_amavis.master'); - af($config_dir.'/master.cf', $content); - unset($content); - } - if ($add_amavis_10025) { - $content = rfsel($conf['ispconfig_install_dir'].'/server/conf-custom/install/master_cf_amavis10025.master', 'tpl/master_cf_amavis10025.master'); - af($config_dir.'/master.cf', $content); - unset($content); - } - if ($add_amavis_10027) { - $content = rfsel($conf['ispconfig_install_dir'].'/server/conf-custom/install/master_cf_amavis10027.master', 'tpl/master_cf_amavis10027.master'); - af($config_dir.'/master.cf', $content); - unset($content); - } - } - - // Add the clamav user to the amavis group - exec('adduser clamav amavis'); - // get shell-group for amavis - $amavis_group=exec('grep -o "^amavis:\|^vscan:" /etc/group'); - if(!empty($amavis_group)) { - $amavis_group=rtrim($amavis_group, ":"); - } - // get shell-user for amavis - $amavis_user=exec('grep -o "^amavis:\|^vscan:" /etc/passwd'); - if(!empty($amavis_user)) { - $amavis_user=rtrim($amavis_user, ":"); - } - - // Create the director for DKIM-Keys - if(!is_dir('/var/lib/amavis')) mkdir('/var/lib/amavis', 0750, true); - if(!empty($amavis_user)) exec('chown '.$amavis_user.' /var/lib/amavis'); - if(!empty($amavis_group)) exec('chgrp '.$amavis_group.' /var/lib/amavis'); - if(!is_dir('/var/lib/amavis/dkim')) mkdir('/var/lib/amavis/dkim', 0750); - if(!empty($amavis_user)) exec('chown -R '.$amavis_user.' /var/lib/amavis/dkim'); - if(!empty($amavis_group)) exec('chgrp -R '.$amavis_group.' /var/lib/amavis/dkim'); - - } - - public function configure_spamassassin() { - global $conf; - - //* Enable spamasasssin on debian and ubuntu - $configfile = '/etc/default/spamassassin'; - if(is_file($configfile)) { - copy($configfile, $configfile.'~'); - } - $content = rf($configfile); - $content = str_replace('ENABLED=0', 'ENABLED=1', $content); - wf($configfile, $content); - } - - public function configure_getmail() { - global $conf; - - $config_dir = $conf['getmail']['config_dir']; - - if(!@is_dir($config_dir)) mkdir(escapeshellcmd($config_dir), 0700, true); - - $command = 'useradd -d '.$config_dir.' getmail'; - if(!is_user('getmail')) caselog($command.' &> /dev/null', __FILE__, __LINE__, "EXECUTED: $command", "Failed to execute the command $command"); - - $command = "chown -R getmail $config_dir"; - caselog($command.' &> /dev/null', __FILE__, __LINE__, "EXECUTED: $command", "Failed to execute the command $command"); - - $command = "chmod -R 700 $config_dir"; - caselog($command.' &> /dev/null', __FILE__, __LINE__, "EXECUTED: $command", "Failed to execute the command $command"); - } - - - public function configure_pureftpd() { - global $conf; - - $config_dir = $conf['pureftpd']['config_dir']; - - //* configure pure-ftpd for MySQL authentication against the ispconfig database - $configfile = 'db/mysql.conf'; - if(is_file($config_dir.'/'.$configfile)) { - copy($config_dir.'/'.$configfile, $config_dir.'/'.$configfile.'~'); - } - if(is_file($config_dir.'/'.$configfile.'~')) { - chmod($config_dir.'/'.$configfile.'~', 0400); - } - $content = rfsel($conf['ispconfig_install_dir'].'/server/conf-custom/install/pureftpd_mysql.conf.master', 'tpl/pureftpd_mysql.conf.master'); - $content = str_replace('{mysql_server_ispconfig_user}', $conf['mysql']['ispconfig_user'], $content); - $content = str_replace('{mysql_server_ispconfig_password}', $conf['mysql']['ispconfig_password'], $content); - $content = str_replace('{mysql_server_database}', $conf['mysql']['database'], $content); - $content = str_replace('{mysql_server_ip}', $conf['mysql']['ip'], $content); - $content = str_replace('{server_id}', $conf['server_id'], $content); - wf($config_dir.'/'.$configfile, $content); - chmod($config_dir.'/'.$configfile, 0600); - chown($config_dir.'/'.$configfile, 'root'); - chgrp($config_dir.'/'.$configfile, 'root'); - // **enable chrooting - //exec('mkdir -p '.$config_dir.'/conf/ChrootEveryone'); - exec('echo "yes" > '.$config_dir.'/conf/ChrootEveryone'); - exec('echo "yes" > '.$config_dir.'/conf/BrokenClientsCompatibility'); - exec('echo "yes" > '.$config_dir.'/conf/DisplayDotFiles'); - - if(is_file('/etc/default/pure-ftpd-common')) { - replaceLine('/etc/default/pure-ftpd-common', 'STANDALONE_OR_INETD=inetd', 'STANDALONE_OR_INETD=standalone', 1, 0); - replaceLine('/etc/default/pure-ftpd-common', 'VIRTUALCHROOT=false', 'VIRTUALCHROOT=true', 1, 0); - } - - if(is_file('/etc/inetd.conf')) { - replaceLine('/etc/inetd.conf', '/usr/sbin/pure-ftpd-wrapper', '#ftp stream tcp nowait root /usr/sbin/tcpd /usr/sbin/pure-ftpd-wrapper', 0, 0); - exec($this->getinitcommand('openbsd-inetd', 'restart')); - //if(is_file($conf['init_scripts'].'/'.'openbsd-inetd')) exec($conf['init_scripts'].'/'.'openbsd-inetd restart'); - } - - if(!is_file('/etc/pure-ftpd/conf/DontResolve')) exec('echo "yes" > /etc/pure-ftpd/conf/DontResolve'); - } - - public function configure_mydns() { - global $conf; - - // configure pam for SMTP authentication agains the ispconfig database - $configfile = 'mydns.conf'; - if(is_file($conf['mydns']['config_dir'].'/'.$configfile)) copy($conf['mydns']['config_dir'].'/'.$configfile, $conf['mydns']['config_dir'].'/'.$configfile.'~'); - if(is_file($conf['mydns']['config_dir'].'/'.$configfile.'~')) chmod($conf['mydns']['config_dir'].'/'.$configfile.'~', 0400); - $content = rfsel($conf['ispconfig_install_dir'].'/server/conf-custom/install/'.$configfile.'.master', 'tpl/'.$configfile.'.master'); - $content = str_replace('{mysql_server_ispconfig_user}', $conf['mysql']['ispconfig_user'], $content); - $content = str_replace('{mysql_server_ispconfig_password}', $conf['mysql']['ispconfig_password'], $content); - $content = str_replace('{mysql_server_database}', $conf['mysql']['database'], $content); - $content = str_replace('{mysql_server_host}', $conf['mysql']['host'], $content); - $content = str_replace('{mysql_server_port}', $conf['mysql']['port'], $content); - $content = str_replace('{server_id}', $conf['server_id'], $content); - wf($conf['mydns']['config_dir'].'/'.$configfile, $content); - chmod($conf['mydns']['config_dir'].'/'.$configfile, 0600); - chown($conf['mydns']['config_dir'].'/'.$configfile, 'root'); - chgrp($conf['mydns']['config_dir'].'/'.$configfile, 'root'); - - } - - public function configure_powerdns() { - global $conf; - - //* Create the database - if(!$this->db->query('CREATE DATABASE IF NOT EXISTS ?? DEFAULT CHARACTER SET ?', $conf['powerdns']['database'], $conf['mysql']['charset'])) { - $this->error('Unable to create MySQL database: '.$conf['powerdns']['database'].'.'); - } - - //* Create the ISPConfig database user in the local database - $query = "GRANT ALL ON ?? TO ?@'localhost'"; - if(!$this->db->query($query, $conf['powerdns']['database'] . '.*', $conf['mysql']['ispconfig_user'])) { - $this->error('Unable to create user for powerdns database Error: '.$this->db->errorMessage); - } - - //* load the powerdns databse dump - if($conf['mysql']['admin_password'] == '') { - caselog("mysql --default-character-set=".$conf['mysql']['charset']." -h '".$conf['mysql']['host']."' -u '".$conf['mysql']['admin_user']."' '".$conf['powerdns']['database']."' < '".ISPC_INSTALL_ROOT."/install/sql/powerdns.sql' &> /dev/null", - __FILE__, __LINE__, 'read in ispconfig3.sql', 'could not read in powerdns.sql'); - } else { - caselog("mysql --default-character-set=".$conf['mysql']['charset']." -h '".$conf['mysql']['host']."' -u '".$conf['mysql']['admin_user']."' -p'".$conf['mysql']['admin_password']."' '".$conf['powerdns']['database']."' < '".ISPC_INSTALL_ROOT."/install/sql/powerdns.sql' &> /dev/null", - __FILE__, __LINE__, 'read in ispconfig3.sql', 'could not read in powerdns.sql'); - } - - //* Create the powerdns config file - $configfile = 'pdns.local'; - if(is_file($conf['powerdns']['config_dir'].'/'.$configfile)) copy($conf['powerdns']['config_dir'].'/'.$configfile, $conf['powerdns']['config_dir'].'/'.$configfile.'~'); - if(is_file($conf['powerdns']['config_dir'].'/'.$configfile.'~')) chmod($conf['powerdns']['config_dir'].'/'.$configfile.'~', 0400); - $content = rfsel($conf['ispconfig_install_dir'].'/server/conf-custom/install/'.$configfile.'.master', 'tpl/'.$configfile.'.master'); - $content = str_replace('{mysql_server_ispconfig_user}', $conf['mysql']['ispconfig_user'], $content); - $content = str_replace('{mysql_server_ispconfig_password}', $conf['mysql']['ispconfig_password'], $content); - $content = str_replace('{powerdns_database}', $conf['powerdns']['database'], $content); - $content = str_replace('{mysql_server_host}', $conf['mysql']['host'], $content); - $content = str_replace('{mysql_server_port}', $conf['mysql']['port'], $content); - wf($conf['powerdns']['config_dir'].'/'.$configfile, $content); - chmod($conf['powerdns']['config_dir'].'/'.$configfile, 0600); - chown($conf['powerdns']['config_dir'].'/'.$configfile, 'root'); - chgrp($conf['powerdns']['config_dir'].'/'.$configfile, 'root'); - - - } - - //** writes bind configuration files - public function process_bind_file($configfile, $target='/', $absolute=false) { - global $conf; - - if ($absolute) $full_file_name = $target.$configfile; - else $full_file_name = $conf['ispconfig_install_dir'].$target.$configfile; - - //* Backup exiting file - if(is_file($full_file_name)) { - copy($full_file_name, $config_dir.$configfile.'~'); - } - $content = rfsel($conf['ispconfig_install_dir'].'/server/conf-custom/install/'.$configfile.'.master', 'tpl/'.$configfile.'.master'); - $content = str_replace('{mysql_server_ispconfig_user}', $conf['mysql']['ispconfig_user'], $content); - $content = str_replace('{mysql_server_ispconfig_password}', $conf['mysql']['ispconfig_password'], $content); - $content = str_replace('{mysql_server_ispconfig_database}', $conf['mysql']['database'], $content); - $content = str_replace('{mysql_server_ip}', $conf['mysql']['ip'], $content); - $content = str_replace('{ispconfig_install_dir}', $conf['ispconfig_install_dir'], $content); - $content = str_replace('{dnssec_conffile}', $conf['ispconfig_install_dir'].'/server/scripts/dnssec-config.sh', $content); - wf($full_file_name, $content); - } - - public function configure_bind() { - global $conf; - - //* Check if the zonefile directory has a slash at the end - $content=$conf['bind']['bind_zonefiles_dir']; - if(substr($content, -1, 1) != '/') { - $content .= '/'; - } - - //* Create the slave subdirectory - $content .= 'slave'; - if(!@is_dir($content)) mkdir($content, 02770, true); - - //* Chown the slave subdirectory to $conf['bind']['bind_user'] - chown($content, $conf['bind']['bind_user']); - chgrp($content, $conf['bind']['bind_group']); - chmod($content, 02770); - - //* Install scripts for dnssec implementation - $this->process_bind_file('named.conf.options', '/etc/bind/', true); //TODO replace hardcoded path - } - - - public function configure_xmpp($options = '') { - global $conf; - - if($conf['xmpp']['installed'] == false) return; - //* Create the logging directory for xmpp server - if(!@is_dir('/var/log/metronome')) mkdir('/var/log/metronome', 0755, true); - chown('/var/log/metronome', 'metronome'); - if(!@is_dir('/var/run/metronome')) mkdir('/var/run/metronome', 0755, true); - chown('/var/run/metronome', 'metronome'); - if(!@is_dir('/var/lib/metronome')) mkdir('/var/lib/metronome', 0755, true); - chown('/var/lib/metronome', 'metronome'); - if(!@is_dir('/etc/metronome/hosts')) mkdir('/etc/metronome/hosts', 0755, true); - if(!@is_dir('/etc/metronome/status')) mkdir('/etc/metronome/status', 0755, true); - unlink('/etc/metronome/metronome.cfg.lua'); - - $row = $this->db->queryOneRecord("SELECT server_name FROM server WHERE server_id = ?", $conf["server_id"]); - $server_name = $row["server_name"]; - - $tpl = new tpl('metronome_conf_main.master'); - wf('/etc/metronome/metronome.cfg.lua', $tpl->grab()); - unset($tpl); - - $tpl = new tpl('metronome_conf_global.master'); - $tpl->setVar('xmpp_admins',''); - wf('/etc/metronome/global.cfg.lua', $tpl->grab()); - unset($tpl); - - // Copy isp libs - if(!@is_dir('/usr/lib/metronome/isp-modules')) mkdir('/usr/lib/metronome/isp-modules', 0755, true); - caselog('cp -rf apps/metronome_libs/* /usr/lib/metronome/isp-modules/', __FILE__, __LINE__); - caselog('chmod 755 /usr/lib/metronome/isp-modules/mod_auth_external/authenticate_isp.sh', __FILE__, __LINE__); - // Process db config - $full_file_name = '/usr/lib/metronome/isp-modules/mod_auth_external/db_conf.inc.php'; - $content = rf($full_file_name); - $content = str_replace('{mysql_server_ispconfig_user}', $conf['mysql']['ispconfig_user'], $content); - $content = str_replace('{mysql_server_ispconfig_password}', $conf['mysql']['ispconfig_password'], $content); - $content = str_replace('{mysql_server_database}', $conf['mysql']['database'], $content); - $content = str_replace('{mysql_server_ip}', $conf['mysql']['ip'], $content); - $content = str_replace('{server_id}', $conf['server_id'], $content); - wf($full_file_name, $content); - - if(!stristr($options, 'dont-create-certs')){ - // Create SSL Certificate for localhost - // Ensure no line is left blank - echo "writing new private key to 'localhost.key'\n-----\n"; - $ssl_country = $this->free_query('Country Name (2 letter code)', 'AU','ssl_cert_country'); - $ssl_locality = $this->free_query('Locality Name (eg, city)', 'City Name','ssl_cert_locality'); - $ssl_organisation = $this->free_query('Organization Name (eg, company)', 'Internet Widgits Pty Ltd','ssl_cert_organisation'); - $ssl_organisation_unit = $this->free_query('Organizational Unit Name (eg, section)', 'Infrastructure','ssl_cert_organisation_unit'); - $ssl_domain = $this->free_query('Common Name (e.g. server FQDN or YOUR name)', $conf['hostname'],'ssl_cert_common_name'); - $ssl_email = $this->free_query('Email Address', 'hostmaster@'.$conf['hostname'],'ssl_cert_email'); - - $tpl = new tpl('metronome_conf_ssl.master'); - $tpl->setVar('ssl_country',$ssl_country); - $tpl->setVar('ssl_locality',$ssl_locality); - $tpl->setVar('ssl_organisation',$ssl_organisation); - $tpl->setVar('ssl_organisation_unit',$ssl_organisation_unit); - $tpl->setVar('domain',$ssl_domain); - $tpl->setVar('ssl_email',$ssl_email); - wf('/etc/metronome/certs/localhost.cnf', $tpl->grab()); - unset($tpl); - // Generate new key, csr and cert - exec("(cd /etc/metronome/certs && make localhost.key)"); - exec("(cd /etc/metronome/certs && make localhost.csr)"); - exec("(cd /etc/metronome/certs && make localhost.cert)"); - exec('chmod 0400 /etc/metronome/certs/localhost.key'); - exec('chown metronome /etc/metronome/certs/localhost.key'); - - echo "IMPORTANT:\n"; - echo "Localhost Key, Csr and a self-signed Cert have been saved to /etc/metronome/certs\n"; - echo "In order to work with all clients, the server must have a trusted certificate, so use the Csr\n"; - echo "to get a trusted certificate from your CA or replace Key and Cert with already signed files for\n"; - echo "your domain. Clients like Pidgin dont allow to use untrusted self-signed certificates.\n"; - echo "\n"; - - }else{ - /* - echo "-----\n"; - echo "Metronome XMPP SSL server certificate is not renewed. Run the following command manual as root to recreate it:\n"; - echo "# (cd /etc/metronome/certs && make localhost.key && make localhost.csr && make localhost.cert && chmod 0400 localhost.key && chown metronome localhost.key)\n"; - echo "-----\n"; - */ - } - - // Copy init script - caselog('cp -f apps/metronome-init /etc/init.d/metronome', __FILE__, __LINE__); - caselog('chmod u+x /etc/init.d/metronome', __FILE__, __LINE__); - caselog('update-rc.d metronome defaults', __FILE__, __LINE__); - - exec($this->getinitcommand($conf['xmpp']['init_script'], 'restart')); - } - - - public function configure_apache() { - global $conf; - - if($conf['apache']['installed'] == false) return; - //* Create the logging directory for the vhost logfiles - if(!@is_dir($conf['ispconfig_log_dir'].'/httpd')) mkdir($conf['ispconfig_log_dir'].'/httpd', 0755, true); - - if(is_file('/etc/suphp/suphp.conf')) { - replaceLine('/etc/suphp/suphp.conf', 'php="php:/usr/bin', 'x-httpd-suphp="php:/usr/bin/php-cgi"', 0); - //replaceLine('/etc/suphp/suphp.conf','docroot=','docroot=/var/clients',0); - replaceLine('/etc/suphp/suphp.conf', 'umask=00', 'umask=0022', 0); - } - - if(is_file('/etc/apache2/sites-enabled/000-default')) { - replaceLine('/etc/apache2/sites-available/000-default', 'NameVirtualHost *', 'NameVirtualHost *:80', 1, 0); - replaceLine('/etc/apache2/sites-available/000-default', '<VirtualHost *>', '<VirtualHost *:80>', 1, 0); - } - - if(is_file('/etc/apache2/ports.conf')) { - // add a line "Listen 443" to ports conf if line does not exist - replaceLine('/etc/apache2/ports.conf', 'Listen 443', 'Listen 443', 1); - - // Comment out the namevirtualhost lines, as they were added by ispconfig in ispconfig.conf file again - replaceLine('/etc/apache2/ports.conf', 'NameVirtualHost *:80', '# NameVirtualHost *:80', 1); - replaceLine('/etc/apache2/ports.conf', 'NameVirtualHost *:443', '# NameVirtualHost *:443', 1); - } - - if(is_file('/etc/apache2/mods-available/fcgid.conf')) { - // add or modify the parameters for fcgid.conf - replaceLine('/etc/apache2/mods-available/fcgid.conf','MaxRequestLen','MaxRequestLen 15728640',1); - } - - if(is_file('/etc/apache2/apache.conf')) { - if(hasLine('/etc/apache2/apache.conf', 'Include sites-enabled/', 1) == false) { - if(hasLine('/etc/apache2/apache.conf', 'IncludeOptional sites-enabled/*.conf', 1) == false && hasLine('/etc/apache2/apache.conf', 'IncludeOptional sites-enabled/', 1) == false) { - replaceLine('/etc/apache2/apache.conf', 'Include sites-enabled/', 'Include sites-enabled/', 1, 1); - } elseif(hasLine('/etc/apache2/apache.conf', 'IncludeOptional sites-enabled/*.vhost', 1) == false) { - replaceLine('/etc/apache2/apache.conf', 'IncludeOptional sites-enabled/*.vhost', 'IncludeOptional sites-enabled/', 1, 1); - } - } - } - - if(is_file('/etc/apache2/apache2.conf')) { - if(hasLine('/etc/apache2/apache2.conf', 'Include sites-enabled/', 1) == false && hasLine('/etc/apache2/apache2.conf', 'IncludeOptional sites-enabled/', 1) == false) { - if(hasLine('/etc/apache2/apache2.conf', 'Include sites-enabled/*.conf', 1) == true) { - replaceLine('/etc/apache2/apache2.conf', 'Include sites-enabled/*.conf', 'Include sites-enabled/', 1, 1); - } elseif(hasLine('/etc/apache2/apache2.conf', 'IncludeOptional sites-enabled/*.conf', 1) == true) { - replaceLine('/etc/apache2/apache2.conf', 'IncludeOptional sites-enabled/*.conf', 'IncludeOptional sites-enabled/', 1, 1); - } - } - } - - //* Copy the ISPConfig configuration include - $vhost_conf_dir = $conf['apache']['vhost_conf_dir']; - $vhost_conf_enabled_dir = $conf['apache']['vhost_conf_enabled_dir']; - - $tpl = new tpl('apache_ispconfig.conf.master'); - $tpl->setVar('apache_version',getapacheversion()); - - if($this->is_update == true) { - $tpl->setVar('logging',get_logging_state()); - } else { - $tpl->setVar('logging','yes'); - } - - $records = $this->db->queryAllRecords("SELECT * FROM ?? WHERE server_id = ? AND virtualhost = 'y'", $conf['mysql']['master_database'] . '.server_ip', $conf['server_id']); - $ip_addresses = array(); - - if(is_array($records) && count($records) > 0) { - foreach($records as $rec) { - if($rec['ip_type'] == 'IPv6') { - $ip_address = '['.$rec['ip_address'].']'; - } else { - $ip_address = $rec['ip_address']; - } - $ports = explode(',', $rec['virtualhost_port']); - if(is_array($ports)) { - foreach($ports as $port) { - $port = intval($port); - if($port > 0 && $port < 65536 && $ip_address != '') { - $ip_addresses[] = array('ip_address' => $ip_address, 'port' => $port); - } - } - } - } - } - - if(count($ip_addresses) > 0) $tpl->setLoop('ip_adresses',$ip_addresses); - - wf($vhost_conf_dir.'/ispconfig.conf', $tpl->grab()); - unset($tpl); - - if(!@is_link($vhost_conf_enabled_dir.'/000-ispconfig.conf')) { - symlink($vhost_conf_dir.'/ispconfig.conf', $vhost_conf_enabled_dir.'/000-ispconfig.conf'); - } - - //* make sure that webalizer finds its config file when it is directly in /etc - if(@is_file('/etc/webalizer.conf') && !@is_dir('/etc/webalizer')) { - mkdir('/etc/webalizer'); - symlink('/etc/webalizer.conf', '/etc/webalizer/webalizer.conf'); - } - - if(is_file('/etc/webalizer/webalizer.conf')) { - // Change webalizer mode to incremental - replaceLine('/etc/webalizer/webalizer.conf', '#IncrementalName', 'IncrementalName webalizer.current', 0, 0); - replaceLine('/etc/webalizer/webalizer.conf', '#Incremental', 'Incremental yes', 0, 0); - replaceLine('/etc/webalizer/webalizer.conf', '#HistoryName', 'HistoryName webalizer.hist', 0, 0); - } - - // Check the awsatst script - if(!is_dir('/usr/share/awstats/tools')) exec('mkdir -p /usr/share/awstats/tools'); - if(!file_exists('/usr/share/awstats/tools/awstats_buildstaticpages.pl') && file_exists('/usr/share/doc/awstats/examples/awstats_buildstaticpages.pl')) symlink('/usr/share/doc/awstats/examples/awstats_buildstaticpages.pl', '/usr/share/awstats/tools/awstats_buildstaticpages.pl'); - if(file_exists('/etc/awstats/awstats.conf.local')) replaceLine('/etc/awstats/awstats.conf.local', 'LogFormat=4', 'LogFormat=1', 0, 1); - - //* add a sshusers group - $command = 'groupadd sshusers'; - if(!is_group('sshusers')) caselog($command.' &> /dev/null 2> /dev/null', __FILE__, __LINE__, "EXECUTED: $command", "Failed to execute the command $command"); - - } - - public function configure_nginx(){ - global $conf; - - if($conf['nginx']['installed'] == false) return; - //* Create the logging directory for the vhost logfiles - if(!@is_dir($conf['ispconfig_log_dir'].'/httpd')) mkdir($conf['ispconfig_log_dir'].'/httpd', 0755, true); - - //* make sure that webalizer finds its config file when it is directly in /etc - if(@is_file('/etc/webalizer.conf') && !@is_dir('/etc/webalizer')) { - mkdir('/etc/webalizer'); - symlink('/etc/webalizer.conf', '/etc/webalizer/webalizer.conf'); - } - - if(is_file('/etc/webalizer/webalizer.conf')) { - // Change webalizer mode to incremental - replaceLine('/etc/webalizer/webalizer.conf', '#IncrementalName', 'IncrementalName webalizer.current', 0, 0); - replaceLine('/etc/webalizer/webalizer.conf', '#Incremental', 'Incremental yes', 0, 0); - replaceLine('/etc/webalizer/webalizer.conf', '#HistoryName', 'HistoryName webalizer.hist', 0, 0); - } - - // Check the awsatst script - if(!is_dir('/usr/share/awstats/tools')) exec('mkdir -p /usr/share/awstats/tools'); - if(!file_exists('/usr/share/awstats/tools/awstats_buildstaticpages.pl') && file_exists('/usr/share/doc/awstats/examples/awstats_buildstaticpages.pl')) symlink('/usr/share/doc/awstats/examples/awstats_buildstaticpages.pl', '/usr/share/awstats/tools/awstats_buildstaticpages.pl'); - if(file_exists('/etc/awstats/awstats.conf.local')) replaceLine('/etc/awstats/awstats.conf.local', 'LogFormat=4', 'LogFormat=1', 0, 1); - - //* add a sshusers group - $command = 'groupadd sshusers'; - if(!is_group('sshusers')) caselog($command.' &> /dev/null 2> /dev/null', __FILE__, __LINE__, "EXECUTED: $command", "Failed to execute the command $command"); - - // add anonymized log option to nginxx.conf file - $nginx_conf_file = $conf['nginx']['config_dir'].'/nginx.conf'; - if(is_file($nginx_conf_file)) { - $tmp = file_get_contents($nginx_conf_file); - if(!stristr($tmp, 'log_format anonymized')) { - copy($nginx_conf_file,$nginx_conf_file.'~'); - replaceLine($nginx_conf_file, 'http {', "http {\n\n".file_get_contents('tpl/nginx_anonlog.master'), 0, 0); - } - } - - } - - public function configure_fail2ban() { - // To Do - } - - public function configure_squid() - { - global $conf; - $row = $this->db->queryOneRecord("SELECT server_name FROM server WHERE server_id = ?", $conf["server_id"]); - $ip_address = gethostbyname($row["server_name"]); - $server_name = $row["server_name"]; - - $configfile = 'squid.conf'; - if(is_file($conf["squid"]["config_dir"].'/'.$configfile)) copy($conf["squid"]["config_dir"].'/'.$configfile, $conf["squid"]["config_dir"].'/'.$configfile.'~'); - if(is_file($conf["squid"]["config_dir"].'/'.$configfile.'~')) exec('chmod 400 '.$conf["squid"]["config_dir"].'/'.$configfile.'~'); - $content = rfsel($conf['ispconfig_install_dir'].'/server/conf-custom/install/'.$configfile.'.master', "tpl/".$configfile.".master"); - $content = str_replace('{server_name}', $server_name, $content); - $content = str_replace('{ip_address}', $ip_address, $content); - $content = str_replace('{config_dir}', $conf['squid']['config_dir'], $content); - wf($conf["squid"]["config_dir"].'/'.$configfile, $content); - exec('chmod 600 '.$conf["squid"]["config_dir"].'/'.$configfile); - exec('chown root:root '.$conf["squid"]["config_dir"].'/'.$configfile); - } - - public function configure_ufw_firewall() - { - if($this->is_update == false) { - $configfile = 'ufw.conf'; - if(is_file('/etc/ufw/ufw.conf')) copy('/etc/ufw/ufw.conf', '/etc/ufw/ufw.conf~'); - $content = rf("tpl/".$configfile.".master"); - wf('/etc/ufw/ufw.conf', $content); - exec('chmod 600 /etc/ufw/ufw.conf'); - exec('chown root:root /etc/ufw/ufw.conf'); - } - } - - public function configure_bastille_firewall() { - global $conf; - - $dist_init_scripts = $conf['init_scripts']; - - if(is_dir('/etc/Bastille.backup')) caselog('rm -rf /etc/Bastille.backup', __FILE__, __LINE__); - if(is_dir('/etc/Bastille')) caselog('mv -f /etc/Bastille /etc/Bastille.backup', __FILE__, __LINE__); - @mkdir('/etc/Bastille', 0700); - if(is_dir('/etc/Bastille.backup/firewall.d')) caselog('cp -pfr /etc/Bastille.backup/firewall.d /etc/Bastille/', __FILE__, __LINE__); - if(is_file($conf['ispconfig_install_dir'].'/server/conf-custom/install/bastille-firewall.cfg.master')) { - caselog('cp -f ' . $conf['ispconfig_install_dir'].'/server/conf-custom/install/bastille-firewall.cfg.master /etc/Bastille/bastille-firewall.cfg', __FILE__, __LINE__); - } else { - caselog('cp -f tpl/bastille-firewall.cfg.master /etc/Bastille/bastille-firewall.cfg', __FILE__, __LINE__); - } - caselog('chmod 644 /etc/Bastille/bastille-firewall.cfg', __FILE__, __LINE__); - $content = rf('/etc/Bastille/bastille-firewall.cfg'); - $content = str_replace('{DNS_SERVERS}', '', $content); - - $tcp_public_services = ''; - $udp_public_services = ''; - - $row = $this->db->queryOneRecord('SELECT * FROM ?? WHERE server_id = ?', $conf["mysql"]["database"] . '.firewall', $conf['server_id']); - - if(trim($row['tcp_port']) != '' || trim($row['udp_port']) != '') { - $tcp_public_services = trim(str_replace(',', ' ', $row['tcp_port'])); - $udp_public_services = trim(str_replace(',', ' ', $row['udp_port'])); - } else { - $tcp_public_services = '21 22 25 53 80 110 143 443 3306 8080 10000'; - $udp_public_services = '53'; - } - - if(!stristr($tcp_public_services, $conf['apache']['vhost_port'])) { - $tcp_public_services .= ' '.intval($conf['apache']['vhost_port']); - if($row['tcp_port'] != '') $this->db->query("UPDATE firewall SET tcp_port = tcp_port + ? WHERE server_id = ?", ',' . intval($conf['apache']['vhost_port']), $conf['server_id']); - } - - $content = str_replace('{TCP_PUBLIC_SERVICES}', $tcp_public_services, $content); - $content = str_replace('{UDP_PUBLIC_SERVICES}', $udp_public_services, $content); - - wf('/etc/Bastille/bastille-firewall.cfg', $content); - - if(is_file($dist_init_scripts.'/bastille-firewall')) caselog('mv -f '.$dist_init_scripts.'/bastille-firewall '.$dist_init_scripts.'/bastille-firewall.backup', __FILE__, __LINE__); - caselog('cp -f apps/bastille-firewall '.$dist_init_scripts, __FILE__, __LINE__); - caselog('chmod 700 '.$dist_init_scripts.'/bastille-firewall', __FILE__, __LINE__); - - if(is_file('/sbin/bastille-ipchains')) caselog('mv -f /sbin/bastille-ipchains /sbin/bastille-ipchains.backup', __FILE__, __LINE__); - caselog('cp -f apps/bastille-ipchains /sbin', __FILE__, __LINE__); - caselog('chmod 700 /sbin/bastille-ipchains', __FILE__, __LINE__); - - if(is_file('/sbin/bastille-netfilter')) caselog('mv -f /sbin/bastille-netfilter /sbin/bastille-netfilter.backup', __FILE__, __LINE__); - caselog('cp -f apps/bastille-netfilter /sbin', __FILE__, __LINE__); - caselog('chmod 700 /sbin/bastille-netfilter', __FILE__, __LINE__); - - if(!@is_dir('/var/lock/subsys')) caselog('mkdir /var/lock/subsys', __FILE__, __LINE__); - - exec('which ipchains &> /dev/null', $ipchains_location, $ret_val); - if(!is_file('/sbin/ipchains') && !is_link('/sbin/ipchains') && $ret_val == 0) phpcaselog(@symlink(shell_exec('which ipchains'), '/sbin/ipchains'), 'create symlink', __FILE__, __LINE__); - unset($ipchains_location); - exec('which iptables &> /dev/null', $iptables_location, $ret_val); - if(!is_file('/sbin/iptables') && !is_link('/sbin/iptables') && $ret_val == 0) phpcaselog(@symlink(trim(shell_exec('which iptables')), '/sbin/iptables'), 'create symlink', __FILE__, __LINE__); - unset($iptables_location); - - } - - public function configure_vlogger() { - global $conf; - - //** Configure vlogger to use traffic logging to mysql (master) db - $configfile = 'vlogger-dbi.conf'; - if(is_file($conf['vlogger']['config_dir'].'/'.$configfile)) copy($conf['vlogger']['config_dir'].'/'.$configfile, $conf['vlogger']['config_dir'].'/'.$configfile.'~'); - if(is_file($conf['vlogger']['config_dir'].'/'.$configfile.'~')) chmod($conf['vlogger']['config_dir'].'/'.$configfile.'~', 0400); - $content = rfsel($conf['ispconfig_install_dir'].'/server/conf-custom/install/'.$configfile.'.master', 'tpl/'.$configfile.'.master'); - if($conf['mysql']['master_slave_setup'] == 'y') { - $content = str_replace('{mysql_server_ispconfig_user}', $conf['mysql']['master_ispconfig_user'], $content); - $content = str_replace('{mysql_server_ispconfig_password}', $conf['mysql']['master_ispconfig_password'], $content); - $content = str_replace('{mysql_server_database}', $conf['mysql']['master_database'], $content); - $content = str_replace('{mysql_server_ip}', $conf['mysql']['master_host'], $content); - } else { - $content = str_replace('{mysql_server_ispconfig_user}', $conf['mysql']['ispconfig_user'], $content); - $content = str_replace('{mysql_server_ispconfig_password}', $conf['mysql']['ispconfig_password'], $content); - $content = str_replace('{mysql_server_database}', $conf['mysql']['database'], $content); - $content = str_replace('{mysql_server_ip}', $conf['mysql']['ip'], $content); - } - wf($conf['vlogger']['config_dir'].'/'.$configfile, $content); - chmod($conf['vlogger']['config_dir'].'/'.$configfile, 0600); - chown($conf['vlogger']['config_dir'].'/'.$configfile, 'root'); - chgrp($conf['vlogger']['config_dir'].'/'.$configfile, 'root'); - - } - - public function configure_apps_vhost() { - global $conf; - - //* Create the ispconfig apps vhost user and group - if($conf['apache']['installed'] == true){ - $apps_vhost_user = escapeshellcmd($conf['web']['apps_vhost_user']); - $apps_vhost_group = escapeshellcmd($conf['web']['apps_vhost_group']); - $install_dir = escapeshellcmd($conf['web']['website_basedir'].'/apps'); - - $command = 'groupadd '.$apps_vhost_user; - if(!is_group($apps_vhost_group)) caselog($command.' &> /dev/null 2> /dev/null', __FILE__, __LINE__, "EXECUTED: $command", "Failed to execute the command $command"); - - $command = 'useradd -g '.$apps_vhost_group.' -d '.$install_dir.' '.$apps_vhost_group; - if(!is_user($apps_vhost_user)) caselog($command.' &> /dev/null 2> /dev/null', __FILE__, __LINE__, "EXECUTED: $command", "Failed to execute the command $command"); - - - //$command = 'adduser '.$conf['apache']['user'].' '.$apps_vhost_group; - $command = 'usermod -a -G '.$apps_vhost_group.' '.$conf['apache']['user']; - caselog($command.' &> /dev/null', __FILE__, __LINE__, "EXECUTED: $command", "Failed to execute the command $command"); - - if(!@is_dir($install_dir)){ - mkdir($install_dir, 0755, true); - } else { - chmod($install_dir, 0755); - } - chown($install_dir, $apps_vhost_user); - chgrp($install_dir, $apps_vhost_group); - - //* Copy the apps vhost file - $vhost_conf_dir = $conf['apache']['vhost_conf_dir']; - $vhost_conf_enabled_dir = $conf['apache']['vhost_conf_enabled_dir']; - $apps_vhost_servername = ($conf['web']['apps_vhost_servername'] == '')?'':'ServerName '.$conf['web']['apps_vhost_servername']; - - //* Get the apps vhost port - if($this->is_update == true) { - $conf['web']['apps_vhost_port'] = get_apps_vhost_port_number(); - } - - // Dont just copy over the virtualhost template but add some custom settings - $tpl = new tpl('apache_apps.vhost.master'); - $tpl->setVar('apps_vhost_ip',$conf['web']['apps_vhost_ip']); - $tpl->setVar('apps_vhost_port',$conf['web']['apps_vhost_port']); - $tpl->setVar('apps_vhost_dir',$conf['web']['website_basedir'].'/apps'); - $tpl->setVar('apps_vhost_basedir',$conf['web']['website_basedir']); - $tpl->setVar('apps_vhost_servername',$apps_vhost_servername); - $tpl->setVar('apache_version',getapacheversion()); - if($this->is_update == true) { - $tpl->setVar('logging',get_logging_state()); - } else { - $tpl->setVar('logging','yes'); - } - - - // comment out the listen directive if port is 80 or 443 - if($conf['web']['apps_vhost_ip'] == 80 or $conf['web']['apps_vhost_ip'] == 443) { - $tpl->setVar('vhost_port_listen','#'); - } else { - $tpl->setVar('vhost_port_listen',''); - } - - wf($vhost_conf_dir.'/apps.vhost', $tpl->grab()); - unset($tpl); - - //copy('tpl/apache_ispconfig.vhost.master', "$vhost_conf_dir/ispconfig.vhost"); - //* and create the symlink - if(@is_link($vhost_conf_enabled_dir.'/apps.vhost')) unlink($vhost_conf_enabled_dir.'/apps.vhost'); - if(!@is_link($vhost_conf_enabled_dir.'/000-apps.vhost') && @is_file($vhost_conf_dir.'/apps.vhost')) { - @symlink($vhost_conf_dir.'/apps.vhost', $vhost_conf_enabled_dir.'/000-apps.vhost'); - } - - if(!is_file($conf['web']['website_basedir'].'/php-fcgi-scripts/apps/.php-fcgi-starter')) { - $content = rfsel($conf['ispconfig_install_dir'].'/server/conf-custom/install/apache_apps_fcgi_starter.master', 'tpl/apache_apps_fcgi_starter.master'); - $content = str_replace('{fastcgi_bin}', $conf['fastcgi']['fastcgi_bin'], $content); - $content = str_replace('{fastcgi_phpini_path}', $conf['fastcgi']['fastcgi_phpini_path'], $content); - mkdir($conf['web']['website_basedir'].'/php-fcgi-scripts/apps', 0755, true); - //copy('tpl/apache_apps_fcgi_starter.master',$conf['web']['website_basedir'].'/php-fcgi-scripts/apps/.php-fcgi-starter'); - wf($conf['web']['website_basedir'].'/php-fcgi-scripts/apps/.php-fcgi-starter', $content); - exec('chmod +x '.$conf['web']['website_basedir'].'/php-fcgi-scripts/apps/.php-fcgi-starter'); - exec('chown -R ispapps:ispapps '.$conf['web']['website_basedir'].'/php-fcgi-scripts/apps'); - - } - } - if($conf['nginx']['installed'] == true){ - $apps_vhost_user = escapeshellcmd($conf['web']['apps_vhost_user']); - $apps_vhost_group = escapeshellcmd($conf['web']['apps_vhost_group']); - $install_dir = escapeshellcmd($conf['web']['website_basedir'].'/apps'); - - $command = 'groupadd '.$apps_vhost_user; - if(!is_group($apps_vhost_group)) caselog($command.' &> /dev/null 2> /dev/null', __FILE__, __LINE__, "EXECUTED: $command", "Failed to execute the command $command"); - - $command = 'useradd -g '.$apps_vhost_group.' -d '.$install_dir.' '.$apps_vhost_group; - if(!is_user($apps_vhost_user)) caselog($command.' &> /dev/null 2> /dev/null', __FILE__, __LINE__, "EXECUTED: $command", "Failed to execute the command $command"); - - - //$command = 'adduser '.$conf['nginx']['user'].' '.$apps_vhost_group; - $command = 'usermod -a -G '.$apps_vhost_group.' '.$conf['nginx']['user']; - caselog($command.' &> /dev/null', __FILE__, __LINE__, "EXECUTED: $command", "Failed to execute the command $command"); - - if(!@is_dir($install_dir)){ - mkdir($install_dir, 0755, true); - } else { - chmod($install_dir, 0755); - } - chown($install_dir, $apps_vhost_user); - chgrp($install_dir, $apps_vhost_group); - - //* Copy the apps vhost file - $vhost_conf_dir = $conf['nginx']['vhost_conf_dir']; - $vhost_conf_enabled_dir = $conf['nginx']['vhost_conf_enabled_dir']; - $apps_vhost_servername = ($conf['web']['apps_vhost_servername'] == '')?'_':$conf['web']['apps_vhost_servername']; - - // Dont just copy over the virtualhost template but add some custom settings - $content = rfsel($conf['ispconfig_install_dir'].'/server/conf-custom/install/nginx_apps.vhost.master', 'tpl/nginx_apps.vhost.master'); - - if($conf['web']['apps_vhost_ip'] == '_default_'){ - $apps_vhost_ip = ''; - } else { - $apps_vhost_ip = $conf['web']['apps_vhost_ip'].':'; - } - - $socket_dir = escapeshellcmd($conf['nginx']['php_fpm_socket_dir']); - if(substr($socket_dir, -1) != '/') $socket_dir .= '/'; - if(!is_dir($socket_dir)) exec('mkdir -p '.$socket_dir); - $fpm_socket = $socket_dir.'apps.sock'; - $cgi_socket = escapeshellcmd($conf['nginx']['cgi_socket']); - - $content = str_replace('{apps_vhost_ip}', $apps_vhost_ip, $content); - $content = str_replace('{apps_vhost_port}', $conf['web']['apps_vhost_port'], $content); - $content = str_replace('{apps_vhost_dir}', $conf['web']['website_basedir'].'/apps', $content); - $content = str_replace('{apps_vhost_servername}', $apps_vhost_servername, $content); - //$content = str_replace('{fpm_port}', ($conf['nginx']['php_fpm_start_port']+1), $content); - $content = str_replace('{fpm_socket}', $fpm_socket, $content); - $content = str_replace('{cgi_socket}', $cgi_socket, $content); - - if( file_exists('/var/run/php5-fpm.sock') - || file_exists('/var/run/php/php7.0-fpm.sock') - || file_exists('/var/run/php/php7.1-fpm.sock') - || file_exists('/var/run/php/php7.2-fpm.sock') - || file_exists('/var/run/php/php7.3-fpm.sock') - ){ - $use_tcp = '#'; - $use_socket = ''; - } else { - $use_tcp = ''; - $use_socket = '#'; - } - $content = str_replace('{use_tcp}', $use_tcp, $content); - $content = str_replace('{use_socket}', $use_socket, $content); - - // SSL in apps vhost is off by default. Might change later. - $content = str_replace('{ssl_on}', '', $content); - $content = str_replace('{ssl_comment}', '#', $content); - - // Fix socket path on PHP 7 systems - if(file_exists('/var/run/php/php7.0-fpm.sock')) $content = str_replace('/var/run/php5-fpm.sock', '/var/run/php/php7.0-fpm.sock', $content); - if(file_exists('/var/run/php/php7.1-fpm.sock')) $content = str_replace('/var/run/php5-fpm.sock', '/var/run/php/php7.1-fpm.sock', $content); - if(file_exists('/var/run/php/php7.2-fpm.sock')) $content = str_replace('/var/run/php5-fpm.sock', '/var/run/php/php7.2-fpm.sock', $content); - - wf($vhost_conf_dir.'/apps.vhost', $content); - - // PHP-FPM - // Dont just copy over the php-fpm pool template but add some custom settings - $content = rfsel($conf['ispconfig_install_dir'].'/server/conf-custom/install/apps_php_fpm_pool.conf.master', 'tpl/apps_php_fpm_pool.conf.master'); - $content = str_replace('{fpm_pool}', 'apps', $content); - //$content = str_replace('{fpm_port}', ($conf['nginx']['php_fpm_start_port']+1), $content); - $content = str_replace('{fpm_socket}', $fpm_socket, $content); - $content = str_replace('{fpm_user}', $apps_vhost_user, $content); - $content = str_replace('{fpm_group}', $apps_vhost_group, $content); - wf($conf['nginx']['php_fpm_pool_dir'].'/apps.conf', $content); - - //copy('tpl/nginx_ispconfig.vhost.master', "$vhost_conf_dir/ispconfig.vhost"); - //* and create the symlink - if(@is_link($vhost_conf_enabled_dir.'/apps.vhost')) unlink($vhost_conf_enabled_dir.'/apps.vhost'); - if(!@is_link($vhost_conf_enabled_dir.'/000-apps.vhost')) { - symlink($vhost_conf_dir.'/apps.vhost', $vhost_conf_enabled_dir.'/000-apps.vhost'); - } - - } - } - - public function make_ispconfig_ssl_cert() { - global $conf,$autoinstall; - - $install_dir = $conf['ispconfig_install_dir']; - - $ssl_crt_file = $install_dir.'/interface/ssl/ispserver.crt'; - $ssl_csr_file = $install_dir.'/interface/ssl/ispserver.csr'; - $ssl_key_file = $install_dir.'/interface/ssl/ispserver.key'; - - if(!@is_dir($install_dir.'/interface/ssl')) mkdir($install_dir.'/interface/ssl', 0755, true); - - $ssl_pw = substr(md5(mt_rand()), 0, 6); - exec("openssl genrsa -des3 -passout pass:$ssl_pw -out $ssl_key_file 4096"); - if(AUTOINSTALL){ - exec("openssl req -new -passin pass:$ssl_pw -passout pass:$ssl_pw -subj '/C=".escapeshellcmd($autoinstall['ssl_cert_country'])."/ST=".escapeshellcmd($autoinstall['ssl_cert_state'])."/L=".escapeshellcmd($autoinstall['ssl_cert_locality'])."/O=".escapeshellcmd($autoinstall['ssl_cert_organisation'])."/OU=".escapeshellcmd($autoinstall['ssl_cert_organisation_unit'])."/CN=".escapeshellcmd($autoinstall['ssl_cert_common_name'])."' -key $ssl_key_file -out $ssl_csr_file"); - } else { - exec("openssl req -new -passin pass:$ssl_pw -passout pass:$ssl_pw -key $ssl_key_file -out $ssl_csr_file"); - } - exec("openssl req -x509 -passin pass:$ssl_pw -passout pass:$ssl_pw -key $ssl_key_file -in $ssl_csr_file -out $ssl_crt_file -days 3650"); - exec("openssl rsa -passin pass:$ssl_pw -in $ssl_key_file -out $ssl_key_file.insecure"); - rename($ssl_key_file, $ssl_key_file.'.secure'); - rename($ssl_key_file.'.insecure', $ssl_key_file); - - exec('chown -R root:root /usr/local/ispconfig/interface/ssl'); - - } - - public function install_ispconfig() { - global $conf; - - $install_dir = $conf['ispconfig_install_dir']; - - //* Create the ISPConfig installation directory - if(!@is_dir($install_dir)) { - $command = "mkdir $install_dir"; - caselog($command.' &> /dev/null', __FILE__, __LINE__, "EXECUTED: $command", "Failed to execute the command $command"); - } - - //* Create a ISPConfig user and group - $command = 'groupadd ispconfig'; - if(!is_group('ispconfig')) caselog($command.' &> /dev/null 2> /dev/null', __FILE__, __LINE__, "EXECUTED: $command", "Failed to execute the command $command"); - - $command = 'useradd -g ispconfig -d '.$install_dir.' ispconfig'; - if(!is_user('ispconfig')) caselog($command.' &> /dev/null 2> /dev/null', __FILE__, __LINE__, "EXECUTED: $command", "Failed to execute the command $command"); - - //* copy the ISPConfig interface part - $command = 'cp -rf ../interface '.$install_dir; - caselog($command.' &> /dev/null', __FILE__, __LINE__, "EXECUTED: $command", "Failed to execute the command $command"); - - //* copy the ISPConfig server part - $command = 'cp -rf ../server '.$install_dir; - caselog($command.' &> /dev/null', __FILE__, __LINE__, "EXECUTED: $command", "Failed to execute the command $command"); - - //* Make a backup of the security settings - if(is_file('/usr/local/ispconfig/security/security_settings.ini')) copy('/usr/local/ispconfig/security/security_settings.ini','/usr/local/ispconfig/security/security_settings.ini~'); - - //* copy the ISPConfig security part - $command = 'cp -rf ../security '.$install_dir; - caselog($command.' &> /dev/null', __FILE__, __LINE__, "EXECUTED: $command", "Failed to execute the command $command"); - - //* Apply changed security_settings.ini values to new security_settings.ini file - if(is_file('/usr/local/ispconfig/security/security_settings.ini~')) { - $security_settings_old = ini_to_array(file_get_contents('/usr/local/ispconfig/security/security_settings.ini~')); - $security_settings_new = ini_to_array(file_get_contents('/usr/local/ispconfig/security/security_settings.ini')); - if(is_array($security_settings_new) && is_array($security_settings_old)) { - foreach($security_settings_new as $section => $sval) { - if(is_array($sval)) { - foreach($sval as $key => $val) { - if(isset($security_settings_old[$section]) && isset($security_settings_old[$section][$key])) { - $security_settings_new[$section][$key] = $security_settings_old[$section][$key]; - } - } - } - } - file_put_contents('/usr/local/ispconfig/security/security_settings.ini',array_to_ini($security_settings_new)); - } - } - - //* Create a symlink, so ISPConfig is accessible via web - // Replaced by a separate vhost definition for port 8080 - // $command = "ln -s $install_dir/interface/web/ /var/www/ispconfig"; - // caselog($command.' &> /dev/null', __FILE__, __LINE__, "EXECUTED: $command", "Failed to execute the command $command"); - - //* Create the config file for ISPConfig interface - $configfile = 'config.inc.php'; - if(is_file($install_dir.'/interface/lib/'.$configfile)) { - copy($install_dir.'/interface/lib/'.$configfile, $install_dir.'/interface/lib/'.$configfile.'~'); - } - $content = rfsel($conf['ispconfig_install_dir'].'/server/conf-custom/install/'.$configfile.'.master', 'tpl/'.$configfile.'.master'); - $content = str_replace('{mysql_server_ispconfig_user}', $conf['mysql']['ispconfig_user'], $content); - $content = str_replace('{mysql_server_ispconfig_password}', $conf['mysql']['ispconfig_password'], $content); - $content = str_replace('{mysql_server_database}', $conf['mysql']['database'], $content); - $content = str_replace('{mysql_server_host}', $conf['mysql']['host'], $content); - $content = str_replace('{mysql_server_port}', $conf['mysql']['port'], $content); - - $content = str_replace('{mysql_master_server_ispconfig_user}', $conf['mysql']['master_ispconfig_user'], $content); - $content = str_replace('{mysql_master_server_ispconfig_password}', $conf['mysql']['master_ispconfig_password'], $content); - $content = str_replace('{mysql_master_server_database}', $conf['mysql']['master_database'], $content); - $content = str_replace('{mysql_master_server_host}', $conf['mysql']['master_host'], $content); - $content = str_replace('{mysql_master_server_port}', $conf['mysql']['master_port'], $content); - - $content = str_replace('{server_id}', $conf['server_id'], $content); - $content = str_replace('{ispconfig_log_priority}', $conf['ispconfig_log_priority'], $content); - $content = str_replace('{language}', $conf['language'], $content); - $content = str_replace('{timezone}', $conf['timezone'], $content); - $content = str_replace('{theme}', $conf['theme'], $content); - $content = str_replace('{language_file_import_enabled}', ($conf['language_file_import_enabled'] == true)?'true':'false', $content); - - wf($install_dir.'/interface/lib/'.$configfile, $content); - - //* Create the config file for ISPConfig server - $configfile = 'config.inc.php'; - if(is_file($install_dir.'/server/lib/'.$configfile)) { - copy($install_dir.'/server/lib/'.$configfile, $install_dir.'/interface/lib/'.$configfile.'~'); - } - $content = rfsel($conf['ispconfig_install_dir'].'/server/conf-custom/install/'.$configfile.'.master', 'tpl/'.$configfile.'.master'); - $content = str_replace('{mysql_server_ispconfig_user}', $conf['mysql']['ispconfig_user'], $content); - $content = str_replace('{mysql_server_ispconfig_password}', $conf['mysql']['ispconfig_password'], $content); - $content = str_replace('{mysql_server_database}', $conf['mysql']['database'], $content); - $content = str_replace('{mysql_server_host}', $conf['mysql']['host'], $content); - $content = str_replace('{mysql_server_port}', $conf['mysql']['port'], $content); - - $content = str_replace('{mysql_master_server_ispconfig_user}', $conf['mysql']['master_ispconfig_user'], $content); - $content = str_replace('{mysql_master_server_ispconfig_password}', $conf['mysql']['master_ispconfig_password'], $content); - $content = str_replace('{mysql_master_server_database}', $conf['mysql']['master_database'], $content); - $content = str_replace('{mysql_master_server_host}', $conf['mysql']['master_host'], $content); - $content = str_replace('{mysql_master_server_port}', $conf['mysql']['master_port'], $content); - - $content = str_replace('{server_id}', $conf['server_id'], $content); - $content = str_replace('{ispconfig_log_priority}', $conf['ispconfig_log_priority'], $content); - $content = str_replace('{language}', $conf['language'], $content); - $content = str_replace('{timezone}', $conf['timezone'], $content); - $content = str_replace('{theme}', $conf['theme'], $content); - $content = str_replace('{language_file_import_enabled}', ($conf['language_file_import_enabled'] == true)?'true':'false', $content); - - wf($install_dir.'/server/lib/'.$configfile, $content); - - //* Create the config file for remote-actions (but only, if it does not exist, because - // the value is a autoinc-value and so changed by the remoteaction_core_module - if (!file_exists($install_dir.'/server/lib/remote_action.inc.php')) { - $content = '<?php' . "\n" . '$maxid_remote_action = 0;' . "\n" . '?>'; - wf($install_dir.'/server/lib/remote_action.inc.php', $content); - } - - //* Enable the server modules and plugins. - // TODO: Implement a selector which modules and plugins shall be enabled. - $dir = $install_dir.'/server/mods-available/'; - if (is_dir($dir)) { - if ($dh = opendir($dir)) { - while (($file = readdir($dh)) !== false) { - if($file != '.' && $file != '..' && substr($file, -8, 8) == '.inc.php') { - include_once $install_dir.'/server/mods-available/'.$file; - $module_name = substr($file, 0, -8); - $tmp = new $module_name; - if($tmp->onInstall()) { - if(!@is_link($install_dir.'/server/mods-enabled/'.$file)) { - @symlink($install_dir.'/server/mods-available/'.$file, $install_dir.'/server/mods-enabled/'.$file); - // @symlink($install_dir.'/server/mods-available/'.$file, '../mods-enabled/'.$file); - } - if (strpos($file, '_core_module') !== false) { - if(!@is_link($install_dir.'/server/mods-core/'.$file)) { - @symlink($install_dir.'/server/mods-available/'.$file, $install_dir.'/server/mods-core/'.$file); - // @symlink($install_dir.'/server/mods-available/'.$file, '../mods-core/'.$file); - } - } - } - unset($tmp); - } - } - closedir($dh); - } - } - - $dir = $install_dir.'/server/plugins-available/'; - if (is_dir($dir)) { - if ($dh = opendir($dir)) { - while (($file = readdir($dh)) !== false) { - if($conf['apache']['installed'] == true && $file == 'nginx_plugin.inc.php') continue; - if($conf['nginx']['installed'] == true && $file == 'apache2_plugin.inc.php') continue; - if($file != '.' && $file != '..' && substr($file, -8, 8) == '.inc.php') { - include_once $install_dir.'/server/plugins-available/'.$file; - $plugin_name = substr($file, 0, -8); - $tmp = new $plugin_name; - if(method_exists($tmp, 'onInstall') && $tmp->onInstall()) { - if(!@is_link($install_dir.'/server/plugins-enabled/'.$file)) { - @symlink($install_dir.'/server/plugins-available/'.$file, $install_dir.'/server/plugins-enabled/'.$file); - //@symlink($install_dir.'/server/plugins-available/'.$file, '../plugins-enabled/'.$file); - } - if (strpos($file, '_core_plugin') !== false) { - if(!@is_link($install_dir.'/server/plugins-core/'.$file)) { - @symlink($install_dir.'/server/plugins-available/'.$file, $install_dir.'/server/plugins-core/'.$file); - //@symlink($install_dir.'/server/plugins-available/'.$file, '../plugins-core/'.$file); - } - } - } - unset($tmp); - } - } - closedir($dh); - } - } - - // Update the server config - $mail_server_enabled = ($conf['services']['mail'])?1:0; - $web_server_enabled = ($conf['services']['web'])?1:0; - $dns_server_enabled = ($conf['services']['dns'])?1:0; - $file_server_enabled = ($conf['services']['file'])?1:0; - $db_server_enabled = ($conf['services']['db'])?1:0; - $vserver_server_enabled = ($conf['openvz']['installed'])?1:0; - $proxy_server_enabled = ($conf['services']['proxy'])?1:0; - $firewall_server_enabled = ($conf['services']['firewall'])?1:0; - $xmpp_server_enabled = ($conf['services']['xmpp'])?1:0; - - $sql = "UPDATE `server` SET mail_server = '$mail_server_enabled', web_server = '$web_server_enabled', dns_server = '$dns_server_enabled', file_server = '$file_server_enabled', db_server = '$db_server_enabled', vserver_server = '$vserver_server_enabled', proxy_server = '$proxy_server_enabled', firewall_server = '$firewall_server_enabled', xmpp_server = '$xmpp_server_enabled' WHERE server_id = ?"; - - $this->db->query($sql, $conf['server_id']); - if($conf['mysql']['master_slave_setup'] == 'y') { - $this->dbmaster->query($sql, $conf['server_id']); - } - - - // chown install dir to root and chmod 755 - $command = 'chown root:root '.$install_dir; - caselog($command.' &> /dev/null', __FILE__, __LINE__, "EXECUTED: $command", "Failed to execute the command $command"); - $command = 'chmod 755 '.$install_dir; - caselog($command.' &> /dev/null', __FILE__, __LINE__, "EXECUTED: $command", "Failed to execute the command $command"); - - //* Chmod the files and directories in the install dir - $command = 'chmod -R 750 '.$install_dir.'/*'; - caselog($command.' &> /dev/null', __FILE__, __LINE__, "EXECUTED: $command", "Failed to execute the command $command"); - - //* chown the interface files to the ispconfig user and group - $command = 'chown -R ispconfig:ispconfig '.$install_dir.'/interface'; - caselog($command.' &> /dev/null', __FILE__, __LINE__, "EXECUTED: $command", "Failed to execute the command $command"); - - //* Chmod the files and directories in the acme dir - $command = 'chmod -R 755 '.$install_dir.'/interface/acme'; - caselog($command.' &> /dev/null', __FILE__, __LINE__, "EXECUTED: $command", "Failed to execute the command $command"); - - //* chown the server files to the root user and group - $command = 'chown -R root:root '.$install_dir.'/server'; - caselog($command.' &> /dev/null', __FILE__, __LINE__, "EXECUTED: $command", "Failed to execute the command $command"); - - //* chown the security files to the root user and group - $command = 'chown -R root:root '.$install_dir.'/security'; - caselog($command.' &> /dev/null', __FILE__, __LINE__, "EXECUTED: $command", "Failed to execute the command $command"); - - //* chown the security directory and security_settings.ini to root:ispconfig - $command = 'chown root:ispconfig '.$install_dir.'/security/security_settings.ini'; - caselog($command.' &> /dev/null', __FILE__, __LINE__, "EXECUTED: $command", "Failed to execute the command $command"); - $command = 'chown root:ispconfig '.$install_dir.'/security'; - caselog($command.' &> /dev/null', __FILE__, __LINE__, "EXECUTED: $command", "Failed to execute the command $command"); - $command = 'chown root:ispconfig '.$install_dir.'/security/ids.whitelist'; - caselog($command.' &> /dev/null', __FILE__, __LINE__, "EXECUTED: $command", "Failed to execute the command $command"); - $command = 'chown root:ispconfig '.$install_dir.'/security/ids.htmlfield'; - caselog($command.' &> /dev/null', __FILE__, __LINE__, "EXECUTED: $command", "Failed to execute the command $command"); - $command = 'chown root:ispconfig '.$install_dir.'/security/apache_directives.blacklist'; - caselog($command.' &> /dev/null', __FILE__, __LINE__, "EXECUTED: $command", "Failed to execute the command $command"); - $command = 'chown root:ispconfig '.$install_dir.'/security/nginx_directives.blacklist'; - caselog($command.' &> /dev/null', __FILE__, __LINE__, "EXECUTED: $command", "Failed to execute the command $command"); - - //* Make the global language file directory group writable - exec("chmod -R 770 $install_dir/interface/lib/lang"); - - //* Make the temp directory for language file exports writable - if(is_dir($install_dir.'/interface/web/temp')) exec("chmod -R 770 $install_dir/interface/web/temp"); - - //* Make all interface language file directories group writable - $handle = @opendir($install_dir.'/interface/web'); - while ($file = @readdir($handle)) { - if ($file != '.' && $file != '..') { - if(@is_dir($install_dir.'/interface/web'.'/'.$file.'/lib/lang')) { - $handle2 = opendir($install_dir.'/interface/web'.'/'.$file.'/lib/lang'); - chmod($install_dir.'/interface/web'.'/'.$file.'/lib/lang', 0770); - while ($lang_file = @readdir($handle2)) { - if ($lang_file != '.' && $lang_file != '..') { - chmod($install_dir.'/interface/web'.'/'.$file.'/lib/lang/'.$lang_file, 0770); - } - } - } - } - } - - //* Make the APS directories group writable - exec("chmod -R 770 $install_dir/interface/web/sites/aps_meta_packages"); - exec("chmod -R 770 $install_dir/server/aps_packages"); - - //* make sure that the server config file (not the interface one) is only readable by the root user - chmod($install_dir.'/server/lib/config.inc.php', 0600); - chown($install_dir.'/server/lib/config.inc.php', 'root'); - chgrp($install_dir.'/server/lib/config.inc.php', 'root'); - - //* Make sure thet the interface config file is readable by user ispconfig only - chmod($install_dir.'/interface/lib/config.inc.php', 0600); - chown($install_dir.'/interface/lib/config.inc.php', 'ispconfig'); - chgrp($install_dir.'/interface/lib/config.inc.php', 'ispconfig'); - - chmod($install_dir.'/server/lib/remote_action.inc.php', 0600); - chown($install_dir.'/server/lib/remote_action.inc.php', 'root'); - chgrp($install_dir.'/server/lib/remote_action.inc.php', 'root'); - - if(@is_file($install_dir.'/server/lib/mysql_clientdb.conf')) { - chmod($install_dir.'/server/lib/mysql_clientdb.conf', 0600); - chown($install_dir.'/server/lib/mysql_clientdb.conf', 'root'); - chgrp($install_dir.'/server/lib/mysql_clientdb.conf', 'root'); - } - - if(is_dir($install_dir.'/interface/invoices')) { - exec('chmod -R 770 '.escapeshellarg($install_dir.'/interface/invoices')); - exec('chown -R ispconfig:ispconfig '.escapeshellarg($install_dir.'/interface/invoices')); - } - - exec('chown -R root:root /usr/local/ispconfig/interface/ssl'); - - // TODO: FIXME: add the www-data user to the ispconfig group. This is just for testing - // and must be fixed as this will allow the apache user to read the ispconfig files. - // Later this must run as own apache server or via suexec! - if($conf['apache']['installed'] == true){ - $command = 'adduser '.$conf['apache']['user'].' ispconfig'; - caselog($command.' &> /dev/null', __FILE__, __LINE__, "EXECUTED: $command", "Failed to execute the command $command"); - if(is_group('ispapps')){ - $command = 'adduser '.$conf['apache']['user'].' ispapps'; - caselog($command.' &> /dev/null', __FILE__, __LINE__, "EXECUTED: $command", "Failed to execute the command $command"); - } - } - if($conf['nginx']['installed'] == true){ - $command = 'adduser '.$conf['nginx']['user'].' ispconfig'; - caselog($command.' &> /dev/null', __FILE__, __LINE__, "EXECUTED: $command", "Failed to execute the command $command"); - if(is_group('ispapps')){ - $command = 'adduser '.$conf['nginx']['user'].' ispapps'; - caselog($command.' &> /dev/null', __FILE__, __LINE__, "EXECUTED: $command", "Failed to execute the command $command"); - } - } - - //* Make the shell scripts executable - $command = "chmod +x $install_dir/server/scripts/*.sh"; - caselog($command.' &> /dev/null', __FILE__, __LINE__, "EXECUTED: $command", "Failed to execute the command $command"); - - if ($this->install_ispconfig_interface == true && isset($conf['interface_password']) && $conf['interface_password']!='admin') { - $sql = "UPDATE sys_user SET passwort = md5(?) WHERE username = 'admin';"; - $this->db->query($sql, $conf['interface_password']); - } - - if($conf['apache']['installed'] == true && $this->install_ispconfig_interface == true){ - //* Copy the ISPConfig vhost for the controlpanel - $vhost_conf_dir = $conf['apache']['vhost_conf_dir']; - $vhost_conf_enabled_dir = $conf['apache']['vhost_conf_enabled_dir']; - - // Dont just copy over the virtualhost template but add some custom settings - $tpl = new tpl('apache_ispconfig.vhost.master'); - $tpl->setVar('vhost_port',$conf['apache']['vhost_port']); - - // comment out the listen directive if port is 80 or 443 - if($conf['apache']['vhost_port'] == 80 or $conf['apache']['vhost_port'] == 443) { - $tpl->setVar('vhost_port_listen','#'); - } else { - $tpl->setVar('vhost_port_listen',''); - } - - if(is_file($install_dir.'/interface/ssl/ispserver.crt') && is_file($install_dir.'/interface/ssl/ispserver.key')) { - $tpl->setVar('ssl_comment',''); - } else { - $tpl->setVar('ssl_comment','#'); - } - if(is_file($install_dir.'/interface/ssl/ispserver.crt') && is_file($install_dir.'/interface/ssl/ispserver.key') && is_file($install_dir.'/interface/ssl/ispserver.bundle')) { - $tpl->setVar('ssl_bundle_comment',''); - } else { - $tpl->setVar('ssl_bundle_comment','#'); - } - - $tpl->setVar('apache_version',getapacheversion()); - - wf($vhost_conf_dir.'/ispconfig.vhost', $tpl->grab()); - - //* and create the symlink - if($this->is_update == false) { - if(@is_link($vhost_conf_enabled_dir.'/ispconfig.vhost')) unlink($vhost_conf_enabled_dir.'/ispconfig.vhost'); - if(!@is_link($vhost_conf_enabled_dir.'/000-ispconfig.vhost')) { - symlink($vhost_conf_dir.'/ispconfig.vhost', $vhost_conf_enabled_dir.'/000-ispconfig.vhost'); - } - } - //if(!is_file('/var/www/php-fcgi-scripts/ispconfig/.php-fcgi-starter')) { - $content = rfsel($conf['ispconfig_install_dir'].'/server/conf-custom/install/apache_ispconfig_fcgi_starter.master', 'tpl/apache_ispconfig_fcgi_starter.master'); - $content = str_replace('{fastcgi_bin}', $conf['fastcgi']['fastcgi_bin'], $content); - $content = str_replace('{fastcgi_phpini_path}', $conf['fastcgi']['fastcgi_phpini_path'], $content); - @mkdir('/var/www/php-fcgi-scripts/ispconfig', 0755, true); - wf('/var/www/php-fcgi-scripts/ispconfig/.php-fcgi-starter', $content); - exec('chmod +x /var/www/php-fcgi-scripts/ispconfig/.php-fcgi-starter'); - @symlink($install_dir.'/interface/web', '/var/www/ispconfig'); - exec('chown -R ispconfig:ispconfig /var/www/php-fcgi-scripts/ispconfig'); - //} - } - - if($conf['nginx']['installed'] == true && $this->install_ispconfig_interface == true){ - //* Copy the ISPConfig vhost for the controlpanel - $vhost_conf_dir = $conf['nginx']['vhost_conf_dir']; - $vhost_conf_enabled_dir = $conf['nginx']['vhost_conf_enabled_dir']; - - // Dont just copy over the virtualhost template but add some custom settings - $content = rfsel($conf['ispconfig_install_dir'].'/server/conf-custom/install/nginx_ispconfig.vhost.master', 'tpl/nginx_ispconfig.vhost.master'); - $content = str_replace('{vhost_port}', $conf['nginx']['vhost_port'], $content); - - if(is_file($install_dir.'/interface/ssl/ispserver.crt') && is_file($install_dir.'/interface/ssl/ispserver.key')) { - $content = str_replace('{ssl_on}', 'ssl', $content); - $content = str_replace('{ssl_comment}', '', $content); - $content = str_replace('{fastcgi_ssl}', 'on', $content); - } else { - $content = str_replace('{ssl_on}', '', $content); - $content = str_replace('{ssl_comment}', '#', $content); - $content = str_replace('{fastcgi_ssl}', 'off', $content); - } - - $socket_dir = escapeshellcmd($conf['nginx']['php_fpm_socket_dir']); - if(substr($socket_dir, -1) != '/') $socket_dir .= '/'; - if(!is_dir($socket_dir)) exec('mkdir -p '.$socket_dir); - $fpm_socket = $socket_dir.'ispconfig.sock'; - - //$content = str_replace('{fpm_port}', $conf['nginx']['php_fpm_start_port'], $content); - $content = str_replace('{fpm_socket}', $fpm_socket, $content); - - wf($vhost_conf_dir.'/ispconfig.vhost', $content); - - unset($content); - - // PHP-FPM - // Dont just copy over the php-fpm pool template but add some custom settings - $content = rfsel($conf['ispconfig_install_dir'].'/server/conf-custom/install/php_fpm_pool.conf.master', 'tpl/php_fpm_pool.conf.master'); - $content = str_replace('{fpm_pool}', 'ispconfig', $content); - //$content = str_replace('{fpm_port}', $conf['nginx']['php_fpm_start_port'], $content); - $content = str_replace('{fpm_socket}', $fpm_socket, $content); - $content = str_replace('{fpm_user}', 'ispconfig', $content); - $content = str_replace('{fpm_group}', 'ispconfig', $content); - wf($conf['nginx']['php_fpm_pool_dir'].'/ispconfig.conf', $content); - - //copy('tpl/nginx_ispconfig.vhost.master', $vhost_conf_dir.'/ispconfig.vhost'); - //* and create the symlink - if($this->is_update == false) { - if(@is_link($vhost_conf_enabled_dir.'/ispconfig.vhost')) unlink($vhost_conf_enabled_dir.'/ispconfig.vhost'); - if(!@is_link($vhost_conf_enabled_dir.'/000-ispconfig.vhost')) { - symlink($vhost_conf_dir.'/ispconfig.vhost', $vhost_conf_enabled_dir.'/000-ispconfig.vhost'); - } - } - } - - //* Install the update script - if(is_file('/usr/local/bin/ispconfig_update_from_dev.sh')) unlink('/usr/local/bin/ispconfig_update_from_dev.sh'); - chown($install_dir.'/server/scripts/update_from_dev.sh', 'root'); - chmod($install_dir.'/server/scripts/update_from_dev.sh', 0700); -// chown($install_dir.'/server/scripts/update_from_tgz.sh', 'root'); -// chmod($install_dir.'/server/scripts/update_from_tgz.sh', 0700); - chown($install_dir.'/server/scripts/ispconfig_update.sh', 'root'); - chmod($install_dir.'/server/scripts/ispconfig_update.sh', 0700); - if(!is_link('/usr/local/bin/ispconfig_update_from_dev.sh')) symlink($install_dir.'/server/scripts/ispconfig_update.sh', '/usr/local/bin/ispconfig_update_from_dev.sh'); - if(!is_link('/usr/local/bin/ispconfig_update.sh')) symlink($install_dir.'/server/scripts/ispconfig_update.sh', '/usr/local/bin/ispconfig_update.sh'); - - //* Make the logs readable for the ispconfig user - if(@is_file('/var/log/mail.log')) exec('chmod +r /var/log/mail.log'); - if(@is_file('/var/log/mail.warn')) exec('chmod +r /var/log/mail.warn'); - if(@is_file('/var/log/mail.err')) exec('chmod +r /var/log/mail.err'); - if(@is_file('/var/log/messages')) exec('chmod +r /var/log/messages'); - if(@is_file('/var/log/clamav/clamav.log')) exec('chmod +r /var/log/clamav/clamav.log'); - if(@is_file('/var/log/clamav/freshclam.log')) exec('chmod +r /var/log/clamav/freshclam.log'); - - //* Create the ispconfig log file and directory - if(!is_file($conf['ispconfig_log_dir'].'/ispconfig.log')) { - if(!is_dir($conf['ispconfig_log_dir'])) mkdir($conf['ispconfig_log_dir'], 0755); - touch($conf['ispconfig_log_dir'].'/ispconfig.log'); - } - - //* Create the ispconfig auth log file and set uid/gid - if(!is_file($conf['ispconfig_log_dir'].'/auth.log')) { - touch($conf['ispconfig_log_dir'].'/auth.log'); - } - exec('chown ispconfig:ispconfig '. $conf['ispconfig_log_dir'].'/auth.log'); - exec('chmod 660 '. $conf['ispconfig_log_dir'].'/auth.log'); - - if(is_user('getmail')) { - rename($install_dir.'/server/scripts/run-getmail.sh', '/usr/local/bin/run-getmail.sh'); - if(is_user('getmail')) chown('/usr/local/bin/run-getmail.sh', 'getmail'); - chmod('/usr/local/bin/run-getmail.sh', 0744); - } - - //* Add Log-Rotation - if (is_dir('/etc/logrotate.d')) { - @unlink('/etc/logrotate.d/logispc3'); // ignore, if the file is not there - /* We rotate these logs in cron_daily.php - $fh = fopen('/etc/logrotate.d/logispc3', 'w'); - fwrite($fh, - "$conf['ispconfig_log_dir']/ispconfig.log { \n" . - " weekly \n" . - " missingok \n" . - " rotate 4 \n" . - " compress \n" . - " delaycompress \n" . - "} \n" . - "$conf['ispconfig_log_dir']/cron.log { \n" . - " weekly \n" . - " missingok \n" . - " rotate 4 \n" . - " compress \n" . - " delaycompress \n" . - "}"); - fclose($fh); - */ - } - - //* Remove Domain module as its functions are available in the client module now - if(@is_dir('/usr/local/ispconfig/interface/web/domain')) exec('rm -rf /usr/local/ispconfig/interface/web/domain'); - - //* Disable rkhunter run and update in debian cronjob as ispconfig is running and updating rkhunter - if(is_file('/etc/default/rkhunter')) { - replaceLine('/etc/default/rkhunter', 'CRON_DAILY_RUN="yes"', 'CRON_DAILY_RUN="no"', 1, 0); - replaceLine('/etc/default/rkhunter', 'CRON_DB_UPDATE="yes"', 'CRON_DB_UPDATE="no"', 1, 0); - } - - // Add symlink for patch tool - if(!is_link('/usr/local/bin/ispconfig_patch')) exec('ln -s /usr/local/ispconfig/server/scripts/ispconfig_patch /usr/local/bin/ispconfig_patch'); - - // Change mode of a few files from amavisd - if(is_file($conf['amavis']['config_dir'].'/conf.d/50-user')) chmod($conf['amavis']['config_dir'].'/conf.d/50-user', 0640); - if(is_file($conf['amavis']['config_dir'].'/50-user~')) chmod($conf['amavis']['config_dir'].'/50-user~', 0400); - if(is_file($conf['amavis']['config_dir'].'/amavisd.conf')) chmod($conf['amavis']['config_dir'].'/amavisd.conf', 0640); - if(is_file($conf['amavis']['config_dir'].'/amavisd.conf~')) chmod($conf['amavis']['config_dir'].'/amavisd.conf~', 0400); - } - - public function configure_dbserver() { - global $conf; - - //* If this server shall act as database server for client DB's, we configure this here - $install_dir = $conf['ispconfig_install_dir']; - - // Create a file with the database login details which - // are used to create the client databases. - - if(!is_dir($install_dir.'/server/lib')) { - $command = "mkdir $install_dir/server/lib"; - caselog($command.' &> /dev/null', __FILE__, __LINE__, "EXECUTED: $command", "Failed to execute the command $command"); - } - - $content = rfsel($conf['ispconfig_install_dir'].'/server/conf-custom/install/mysql_clientdb.conf.master', 'tpl/mysql_clientdb.conf.master'); - $content = str_replace('{hostname}', $conf['mysql']['host'], $content); - $content = str_replace('{username}', $conf['mysql']['admin_user'], $content); - $content = str_replace('{password}', addslashes($conf['mysql']['admin_password']), $content); - wf($install_dir.'/server/lib/mysql_clientdb.conf', $content); - chmod($install_dir.'/server/lib/mysql_clientdb.conf', 0600); - chown($install_dir.'/server/lib/mysql_clientdb.conf', 'root'); - chgrp($install_dir.'/server/lib/mysql_clientdb.conf', 'root'); - - } - - public function install_crontab() { - global $conf; - - $install_dir = $conf['ispconfig_install_dir']; - - //* Root Crontab - exec('crontab -u root -l > crontab.txt'); - $existing_root_cron_jobs = file('crontab.txt'); - - // remove existing ispconfig cronjobs, in case the syntax has changed - foreach($existing_root_cron_jobs as $key => $val) { - if(stristr($val, $install_dir)) unset($existing_root_cron_jobs[$key]); - } - - $root_cron_jobs = array( - "* * * * * ".$install_dir."/server/server.sh 2>&1 | while read line; do echo `/bin/date` \"\$line\" >> ".$conf['ispconfig_log_dir']."/cron.log; done", - "* * * * * ".$install_dir."/server/cron.sh 2>&1 | while read line; do echo `/bin/date` \"\$line\" >> ".$conf['ispconfig_log_dir']."/cron.log; done" - ); - - if ($conf['nginx']['installed'] == true) { - $root_cron_jobs[] = "0 0 * * * ".$install_dir."/server/scripts/create_daily_nginx_access_logs.sh &> /dev/null"; - } - - foreach($root_cron_jobs as $cron_job) { - if(!in_array($cron_job."\n", $existing_root_cron_jobs)) { - $existing_root_cron_jobs[] = $cron_job."\n"; - } - } - file_put_contents('crontab.txt', $existing_root_cron_jobs); - exec('crontab -u root crontab.txt &> /dev/null'); - unlink('crontab.txt'); - - //* Getmail crontab - if(is_user('getmail')) { - $cf = $conf['getmail']; - exec('crontab -u getmail -l > crontab.txt'); - $existing_cron_jobs = file('crontab.txt'); - - $cron_jobs = array( - '*/5 * * * * /usr/local/bin/run-getmail.sh > /dev/null 2>> /dev/null' - ); - - // remove existing ispconfig cronjobs, in case the syntax has changed - foreach($existing_cron_jobs as $key => $val) { - if(stristr($val, 'getmail')) unset($existing_cron_jobs[$key]); - } - - foreach($cron_jobs as $cron_job) { - if(!in_array($cron_job."\n", $existing_cron_jobs)) { - $existing_cron_jobs[] = $cron_job."\n"; - } - } - file_put_contents('crontab.txt', $existing_cron_jobs); - exec('crontab -u getmail crontab.txt &> /dev/null'); - unlink('crontab.txt'); - } - - touch($conf['ispconfig_log_dir'].'/cron.log'); - chmod($conf['ispconfig_log_dir'].'/cron.log', 0660); - - } - - public function create_mount_script(){ - global $app, $conf; - $mount_script = '/usr/local/ispconfig/server/scripts/backup_dir_mount.sh'; - $mount_command = ''; - - if(is_file($mount_script)) return; - if(is_file('/etc/rc.local')){ - $rc_local = file('/etc/rc.local'); - if(is_array($rc_local) && !empty($rc_local)){ - foreach($rc_local as $line){ - $line = trim($line); - if(substr($line, 0, 1) == '#') continue; - if(strpos($line, 'sshfs') !== false && strpos($line, '/var/backup') !== false){ - $mount_command = "#!/bin/sh\n\n"; - $mount_command .= $line."\n\n"; - file_put_contents($mount_script, $mount_command); - chmod($mount_script, 0755); - chown($mount_script, 'root'); - chgrp($mount_script, 'root'); - break; - } - } - } - } - } - - // This function is called at the end of the update process and contains code to clean up parts of old ISPCONfig releases - public function cleanup_ispconfig() { - global $app,$conf; - - // Remove directories recursively - if(is_dir('/usr/local/ispconfig/interface/web/designer')) exec('rm -rf /usr/local/ispconfig/interface/web/designer'); - if(is_dir('/usr/local/ispconfig/interface/web/themes/default-304')) exec('rm -rf /usr/local/ispconfig/interface/web/themes/default-304'); - - // Remove files - if(is_file('/usr/local/ispconfig/interface/lib/classes/db_firebird.inc.php')) unlink('/usr/local/ispconfig/interface/lib/classes/db_firebird.inc.php'); - if(is_file('/usr/local/ispconfig/interface/lib/classes/form.inc.php')) unlink('/usr/local/ispconfig/interface/lib/classes/form.inc.php'); - - // Change mode of a few files from amavisd - if(is_file($conf['amavis']['config_dir'].'/conf.d/50-user')) chmod($conf['amavis']['config_dir'].'/conf.d/50-user', 0640); - if(is_file($conf['amavis']['config_dir'].'/50-user~')) chmod($conf['amavis']['config_dir'].'/50-user~', 0400); - if(is_file($conf['amavis']['config_dir'].'/amavisd.conf')) chmod($conf['amavis']['config_dir'].'/amavisd.conf', 0640); - if(is_file($conf['amavis']['config_dir'].'/amavisd.conf~')) chmod($conf['amavis']['config_dir'].'/amavisd.conf~', 0400); - - } - - public function getinitcommand($servicename, $action, $init_script_directory = ''){ - global $conf; - // upstart - if(is_executable('/sbin/initctl')){ - exec('/sbin/initctl version 2>/dev/null | /bin/grep -q upstart', $retval['output'], $retval['retval']); - if(intval($retval['retval']) == 0) return 'service '.$servicename.' '.$action; - } - // systemd - if(is_executable('/bin/systemd') || is_executable('/usr/bin/systemctl')){ - return 'systemctl '.$action.' '.$servicename.'.service'; - } - // sysvinit - if($init_script_directory == '') $init_script_directory = $conf['init_scripts']; - if(substr($init_script_directory, -1) === '/') $init_script_directory = substr($init_script_directory, 0, -1); - return $init_script_directory.'/'.$servicename.' '.$action; - } - - /** - * Helper function - get the path to a template file based on - * the local part of the filename. Checks first for the existence - * of a distribution specific file and if not found looks in the - * base template folder. Optionally the behaviour can be changed - * by setting the 2nd parameter which will fetch the contents - * of the template file and return it instead of the path. The 3rd - * parameter further extends this behaviour by filtering the contents - * by inserting the ispconfig database credentials using the {} placeholders. - * - * @param string $tLocal local part of filename - * @param bool $tRf - * @param bool $tDBCred - * @return string Relative path to the chosen template file - */ - protected function get_template_file($tLocal, $tRf=false, $tDBCred=false) { - global $conf, $dist; - - $final_path = ''; - $dist_template = $conf['ispconfig_install_dir'] . '/server/conf-custom/install/' . $tLocal . '.master'; - if (file_exists($dist_template)) { - $final_path = $dist_template; - } else { - $dist_template = 'dist/tpl/'.strtolower($dist['name'])."/$tLocal.master"; - if (file_exists($dist_template)) { - $final_path = $dist_template; - } else { - $final_path = "tpl/$tLocal.master"; - } - } - - if (!$tRf) { - return $final_path; - } else { - return (!$tDBCred) ? rf($final_path) : $this->insert_db_credentials(rf($final_path)); - } - } - - /** - * Helper function - writes the contents to a config file - * and performs a backup if the file exist. Additionally - * if the file exists the new file will be given the - * same rights and ownership as the original. Optionally the - * rights and/or ownership can be overriden by appending umask, - * user and group to the parameters. Providing only uid and gid - * values will result in only a chown. - * - * @param $tConf - * @param $tContents - * @return bool - */ - protected function write_config_file($tConf, $tContents) { - // Backup config file before writing new contents and stat file - if ( is_file($tConf) ) { - $stat = exec('stat -c \'%a %U %G\' '.escapeshellarg($tConf), $output, $res); - if ($res == 0) { // stat successfull - list($access, $user, $group) = explode(" ", $stat); - } - - if ( copy($tConf, $tConf.'~') ) { - chmod($tConf.'~', 0400); - } - } - - wf($tConf, $tContents); // write file - - if (func_num_args() >= 4) // override rights and/or ownership - { - $args = func_get_args(); - $output = array_slice($args, 2); - - switch (sizeof($output)) { - case 3: - $umask = array_shift($output); - if (is_numeric($umask) && preg_match('/^0?[0-7]{3}$/', $umask)) { - $access = $umask; - } - case 2: - if (is_user($output[0]) && is_group($output[1])) { - list($user, $group) = $output; - } - break; - } - } - - if (!empty($user) && !empty($group)) { - chown($tConf, $user); - chgrp($tConf, $group); - } - - if (!empty($access)) { - exec("chmod $access $tConf"); - } - } - - /** - * Helper function - filter the contents of a config - * file by inserting the common ispconfig database - * credentials. - * - * @param $tContents - * @return string - */ - protected function insert_db_credentials($tContents) { - global $conf; - - $tContents = str_replace('{mysql_server_ispconfig_user}', $conf["mysql"]["ispconfig_user"], $tContents); - $tContents = str_replace('{mysql_server_ispconfig_password}', $conf["mysql"]["ispconfig_password"], $tContents); - $tContents = str_replace('{mysql_server_database}', $conf["mysql"]["database"], $tContents); - $tContents = str_replace('{mysql_server_ip}', $conf["mysql"]["ip"], $tContents); - $tContents = str_replace('{mysql_server_host}', $conf['mysql']['host'], $tContents); - $tContents = str_replace('{mysql_server_port}', $conf['mysql']['port'], $tContents); - $tContents = str_replace('{mysql_server_port}', $conf["mysql"]["port"], $tContents); - - return $tContents; - } - -} - -?> diff --git a/install/sql/incremental/upd_dev_collection.sql.orig b/install/sql/incremental/upd_dev_collection.sql.orig deleted file mode 100644 index e69de29bb2..0000000000 diff --git a/install/sql/incremental/upd_dev_collection.sql.rej b/install/sql/incremental/upd_dev_collection.sql.rej deleted file mode 100644 index 4c57d840ab..0000000000 --- a/install/sql/incremental/upd_dev_collection.sql.rej +++ /dev/null @@ -1,40 +0,0 @@ ---- install/sql/incremental/upd_dev_collection.sql -+++ install/sql/incremental/upd_dev_collection.sql -@@ -80,4 +80,37 @@ INSERT IGNORE INTO `dns_ssl_ca` (`id`, `sys_userid`, `sys_groupid`, `sys_perm_us - - ALTER TABLE `dns_soa` CHANGE `xfer` `xfer` TEXT NULL; - ALTER TABLE `dns_soa` CHANGE `also_notify` `also_notify` TEXT NULL; --ALTER TABLE `dns_slave` CHANGE `xfer` `xfer` TEXT NULL;+ALTER TABLE `dns_slave` CHANGE `xfer` `xfer` TEXT NULL; -+ -+-- rspamd -+ALTER TABLE `spamfilter_policy` ADD `rspamd_greylisting` ENUM('n','y') CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL DEFAULT 'n' AFTER `policyd_greylist`; -+ALTER TABLE `spamfilter_policy` ADD `rspamd_spam_greylisting_level` DECIMAL(5,2) NULL DEFAULT NULL AFTER `rspamd_greylisting`; -+ALTER TABLE `spamfilter_policy` ADD `rspamd_spam_tag_level` DECIMAL(5,2) NULL DEFAULT NULL AFTER `rspamd_spam_greylisting_level`; -+ALTER TABLE `spamfilter_policy` ADD `rspamd_spam_tag_method` ENUM('add_header','rewrite_subject') CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL DEFAULT 'rewrite_subject' AFTER `rspamd_spam_tag_level`; -+ALTER TABLE `spamfilter_policy` ADD `rspamd_spam_kill_level` DECIMAL(5,2) NULL DEFAULT NULL AFTER `rspamd_spam_tag_method`; -+ -+UPDATE `spamfilter_policy` SET `rspamd_greylisting` = 'y' WHERE id = 4; -+UPDATE `spamfilter_policy` SET `rspamd_greylisting` = 'y' WHERE id = 5; -+UPDATE `spamfilter_policy` SET `rspamd_greylisting` = 'y' WHERE id = 6; -+ -+UPDATE `spamfilter_policy` SET `rspamd_spam_greylisting_level` = '4.00'; -+UPDATE `spamfilter_policy` SET `rspamd_spam_greylisting_level` = '6.00' WHERE id = 1; -+UPDATE `spamfilter_policy` SET `rspamd_spam_greylisting_level` = '999.00' WHERE id = 2; -+UPDATE `spamfilter_policy` SET `rspamd_spam_greylisting_level` = '999.00' WHERE id = 3; -+UPDATE `spamfilter_policy` SET `rspamd_spam_greylisting_level` = '2.00' WHERE id = 6; -+UPDATE `spamfilter_policy` SET `rspamd_spam_greylisting_level` = '7.00' WHERE id = 7; -+ -+UPDATE `spamfilter_policy` SET `rspamd_spam_tag_level` = '6.00'; -+UPDATE `spamfilter_policy` SET `rspamd_spam_tag_level` = '8.00' WHERE id = 1; -+UPDATE `spamfilter_policy` SET `rspamd_spam_tag_level` = '999.00' WHERE id = 2; -+UPDATE `spamfilter_policy` SET `rspamd_spam_tag_level` = '999.00' WHERE id = 3; -+UPDATE `spamfilter_policy` SET `rspamd_spam_tag_level` = '4.00' WHERE id = 6; -+UPDATE `spamfilter_policy` SET `rspamd_spam_tag_level` = '10.00' WHERE id = 7; -+ -+UPDATE `spamfilter_policy` SET `rspamd_spam_kill_level` = '10.00'; -+UPDATE `spamfilter_policy` SET `rspamd_spam_kill_level` = '12.00' WHERE id = 1; -+UPDATE `spamfilter_policy` SET `rspamd_spam_kill_level` = '999.00' WHERE id = 2; -+UPDATE `spamfilter_policy` SET `rspamd_spam_kill_level` = '999.00' WHERE id = 3; -+UPDATE `spamfilter_policy` SET `rspamd_spam_kill_level` = '8.00' WHERE id = 6; -+UPDATE `spamfilter_policy` SET `rspamd_spam_kill_level` = '20.00' WHERE id = 7; -+-- end of rspamd diff --git a/install/sql/ispconfig3.sql.orig b/install/sql/ispconfig3.sql.orig deleted file mode 100644 index 2417ef0d21..0000000000 --- a/install/sql/ispconfig3.sql.orig +++ /dev/null @@ -1,2570 +0,0 @@ -/* -Copyright (c) 2007-2012, Till Brehm, projektfarm Gmbh -All rights reserved. - -Redistribution and use in source and binary forms, with or without modification, -are permitted provided that the following conditions are met: - - * Redistributions of source code must retain the above copyright notice, - this list of conditions and the following disclaimer. - * Redistributions in binary form must reproduce the above copyright notice, - this list of conditions and the following disclaimer in the documentation - and/or other materials provided with the distribution. - * Neither the name of ISPConfig nor the names of its contributors - may be used to endorse or promote products derived from this software without - specific prior written permission. - -THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND -ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED -WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. -IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, -INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, -BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY -OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING -NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, -EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. -*/ - --- Includes --- --- iso_country_list.sql --- --- This will create and then populate a MySQL table with a list of the names and --- ISO 3166 codes for countries in existence as of the date below. --- --- For updates to this file, see http://27.org/isocountrylist/ --- For more about ISO 3166, see http://www.iso.ch/iso/en/prods-services/iso3166ma/02iso-3166-code-lists/list-en1.html --- --- Created by getisocountrylist.pl on Sun Nov 2 14:59:20 2003. --- Wm. Rhodes <iso_country_list@27.org> --- - --- --- ISPConfig 3 --- DB-Version: 3.0.0.9 --- - -SET FOREIGN_KEY_CHECKS = 0; - --- -------------------------------------------------------- --- -------------------------------------------------------- --- DB-STRUCTURE --- -------------------------------------------------------- --- -------------------------------------------------------- - --- --- Table structure for table `aps_instances` --- - -CREATE TABLE IF NOT EXISTS `aps_instances` ( - `id` int(4) NOT NULL AUTO_INCREMENT, - `sys_userid` int(11) unsigned NOT NULL DEFAULT '0', - `sys_groupid` int(11) unsigned NOT NULL DEFAULT '0', - `sys_perm_user` varchar(5) DEFAULT NULL, - `sys_perm_group` varchar(5) DEFAULT NULL, - `sys_perm_other` varchar(5) DEFAULT NULL, - `server_id` int(11) NOT NULL DEFAULT '0', - `customer_id` int(4) NOT NULL DEFAULT '0', - `package_id` int(4) NOT NULL DEFAULT '0', - `instance_status` int(4) NOT NULL DEFAULT '0', - PRIMARY KEY (`id`) -) ENGINE=MyISAM DEFAULT CHARSET=utf8 ; - --- -------------------------------------------------------- - --- --- Table structure for table `aps_instances_settings` --- - -CREATE TABLE IF NOT EXISTS `aps_instances_settings` ( - `id` int(4) NOT NULL AUTO_INCREMENT, - `server_id` int(11) NOT NULL DEFAULT '0', - `instance_id` int(4) NOT NULL DEFAULT '0', - `name` varchar(255) NOT NULL DEFAULT '', - `value` text, - PRIMARY KEY (`id`) -) ENGINE=MyISAM DEFAULT CHARSET=utf8 ; - --- -------------------------------------------------------- - --- --- Table structure for table `aps_packages` --- - -CREATE TABLE IF NOT EXISTS `aps_packages` ( - `id` int(4) NOT NULL AUTO_INCREMENT, - `path` varchar(255) NOT NULL DEFAULT '', - `name` varchar(255) NOT NULL DEFAULT '', - `category` varchar(255) NOT NULL DEFAULT '', - `version` varchar(20) NOT NULL DEFAULT '', - `release` int(4) NOT NULL DEFAULT '0', - `package_url` TEXT, - `package_status` int(1) NOT NULL DEFAULT '2', - PRIMARY KEY (`id`) -) ENGINE=MyISAM DEFAULT CHARSET=utf8 ; - --- -------------------------------------------------------- - --- --- Tabellenstruktur für Tabelle `aps_settings` --- - -CREATE TABLE IF NOT EXISTS `aps_settings` ( - `id` int(4) NOT NULL AUTO_INCREMENT, - `name` varchar(255) NOT NULL DEFAULT '', - `value` text, - PRIMARY KEY (`id`), - UNIQUE KEY `name` (`name`) -) ENGINE=MyISAM DEFAULT CHARSET=utf8 ; - --- -------------------------------------------------------- - --- --- Table structure for table `attempts_login` --- - -CREATE TABLE `attempts_login` ( - `ip` varchar(39) NOT NULL DEFAULT '', - `times` int(11) DEFAULT NULL, - `login_time` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP -) ENGINE=MyISAM DEFAULT CHARSET=utf8 ; - --- -------------------------------------------------------- - --- --- Table structure for table `client` --- - -CREATE TABLE `client` ( - `client_id` int(11) unsigned NOT NULL AUTO_INCREMENT, - `sys_userid` int(11) unsigned NOT NULL DEFAULT '0', - `sys_groupid` int(11) unsigned NOT NULL DEFAULT '0', - `sys_perm_user` varchar(5) DEFAULT NULL, - `sys_perm_group` varchar(5) DEFAULT NULL, - `sys_perm_other` varchar(5) DEFAULT NULL, - `company_name` varchar(64) DEFAULT NULL, - `company_id` varchar(255) DEFAULT NULL, - `gender` enum('','m','f') NOT NULL DEFAULT '', - `contact_firstname` varchar( 64 ) NOT NULL DEFAULT '', - `contact_name` varchar(64) DEFAULT NULL, - `customer_no` varchar(64) DEFAULT NULL, - `vat_id` varchar(64) DEFAULT NULL, - `street` varchar(255) DEFAULT NULL, - `zip` varchar(32) DEFAULT NULL, - `city` varchar(64) DEFAULT NULL, - `state` varchar(32) DEFAULT NULL, - `country` char(2) DEFAULT NULL, - `telephone` varchar(32) DEFAULT NULL, - `mobile` varchar(32) DEFAULT NULL, - `fax` varchar(32) DEFAULT NULL, - `email` varchar(255) DEFAULT NULL, - `internet` varchar(255) NOT NULL DEFAULT '', - `icq` varchar(16) DEFAULT NULL, - `notes` text, - `bank_account_owner` varchar(255) DEFAULT NULL, - `bank_account_number` varchar(255) DEFAULT NULL, - `bank_code` varchar(255) DEFAULT NULL, - `bank_name` varchar(255) DEFAULT NULL, - `bank_account_iban` varchar(255) DEFAULT NULL, - `bank_account_swift` varchar(255) DEFAULT NULL, - `paypal_email` varchar(255) DEFAULT NULL, - `default_mailserver` int(11) unsigned NOT NULL DEFAULT '1', - `mail_servers` text, - `limit_maildomain` int(11) NOT NULL DEFAULT '-1', - `limit_mailbox` int(11) NOT NULL DEFAULT '-1', - `limit_mailalias` int(11) NOT NULL DEFAULT '-1', - `limit_mailaliasdomain` int(11) NOT NULL DEFAULT '-1', - `limit_mailforward` int(11) NOT NULL DEFAULT '-1', - `limit_mailcatchall` int(11) NOT NULL DEFAULT '-1', - `limit_mailrouting` int(11) NOT NULL DEFAULT '0', - `limit_mailfilter` int(11) NOT NULL DEFAULT '-1', - `limit_fetchmail` int(11) NOT NULL DEFAULT '-1', - `limit_mailquota` int(11) NOT NULL DEFAULT '-1', - `limit_spamfilter_wblist` int(11) NOT NULL DEFAULT '0', - `limit_spamfilter_user` int(11) NOT NULL DEFAULT '0', - `limit_spamfilter_policy` int(11) NOT NULL DEFAULT '0', - `default_xmppserver` int(11) unsigned NOT NULL DEFAULT '1', - `xmpp_servers` text, - `limit_xmpp_domain` int(11) NOT NULL DEFAULT '-1', - `limit_xmpp_user` int(11) NOT NULL DEFAULT '-1', - `limit_xmpp_muc` ENUM( 'n', 'y' ) NOT NULL default 'n', - `limit_xmpp_anon` ENUM( 'n', 'y' ) NOT NULL default 'n', - `limit_xmpp_auth_options` varchar(255) NOT NULL DEFAULT 'plain,hashed,isp', - `limit_xmpp_vjud` ENUM( 'n', 'y' ) NOT NULL default 'n', - `limit_xmpp_proxy` ENUM( 'n', 'y' ) NOT NULL default 'n', - `limit_xmpp_status` ENUM( 'n', 'y' ) NOT NULL default 'n', - `limit_xmpp_pastebin` ENUM( 'n', 'y' ) NOT NULL default 'n', - `limit_xmpp_httparchive` ENUM( 'n', 'y' ) NOT NULL default 'n', - `default_webserver` int(11) unsigned NOT NULL DEFAULT '1', - `web_servers` text, - `limit_web_ip` text, - `limit_web_domain` int(11) NOT NULL DEFAULT '-1', - `limit_web_quota` int(11) NOT NULL DEFAULT '-1', - `web_php_options` varchar(255) NOT NULL DEFAULT 'no,fast-cgi,cgi,mod,suphp,php-fpm,hhvm', - `limit_cgi` enum('n','y') NOT NULL DEFAULT 'n', - `limit_ssi` enum('n','y') NOT NULL DEFAULT 'n', - `limit_perl` enum('n','y') NOT NULL DEFAULT 'n', - `limit_ruby` enum('n','y') NOT NULL DEFAULT 'n', - `limit_python` enum('n','y') NOT NULL DEFAULT 'n', - `force_suexec` enum('n','y') NOT NULL DEFAULT 'y', - `limit_hterror` enum('n','y') NOT NULL DEFAULT 'n', - `limit_wildcard` enum('n','y') NOT NULL DEFAULT 'n', - `limit_ssl` enum('n','y') NOT NULL DEFAULT 'n', - `limit_ssl_letsencrypt` enum('n','y') NOT NULL DEFAULT 'n', - `limit_web_subdomain` int(11) NOT NULL DEFAULT '-1', - `limit_web_aliasdomain` int(11) NOT NULL DEFAULT '-1', - `limit_ftp_user` int(11) NOT NULL DEFAULT '-1', - `limit_shell_user` int(11) NOT NULL DEFAULT '0', - `ssh_chroot` varchar(255) NOT NULL DEFAULT 'no,jailkit,ssh-chroot', - `limit_webdav_user` int(11) NOT NULL DEFAULT '0', - `limit_backup` ENUM( 'n', 'y' ) NOT NULL DEFAULT 'y', - `limit_directive_snippets` ENUM( 'n', 'y' ) NOT NULL DEFAULT 'n', - `limit_aps` int(11) NOT NULL DEFAULT '-1', - `default_dnsserver` int(11) unsigned NOT NULL DEFAULT '1', - `db_servers` text, - `limit_dns_zone` int(11) NOT NULL DEFAULT '-1', - `default_slave_dnsserver` int(11) unsigned NOT NULL DEFAULT '1', - `limit_dns_slave_zone` int(11) NOT NULL DEFAULT '-1', - `limit_dns_record` int(11) NOT NULL DEFAULT '-1', - `default_dbserver` int(11) NOT NULL DEFAULT '1', - `dns_servers` text, - `limit_database` int(11) NOT NULL DEFAULT '-1', - `limit_database_user` int(11) NOT NULL DEFAULT '-1', - `limit_database_quota` int(11) NOT NULL default '-1', - `limit_cron` int(11) NOT NULL DEFAULT '0', - `limit_cron_type` enum('url','chrooted','full') NOT NULL DEFAULT 'url', - `limit_cron_frequency` int(11) NOT NULL DEFAULT '5', - `limit_traffic_quota` int(11) NOT NULL DEFAULT '-1', - `limit_client` int(11) NOT NULL DEFAULT '0', - `limit_domainmodule` int(11) NOT NULL DEFAULT '0', - `limit_mailmailinglist` int(11) NOT NULL DEFAULT '-1', - `limit_openvz_vm` int(11) NOT NULL DEFAULT '0', - `limit_openvz_vm_template_id` int(11) NOT NULL DEFAULT '0', - `parent_client_id` int(11) unsigned NOT NULL DEFAULT '0', - `username` varchar(64) DEFAULT NULL, - `password` varchar(64) DEFAULT NULL, - `language` char(2) NOT NULL DEFAULT 'en', - `usertheme` varchar(32) NOT NULL DEFAULT 'default', - `template_master` int(11) unsigned NOT NULL DEFAULT '0', - `template_additional` text, - `created_at` bigint(20) DEFAULT NULL, - `locked` enum('n','y') NOT NULL DEFAULT 'n', - `canceled` enum('n','y') NOT NULL DEFAULT 'n', - `can_use_api` enum('n','y') NOT NULL DEFAULT 'n', - `tmp_data` mediumblob, - `id_rsa` varchar(2000) NOT NULL DEFAULT '', - `ssh_rsa` varchar(600) NOT NULL DEFAULT '', - `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 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', - `activation_code` varchar(10) NOT NULL DEFAULT '', - PRIMARY KEY (`client_id`) -) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ; - --- -------------------------------------------------------- - --- --- Table structure for table `client_circle` --- - -CREATE TABLE `client_circle` ( - `circle_id` int(11) NOT NULL AUTO_INCREMENT, - `sys_userid` int(11) NOT NULL DEFAULT '0', - `sys_groupid` int(11) NOT NULL DEFAULT '0', - `sys_perm_user` varchar(5) DEFAULT NULL, - `sys_perm_group` varchar(5) DEFAULT NULL, - `sys_perm_other` varchar(5) DEFAULT NULL, - `circle_name` varchar(64) DEFAULT NULL, - `client_ids` text, - `description` text, - `active` enum('n','y') NOT NULL default 'y', - PRIMARY KEY (`circle_id`) -) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ; - --- -------------------------------------------------------- - --- --- Table structure for table `client_template` --- - -CREATE TABLE `client_template` ( - `template_id` int(11) unsigned NOT NULL auto_increment, - `sys_userid` int(11) unsigned NOT NULL default '0', - `sys_groupid` int(11) unsigned NOT NULL default '0', - `sys_perm_user` varchar(5) default NULL, - `sys_perm_group` varchar(5) default NULL, - `sys_perm_other` varchar(5) default NULL, - `template_name` varchar(64) NOT NULL DEFAULT '', - `template_type` varchar(1) NOT NULL default 'm', - `mail_servers` text, - `limit_maildomain` int(11) NOT NULL default '-1', - `limit_mailbox` int(11) NOT NULL default '-1', - `limit_mailalias` int(11) NOT NULL default '-1', - `limit_mailaliasdomain` int(11) NOT NULL default '-1', - `limit_mailforward` int(11) NOT NULL default '-1', - `limit_mailcatchall` int(11) NOT NULL default '-1', - `limit_mailrouting` int(11) NOT NULL default '0', - `limit_mailfilter` int(11) NOT NULL default '-1', - `limit_fetchmail` int(11) NOT NULL default '-1', - `limit_mailquota` int(11) NOT NULL default '-1', - `limit_spamfilter_wblist` int(11) NOT NULL default '0', - `limit_spamfilter_user` int(11) NOT NULL default '0', - `limit_spamfilter_policy` int(11) NOT NULL default '0', - `default_xmppserver` int(11) unsigned NOT NULL DEFAULT '1', - `xmpp_servers` text, - `limit_xmpp_domain` int(11) NOT NULL DEFAULT '-1', - `limit_xmpp_user` int(11) NOT NULL DEFAULT '-1', - `limit_xmpp_muc` ENUM( 'n', 'y' ) NOT NULL default 'n', - `limit_xmpp_anon` ENUM( 'n', 'y' ) NOT NULL default 'n', - `limit_xmpp_vjud` ENUM( 'n', 'y' ) NOT NULL default 'n', - `limit_xmpp_proxy` ENUM( 'n', 'y' ) NOT NULL default 'n', - `limit_xmpp_status` ENUM( 'n', 'y' ) NOT NULL default 'n', - `limit_xmpp_pastebin` ENUM( 'n', 'y' ) NOT NULL default 'n', - `limit_xmpp_httparchive` ENUM( 'n', 'y' ) NOT NULL default 'n', - `web_servers` text, - `limit_web_ip` text, - `limit_web_domain` int(11) NOT NULL default '-1', - `limit_web_quota` int(11) NOT NULL default '-1', - `web_php_options` varchar(255) NOT NULL DEFAULT 'no', - `limit_cgi` enum('n','y') NOT NULL DEFAULT 'n', - `limit_ssi` enum('n','y') NOT NULL DEFAULT 'n', - `limit_perl` enum('n','y') NOT NULL DEFAULT 'n', - `limit_ruby` enum('n','y') NOT NULL DEFAULT 'n', - `limit_python` enum('n','y') NOT NULL DEFAULT 'n', - `force_suexec` enum('n','y') NOT NULL DEFAULT 'y', - `limit_hterror` enum('n','y') NOT NULL DEFAULT 'n', - `limit_wildcard` enum('n','y') NOT NULL DEFAULT 'n', - `limit_ssl` enum('n','y') NOT NULL DEFAULT 'n', - `limit_ssl_letsencrypt` enum('n','y') NOT NULL DEFAULT 'n', - `limit_web_subdomain` int(11) NOT NULL default '-1', - `limit_web_aliasdomain` int(11) NOT NULL default '-1', - `limit_ftp_user` int(11) NOT NULL default '-1', - `limit_shell_user` int(11) NOT NULL default '0', - `ssh_chroot` varchar(255) NOT NULL DEFAULT 'no', - `limit_webdav_user` int(11) NOT NULL default '0', - `limit_backup` ENUM( 'n', 'y' ) NOT NULL DEFAULT 'y', - `limit_directive_snippets` ENUM( 'n', 'y' ) NOT NULL DEFAULT 'n', - `limit_aps` int(11) NOT NULL DEFAULT '-1', - `dns_servers` text, - `limit_dns_zone` int(11) NOT NULL default '-1', - `default_slave_dnsserver` int(11) NOT NULL DEFAULT '0', - `limit_dns_slave_zone` int(11) NOT NULL default '-1', - `limit_dns_record` int(11) NOT NULL default '-1', - `db_servers` text, - `limit_database` int(11) NOT NULL default '-1', - `limit_database_user` int(11) NOT NULL DEFAULT '-1', - `limit_database_quota` int(11) NOT NULL default '-1', - `limit_cron` int(11) NOT NULL default '0', - `limit_cron_type` enum('url','chrooted','full') NOT NULL default 'url', - `limit_cron_frequency` int(11) NOT NULL default '5', - `limit_traffic_quota` int(11) NOT NULL default '-1', - `limit_client` int(11) NOT NULL default '0', - `limit_domainmodule` int(11) NOT NULL DEFAULT '0', - `limit_mailmailinglist` int(11) NOT NULL default '-1', - `limit_openvz_vm` int(11) NOT NULL DEFAULT '0', - `limit_openvz_vm_template_id` int(11) NOT NULL DEFAULT '0', - PRIMARY KEY (`template_id`) -) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ; - --- -------------------------------------------------------- - --- --- Table structure for table `client_template_assigned` --- - -CREATE TABLE `client_template_assigned` ( - `assigned_template_id` bigint(20) NOT NULL auto_increment, - `client_id` bigint(11) NOT NULL DEFAULT '0', - `client_template_id` int(11) NOT NULL DEFAULT '0', - PRIMARY KEY (`assigned_template_id`), - KEY `client_id` (`client_id`) -) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ; --- -------------------------------------------------------- - --- --- Table structure for table `invoice_message_template` --- - -CREATE TABLE `client_message_template` ( - `client_message_template_id` bigint(20) NOT NULL AUTO_INCREMENT, - `sys_userid` int(11) NOT NULL DEFAULT '0', - `sys_groupid` int(11) NOT NULL DEFAULT '0', - `sys_perm_user` varchar(5) DEFAULT NULL, - `sys_perm_group` varchar(5) DEFAULT NULL, - `sys_perm_other` varchar(5) DEFAULT NULL, - `template_type` varchar(255) DEFAULT NULL, - `template_name` varchar(255) DEFAULT NULL, - `subject` varchar(255) DEFAULT NULL, - `message` text, - PRIMARY KEY (`client_message_template_id`) -) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ; - --- --- Dumping data for table `invoice_message_template` --- - --- -------------------------------------------------------- - --- --- Table structure for table `country` --- - -CREATE TABLE `country` ( - `iso` char(2) NOT NULL DEFAULT '', - `name` varchar(64) NOT NULL DEFAULT '', - `printable_name` varchar(64) NOT NULL DEFAULT '', - `iso3` char(3) DEFAULT NULL, - `numcode` smallint(6) DEFAULT NULL, - `eu` enum('n','y') NOT NULL DEFAULT 'n', - PRIMARY KEY (`iso`) -) ENGINE=MyISAM DEFAULT CHARSET=utf8 ; - --- -------------------------------------------------------- - --- --- Table structure for table `cron` --- -CREATE TABLE `cron` ( - `id` int(11) unsigned NOT NULL auto_increment, - `sys_userid` int(11) unsigned NOT NULL default '0', - `sys_groupid` int(11) unsigned NOT NULL default '0', - `sys_perm_user` varchar(5) NULL default NULL, - `sys_perm_group` varchar(5) NULL default NULL, - `sys_perm_other` varchar(5) NULL default NULL, - `server_id` int(11) unsigned NOT NULL default '0', - `parent_domain_id` int(11) unsigned NOT NULL default '0', - `type` enum('url','chrooted','full') NOT NULL default 'url', - `command` TEXT, - `run_min` varchar(100) NULL, - `run_hour` varchar(100) NULL, - `run_mday` varchar(100) NULL, - `run_month` varchar(100) NULL, - `run_wday` varchar(100) NULL, - `log` enum('n','y') NOT NULL default 'n', - `active` enum('n','y') NOT NULL default 'y', - PRIMARY KEY (`id`) -) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ; - --- -------------------------------------------------------- - --- --- Table structure for table `directive_snippets` --- - -CREATE TABLE IF NOT EXISTS `directive_snippets` ( - `directive_snippets_id` int(11) unsigned NOT NULL AUTO_INCREMENT, - `sys_userid` int(11) unsigned NOT NULL DEFAULT '0', - `sys_groupid` int(11) unsigned NOT NULL DEFAULT '0', - `sys_perm_user` varchar(5) DEFAULT NULL, - `sys_perm_group` varchar(5) DEFAULT NULL, - `sys_perm_other` varchar(5) DEFAULT NULL, - `name` varchar(255) DEFAULT NULL, - `type` varchar(255) DEFAULT NULL, - `snippet` mediumtext, - `customer_viewable` ENUM('n','y') NOT NULL DEFAULT 'n', - `required_php_snippets` varchar(255) NOT NULL DEFAULT '', - `active` enum('n','y') NOT NULL DEFAULT 'y', - `master_directive_snippets_id` int(11) unsigned NOT NULL DEFAULT '0', - PRIMARY KEY (`directive_snippets_id`) -) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ; - --- -------------------------------------------------------- - --- --- Table structure for table `dns_rr` --- -CREATE TABLE `dns_rr` ( - `id` int(11) unsigned NOT NULL auto_increment, - `sys_userid` int(11) unsigned NOT NULL DEFAULT '0', - `sys_groupid` int(11) unsigned NOT NULL DEFAULT '0', - `sys_perm_user` varchar(5) NOT NULL DEFAULT '', - `sys_perm_group` varchar(5) NOT NULL DEFAULT '', - `sys_perm_other` varchar(5) NOT NULL DEFAULT '', - `server_id` int(11) NOT NULL default '1', - `zone` int(11) unsigned NOT NULL DEFAULT '0', - `name` varchar(255) NOT NULL DEFAULT '', - `type` enum('A','AAAA','ALIAS','CNAME','CAA','DS','HINFO','LOC','MX','NAPTR','NS','PTR','RP','SRV','TXT','TLSA','DNSKEY') default NULL, - `data` TEXT NOT NULL, - `aux` int(11) unsigned NOT NULL default '0', - `ttl` int(11) unsigned NOT NULL default '3600', - `active` enum('N','Y') NOT NULL default 'Y', - `stamp` timestamp NOT NULL default CURRENT_TIMESTAMP, - `serial` int(10) unsigned default NULL, - PRIMARY KEY (`id`), - KEY `rr` (`zone`,`type`,`name`) -) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ; - --- -------------------------------------------------------- - --- --- Table structure for table `dns_slave` --- - -CREATE TABLE `dns_slave` ( - `id` int(10) unsigned NOT NULL auto_increment, - `sys_userid` int(11) unsigned NOT NULL DEFAULT '0', - `sys_groupid` int(11) unsigned NOT NULL DEFAULT '0', - `sys_perm_user` varchar(5) NOT NULL DEFAULT '', - `sys_perm_group` varchar(5) NOT NULL DEFAULT '', - `sys_perm_other` varchar(5) NOT NULL DEFAULT '', - `server_id` int(11) NOT NULL default '1', - `origin` varchar(255) NOT NULL DEFAULT '', - `ns` varchar(255) NOT NULL DEFAULT '', - `active` enum('N','Y') NOT NULL DEFAULT 'N', - `xfer` TEXT NULL, - PRIMARY KEY (`id`), - UNIQUE KEY `slave` (`origin`,`server_id`), - KEY `active` (`active`) -) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ; - --- -------------------------------------------------------- - --- --- Table structure for table `dns_ssl_ca` --- - -CREATE TABLE IF NOT EXISTS `dns_ssl_ca` ( - `id` int(10) unsigned NOT NULL AUTO_INCREMENT, - `sys_userid` int(11) unsigned NOT NULL DEFAULT '0', - `sys_groupid` int(11) unsigned NOT NULL DEFAULT '0', - `sys_perm_user` varchar(5) NOT NULL DEFAULT '', - `sys_perm_group` varchar(5) NOT NULL DEFAULT '', - `sys_perm_other` varchar(5) NOT NULL DEFAULT '', - `active` enum('N','Y') NOT NULL DEFAULT 'N', - `ca_name` varchar(255) NOT NULL DEFAULT '', - `ca_issue` varchar(255) NOT NULL DEFAULT '', - `ca_wildcard` enum('Y','N') NOT NULL DEFAULT 'N', - `ca_iodef` text NOT NULL, - `ca_critical` tinyint(1) NOT NULL DEFAULT '0', - PRIMARY KEY (`id`), - UNIQUE KEY (`ca_issue`) -) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ; - -ALTER TABLE `dns_ssl_ca` ADD UNIQUE(`ca_issue`); - -INSERT INTO `dns_ssl_ca` (`id`, `sys_userid`, `sys_groupid`, `sys_perm_user`, `sys_perm_group`, `sys_perm_other`, `active`, `ca_name`, `ca_issue`, `ca_wildcard`, `ca_iodef`, `ca_critical`) VALUES -(NULL, 1, 1, 'riud', 'riud', '', 'Y', 'AC Camerfirma', 'camerfirma.com', 'Y', '', 0), -(NULL, 1, 1, 'riud', 'riud', '', 'Y', 'ACCV', 'accv.es', 'Y', '', 0), -(NULL, 1, 1, 'riud', 'riud', '', 'Y', 'Actalis', 'actalis.it', 'Y', '', 0), -(NULL, 1, 1, 'riud', 'riud', '', 'Y', 'Amazon', 'amazon.com', 'Y', '', 0), -(NULL, 1, 1, 'riud', 'riud', '', 'Y', 'Asseco', 'certum.pl', 'Y', '', 0), -(NULL, 1, 1, 'riud', 'riud', '', 'Y', 'Buypass', 'buypass.com', 'Y', '', 0), -(NULL, 1, 1, 'riud', 'riud', '', 'Y', 'CA Disig', 'disig.sk', 'Y', '', 0), -(NULL, 1, 1, 'riud', 'riud', '', 'Y', 'CATCert', 'aoc.cat', 'Y', '', 0), -(NULL, 1, 1, 'riud', 'riud', '', 'Y', 'Certinomis', 'www.certinomis.com', 'Y', '', 0), -(NULL, 1, 1, 'riud', 'riud', '', 'Y', 'Certizen', 'hongkongpost.gov.hk', 'Y', '', 0), -(NULL, 1, 1, 'riud', 'riud', '', 'Y', 'certSIGN', 'certsign.ro', 'Y', '', 0), -(NULL, 1, 1, 'riud', 'riud', '', 'Y', 'CFCA', 'cfca.com.cn', 'Y', '', 0), -(NULL, 1, 1, 'riud', 'riud', '', 'Y', 'Chunghwa Telecom', 'cht.com.tw', 'Y', '', 0), -(NULL, 1, 1, 'riud', 'riud', '', 'Y', 'Comodo', 'comodoca.com', 'Y', '', 0), -(NULL, 1, 1, 'riud', 'riud', '', 'Y', 'D-TRUST', 'd-trust.net', 'Y', '', 0), -(NULL, 1, 1, 'riud', 'riud', '', 'Y', 'DigiCert', 'digicert.com', 'Y', '', 0), -(NULL, 1, 1, 'riud', 'riud', '', 'Y', 'DocuSign', 'docusign.fr', 'Y', '', 0), -(NULL, 1, 1, 'riud', 'riud', '', 'Y', 'e-tugra', 'e-tugra.com', 'Y', '', 0), -(NULL, 1, 1, 'riud', 'riud', '', 'Y', 'EDICOM', 'edicomgroup.com', 'Y', '', 0), -(NULL, 1, 1, 'riud', 'riud', '', 'Y', 'Entrust', 'entrust.net', 'Y', '', 0), -(NULL, 1, 1, 'riud', 'riud', '', 'Y', 'Firmaprofesional', 'firmaprofesional.com', 'Y', '', 0), -(NULL, 1, 1, 'riud', 'riud', '', 'Y', 'FNMT', 'fnmt.es', 'Y', '', 0), -(NULL, 1, 1, 'riud', 'riud', '', 'Y', 'GlobalSign', 'globalsign.com', 'Y', '', 0), -(NULL, 1, 1, 'riud', 'riud', '', 'Y', 'GoDaddy', 'godaddy.com', 'Y', '', 0), -(NULL, 1, 1, 'riud', 'riud', '', 'Y', 'Google Trust Services', 'pki.goog', 'Y', '', 0), -(NULL, 1, 1, 'riud', 'riud', '', 'Y', 'GRCA', 'gca.nat.gov.tw', 'Y', '', 0), -(NULL, 1, 1, 'riud', 'riud', '', 'Y', 'HARICA', 'harica.gr', 'Y', '', 0), -(NULL, 1, 1, 'riud', 'riud', '', 'Y', 'IdenTrust', 'identrust.com', 'Y', '', 0), -(NULL, 1, 1, 'riud', 'riud', '', 'Y', 'Izenpe', 'izenpe.com', 'Y', '', 0), -(NULL, 1, 1, 'riud', 'riud', '', 'Y', 'Kamu SM', 'kamusm.gov.tr', 'Y', '', 0), -(NULL, 1, 1, 'riud', 'riud', '', 'Y', 'Let''s Encrypt', 'letsencrypt.org', 'Y', '', 0), -(NULL, 1, 1, 'riud', 'riud', '', 'Y', 'Microsec e-Szigno', 'e-szigno.hu', 'Y', '', 0), -(NULL, 1, 1, 'riud', 'riud', '', 'Y', 'NetLock', 'netlock.hu', 'Y', '', 0), -(NULL, 1, 1, 'riud', 'riud', '', 'Y', 'PKIoverheid', 'www.pkioverheid.nl', 'Y', '', 0), -(NULL, 1, 1, 'riud', 'riud', '', 'Y', 'PROCERT', 'procert.net.ve', 'Y', '', 0), -(NULL, 1, 1, 'riud', 'riud', '', 'Y', 'QuoVadis', 'quovadisglobal.com', 'Y', '', 0), -(NULL, 1, 1, 'riud', 'riud', '', 'Y', 'SECOM', 'secomtrust.net', 'Y', '', 0), -(NULL, 1, 1, 'riud', 'riud', '', 'Y', 'Sertifitseerimiskeskuse', 'sk.ee', 'Y', '', 0), -(NULL, 1, 1, 'riud', 'riud', '', 'Y', 'StartCom', 'startcomca.com', 'Y', '', 0), -(NULL, 1, 1, 'riud', 'riud', '', 'Y', 'SwissSign', 'swisssign.com', 'Y', '', 0), -(NULL, 1, 1, 'riud', 'riud', '', 'Y', 'Symantec / Thawte / GeoTrust', 'symantec.com', 'Y', '', 0), -(NULL, 1, 1, 'riud', 'riud', '', 'Y', 'T-Systems', 'telesec.de', 'Y', '', 0), -(NULL, 1, 1, 'riud', 'riud', '', 'Y', 'Telia', 'telia.com', 'Y', '', 0), -(NULL, 1, 1, 'riud', 'riud', '', 'Y', 'Trustwave', 'trustwave.com', 'Y', '', 0), -(NULL, 1, 1, 'riud', 'riud', '', 'Y', 'Web.com', 'web.com', 'Y', '', 0), -(NULL, 1, 1, 'riud', 'riud', '', 'Y', 'WISeKey', 'wisekey.com', 'Y', '', 0), -(NULL, 1, 1, 'riud', 'riud', '', 'Y', 'WoSign', 'wosign.com', 'Y', '', 0); - --- -------------------------------------------------------- - --- --- Table structure for table `dns_soa` --- - -CREATE TABLE `dns_soa` ( - `id` int(10) unsigned NOT NULL auto_increment, - `sys_userid` int(11) unsigned NOT NULL DEFAULT '0', - `sys_groupid` int(11) unsigned NOT NULL DEFAULT '0', - `sys_perm_user` varchar(5) NOT NULL DEFAULT '', - `sys_perm_group` varchar(5) NOT NULL DEFAULT '', - `sys_perm_other` varchar(5) NOT NULL DEFAULT '', - `server_id` int(11) NOT NULL default '1', - `origin` varchar(255) NOT NULL DEFAULT '', - `ns` varchar(255) NOT NULL DEFAULT '', - `mbox` varchar(255) NOT NULL DEFAULT '', - `serial` int(11) unsigned NOT NULL default '1', - `refresh` int(11) unsigned NOT NULL default '28800', - `retry` int(11) unsigned NOT NULL default '7200', - `expire` int(11) unsigned NOT NULL default '604800', - `minimum` int(11) unsigned NOT NULL default '3600', - `ttl` int(11) unsigned NOT NULL default '3600', - `active` enum('N','Y') NOT NULL DEFAULT 'N', - `xfer` TEXT NULL, - `also_notify` TEXT NULL, - `update_acl` varchar(255) default NULL, - `dnssec_initialized` ENUM('Y','N') NOT NULL DEFAULT 'N', - `dnssec_wanted` ENUM('Y','N') NOT NULL DEFAULT 'N', - `dnssec_last_signed` BIGINT NOT NULL DEFAULT '0', - `dnssec_info` TEXT NULL, - PRIMARY KEY (`id`), - UNIQUE KEY `origin` (`origin`), - KEY `active` (`active`) -) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ; - --- -------------------------------------------------------- - --- --- Table structure for table `dns_template` --- - -CREATE TABLE `dns_template` ( - `template_id` int(11) unsigned NOT NULL auto_increment, - `sys_userid` int(11) unsigned NOT NULL default '0', - `sys_groupid` int(11) unsigned NOT NULL default '0', - `sys_perm_user` varchar(5) default NULL, - `sys_perm_group` varchar(5) default NULL, - `sys_perm_other` varchar(5) default NULL, - `name` varchar(64) default NULL, - `fields` varchar(255) default NULL, - `template` text, - `visible` enum('N','Y') NOT NULL default 'Y', - PRIMARY KEY (`template_id`) -) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ; - --- --- Table structure for table `domain` --- - -CREATE TABLE `domain` ( - `domain_id` int(11) unsigned NOT NULL auto_increment, - `sys_userid` int(11) unsigned NOT NULL default '0', - `sys_groupid` int(11) unsigned NOT NULL default '0', - `sys_perm_user` varchar(5) NOT NULL default '', - `sys_perm_group` varchar(5) NOT NULL default '', - `sys_perm_other` varchar(5) NOT NULL default '', - `domain` varchar(255) NOT NULL default '', - PRIMARY KEY (`domain_id`), - UNIQUE KEY `domain` (`domain`) -) ENGINE=MyISAM DEFAULT CHARSET=utf8 ; - --- -------------------------------------------------------- - --- --- Table structure for table `firewall` --- - -CREATE TABLE `firewall` ( - `firewall_id` int(11) unsigned NOT NULL auto_increment, - `sys_userid` int(11) unsigned NOT NULL default '0', - `sys_groupid` int(11) unsigned NOT NULL default '0', - `sys_perm_user` varchar(5) default NULL, - `sys_perm_group` varchar(5) default NULL, - `sys_perm_other` varchar(5) default NULL, - `server_id` int(11) unsigned NOT NULL default '0', - `tcp_port` text, - `udp_port` text, - `active` enum('n','y') NOT NULL default 'y', - PRIMARY KEY (`firewall_id`) -) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ; - --- -------------------------------------------------------- - --- --- Table structure for table `ftp_user` --- - -CREATE TABLE `ftp_user` ( - `ftp_user_id` int(11) unsigned NOT NULL auto_increment, - `sys_userid` int(11) unsigned NOT NULL default '0', - `sys_groupid` int(11) unsigned NOT NULL default '0', - `sys_perm_user` varchar(5) default NULL, - `sys_perm_group` varchar(5) default NULL, - `sys_perm_other` varchar(5) default NULL, - `server_id` int(11) unsigned NOT NULL default '0', - `parent_domain_id` int(11) unsigned NOT NULL default '0', - `username` varchar(64) default NULL, - `username_prefix` varchar(50) NOT NULL default '', - `password` varchar(64) default NULL, - `quota_size` bigint(20) NOT NULL default '-1', - `active` enum('n','y') NOT NULL default 'y', - `uid` varchar(64) default NULL, - `gid` varchar(64) default NULL, - `dir` varchar(255) default NULL, - `quota_files` bigint(20) NOT NULL default '-1', - `ul_ratio` int(11) NOT NULL default '-1', - `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 NULL DEFAULT NULL, - `user_type` set('user','system') NOT NULL DEFAULT 'user', - `user_config` text, - PRIMARY KEY (`ftp_user_id`), - KEY `active` (`active`), - KEY `server_id` (`server_id`), - KEY `username` (`username`), - KEY `quota_files` (`quota_files`) -) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ; - --- -------------------------------------------------------- - --- --- Table structure for table `ftp_traffic` --- - -CREATE TABLE `ftp_traffic` ( - `hostname` varchar(255) NOT NULL, - `traffic_date` date NOT NULL, - `in_bytes` bigint(32) unsigned NOT NULL, - `out_bytes` bigint(32) unsigned NOT NULL, - UNIQUE KEY (`hostname`,`traffic_date`) -) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ; - --- -------------------------------------------------------- - --- --- Table structure for table `help_faq` --- - -CREATE TABLE `help_faq` ( - `hf_id` int(11) NOT NULL AUTO_INCREMENT, - `hf_section` int(11) DEFAULT NULL, - `hf_order` int(11) DEFAULT '0', - `hf_question` text, - `hf_answer` text, - `sys_userid` int(11) DEFAULT NULL, - `sys_groupid` int(11) DEFAULT NULL, - `sys_perm_user` varchar(5) DEFAULT NULL, - `sys_perm_group` varchar(5) DEFAULT NULL, - `sys_perm_other` varchar(5) DEFAULT NULL, - PRIMARY KEY (`hf_id`) -) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ; - --- -------------------------------------------------------- - --- --- Table structure for table `help_faq_sections` --- - -CREATE TABLE `help_faq_sections` ( - `hfs_id` int(11) NOT NULL AUTO_INCREMENT, - `hfs_name` varchar(255) DEFAULT NULL, - `hfs_order` int(11) DEFAULT '0', - `sys_userid` int(11) DEFAULT NULL, - `sys_groupid` int(11) DEFAULT NULL, - `sys_perm_user` varchar(5) DEFAULT NULL, - `sys_perm_group` varchar(5) DEFAULT NULL, - `sys_perm_other` varchar(5) DEFAULT NULL, - PRIMARY KEY (`hfs_id`) -) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ; - --- -------------------------------------------------------- - --- Table structure for table `iptables` --- - -DROP TABLE IF EXISTS `iptables`; -CREATE TABLE `iptables` ( - `iptables_id` int(10) unsigned NOT NULL AUTO_INCREMENT, - `server_id` int(10) unsigned NOT NULL DEFAULT '0', - `table` varchar(10) DEFAULT NULL COMMENT 'INPUT OUTPUT FORWARD', - `source_ip` varchar(16) DEFAULT NULL, - `destination_ip` varchar(16) DEFAULT NULL, - `protocol` varchar(10) DEFAULT 'TCP' COMMENT 'TCP UDP GRE', - `singleport` varchar(10) DEFAULT NULL, - `multiport` varchar(40) DEFAULT NULL, - `state` varchar(20) DEFAULT NULL COMMENT 'NEW ESTABLISHED RECNET etc', - `target` varchar(10) DEFAULT NULL COMMENT 'ACCEPT DROP REJECT LOG', - `active` enum('n','y') NOT NULL DEFAULT 'y', - PRIMARY KEY (`iptables_id`) -) ENGINE=MyISAM AUTO_INCREMENT=5 DEFAULT CHARSET=utf8; - --- -------------------------------------------------------- - --- --- Table structure for table `mail_access` --- - -CREATE TABLE `mail_access` ( - `access_id` int(11) unsigned NOT NULL auto_increment, - `sys_userid` int(11) unsigned NOT NULL default '0', - `sys_groupid` int(11) unsigned NOT NULL default '0', - `sys_perm_user` varchar(5) NOT NULL default '', - `sys_perm_group` varchar(5) NOT NULL default '', - `sys_perm_other` varchar(5) NOT NULL default '', - `server_id` int(11) NOT NULL default '0', - `source` varchar(255) NOT NULL DEFAULT '', - `access` varchar(255) NOT NULL DEFAULT '', - `type` set('recipient','sender','client') NOT NULL DEFAULT 'recipient', - `active` enum('n','y') NOT NULL default 'y', - PRIMARY KEY (`access_id`), - KEY `server_id` (`server_id`,`source`) -) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ; - --- -------------------------------------------------------- - --- --- Table structure for table `mail_backup` --- - -CREATE TABLE `mail_backup` ( - `backup_id` int(10) unsigned NOT NULL AUTO_INCREMENT, - `server_id` int(10) unsigned NOT NULL DEFAULT '0', - `parent_domain_id` int(10) unsigned NOT NULL DEFAULT '0', - `mailuser_id` int(10) unsigned NOT NULL DEFAULT '0', - `backup_mode` varchar(64) NOT NULL DEFAULT '', - `tstamp` int(10) unsigned NOT NULL DEFAULT '0', - `filename` varchar(255) NOT NULL DEFAULT '', - `filesize` VARCHAR(20) NOT NULL DEFAULT '', - PRIMARY KEY (`backup_id`) -) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ; - --- -------------------------------------------------------- - --- --- Table structure for table `mail_content_filter` --- - -CREATE TABLE `mail_content_filter` ( - `content_filter_id` int(11) unsigned NOT NULL auto_increment, - `sys_userid` int(11) unsigned NOT NULL default '0', - `sys_groupid` int(11) unsigned NOT NULL default '0', - `sys_perm_user` varchar(5) default NULL, - `sys_perm_group` varchar(5) default NULL, - `sys_perm_other` varchar(5) default NULL, - `server_id` int(11) NOT NULL default '0', - `type` varchar(255) default NULL, - `pattern` varchar(255) default NULL, - `data` varchar(255) default NULL, - `action` varchar(255) default NULL, - `active` varchar(255) NOT NULL default 'y', - PRIMARY KEY (`content_filter_id`) -) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ; - --- -------------------------------------------------------- - --- --- Table structure for table `mail_domain` --- - -CREATE TABLE `mail_domain` ( - `domain_id` int(11) unsigned NOT NULL auto_increment, - `sys_userid` int(11) unsigned NOT NULL default '0', - `sys_groupid` int(11) unsigned NOT NULL default '0', - `sys_perm_user` varchar(5) NOT NULL default '', - `sys_perm_group` varchar(5) NOT NULL default '', - `sys_perm_other` varchar(5) NOT NULL default '', - `server_id` int(11) unsigned NOT NULL default '0', - `domain` varchar(255) NOT NULL default '', - `dkim` ENUM( 'n', 'y' ) NOT NULL default 'n', - `dkim_selector` varchar(63) NOT NULL DEFAULT 'default', - `dkim_private` mediumtext NULL, - `dkim_public` mediumtext NULL, - `active` enum('n','y') NOT NULL DEFAULT 'n', - PRIMARY KEY (`domain_id`), - KEY `server_id` (`server_id`,`domain`), - KEY `domain_active` (`domain`,`active`) -) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ; - --- -------------------------------------------------------- - --- --- Table structure for table `mail_forwarding` --- - -CREATE TABLE `mail_forwarding` ( - `forwarding_id` int(11) unsigned NOT NULL auto_increment, - `sys_userid` int(11) unsigned NOT NULL default '0', - `sys_groupid` int(11) unsigned NOT NULL default '0', - `sys_perm_user` varchar(5) NOT NULL default '', - `sys_perm_group` varchar(5) NOT NULL default '', - `sys_perm_other` varchar(5) NOT NULL default '', - `server_id` int(11) unsigned NOT NULL default '0', - `source` varchar(255) NOT NULL DEFAULT '', - `destination` text, - `type` enum('alias','aliasdomain','forward','catchall') NOT NULL default 'alias', - `active` enum('n','y') NOT NULL DEFAULT 'n', - `allow_send_as` ENUM('n','y') NOT NULL DEFAULT 'n', - `greylisting` enum('n','y' ) NOT NULL DEFAULT 'n', - PRIMARY KEY (`forwarding_id`), - KEY `server_id` (`server_id`,`source`), - KEY `type` (`type`) -) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ; - --- -------------------------------------------------------- - --- --- Table structure for table `mail_get` --- - -CREATE TABLE `mail_get` ( - `mailget_id` int(11) unsigned NOT NULL auto_increment, - `sys_userid` int(11) unsigned NOT NULL default '0', - `sys_groupid` int(11) unsigned NOT NULL default '0', - `sys_perm_user` varchar(5) default NULL, - `sys_perm_group` varchar(5) default NULL, - `sys_perm_other` varchar(5) default NULL, - `server_id` int(11) unsigned NOT NULL default '0', - `type` varchar(255) default NULL, - `source_server` varchar(255) default NULL, - `source_username` varchar(255) default NULL, - `source_password` varchar(64) default NULL, - `source_delete` varchar(255) NOT NULL default 'y', - `source_read_all` varchar(255) NOT NULL default 'y', - `destination` varchar(255) default NULL, - `active` varchar(255) NOT NULL default 'y', - PRIMARY KEY (`mailget_id`) -) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ; - --- -------------------------------------------------------- - --- --- Tabellenstruktur für Tabelle `mail_mailinglist` --- - -CREATE TABLE `mail_mailinglist` ( - `mailinglist_id` int(11) unsigned NOT NULL auto_increment, - `sys_userid` int(11) unsigned NOT NULL default '0', - `sys_groupid` int(11) unsigned NOT NULL default '0', - `sys_perm_user` varchar(5) NOT NULL DEFAULT '', - `sys_perm_group` varchar(5) NOT NULL DEFAULT '', - `sys_perm_other` varchar(5) NOT NULL DEFAULT '', - `server_id` int(11) unsigned NOT NULL default '0', - `domain` varchar(255) NOT NULL DEFAULT '', - `listname` varchar(255) NOT NULL DEFAULT '', - `email` varchar(255) NOT NULL DEFAULT '', - `password` varchar(255) NOT NULL DEFAULT '', - PRIMARY KEY (`mailinglist_id`) -) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ; - --- -------------------------------------------------------- - --- --- Table structure for Table `mail_relay_recipient` --- - -CREATE TABLE IF NOT EXISTS `mail_relay_recipient` ( - `relay_recipient_id` bigint(20) NOT NULL AUTO_INCREMENT, - `sys_userid` int(11) NOT NULL DEFAULT '0', - `sys_groupid` int(11) NOT NULL DEFAULT '0', - `sys_perm_user` varchar(5) DEFAULT NULL, - `sys_perm_group` varchar(5) DEFAULT NULL, - `sys_perm_other` varchar(5) DEFAULT NULL, - `server_id` int(11) NOT NULL DEFAULT '0', - `source` varchar(255) DEFAULT NULL, - `access` varchar(255) NOT NULL DEFAULT 'OK', - `active` varchar(255) NOT NULL DEFAULT 'y', - PRIMARY KEY (`relay_recipient_id`) -) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ; - --- -------------------------------------------------------- - --- --- Table structure for table `mail_traffic` --- - -CREATE TABLE `mail_traffic` ( - `traffic_id` int(11) unsigned NOT NULL auto_increment, - `mailuser_id` int(11) unsigned NOT NULL DEFAULT '0', - `month` char(7) NOT NULL DEFAULT '', - `traffic` bigint(20) unsigned NOT NULL DEFAULT '0', - PRIMARY KEY (`traffic_id`), - KEY `mailuser_id` (`mailuser_id`,`month`) -) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ; - --- -------------------------------------------------------- - --- --- Table structure for table `mail_transport` --- - -CREATE TABLE `mail_transport` ( - `transport_id` int(11) unsigned NOT NULL auto_increment, - `sys_userid` int(11) unsigned NOT NULL default '0', - `sys_groupid` int(11) unsigned NOT NULL default '0', - `sys_perm_user` varchar(5) NOT NULL default '', - `sys_perm_group` varchar(5) NOT NULL default '', - `sys_perm_other` varchar(5) NOT NULL default '', - `server_id` int(11) unsigned NOT NULL default '0', - `domain` varchar(255) NOT NULL default '', - `transport` varchar(255) NOT NULL DEFAULT '', - `sort_order` int(11) unsigned NOT NULL default '5', - `active` enum('n','y') NOT NULL DEFAULT 'n', - PRIMARY KEY (`transport_id`), - KEY `server_id` (`server_id`,`transport`), - KEY `server_id_2` (`server_id`,`domain`) -) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ; - --- -------------------------------------------------------- - --- --- Table structure for table `mail_user` --- - -CREATE TABLE `mail_user` ( - `mailuser_id` int(11) unsigned NOT NULL auto_increment, - `sys_userid` int(11) unsigned NOT NULL default '0', - `sys_groupid` int(11) unsigned NOT NULL default '0', - `sys_perm_user` varchar(5) NOT NULL default '', - `sys_perm_group` varchar(5) NOT NULL default '', - `sys_perm_other` varchar(5) NOT NULL default '', - `server_id` int(11) unsigned NOT NULL default '0', - `email` varchar(255) NOT NULL default '', - `login` varchar(255) NOT NULL default '', - `password` varchar(255) NOT NULL default '', - `name` varchar(255) NOT NULL default '', - `uid` int(11) NOT NULL default '5000', - `gid` int(11) NOT NULL default '5000', - `maildir` varchar(255) NOT NULL default '', - `maildir_format` varchar(255) NOT NULL default 'maildir', - `quota` bigint(20) NOT NULL default '-1', - `cc` varchar(255) NOT NULL default '', - `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 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', - `custom_mailfilter` mediumtext, - `postfix` enum('n','y') NOT NULL default 'y', - `greylisting` enum('n','y' ) NOT NULL DEFAULT 'n', - `access` enum('n','y') NOT NULL default 'y', - `disableimap` enum('n','y') NOT NULL default 'n', - `disablepop3` enum('n','y') NOT NULL default 'n', - `disabledeliver` enum('n','y') NOT NULL default 'n', - `disablesmtp` enum('n','y') NOT NULL default 'n', - `disablesieve` enum('n','y') NOT NULL default 'n', - `disablesieve-filter` enum('n','y') NOT NULL default 'n', - `disablelda` enum('n','y') NOT NULL default 'n', - `disablelmtp` enum('n','y') NOT NULL default 'n', - `disabledoveadm` enum('n','y') NOT NULL default 'n', - `last_quota_notification` date NULL default NULL, - `backup_interval` VARCHAR( 255 ) NOT NULL default 'none', - `backup_copies` INT NOT NULL DEFAULT '1', - PRIMARY KEY (`mailuser_id`), - KEY `server_id` (`server_id`,`email`), - KEY `email_access` (`email`,`access`) -) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ; - --- -------------------------------------------------------- - --- --- Table structure for table `mail_user_filter` --- - -CREATE TABLE `mail_user_filter` ( - `filter_id` int(11) unsigned NOT NULL auto_increment, - `sys_userid` int(11) unsigned NOT NULL default '0', - `sys_groupid` int(11) unsigned NOT NULL default '0', - `sys_perm_user` varchar(5) default NULL, - `sys_perm_group` varchar(5) default NULL, - `sys_perm_other` varchar(5) default NULL, - `mailuser_id` int(11) unsigned NOT NULL default '0', - `rulename` varchar(64) default NULL, - `source` varchar(255) default NULL, - `searchterm` varchar(255) default NULL, - `op` varchar(255) default NULL, - `action` varchar(255) default NULL, - `target` varchar(255) default NULL, - `active` enum('n','y') NOT NULL default 'y', - PRIMARY KEY (`filter_id`) -) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ; - --- -------------------------------------------------------- - --- --- Table structure for table `monitor_data` --- - -CREATE TABLE `monitor_data` ( - `server_id` int(11) unsigned NOT NULL default '0', - `type` varchar(255) NOT NULL default '', - `created` int(11) unsigned NOT NULL default '0', - `data` mediumtext, - `state` enum('no_state','unknown','ok','info','warning','critical','error') NOT NULL DEFAULT 'unknown', - PRIMARY KEY (`server_id`,`type`,`created`) -) ENGINE=MyISAM DEFAULT CHARSET=utf8 ; - --- -------------------------------------------------------- - --- --- Table structure for table `openvz_ip` --- - -CREATE TABLE IF NOT EXISTS `openvz_ip` ( - `ip_address_id` bigint(20) NOT NULL AUTO_INCREMENT, - `sys_userid` int(11) NOT NULL DEFAULT '0', - `sys_groupid` int(11) NOT NULL DEFAULT '0', - `sys_perm_user` varchar(5) DEFAULT NULL, - `sys_perm_group` varchar(5) DEFAULT NULL, - `sys_perm_other` varchar(5) DEFAULT NULL, - `server_id` int(11) NOT NULL DEFAULT '0', - `ip_address` varchar(39) DEFAULT NULL, - `vm_id` int(11) NOT NULL DEFAULT '0', - `reserved` varchar(255) NOT NULL DEFAULT 'n', - `additional` varchar(255) NOT NULL DEFAULT 'n', - PRIMARY KEY (`ip_address_id`) -) ENGINE=MyISAM DEFAULT CHARSET=utf8 ; - --- --- Dumping data for table `openvz_ip` --- - --- -------------------------------------------------------- - --- --- Table structure for table `openvz_ostemplate` --- - -CREATE TABLE IF NOT EXISTS `openvz_ostemplate` ( - `ostemplate_id` bigint(20) NOT NULL AUTO_INCREMENT, - `sys_userid` int(11) NOT NULL DEFAULT '0', - `sys_groupid` int(11) NOT NULL DEFAULT '0', - `sys_perm_user` varchar(5) DEFAULT NULL, - `sys_perm_group` varchar(5) DEFAULT NULL, - `sys_perm_other` varchar(5) DEFAULT NULL, - `template_name` varchar(255) DEFAULT NULL, - `template_file` varchar(255) NOT NULL DEFAULT '', - `server_id` int(11) NOT NULL DEFAULT '0', - `allservers` varchar(255) NOT NULL DEFAULT 'y', - `active` varchar(255) NOT NULL DEFAULT 'y', - `description` text, - PRIMARY KEY (`ostemplate_id`) -) ENGINE=MyISAM DEFAULT CHARSET=utf8 ; - --- --- Dumping data for table `openvz_ostemplate` --- - -INSERT INTO `openvz_ostemplate` (`ostemplate_id`, `sys_userid`, `sys_groupid`, `sys_perm_user`, `sys_perm_group`, `sys_perm_other`, `template_name`, `template_file`, `server_id`, `allservers`, `active`, `description`) VALUES(1, 1, 1, 'riud', 'riud', '', 'Debian minimal', 'debian-minimal-x86', 1, 'y', 'y', 'Debian minimal image.'); - --- -------------------------------------------------------- - --- --- Table structure for table `openvz_template` --- - -CREATE TABLE IF NOT EXISTS `openvz_template` ( - `template_id` bigint(20) NOT NULL AUTO_INCREMENT, - `sys_userid` int(11) NOT NULL DEFAULT '0', - `sys_groupid` int(11) NOT NULL DEFAULT '0', - `sys_perm_user` varchar(5) DEFAULT NULL, - `sys_perm_group` varchar(5) DEFAULT NULL, - `sys_perm_other` varchar(5) DEFAULT NULL, - `template_name` varchar(255) DEFAULT NULL, - `diskspace` int(11) NOT NULL DEFAULT '0', - `traffic` int(11) NOT NULL DEFAULT '-1', - `bandwidth` int(11) NOT NULL DEFAULT '-1', - `ram` int(11) NOT NULL DEFAULT '0', - `ram_burst` int(11) NOT NULL DEFAULT '0', - `cpu_units` int(11) NOT NULL DEFAULT '1000', - `cpu_num` int(11) NOT NULL DEFAULT '4', - `cpu_limit` int(11) NOT NULL DEFAULT '400', - `io_priority` int(11) NOT NULL DEFAULT '4', - `active` varchar(255) NOT NULL DEFAULT 'y', - `description` text, - `numproc` varchar(255) DEFAULT NULL, - `numtcpsock` varchar(255) DEFAULT NULL, - `numothersock` varchar(255) DEFAULT NULL, - `vmguarpages` varchar(255) DEFAULT NULL, - `kmemsize` varchar(255) DEFAULT NULL, - `tcpsndbuf` varchar(255) DEFAULT NULL, - `tcprcvbuf` varchar(255) DEFAULT NULL, - `othersockbuf` varchar(255) DEFAULT NULL, - `dgramrcvbuf` varchar(255) DEFAULT NULL, - `oomguarpages` varchar(255) DEFAULT NULL, - `privvmpages` varchar(255) DEFAULT NULL, - `lockedpages` varchar(255) DEFAULT NULL, - `shmpages` varchar(255) DEFAULT NULL, - `physpages` varchar(255) DEFAULT NULL, - `numfile` varchar(255) DEFAULT NULL, - `avnumproc` varchar(255) DEFAULT NULL, - `numflock` varchar(255) DEFAULT NULL, - `numpty` varchar(255) DEFAULT NULL, - `numsiginfo` varchar(255) DEFAULT NULL, - `dcachesize` varchar(255) DEFAULT NULL, - `numiptent` varchar(255) DEFAULT NULL, - `swappages` varchar(255) DEFAULT NULL, - `hostname` varchar(255) DEFAULT NULL, - `nameserver` varchar(255) DEFAULT NULL, - `create_dns` varchar(1) NOT NULL DEFAULT 'n', - `capability` varchar(255) DEFAULT NULL, - `features` varchar(255) DEFAULT NULL, - `iptables` varchar(255) DEFAULT NULL, - `custom` text, - PRIMARY KEY (`template_id`) -) ENGINE=MyISAM DEFAULT CHARSET=utf8 ; - --- --- Dumping data for table `openvz_template` --- - -INSERT INTO `openvz_template` (`template_id`, `sys_userid`, `sys_groupid`, `sys_perm_user`, `sys_perm_group`, `sys_perm_other`, `template_name`, `diskspace`, `traffic`, `bandwidth`, `ram`, `ram_burst`, `cpu_units`, `cpu_num`, `cpu_limit`, `io_priority`, `active`, `description`, `numproc`, `numtcpsock`, `numothersock`, `vmguarpages`, `kmemsize`, `tcpsndbuf`, `tcprcvbuf`, `othersockbuf`, `dgramrcvbuf`, `oomguarpages`, `privvmpages`, `lockedpages`, `shmpages`, `physpages`, `numfile`, `avnumproc`, `numflock`, `numpty`, `numsiginfo`, `dcachesize`, `numiptent`, `swappages`, `hostname`, `nameserver`, `create_dns`, `capability`, `features`, `iptables`, `custom`) VALUES(1, 1, 1, 'riud', 'riud', '', 'small', 10, -1, -1, 256, 512, 1000, 4, 400, 4, 'y', '', '999999:999999', '7999992:7999992', '7999992:7999992', '65536:unlimited', '2147483646:2147483646', '214748160:396774400', '214748160:396774400', '214748160:396774400', '214748160:396774400', '65536:65536', '131072:139264', '999999:999999', '65536:65536', '0:2147483647', '23999976:23999976', '180:180', '999999:999999', '500000:500000', '999999:999999', '2147483646:2147483646', '999999:999999', '256000:256000', 'v{VEID}.test.tld', '8.8.8.8 8.8.4.4', 'n', '', '', '', ''); - --- -------------------------------------------------------- - --- --- Table structure for table `openvz_traffic` --- - -CREATE TABLE IF NOT EXISTS `openvz_traffic` ( - `veid` int(11) NOT NULL DEFAULT '0', - `traffic_date` date NULL DEFAULT NULL, - `traffic_bytes` bigint(32) unsigned NOT NULL DEFAULT '0', - UNIQUE KEY (`veid`,`traffic_date`) -) ENGINE=MyISAM DEFAULT CHARSET=utf8; - --- --- Dumping data for table `openvz_traffic` --- - - --- -------------------------------------------------------- - --- --- Table structure for table `openvz_vm` --- - -CREATE TABLE IF NOT EXISTS `openvz_vm` ( - `vm_id` bigint(20) NOT NULL AUTO_INCREMENT, - `sys_userid` int(11) NOT NULL DEFAULT '0', - `sys_groupid` int(11) NOT NULL DEFAULT '0', - `sys_perm_user` varchar(5) DEFAULT NULL, - `sys_perm_group` varchar(5) DEFAULT NULL, - `sys_perm_other` varchar(5) DEFAULT NULL, - `server_id` int(11) NOT NULL DEFAULT '0', - `veid` int(10) unsigned NOT NULL DEFAULT '0', - `ostemplate_id` int(11) NOT NULL DEFAULT '0', - `template_id` int(11) NOT NULL DEFAULT '0', - `ip_address` varchar(255) NOT NULL DEFAULT '', - `hostname` varchar(255) DEFAULT NULL, - `vm_password` varchar(255) DEFAULT NULL, - `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 NULL DEFAULT NULL, - `description` text, - `diskspace` int(11) NOT NULL DEFAULT '0', - `traffic` int(11) NOT NULL DEFAULT '-1', - `bandwidth` int(11) NOT NULL DEFAULT '-1', - `ram` int(11) NOT NULL DEFAULT '0', - `ram_burst` int(11) NOT NULL DEFAULT '0', - `cpu_units` int(11) NOT NULL DEFAULT '1000', - `cpu_num` int(11) NOT NULL DEFAULT '4', - `cpu_limit` int(11) NOT NULL DEFAULT '400', - `io_priority` int(11) NOT NULL DEFAULT '4', - `nameserver` varchar(255) NOT NULL DEFAULT '8.8.8.8 8.8.4.4', - `create_dns` varchar(1) NOT NULL DEFAULT 'n', - `capability` text, - `features` text, - `iptabless` text, - `config` mediumtext, - `custom` text, - PRIMARY KEY (`vm_id`) -) ENGINE=MyISAM DEFAULT CHARSET=utf8 ; - --- --- Dumping data for table `openvz_vm` --- - --- -------------------------------------------------------- - --- --- Table structure for table `remote_session` --- - -CREATE TABLE `remote_session` ( - `remote_session` varchar(64) NOT NULL DEFAULT '', - `remote_userid` int(11) unsigned NOT NULL DEFAULT '0', - `remote_functions` text, - `client_login` tinyint(1) unsigned NOT NULL default '0', - `tstamp` int(10) unsigned NOT NULL DEFAULT '0', - PRIMARY KEY (`remote_session`) -) ENGINE=MyISAM DEFAULT CHARSET=utf8 ; - --- -------------------------------------------------------- - --- --- Table structure for table `remote_user` --- - -CREATE TABLE `remote_user` ( - `remote_userid` int(11) unsigned NOT NULL auto_increment, - `sys_userid` int(11) unsigned NOT NULL default '0', - `sys_groupid` int(11) unsigned NOT NULL default '0', - `sys_perm_user` varchar(5) default NULL, - `sys_perm_group` varchar(5) default NULL, - `sys_perm_other` varchar(5) default NULL, - `remote_username` varchar(64) NOT NULL DEFAULT '', - `remote_password` varchar(64) NOT NULL DEFAULT '', - `remote_access` enum('y','n') NOT NULL DEFAULT 'y', - `remote_ips` TEXT, - `remote_functions` text, - PRIMARY KEY (`remote_userid`) -) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ; - --- -------------------------------------------------------- - --- --- Table structure for table `server` --- - -CREATE TABLE `server` ( - `server_id` int(11) unsigned NOT NULL auto_increment, - `sys_userid` int(11) unsigned NOT NULL default '0', - `sys_groupid` int(11) unsigned NOT NULL default '0', - `sys_perm_user` varchar(5) NOT NULL default '', - `sys_perm_group` varchar(5) NOT NULL default '', - `sys_perm_other` varchar(5) NOT NULL default '', - `server_name` varchar(255) NOT NULL default '', - `mail_server` tinyint(1) NOT NULL default '0', - `web_server` tinyint(1) NOT NULL default '0', - `dns_server` tinyint(1) NOT NULL default '0', - `file_server` tinyint(1) NOT NULL default '0', - `db_server` tinyint(1) NOT NULL default '0', - `vserver_server` tinyint(1) NOT NULL default '0', - `proxy_server` tinyint(1) NOT NULL default '0', - `firewall_server` tinyint(1) NOT NULL default '0', - `xmpp_server` tinyint(1) NOT NULL default '0', - `config` text, - `updated` bigint(20) unsigned NOT NULL default '0', - `mirror_server_id` int(11) unsigned NOT NULL default '0', - `dbversion` int(11) unsigned NOT NULL default '1', - `active` tinyint(1) NOT NULL default '1', - PRIMARY KEY (`server_id`) -) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ; - --- -------------------------------------------------------- - --- --- Table structure for table `server_ip` --- - -CREATE TABLE `server_ip` ( - `server_ip_id` int(11) unsigned NOT NULL auto_increment, - `sys_userid` int(11) unsigned NOT NULL default '0', - `sys_groupid` int(11) unsigned NOT NULL default '0', - `sys_perm_user` varchar(5) default NULL, - `sys_perm_group` varchar(5) default NULL, - `sys_perm_other` varchar(5) default NULL, - `server_id` int(11) unsigned NOT NULL default '0', - `client_id` int(11) unsigned NOT NULL default '0', - `ip_type` enum( 'IPv4', 'IPv6' ) NOT NULL DEFAULT 'IPv4', - `ip_address` varchar(39) default NULL, - `virtualhost` enum('n','y') NOT NULL default 'y', - `virtualhost_port` varchar(255) default '80,443', - PRIMARY KEY (`server_ip_id`) -) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ; - --- -------------------------------------------------------- - --- --- Table structure for table `server_ip_map` --- - -CREATE TABLE `server_ip_map` ( - `server_ip_map_id` int(11) unsigned NOT NULL AUTO_INCREMENT, - `sys_userid` int(11) unsigned NOT NULL DEFAULT '0', - `sys_groupid` int(11) unsigned NOT NULL DEFAULT '0', - `sys_perm_user` varchar(5) DEFAULT NULL, - `sys_perm_group` varchar(5) DEFAULT NULL, - `sys_perm_other` varchar(5) DEFAULT NULL, - `server_id` int(11) unsigned NOT NULL DEFAULT '0', - `source_ip` varchar(15) DEFAULT NULL, - `destination_ip` varchar(35) DEFAULT '', - `active` enum('n','y') NOT NULL DEFAULT 'y', - PRIMARY KEY (`server_ip_map_id`) -) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ; - --- -------------------------------------------------------- - --- --- Table structure for table `server_php` --- - -CREATE TABLE `server_php` ( - `server_php_id` int(11) unsigned NOT NULL AUTO_INCREMENT, - `sys_userid` int(11) unsigned NOT NULL DEFAULT '0', - `sys_groupid` int(11) unsigned NOT NULL DEFAULT '0', - `sys_perm_user` varchar(5) DEFAULT NULL, - `sys_perm_group` varchar(5) DEFAULT NULL, - `sys_perm_other` varchar(5) DEFAULT NULL, - `server_id` int(11) unsigned NOT NULL DEFAULT '0', - `client_id` int(11) unsigned NOT NULL DEFAULT '0', - `name` varchar(255) DEFAULT NULL, - `php_fastcgi_binary` varchar(255) DEFAULT NULL, - `php_fastcgi_ini_dir` varchar(255) DEFAULT NULL, - `php_fpm_init_script` varchar(255) DEFAULT NULL, - `php_fpm_ini_dir` varchar(255) DEFAULT NULL, - `php_fpm_pool_dir` varchar(255) DEFAULT NULL, - `active` enum('n','y') NOT NULL DEFAULT 'y', - PRIMARY KEY (`server_php_id`) -) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ; - --- -------------------------------------------------------- - --- --- Table structure for table `shell_user` --- - -CREATE TABLE `shell_user` ( - `shell_user_id` int(11) unsigned NOT NULL auto_increment, - `sys_userid` int(11) unsigned NOT NULL default '0', - `sys_groupid` int(11) unsigned NOT NULL default '0', - `sys_perm_user` varchar(5) default NULL, - `sys_perm_group` varchar(5) default NULL, - `sys_perm_other` varchar(5) default NULL, - `server_id` int(11) unsigned NOT NULL default '0', - `parent_domain_id` int(11) unsigned NOT NULL default '0', - `username` varchar(64) default NULL, - `username_prefix` varchar(50) NOT NULL default '', - `password` varchar(64) default NULL, - `quota_size` bigint(20) NOT NULL default '-1', - `active` enum('n','y') NOT NULL default 'y', - `puser` varchar(255) default NULL, - `pgroup` varchar(255) default NULL, - `shell` varchar(255) NOT NULL default '/bin/bash', - `dir` varchar(255) default NULL, - `chroot` varchar(255) NOT NULL DEFAULT '', - `ssh_rsa` text, - PRIMARY KEY (`shell_user_id`) -) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ; - --- -------------------------------------------------------- - --- --- Table structure for table `software_package` --- - -CREATE TABLE `software_package` ( - `package_id` int(11) unsigned NOT NULL auto_increment, - `software_repo_id` int(11) unsigned NOT NULL DEFAULT '0', - `package_name` varchar(64) NOT NULL DEFAULT '', - `package_title` varchar(64) NOT NULL DEFAULT '', - `package_description` text, - `package_version` varchar(8) default NULL, - `package_type` enum('ispconfig','app','web') NOT NULL default 'app', - `package_installable` enum('yes','no','key') NOT NULL default 'yes', - `package_requires_db` enum('no','mysql') NOT NULL default 'no', - `package_remote_functions` text, - `package_key` varchar(255) NOT NULL DEFAULT '', - `package_config` text, - PRIMARY KEY (`package_id`), - UNIQUE KEY `package_name` (`package_name`) -) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ; - --- -------------------------------------------------------- - --- --- Table structure for table `software_repo` --- - -CREATE TABLE `software_repo` ( - `software_repo_id` int(11) unsigned NOT NULL auto_increment, - `sys_userid` int(11) unsigned NOT NULL default '0', - `sys_groupid` int(11) unsigned NOT NULL default '0', - `sys_perm_user` varchar(5) default NULL, - `sys_perm_group` varchar(5) default NULL, - `sys_perm_other` varchar(5) default NULL, - `repo_name` varchar(64) default NULL, - `repo_url` varchar(255) default NULL, - `repo_username` varchar(64) default NULL, - `repo_password` varchar(64) default NULL, - `active` enum('n','y') NOT NULL default 'y', - PRIMARY KEY (`software_repo_id`) -) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ; - --- -------------------------------------------------------- - --- --- Table structure for table `software_update` --- - -CREATE TABLE `software_update` ( - `software_update_id` int(11) unsigned NOT NULL auto_increment, - `software_repo_id` int(11) unsigned NOT NULL DEFAULT '0', - `package_name` varchar(64) NOT NULL DEFAULT '', - `update_url` varchar(255) NOT NULL DEFAULT '', - `update_md5` varchar(255) NOT NULL DEFAULT '', - `update_dependencies` varchar(255) NOT NULL DEFAULT '', - `update_title` varchar(64) NOT NULL DEFAULT '', - `v1` tinyint(1) NOT NULL default '0', - `v2` tinyint(1) NOT NULL default '0', - `v3` tinyint(1) NOT NULL default '0', - `v4` tinyint(1) NOT NULL default '0', - `type` enum('full','update') NOT NULL default 'full', - PRIMARY KEY (`software_update_id`) -) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ; - --- -------------------------------------------------------- - --- --- Table structure for table `software_update_inst` --- - -CREATE TABLE `software_update_inst` ( - `software_update_inst_id` int(11) unsigned NOT NULL auto_increment, - `software_update_id` int(11) unsigned NOT NULL default '0', - `package_name` varchar(64) NOT NULL DEFAULT '', - `server_id` int(11) unsigned NOT NULL DEFAULT '0', - `status` enum('none','installing','installed','deleting','deleted','failed') NOT NULL default 'none', - PRIMARY KEY (`software_update_inst_id`), - UNIQUE KEY `software_update_id` (`software_update_id`,`package_name`,`server_id`) -) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ; - --- -------------------------------------------------------- - --- --- Table structure for table `spamfilter_policy` --- - -CREATE TABLE `spamfilter_policy` ( - `id` int(11) unsigned NOT NULL auto_increment, - `sys_userid` int(11) unsigned NOT NULL DEFAULT '0', - `sys_groupid` int(11) unsigned NOT NULL DEFAULT '0', - `sys_perm_user` varchar(5) NOT NULL DEFAULT '', - `sys_perm_group` varchar(5) NOT NULL DEFAULT '', - `sys_perm_other` varchar(5) NOT NULL DEFAULT '', - `policy_name` varchar(64) default NULL, - `virus_lover` enum('N','Y') default 'N', - `spam_lover` enum('N','Y') default 'N', - `banned_files_lover` enum('N','Y') default 'N', - `bad_header_lover` enum('N','Y') default 'N', - `bypass_virus_checks` enum('N','Y') default 'N', - `bypass_spam_checks` enum('N','Y') default 'N', - `bypass_banned_checks` enum('N','Y') default 'N', - `bypass_header_checks` enum('N','Y') default 'N', - `spam_modifies_subj` enum('N','Y') default 'N', - `virus_quarantine_to` varchar(255) default NULL, - `spam_quarantine_to` varchar(255) default NULL, - `banned_quarantine_to` varchar(255) default NULL, - `bad_header_quarantine_to` varchar(255) default NULL, - `clean_quarantine_to` varchar(255) default NULL, - `other_quarantine_to` varchar(255) default NULL, - `spam_tag_level` DECIMAL(5,2) default NULL, - `spam_tag2_level` DECIMAL(5,2) default NULL, - `spam_kill_level` DECIMAL(5,2) default NULL, - `spam_dsn_cutoff_level` DECIMAL(5,2) default NULL, - `spam_quarantine_cutoff_level` DECIMAL(5,2) default NULL, - `addr_extension_virus` varchar(64) default NULL, - `addr_extension_spam` varchar(64) default NULL, - `addr_extension_banned` varchar(64) default NULL, - `addr_extension_bad_header` varchar(64) default NULL, - `warnvirusrecip` enum('N','Y') default 'N', - `warnbannedrecip` enum('N','Y') default 'N', - `warnbadhrecip` enum('N','Y') default 'N', - `newvirus_admin` varchar(64) default NULL, - `virus_admin` varchar(64) default NULL, - `banned_admin` varchar(64) default NULL, - `bad_header_admin` varchar(64) default NULL, - `spam_admin` varchar(64) default NULL, - `spam_subject_tag` varchar(64) default NULL, - `spam_subject_tag2` varchar(64) default NULL, - `message_size_limit` int(11) unsigned default NULL, - `banned_rulenames` varchar(64) default NULL, - `policyd_quota_in` int(11) NOT NULL DEFAULT '-1', - `policyd_quota_in_period` int(11) NOT NULL DEFAULT '24', - `policyd_quota_out` int(11) NOT NULL DEFAULT '-1', - `policyd_quota_out_period` int(11) NOT NULL DEFAULT '24', - `policyd_greylist` ENUM( 'Y', 'N' ) NOT NULL DEFAULT 'N', - PRIMARY KEY (`id`) -) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ; - --- -------------------------------------------------------- - --- --- Table structure for table `spamfilter_users` --- - -CREATE TABLE `spamfilter_users` ( - `id` int(11) unsigned NOT NULL auto_increment, - `sys_userid` int(11) unsigned NOT NULL DEFAULT '0', - `sys_groupid` int(11) unsigned NOT NULL DEFAULT '0', - `sys_perm_user` varchar(5) NOT NULL DEFAULT '', - `sys_perm_group` varchar(5) NOT NULL DEFAULT '', - `sys_perm_other` varchar(5) NOT NULL DEFAULT '', - `server_id` int(11) unsigned NOT NULL DEFAULT '0', - `priority` tinyint(3) unsigned NOT NULL default '7', - `policy_id` int(11) unsigned NOT NULL default '1', - `email` varchar(255) NOT NULL DEFAULT '', - `fullname` varchar(64) default NULL, - `local` varchar(1) default NULL, - PRIMARY KEY (`id`), - UNIQUE KEY `email` (`email`) -) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ; - --- -------------------------------------------------------- - --- --- Table structure for table `spamfilter_wblist` --- - -CREATE TABLE `spamfilter_wblist` ( - `wblist_id` int(11) unsigned NOT NULL auto_increment, - `sys_userid` int(11) unsigned NOT NULL DEFAULT '0', - `sys_groupid` int(11) unsigned NOT NULL DEFAULT '0', - `sys_perm_user` varchar(5) NOT NULL DEFAULT '', - `sys_perm_group` varchar(5) NOT NULL DEFAULT '', - `sys_perm_other` varchar(5) NOT NULL DEFAULT '', - `server_id` int(11) unsigned NOT NULL DEFAULT '0', - `wb` enum('W','B') NOT NULL default 'W', - `rid` int(11) unsigned NOT NULL DEFAULT '0', - `email` varchar(255) NOT NULL DEFAULT '', - `priority` tinyint(3) unsigned NOT NULL DEFAULT '0', - `active` enum('y','n') NOT NULL default 'y', - PRIMARY KEY (`wblist_id`) -) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ; - --- -------------------------------------------------------- - --- --- Table structure for table `support_message` --- - -CREATE TABLE `support_message` ( - `support_message_id` int(11) unsigned NOT NULL auto_increment, - `sys_userid` int(11) unsigned NOT NULL default '0', - `sys_groupid` int(11) unsigned NOT NULL default '0', - `sys_perm_user` varchar(5) default NULL, - `sys_perm_group` varchar(5) default NULL, - `sys_perm_other` varchar(5) default NULL, - `recipient_id` int(11) unsigned NOT NULL default '0', - `sender_id` int(11) unsigned NOT NULL default '0', - `subject` varchar(255) default NULL, - `message` text default NULL, - `tstamp` int(11) NOT NULL default '0', - PRIMARY KEY (`support_message_id`) -) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ; - --- -------------------------------------------------------- - --- --- Table structure for table `sys_config` --- - -CREATE TABLE `sys_config` ( - `group` varchar(64) NOT NULL DEFAULT '', - `name` varchar(64) NOT NULL DEFAULT '', - `value` varchar(255) NOT NULL DEFAULT '', - PRIMARY KEY (`group`, `name`) -) ENGINE=MyISAM DEFAULT CHARSET=utf8; - - --- -------------------------------------------------------- - --- --- Table structure for table `sys_cron` --- - -CREATE TABLE IF NOT EXISTS `sys_cron` ( - `name` varchar(50) NOT NULL DEFAULT '', - `last_run` datetime NULL DEFAULT NULL, - `next_run` datetime NULL DEFAULT NULL, - `running` tinyint(1) UNSIGNED NOT NULL DEFAULT '0', - PRIMARY KEY (`name`) -) ENGINE=MyISAM DEFAULT CHARSET=utf8; - - --- -------------------------------------------------------- - --- --- Table structure for table `sys_datalog` --- - -CREATE TABLE `sys_datalog` ( - `datalog_id` int(11) unsigned NOT NULL auto_increment, - `server_id` int(11) unsigned NOT NULL DEFAULT '0', - `dbtable` varchar(255) NOT NULL default '', - `dbidx` varchar(255) NOT NULL default '', - `action` char(1) NOT NULL default '', - `tstamp` int(11) NOT NULL default '0', - `user` varchar(255) NOT NULL default '', - `data` longtext, - `status` set('pending','ok','warning','error') NOT NULL default 'ok', - `error` mediumtext, - `session_id` varchar(64) NOT NULL DEFAULT '', - PRIMARY KEY (`datalog_id`), - KEY `server_id` (`server_id`,`status`) -) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ; - --- -------------------------------------------------------- - --- --- Table structure for table `sys_dbsync` --- - -CREATE TABLE `sys_dbsync` ( - `id` int(11) unsigned NOT NULL auto_increment, - `jobname` varchar(64) NOT NULL default '', - `sync_interval_minutes` int(11) unsigned NOT NULL default '0', - `db_type` varchar(16) NOT NULL default '', - `db_host` varchar(255) NOT NULL default '', - `db_name` varchar(64) NOT NULL default '', - `db_username` varchar(64) NOT NULL default '', - `db_password` varchar(64) NOT NULL default '', - `db_tables` varchar(255) NOT NULL default 'admin,forms', - `empty_datalog` int(11) unsigned NOT NULL default '0', - `sync_datalog_external` int(11) unsigned NOT NULL default '0', - `active` tinyint(1) NOT NULL default '1', - `last_datalog_id` int(11) unsigned NOT NULL default '0', - PRIMARY KEY (`id`), - KEY `last_datalog_id` (`last_datalog_id`) -) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ; - --- -------------------------------------------------------- - --- --- Table structure for table `sys_filesync` --- - -CREATE TABLE `sys_filesync` ( - `id` int(11) unsigned NOT NULL auto_increment, - `jobname` varchar(64) NOT NULL default '', - `sync_interval_minutes` int(11) unsigned NOT NULL default '0', - `ftp_host` varchar(255) NOT NULL default '', - `ftp_path` varchar(255) NOT NULL default '', - `ftp_username` varchar(64) NOT NULL default '', - `ftp_password` varchar(64) NOT NULL default '', - `local_path` varchar(255) NOT NULL default '', - `wput_options` varchar(255) NOT NULL default '--timestamping --reupload --dont-continue', - `active` tinyint(1) NOT NULL default '1', - PRIMARY KEY (`id`) -) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ; - --- -------------------------------------------------------- - --- --- Table structure for table `sys_group` --- - -CREATE TABLE `sys_group` ( - `groupid` int(11) unsigned NOT NULL auto_increment, - `name` varchar(64) NOT NULL default '', - `description` text, - `client_id` int(11) unsigned NOT NULL default '0', - PRIMARY KEY (`groupid`) -) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ; - --- -------------------------------------------------------- - --- --- Table structure for table `sys_ini` --- - -CREATE TABLE `sys_ini` ( - `sysini_id` int(11) unsigned NOT NULL auto_increment, - `config` longtext, - `default_logo` text NOT NULL, - `custom_logo` text NOT NULL, - PRIMARY KEY (`sysini_id`) -) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ; - --- -------------------------------------------------------- - --- --- Table structure for table `sys_log` --- - -CREATE TABLE `sys_log` ( - `syslog_id` int(11) unsigned NOT NULL auto_increment, - `server_id` int(11) unsigned NOT NULL default '0', - `datalog_id` int(11) unsigned NOT NULL default '0', - `loglevel` tinyint(4) NOT NULL default '0', - `tstamp` int(11) unsigned NOT NULL DEFAULT '0', - `message` text, - PRIMARY KEY (`syslog_id`) -) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ; - --- -------------------------------------------------------- - --- --- Table structure for table `sys_remoteaction` --- - -CREATE TABLE `sys_remoteaction` ( - `action_id` int(11) unsigned NOT NULL AUTO_INCREMENT, - `server_id` int(11) unsigned NOT NULL DEFAULT '0', - `tstamp` int(11) NOT NULL DEFAULT '0', - `action_type` varchar(20) NOT NULL DEFAULT '', - `action_param` mediumtext, - `action_state` enum('pending','ok','warning','error') NOT NULL DEFAULT 'pending', - `response` mediumtext, - PRIMARY KEY (`action_id`), - KEY `server_id` (`server_id`) -) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ; - --- -------------------------------------------------------- - --- --- Table structure for table `sys_session` --- - -CREATE TABLE `sys_session` ( - `session_id` varchar(64) NOT NULL DEFAULT '', - `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`), - KEY `last_updated` (`last_updated`) -) ENGINE=MyISAM DEFAULT CHARSET=utf8 ; - --- -------------------------------------------------------- - --- --- Table structure for table `sys_theme` --- - -CREATE TABLE IF NOT EXISTS `sys_theme` ( - `sys_userid` int(11) unsigned NOT NULL DEFAULT '0', - `sys_groupid` int(11) unsigned NOT NULL DEFAULT '0', - `sys_perm_user` varchar(5) DEFAULT NULL, - `sys_perm_group` varchar(5) DEFAULT NULL, - `sys_perm_other` varchar(5) DEFAULT NULL, - `var_id` int(11) unsigned NOT NULL AUTO_INCREMENT, - `tpl_name` varchar(32) NOT NULL DEFAULT '', - `username` varchar(64) NOT NULL DEFAULT '', - `logo_url` varchar(255) NOT NULL DEFAULT '', - PRIMARY KEY (`var_id`) -) ENGINE=MyISAM DEFAULT CHARSET=utf8 ; - --- -------------------------------------------------------- - --- --- Table structure for table `sys_user` --- - -CREATE TABLE `sys_user` ( - `userid` int(11) unsigned NOT NULL auto_increment, - `sys_userid` int(11) unsigned NOT NULL default '1' COMMENT 'Created by userid', - `sys_groupid` int(11) unsigned NOT NULL default '1' COMMENT 'Created by groupid', - `sys_perm_user` varchar(5) NOT NULL default 'riud', - `sys_perm_group` varchar(5) NOT NULL default 'riud', - `sys_perm_other` varchar(5) NOT NULL default '', - `username` varchar(64) NOT NULL default '', - `passwort` varchar(64) NOT NULL default '', - `modules` varchar(255) NOT NULL default '', - `startmodule` varchar(255) NOT NULL default '', - `app_theme` varchar(32) NOT NULL default 'default', - `typ` varchar(16) NOT NULL default 'user', - `active` tinyint(1) NOT NULL default '1', - `language` varchar(2) NOT NULL default 'en', - `groups` TEXT, - `default_group` int(11) unsigned NOT NULL default '0', - `client_id` int(11) unsigned NOT NULL default '0', - `id_rsa` VARCHAR( 2000 ) NOT NULL default '', - `ssh_rsa` VARCHAR( 600 ) NOT NULL default '', - `lost_password_function` tinyint(1) NOT NULL default '1', - `lost_password_hash` VARCHAR(50) NOT NULL default '', - `lost_password_reqtime` DATETIME NULL default NULL, - PRIMARY KEY (`userid`) -) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ; - --- -------------------------------------------------------- - --- --- Table structure for table `webdav_user` --- - -CREATE TABLE `webdav_user` ( - `webdav_user_id` int(11) unsigned NOT NULL AUTO_INCREMENT, - `sys_userid` int(11) unsigned NOT NULL DEFAULT '0', - `sys_groupid` int(11) unsigned NOT NULL DEFAULT '0', - `sys_perm_user` varchar(5) DEFAULT NULL, - `sys_perm_group` varchar(5) DEFAULT NULL, - `sys_perm_other` varchar(5) DEFAULT NULL, - `server_id` int(11) unsigned NOT NULL DEFAULT '0', - `parent_domain_id` int(11) unsigned NOT NULL DEFAULT '0', - `username` varchar(64) DEFAULT NULL, - `username_prefix` varchar(50) NOT NULL default '', - `password` varchar(64) DEFAULT NULL, - `active` enum('n','y') NOT NULL DEFAULT 'y', - `dir` varchar(255) DEFAULT NULL, - PRIMARY KEY (`webdav_user_id`) -) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ; - --- -------------------------------------------------------- - --- --- Table structure for table `web_backup` --- - -CREATE TABLE `web_backup` ( - `backup_id` int(10) unsigned NOT NULL AUTO_INCREMENT, - `server_id` int(10) unsigned NOT NULL DEFAULT '0', - `parent_domain_id` int(10) unsigned NOT NULL DEFAULT '0', - `backup_type` enum('web','mysql','mongodb') NOT NULL DEFAULT 'web', - `backup_mode` varchar(64) NOT NULL DEFAULT '', - `tstamp` int(10) unsigned NOT NULL DEFAULT '0', - `filename` varchar(255) NOT NULL DEFAULT '', - `filesize` VARCHAR(20) NOT NULL DEFAULT '', - PRIMARY KEY (`backup_id`) -) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ; - --- -------------------------------------------------------- - --- --- Table structure for table `web_database` --- - -CREATE TABLE `web_database` ( - `database_id` int(11) unsigned NOT NULL AUTO_INCREMENT, - `sys_userid` int(11) unsigned NOT NULL DEFAULT '0', - `sys_groupid` int(11) unsigned NOT NULL DEFAULT '0', - `sys_perm_user` varchar(5) DEFAULT NULL, - `sys_perm_group` varchar(5) DEFAULT NULL, - `sys_perm_other` varchar(5) DEFAULT NULL, - `server_id` int(11) unsigned NOT NULL DEFAULT '0', - `parent_domain_id` int(11) unsigned NOT NULL DEFAULT '0', - `type` varchar(16) NOT NULL DEFAULT 'y', - `database_name` varchar(64) DEFAULT NULL, - `database_name_prefix` varchar(50) NOT NULL default '', - `database_quota` int(11) DEFAULT NULL, - `quota_exceeded` enum('n','y') NOT NULL DEFAULT 'n', - `last_quota_notification` date NULL default NULL, - `database_user_id` int(11) unsigned DEFAULT NULL, - `database_ro_user_id` int(11) unsigned DEFAULT NULL, - `database_charset` varchar(64) DEFAULT NULL, - `remote_access` enum('n','y') NOT NULL DEFAULT 'y', - `remote_ips` text, - `backup_interval` VARCHAR( 255 ) NOT NULL DEFAULT 'none', - `backup_copies` INT NOT NULL DEFAULT '1', - `active` enum('n','y') NOT NULL DEFAULT 'y', - PRIMARY KEY (`database_id`), - KEY `database_user_id` (`database_user_id`), - KEY `database_ro_user_id` (`database_ro_user_id`) -) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ; - --- -------------------------------------------------------- - --- --- Tabellenstruktur für Tabelle `web_database_user` --- - -CREATE TABLE IF NOT EXISTS `web_database_user` ( - `database_user_id` int(11) unsigned NOT NULL AUTO_INCREMENT, - `sys_userid` int(11) unsigned NOT NULL DEFAULT '0', - `sys_groupid` int(11) unsigned NOT NULL DEFAULT '0', - `sys_perm_user` varchar(5) DEFAULT NULL, - `sys_perm_group` varchar(5) DEFAULT NULL, - `sys_perm_other` varchar(5) DEFAULT NULL, - `server_id` int(11) UNSIGNED NOT NULL DEFAULT '0', - `database_user` varchar(64) DEFAULT NULL, - `database_user_prefix` varchar(50) NOT NULL default '', - `database_password` varchar(64) DEFAULT NULL, - `database_password_mongo` varchar(32) DEFAULT NULL, - PRIMARY KEY (`database_user_id`) -) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ; - --- -------------------------------------------------------- - --- --- Table structure for table `web_domain` --- - -CREATE TABLE `web_domain` ( - `domain_id` int(11) unsigned NOT NULL auto_increment, - `sys_userid` int(11) unsigned NOT NULL default '0', - `sys_groupid` int(11) unsigned NOT NULL default '0', - `sys_perm_user` varchar(5) default NULL, - `sys_perm_group` varchar(5) default NULL, - `sys_perm_other` varchar(5) default NULL, - `server_id` int(11) unsigned NOT NULL default '0', - `ip_address` varchar(39) default NULL, - `ipv6_address` VARCHAR( 255 ) default NULL, - `domain` varchar(255) default NULL, - `type` varchar(32) default NULL, - `parent_domain_id` int(11) unsigned NOT NULL default '0', - `vhost_type` varchar(32) default NULL, - `document_root` varchar(255) default NULL, - `web_folder` varchar(100) default NULL, - `system_user` varchar(255) default NULL, - `system_group` varchar(255) default NULL, - `hd_quota` bigint(20) NOT NULL default '0', - `traffic_quota` bigint(20) NOT NULL default '-1', - `cgi` enum('n','y') NOT NULL default 'y', - `ssi` enum('n','y') NOT NULL default 'y', - `suexec` enum('n','y') NOT NULL default 'y', - `errordocs` tinyint(1) NOT NULL default '1', - `is_subdomainwww` tinyint(1) NOT NULL default '1', - `subdomain` enum('none','www','*') NOT NULL default 'none', - `php` varchar(32) NOT NULL default 'y', - `ruby` enum('n','y') NOT NULL default 'n', - `python` enum('n','y') NOT NULL default 'n', - `perl` enum('n','y') NOT NULL default 'n', - `redirect_type` varchar(255) default NULL, - `redirect_path` varchar(255) default NULL, - `seo_redirect` varchar(255) default NULL, - `rewrite_to_https` ENUM('y','n') NOT NULL DEFAULT 'n', - `ssl` enum('n','y') NOT NULL default 'n', - `ssl_letsencrypt` enum('n','y') NOT NULL DEFAULT 'n', - `ssl_letsencrypt_exclude` enum('n','y') NOT NULL DEFAULT 'n', - `ssl_state` varchar(255) NULL, - `ssl_locality` varchar(255) NULL, - `ssl_organisation` varchar(255) NULL, - `ssl_organisation_unit` varchar(255) NULL, - `ssl_country` varchar(255) NULL, - `ssl_domain` varchar(255) NULL, - `ssl_request` mediumtext NULL, - `ssl_cert` mediumtext NULL, - `ssl_bundle` mediumtext NULL, - `ssl_key` mediumtext NULL, - `ssl_action` varchar(16) NULL, - `stats_password` varchar(255) default NULL, - `stats_type` varchar(255) default 'awstats', - `allow_override` varchar(255) NOT NULL default 'All', - `apache_directives` mediumtext, - `nginx_directives` mediumtext, - `php_fpm_use_socket` ENUM('n','y') NOT NULL DEFAULT 'y', - `php_fpm_chroot` enum('n','y') NOT NULL DEFAULT 'n', - `pm` enum('static','dynamic','ondemand') NOT NULL DEFAULT 'dynamic', - `pm_max_children` int(11) NOT NULL DEFAULT '10', - `pm_start_servers` int(11) NOT NULL DEFAULT '2', - `pm_min_spare_servers` int(11) NOT NULL DEFAULT '1', - `pm_max_spare_servers` int(11) NOT NULL DEFAULT '5', - `pm_process_idle_timeout` int(11) NOT NULL DEFAULT '10', - `pm_max_requests` int(11) NOT NULL DEFAULT '0', - `php_open_basedir` mediumtext, - `custom_php_ini` mediumtext, - `backup_interval` VARCHAR( 255 ) NOT NULL DEFAULT 'none', - `backup_copies` INT NOT NULL DEFAULT '1', - `backup_excludes` mediumtext, - `active` enum('n','y') NOT NULL default 'y', - `traffic_quota_lock` enum('n','y') NOT NULL default 'n', - `fastcgi_php_version` varchar(255) DEFAULT NULL, - `proxy_directives` mediumtext, - `enable_spdy` ENUM('y','n') NULL DEFAULT 'n', - `last_quota_notification` date NULL default NULL, - `rewrite_rules` mediumtext, - `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', - `http_port` int(11) unsigned NOT NULL DEFAULT '80', - `https_port` int(11) unsigned NOT NULL DEFAULT '443', - `folder_directive_snippets` text, - `log_retention` int(11) NOT NULL DEFAULT '10', - PRIMARY KEY (`domain_id`), - UNIQUE KEY `serverdomain` ( `server_id` , `ip_address`, `domain` ) -) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ; - --- -------------------------------------------------------- - --- --- Table structure for table `web_folder` --- - -CREATE TABLE IF NOT EXISTS `web_folder` ( - `web_folder_id` bigint(20) NOT NULL AUTO_INCREMENT, - `sys_userid` int(11) NOT NULL DEFAULT '0', - `sys_groupid` int(11) NOT NULL DEFAULT '0', - `sys_perm_user` varchar(5) DEFAULT NULL, - `sys_perm_group` varchar(5) DEFAULT NULL, - `sys_perm_other` varchar(5) DEFAULT NULL, - `server_id` int(11) NOT NULL DEFAULT '0', - `parent_domain_id` int(11) NOT NULL DEFAULT '0', - `path` varchar(255) DEFAULT NULL, - `active` varchar(255) NOT NULL DEFAULT 'y', - PRIMARY KEY (`web_folder_id`) -) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ; - --- --- Dumping data for table `web_folder` --- - - --- -------------------------------------------------------- - --- --- Table structure for table `web_folder_user` --- - -CREATE TABLE IF NOT EXISTS `web_folder_user` ( - `web_folder_user_id` bigint(20) NOT NULL AUTO_INCREMENT, - `sys_userid` int(11) NOT NULL DEFAULT '0', - `sys_groupid` int(11) NOT NULL DEFAULT '0', - `sys_perm_user` varchar(5) DEFAULT NULL, - `sys_perm_group` varchar(5) DEFAULT NULL, - `sys_perm_other` varchar(5) DEFAULT NULL, - `server_id` int(11) NOT NULL DEFAULT '0', - `web_folder_id` int(11) NOT NULL DEFAULT '0', - `username` varchar(255) DEFAULT NULL, - `password` varchar(255) DEFAULT NULL, - `active` varchar(255) NOT NULL DEFAULT 'y', - PRIMARY KEY (`web_folder_user_id`) -) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ; - --- --- Dumping data for table `web_folder_user` --- - --- -------------------------------------------------------- - --- --- Table structure for table `web_traffic` --- - -CREATE TABLE `web_traffic` ( - `hostname` varchar(255) NOT NULL DEFAULT '', - `traffic_date` date NULL DEFAULT NULL, - `traffic_bytes` bigint(32) unsigned NOT NULL default '0', - UNIQUE KEY (`hostname`,`traffic_date`) -) ENGINE=MyISAM DEFAULT CHARSET=utf8 ; - --- -------------------------------------------------------- - --- --- Table structure for table `xmpp_domain` --- - -CREATE TABLE `xmpp_domain` ( - `domain_id` int(11) unsigned NOT NULL auto_increment, - `sys_userid` int(11) unsigned NOT NULL default '0', - `sys_groupid` int(11) unsigned NOT NULL default '0', - `sys_perm_user` varchar(5) NOT NULL default '', - `sys_perm_group` varchar(5) NOT NULL default '', - `sys_perm_other` varchar(5) NOT NULL default '', - `server_id` int(11) unsigned NOT NULL default '0', - `domain` varchar(255) NOT NULL default '', - - `management_method` ENUM( 'normal', 'maildomain' ) NOT NULL default 'normal', - `public_registration` ENUM( 'n', 'y' ) NOT NULL default 'n', - `registration_url` varchar(255) NOT NULL DEFAULT '', - `registration_message` varchar(255) NOT NULL DEFAULT '', - `domain_admins` text, - - `use_pubsub` enum('n','y') NOT NULL DEFAULT 'n', - `use_proxy` enum('n','y') NOT NULL DEFAULT 'n', - `use_anon_host` enum('n','y') NOT NULL DEFAULT 'n', - - `use_vjud` enum('n','y') NOT NULL DEFAULT 'n', - `vjud_opt_mode` enum('in', 'out') NOT NULL DEFAULT 'in', - - `use_muc_host` enum('n','y') NOT NULL DEFAULT 'n', - `muc_name` varchar(30) NOT NULL DEFAULT '', - `muc_restrict_room_creation` enum('n', 'y', 'm') NOT NULL DEFAULT 'm', - `muc_admins` text, - `use_pastebin` enum('n','y') NOT NULL DEFAULT 'n', - `pastebin_expire_after` int(3) NOT NULL DEFAULT 48, - `pastebin_trigger` varchar(10) NOT NULL DEFAULT '!paste', - `use_http_archive` enum('n','y') NOT NULL DEFAULT 'n', - `http_archive_show_join` enum('n', 'y') NOT NULL DEFAULT 'n', - `http_archive_show_status` enum('n', 'y') NOT NULL DEFAULT 'n', - `use_status_host` enum('n','y') NOT NULL DEFAULT 'n', - - `ssl_state` varchar(255) NULL, - `ssl_locality` varchar(255) NULL, - `ssl_organisation` varchar(255) NULL, - `ssl_organisation_unit` varchar(255) NULL, - `ssl_country` varchar(255) NULL, - `ssl_email` varchar(255) NULL, - `ssl_request` mediumtext NULL, - `ssl_cert` mediumtext NULL, - `ssl_bundle` mediumtext NULL, - `ssl_key` mediumtext NULL, - `ssl_action` varchar(16) NULL, - - `active` enum('n','y') NOT NULL DEFAULT 'n', - PRIMARY KEY (`domain_id`), - KEY `server_id` (`server_id`,`domain`), - KEY `domain_active` (`domain`,`active`) -) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ; - --- -------------------------------------------------------- - --- --- Table structure for table `xmpp_user` --- - -CREATE TABLE `xmpp_user` ( - `xmppuser_id` int(11) unsigned NOT NULL auto_increment, - `sys_userid` int(11) unsigned NOT NULL default '0', - `sys_groupid` int(11) unsigned NOT NULL default '0', - `sys_perm_user` varchar(5) NOT NULL default '', - `sys_perm_group` varchar(5) NOT NULL default '', - `sys_perm_other` varchar(5) NOT NULL default '', - `server_id` int(11) unsigned NOT NULL default '0', - `jid` varchar(255) NOT NULL default '', - `password` varchar(255) NOT NULL default '', - `active` enum('n','y') NOT NULL DEFAULT 'n', - PRIMARY KEY (`xmppuser_id`), - KEY `server_id` (`server_id`,`jid`), - KEY `jid_active` (`jid`,`active`) -) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ; - --- -------------------------------------------------------- - --- -------------------------------------------------------- --- -------------------------------------------------------- --- DB-DATA --- -------------------------------------------------------- --- -------------------------------------------------------- - --- --- Dumping data for table `aps_settings` --- - -INSERT INTO `aps_settings` (`id`, `name`, `value`) VALUES(1, 'ignore-php-extension', ''); -INSERT INTO `aps_settings` (`id`, `name`, `value`) VALUES(2, 'ignore-php-configuration', ''); -INSERT INTO `aps_settings` (`id`, `name`, `value`) VALUES(3, 'ignore-webserver-module', ''); - --- -------------------------------------------------------- - --- --- Dumping data for table `country` --- - -INSERT INTO `country` (`iso`, `name`, `printable_name`, `iso3`, `numcode`, `eu`) VALUES -('AF', 'AFGHANISTAN', 'Afghanistan', 'AFG', 4, 'n'), -('AL', 'ALBANIA', 'Albania', 'ALB', 8, 'n'), -('DZ', 'ALGERIA', 'Algeria', 'DZA', 12, 'n'), -('AS', 'AMERICAN SAMOA', 'American Samoa', 'ASM', 16, 'n'), -('AD', 'ANDORRA', 'Andorra', 'AND', 20, 'n'), -('AO', 'ANGOLA', 'Angola', 'AGO', 24, 'n'), -('AI', 'ANGUILLA', 'Anguilla', 'AIA', 660, 'n'), -('AQ', 'ANTARCTICA', 'Antarctica', NULL, NULL, 'n'), -('AG', 'ANTIGUA AND BARBUDA', 'Antigua and Barbuda', 'ATG', 28, 'n'), -('AR', 'ARGENTINA', 'Argentina', 'ARG', 32, 'n'), -('AM', 'ARMENIA', 'Armenia', 'ARM', 51, 'n'), -('AW', 'ARUBA', 'Aruba', 'ABW', 533, 'n'), -('AU', 'AUSTRALIA', 'Australia', 'AUS', 36, 'n'), -('AT', 'AUSTRIA', 'Austria', 'AUT', 40, 'y'), -('AZ', 'AZERBAIJAN', 'Azerbaijan', 'AZE', 31, 'n'), -('BS', 'BAHAMAS', 'Bahamas', 'BHS', 44, 'n'), -('BH', 'BAHRAIN', 'Bahrain', 'BHR', 48, 'n'), -('BD', 'BANGLADESH', 'Bangladesh', 'BGD', 50, 'n'), -('BB', 'BARBADOS', 'Barbados', 'BRB', 52, 'n'), -('BY', 'BELARUS', 'Belarus', 'BLR', 112, 'n'), -('BE', 'BELGIUM', 'Belgium', 'BEL', 56, 'y'), -('BZ', 'BELIZE', 'Belize', 'BLZ', 84, 'n'), -('BJ', 'BENIN', 'Benin', 'BEN', 204, 'n'), -('BM', 'BERMUDA', 'Bermuda', 'BMU', 60, 'n'), -('BT', 'BHUTAN', 'Bhutan', 'BTN', 64, 'n'), -('BO', 'BOLIVIA', 'Bolivia', 'BOL', 68, 'n'), -('BA', 'BOSNIA AND HERZEGOVINA', 'Bosnia and Herzegovina', 'BIH', 70, 'n'), -('BW', 'BOTSWANA', 'Botswana', 'BWA', 72, 'n'), -('BV', 'BOUVET ISLAND', 'Bouvet Island', NULL, NULL, 'n'), -('BR', 'BRAZIL', 'Brazil', 'BRA', 76, 'n'), -('IO', 'BRITISH INDIAN OCEAN TERRITORY', 'British Indian Ocean Territory', NULL, NULL, 'n'), -('BN', 'BRUNEI DARUSSALAM', 'Brunei Darussalam', 'BRN', 96, 'n'), -('BG', 'BULGARIA', 'Bulgaria', 'BGR', 100, 'y'), -('BF', 'BURKINA FASO', 'Burkina Faso', 'BFA', 854, 'n'), -('BI', 'BURUNDI', 'Burundi', 'BDI', 108, 'n'), -('KH', 'CAMBODIA', 'Cambodia', 'KHM', 116, 'n'), -('CM', 'CAMEROON', 'Cameroon', 'CMR', 120, 'n'), -('CA', 'CANADA', 'Canada', 'CAN', 124, 'n'), -('CV', 'CAPE VERDE', 'Cape Verde', 'CPV', 132, 'n'), -('KY', 'CAYMAN ISLANDS', 'Cayman Islands', 'CYM', 136, 'n'), -('CF', 'CENTRAL AFRICAN REPUBLIC', 'Central African Republic', 'CAF', 140, 'n'), -('TD', 'CHAD', 'Chad', 'TCD', 148, 'n'), -('CL', 'CHILE', 'Chile', 'CHL', 152, 'n'), -('CN', 'CHINA', 'China', 'CHN', 156, 'n'), -('CX', 'CHRISTMAS ISLAND', 'Christmas Island', NULL, NULL, 'n'), -('CC', 'COCOS (KEELING) ISLANDS', 'Cocos (Keeling) Islands', NULL, NULL, 'n'), -('CO', 'COLOMBIA', 'Colombia', 'COL', 170, 'n'), -('KM', 'COMOROS', 'Comoros', 'COM', 174, 'n'), -('CG', 'CONGO', 'Congo', 'COG', 178, 'n'), -('CD', 'CONGO, THE DEMOCRATIC REPUBLIC OF THE', 'Congo, the Democratic Republic of the', 'COD', 180, 'n'), -('CK', 'COOK ISLANDS', 'Cook Islands', 'COK', 184, 'n'), -('CR', 'COSTA RICA', 'Costa Rica', 'CRI', 188, 'n'), -('CI', 'COTE D''IVOIRE', 'Cote D''Ivoire', 'CIV', 384, 'n'), -('HR', 'CROATIA', 'Croatia', 'HRV', 191, 'y'), -('CU', 'CUBA', 'Cuba', 'CUB', 192, 'n'), -('CY', 'CYPRUS', 'Cyprus', 'CYP', 196, 'y'), -('CZ', 'CZECH REPUBLIC', 'Czech Republic', 'CZE', 203, 'y'), -('DK', 'DENMARK', 'Denmark', 'DNK', 208, 'y'), -('DJ', 'DJIBOUTI', 'Djibouti', 'DJI', 262, 'n'), -('DM', 'DOMINICA', 'Dominica', 'DMA', 212, 'n'), -('DO', 'DOMINICAN REPUBLIC', 'Dominican Republic', 'DOM', 214, 'n'), -('EC', 'ECUADOR', 'Ecuador', 'ECU', 218, 'n'), -('EG', 'EGYPT', 'Egypt', 'EGY', 818, 'n'), -('SV', 'EL SALVADOR', 'El Salvador', 'SLV', 222, 'n'), -('GQ', 'EQUATORIAL GUINEA', 'Equatorial Guinea', 'GNQ', 226, 'n'), -('ER', 'ERITREA', 'Eritrea', 'ERI', 232, 'n'), -('EE', 'ESTONIA', 'Estonia', 'EST', 233, 'y'), -('ET', 'ETHIOPIA', 'Ethiopia', 'ETH', 231, 'n'), -('FK', 'FALKLAND ISLANDS (MALVINAS)', 'Falkland Islands (Malvinas)', 'FLK', 238, 'n'), -('FO', 'FAROE ISLANDS', 'Faroe Islands', 'FRO', 234, 'n'), -('FJ', 'FIJI', 'Fiji', 'FJI', 242, 'n'), -('FI', 'FINLAND', 'Finland', 'FIN', 246, 'y'), -('FR', 'FRANCE', 'France', 'FRA', 250, 'y'), -('GF', 'FRENCH GUIANA', 'French Guiana', 'GUF', 254, 'n'), -('PF', 'FRENCH POLYNESIA', 'French Polynesia', 'PYF', 258, 'n'), -('TF', 'FRENCH SOUTHERN TERRITORIES', 'French Southern Territories', NULL, NULL, 'n'), -('GA', 'GABON', 'Gabon', 'GAB', 266, 'n'), -('GM', 'GAMBIA', 'Gambia', 'GMB', 270, 'n'), -('GE', 'GEORGIA', 'Georgia', 'GEO', 268, 'n'), -('DE', 'GERMANY', 'Germany', 'DEU', 276, 'y'), -('GH', 'GHANA', 'Ghana', 'GHA', 288, 'n'), -('GI', 'GIBRALTAR', 'Gibraltar', 'GIB', 292, 'n'), -('GR', 'GREECE', 'Greece', 'GRC', 300, 'y'), -('GL', 'GREENLAND', 'Greenland', 'GRL', 304, 'n'), -('GD', 'GRENADA', 'Grenada', 'GRD', 308, 'n'), -('GP', 'GUADELOUPE', 'Guadeloupe', 'GLP', 312, 'n'), -('GU', 'GUAM', 'Guam', 'GUM', 316, 'n'), -('GT', 'GUATEMALA', 'Guatemala', 'GTM', 320, 'n'), -('GN', 'GUINEA', 'Guinea', 'GIN', 324, 'n'), -('GW', 'GUINEA-BISSAU', 'Guinea-Bissau', 'GNB', 624, 'n'), -('GY', 'GUYANA', 'Guyana', 'GUY', 328, 'n'), -('HT', 'HAITI', 'Haiti', 'HTI', 332, 'n'), -('HM', 'HEARD ISLAND AND MCDONALD ISLANDS', 'Heard Island and Mcdonald Islands', NULL, NULL, 'n'), -('VA', 'HOLY SEE (VATICAN CITY STATE)', 'Holy See (Vatican City State)', 'VAT', 336, 'n'), -('HN', 'HONDURAS', 'Honduras', 'HND', 340, 'n'), -('HK', 'HONG KONG', 'Hong Kong', 'HKG', 344, 'n'), -('HU', 'HUNGARY', 'Hungary', 'HUN', 348, 'y'), -('IS', 'ICELAND', 'Iceland', 'ISL', 352, 'n'), -('IN', 'INDIA', 'India', 'IND', 356, 'n'), -('ID', 'INDONESIA', 'Indonesia', 'IDN', 360, 'n'), -('IR', 'IRAN, ISLAMIC REPUBLIC OF', 'Iran, Islamic Republic of', 'IRN', 364, 'n'), -('IQ', 'IRAQ', 'Iraq', 'IRQ', 368, 'n'), -('IE', 'IRELAND', 'Ireland', 'IRL', 372, 'y'), -('IL', 'ISRAEL', 'Israel', 'ISR', 376, 'n'), -('IT', 'ITALY', 'Italy', 'ITA', 380, 'y'), -('JM', 'JAMAICA', 'Jamaica', 'JAM', 388, 'n'), -('JP', 'JAPAN', 'Japan', 'JPN', 392, 'n'), -('JO', 'JORDAN', 'Jordan', 'JOR', 400, 'n'), -('KZ', 'KAZAKHSTAN', 'Kazakhstan', 'KAZ', 398, 'n'), -('KE', 'KENYA', 'Kenya', 'KEN', 404, 'n'), -('KI', 'KIRIBATI', 'Kiribati', 'KIR', 296, 'n'), -('KP', 'KOREA, DEMOCRATIC PEOPLE''S REPUBLIC OF', 'Korea, Democratic People''s Republic of', 'PRK', 408, 'n'), -('KR', 'KOREA, REPUBLIC OF', 'Korea, Republic of', 'KOR', 410, 'n'), -('KW', 'KUWAIT', 'Kuwait', 'KWT', 414, 'n'), -('KG', 'KYRGYZSTAN', 'Kyrgyzstan', 'KGZ', 417, 'n'), -('LA', 'LAO PEOPLE''S DEMOCRATIC REPUBLIC', 'Lao People''s Democratic Republic', 'LAO', 418, 'n'), -('LV', 'LATVIA', 'Latvia', 'LVA', 428, 'y'), -('LB', 'LEBANON', 'Lebanon', 'LBN', 422, 'n'), -('LS', 'LESOTHO', 'Lesotho', 'LSO', 426, 'n'), -('LR', 'LIBERIA', 'Liberia', 'LBR', 430, 'n'), -('LY', 'LIBYAN ARAB JAMAHIRIYA', 'Libyan Arab Jamahiriya', 'LBY', 434, 'n'), -('LI', 'LIECHTENSTEIN', 'Liechtenstein', 'LIE', 438, 'n'), -('LT', 'LITHUANIA', 'Lithuania', 'LTU', 440, 'y'), -('LU', 'LUXEMBOURG', 'Luxembourg', 'LUX', 442, 'y'), -('MO', 'MACAO', 'Macao', 'MAC', 446, 'n'), -('MK', 'MACEDONIA, THE FORMER YUGOSLAV REPUBLIC OF', 'Macedonia, the Former Yugoslav Republic of', 'MKD', 807, 'n'), -('MG', 'MADAGASCAR', 'Madagascar', 'MDG', 450, 'n'), -('MW', 'MALAWI', 'Malawi', 'MWI', 454, 'n'), -('MY', 'MALAYSIA', 'Malaysia', 'MYS', 458, 'n'), -('MV', 'MALDIVES', 'Maldives', 'MDV', 462, 'n'), -('ML', 'MALI', 'Mali', 'MLI', 466, 'n'), -('MT', 'MALTA', 'Malta', 'MLT', 470, 'y'), -('MH', 'MARSHALL ISLANDS', 'Marshall Islands', 'MHL', 584, 'n'), -('MQ', 'MARTINIQUE', 'Martinique', 'MTQ', 474, 'n'), -('MR', 'MAURITANIA', 'Mauritania', 'MRT', 478, 'n'), -('MU', 'MAURITIUS', 'Mauritius', 'MUS', 480, 'n'), -('YT', 'MAYOTTE', 'Mayotte', NULL, NULL, 'n'), -('MX', 'MEXICO', 'Mexico', 'MEX', 484, 'n'), -('FM', 'MICRONESIA, FEDERATED STATES OF', 'Micronesia, Federated States of', 'FSM', 583, 'n'), -('MD', 'MOLDOVA, REPUBLIC OF', 'Moldova, Republic of', 'MDA', 498, 'n'), -('MC', 'MONACO', 'Monaco', 'MCO', 492, 'n'), -('MN', 'MONGOLIA', 'Mongolia', 'MNG', 496, 'n'), -('MS', 'MONTSERRAT', 'Montserrat', 'MSR', 500, 'n'), -('MA', 'MOROCCO', 'Morocco', 'MAR', 504, 'n'), -('MZ', 'MOZAMBIQUE', 'Mozambique', 'MOZ', 508, 'n'), -('MM', 'MYANMAR', 'Myanmar', 'MMR', 104, 'n'), -('NA', 'NAMIBIA', 'Namibia', 'NAM', 516, 'n'), -('NR', 'NAURU', 'Nauru', 'NRU', 520, 'n'), -('NP', 'NEPAL', 'Nepal', 'NPL', 524, 'n'), -('NL', 'NETHERLANDS', 'Netherlands', 'NLD', 528, 'y'), -('AN', 'NETHERLANDS ANTILLES', 'Netherlands Antilles', 'ANT', 530, 'n'), -('NC', 'NEW CALEDONIA', 'New Caledonia', 'NCL', 540, 'n'), -('NZ', 'NEW ZEALAND', 'New Zealand', 'NZL', 554, 'n'), -('NI', 'NICARAGUA', 'Nicaragua', 'NIC', 558, 'n'), -('NE', 'NIGER', 'Niger', 'NER', 562, 'n'), -('NG', 'NIGERIA', 'Nigeria', 'NGA', 566, 'n'), -('NU', 'NIUE', 'Niue', 'NIU', 570, 'n'), -('NF', 'NORFOLK ISLAND', 'Norfolk Island', 'NFK', 574, 'n'), -('MP', 'NORTHERN MARIANA ISLANDS', 'Northern Mariana Islands', 'MNP', 580, 'n'), -('NO', 'NORWAY', 'Norway', 'NOR', 578, 'n'), -('OM', 'OMAN', 'Oman', 'OMN', 512, 'n'), -('PK', 'PAKISTAN', 'Pakistan', 'PAK', 586, 'n'), -('PW', 'PALAU', 'Palau', 'PLW', 585, 'n'), -('PS', 'PALESTINIAN TERRITORY, OCCUPIED', 'Palestinian Territory, Occupied', NULL, NULL, 'n'), -('PA', 'PANAMA', 'Panama', 'PAN', 591, 'n'), -('PG', 'PAPUA NEW GUINEA', 'Papua New Guinea', 'PNG', 598, 'n'), -('PY', 'PARAGUAY', 'Paraguay', 'PRY', 600, 'n'), -('PE', 'PERU', 'Peru', 'PER', 604, 'n'), -('PH', 'PHILIPPINES', 'Philippines', 'PHL', 608, 'n'), -('PN', 'PITCAIRN', 'Pitcairn', 'PCN', 612, 'n'), -('PL', 'POLAND', 'Poland', 'POL', 616, 'y'), -('PT', 'PORTUGAL', 'Portugal', 'PRT', 620, 'y'), -('PR', 'PUERTO RICO', 'Puerto Rico', 'PRI', 630, 'n'), -('QA', 'QATAR', 'Qatar', 'QAT', 634, 'n'), -('RE', 'REUNION', 'Reunion', 'REU', 638, 'n'), -('RO', 'ROMANIA', 'Romania', 'ROM', 642, 'y'), -('RU', 'RUSSIAN FEDERATION', 'Russian Federation', 'RUS', 643, 'n'), -('RW', 'RWANDA', 'Rwanda', 'RWA', 646, 'n'), -('SH', 'SAINT HELENA', 'Saint Helena', 'SHN', 654, 'n'), -('KN', 'SAINT KITTS AND NEVIS', 'Saint Kitts and Nevis', 'KNA', 659, 'n'), -('LC', 'SAINT LUCIA', 'Saint Lucia', 'LCA', 662, 'n'), -('PM', 'SAINT PIERRE AND MIQUELON', 'Saint Pierre and Miquelon', 'SPM', 666, 'n'), -('VC', 'SAINT VINCENT AND THE GRENADINES', 'Saint Vincent and the Grenadines', 'VCT', 670, 'n'), -('WS', 'SAMOA', 'Samoa', 'WSM', 882, 'n'), -('SM', 'SAN MARINO', 'San Marino', 'SMR', 674, 'n'), -('ST', 'SAO TOME AND PRINCIPE', 'Sao Tome and Principe', 'STP', 678, 'n'), -('SA', 'SAUDI ARABIA', 'Saudi Arabia', 'SAU', 682, 'n'), -('SN', 'SENEGAL', 'Senegal', 'SEN', 686, 'n'), -('RS', 'SERBIA', 'Serbia', 'SRB', 381, 'n'), -('SC', 'SEYCHELLES', 'Seychelles', 'SYC', 690, 'n'), -('SL', 'SIERRA LEONE', 'Sierra Leone', 'SLE', 694, 'n'), -('SG', 'SINGAPORE', 'Singapore', 'SGP', 702, 'n'), -('SK', 'SLOVAKIA', 'Slovakia', 'SVK', 703, 'y'), -('SI', 'SLOVENIA', 'Slovenia', 'SVN', 705, 'y'), -('SB', 'SOLOMON ISLANDS', 'Solomon Islands', 'SLB', 90, 'n'), -('SO', 'SOMALIA', 'Somalia', 'SOM', 706, 'n'), -('ZA', 'SOUTH AFRICA', 'South Africa', 'ZAF', 710, 'n'), -('GS', 'SOUTH GEORGIA AND THE SOUTH SANDWICH ISLANDS', 'South Georgia and the South Sandwich Islands', NULL, NULL, 'n'), -('ES', 'SPAIN', 'Spain', 'ESP', 724, 'y'), -('LK', 'SRI LANKA', 'Sri Lanka', 'LKA', 144, 'n'), -('SD', 'SUDAN', 'Sudan', 'SDN', 736, 'n'), -('SR', 'SURINAME', 'Suriname', 'SUR', 740, 'n'), -('SJ', 'SVALBARD AND JAN MAYEN', 'Svalbard and Jan Mayen', 'SJM', 744, 'n'), -('SZ', 'SWAZILAND', 'Swaziland', 'SWZ', 748, 'n'), -('SE', 'SWEDEN', 'Sweden', 'SWE', 752, 'y'), -('CH', 'SWITZERLAND', 'Switzerland', 'CHE', 756, 'n'), -('SY', 'SYRIAN ARAB REPUBLIC', 'Syrian Arab Republic', 'SYR', 760, 'n'), -('TW', 'TAIWAN, PROVINCE OF CHINA', 'Taiwan, Province of China', 'TWN', 158, 'n'), -('TJ', 'TAJIKISTAN', 'Tajikistan', 'TJK', 762, 'n'), -('TZ', 'TANZANIA, UNITED REPUBLIC OF', 'Tanzania, United Republic of', 'TZA', 834, 'n'), -('TH', 'THAILAND', 'Thailand', 'THA', 764, 'n'), -('TL', 'TIMOR-LESTE', 'Timor-Leste', NULL, NULL, 'n'), -('TG', 'TOGO', 'Togo', 'TGO', 768, 'n'), -('TK', 'TOKELAU', 'Tokelau', 'TKL', 772, 'n'), -('TO', 'TONGA', 'Tonga', 'TON', 776, 'n'), -('TT', 'TRINIDAD AND TOBAGO', 'Trinidad and Tobago', 'TTO', 780, 'n'), -('TN', 'TUNISIA', 'Tunisia', 'TUN', 788, 'n'), -('TR', 'TURKEY', 'Turkey', 'TUR', 792, 'n'), -('TM', 'TURKMENISTAN', 'Turkmenistan', 'TKM', 795, 'n'), -('TC', 'TURKS AND CAICOS ISLANDS', 'Turks and Caicos Islands', 'TCA', 796, 'n'), -('TV', 'TUVALU', 'Tuvalu', 'TUV', 798, 'n'), -('UG', 'UGANDA', 'Uganda', 'UGA', 800, 'n'), -('UA', 'UKRAINE', 'Ukraine', 'UKR', 804, 'n'), -('AE', 'UNITED ARAB EMIRATES', 'United Arab Emirates', 'ARE', 784, 'n'), -('GB', 'UNITED KINGDOM', 'United Kingdom', 'GBR', 826, 'y'), -('US', 'UNITED STATES', 'United States', 'USA', 840, 'n'), -('UM', 'UNITED STATES MINOR OUTLYING ISLANDS', 'United States Minor Outlying Islands', NULL, NULL, 'n'), -('UY', 'URUGUAY', 'Uruguay', 'URY', 858, 'n'), -('UZ', 'UZBEKISTAN', 'Uzbekistan', 'UZB', 860, 'n'), -('VU', 'VANUATU', 'Vanuatu', 'VUT', 548, 'n'), -('VE', 'VENEZUELA', 'Venezuela', 'VEN', 862, 'n'), -('VN', 'VIET NAM', 'Viet Nam', 'VNM', 704, 'n'), -('VG', 'VIRGIN ISLANDS, BRITISH', 'Virgin Islands, British', 'VGB', 92, 'n'), -('VI', 'VIRGIN ISLANDS, U.S.', 'Virgin Islands, U.s.', 'VIR', 850, 'n'), -('WF', 'WALLIS AND FUTUNA', 'Wallis and Futuna', 'WLF', 876, 'n'), -('EH', 'WESTERN SAHARA', 'Western Sahara', 'ESH', 732, 'n'), -('YE', 'YEMEN', 'Yemen', 'YEM', 887, 'n'), -('ZM', 'ZAMBIA', 'Zambia', 'ZMB', 894, 'n'), -('ZW', 'ZIMBABWE', 'Zimbabwe', 'ZWE', 716, 'n'), -('ME', 'MONTENEGRO', 'Montenegro', 'MNE', 382, 'n'); - --- -------------------------------------------------------- - --- --- 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,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'); - - --- -------------------------------------------------------- - --- --- Dumping data for table `help_faq` --- - -INSERT INTO `help_faq` VALUES (1,1,0,'I would like to know ...','Yes, of course.',1,1,'riud','riud','r'); - --- -------------------------------------------------------- - --- --- Dumping data for table `help_faq_sections` --- - -INSERT INTO `help_faq_sections` VALUES (1,'General',0,NULL,NULL,NULL,NULL,NULL); - --- -------------------------------------------------------- - --- --- Dumping data for table `software_repo` --- - -INSERT INTO `software_repo` (`software_repo_id`, `sys_userid`, `sys_groupid`, `sys_perm_user`, `sys_perm_group`, `sys_perm_other`, `repo_name`, `repo_url`, `repo_username`, `repo_password`, `active`) VALUES (1, 1, 1, 'riud', 'riud', '', 'ISPConfig Addons', 'http://repo.ispconfig.org/addons/', '', '', 'n'); - --- -------------------------------------------------------- - --- --- Dumping data for table `spamfilter_policy` --- - -INSERT INTO `spamfilter_policy` (`id`, `sys_userid`, `sys_groupid`, `sys_perm_user`, `sys_perm_group`, `sys_perm_other`, `policy_name`, `virus_lover`, `spam_lover`, `banned_files_lover`, `bad_header_lover`, `bypass_virus_checks`, `bypass_spam_checks`, `bypass_banned_checks`, `bypass_header_checks`, `spam_modifies_subj`, `virus_quarantine_to`, `spam_quarantine_to`, `banned_quarantine_to`, `bad_header_quarantine_to`, `clean_quarantine_to`, `other_quarantine_to`, `spam_tag_level`, `spam_tag2_level`, `spam_kill_level`, `spam_dsn_cutoff_level`, `spam_quarantine_cutoff_level`, `addr_extension_virus`, `addr_extension_spam`, `addr_extension_banned`, `addr_extension_bad_header`, `warnvirusrecip`, `warnbannedrecip`, `warnbadhrecip`, `newvirus_admin`, `virus_admin`, `banned_admin`, `bad_header_admin`, `spam_admin`, `spam_subject_tag`, `spam_subject_tag2`, `message_size_limit`, `banned_rulenames`) VALUES(1, 1, 0, 'riud', 'riud', 'r', 'Non-paying', 'N', 'N', 'N', 'N', 'Y', 'Y', 'Y', 'N', 'Y', '', '', '', '', '', '', 3, 7, 10, 0, 0, '', '', '', '', 'N', 'N', 'N', '', '', '', '', '', '', '', 0, ''); -INSERT INTO `spamfilter_policy` (`id`, `sys_userid`, `sys_groupid`, `sys_perm_user`, `sys_perm_group`, `sys_perm_other`, `policy_name`, `virus_lover`, `spam_lover`, `banned_files_lover`, `bad_header_lover`, `bypass_virus_checks`, `bypass_spam_checks`, `bypass_banned_checks`, `bypass_header_checks`, `spam_modifies_subj`, `virus_quarantine_to`, `spam_quarantine_to`, `banned_quarantine_to`, `bad_header_quarantine_to`, `clean_quarantine_to`, `other_quarantine_to`, `spam_tag_level`, `spam_tag2_level`, `spam_kill_level`, `spam_dsn_cutoff_level`, `spam_quarantine_cutoff_level`, `addr_extension_virus`, `addr_extension_spam`, `addr_extension_banned`, `addr_extension_bad_header`, `warnvirusrecip`, `warnbannedrecip`, `warnbadhrecip`, `newvirus_admin`, `virus_admin`, `banned_admin`, `bad_header_admin`, `spam_admin`, `spam_subject_tag`, `spam_subject_tag2`, `message_size_limit`, `banned_rulenames`) VALUES(2, 1, 0, 'riud', 'riud', 'r', 'Uncensored', 'Y', 'Y', 'Y', 'Y', 'N', 'N', 'N', 'N', 'N', NULL, NULL, NULL, NULL, NULL, NULL, 3, 999, 999, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL); -INSERT INTO `spamfilter_policy` (`id`, `sys_userid`, `sys_groupid`, `sys_perm_user`, `sys_perm_group`, `sys_perm_other`, `policy_name`, `virus_lover`, `spam_lover`, `banned_files_lover`, `bad_header_lover`, `bypass_virus_checks`, `bypass_spam_checks`, `bypass_banned_checks`, `bypass_header_checks`, `spam_modifies_subj`, `virus_quarantine_to`, `spam_quarantine_to`, `banned_quarantine_to`, `bad_header_quarantine_to`, `clean_quarantine_to`, `other_quarantine_to`, `spam_tag_level`, `spam_tag2_level`, `spam_kill_level`, `spam_dsn_cutoff_level`, `spam_quarantine_cutoff_level`, `addr_extension_virus`, `addr_extension_spam`, `addr_extension_banned`, `addr_extension_bad_header`, `warnvirusrecip`, `warnbannedrecip`, `warnbadhrecip`, `newvirus_admin`, `virus_admin`, `banned_admin`, `bad_header_admin`, `spam_admin`, `spam_subject_tag`, `spam_subject_tag2`, `message_size_limit`, `banned_rulenames`) VALUES(3, 1, 0, 'riud', 'riud', 'r', 'Wants all spam', 'N', 'Y', 'N', 'N', 'N', 'N', 'N', 'N', 'Y', NULL, NULL, NULL, NULL, NULL, NULL, 3, 999, 999, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL); -INSERT INTO `spamfilter_policy` (`id`, `sys_userid`, `sys_groupid`, `sys_perm_user`, `sys_perm_group`, `sys_perm_other`, `policy_name`, `virus_lover`, `spam_lover`, `banned_files_lover`, `bad_header_lover`, `bypass_virus_checks`, `bypass_spam_checks`, `bypass_banned_checks`, `bypass_header_checks`, `spam_modifies_subj`, `virus_quarantine_to`, `spam_quarantine_to`, `banned_quarantine_to`, `bad_header_quarantine_to`, `clean_quarantine_to`, `other_quarantine_to`, `spam_tag_level`, `spam_tag2_level`, `spam_kill_level`, `spam_dsn_cutoff_level`, `spam_quarantine_cutoff_level`, `addr_extension_virus`, `addr_extension_spam`, `addr_extension_banned`, `addr_extension_bad_header`, `warnvirusrecip`, `warnbannedrecip`, `warnbadhrecip`, `newvirus_admin`, `virus_admin`, `banned_admin`, `bad_header_admin`, `spam_admin`, `spam_subject_tag`, `spam_subject_tag2`, `message_size_limit`, `banned_rulenames`) VALUES(4, 1, 0, 'riud', 'riud', 'r', 'Wants viruses', 'Y', 'N', 'Y', 'Y', 'N', 'N', 'N', 'N', 'Y', NULL, NULL, NULL, NULL, NULL, NULL, 3, 6.9, 6.9, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL); -INSERT INTO `spamfilter_policy` (`id`, `sys_userid`, `sys_groupid`, `sys_perm_user`, `sys_perm_group`, `sys_perm_other`, `policy_name`, `virus_lover`, `spam_lover`, `banned_files_lover`, `bad_header_lover`, `bypass_virus_checks`, `bypass_spam_checks`, `bypass_banned_checks`, `bypass_header_checks`, `spam_modifies_subj`, `virus_quarantine_to`, `spam_quarantine_to`, `banned_quarantine_to`, `bad_header_quarantine_to`, `clean_quarantine_to`, `other_quarantine_to`, `spam_tag_level`, `spam_tag2_level`, `spam_kill_level`, `spam_dsn_cutoff_level`, `spam_quarantine_cutoff_level`, `addr_extension_virus`, `addr_extension_spam`, `addr_extension_banned`, `addr_extension_bad_header`, `warnvirusrecip`, `warnbannedrecip`, `warnbadhrecip`, `newvirus_admin`, `virus_admin`, `banned_admin`, `bad_header_admin`, `spam_admin`, `spam_subject_tag`, `spam_subject_tag2`, `message_size_limit`, `banned_rulenames`) VALUES(5, 1, 0, 'riud', 'riud', 'r', 'Normal', 'N', 'N', 'N', 'N', 'N', 'N', 'N', 'N', 'Y', '', '', '', '', '', '', 1, 4.5, 50, 0, 0, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, '', '***SPAM*** ', NULL, NULL); -INSERT INTO `spamfilter_policy` (`id`, `sys_userid`, `sys_groupid`, `sys_perm_user`, `sys_perm_group`, `sys_perm_other`, `policy_name`, `virus_lover`, `spam_lover`, `banned_files_lover`, `bad_header_lover`, `bypass_virus_checks`, `bypass_spam_checks`, `bypass_banned_checks`, `bypass_header_checks`, `spam_modifies_subj`, `virus_quarantine_to`, `spam_quarantine_to`, `banned_quarantine_to`, `bad_header_quarantine_to`, `clean_quarantine_to`, `other_quarantine_to`, `spam_tag_level`, `spam_tag2_level`, `spam_kill_level`, `spam_dsn_cutoff_level`, `spam_quarantine_cutoff_level`, `addr_extension_virus`, `addr_extension_spam`, `addr_extension_banned`, `addr_extension_bad_header`, `warnvirusrecip`, `warnbannedrecip`, `warnbadhrecip`, `newvirus_admin`, `virus_admin`, `banned_admin`, `bad_header_admin`, `spam_admin`, `spam_subject_tag`, `spam_subject_tag2`, `message_size_limit`, `banned_rulenames`) VALUES(6, 1, 0, 'riud', 'riud', 'r', 'Trigger happy', 'N', 'N', 'N', 'N', 'N', 'N', 'N', 'N', 'Y', NULL, NULL, NULL, NULL, NULL, NULL, 3, 5, 5, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL); -INSERT INTO `spamfilter_policy` (`id`, `sys_userid`, `sys_groupid`, `sys_perm_user`, `sys_perm_group`, `sys_perm_other`, `policy_name`, `virus_lover`, `spam_lover`, `banned_files_lover`, `bad_header_lover`, `bypass_virus_checks`, `bypass_spam_checks`, `bypass_banned_checks`, `bypass_header_checks`, `spam_modifies_subj`, `virus_quarantine_to`, `spam_quarantine_to`, `banned_quarantine_to`, `bad_header_quarantine_to`, `clean_quarantine_to`, `other_quarantine_to`, `spam_tag_level`, `spam_tag2_level`, `spam_kill_level`, `spam_dsn_cutoff_level`, `spam_quarantine_cutoff_level`, `addr_extension_virus`, `addr_extension_spam`, `addr_extension_banned`, `addr_extension_bad_header`, `warnvirusrecip`, `warnbannedrecip`, `warnbadhrecip`, `newvirus_admin`, `virus_admin`, `banned_admin`, `bad_header_admin`, `spam_admin`, `spam_subject_tag`, `spam_subject_tag2`, `message_size_limit`, `banned_rulenames`) VALUES(7, 1, 0, 'riud', 'riud', 'r', 'Permissive', 'N', 'N', 'N', 'Y', 'N', 'N', 'N', 'N', 'Y', NULL, NULL, NULL, NULL, NULL, NULL, 3, 10, 20, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL); - --- -------------------------------------------------------- - --- --- Dumping data for table `sys_group` --- - -INSERT INTO `sys_group` (`groupid`, `name`, `description`, `client_id`) VALUES (1, 'admin', 'Administrators group', 0); - --- -------------------------------------------------------- - --- --- Dumping data for table `sys_ini` --- - -INSERT INTO `sys_ini` (`sysini_id`, `config`, `default_logo`, `custom_logo`) VALUES (1, '', 'data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAMgAAABBCAYAAACU5+uOAAAItUlEQVR42u1dCWwVVRStUJZCK6HsFNAgWpaCJkKICZKApKUFhURQpEnZF4EEUJZYEEpBIamgkQpUQBZRW7YCBqQsggsQEAgKLbIGCYsSCNqyQ8D76h18Hd/MvJk/n/bXc5KT+TNz79vPzNv+/2FhAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAOAe++s0akTsRZxMnE6cGkKcxkwhPofaBPwWRzxxB/EO8UGI8xhxEGoV8EscY8qBKFRcgdoFAhXHC+VUHAbHo5aBQASyrZwL5DoxEjUNeBXI9XIuEMEE1DTgVSA3FA3qIDEtBLnTQiBDUNOAV4EUKhpURojmZQQEAjwKgSwK0bykWQgEU74ABAKBABAIBOIJffoNrkRsS0whDiMO5uNw4gBiSxvfGOJrbDtMOgr2JNa18HmZmETsopnGp4h9xdF0TcQRb8NEPkawTzv2qaWIoybnZYRUBoJD+difGAuBlCy0qsRM4mfERcTFfGygsBUF/xFxE/EQ8RixwIbi/j7il8R3iE8qwuxAXMJxuuFiTvNMYleb/E0gXiI+cOBaISTJrzLxcw2/+8Q5pjjfNNkM0RDILLadpbimw+bsc4DPkxRpuqkZ1orisoBAiguuhkUhPSvZRBA3u6gsK94g9jDFP9aHcAV3EKNNYX8i3RcNJ4M4nTiROJCYykIzbGZKvouk68vYbyS/cUbz+RrJZpzkO5Sv3eajaJhRDvUwg21nKK4VcF5WKPgFH6PZZw/7dJXC6S6lczunfbIQLpeDkZ+lJcoCAikuvChioaLBtfD4JHPiXSFKKexBPoa9Wwr3ael6skMZDGO7K3z+uOSb5OA7mu2KiOGmPH3ADVh8/sohnDS2S1NcG+uiO/kd+8RL146YRWzj359tb0Eg+gIpsHkjFNrQqiF3DZJABDtyuCP5/FuNRlHN8Ofz9nx+XLNR3jR1c4w8TSFGSmnr4FEgU7wKhI51jAeTpv+/ZQGBOAuEu1d/Ku6LV35t9rdigkUjHuMgkHPEecQsxdjjUx4zHbMI+10OdzqfZ2o0iiqSfzgPfMXnzZqN6iTbJ5jytMTU0E97FEhaAAJ5kc/PuJjQOCoIgegJpKbUl5b5vGaBT+A+vOgn5/JYIdFBIOs1wo1kIZl93+P70/h8oUZYFXkmKInPU9h3m2YeT8lvRilPyyWbi3xt4iMWSDc+P4lp3uAIRDxdryjui6dmuujXcr91IDcMmaJv31WISfTrLeJXCUT3yb1a4Ztmalyu61MaZG/XtD9tapRGnpZKNp2lNNZ3KZARAQgk3untBYEEPgbJ92FsIAax34v1AQ2B5Go2BlW60n0QyCC/BWISdJ5LgewWU8k86DdTzMyNh0BKVyAzfB5I93YQyBGeTlW9lQbwIle2Rdgzy7BAxJT6Hb6X6EIgTrznRSCiHli02cwcPor1pbkQiL5AKvOA+ZZPAtkfxFms3j4IZHAwBGJaRPxdjH00BSImJRqKOlEwjtjUo0Dm2pWla4HMzsyqQIxSMKI8C8RkL9YXuhDf5gqcw4NweaZJiGkh8UeLwi+Utkb4KZCrYszkVSDiQRDMN4hkf5DvZ2gKZJyLPJgFkmAjEDEF3EYSWzPeklO8Q8CLQGKJhQquK+eDdLFNZBJxFLEf8XUXFTbcYv2kRhAEIq+vGNO88zTTKVaRzxPrSSvPW11O8yZqCiROSnMsX0sP0ixWops1Hfbx/AaJIz5QcFc5n+ZVNcbxmoWtEsBNB4EU8Tgk32Gv1wneEybeWG1N8RoNbplmOo2neiyxE3/eoun7G9t31hGIqXuzl8/HB0kgxhvhD03/KoEIpIWFQPLK+UJhkWpgKLZP8IKhajNhJg8A7yt8/5K6QoFM8z5mc68Ph3VWM6wTbN+a+AR/vqThV13KYyMXAgmXps9FnK8GSSA17KaXFf7R3gUyd8H/TiBss9fngfQehzfMpkDLgxcS73J4k1y85WrxtTtOjZPuVZA2O55RhLfUId5XpI2UHwZDIHxtp7HtRrVL25SfhWy7z7VAMuYvipszd0FJcfxzHspdrMctGnGcZNPTZ4F0VszqyPSlPHm8JG9f2SDtgF3Nq/rnJZssyXeUdP0CN64c9l/FDfGyZNNNkaeVGmnMM+Vdtd19los8/2e7Ow/E70lxiG7pRmkn8AaeULlcoo4sBDLfKvL0nLUxablfX0hfmfuQ01avI65fUQYEkupRIJHcAMwbDWNNdmLgupV4zeMO3stcIZ1M4aYo4vZt0oO7Locd0ndGTEQofN+QxiZ22+y7W+RpgUb66vOU7232SZXupZqvaYT3Dfu8ZLrejtc47mvkJ9FoVEWKBmW7dyc7ZXD1Nb2TH3JVn5Tqa3r1repzY6/gwWeqhUCGO/XjWSTmjYYVLOzFoP0Z/qJTks033brxrtjmxCbGtK4ivEqKuH2fNuc0tDatIYgna4yGbz2eeTL8WhJbic2aDnmqqpm2KlLeK5vWn0pc0wirGvtUtBkzNdPKDzWe24oGdZX4CzGfWCD4U93GBQdqNSw4Uiny8K9h4buOhlU2scq+Q1G1i233k63hFwBPEfcS04l1FGJoynbH+fgz8ZKFQJLDAMDjk/psCPzw20XxE6mmdLd24d8KNQ14FciUEPl1xHvEhlK6W2j65aOWgUAEUpV4NEREstyDQNqjloFARVKL/xukrAvkGjGC09zGwfYKsQdqF/BTKMnEJcTtxC3EPAU3iic5cRkfjc/ZFvZuuZm4gXjOouG35LQ2Yfutkq/4pfpN/E9TDVCjQGkJqQExho+CjYlRPseRiQE3EIriaMZTw4K3mOJv23J8jme23RsEAMqqQJrb9PnnEbPEVpUAuJD4Mf/PoCqeONQCUJYFElGKf7ojpnqjUQtAWRdJaf1t2w8ofSAUBNKulATSEaUPhIpIRj9icbyFUgdCTSRTeR0i2HwfpQ0AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAQBnG392D9QU+JXhxAAAAAElFTkSuQmCC', ''); - --- -------------------------------------------------------- - --- --- Dumping data for table `sys_user` --- - -INSERT INTO `sys_theme` (`var_id`, `tpl_name`, `username`, `logo_url`) VALUES (NULL, 'default', 'global', 'themes/default/images/header_logo.png'); -INSERT INTO `sys_theme` (`var_id`, `tpl_name`, `username`, `logo_url`) VALUES (NULL, 'default-v2', 'global', 'themes/default-v2/images/header_logo.png'); - --- -------------------------------------------------------- - --- --- Dumping data for table `sys_user` --- - -INSERT INTO `sys_user` (`userid`, `sys_userid`, `sys_groupid`, `sys_perm_user`, `sys_perm_group`, `sys_perm_other`, `username`, `passwort`, `modules`, `startmodule`, `app_theme`, `typ`, `active`, `language`, `groups`, `default_group`, `client_id`) VALUES (1, 1, 0, 'riud', 'riud', '', 'admin', '21232f297a57a5a743894a0e4a801fc3', 'dashboard,admin,client,mail,monitor,sites,dns,vm,tools,help', 'dashboard', 'default', 'admin', 1, 'en', '1,2', 1, 0); - --- -------------------------------------------------------- - --- --- Dumping data for table `sys_config` --- - -INSERT INTO sys_config VALUES ('db','db_version','3.1dev'); -INSERT INTO sys_config VALUES ('interface','session_timeout','0'); - -SET FOREIGN_KEY_CHECKS = 1; diff --git a/install/sql/ispconfig3.sql.rej b/install/sql/ispconfig3.sql.rej deleted file mode 100644 index 6c8d2e4a9c..0000000000 --- a/install/sql/ispconfig3.sql.rej +++ /dev/null @@ -1,23 +0,0 @@ ---- install/sql/ispconfig3.sql -+++ install/sql/ispconfig3.sql -@@ -2522,13 +2527,13 @@ INSERT INTO `software_repo` (`software_repo_id`, `sys_userid`, `sys_groupid`, `s - -- Dumping data for table `spamfilter_policy` - -- - --INSERT INTO `spamfilter_policy` (`id`, `sys_userid`, `sys_groupid`, `sys_perm_user`, `sys_perm_group`, `sys_perm_other`, `policy_name`, `virus_lover`, `spam_lover`, `banned_files_lover`, `bad_header_lover`, `bypass_virus_checks`, `bypass_spam_checks`, `bypass_banned_checks`, `bypass_header_checks`, `spam_modifies_subj`, `virus_quarantine_to`, `spam_quarantine_to`, `banned_quarantine_to`, `bad_header_quarantine_to`, `clean_quarantine_to`, `other_quarantine_to`, `spam_tag_level`, `spam_tag2_level`, `spam_kill_level`, `spam_dsn_cutoff_level`, `spam_quarantine_cutoff_level`, `addr_extension_virus`, `addr_extension_spam`, `addr_extension_banned`, `addr_extension_bad_header`, `warnvirusrecip`, `warnbannedrecip`, `warnbadhrecip`, `newvirus_admin`, `virus_admin`, `banned_admin`, `bad_header_admin`, `spam_admin`, `spam_subject_tag`, `spam_subject_tag2`, `message_size_limit`, `banned_rulenames`) VALUES(1, 1, 0, 'riud', 'riud', 'r', 'Non-paying', 'N', 'N', 'N', 'N', 'Y', 'Y', 'Y', 'N', 'Y', '', '', '', '', '', '', 3, 7, 10, 0, 0, '', '', '', '', 'N', 'N', 'N', '', '', '', '', '', '', '', 0, ''); --INSERT INTO `spamfilter_policy` (`id`, `sys_userid`, `sys_groupid`, `sys_perm_user`, `sys_perm_group`, `sys_perm_other`, `policy_name`, `virus_lover`, `spam_lover`, `banned_files_lover`, `bad_header_lover`, `bypass_virus_checks`, `bypass_spam_checks`, `bypass_banned_checks`, `bypass_header_checks`, `spam_modifies_subj`, `virus_quarantine_to`, `spam_quarantine_to`, `banned_quarantine_to`, `bad_header_quarantine_to`, `clean_quarantine_to`, `other_quarantine_to`, `spam_tag_level`, `spam_tag2_level`, `spam_kill_level`, `spam_dsn_cutoff_level`, `spam_quarantine_cutoff_level`, `addr_extension_virus`, `addr_extension_spam`, `addr_extension_banned`, `addr_extension_bad_header`, `warnvirusrecip`, `warnbannedrecip`, `warnbadhrecip`, `newvirus_admin`, `virus_admin`, `banned_admin`, `bad_header_admin`, `spam_admin`, `spam_subject_tag`, `spam_subject_tag2`, `message_size_limit`, `banned_rulenames`) VALUES(2, 1, 0, 'riud', 'riud', 'r', 'Uncensored', 'Y', 'Y', 'Y', 'Y', 'N', 'N', 'N', 'N', 'N', NULL, NULL, NULL, NULL, NULL, NULL, 3, 999, 999, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL); --INSERT INTO `spamfilter_policy` (`id`, `sys_userid`, `sys_groupid`, `sys_perm_user`, `sys_perm_group`, `sys_perm_other`, `policy_name`, `virus_lover`, `spam_lover`, `banned_files_lover`, `bad_header_lover`, `bypass_virus_checks`, `bypass_spam_checks`, `bypass_banned_checks`, `bypass_header_checks`, `spam_modifies_subj`, `virus_quarantine_to`, `spam_quarantine_to`, `banned_quarantine_to`, `bad_header_quarantine_to`, `clean_quarantine_to`, `other_quarantine_to`, `spam_tag_level`, `spam_tag2_level`, `spam_kill_level`, `spam_dsn_cutoff_level`, `spam_quarantine_cutoff_level`, `addr_extension_virus`, `addr_extension_spam`, `addr_extension_banned`, `addr_extension_bad_header`, `warnvirusrecip`, `warnbannedrecip`, `warnbadhrecip`, `newvirus_admin`, `virus_admin`, `banned_admin`, `bad_header_admin`, `spam_admin`, `spam_subject_tag`, `spam_subject_tag2`, `message_size_limit`, `banned_rulenames`) VALUES(3, 1, 0, 'riud', 'riud', 'r', 'Wants all spam', 'N', 'Y', 'N', 'N', 'N', 'N', 'N', 'N', 'Y', NULL, NULL, NULL, NULL, NULL, NULL, 3, 999, 999, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL); --INSERT INTO `spamfilter_policy` (`id`, `sys_userid`, `sys_groupid`, `sys_perm_user`, `sys_perm_group`, `sys_perm_other`, `policy_name`, `virus_lover`, `spam_lover`, `banned_files_lover`, `bad_header_lover`, `bypass_virus_checks`, `bypass_spam_checks`, `bypass_banned_checks`, `bypass_header_checks`, `spam_modifies_subj`, `virus_quarantine_to`, `spam_quarantine_to`, `banned_quarantine_to`, `bad_header_quarantine_to`, `clean_quarantine_to`, `other_quarantine_to`, `spam_tag_level`, `spam_tag2_level`, `spam_kill_level`, `spam_dsn_cutoff_level`, `spam_quarantine_cutoff_level`, `addr_extension_virus`, `addr_extension_spam`, `addr_extension_banned`, `addr_extension_bad_header`, `warnvirusrecip`, `warnbannedrecip`, `warnbadhrecip`, `newvirus_admin`, `virus_admin`, `banned_admin`, `bad_header_admin`, `spam_admin`, `spam_subject_tag`, `spam_subject_tag2`, `message_size_limit`, `banned_rulenames`) VALUES(4, 1, 0, 'riud', 'riud', 'r', 'Wants viruses', 'Y', 'N', 'Y', 'Y', 'N', 'N', 'N', 'N', 'Y', NULL, NULL, NULL, NULL, NULL, NULL, 3, 6.9, 6.9, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL); --INSERT INTO `spamfilter_policy` (`id`, `sys_userid`, `sys_groupid`, `sys_perm_user`, `sys_perm_group`, `sys_perm_other`, `policy_name`, `virus_lover`, `spam_lover`, `banned_files_lover`, `bad_header_lover`, `bypass_virus_checks`, `bypass_spam_checks`, `bypass_banned_checks`, `bypass_header_checks`, `spam_modifies_subj`, `virus_quarantine_to`, `spam_quarantine_to`, `banned_quarantine_to`, `bad_header_quarantine_to`, `clean_quarantine_to`, `other_quarantine_to`, `spam_tag_level`, `spam_tag2_level`, `spam_kill_level`, `spam_dsn_cutoff_level`, `spam_quarantine_cutoff_level`, `addr_extension_virus`, `addr_extension_spam`, `addr_extension_banned`, `addr_extension_bad_header`, `warnvirusrecip`, `warnbannedrecip`, `warnbadhrecip`, `newvirus_admin`, `virus_admin`, `banned_admin`, `bad_header_admin`, `spam_admin`, `spam_subject_tag`, `spam_subject_tag2`, `message_size_limit`, `banned_rulenames`) VALUES(5, 1, 0, 'riud', 'riud', 'r', 'Normal', 'N', 'N', 'N', 'N', 'N', 'N', 'N', 'N', 'Y', '', '', '', '', '', '', 1, 4.5, 50, 0, 0, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, '', '***SPAM***', NULL, NULL); --INSERT INTO `spamfilter_policy` (`id`, `sys_userid`, `sys_groupid`, `sys_perm_user`, `sys_perm_group`, `sys_perm_other`, `policy_name`, `virus_lover`, `spam_lover`, `banned_files_lover`, `bad_header_lover`, `bypass_virus_checks`, `bypass_spam_checks`, `bypass_banned_checks`, `bypass_header_checks`, `spam_modifies_subj`, `virus_quarantine_to`, `spam_quarantine_to`, `banned_quarantine_to`, `bad_header_quarantine_to`, `clean_quarantine_to`, `other_quarantine_to`, `spam_tag_level`, `spam_tag2_level`, `spam_kill_level`, `spam_dsn_cutoff_level`, `spam_quarantine_cutoff_level`, `addr_extension_virus`, `addr_extension_spam`, `addr_extension_banned`, `addr_extension_bad_header`, `warnvirusrecip`, `warnbannedrecip`, `warnbadhrecip`, `newvirus_admin`, `virus_admin`, `banned_admin`, `bad_header_admin`, `spam_admin`, `spam_subject_tag`, `spam_subject_tag2`, `message_size_limit`, `banned_rulenames`) VALUES(6, 1, 0, 'riud', 'riud', 'r', 'Trigger happy', 'N', 'N', 'N', 'N', 'N', 'N', 'N', 'N', 'Y', NULL, NULL, NULL, NULL, NULL, NULL, 3, 5, 5, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL); --INSERT INTO `spamfilter_policy` (`id`, `sys_userid`, `sys_groupid`, `sys_perm_user`, `sys_perm_group`, `sys_perm_other`, `policy_name`, `virus_lover`, `spam_lover`, `banned_files_lover`, `bad_header_lover`, `bypass_virus_checks`, `bypass_spam_checks`, `bypass_banned_checks`, `bypass_header_checks`, `spam_modifies_subj`, `virus_quarantine_to`, `spam_quarantine_to`, `banned_quarantine_to`, `bad_header_quarantine_to`, `clean_quarantine_to`, `other_quarantine_to`, `spam_tag_level`, `spam_tag2_level`, `spam_kill_level`, `spam_dsn_cutoff_level`, `spam_quarantine_cutoff_level`, `addr_extension_virus`, `addr_extension_spam`, `addr_extension_banned`, `addr_extension_bad_header`, `warnvirusrecip`, `warnbannedrecip`, `warnbadhrecip`, `newvirus_admin`, `virus_admin`, `banned_admin`, `bad_header_admin`, `spam_admin`, `spam_subject_tag`, `spam_subject_tag2`, `message_size_limit`, `banned_rulenames`) VALUES(7, 1, 0, 'riud', 'riud', 'r', 'Permissive', 'N', 'N', 'N', 'Y', 'N', 'N', 'N', 'N', 'Y', NULL, NULL, NULL, NULL, NULL, NULL, 3, 10, 20, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL); -+INSERT INTO `spamfilter_policy` (`id`, `sys_userid`, `sys_groupid`, `sys_perm_user`, `sys_perm_group`, `sys_perm_other`, `policy_name`, `virus_lover`, `spam_lover`, `banned_files_lover`, `bad_header_lover`, `bypass_virus_checks`, `bypass_spam_checks`, `bypass_banned_checks`, `bypass_header_checks`, `spam_modifies_subj`, `virus_quarantine_to`, `spam_quarantine_to`, `banned_quarantine_to`, `bad_header_quarantine_to`, `clean_quarantine_to`, `other_quarantine_to`, `spam_tag_level`, `spam_tag2_level`, `spam_kill_level`, `spam_dsn_cutoff_level`, `spam_quarantine_cutoff_level`, `addr_extension_virus`, `addr_extension_spam`, `addr_extension_banned`, `addr_extension_bad_header`, `warnvirusrecip`, `warnbannedrecip`, `warnbadhrecip`, `newvirus_admin`, `virus_admin`, `banned_admin`, `bad_header_admin`, `spam_admin`, `spam_subject_tag`, `spam_subject_tag2`, `message_size_limit`, `banned_rulenames`, `rspamd_greylisting`, `rspamd_spam_greylisting_level`, `rspamd_spam_tag_level`, `rspamd_spam_tag_method`, `rspamd_spam_kill_level`) VALUES(1, 1, 0, 'riud', 'riud', 'r', 'Non-paying', 'N', 'N', 'N', 'N', 'Y', 'Y', 'Y', 'N', 'Y', '', '', '', '', '', '', 3, 7, 10, 0, 0, '', '', '', '', 'N', 'N', 'N', '', '', '', '', '', '', '', 0, '', 'n', 6.00, 8.00, 'rewrite_subject', 12.00); -+INSERT INTO `spamfilter_policy` (`id`, `sys_userid`, `sys_groupid`, `sys_perm_user`, `sys_perm_group`, `sys_perm_other`, `policy_name`, `virus_lover`, `spam_lover`, `banned_files_lover`, `bad_header_lover`, `bypass_virus_checks`, `bypass_spam_checks`, `bypass_banned_checks`, `bypass_header_checks`, `spam_modifies_subj`, `virus_quarantine_to`, `spam_quarantine_to`, `banned_quarantine_to`, `bad_header_quarantine_to`, `clean_quarantine_to`, `other_quarantine_to`, `spam_tag_level`, `spam_tag2_level`, `spam_kill_level`, `spam_dsn_cutoff_level`, `spam_quarantine_cutoff_level`, `addr_extension_virus`, `addr_extension_spam`, `addr_extension_banned`, `addr_extension_bad_header`, `warnvirusrecip`, `warnbannedrecip`, `warnbadhrecip`, `newvirus_admin`, `virus_admin`, `banned_admin`, `bad_header_admin`, `spam_admin`, `spam_subject_tag`, `spam_subject_tag2`, `message_size_limit`, `banned_rulenames`, `rspamd_greylisting`, `rspamd_spam_greylisting_level`, `rspamd_spam_tag_level`, `rspamd_spam_tag_method`, `rspamd_spam_kill_level`) VALUES(2, 1, 0, 'riud', 'riud', 'r', 'Uncensored', 'Y', 'Y', 'Y', 'Y', 'N', 'N', 'N', 'N', 'N', NULL, NULL, NULL, NULL, NULL, NULL, 3, 999, 999, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, 'n', 999.00, 999.00, 'rewrite_subject', 999.00); -+INSERT INTO `spamfilter_policy` (`id`, `sys_userid`, `sys_groupid`, `sys_perm_user`, `sys_perm_group`, `sys_perm_other`, `policy_name`, `virus_lover`, `spam_lover`, `banned_files_lover`, `bad_header_lover`, `bypass_virus_checks`, `bypass_spam_checks`, `bypass_banned_checks`, `bypass_header_checks`, `spam_modifies_subj`, `virus_quarantine_to`, `spam_quarantine_to`, `banned_quarantine_to`, `bad_header_quarantine_to`, `clean_quarantine_to`, `other_quarantine_to`, `spam_tag_level`, `spam_tag2_level`, `spam_kill_level`, `spam_dsn_cutoff_level`, `spam_quarantine_cutoff_level`, `addr_extension_virus`, `addr_extension_spam`, `addr_extension_banned`, `addr_extension_bad_header`, `warnvirusrecip`, `warnbannedrecip`, `warnbadhrecip`, `newvirus_admin`, `virus_admin`, `banned_admin`, `bad_header_admin`, `spam_admin`, `spam_subject_tag`, `spam_subject_tag2`, `message_size_limit`, `banned_rulenames`, `rspamd_greylisting`, `rspamd_spam_greylisting_level`, `rspamd_spam_tag_level`, `rspamd_spam_tag_method`, `rspamd_spam_kill_level`) VALUES(3, 1, 0, 'riud', 'riud', 'r', 'Wants all spam', 'N', 'Y', 'N', 'N', 'N', 'N', 'N', 'N', 'Y', NULL, NULL, NULL, NULL, NULL, NULL, 3, 999, 999, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, 'n', 999.00, 999.00, 'rewrite_subject', 999.00); -+INSERT INTO `spamfilter_policy` (`id`, `sys_userid`, `sys_groupid`, `sys_perm_user`, `sys_perm_group`, `sys_perm_other`, `policy_name`, `virus_lover`, `spam_lover`, `banned_files_lover`, `bad_header_lover`, `bypass_virus_checks`, `bypass_spam_checks`, `bypass_banned_checks`, `bypass_header_checks`, `spam_modifies_subj`, `virus_quarantine_to`, `spam_quarantine_to`, `banned_quarantine_to`, `bad_header_quarantine_to`, `clean_quarantine_to`, `other_quarantine_to`, `spam_tag_level`, `spam_tag2_level`, `spam_kill_level`, `spam_dsn_cutoff_level`, `spam_quarantine_cutoff_level`, `addr_extension_virus`, `addr_extension_spam`, `addr_extension_banned`, `addr_extension_bad_header`, `warnvirusrecip`, `warnbannedrecip`, `warnbadhrecip`, `newvirus_admin`, `virus_admin`, `banned_admin`, `bad_header_admin`, `spam_admin`, `spam_subject_tag`, `spam_subject_tag2`, `message_size_limit`, `banned_rulenames`, `rspamd_greylisting`, `rspamd_spam_greylisting_level`, `rspamd_spam_tag_level`, `rspamd_spam_tag_method`, `rspamd_spam_kill_level`) VALUES(4, 1, 0, 'riud', 'riud', 'r', 'Wants viruses', 'Y', 'N', 'Y', 'Y', 'N', 'N', 'N', 'N', 'Y', NULL, NULL, NULL, NULL, NULL, NULL, 3, 6.9, 6.9, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, 'y', 4.00, 6.00, 'rewrite_subject', 10.00); -+INSERT INTO `spamfilter_policy` (`id`, `sys_userid`, `sys_groupid`, `sys_perm_user`, `sys_perm_group`, `sys_perm_other`, `policy_name`, `virus_lover`, `spam_lover`, `banned_files_lover`, `bad_header_lover`, `bypass_virus_checks`, `bypass_spam_checks`, `bypass_banned_checks`, `bypass_header_checks`, `spam_modifies_subj`, `virus_quarantine_to`, `spam_quarantine_to`, `banned_quarantine_to`, `bad_header_quarantine_to`, `clean_quarantine_to`, `other_quarantine_to`, `spam_tag_level`, `spam_tag2_level`, `spam_kill_level`, `spam_dsn_cutoff_level`, `spam_quarantine_cutoff_level`, `addr_extension_virus`, `addr_extension_spam`, `addr_extension_banned`, `addr_extension_bad_header`, `warnvirusrecip`, `warnbannedrecip`, `warnbadhrecip`, `newvirus_admin`, `virus_admin`, `banned_admin`, `bad_header_admin`, `spam_admin`, `spam_subject_tag`, `spam_subject_tag2`, `message_size_limit`, `banned_rulenames`, `rspamd_greylisting`, `rspamd_spam_greylisting_level`, `rspamd_spam_tag_level`, `rspamd_spam_tag_method`, `rspamd_spam_kill_level`) VALUES(5, 1, 0, 'riud', 'riud', 'r', 'Normal', 'N', 'N', 'N', 'N', 'N', 'N', 'N', 'N', 'Y', '', '', '', '', '', '', 1, 4.5, 50, 0, 0, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, '', '***SPAM***', NULL, NULL, 'y', 4.00, 6.00, 'rewrite_subject', 10.00); -+INSERT INTO `spamfilter_policy` (`id`, `sys_userid`, `sys_groupid`, `sys_perm_user`, `sys_perm_group`, `sys_perm_other`, `policy_name`, `virus_lover`, `spam_lover`, `banned_files_lover`, `bad_header_lover`, `bypass_virus_checks`, `bypass_spam_checks`, `bypass_banned_checks`, `bypass_header_checks`, `spam_modifies_subj`, `virus_quarantine_to`, `spam_quarantine_to`, `banned_quarantine_to`, `bad_header_quarantine_to`, `clean_quarantine_to`, `other_quarantine_to`, `spam_tag_level`, `spam_tag2_level`, `spam_kill_level`, `spam_dsn_cutoff_level`, `spam_quarantine_cutoff_level`, `addr_extension_virus`, `addr_extension_spam`, `addr_extension_banned`, `addr_extension_bad_header`, `warnvirusrecip`, `warnbannedrecip`, `warnbadhrecip`, `newvirus_admin`, `virus_admin`, `banned_admin`, `bad_header_admin`, `spam_admin`, `spam_subject_tag`, `spam_subject_tag2`, `message_size_limit`, `banned_rulenames`, `rspamd_greylisting`, `rspamd_spam_greylisting_level`, `rspamd_spam_tag_level`, `rspamd_spam_tag_method`, `rspamd_spam_kill_level`) VALUES(6, 1, 0, 'riud', 'riud', 'r', 'Trigger happy', 'N', 'N', 'N', 'N', 'N', 'N', 'N', 'N', 'Y', NULL, NULL, NULL, NULL, NULL, NULL, 3, 5, 5, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, 'y', 2.00, 4.00, 'rewrite_subject', 8.00); -+INSERT INTO `spamfilter_policy` (`id`, `sys_userid`, `sys_groupid`, `sys_perm_user`, `sys_perm_group`, `sys_perm_other`, `policy_name`, `virus_lover`, `spam_lover`, `banned_files_lover`, `bad_header_lover`, `bypass_virus_checks`, `bypass_spam_checks`, `bypass_banned_checks`, `bypass_header_checks`, `spam_modifies_subj`, `virus_quarantine_to`, `spam_quarantine_to`, `banned_quarantine_to`, `bad_header_quarantine_to`, `clean_quarantine_to`, `other_quarantine_to`, `spam_tag_level`, `spam_tag2_level`, `spam_kill_level`, `spam_dsn_cutoff_level`, `spam_quarantine_cutoff_level`, `addr_extension_virus`, `addr_extension_spam`, `addr_extension_banned`, `addr_extension_bad_header`, `warnvirusrecip`, `warnbannedrecip`, `warnbadhrecip`, `newvirus_admin`, `virus_admin`, `banned_admin`, `bad_header_admin`, `spam_admin`, `spam_subject_tag`, `spam_subject_tag2`, `message_size_limit`, `banned_rulenames`, `rspamd_greylisting`, `rspamd_spam_greylisting_level`, `rspamd_spam_tag_level`, `rspamd_spam_tag_method`, `rspamd_spam_kill_level`) VALUES(7, 1, 0, 'riud', 'riud', 'r', 'Permissive', 'N', 'N', 'N', 'Y', 'N', 'N', 'N', 'N', 'Y', NULL, NULL, NULL, NULL, NULL, NULL, 3, 10, 20, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, 'n', 7.00, 10.00, 'rewrite_subject', 20.00); - - -- -------------------------------------------------------- - diff --git a/interface/web/admin/form/server_config.tform.php.orig b/interface/web/admin/form/server_config.tform.php.orig deleted file mode 100644 index 1a6c8070cb..0000000000 --- a/interface/web/admin/form/server_config.tform.php.orig +++ /dev/null @@ -1,1956 +0,0 @@ -<?php - -/* - Form Definition - - Tabledefinition - - Datatypes: - - INTEGER (Forces the input to Int) - - DOUBLE - - CURRENCY (Formats the values to currency notation) - - VARCHAR (no format check, maxlength: 255) - - TEXT (no format check) - - DATE (Dateformat, automatic conversion to timestamps) - - Formtype: - - TEXT (Textfield) - - TEXTAREA (Textarea) - - PASSWORD (Password textfield, input is not shown when edited) - - SELECT (Select option field) - - RADIO - - CHECKBOX - - CHECKBOXARRAY - - FILE - - VALUE: - - Wert oder Array - - Hint: - The ID field of the database table is not part of the datafield definition. - The ID field must be always auto incement (int or bigint). - - - */ - -$form["title"] = "Server Config"; -$form["description"] = ""; -$form["name"] = "server_config"; -$form["action"] = "server_config_edit.php"; -$form["db_table"] = "server"; -$form["db_table_idx"] = "server_id"; -$form["db_history"] = "yes"; -$form["tab_default"] = "server"; -$form["list_default"] = "server_config_list.php"; -$form["auth"] = 'yes'; // yes / no - -$form["auth_preset"]["userid"] = 0; // 0 = id of the user, > 0 id must match with id of current user -$form["auth_preset"]["groupid"] = 0; // 0 = default groupid of the user, > 0 id must match with groupid of current user -$form["auth_preset"]["perm_user"] = 'riud'; //r = read, i = insert, u = update, d = delete -$form["auth_preset"]["perm_group"] = 'riud'; //r = read, i = insert, u = update, d = delete -$form["auth_preset"]["perm_other"] = ''; //r = read, i = insert, u = update, d = delete - -$form["tabs"]['server'] = array( - 'title' => "Server", - 'width' => 70, - 'template' => "templates/server_config_server_edit.htm", - 'fields' => array( - //################################# - // Begin Datatable fields - //################################# - 'auto_network_configuration' => array( - 'datatype' => 'VARCHAR', - 'formtype' => 'CHECKBOX', - 'default' => 'n', - 'value' => array(0 => 'n', 1 => 'y') - ), - 'ip_address' => array( - 'datatype' => 'VARCHAR', - 'formtype' => 'TEXT', - 'default' => '192.168.0.105', - 'validators' => array(0 => array('type' => 'ISIPV4', - 'errmsg' => 'ip_address_error_wrong'), - ), - 'value' => '', - 'width' => '15', - 'maxlength' => '255' - ), - 'netmask' => array( - 'datatype' => 'VARCHAR', - 'formtype' => 'TEXT', - 'default' => '255.255.255.0', - 'validators' => array(0 => array('type' => 'ISIPV4', - 'errmsg' => 'netmask_error_wrong'), - ), - 'value' => '', - 'width' => '15', - 'maxlength' => '255' - ), - 'v6_prefix' => array( - 'datatype' => 'VARCHAR', - 'formtype' => 'TEXT', - 'validators' => array( 0 => array('type' => 'ISV6PREFIX', - 'errmsg' => 'v6_prefix_wrong'), - 1 => array('type' => 'V6PREFIXEND', - 'errmsg' => 'v6_prefix_end'), - 2 => array('type' => 'V6PREFIXLENGTH', - 'errmsg' => 'v6_prefix_length') - ), - 'default' => '' - ), - 'gateway' => array( - 'datatype' => 'VARCHAR', - 'formtype' => 'TEXT', - 'default' => '192.168.0.1', - 'validators' => array(0 => array('type' => 'ISIPV4', - 'errmsg' => 'gateway_error_wrong'), - ), - 'value' => '', - 'width' => '15', - 'maxlength' => '255' - ), - 'firewall' => array( - 'datatype' => 'VARCHAR', - 'formtype' => 'SELECT', - 'default' => 'bastille', - 'value' => array('bastille' => 'bastille', 'ufw' => 'ufw'), - 'width' => '40', - 'maxlength' => '255' - ), - 'hostname' => array( - 'datatype' => 'VARCHAR', - 'formtype' => 'TEXT', - 'default' => 'server1.domain.tld', - 'filters' => array( 0 => array( 'event' => 'SAVE', - 'type' => 'IDNTOASCII'), - 1 => array( 'event' => 'SHOW', - 'type' => 'IDNTOUTF8'), - 2 => array( 'event' => 'SAVE', - 'type' => 'TOLOWER') - ), - 'validators' => array( 0 => array('type' => 'NOTEMPTY', - 'errmsg' => 'hostname_error_empty'), - 1 => array ('type' => 'REGEX', - 'regex' => '/^[\w\.\-]{2,255}\.[a-zA-Z0-9\-]{2,30}$/', - 'errmsg'=> 'hostname_error_regex'), - ), - 'value' => '', - 'width' => '40', - 'maxlength' => '255' - ), - 'nameservers' => array( - 'datatype' => 'VARCHAR', - 'formtype' => 'TEXT', - 'default' => '192.168.0.1,192.168.0.2', - 'validators' => array(0 => array('type' => 'NOTEMPTY', - 'errmsg' => 'nameservers_error_empty'), - ), - 'filters' => array( - 0 => array( 'event' => 'SAVE', - 'type' => 'STRIPTAGS'), - 1 => array( 'event' => 'SAVE', - 'type' => 'STRIPNL') - ), - 'value' => '', - 'width' => '40', - 'maxlength' => '255' - ), - 'loglevel' => array( - 'datatype' => 'INTEGER', - 'formtype' => 'SELECT', - 'default' => '2', - 'value' => array('0' => 'Debug', '1' => 'Warnings', '2' => 'Errors'), - 'width' => '40', - 'maxlength' => '255' - ), - 'admin_notify_events' => array( - 'datatype' => 'INTEGER', - 'formtype' => 'SELECT', - 'default' => '1', - 'value' => array('3' => 'no_notifications_txt', '0' => 'Debug', '1' => 'Warnings', '2' => 'Errors'), - 'width' => '40', - 'maxlength' => '255' - ), - 'backup_dir' => array( - 'datatype' => 'VARCHAR', - 'formtype' => 'TEXT', - 'default' => '/var/backup', - 'validators' => array( 0 => array ( 'type' => 'REGEX', - 'regex' => "/(|^\\/{1,2}(?:[\\w-]+[.]?\\/?){5,128})$/", - 'errmsg'=> 'backup_dir_error_regex'), - ), - 'value' => '', - 'width' => '40', - 'maxlength' => '255' - ), - 'backup_tmp' => array( - 'datatype' => 'VARCHAR', - 'formtype' => 'TEXT', - 'default' => '/tmp/', - 'validators' => array( 0 => array('type' => 'NOTEMPTY', - 'errmsg' => 'tmpdir_path_error_empty'), - 1 => array ( 'type' => 'REGEX', - 'regex' => "/^\/[a-zA-Z0-9\.\-\_\/]{3,128}$/", - 'errmsg'=> 'tmpdir_path_error_regex'), - ), - 'value' => '', - 'width' => '40', - 'maxlength' => '255' - ), - 'backup_dir_is_mount' => array( - 'datatype' => 'VARCHAR', - 'formtype' => 'CHECKBOX', - 'default' => 'y', - 'value' => array(0 => 'n', 1 => 'y') - ), - 'backup_mode' => array( - 'datatype' => 'VARCHAR', - 'formtype' => 'SELECT', - 'default' => 'userzip', - 'value' => array('userzip' => 'backup_mode_userzip', 'rootgz' => 'backup_mode_rootgz'), - 'width' => '40', - 'maxlength' => '255' - ), - 'backup_time' => array( - 'datatype' => 'VARCHAR', - 'formtype' => 'SELECT', - 'default' => '0:00', - 'value' => array( '0:00' => '0:00h', - '0:15' => '0:15h', - '0:30' => '0:30h', - '0:45' => '0:45h', - '1:00' => '1:00h', - '1:15' => '1:15h', - '1:30' => '1:30h', - '1:45' => '1:45h', - '2:00' => '2:00h', - '2:15' => '2:15h', - '2:30' => '2:30h', - '2:45' => '2:45h', - '3:00' => '3:00h', - '3:15' => '3:15h', - '3:30' => '3:30h', - '3:45' => '3:45h', - '4:00' => '4:00h', - '4:15' => '4:15h', - '4:30' => '4:30h', - '4:45' => '4:45h', - '5:00' => '5:00h', - '5:15' => '5:15h', - '5:30' => '5:30h', - '5:45' => '5:45h', - '6:00' => '6:00h', - '6:15' => '6:15h', - '6:30' => '6:30h', - '6:45' => '6:45h', - '7:00' => '7:00h', - '7:15' => '7:15h', - '7:30' => '7:30h', - '7:45' => '7:45h', - '8:00' => '8:00h', - '8:15' => '8:15h', - '8:30' => '8:30h', - '8:45' => '8:45h', - '9:00' => '9:00h', - '9:15' => '9:15h', - '9:30' => '9:30h', - '9:45' => '9:45h', - '10:00' => '10:00h', - '10:15' => '10:15h', - '10:30' => '10:30h', - '10:45' => '10:45h', - '11:00' => '11:00h', - '11:15' => '11:15h', - '11:30' => '11:30h', - '11:45' => '11:45h', - '12:00' => '12:00h', - '12:15' => '12:15h', - '12:30' => '12:30h', - '12:45' => '12:45h', - '13:00' => '13:00h', - '13:15' => '13:15h', - '13:30' => '13:30h', - '13:45' => '13:45h', - '14:00' => '14:00h', - '14:15' => '14:15h', - '14:30' => '14:30h', - '14:45' => '14:45h', - '15:00' => '15:00h', - '15:15' => '15:15h', - '15:30' => '15:30h', - '15:45' => '15:45h', - '16:00' => '16:00h', - '16:15' => '16:15h', - '16:30' => '16:30h', - '16:45' => '16:45h', - '17:00' => '17:00h', - '17:15' => '17:15h', - '17:30' => '17:30h', - '17:45' => '17:45h', - '18:00' => '18:00h', - '18:15' => '18:15h', - '18:30' => '18:30h', - '18:45' => '18:45h', - '19:00' => '19:00h', - '19:15' => '19:15h', - '19:30' => '19:30h', - '19:45' => '19:45h', - '20:00' => '20:00h', - '20:15' => '20:15h', - '20:30' => '20:30h', - '20:45' => '20:45h', - '21:00' => '21:00h', - '21:15' => '21:15h', - '21:30' => '21:30h', - '21:45' => '21:45h', - '22:00' => '22:00h', - '22:15' => '22:15h', - '22:30' => '22:30h', - '22:45' => '22:45h', - '23:00' => '23:00h', - '23:15' => '23:15h', - '23:30' => '23:30h', - '23:45' => '23:45h', - ), - 'width' => '40', - 'maxlength' => '255' - ), - 'backup_delete' => array( - 'datatype' => 'VARCHAR', - 'formtype' => 'CHECKBOX', - 'default' => 'y', - 'value' => array(0 => 'n', 1 => 'y') - ), - 'monit_url' => array( - 'datatype' => 'VARCHAR', - 'formtype' => 'TEXT', - 'default' => '', - 'validators' => array ( 0 => array ( 'type' => 'REGEX', - 'regex' => '/^[0-9a-zA-Z\:\/\-\.\[\]]{0,255}$/', - 'errmsg'=> 'monit_url_error_regex'), - ), - 'value' => '', - 'width' => '40', - 'maxlength' => '255' - ), - 'monit_user' => array( - 'datatype' => 'VARCHAR', - 'formtype' => 'TEXT', - 'filters' => array( - 0 => array( 'event' => 'SAVE', - 'type' => 'STRIPTAGS'), - 1 => array( 'event' => 'SAVE', - 'type' => 'STRIPNL') - ), - 'default' => '', - 'value' => '', - 'width' => '40', - 'maxlength' => '255' - ), - 'monit_password' => array( - 'datatype' => 'VARCHAR', - 'formtype' => 'TEXT', - 'default' => '', - 'value' => '', - 'width' => '40', - 'maxlength' => '255' - ), - 'munin_url' => array( - 'datatype' => 'VARCHAR', - 'formtype' => 'TEXT', - 'default' => '', - 'validators' => array ( 0 => array ( 'type' => 'REGEX', - 'regex' => '/^[0-9a-zA-Z\:\/\-\.\[\]]{0,255}$/', - 'errmsg'=> 'munin_url_error_regex'), - ), - 'value' => '', - 'width' => '40', - 'maxlength' => '255' - ), - 'munin_user' => array( - 'datatype' => 'VARCHAR', - 'formtype' => 'TEXT', - 'filters' => array( - 0 => array( 'event' => 'SAVE', - 'type' => 'STRIPTAGS'), - 1 => array( 'event' => 'SAVE', - 'type' => 'STRIPNL') - ), - 'default' => '', - 'value' => '', - 'width' => '40', - 'maxlength' => '255' - ), - 'munin_password' => array( - 'datatype' => 'VARCHAR', - 'formtype' => 'TEXT', - 'default' => '', - 'value' => '', - 'width' => '40', - 'maxlength' => '255' - ), - 'monitor_system_updates' => array( - 'datatype' => 'VARCHAR', - 'formtype' => 'CHECKBOX', - 'default' => 'y', - 'value' => array(0 => 'n', 1 => 'y') - ), - 'log_retention' => array ( - 'datatype' => 'INTEGER', - 'formtype' => 'TEXT', - 'validators' => array ( 0 => array ( 'type' => 'ISPOSITIVE', - 'errmsg'=> 'log_retention_error_ispositive'), - ), - 'default' => '30', - 'value' => '', - 'width' => '4', - 'maxlength' => '4' - ), - 'migration_mode' => array( - 'datatype' => 'VARCHAR', - 'formtype' => 'CHECKBOX', - 'default' => 'n', - 'value' => array(0 => 'n', 1 => 'y') - ), - //################################# - // ENDE Datatable fields - //################################# - ) -); - -$form["tabs"]['mail'] = array( - 'title' => "Mail", - 'width' => 60, - 'template' => "templates/server_config_mail_edit.htm", - 'fields' => array( - //################################# - // Begin Datatable fields - //################################# - 'module' => array( - 'datatype' => 'VARCHAR', - 'formtype' => 'SELECT', - 'default' => '', - 'value' => array('postfix_mysql' => 'postfix_mysql') - ), - 'maildir_path' => array( - 'datatype' => 'VARCHAR', - 'formtype' => 'TEXT', - 'default' => '/home/vmail/[domain]/[localpart]/', - 'validators' => array( 0 => array('type' => 'NOTEMPTY', - 'errmsg' => 'maildir_path_error_empty'), - 1 => array ( 'type' => 'REGEX', - 'regex' => '/^\/[a-zA-Z0-9\.\-\_\/\[\]]{5,128}$/', - 'errmsg'=> 'maildir_path_error_regex'), - ), - 'value' => '', - 'width' => '40', - 'maxlength' => '255' - ), - 'maildir_format' => array( - 'datatype' => 'VARCHAR', - 'formtype' => 'SELECT', - 'default' => '20', - 'value' => array('maildir' => 'Maildir', 'mdbox' => 'mdbox') - ), - 'homedir_path' => array( - 'datatype' => 'VARCHAR', - 'formtype' => 'TEXT', - 'default' => '/home/vmail/', - 'validators' => array( 0 => array('type' => 'NOTEMPTY', - 'errmsg' => 'homedir_path_error_empty'), - 1 => array ( 'type' => 'REGEX', - 'regex' => '/^\/[a-zA-Z0-9\.\-\_\/]{5,128}$/', - 'errmsg'=> 'homedir_path_error_regex'), - ), - 'value' => '', - 'width' => '40', - 'maxlength' => '255' - ), - 'dkim_path' => array( - 'datatype' => 'VARCHAR', - 'formtype' => 'TEXT', - 'filters' => array( - 0 => array( 'event' => 'SAVE', - 'type' => 'STRIPTAGS'), - 1 => array( 'event' => 'SAVE', - 'type' => 'STRIPNL') - ), - 'default' => '/var/lib/amavis/dkim', - 'value' => '', - 'width' => '40', - 'maxlength' => '255' - ), - 'dkim_strength' => array( - 'datatype' => 'INTEGER', - 'formtype' => 'SELECT', - 'default' => '2048', - 'value' => array('1024' => 'weak (1024)', '2048' => 'normal (2048)', '4096' => 'strong (4096)') - ), - 'relayhost_password' => array( - 'datatype' => 'VARCHAR', - 'formtype' => 'TEXT', - 'default' => '', - 'value' => '', - 'width' => '40', - 'maxlength' => '255' - ), - - 'pop3_imap_daemon' => array( - 'datatype' => 'VARCHAR', - 'formtype' => 'SELECT', - 'default' => '20', - 'value' => array('courier' => 'Courier', 'dovecot' => 'Dovecot') - ), - 'mail_filter_syntax' => array( - 'datatype' => 'VARCHAR', - 'formtype' => 'SELECT', - 'default' => '20', - 'value' => array('maildrop' => 'Maildrop', 'sieve' => 'Sieve') - ), - 'mailuser_uid' => array( - 'datatype' => 'INTEGER', - 'formtype' => 'TEXT', - 'default' => '5000', - 'validators' => array( 0 => array('type' => 'NOTEMPTY', - 'errmsg' => 'mailuser_uid_error_empty'), - 1 => array('type' => 'RANGE', - 'range' => '1999:', - 'errmsg' => 'mailuser_uid_error_range'), - ), - 'value' => '', - 'width' => '10', - 'maxlength' => '255' - ), - 'mailuser_gid' => array( - 'datatype' => 'INTEGER', - 'formtype' => 'TEXT', - 'default' => '5000', - 'validators' => array( 0 => array('type' => 'NOTEMPTY', - 'errmsg' => 'mailuser_gid_error_empty'), - 1 => array('type' => 'RANGE', - 'range' => '1999:', - 'errmsg' => 'mailuser_gid_error_range'), - ), - 'value' => '', - 'width' => '10', - 'maxlength' => '255' - ), - 'mailuser_name' => array( - 'datatype' => 'VARCHAR', - 'formtype' => 'TEXT', - 'default' => 'vmail', - 'validators' => array( 0 => array('type' => 'NOTEMPTY', - 'errmsg' => 'mailuser_name_error_empty'), - 1 => array ( 'type' => 'REGEX', - 'regex' => '/^(?!ispconfig|root)([a-zA-Z0-9]{1,20})$/', - 'errmsg'=> 'mailuser_name_error_regex'), - ), - 'value' => '', - 'width' => '10', - 'maxlength' => '255' - ), - 'mailuser_group' => array( - 'datatype' => 'VARCHAR', - 'formtype' => 'TEXT', - 'default' => 'vmail', - 'validators' => array( 0 => array('type' => 'NOTEMPTY', - 'errmsg' => 'mailuser_group_error_empty'), - 1 => array ( 'type' => 'REGEX', - 'regex' => '/^(?!ispconfig|root)([a-zA-Z0-9]{1,20})$/', - 'errmsg'=> 'mailuser_group_name_error_regex'), - ), - 'value' => '', - 'width' => '10', - 'maxlength' => '255' - ), - 'mailbox_virtual_uidgid_maps' => array( - 'datatype' => 'VARCHAR', - 'formtype' => 'CHECKBOX', - 'validators' => array (0 => array ( 'type' => 'CUSTOM', - 'class' => 'validate_server_mail_config', - 'function' => 'mailbox_virtual_uidgid_maps'), - ), - 'default' => 'n', - 'value' => array(0 => 'n', 1 => 'y') - ), - 'relayhost' => array( - 'datatype' => 'VARCHAR', - 'formtype' => 'TEXT', - 'filters' => array( - 0 => array( 'event' => 'SAVE', - 'type' => 'STRIPTAGS'), - 1 => array( 'event' => 'SAVE', - 'type' => 'STRIPNL') - ), - 'default' => '', - 'value' => '', - 'width' => '40', - 'maxlength' => '255' - ), - 'relayhost_user' => array( - 'datatype' => 'VARCHAR', - 'formtype' => 'TEXT', - 'filters' => array( - 0 => array( 'event' => 'SAVE', - 'type' => 'STRIPTAGS'), - 1 => array( 'event' => 'SAVE', - 'type' => 'STRIPNL') - ), - 'default' => '', - 'value' => '', - 'width' => '40', - 'maxlength' => '255' - ), - 'relayhost_password' => array( - 'datatype' => 'VARCHAR', - 'formtype' => 'TEXT', - 'default' => '', - 'value' => '', - 'width' => '40', - 'maxlength' => '255' - ), - 'reject_sender_login_mismatch' => array ( - 'datatype' => 'VARCHAR', - 'formtype' => 'CHECKBOX', - 'default' => 'n', - 'value' => array(0 => 'n', 1 => 'y') - ), - 'mailbox_size_limit' => array( - 'datatype' => 'INTEGER', - 'formtype' => 'TEXT', - 'default' => '0', - 'value' => '', - 'width' => '10', - 'maxlength' => '15' - ), - 'message_size_limit' => array( - 'datatype' => 'INTEGER', - 'formtype' => 'TEXT', - 'default' => '0', - 'value' => '', - 'width' => '10', - 'maxlength' => '15' - ), - 'mailbox_quota_stats' => array ( - 'datatype' => 'VARCHAR', - 'formtype' => 'CHECKBOX', - 'default' => 'y', - 'value' => array(0 => 'n', 1 => 'y') - ), - 'realtime_blackhole_list' => array( - 'datatype' => 'VARCHAR', - 'formtype' => 'TEXT', - 'default' => '', - 'validators' => array ( 0 => array ( 'type' => 'REGEX', - 'regex' => '/^((([a-zA-Z0-9]|[a-zA-Z0-9][a-zA-Z0-9\-]*[a-zA-Z0-9])\.)+([A-Za-z0-9]|[A-Za-z0-9][A-Za-z0-9\-]*[A-Za-z0-9])(,\s*(([a-zA-Z0-9]|[a-zA-Z0-9][a-zA-Z0-9\-]*[a-zA-Z0-9])\.)+([A-Za-z0-9]|[A-Za-z0-9][A-Za-z0-9\-]*[A-Za-z0-9]))*)?$/', - 'errmsg'=> 'rbl_error_regex'), - ), - 'value' => '', - 'width' => '40', - 'maxlength' => '255' - ), - 'overquota_notify_admin' => array( - 'datatype' => 'VARCHAR', - 'formtype' => 'CHECKBOX', - 'default' => 'y', - 'value' => array(0 => 'n', 1 => 'y') - ), - 'overquota_notify_client' => array( - 'datatype' => 'VARCHAR', - 'formtype' => 'CHECKBOX', - 'default' => 'y', - 'value' => array(0 => 'n', 1 => 'y') - ), - 'overquota_notify_freq' => array( - 'datatype' => 'INTEGER', - 'formtype' => 'TEXT', - 'default' => '7', - 'value' => '', - 'width' => '20', - 'maxlength' => '255' - ), - 'overquota_notify_onok' => array( - 'datatype' => 'VARCHAR', - 'formtype' => 'CHECKBOX', - 'default' => 'n', - 'value' => array(0 => 'n', 1 => 'y') - ), - //################################# - // ENDE Datatable fields - //################################# - ) -); - -$form["tabs"]['getmail'] = array( - 'title' => "Getmail", - 'width' => 80, - 'template' => "templates/server_config_getmail_edit.htm", - 'fields' => array( - //################################# - // Begin Datatable fields - //################################# - 'getmail_config_dir' => array( - 'datatype' => 'VARCHAR', - 'formtype' => 'TEXT', - 'default' => '', - 'validators' => array( 0 => array('type' => 'NOTEMPTY', - 'errmsg' => 'getmail_config_dir_error_empty'), - 1 => array ( 'type' => 'REGEX', - 'regex' => '/^\/[a-zA-Z0-9\.\-\_\/]{5,128}$/', - 'errmsg'=> 'getmail_config_dir_error_regex'), - ), - 'value' => '', - 'width' => '40', - 'maxlength' => '255' - ), - //################################# - // ENDE Datatable fields - //################################# - ) -); - -$form["tabs"]['web'] = array( - 'title' => "Web", - 'width' => 60, - 'template' => "templates/server_config_web_edit.htm", - 'fields' => array( - //################################# - // Begin Datatable fields - //################################# - 'server_type' => array( - 'datatype' => 'VARCHAR', - 'formtype' => 'SELECT', - 'default' => 'apache', - 'value' => array('apache' => 'Apache', 'nginx' => 'Nginx') - ), - 'website_basedir' => array( - 'datatype' => 'VARCHAR', - 'formtype' => 'TEXT', - 'default' => '', - 'validators' => array( 0 => array('type' => 'NOTEMPTY', - 'errmsg' => 'website_basedir_error_empty'), - 1 => array ( 'type' => 'REGEX', - 'regex' => '/^\/[a-zA-Z0-9\.\-\_\/]{5,128}$/', - 'errmsg'=> 'website_basedir_error_regex'), - ), - 'value' => '', - 'width' => '40', - 'maxlength' => '255' - ), - 'website_path' => array( - 'datatype' => 'VARCHAR', - 'formtype' => 'TEXT', - 'default' => '', - 'validators' => array( 0 => array( 'type' => 'NOTEMPTY', - 'errmsg' => 'website_path_error_empty'), - 1 => array ( 'type' => 'REGEX', - 'regex' => '/^\/[a-zA-Z0-9\.\-\_\/\[\]]{5,128}$/', - 'errmsg'=> 'website_path_error_regex'), - ), - 'value' => '', - 'width' => '40', - 'maxlength' => '255' - ), - 'website_symlinks' => array( - 'datatype' => 'VARCHAR', - 'formtype' => 'TEXT', - 'default' => '', - 'validators' => array( 0 => array('type' => 'NOTEMPTY', - 'errmsg' => 'website_symlinks_error_empty'), - 1 => array ( 'type' => 'REGEX', - 'regex' => '/^\/[a-zA-Z0-9\.\-\_\/\[\]\:]{5,128}$/', - 'errmsg'=> 'website_symlinks_error_regex'), - ), - 'value' => '', - 'width' => '40', - 'maxlength' => '255' - ), - 'website_symlinks_rel' => array ( - 'datatype' => 'VARCHAR', - 'formtype' => 'CHECKBOX', - 'default' => 'n', - 'value' => array(0 => 'n', 1 => 'y') - ), - 'network_filesystem' => array ( - 'datatype' => 'VARCHAR', - 'formtype' => 'CHECKBOX', - 'default' => 'n', - 'value' => array(0 => 'n', 1 => 'y') - ), - 'website_autoalias' => array( - 'datatype' => 'VARCHAR', - 'formtype' => 'TEXT', - 'filters' => array( - 0 => array( 'event' => 'SAVE', - 'type' => 'STRIPTAGS'), - 1 => array( 'event' => 'SAVE', - 'type' => 'STRIPNL') - ), - 'default' => '', - 'value' => '', - 'width' => '40', - 'maxlength' => '255' - ), - 'vhost_rewrite_v6' => array ( - 'datatype' => 'VARCHAR', - 'formtype' => 'CHECKBOX', - 'default' => 'n', - 'value' => array(0 => 'n',1 => 'y') - ), - 'vhost_conf_dir' => array( - 'datatype' => 'VARCHAR', - 'formtype' => 'TEXT', - 'default' => '', - 'validators' => array( 0 => array('type' => 'NOTEMPTY', - 'errmsg' => 'vhost_conf_dir_error_empty'), - 1 => array ( 'type' => 'REGEX', - 'regex' => '/^\/[a-zA-Z0-9\.\-\_\/]{5,128}$/', - 'errmsg'=> 'vhost_conf_dir_error_regex'), - ), - 'value' => '', - 'width' => '40', - 'maxlength' => '255' - ), - 'vhost_conf_enabled_dir' => array( - 'datatype' => 'VARCHAR', - 'formtype' => 'TEXT', - 'default' => '', - 'validators' => array( 0 => array('type' => 'NOTEMPTY', - 'errmsg' => 'vhost_conf_enabled_dir_error_empty'), - 1 => array ( 'type' => 'REGEX', - 'regex' => '/^\/[a-zA-Z0-9\.\-\_\/]{5,128}$/', - 'errmsg'=> 'vhost_conf_enabled_dir_error_regex'), - ), - 'value' => '', - 'width' => '40', - 'maxlength' => '255' - ), - 'nginx_enable_pagespeed' => array ( - 'datatype' => 'VARCHAR', - 'formtype' => 'CHECKBOX', - 'default' => 'n', - 'value' => array(0 => 'n',1 => 'y') - ), - 'nginx_vhost_conf_dir' => array( - 'datatype' => 'VARCHAR', - 'formtype' => 'TEXT', - 'default' => '', - 'validators' => array( 0 => array('type' => 'NOTEMPTY', - 'errmsg' => 'nginx_vhost_conf_dir_error_empty'), - 1 => array ( 'type' => 'REGEX', - 'regex' => '/^\/[a-zA-Z0-9\.\-\_\/]{5,128}$/', - 'errmsg'=> 'nginx_vhost_conf_dir_error_regex'), - ), - 'value' => '', - 'width' => '40', - 'maxlength' => '255' - ), - 'nginx_vhost_conf_enabled_dir' => array( - 'datatype' => 'VARCHAR', - 'formtype' => 'TEXT', - 'default' => '', - 'validators' => array( 0 => array('type' => 'NOTEMPTY', - 'errmsg' => 'nginx_vhost_conf_enabled_dir_error_empty'), - 1 => array ( 'type' => 'REGEX', - 'regex' => '/^\/[a-zA-Z0-9\.\-\_\/]{5,128}$/', - 'errmsg'=> 'nginx_vhost_conf_enabled_dir_error_regex'), - ), - 'value' => '', - 'width' => '40', - 'maxlength' => '255' - ), - 'CA_path' => array( - 'datatype' => 'VARCHAR', - 'formtype' => 'TEXT', - 'validators' => array( 0 => array ( 'type' => 'REGEX', - 'regex' => '/^[a-zA-Z0-9\.\-\_\/]{0,128}$/', - 'errmsg'=> 'ca_path_error_regex'), - ), - 'default' => '', - 'value' => '', - 'width' => '40', - 'maxlength' => '255' - ), - 'CA_pass' => array( - 'datatype' => 'VARCHAR', - 'formtype' => 'TEXT', - 'default' => '', - 'value' => '', - 'width' => '40', - 'maxlength' => '255' - ), - 'security_level' => array( - 'datatype' => 'VARCHAR', - 'formtype' => 'SELECT', - 'default' => '20', - 'value' => array('10' => 'Medium', '20' => 'High') - ), - 'set_folder_permissions_on_update' => array( - 'datatype' => 'VARCHAR', - 'formtype' => 'CHECKBOX', - 'default' => 'n', - 'value' => array(0 => 'n', 1 => 'y') - ), - 'web_folder_protection' => array( - 'datatype' => 'VARCHAR', - 'formtype' => 'CHECKBOX', - 'default' => 'y', - 'value' => array(0 => 'n', 1 => 'y') - ), - 'add_web_users_to_sshusers_group' => array( - 'datatype' => 'VARCHAR', - 'formtype' => 'CHECKBOX', - 'default' => 'y', - 'value' => array(0 => 'n', 1 => 'y') - ), - 'check_apache_config' => array( - 'datatype' => 'VARCHAR', - 'formtype' => 'CHECKBOX', - 'default' => 'y', - 'value' => array(0 => 'n', 1 => 'y') - ), - 'enable_sni' => array( - 'datatype' => 'VARCHAR', - 'formtype' => 'CHECKBOX', - 'default' => 'y', - 'value' => array(0 => 'n', 1 => 'y') - ), - 'enable_ip_wildcard' => array( - 'datatype' => 'VARCHAR', - 'formtype' => 'CHECKBOX', - 'default' => 'y', - 'value' => array(0 => 'n', 1 => 'y') - ), - 'logging' => array( - 'datatype' => 'VARCHAR', - 'formtype' => 'SELECT', - 'default' => 'yes', - 'value' => array('yes' => 'Yes', 'anon' => 'Anonymize IP', 'no' => 'No') - ), - 'overtraffic_notify_admin' => array( - 'datatype' => 'VARCHAR', - 'formtype' => 'CHECKBOX', - 'default' => 'y', - 'value' => array(0 => 'n', 1 => 'y') - ), - 'overtraffic_notify_client' => array( - 'datatype' => 'VARCHAR', - 'formtype' => 'CHECKBOX', - 'default' => 'y', - 'value' => array(0 => 'n', 1 => 'y') - ), - 'overquota_notify_admin' => array( - 'datatype' => 'VARCHAR', - 'formtype' => 'CHECKBOX', - 'default' => 'y', - 'value' => array(0 => 'n', 1 => 'y') - ), - 'overquota_notify_client' => array( - 'datatype' => 'VARCHAR', - 'formtype' => 'CHECKBOX', - 'default' => 'y', - 'value' => array(0 => 'n', 1 => 'y') - ), - 'overquota_db_notify_admin' => array( - 'datatype' => 'VARCHAR', - 'formtype' => 'CHECKBOX', - 'default' => 'y', - 'value' => array(0 => 'n', 1 => 'y') - ), - 'overquota_db_notify_client' => array( - 'datatype' => 'VARCHAR', - 'formtype' => 'CHECKBOX', - 'default' => 'y', - 'value' => array(0 => 'n', 1 => 'y') - ), - 'overquota_notify_freq' => array( - 'datatype' => 'INTEGER', - 'formtype' => 'TEXT', - 'default' => '7', - 'value' => '', - 'width' => '20', - 'maxlength' => '255' - ), - 'overquota_notify_onok' => array( - 'datatype' => 'VARCHAR', - 'formtype' => 'CHECKBOX', - 'default' => 'n', - 'value' => array(0 => 'n', 1 => 'y') - ), - 'user' => array( - 'datatype' => 'VARCHAR', - 'formtype' => 'TEXT', - 'default' => '', - 'validators' => array(0 => array('type' => 'NOTEMPTY', - 'errmsg' => 'apache_user_error_empty'), - 1 => array( - 'type' => 'CUSTOM', - 'class' => 'validate_systemuser', - 'function' => 'check_sysuser', - 'check_names' => false, - 'errmsg' => 'invalid_apache_user_txt' - ), - ), - 'value' => '', - 'width' => '40', - 'maxlength' => '255' - ), - 'group' => array( - 'datatype' => 'VARCHAR', - 'formtype' => 'TEXT', - 'default' => '', - 'validators' => array(0 => array('type' => 'NOTEMPTY', - 'errmsg' => 'apache_group_error_empty'), - 1 => array( - 'type' => 'CUSTOM', - 'class' => 'validate_systemuser', - 'function' => 'check_sysgroup', - 'check_names' => false, - 'errmsg' => 'invalid_apache_group_txt' - ), - ), - 'value' => '', - 'width' => '40', - 'maxlength' => '255' - ), - 'connect_userid_to_webid' => array( - 'datatype' => 'VARCHAR', - 'formtype' => 'CHECKBOX', - 'default' => 'n', - 'value' => array(0 => 'n', 1 => 'y') - ), - 'connect_userid_to_webid_start' => array( - 'datatype' => 'VARCHAR', - 'formtype' => 'TEXT', - 'default' => '10000', - 'validators' => array(0 => array('type' => 'ISINT', - 'errmsg' => 'connect_userid_to_webid_startid_isint'), - ), - 'value' => '', - 'width' => '40', - 'maxlength' => '255' - ), - 'nginx_user' => array( - 'datatype' => 'VARCHAR', - 'formtype' => 'TEXT', - 'default' => '', - 'validators' => array( 0 => array('type' => 'NOTEMPTY', - 'errmsg' => 'nginx_user_error_empty'), - 1 => array( - 'type' => 'CUSTOM', - 'class' => 'validate_systemuser', - 'function' => 'check_sysuser', - 'check_names' => false, - 'errmsg' => 'invalid_nginx_user_txt' - ), - ), - 'value' => '', - 'width' => '40', - 'maxlength' => '255' - ), - 'nginx_group' => array( - 'datatype' => 'VARCHAR', - 'formtype' => 'TEXT', - 'default' => '', - 'validators' => array( 0 => array('type' => 'NOTEMPTY', - 'errmsg' => 'nginx_group_error_empty'), - 1 => array( - 'type' => 'CUSTOM', - 'class' => 'validate_systemuser', - 'function' => 'check_sysgroup', - 'check_names' => false, - 'errmsg' => 'invalid_nginx_group_txt' - ), - ), - 'value' => '', - 'width' => '40', - 'maxlength' => '255' - ), - 'php_ini_path_apache' => array( - 'datatype' => 'VARCHAR', - 'formtype' => 'TEXT', - 'default' => '', - 'validators' => array( 0 => array('type' => 'NOTEMPTY', - 'errmsg' => 'php_ini_path_apache_error_empty'), - 1 => array ( 'type' => 'REGEX', - 'regex' => '/^\/[a-zA-Z0-9\.\-\_\/]{5,128}$/', - 'errmsg'=> 'php_ini_path_apache_error_regex'), - ), - 'value' => '', - 'width' => '40', - 'maxlength' => '255' - ), - 'php_ini_path_cgi' => array( - 'datatype' => 'VARCHAR', - 'formtype' => 'TEXT', - 'default' => '', - 'validators' => array( 0 => array('type' => 'NOTEMPTY', - 'errmsg' => 'php_ini_path_cgi_error_empty'), - 1 => array ( 'type' => 'REGEX', - 'regex' => '/^\/[a-zA-Z0-9\.\-\_\/]{5,128}$/', - 'errmsg'=> 'php_ini_path_cgi_error_regex'), - ), - 'value' => '', - 'width' => '40', - 'maxlength' => '255' - ), - 'php_default_name' => array( - 'datatype' => 'VARCHAR', - 'formtype' => 'TEXT', - 'default' => 'Default', - 'validators' => array( 0 => array('type' => 'NOTEMPTY', - 'errmsg' => 'php_default_name_error_empty'), - ), - 'filters' => array( - 0 => array( 'event' => 'SAVE', - 'type' => 'TRIM'), - 1 => array( 'event' => 'SAVE', - 'type' => 'STRIPTAGS'), - 2 => array( 'event' => 'SAVE', - 'type' => 'STRIPNL') - ), - 'width' => '40', - 'maxlength' => '255' - ), - 'php_fpm_init_script' => array( - 'datatype' => 'VARCHAR', - 'formtype' => 'TEXT', - 'default' => '', - 'validators' => array( 0 => array('type' => 'NOTEMPTY', - 'errmsg' => 'php_fpm_init_script_error_empty'), - 1 => array ( 'type' => 'REGEX', - 'regex' => '/^[a-zA-Z0-9\.\-\_]{1,128}$/', - 'errmsg'=> 'php_fpm_init_script_error_regex'), - ), - 'value' => '', - 'width' => '40', - 'maxlength' => '255' - ), - 'php_fpm_ini_path' => array( - 'datatype' => 'VARCHAR', - 'formtype' => 'TEXT', - 'default' => '', - 'validators' => array( 0 => array('type' => 'NOTEMPTY', - 'errmsg' => 'php_fpm_ini_path_error_empty'), - 1 => array ( 'type' => 'REGEX', - 'regex' => '/^\/[a-zA-Z0-9\.\-\_\/]{5,128}$/', - 'errmsg'=> 'php_fpm_ini_path_error_regex'), - ), - 'value' => '', - 'width' => '40', - 'maxlength' => '255' - ), - 'php_fpm_pool_dir' => array( - 'datatype' => 'VARCHAR', - 'formtype' => 'TEXT', - 'default' => '', - 'validators' => array( 0 => array('type' => 'NOTEMPTY', - 'errmsg' => 'php_fpm_pool_dir_error_empty'), - 1 => array ( 'type' => 'REGEX', - 'regex' => '/^\/[a-zA-Z0-9\.\-\_\/]{5,128}$/', - 'errmsg'=> 'php_fpm_pool_dir_error_regex'), - ), - 'value' => '', - 'width' => '40', - 'maxlength' => '255' - ), - 'php_fpm_start_port' => array( - 'datatype' => 'VARCHAR', - 'formtype' => 'TEXT', - 'default' => '', - 'validators' => array(0 => array('type' => 'ISPOSITIVE', - 'errmsg' => 'php_fpm_start_port_error_empty'), - ), - 'value' => '', - 'width' => '40', - 'maxlength' => '255' - ), - 'php_fpm_socket_dir' => array( - 'datatype' => 'VARCHAR', - 'formtype' => 'TEXT', - 'default' => '', - 'validators' => array( 0 => array('type' => 'NOTEMPTY', - 'errmsg' => 'php_fpm_socket_dir_error_empty'), - 1 => array ( 'type' => 'REGEX', - 'regex' => '/^\/[a-zA-Z0-9\.\-\_\/]{5,128}$/', - 'errmsg'=> 'php_fpm_socket_dir_error_regex'), - ), - 'value' => '', - 'width' => '40', - 'maxlength' => '255' - ), - 'php_open_basedir' => array( - 'datatype' => 'VARCHAR', - 'formtype' => 'TEXT', - 'default' => '', - 'validators' => array( 0 => array('type' => 'NOTEMPTY', - 'errmsg' => 'php_open_basedir_error_empty'), - 1 => array ( 'type' => 'REGEX', - 'regex' => '/^[a-zA-Z0-9\.\-\_\/\]\[\:]{1,}$/', - 'errmsg'=> 'php_open_basedir_error_regex'), - ), - 'value' => '', - 'width' => '40', - 'maxlength' => '4000' - ), - 'php_ini_check_minutes' => array( - 'datatype' => 'INTEGER', - 'formtype' => 'TEXT', - 'default' => '1', - 'validators' => array(0 => array('type' => 'NOTEMPTY', - 'errmsg' => 'php_ini_check_minutes_error_empty'), - ), - 'value' => '', - 'width' => '10', - 'maxlength' => '255' - ), - 'php_handler' => array( - 'datatype' => 'VARCHAR', - 'formtype' => 'SELECT', - 'default' => 'fast-cgi', - 'value' => array('no' => 'disabled_txt', 'fast-cgi' => 'Fast-CGI', 'cgi' => 'CGI', 'mod' => 'Mod-PHP', 'suphp' => 'SuPHP', 'php-fpm' => 'PHP-FPM', 'hhvm' => 'HHVM'), - 'searchable' => 2 - ), - 'php_fpm_incron_reload' => array( - 'datatype' => 'VARCHAR', - 'formtype' => 'CHECKBOX', - 'default' => 'y', - 'value' => array(0 => 'n', 1 => 'y') - ), - 'nginx_cgi_socket' => array( - 'datatype' => 'VARCHAR', - 'formtype' => 'TEXT', - 'default' => '', - 'validators' => array( 0 => array('type' => 'NOTEMPTY', - 'errmsg' => 'nginx_cgi_socket_empty'), - 1 => array ( 'type' => 'REGEX', - 'regex' => '/^\/[a-zA-Z0-9\.\-\_\/]{1,128}$/', - 'errmsg'=> 'nginx_cgi_socket_error_regex'), - ), - 'value' => '', - 'width' => '40', - 'maxlength' => '255' - ), - 'htaccess_allow_override' => array( - 'datatype' => 'VARCHAR', - 'formtype' => 'TEXT', - 'default' => '', - 'validators' => array( 0 => array('type' => 'NOTEMPTY', - 'errmsg' => 'htaccess_allow_override_error_empty'), - ), - 'filters' => array( - 0 => array( 'event' => 'SAVE', - 'type' => 'STRIPTAGS'), - 1 => array( 'event' => 'SAVE', - 'type' => 'STRIPNL') - ), - 'value' => '', - 'width' => '40', - 'maxlength' => '255' - ), - 'enable_spdy' => array ( - 'datatype' => 'VARCHAR', - 'formtype' => 'CHECKBOX', - 'default' => 'y', - 'value' => array ( - 0 => 'n', - 1 => 'y' - ) - ), - 'apps_vhost_enabled' => array ( - 'datatype' => 'VARCHAR', - 'formtype' => 'CHECKBOX', - 'default' => 'y', - 'value' => array (0 => 'n', 1 => 'y') - ), - 'apps_vhost_port' => array( - 'datatype' => 'VARCHAR', - 'formtype' => 'TEXT', - 'default' => '8081', - 'validators' => array(0 => array('type' => 'NOTEMPTY', - 'errmsg' => 'apps_vhost_port_error_empty'), - ), - 'filters' => array( - 0 => array( 'event' => 'SAVE', - 'type' => 'STRIPTAGS'), - 1 => array( 'event' => 'SAVE', - 'type' => 'STRIPNL') - ), - 'value' => '', - 'width' => '40', - 'maxlength' => '255' - ), - 'apps_vhost_ip' => array( - 'datatype' => 'VARCHAR', - 'formtype' => 'TEXT', - 'default' => '_default_', - 'validators' => array(0 => array('type' => 'NOTEMPTY', - 'errmsg' => 'apps_vhost_ip_error_empty'), - ), - 'filters' => array( - 0 => array( 'event' => 'SAVE', - 'type' => 'STRIPTAGS'), - 1 => array( 'event' => 'SAVE', - 'type' => 'STRIPNL') - ), - 'value' => '', - 'width' => '40', - 'maxlength' => '255' - ), - 'apps_vhost_servername' => array( - 'datatype' => 'VARCHAR', - 'formtype' => 'TEXT', - 'filters' => array( - 0 => array( 'event' => 'SAVE', - 'type' => 'STRIPTAGS'), - 1 => array( 'event' => 'SAVE', - 'type' => 'STRIPNL') - ), - 'default' => '', - 'value' => '', - 'width' => '40', - 'maxlength' => '255' - ), - 'awstats_conf_dir' => array( - 'datatype' => 'VARCHAR', - 'formtype' => 'TEXT', - 'filters' => array( - 0 => array( 'event' => 'SAVE', - 'type' => 'STRIPTAGS'), - 1 => array( 'event' => 'SAVE', - 'type' => 'STRIPNL') - ), - 'default' => '', - 'value' => '', - 'width' => '40', - 'maxlength' => '255' - ), - 'awstats_data_dir' => array( - 'datatype' => 'VARCHAR', - 'formtype' => 'TEXT', - 'validators' => array( 0 => array('type' => 'NOTEMPTY', - 'errmsg' => 'awstats_data_dir_empty'), - 1 => array ( 'type' => 'REGEX', - 'regex' => '/^\/[a-zA-Z0-9\.\-\_\/]{1,128}$/', - 'errmsg'=> 'awstats_data_dir_error_regex'), - ), - 'default' => '', - 'value' => '', - 'width' => '40', - 'maxlength' => '255' - ), - 'awstats_pl' => array( - 'datatype' => 'VARCHAR', - 'formtype' => 'TEXT', - 'validators' => array( 0 => array('type' => 'NOTEMPTY', - 'errmsg' => 'awstats_pl_empty'), - 1 => array ( 'type' => 'REGEX', - 'regex' => '/^\/[a-zA-Z0-9\.\-\_\/]{1,128}$/', - 'errmsg'=> 'awstats_pl_error_regex'), - ), - 'default' => '', - 'value' => '', - 'width' => '40', - 'maxlength' => '255' - ), - 'awstats_buildstaticpages_pl' => array( - 'datatype' => 'VARCHAR', - 'formtype' => 'TEXT', - 'validators' => array( 0 => array('type' => 'NOTEMPTY', - 'errmsg' => 'awstats_buildstaticpages_pl_empty'), - 1 => array ( 'type' => 'REGEX', - 'regex' => '/^\/[a-zA-Z0-9\.\-\_\/]{1,128}$/', - 'errmsg'=> 'awstats_buildstaticpages_pl_error_regex'), - ), - 'default' => '', - 'value' => '', - 'width' => '40', - 'maxlength' => '255' - ), - 'skip_le_check' => array ( - 'datatype' => 'VARCHAR', - 'formtype' => 'CHECKBOX', - 'default' => 'n', - 'value' => array ( - 0 => 'n', - 1 => 'y' - ) - ), - 'php_fpm_reload_mode' => array( - 'datatype' => 'VARCHAR', - 'formtype' => 'SELECT', - 'default' => 'reload', - 'value' => array('reload' => 'Reload', 'restart' => 'Restart'), - 'width' => '40', - 'maxlength' => '255' - ), - //################################# - // ENDE Datatable fields - //################################# - ) -); - -$form["tabs"]['dns'] = array( - 'title' => "DNS", - 'width' => 60, - 'template' => "templates/server_config_dns_edit.htm", - 'fields' => array( - //################################# - // Begin Datatable fields - //################################# - 'bind_user' => array( - 'datatype' => 'VARCHAR', - 'formtype' => 'TEXT', - 'default' => '', - 'validators' => array( 0 => array('type' => 'NOTEMPTY', - 'errmsg' => 'bind_user_error_empty'), - 1 => array ( 'type' => 'REGEX', - 'regex' => '/^(?!ispconfig)([a-zA-Z0-9]{1,20})$/', - 'errmsg'=> 'invalid_bind_user_txt'), - ), - 'value' => '', - 'width' => '40', - 'maxlength' => '255' - ), - 'bind_group' => array( - 'datatype' => 'VARCHAR', - 'formtype' => 'TEXT', - 'default' => '', - 'validators' => array( 0 => array('type' => 'NOTEMPTY', - 'errmsg' => 'bind_group_error_empty'), - 1 => array ( 'type' => 'REGEX', - 'regex' => '/^(?!ispconfig)([a-zA-Z0-9]{1,20})$/', - 'errmsg'=> 'invalid_bind_group_txt'), - ), - 'value' => '', - 'width' => '40', - 'maxlength' => '255' - ), - 'bind_zonefiles_dir' => array( - 'datatype' => 'VARCHAR', - 'formtype' => 'TEXT', - 'default' => '', - 'validators' => array( 0 => array('type' => 'NOTEMPTY', - 'errmsg' => 'bind_zonefiles_dir_error_empty'), - 1 => array ( 'type' => 'REGEX', - 'regex' => '/^\/[a-zA-Z0-9\.\-\_\/]{1,128}$/', - 'errmsg'=> 'bind_zonefiles_dir_error_regex'), - ), - 'value' => '', - 'width' => '40', - 'maxlength' => '255' - ), - 'named_conf_path' => array( - 'datatype' => 'VARCHAR', - 'formtype' => 'TEXT', - 'default' => '', - 'validators' => array( 0 => array('type' => 'NOTEMPTY', - 'errmsg' => 'named_conf_path_error_empty'), - 1 => array ( 'type' => 'REGEX', - 'regex' => '/^\/[a-zA-Z0-9\.\-\_\/]{1,128}$/', - 'errmsg'=> 'named_conf_path_error_regex'), - ), - 'value' => '', - 'width' => '40', - 'maxlength' => '255' - ), - 'named_conf_local_path' => array( - 'datatype' => 'VARCHAR', - 'formtype' => 'TEXT', - 'default' => '', - 'validators' => array( 0 => array('type' => 'NOTEMPTY', - 'errmsg' => 'named_conf_local_path_error_empty'), - 1 => array ( 'type' => 'REGEX', - 'regex' => '/^\/[a-zA-Z0-9\.\-\_\/]{1,128}$/', - 'errmsg'=> 'named_conf_local_path_error_regex'), - ), - 'value' => '', - 'width' => '40', - 'maxlength' => '255' - ), - 'disable_bind_log' => array ( - 'datatype' => 'VARCHAR', - 'formtype' => 'CHECKBOX', - 'default' => 'n', - 'value' => array(0 => 'n', 1 => 'y') - ), - //################################# - // ENDE Datatable fields - //################################# - ) -); - -$form["tabs"]['fastcgi'] = array( - 'title' => "FastCGI", - 'width' => 80, - 'template' => "templates/server_config_fastcgi_edit.htm", - 'fields' => array( - //################################# - // Begin Datatable fields - //################################# - 'fastcgi_starter_path' => array( - 'datatype' => 'VARCHAR', - 'formtype' => 'TEXT', - 'default' => '', - 'validators' => array( 0 => array('type' => 'NOTEMPTY', - 'errmsg' => 'fastcgi_starter_path_error_empty'), - 1 => array ( 'type' => 'REGEX', - 'regex' => '/^\/[a-zA-Z0-9\.\-\_\/\[\]]{1,128}$/', - 'errmsg'=> 'fastcgi_starter_path_error_regex'), - ), - 'value' => '', - 'width' => '40', - 'maxlength' => '255' - ), - 'fastcgi_starter_script' => array( - 'datatype' => 'VARCHAR', - 'formtype' => 'TEXT', - 'default' => '', - 'validators' => array( 0 => array('type' => 'NOTEMPTY', - 'errmsg' => 'fastcgi_starter_script_error_empty'), - 1 => array ( 'type' => 'REGEX', - 'regex' => '/^[a-zA-Z0-9\.\-\_\/]{1,128}$/', - 'errmsg'=> 'fastcgi_starter_script_error_regex'), - ), - 'value' => '', - 'width' => '40', - 'maxlength' => '255' - ), - 'fastcgi_alias' => array( - 'datatype' => 'VARCHAR', - 'formtype' => 'TEXT', - 'default' => '', - 'validators' => array( 0 => array('type' => 'NOTEMPTY', - 'errmsg' => 'fastcgi_alias_error_empty'), - 1 => array ( 'type' => 'REGEX', - 'regex' => '/^[a-zA-Z0-9\.\-\_\/]{1,128}$/', - 'errmsg'=> 'fastcgi_alias_error_regex'), - ), - 'value' => '', - 'width' => '40', - 'maxlength' => '255' - ), - 'fastcgi_phpini_path' => array( - 'datatype' => 'VARCHAR', - 'formtype' => 'TEXT', - 'default' => '', - 'validators' => array( 0 => array('type' => 'NOTEMPTY', - 'errmsg' => 'fastcgi_phpini_path_error_empty'), - 1 => array ( 'type' => 'REGEX', - 'regex' => '/^\/[a-zA-Z0-9\.\-\_\/\[\]]{1,128}$/', - 'errmsg'=> 'fastcgi_phpini_path_error_regex'), - ), - 'value' => '', - 'width' => '40', - 'maxlength' => '255' - ), - 'fastcgi_children' => array( - 'datatype' => 'VARCHAR', - 'formtype' => 'TEXT', - 'default' => '', - 'validators' => array(0 => array('type' => 'ISPOSITIVE', - 'errmsg' => 'fastcgi_children_error_empty'), - ), - 'value' => '', - 'width' => '40', - 'maxlength' => '255' - ), - 'fastcgi_max_requests' => array( - 'datatype' => 'VARCHAR', - 'formtype' => 'TEXT', - 'default' => '', - 'validators' => array( 0 => array( 'type' => 'ISINT', - 'errmsg' => 'fastcgi_max_requests_error_empty'), - 1 => array( 'type' => 'RANGE', - 'range' => '0:', - 'errmsg' => 'fastcgi_max_requests_error_empty'), - ), - 'value' => '', - 'width' => '40', - 'maxlength' => '255' - ), - 'fastcgi_bin' => array( - 'datatype' => 'VARCHAR', - 'formtype' => 'TEXT', - 'default' => '', - 'validators' => array( 0 => array('type' => 'NOTEMPTY', - 'errmsg' => 'fastcgi_bin_error_empty'), - 1 => array ( 'type' => 'REGEX', - 'regex' => '/^\/[a-zA-Z0-9\.\-\_\/\[\]]{1,128}$/', - 'errmsg'=> 'fastcgi_bin_error_regex'), - ), - 'value' => '', - 'width' => '40', - 'maxlength' => '255' - ), - 'fastcgi_config_syntax' => array( - 'datatype' => 'INTEGER', - 'formtype' => 'SELECT', - 'default' => '2', - 'value' => array('1' => 'Old (apache 2.0)', '2' => 'New (apache 2.2)'), - 'width' => '40', - 'maxlength' => '255' - ), - //################################# - // ENDE Datatable fields - //################################# - ) -); - - -$form["tabs"]['xmpp'] = array( - 'title' => "XMPP", - 'width' => 80, - 'template' => "templates/server_config_xmpp_edit.htm", - 'fields' => array( - //################################# - // Begin Datatable fields - //################################# - 'xmpp_use_ipv6' => array( - 'datatype' => 'VARCHAR', - 'formtype' => 'CHECKBOX', - 'default' => 'n', - 'value' => array(0 => 'n', 1 => 'y') - ), - 'xmpp_bosh_max_inactivity' => array( - 'datatype' => 'VARCHAR', - 'formtype' => 'TEXT', - 'default' => '30', - 'validators' => array(0 => array('type' => 'ISINT', - 'errmsg' => 'ip_address_error_wrong'), - array('type'=>'RANGE', 'range'=>'15:360', 'errmsg' => 'xmpp_bosh_timeout_range_wrong') - ), - 'value' => '', - 'width' => '15' - ), - - 'xmpp_server_admins' => array( - 'datatype' => 'VARCHAR', - 'formtype' => 'TEXT', - 'filters' => array( - 0 => array( 'event' => 'SAVE', - 'type' => 'STRIPTAGS'), - 1 => array( 'event' => 'SAVE', - 'type' => 'STRIPNL') - ), - 'default' => 'admin@service.com, superuser@service.com', - 'value' => '', - 'width' => '15' - ), - - 'xmpp_modules_enabled' => array( - 'datatype' => 'TEXT', - 'formtype' => 'TEXT', - 'filters' => array( - 0 => array( 'event' => 'SAVE', - 'type' => 'STRIPTAGS'), - 1 => array( 'event' => 'SAVE', - 'type' => 'STRIPNL') - ), - 'default' => "saslauth, tls, dialback, disco, discoitems, version, uptime, time, ping, admin_adhoc, admin_telnet, bosh, posix, announce, offline, webpresence, mam, stream_management, message_carbons", - 'value' => '', - 'separator' => "," - ), - - 'xmpp_port_http' => array( - 'datatype' => 'VARCHAR', - 'formtype' => 'TEXT', - 'default' => '5290', - 'validators' => array(0 => array('type' => 'ISINT')), - 'value' => '5290', - 'width' => '15' - ), - 'xmpp_port_https' => array( - 'datatype' => 'VARCHAR', - 'formtype' => 'TEXT', - 'default' => '5291', - 'validators' => array(0 => array('type' => 'ISINT')), - 'value' => '5291', - 'width' => '15' - ), - 'xmpp_port_pastebin' => array( - 'datatype' => 'VARCHAR', - 'formtype' => 'TEXT', - 'default' => '5292', - 'validators' => array(0 => array('type' => 'ISINT')), - 'value' => '5292', - 'width' => '15' - ), - 'xmpp_port_bosh' => array( - 'datatype' => 'VARCHAR', - 'formtype' => 'TEXT', - 'default' => '5280', - 'validators' => array(0 => array('type' => 'ISINT')), - 'value' => '5280', - 'width' => '15' - ), - //################################# - // ENDE Datatable fields - //################################# - ) -); - -$form["tabs"]['jailkit'] = array( - 'title' => "Jailkit", - 'width' => 80, - 'template' => "templates/server_config_jailkit_edit.htm", - 'fields' => array( - //################################# - // Begin Datatable fields - //################################# - 'jailkit_chroot_home' => array( - 'datatype' => 'VARCHAR', - 'formtype' => 'TEXT', - 'default' => '', - 'validators' => array( 0 => array('type' => 'NOTEMPTY', - 'errmsg' => 'jailkit_chroot_home_error_empty'), - 1 => array ( 'type' => 'REGEX', - 'regex' => '/^\/[a-zA-Z0-9\.\-\_\/\[\]]{1,128}$/', - 'errmsg'=> 'jailkit_chroot_home_error_regex'), - ), - 'value' => '', - 'width' => '40', - 'maxlength' => '255' - ), - 'jailkit_chroot_app_sections' => array( - 'datatype' => 'VARCHAR', - 'formtype' => 'TEXT', - 'default' => '', - 'validators' => array( 0 => array('type' => 'NOTEMPTY', - 'errmsg' => 'jailkit_chroot_app_sections_error_empty'), - 1 => array ( 'type' => 'REGEX', - 'regex' => '/^[a-zA-Z0-9\-\_\ ]{1,128}$/', - 'errmsg'=> 'jailkit_chroot_app_sections_error_regex'), - ), - 'value' => '', - 'width' => '40', - 'maxlength' => '1000' - ), - 'jailkit_chroot_app_programs' => array( - 'datatype' => 'VARCHAR', - 'formtype' => 'TEXT', - 'default' => '', - 'validators' => array( 0 => array('type' => 'NOTEMPTY', - 'errmsg' => 'jailkit_chroot_app_programs_error_empty'), - 1 => array ( 'type' => 'REGEX', - 'regex' => '/^[a-zA-Z0-9\.\-\_\/\ ]{1,}$/', - 'errmsg'=> 'jailkit_chroot_app_programs_error_regex'), - ), - 'value' => '', - 'width' => '40', - 'maxlength' => '1000' - ), - 'jailkit_chroot_cron_programs' => array( - 'datatype' => 'VARCHAR', - 'formtype' => 'TEXT', - 'default' => '', - 'validators' => array( 0 => array('type' => 'NOTEMPTY', - 'errmsg' => 'jailkit_chroot_cron_programs_error_empty'), - 1 => array ( 'type' => 'REGEX', - 'regex' => '/^[a-zA-Z0-9\.\-\_\/\ ]{1,}$/', - 'errmsg'=> 'jailkit_chroot_cron_programs_error_regex'), - ), - 'value' => '', - 'width' => '40', - 'maxlength' => '1000' - ), - //################################# - // ENDE Datatable fields - //################################# - ) -); - -/* -$form["tabs"]['ufw_firewall'] = array ( - 'title' => "UFW Firewall", - 'width' => 80, - 'template' => "templates/server_config_ufw_edit.htm", - 'fields' => array ( - ################################## - # Begin Datatable fields - ################################## - 'ufw_enable' => array ( - 'datatype' => 'VARCHAR', - 'formtype' => 'CHECKBOX', - 'default' => 'no', - 'value' => array(0 => 'no',1 => 'yes') - ), - 'ufw_manage_builtins' => array ( - 'datatype' => 'VARCHAR', - 'formtype' => 'CHECKBOX', - 'default' => 'no', - 'value' => array(0 => 'no',1 => 'yes') - ), - 'ufw_ipv6' => array ( - 'datatype' => 'VARCHAR', - 'formtype' => 'CHECKBOX', - 'default' => 'no', - 'value' => array(0 => 'no',1 => 'yes') - ), - 'ufw_default_input_policy' => array ( - 'datatype' => 'VARCHAR', - 'formtype' => 'SELECT', - 'default' => 'ACCEPT', - 'value' => array('ACCEPT' => 'accept', 'DROP' => 'drop', 'REJECT' => 'reject') - ), - 'ufw_default_output_policy' => array ( - 'datatype' => 'VARCHAR', - 'formtype' => 'SELECT', - 'default' => 'ACCEPT', - 'value' => array('ACCEPT' => 'accept', 'DROP' => 'drop', 'REJECT' => 'reject') - ), - 'ufw_default_forward_policy' => array ( - 'datatype' => 'VARCHAR', - 'formtype' => 'SELECT', - 'default' => 'ACCEPT', - 'value' => array('ACCEPT' => 'accept', 'DROP' => 'drop', 'REJECT' => 'reject') - ), - 'ufw_default_application_policy' => array ( - 'datatype' => 'VARCHAR', - 'formtype' => 'SELECT', - 'default' => 'DROP', - 'value' => array('ACCEPT' => 'accept', 'DROP' => 'drop', 'REJECT' => 'reject') - ), - 'ufw_log_level' => array ( - 'datatype' => 'VARCHAR', - 'formtype' => 'SELECT', - 'default' => 'low', - 'value' => array('low' => 'low', 'medium' => 'medium', 'high' => 'high') - ) - ################################## - # ENDE Datatable fields - ################################## - ) -); -*/ - -$form["tabs"]['vlogger'] = array( - 'title' => "vlogger", - 'width' => 80, - 'template' => "templates/server_config_vlogger_edit.htm", - 'fields' => array( - //################################# - // Begin Datatable fields - //################################# - 'config_dir' => array( - 'datatype' => 'VARCHAR', - 'formtype' => 'TEXT', - 'default' => '', - 'validators' => array( 0 => array('type' => 'NOTEMPTY', - 'errmsg' => 'vlogger_config_dir_error_empty'), - 1 => array ( 'type' => 'REGEX', - 'regex' => '/^\/[a-zA-Z0-9\.\-\_\/]{1,128}$/', - 'errmsg'=> 'vlogger_config_dir_error_regex'), - ), - 'value' => '', - 'width' => '40', - 'maxlength' => '255' - ), - //################################# - // ENDE Datatable fields - //################################# - ) -); - - - -$form["tabs"]['cron'] = array( - 'title' => "Cron", - 'width' => 80, - 'template' => "templates/server_config_cron_edit.htm", - 'fields' => array( - //################################# - // Begin Datatable fields - //################################# - 'init_script' => array( - 'datatype' => 'VARCHAR', - 'formtype' => 'TEXT', - 'default' => '', - 'validators' => array( 0 => array('type' => 'NOTEMPTY', - 'errmsg' => 'cron_init_script_error_empty'), - 1 => array ( 'type' => 'REGEX', - 'regex' => '/^[a-zA-Z0-9\-\_]{1,30}$/', - 'errmsg'=> 'cron_init_script_error_regex'), - ), - 'value' => '', - 'width' => '40', - 'maxlength' => '255' - ), - 'crontab_dir' => array( - 'datatype' => 'VARCHAR', - 'formtype' => 'TEXT', - 'default' => '', - 'validators' => array( 0 => array('type' => 'NOTEMPTY', - 'errmsg' => 'crontab_dir_error_empty'), - 1 => array ( 'type' => 'REGEX', - 'regex' => '/^\/[a-zA-Z0-9\.\-\_\/]{1,128}$/', - 'errmsg'=> 'crontab_dir_error_regex'), - ), - 'value' => '', - 'width' => '40', - 'maxlength' => '255' - ), - 'wget' => array( - 'datatype' => 'VARCHAR', - 'formtype' => 'TEXT', - 'default' => '', - 'validators' => array( 0 => array('type' => 'NOTEMPTY', - 'errmsg' => 'cron_wget_error_empty'), - 1 => array ( 'type' => 'REGEX', - 'regex' => '/^\/[a-zA-Z0-9\.\-\_\/]{1,128}$/', - 'errmsg'=> 'cron_wget_error_regex'), - ), - 'value' => '', - 'width' => '40', - 'maxlength' => '255' - ), - //################################# - // ENDE Datatable fields - //################################# - ) -); - -$form["tabs"]['rescue'] = array( - 'title' => "Rescue", - 'width' => 80, - 'template' => "templates/server_config_rescue_edit.htm", - 'fields' => array( - //################################# - // Begin Datatable fields - //################################# - 'try_rescue' => array( - 'datatype' => 'VARCHAR', - 'formtype' => 'CHECKBOX', - 'default' => 'n', - 'value' => array(0 => 'n', 1 => 'y') - ), - 'do_not_try_rescue_httpd' => array( - 'datatype' => 'VARCHAR', - 'formtype' => 'CHECKBOX', - 'default' => 'n', - 'value' => array(0 => 'n', 1 => 'y') - ), - 'do_not_try_rescue_mongodb' => array( - 'datatype' => 'VARCHAR', - 'formtype' => 'CHECKBOX', - 'default' => 'n', - 'value' => array(0 => 'n', 1 => 'y') - ), - 'do_not_try_rescue_mysql' => array( - 'datatype' => 'VARCHAR', - 'formtype' => 'CHECKBOX', - 'default' => 'n', - 'value' => array(0 => 'n', 1 => 'y') - ), - 'do_not_try_rescue_mail' => array( - 'datatype' => 'VARCHAR', - 'formtype' => 'CHECKBOX', - 'default' => 'n', - 'value' => array(0 => 'n', 1 => 'y') - ), - //################################# - // ENDE Datatable fields - //################################# - ) -); -?> diff --git a/interface/web/admin/lib/lang/de_server_config.lng.orig b/interface/web/admin/lib/lang/de_server_config.lng.orig deleted file mode 100644 index 108bf96de8..0000000000 --- a/interface/web/admin/lib/lang/de_server_config.lng.orig +++ /dev/null @@ -1,299 +0,0 @@ -<?php -$wb['jailkit_chroot_home_txt'] = 'Jailkit Chroot home'; -$wb['jailkit_chroot_app_sections_txt'] = 'Jailkit Chroot Anwendungsbereiche'; -$wb['jailkit_chroot_app_programs_txt'] = 'Jailkit Chrooted Anwendungen'; -$wb['jailkit_chroot_cron_programs_txt'] = 'Jailkit Cron Chrooted Anwendungen'; -$wb['website_path_txt'] = 'Webseiten Pfad'; -$wb['website_symlinks_txt'] = 'Webseiten Symlinks'; -$wb['website_symlinks_rel_txt'] = 'Erstelle relative Symlinks'; -$wb['vhost_conf_dir_txt'] = 'vHost Konfigurationsverzeichnis'; -$wb['vhost_conf_enabled_dir_txt'] = 'vHost config enabled dir'; -$wb['getmail_config_dir_txt'] = 'Getmail Konfigurationsverzeichnis'; -$wb['fastcgi_starter_path_txt'] = 'FastCGI Starter Pfad'; -$wb['fastcgi_starter_script_txt'] = 'FastCGI Starter Script'; -$wb['fastcgi_alias_txt'] = 'FastCGI Alias'; -$wb['fastcgi_phpini_path_txt'] = 'FastCGI php.ini Pfad'; -$wb['fastcgi_children_txt'] = 'FastCGI Children'; -$wb['fastcgi_max_requests_txt'] = 'FastCGI max. Anfragen'; -$wb['fastcgi_bin_txt'] = 'FastCGI Bin'; -$wb['module_txt'] = 'Modul'; -$wb['maildir_path_txt'] = 'Maildir Pfad'; -$wb['maildir_format_txt'] = 'Maildir Format'; -$wb['homedir_path_txt'] = 'Homedir Pfad'; -$wb['dkim_path_txt'] = 'DKIM Pfad'; -$wb['mailuser_uid_txt'] = 'Mailbenutzer UID'; -$wb['mailuser_gid_txt'] = 'Mailbenutzer GID'; -$wb['mailuser_name_txt'] = 'Mailbenutzer Name'; -$wb['mailuser_group_txt'] = 'Mailbenutzer Gruppe'; -$wb['mailbox_virtual_uidgid_maps_txt'] = 'Website Linux Uid für Mailboxen'; -$wb['mailbox_virtual_uidgid_maps_info_txt'] = 'nur für einzel-Server Installationen.'; -$wb['mailbox_virtual_uidgid_maps_error_nosingleserver'] = 'Uid kann in Multiserver-Umgebung nicht gemappt werden.'; -$wb['mailbox_virtual_uidgid_maps_error_nodovecot'] = 'Uid Mapping funktioniert nur in Verbindung mit dovecot.'; -$wb['mailbox_virtual_uidgid_maps_error_alreadyusers'] = 'Uid Mapping kann nur umgeschaltet werden, wenn noch keine Mailuser angelegt sind.'; -$wb['relayhost_txt'] = 'Relayhost'; -$wb['relayhost_user_txt'] = 'Relayhost Benutzer'; -$wb['relayhost_password_txt'] = 'Relayhost Passwort'; -$wb['reject_sender_login_mismatch_txt'] = 'Zurückweisen von Mails, wenn Sender nicht gleich Login'; -$wb['mailbox_size_limit_txt'] = 'E-Mailkonto Beschränkung'; -$wb['message_size_limit_txt'] = 'E-Mailgrößen Beschränkung'; -$wb['ip_address_txt'] = 'IP Adresse'; -$wb['netmask_txt'] = 'Netzmaske'; -$wb['gateway_txt'] = 'Gateway'; -$wb['hostname_txt'] = 'Hostname'; -$wb['nameservers_txt'] = 'Nameserver'; -$wb['auto_network_configuration_txt'] = 'Netzwerkkonfiguration'; -$wb['website_basedir_txt'] = 'Webseiten basedir'; -$wb['website_autoalias_txt'] = 'Webseiten Autoalias'; -$wb['website_autoalias_note_txt'] = 'Platzhalter:'; -$wb['ip_address_error_wrong'] = 'Ungültiges IP Adressen Format.'; -$wb['netmask_error_wrong'] = 'Ungültiges Netzmasken Format.'; -$wb['gateway_error_wrong'] = 'Ungültiges Gateway Format.'; -$wb['hostname_error_empty'] = 'Hostname ist leer.'; -$wb['nameservers_error_empty'] = 'Nameserver ist leer.'; -$wb['config_dir_txt'] = 'Konfigurationsverzeichnis'; -$wb['init_script_txt'] = 'Cron init Script Name'; -$wb['crontab_dir_txt'] = 'Pfad für individuelle Crontabs'; -$wb['wget_txt'] = 'Pfad zum wget Programm'; -$wb['web_user_txt'] = 'Apache Benutzer'; -$wb['web_group_txt'] = 'Apache Gruppe'; -$wb['security_level_txt'] = 'Sicherheitslevel'; -$wb['loglevel_txt'] = 'Loglevel'; -$wb['apps_vhost_port_txt'] = 'Apps vHost Port'; -$wb['apps_vhost_ip_txt'] = 'Apps vHost IP Adresse'; -$wb['apps_vhost_servername_txt'] = 'Apps vHost Domain'; -$wb['bind_user_txt'] = 'BIND Benutzer'; -$wb['bind_group_txt'] = 'BIND Gruppe'; -$wb['bind_zonefiles_dir_txt'] = 'BIND Zonefiles Verzeichnis'; -$wb['named_conf_path_txt'] = 'BIND named.conf Pfad'; -$wb['bind_user_error_empty'] = 'BIND Benutzer ist leer.'; -$wb['bind_group_error_empty'] = 'BIND Gruppe ist leer.'; -$wb['bind_zonefiles_dir_error_empty'] = 'BIND Zonefiles Verzeichnis ist leer.'; -$wb['named_conf_path_error_empty'] = 'BIND named.conf Pfad ist leer.'; -$wb['named_conf_local_path_error_empty'] = 'BIND named.conf.local Pfad ist leer.'; -$wb['mail_filter_syntax_txt'] = 'E-Mailfilter Syntax'; -$wb['pop3_imap_daemon_txt'] = 'POP3/IMAP Dämon'; -$wb['php_open_basedir_txt'] = 'PHP open_basedir'; -$wb['php_open_basedir_error_empty'] = 'PHP open_basedir ist leer.'; -$wb['htaccess_allow_override_txt'] = '.htaccess AllowOverride'; -$wb['htaccess_allow_override_error_empty'] = '.htaccess AllowOverride ist leer.'; -$wb['awstats_conf_dir_txt'] = 'AWStats Konfigurationsverzeichnis'; -$wb['awstats_data_dir_txt'] = 'AWStats Datenverzeichnis'; -$wb['awstats_pl_txt'] = 'AWStats awstats.pl Script'; -$wb['awstats_buildstaticpages_pl_txt'] = 'AWStats awstats_buildstaticpages.pl Script'; -$wb['backup_dir_txt'] = 'Backupverzeichnis'; -$wb['backup_tmp_txt'] = 'Backup tmp-Dir (zip)'; -$wb['named_conf_local_path_txt'] = 'BIND named.conf.local Pfad'; -$wb['php_ini_path_cgi_txt'] = 'CGI php.ini Pfad'; -$wb['php_ini_path_apache_txt'] = 'Apache php.ini Pfad'; -$wb['check_apache_config_txt'] = 'Teste Apache Konfiguration beim Neustart'; -$wb['CA_path_txt'] = 'CA Pfad'; -$wb['CA_pass_txt'] = 'CA Passwort'; -$wb['ufw_enable_txt'] = 'Aktivieren'; -$wb['ufw_manage_builtins_txt'] = 'Verwalte Builtin Rules'; -$wb['ufw_ipv6_txt'] = 'Aktiviere IPv6'; -$wb['ufw_default_input_policy_txt'] = 'Default Input Policy'; -$wb['ufw_default_output_policy_txt'] = 'Default Output Policy'; -$wb['ufw_default_forward_policy_txt'] = 'Default Forward Policy'; -$wb['ufw_default_application_policy_txt'] = 'Default Application Policy'; -$wb['ufw_log_level_txt'] = 'Loglevel'; -$wb['network_config_warning_txt'] = 'Die Netzwerk Konfiguration Option ist nur auf Debian- und Ubuntu Servern verfügbar. Aktivieren Sie diese Option nicht, falls Ihr Netzwerk Interface nicht eth0 heißt.'; -$wb['server_type_txt'] = 'Server Typ'; -$wb['nginx_vhost_conf_dir_txt'] = 'Nginx vHost Konfigurations Verzeichnis'; -$wb['nginx_vhost_conf_enabled_dir_txt'] = 'Nginx vHost config enabled dir'; -$wb['nginx_user_txt'] = 'Nginx Benutzer'; -$wb['nginx_group_txt'] = 'Nginx Gruppe'; -$wb['nginx_cgi_socket_txt'] = 'Nginx CGI Socket'; -$wb['backup_dir_error_empty'] = 'Backup Verzeichnis ist leer.'; -$wb['tmpdir_path_error_empty'] = 'Tmp-Dir Pfad ist leer.'; -$wb['tmpdir_path_error_regex'] = 'Invalid Tmp-Dir Pfad.'; -$wb['maildir_path_error_empty'] = 'Maildir Pfad ist leer.'; -$wb['homedir_path_error_empty'] = 'Homedir Pfad ist leer.'; -$wb['mailuser_uid_error_empty'] = 'Mail Benutzer UID ist leer.'; -$wb['mailuser_gid_error_empty'] = 'Mail Benutzer GID ist leer.'; -$wb['mailuser_name_error_empty'] = 'Mail Benutzer Name ist leer.'; -$wb['mailuser_group_error_empty'] = 'Mail Benutzer Gruppe ist leer.'; -$wb['getmail_config_dir_error_empty'] = 'Getmail config dir ist leer.'; -$wb['website_basedir_error_empty'] = 'Webseiten basedir ist leer.'; -$wb['website_path_error_empty'] = 'Webseiten Pfad ist leer.'; -$wb['website_symlinks_error_empty'] = 'Webseiten Symlinks ist leer.'; -$wb['vhost_conf_dir_error_empty'] = 'vHost config dir ist leer.'; -$wb['vhost_conf_enabled_dir_error_empty'] = 'vHost config enabled dir ist leer.'; -$wb['nginx_vhost_conf_dir_error_empty'] = 'Nginx vHost config dir ist leer.'; -$wb['nginx_vhost_conf_enabled_dir_error_empty'] = 'Nginx vHost config enabled dir ist leer.'; -$wb['apache_user_error_empty'] = 'Apache Benutzer ist leer.'; -$wb['apache_group_error_empty'] = 'Apache Grupp ist leer.'; -$wb['nginx_user_error_empty'] = 'Nginx Benutzer ist leer.'; -$wb['nginx_group_error_empty'] = 'Nginx Gruppe ist leer.'; -$wb['php_ini_path_apache_error_empty'] = 'Apache php.ini Pfad ist leer.'; -$wb['php_ini_path_cgi_error_empty'] = 'CGI php.ini Pfad ist leer.'; -$wb['nginx_cgi_socket_empty'] = 'Nginx CGI Socket ist leer.'; -$wb['apps_vhost_port_error_empty'] = 'Apps vHost Port ist leer.'; -$wb['apps_vhost_ip_error_empty'] = 'Apps vHost IP Adresse ist leer.'; -$wb['fastcgi_starter_path_error_empty'] = 'FastCGI Starter Pfad ist leer.'; -$wb['fastcgi_starter_script_error_empty'] = 'FastCGI Starter Script ist leer.'; -$wb['fastcgi_alias_error_empty'] = 'FastCGI Alias ist leer.'; -$wb['fastcgi_phpini_path_error_empty'] = 'FastCGI php.ini Pfad ist leer.'; -$wb['fastcgi_children_error_empty'] = 'FastCGI Children ist leer.'; -$wb['fastcgi_max_requests_error_empty'] = 'FastCGI max. Requests ist leer.'; -$wb['fastcgi_bin_error_empty'] = 'FastCGI Bin ist leer.'; -$wb['jailkit_chroot_home_error_empty'] = 'Jailkit Chroot home ist leer.'; -$wb['jailkit_chroot_app_sections_error_empty'] = 'Jailkit Chroot Anwendungsbereiche ist leer.'; -$wb['jailkit_chroot_app_programs_error_empty'] = 'Jailkit Chrooted Anwendungen ist leer.'; -$wb['jailkit_chroot_cron_programs_error_empty'] = 'Jailkit Cron Chrooted Anwendungen ist leer.'; -$wb['vlogger_config_dir_error_empty'] = 'Konfigurationsverzeichnis ist leer.'; -$wb['cron_init_script_error_empty'] = 'Cron Startscript Name ist leer.'; -$wb['crontab_dir_error_empty'] = 'Pfad für individuelle Crontabs ist leer.'; -$wb['cron_wget_error_empty'] = 'Pfad zum wget Programm ist leer.'; -$wb['php_fpm_init_script_txt'] = 'PHP-FPM Init Script'; -$wb['php_fpm_init_script_error_empty'] = 'PHP-FPM Init Script ist leer.'; -$wb['php_fpm_ini_path_txt'] = 'PHP-FPM php.ini Pfad'; -$wb['php_fpm_ini_path_error_empty'] = 'PHP-FPM php.ini Pfad ist leer.'; -$wb['php_fpm_pool_dir_txt'] = 'PHP-FPM Pool Verzeichnis'; -$wb['php_fpm_pool_dir_error_empty'] = 'PHP-FPM Pool Verzeichnis ist leer.'; -$wb['php_fpm_start_port_txt'] = 'PHP-FPM Start Port'; -$wb['php_fpm_start_port_error_empty'] = 'PHP-FPM Start Port ist leer.'; -$wb['php_fpm_socket_dir_txt'] = 'PHP-FPM Socket Verzeichnis'; -$wb['php_fpm_socket_dir_error_empty'] = 'PHP-FPM Socket Verzeichnis ist leer.'; -$wb['fastcgi_config_syntax_txt'] = 'FastCGI Konfigurations Syntax'; -$wb['try_rescue_txt'] = 'Aktiviere Service Monitoring und Neustart bei Unerreichbarkeit'; -$wb['do_not_try_rescue_httpd_txt'] = 'Deaktiviere HTTPD Monitoring'; -$wb['do_not_try_rescue_mongodb_txt'] = 'Deaktiviere MongoDB Monitoring'; -$wb['do_not_try_rescue_mysql_txt'] = 'Deaktiviere MySQL Monitoring'; -$wb['do_not_try_rescue_mail_txt'] = 'Deaktiviere E-Mail Monitoring'; -$wb['rescue_description_txt'] = '<b>Information:</b> Falls Sie MySQL stoppen möchten, wählen Sie die Funktion \'Deaktiviere MySQL Monitoring\' und warten Sie 2 bis 3 Minuten. Wenn Sie nicht 2 bis 3 Minuten warten wird ISPConfig versuchen MySQL wieder zu starten.'; -$wb['enable_sni_txt'] = 'Aktiviere SNI'; -$wb['set_folder_permissions_on_update_txt'] = 'Verzeichnisberechtigungen beim Update setzen'; -$wb['add_web_users_to_sshusers_group_txt'] = 'Webbenutzer zur -sshusers- hinzufügen'; -$wb['connect_userid_to_webid_txt'] = 'Linux Userid mit webid verknüpfen'; -$wb['connect_userid_to_webid_start_txt'] = 'Start ID für userid/webid Verknüpfung'; -$wb['realtime_blackhole_list_txt'] = 'Realtime Blackhole Liste'; -$wb['realtime_blackhole_list_note_txt'] = '(Mehrere Realtime Blackhole Listen mit Kommas trennen)'; -$wb['ssl_settings_txt'] = 'SSL Einstellungen'; -$wb['permissions_txt'] = 'Berechtigungen'; -$wb['php_settings_txt'] = 'PHP Einstellungen'; -$wb['apps_vhost_settings_txt'] = 'Apps vHost Einstellungen'; -$wb['awstats_settings_txt'] = 'AWStats Einstellungen'; -$wb['backup_mode_txt'] = 'Backupmodus'; -$wb['backup_mode_userzip'] = 'Backup Dateien gehören dem Web Benutzer (.zip Datei)'; -$wb['backup_mode_rootgz'] = 'Backup aller Dateien des Webverzeichnisses als Root Benutzer'; -$wb['backup_time_txt'] = 'Backupzeit'; -$wb['firewall_txt'] = 'Firewall'; -$wb['mailbox_quota_stats_txt'] = 'E-Mailkonto Beschränkung Statistiken'; -$wb['enable_ip_wildcard_txt'] = 'IP Adressen Wildcard (*) aktivieren'; -$wb['web_folder_protection_txt'] = 'Webverzeichnis unveränderlich machen (erweiterte Attribute)'; -$wb['overtraffic_notify_admin_txt'] = 'Ãœberschreiten des Datentransfer Limits an den Administrator senden'; -$wb['overtraffic_notify_client_txt'] = 'Ãœberschreiten des Datentransfer Limits an den Kunden senden'; -$wb['rbl_error_regex'] = 'Bitte geben Sie gültige RBL-Hostnamen an.'; -$wb['overquota_notify_admin_txt'] = 'Quota-Warnungen an den Administrator senden'; -$wb['overquota_notify_client_txt'] = 'Quota-Warnungen an den Kunden senden'; -$wb['overquota_notify_onok_txt'] = 'Meldung an den Kunden senden, wenn Belegung wieder ok'; -$wb['overquota_notify_freq_txt'] = 'Quota-Warnung alle X Tage versenden'; -$wb['overquota_notify_freq_note_txt'] = '0 = Meldung nur einmalig versenden, keine Wiederholung'; -$wb['admin_notify_events_txt'] = 'Sende E-Mail an Administrator ab folgendem Level'; -$wb['no_notifications_txt'] = 'Keine Benachrichtigungen'; -$wb['monit_url_txt'] = 'Monit-URL'; -$wb['monit_user_txt'] = 'Monit-Benutzer'; -$wb['monit_password_txt'] = 'Monit-Passwort'; -$wb['monit_url_error_regex'] = 'Ungültige Monit-URL'; -$wb['monit_url_note_txt'] = 'Platzhalter:'; -$wb['munin_url_txt'] = 'Munin-URL'; -$wb['munin_user_txt'] = 'Munin-Benutzer'; -$wb['munin_password_txt'] = 'Munin-Passwort'; -$wb['munin_url_error_regex'] = 'Ungültige Munin-URL'; -$wb['munin_url_note_txt'] = 'Platzhalter:'; -$wb['backup_dir_is_mount_txt'] = 'Backupverzeichnis ist ein eigener Mount?'; -$wb['backup_dir_mount_cmd_txt'] = 'Mount-Befehl, falls Backupverzeichnis nicht gemountet'; -$wb['backup_delete_txt'] = 'Backups loeschen wenn eine Domain / Webseite geloescht wird'; -$wb['v6_prefix_txt'] = 'IPv6 Prefix'; -$wb['vhost_rewrite_v6_txt'] = 'Rewrite IPv6 on Mirror'; -$wb['v6_prefix_length'] = 'Prefix zu lang fuer angegebene IPv6-Adresse '; -$wb['monitor_system_updates_txt'] = 'Suche nach Linux updates'; -$wb['dkim_strength_txt'] = 'DKIM Stärke'; -$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.'; -$wb['maildir_path_error_regex'] = 'Invalid maildir path.'; -$wb['homedir_path_error_regex'] = 'Invalid homedir path.'; -$wb['mailuser_name_error_regex'] = 'Invalid mailuser name.'; -$wb['mailuser_group_name_error_regex'] = 'Invalid mailuser group name.'; -$wb['mailuser_uid_error_range'] = 'Mailuser uid must be >= 2000'; -$wb['mailuser_gid_error_range'] = 'Mailuser gid must be >= 2000'; -$wb['getmail_config_dir_error_regex'] = 'Invalid getmail config directory.'; -$wb['website_basedir_error_regex'] = 'Invalid website basedir or path too short, min. length 5 chars.'; -$wb['website_symlinks_error_regex'] = 'Invalid website symlinks.'; -$wb['vhost_conf_dir_error_regex'] = 'Invalid vhost config directory.'; -$wb['vhost_conf_enabled_dir_error_regex'] = 'Invalid vhost conf enabled directory.'; -$wb['nginx_vhost_conf_dir_error_regex'] = 'Invalid nginx config directory.'; -$wb['nginx_vhost_conf_enabled_dir_error_regex'] = 'Invalid nginx conf enabled directory.'; -$wb['ca_path_error_regex'] = 'Invalid CA path.'; -$wb['invalid_nginx_user_txt'] = 'Invalid nginx user.'; -$wb['invalid_nginx_group_txt'] = 'Invalid nginx group.'; -$wb['php_ini_path_apache_error_regex'] = 'Invalid apache php.ini path.'; -$wb['php_ini_path_cgi_error_regex'] = 'Invalid cgi php.ini path.'; -$wb['php_fpm_init_script_error_regex'] = 'Invalid php-fpm init script.'; -$wb['php_fpm_ini_path_error_regex'] = 'Invalid php-fpm ini path.'; -$wb['php_fpm_pool_dir_error_regex'] = 'Invalid php-fpm pool directory.'; -$wb['php_fpm_socket_dir_error_regex'] = 'Invalid php-fpm socket directory.'; -$wb['php_open_basedir_error_regex'] = 'Invalid php open_basedir.'; -$wb['awstats_data_dir_empty'] = 'awstats data directory is empty'; -$wb['awstats_data_dir_error_regex'] = 'Invalid awstats data directory.'; -$wb['awstats_pl_empty'] = 'awstats.pl setting is empty.'; -$wb['awstats_pl_error_regex'] = 'Invalid awstats.pl path.'; -$wb['awstats_buildstaticpages_pl_empty'] = 'awstats_buildstaticpages.pl is empty'; -$wb['awstats_buildstaticpages_pl_error_regex'] = 'Invalid awstats_buildstaticpages.pl path.'; -$wb['invalid_bind_user_txt'] = 'Invalid BIND user.'; -$wb['invalid_bind_group_txt'] = 'Invalid BIND group.'; -$wb['bind_zonefiles_dir_error_regex'] = 'Invalid BIND zonefiles directory.'; -$wb['named_conf_path_error_regex'] = 'Invalid named.conf path.'; -$wb['named_conf_local_path_error_regex'] = 'Invalid named.conf.local path.'; -$wb['fastcgi_starter_path_error_regex'] = 'Invalid fastcgi starter path.'; -$wb['fastcgi_starter_script_error_regex'] = 'Invalid fastcgi starter script.'; -$wb['fastcgi_alias_error_regex'] = 'Invalid fastcgi alias.'; -$wb['fastcgi_phpini_path_error_regex'] = 'Invalid fastcgi path.'; -$wb['fastcgi_bin_error_regex'] = 'Invalid fastcgi bin.'; -$wb['jailkit_chroot_home_error_regex'] = 'Invalid jaikit chroot home.'; -$wb['jailkit_chroot_app_sections_error_regex'] = 'Invalid jaikit chroot sections.'; -$wb['jailkit_chroot_app_programs_error_regex'] = 'Invalid jaikit chroot app programs.'; -$wb['jailkit_chroot_cron_programs_error_regex'] = 'Invalid jaikit chroot cron programs.'; -$wb['vlogger_config_dir_error_regex'] = 'Invalid vlogger config dir.'; -$wb['cron_init_script_error_regex'] = 'Invalid cron init script.'; -$wb['crontab_dir_error_regex'] = 'Invalid crontab directory.'; -$wb['cron_wget_error_regex'] = 'Invalid cron wget path.'; -$wb['network_filesystem_txt'] = 'Netzwerk-Dateisystem'; -$wb['overquota_db_notify_admin_txt'] = 'Datenbank-Quota-Warnungen an den Administrator senden'; -$wb['overquota_db_notify_client_txt'] = 'Datenbank-Quota-Warnungen an den Kunden senden'; -$wb['php_ini_check_minutes_txt'] = 'Prüfe php.ini alle X Minuten auf Änderungen'; -$wb['php_ini_check_minutes_error_empty'] = 'Bitte geben Sie einen Wert an, wie oft die php.ini auf Änderungen geprüft werden soll.'; -$wb['php_ini_check_minutes_info_txt'] = '0 = keine Prüfung'; -$wb['php_handler_txt'] = 'Standard-PHP-Handler'; -$wb['php_fpm_incron_reload_txt'] = 'Install incron trigger file to reload PHP-FPM'; -$wb['enable_spdy_txt'] = 'Stellt SPDY/HTTP2 zur Verfügung'; -$wb['disable_bind_log_txt'] = 'Disable bind9 messages for Loglevel WARN'; -$wb['apps_vhost_enabled_txt'] = 'Apps-vhost enabled'; -$wb['disabled_txt'] = 'Disabled'; -$wb['web_settings_txt'] = 'Web Server'; -$wb['xmpp_server_txt'] = 'XMPP Server'; -$wb['xmpp_use_ipv6_txt'] = 'Use IPv6'; -$wb['xmpp_bosh_max_inactivity_txt'] = 'Max. BOSH inactivity time'; -$wb['xmpp_bosh_timeout_range_wrong'] = 'Please enter a bosh timeout range between 15 - 360'; -$wb['xmpp_module_saslauth'] = 'saslauth'; -$wb['xmpp_server_admins_txt'] = 'Server Admins (JIDs)'; -$wb['xmpp_modules_enabled_txt'] = 'Serverwide enabled plugins (one per line)'; -$wb['xmpp_ports_txt'] = 'Component ports'; -$wb['xmpp_port_http_txt'] = 'HTTP'; -$wb['xmpp_port_https_txt'] = 'HTTPS'; -$wb['xmpp_port_pastebin_txt'] = 'Pastebin'; -$wb['xmpp_port_bosh_txt'] = 'BOSH'; -$wb['skip_le_check_txt'] = 'Skip Lets Encrypt Check'; -$wb['migration_mode_txt'] = 'Server Migration Mode'; -$wb['nginx_enable_pagespeed_txt'] = 'Makes Pagespeed available'; -$wb['logging_txt'] = 'Store website access and error logs'; -$wb['logging_desc_txt'] = 'Use Tools > Resync to apply changes to existing sites. For Apache, access and error log can be anonymized. For nginx, only the access log is anonymized, the error log will contain IP addresses.'; -$wb['log_retention_txt'] = 'Log retention (days)'; -$wb['log_retention_error_ispositive'] = 'Log retention must be a number > 0'; -$wb['php_default_name_txt'] = 'Beschreibung Standard PHP'; -$wb['php_default_name_error_empty'] = 'Beschreibung Standard PHP ist leer.'; -$wb['error_mailbox_message_size_txt'] = 'Mailboxgröße muss gleich oder größer als max. Nachrichtengröße sein.'; -$wb['php_fpm_reload_mode_txt'] = 'PHP-FPM reload Modus'; -?> diff --git a/interface/web/admin/lib/lang/de_server_config.lng.rej b/interface/web/admin/lib/lang/de_server_config.lng.rej deleted file mode 100644 index eeed14711e..0000000000 --- a/interface/web/admin/lib/lang/de_server_config.lng.rej +++ /dev/null @@ -1,11 +0,0 @@ ---- interface/web/admin/lib/lang/de_server_config.lng -+++ interface/web/admin/lib/lang/de_server_config.lng -@@ -295,4 +295,7 @@ $wb['log_retention_error_ispositive'] = 'Log retention must be a number > 0'; - $wb['php_default_name_txt'] = 'Beschreibung Standard PHP'; - $wb['php_default_name_error_empty'] = 'Beschreibung Standard PHP ist leer.'; - $wb['error_mailbox_message_size_txt'] = 'Mailboxgröße muss gleich oder größer als max. Nachrichtengröße sein.'; --?> -+$wb['content_filter_txt'] = 'Content-Filter'; -+$wb['rspamd_url_txt'] = 'Rspamd-URL'; -+$wb['rspamd_user_txt'] = 'Rspamd-Benutzer'; -+$wb['rspamd_password_txt'] = 'Rspamd-Passwort'; \ No newline at end of file diff --git a/interface/web/admin/lib/lang/en_server_config.lng.orig b/interface/web/admin/lib/lang/en_server_config.lng.orig deleted file mode 100644 index ac0ee42b90..0000000000 --- a/interface/web/admin/lib/lang/en_server_config.lng.orig +++ /dev/null @@ -1,300 +0,0 @@ -<?php -$wb["ufw_enable_txt"] = 'Enable'; -$wb["ufw_manage_builtins_txt"] = 'Manage Builtin Rules'; -$wb["ufw_ipv6_txt"] = 'Enable IPv6'; -$wb["ufw_default_input_policy_txt"] = 'Default Input Policy'; -$wb["ufw_default_output_policy_txt"] = 'Default Output Policy'; -$wb["ufw_default_forward_policy_txt"] = 'Default Forward Policy'; -$wb["ufw_default_application_policy_txt"] = 'Default Application Policy'; -$wb["ufw_log_level_txt"] = 'Log Level'; -$wb["jailkit_chroot_home_txt"] = 'Jailkit chroot home'; -$wb["jailkit_chroot_app_sections_txt"] = 'Jailkit chroot app sections'; -$wb["jailkit_chroot_app_programs_txt"] = 'Jailkit chrooted applications'; -$wb["jailkit_chroot_cron_programs_txt"] = 'Jailkit cron chrooted applications'; -$wb["website_path_txt"] = 'Website path'; -$wb["website_symlinks_txt"] = 'Website symlinks'; -$wb['website_symlinks_rel_txt'] = 'Make relative symlinks'; -$wb["website_basedir_txt"] = 'Website basedir'; -$wb["website_autoalias_txt"] = 'Website auto alias'; -$wb["website_autoalias_note_txt"] = 'Placeholders:'; -$wb["vhost_conf_dir_txt"] = 'Vhost config dir'; -$wb["vhost_conf_enabled_dir_txt"] = 'Vhost config enabled dir'; -$wb["getmail_config_dir_txt"] = 'Getmail config dir'; -$wb["fastcgi_starter_path_txt"] = 'FastCGI starter path'; -$wb["fastcgi_starter_script_txt"] = 'FastCGI starter script'; -$wb["fastcgi_alias_txt"] = 'FastCGI Alias'; -$wb["fastcgi_phpini_path_txt"] = 'FastCGI php.ini Path'; -$wb["fastcgi_children_txt"] = 'FastCGI Children'; -$wb["fastcgi_max_requests_txt"] = 'FastCGI max. Requests'; -$wb["fastcgi_bin_txt"] = 'FastCGI Bin'; -$wb["module_txt"] = 'Module'; -$wb["maildir_path_txt"] = 'Maildir Path'; -$wb['maildir_format_txt'] = 'Maildir Format'; -$wb["homedir_path_txt"] = 'Homedir Path'; -$wb["dkim_path_txt"] = 'DKIM Path'; -$wb["mailuser_uid_txt"] = 'Mailuser UID'; -$wb["mailuser_gid_txt"] = 'Mailuser GID'; -$wb["mailuser_name_txt"] = 'Mailuser Name'; -$wb["mailuser_group_txt"] = 'Mailuser Group'; -$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 User'; -$wb["relayhost_password_txt"] = 'Relayhost Password'; -$wb['reject_sender_login_mismatch_txt'] = 'Reject sender and login mismatch'; -$wb["mailbox_size_limit_txt"] = 'Mailbox Size Limit'; -$wb["message_size_limit_txt"] = 'Message Size Limit'; -$wb["ip_address_txt"] = 'IP Address'; -$wb["netmask_txt"] = 'Netmask'; -$wb["gateway_txt"] = 'Gateway'; -$wb["hostname_txt"] = 'Hostname'; -$wb["nameservers_txt"] = 'Nameservers'; -$wb["auto_network_configuration_txt"] = 'Network Configuration'; -$wb["ip_address_error_wrong"] = 'Invalid IP address format.'; -$wb["netmask_error_wrong"] = 'Invalid Netmask format.'; -$wb["gateway_error_wrong"] = 'Invalid Gateway format.'; -$wb["hostname_error_empty"] = 'Hostname is empty.'; -$wb["hostname_error_regex"] = 'Invalid Hostname.'; -$wb["nameservers_error_empty"] = 'Nameserver is empty.'; -$wb["config_dir_txt"] = 'Config directory'; -$wb["init_script_txt"] = 'Cron init script name'; -$wb["crontab_dir_txt"] = 'Path for individual crontabs'; -$wb["wget_txt"] = 'Path to wget program'; -$wb["web_user_txt"] = 'Apache user'; -$wb["web_group_txt"] = 'Apache group'; -$wb["security_level_txt"] = 'Security level'; -$wb["loglevel_txt"] = 'Loglevel'; -$wb["apps_vhost_port_txt"] = 'Apps-vhost port'; -$wb["apps_vhost_ip_txt"] = 'Apps-vhost IP'; -$wb["apps_vhost_servername_txt"] = 'Apps-vhost Domain'; -$wb["bind_user_txt"] = 'BIND User'; -$wb["bind_group_txt"] = 'BIND Group'; -$wb["bind_zonefiles_dir_txt"] = 'BIND zonefiles directory'; -$wb["named_conf_path_txt"] = 'BIND named.conf path'; -$wb["bind_user_error_empty"] = 'BIND user is empty.'; -$wb["bind_group_error_empty"] = 'BIND group is empty.'; -$wb["bind_zonefiles_dir_error_empty"] = 'BIND zonefiles directory is empty.'; -$wb["named_conf_path_error_empty"] = 'BIND named.conf path is empty.'; -$wb["named_conf_local_path_error_empty"] = 'BIND named.conf.local path is empty.'; -$wb["mail_filter_syntax_txt"] = 'Mailfilter Syntax'; -$wb["pop3_imap_daemon_txt"] = 'POP3/IMAP Daemon'; -$wb["php_open_basedir_txt"] = 'PHP open_basedir'; -$wb["php_open_basedir_error_empty"] = 'PHP open_basedir is empty.'; -$wb["htaccess_allow_override_txt"] = '.htaccess AllowOverride'; -$wb["htaccess_allow_override_error_empty"] = '.htaccess AllowOverride is empty.'; -$wb["awstats_conf_dir_txt"] = 'awstats conf folder'; -$wb["awstats_data_dir_txt"] = 'awstats data folder'; -$wb["awstats_pl_txt"] = 'awstats.pl script'; -$wb["awstats_buildstaticpages_pl_txt"] = 'awstats_buildstaticpages.pl script'; -$wb["backup_dir_txt"] = 'Backup directory'; -$wb["backup_tmp_txt"] = 'Backup tmp directory for zip'; -$wb["named_conf_local_path_txt"] = 'BIND named.conf.local path'; -$wb["php_ini_path_cgi_txt"] = 'CGI php.ini path'; -$wb["php_ini_path_apache_txt"] = 'Apache php.ini path'; -$wb["check_apache_config_txt"] = 'Test apache configuration on restart'; -$wb["network_config_warning_txt"] = 'The network configuration option is only available for Debian and Ubuntu Servers. Do not enable this option if your network interface is not eth0.'; -$wb["CA_path_txt"] = 'CA Path'; -$wb["CA_pass_txt"] = 'CA passphrase'; -$wb["fastcgi_config_syntax_txt"] = 'FastCGI config syntax'; -$wb["backup_mode_txt"] = 'Backup mode'; -$wb["backup_mode_userzip"] = 'Backup web files owned by web user as zip'; -$wb["backup_mode_rootgz"] = 'Backup all files in web directory as root user'; -$wb['tmpdir_path_error_empty'] = 'tmp-dir Path is empty.'; -$wb['tmpdir_path_error_regex'] = 'Invalid tmp-dir path.'; -$wb["backup_time_txt"] = 'Backup time'; -$wb["server_type_txt"] = 'Server Type'; -$wb["nginx_vhost_conf_dir_txt"] = 'Nginx Vhost config dir'; -$wb["nginx_vhost_conf_enabled_dir_txt"] = 'Nginx Vhost config enabled dir'; -$wb["nginx_user_txt"] = 'Nginx user'; -$wb["nginx_group_txt"] = 'Nginx group'; -$wb["nginx_cgi_socket_txt"] = 'Nginx CGI Socket'; -$wb["backup_dir_error_empty"] = 'Backup directory is empty.'; -$wb["maildir_path_error_empty"] = 'Maildir Path is empty.'; -$wb["homedir_path_error_empty"] = 'Homedir Path is empty.'; -$wb["mailuser_uid_error_empty"] = 'Mailuser UID is empty.'; -$wb["mailuser_gid_error_empty"] = 'Mailuser GID is empty.'; -$wb["mailuser_name_error_empty"] = 'Mailuser Name is empty.'; -$wb["mailuser_group_error_empty"] = 'Mailuser Group is empty.'; -$wb["getmail_config_dir_error_empty"] = 'Getmail config dir is empty.'; -$wb["website_basedir_error_empty"] = 'Website basedir is empty.'; -$wb["website_path_error_empty"] = 'Website path is empty.'; -$wb["website_symlinks_error_empty"] = 'Website symlinks is empty.'; -$wb["vhost_conf_dir_error_empty"] = 'Vhost config dir is empty.'; -$wb["vhost_conf_enabled_dir_error_empty"] = 'Vhost config enabled dir is empty.'; -$wb["nginx_vhost_conf_dir_error_empty"] = 'Nginx Vhost config dir is empty.'; -$wb["nginx_vhost_conf_enabled_dir_error_empty"] = 'Nginx Vhost config enabled dir is empty.'; -$wb["apache_user_error_empty"] = 'Apache user is empty.'; -$wb["apache_group_error_empty"] = 'Apache group is empty.'; -$wb["nginx_user_error_empty"] = 'Nginx user is empty.'; -$wb["nginx_group_error_empty"] = 'Nginx group is empty.'; -$wb["php_ini_path_apache_error_empty"] = 'Apache php.ini path is empty.'; -$wb["php_ini_path_cgi_error_empty"] = 'CGI php.ini path is empty.'; -$wb["nginx_cgi_socket_empty"] = 'Nginx CGI Socket is empty.'; -$wb["apps_vhost_port_error_empty"] = 'Apps-vhost port is empty.'; -$wb["apps_vhost_ip_error_empty"] = 'Apps-vhost IP is empty.'; -$wb["fastcgi_starter_path_error_empty"] = 'FastCGI starter path is empty.'; -$wb["fastcgi_starter_script_error_empty"] = 'FastCGI starter script is empty.'; -$wb["fastcgi_alias_error_empty"] = 'FastCGI Alias is empty.'; -$wb["fastcgi_phpini_path_error_empty"] = 'FastCGI php.ini Path is empty.'; -$wb["fastcgi_children_error_empty"] = 'FastCGI Children is empty.'; -$wb["fastcgi_max_requests_error_empty"] = 'FastCGI max. Requests is empty.'; -$wb["fastcgi_bin_error_empty"] = 'FastCGI Bin is empty.'; -$wb["jailkit_chroot_home_error_empty"] = 'Jailkit chroot home is empty.'; -$wb["jailkit_chroot_app_sections_error_empty"] = 'Jailkit chroot app sections is empty.'; -$wb["jailkit_chroot_app_programs_error_empty"] = 'Jailkit chrooted applications is empty.'; -$wb["jailkit_chroot_cron_programs_error_empty"] = 'Jailkit cron chrooted applications is empty.'; -$wb["vlogger_config_dir_error_empty"] = 'Config directory is empty.'; -$wb["cron_init_script_error_empty"] = 'Cron init script name is empty.'; -$wb["crontab_dir_error_empty"] = 'Path for individual crontabs is empty.'; -$wb["cron_wget_error_empty"] = 'Path to wget program is empty.'; -$wb["php_fpm_init_script_txt"] = 'PHP-FPM init script'; -$wb["php_fpm_init_script_error_empty"] = 'PHP-FPM init script is empty.'; -$wb["php_fpm_ini_path_txt"] = 'PHP-FPM php.ini path'; -$wb["php_fpm_ini_path_error_empty"] = 'PHP-FPM php.ini path is empty.'; -$wb["php_fpm_pool_dir_txt"] = 'PHP-FPM pool directory'; -$wb["php_fpm_pool_dir_error_empty"] = 'PHP-FPM pool directory is empty.'; -$wb["php_fpm_start_port_txt"] = 'PHP-FPM start port'; -$wb["php_fpm_start_port_error_empty"] = 'PHP-FPM start port is empty.'; -$wb["php_fpm_socket_dir_txt"] = 'PHP-FPM socket directory'; -$wb["php_fpm_socket_dir_error_empty"] = 'PHP-FPM socket directory is empty.'; -$wb["try_rescue_txt"] = 'Enable service monitoring and restart on failure'; -$wb["do_not_try_rescue_httpd_txt"] = 'Disable HTTPD monitoring'; -$wb["do_not_try_rescue_mongodb_txt"] = 'Disable MongoDB monitoring'; -$wb["do_not_try_rescue_mysql_txt"] = 'Disable MySQL monitoring'; -$wb["do_not_try_rescue_mail_txt"] = 'Disable Email monitoring'; -$wb["rescue_description_txt"] = '<b>Information:</b> If you want to shut down mysql you have to select the "Disable MySQL monitor" checkbox and then wait 2-3 minutes.<br>If you do not wait 2-3 minutes, rescue will try to restart mysql!'; -$wb["enable_sni_txt"] = 'Enable SNI'; -$wb["set_folder_permissions_on_update_txt"] = 'Set folder permissions on update'; -$wb["add_web_users_to_sshusers_group_txt"] = 'Add web users to -sshusers- group'; -$wb["connect_userid_to_webid_txt"] = 'Connect Linux userid to webid'; -$wb["connect_userid_to_webid_start_txt"] = 'Start ID for userid/webid connect'; -$wb["realtime_blackhole_list_txt"] = 'Real-time Blackhole List'; -$wb["realtime_blackhole_list_note_txt"] = '(Separate RBL\'s with commas)'; -$wb["ssl_settings_txt"] = 'SSL Settings'; -$wb["permissions_txt"] = 'Permissions'; -$wb["php_settings_txt"] = 'PHP Settings'; -$wb["apps_vhost_settings_txt"] = 'Apps Vhost Settings'; -$wb["awstats_settings_txt"] = 'AWStats Settings'; -$wb["firewall_txt"] = 'Firewall'; -$wb["mailbox_quota_stats_txt"] = 'Mailbox quota statistics'; -$wb["enable_ip_wildcard_txt"] = 'Enable IP wildcard (*)'; -$wb["web_folder_protection_txt"] = 'Make web folders immutable (extended attributes)'; -$wb["overtraffic_notify_admin_txt"] = 'Send overtraffic notification to admin'; -$wb["overtraffic_notify_client_txt"] = 'Send overtraffic notification to client'; -$wb["rbl_error_regex"] = 'Please specify valid RBL hostnames.'; -$wb["overquota_notify_admin_txt"] = 'Send quota warnings to admin'; -$wb["overquota_notify_client_txt"] = 'Send quota warnings to client'; -$wb["overquota_notify_onok_txt"] = 'Send quota ok message to client'; -$wb['overquota_notify_freq_txt'] = 'Send quota warning each X days'; -$wb['overquota_notify_freq_note_txt'] = '0 = send message just once, no repeated messages'; -$wb['admin_notify_events_txt'] = 'Send email to admin starting with the following level'; -$wb['no_notifications_txt'] = 'No Notifications'; -$wb['monit_url_txt'] = 'Monit URL'; -$wb['monit_user_txt'] = 'Monit User'; -$wb['monit_password_txt'] = 'Monit Password'; -$wb['monit_url_error_regex'] = 'Invalid Monit URL'; -$wb['monit_url_note_txt'] = 'Placeholder:'; -$wb['munin_url_txt'] = 'Munin URL'; -$wb['munin_user_txt'] = 'Munin User'; -$wb['munin_password_txt'] = 'Munin Password'; -$wb['munin_url_error_regex'] = 'Invalid Munin URL'; -$wb['munin_url_note_txt'] = 'Placeholder:'; -$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_is_mount_txt'] = 'Backup directory is a mount?'; -$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['monitor_system_updates_txt'] = 'Check for Linux updates'; -$wb['php_handler_txt'] = "Default PHP Handler"; -$wb['php_fpm_incron_reload_txt'] = 'Install incron trigger file to reload PHP-FPM'; -$wb['disabled_txt'] = 'Disabled'; -$wb['dkim_strength_txt'] = 'DKIM strength'; -$wb['monitor_system_updates_txt'] = 'Check for Linux updates'; -$wb['invalid_apache_user_txt'] = 'Invalid apache user.'; -$wb['invalid_apache_group_txt'] = 'Invalid apache group.'; -$wb['backup_dir_error_regex'] = 'Invalid backup directory.'; -$wb['maildir_path_error_regex'] = 'Invalid maildir path.'; -$wb['homedir_path_error_regex'] = 'Invalid homedir path.'; -$wb['mailuser_name_error_regex'] = 'Invalid mailuser name.'; -$wb['mailuser_group_name_error_regex'] = 'Invalid mailuser group name.'; -$wb['mailuser_uid_error_range'] = 'Mailuser uid must be >= 2000'; -$wb['mailuser_gid_error_range'] = 'Mailuser gid must be >= 2000'; -$wb['getmail_config_dir_error_regex'] = 'Invalid getmail config directory.'; -$wb['website_basedir_error_regex'] = 'Invalid website basedir path, min. length 5 chars.'; -$wb['website_symlinks_error_regex'] = 'Invalid website symlinks.'; -$wb['vhost_conf_dir_error_regex'] = 'Invalid vhost config directory.'; -$wb['vhost_conf_enabled_dir_error_regex'] = 'Invalid vhost conf enabled directory.'; -$wb['nginx_vhost_conf_dir_error_regex'] = 'Invalid nginx config directory.'; -$wb['nginx_vhost_conf_enabled_dir_error_regex'] = 'Invalid nginx conf enabled directory.'; -$wb['ca_path_error_regex'] = 'Invalid CA path.'; -$wb['invalid_nginx_user_txt'] = 'Invalid nginx user.'; -$wb['invalid_nginx_group_txt'] = 'Invalid nginx group.'; -$wb['php_ini_path_apache_error_regex'] = 'Invalid apache php.ini path.'; -$wb['php_ini_path_cgi_error_regex'] = 'Invalid cgi php.ini path.'; -$wb['php_fpm_init_script_error_regex'] = 'Invalid php-fpm init script.'; -$wb['php_fpm_ini_path_error_regex'] = 'Invalid php-fpm ini path.'; -$wb['php_fpm_pool_dir_error_regex'] = 'Invalid php-fpm pool directory.'; -$wb['php_fpm_socket_dir_error_regex'] = 'Invalid php-fpm socket directory.'; -$wb['php_open_basedir_error_regex'] = 'Invalid php open_basedir.'; -$wb['awstats_data_dir_empty'] = 'awstats data directory is empty'; -$wb['awstats_data_dir_error_regex'] = 'Invalid awstats data directory.'; -$wb['awstats_pl_empty'] = 'awstats.pl setting is empty.'; -$wb['awstats_pl_error_regex'] = 'Invalid awstats.pl path.'; -$wb['awstats_buildstaticpages_pl_empty'] = 'awstats_buildstaticpages.pl is empty'; -$wb['awstats_buildstaticpages_pl_error_regex'] = 'Invalid awstats_buildstaticpages.pl path.'; -$wb['invalid_bind_user_txt'] = 'Invalid BIND user.'; -$wb['invalid_bind_group_txt'] = 'Invalid BIND group.'; -$wb['bind_zonefiles_dir_error_regex'] = 'Invalid BIND zonefiles directory.'; -$wb['named_conf_path_error_regex'] = 'Invalid named.conf path.'; -$wb['named_conf_local_path_error_regex'] = 'Invalid named.conf.local path.'; -$wb['fastcgi_starter_path_error_regex'] = 'Invalid fastcgi starter path.'; -$wb['fastcgi_starter_script_error_regex'] = 'Invalid fastcgi starter script.'; -$wb['fastcgi_alias_error_regex'] = 'Invalid fastcgi alias.'; -$wb['fastcgi_phpini_path_error_regex'] = 'Invalid fastcgi path.'; -$wb['fastcgi_bin_error_regex'] = 'Invalid fastcgi bin.'; -$wb['jailkit_chroot_home_error_regex'] = 'Invalid jaikit chroot home.'; -$wb['jailkit_chroot_app_sections_error_regex'] = 'Invalid jaikit chroot sections.'; -$wb['jailkit_chroot_app_programs_error_regex'] = 'Invalid jaikit chroot app programs.'; -$wb['jailkit_chroot_cron_programs_error_regex'] = 'Invalid jaikit chroot cron programs.'; -$wb['vlogger_config_dir_error_regex'] = 'Invalid vlogger config dir.'; -$wb['cron_init_script_error_regex'] = 'Invalid cron init script.'; -$wb['crontab_dir_error_regex'] = 'Invalid crontab directory.'; -$wb['cron_wget_error_regex'] = 'Invalid cron wget path.'; -$wb['network_filesystem_txt'] = 'Network Filesystem'; -$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'; -$wb['enable_spdy_txt'] = 'Makes SPDY/HTTP2 available'; -$wb['web_settings_txt'] = 'Web Server'; -$wb['xmpp_server_txt'] = 'XMPP Server'; -$wb['xmpp_use_ipv6_txt'] = 'Use IPv6'; -$wb['xmpp_bosh_max_inactivity_txt'] = 'Max. BOSH inactivity time'; -$wb['xmpp_bosh_timeout_range_wrong'] = 'Please enter a bosh timeout range between 15 - 360'; -$wb['xmpp_module_saslauth'] = 'saslauth'; -$wb['xmpp_server_admins_txt'] = 'Server Admins (JIDs)'; -$wb['xmpp_modules_enabled_txt'] = 'Serverwide enabled plugins (one per line)'; -$wb['xmpp_ports_txt'] = 'Component ports'; -$wb['xmpp_port_http_txt'] = 'HTTP'; -$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['skip_le_check_txt'] = 'Skip Lets Encrypt Check'; -$wb['migration_mode_txt'] = 'Server Migration Mode'; -$wb['nginx_enable_pagespeed_txt'] = 'Makes Pagespeed available'; -$wb['logging_txt'] = 'Store website access and error logs'; -$wb['logging_desc_txt'] = 'Use Tools > Resync to apply changes to existing sites. For Apache, access and error log can be anonymized. For nginx, only the access log is anonymized, the error log will contain IP addresses.'; -$wb['log_retention_txt'] = 'Log retention (days)'; -$wb['log_retention_error_ispositive'] = 'Log retention must be a number > 0'; -$wb['php_default_name_txt'] = 'Description Default PHP-Version'; -$wb['php_default_name_error_empty'] = 'Description Default PHP-Version must not be empty'; -$wb['error_mailbox_message_size_txt'] = 'Mailbox size must be larger or equal to message size'; -$wb['php_fpm_reload_mode_txt'] = 'PHP-FPM reload mode'; -?> diff --git a/interface/web/admin/lib/lang/en_server_config.lng.rej b/interface/web/admin/lib/lang/en_server_config.lng.rej deleted file mode 100644 index 1460249765..0000000000 --- a/interface/web/admin/lib/lang/en_server_config.lng.rej +++ /dev/null @@ -1,11 +0,0 @@ ---- interface/web/admin/lib/lang/en_server_config.lng -+++ interface/web/admin/lib/lang/en_server_config.lng -@@ -296,4 +296,7 @@ $wb['log_retention_error_ispositive'] = 'Log retention must be a number > 0'; - $wb['php_default_name_txt'] = 'Description Default PHP-Version'; - $wb['php_default_name_error_empty'] = 'Description Default PHP-Version must not be empty'; - $wb['error_mailbox_message_size_txt'] = 'Mailbox size must be larger or equal to message size'; --?> -+$wb['content_filter_txt'] = 'Content Filter'; -+$wb['rspamd_url_txt'] = 'Rspamd URL'; -+$wb['rspamd_user_txt'] = 'Rspamd User'; -+$wb['rspamd_password_txt'] = 'Rspamd Password'; \ No newline at end of file diff --git a/interface/web/mail/form/spamfilter_policy.tform.php.orig b/interface/web/mail/form/spamfilter_policy.tform.php.orig deleted file mode 100644 index 31e8b8092a..0000000000 --- a/interface/web/mail/form/spamfilter_policy.tform.php.orig +++ /dev/null @@ -1,496 +0,0 @@ -<?php - -/* - Form Definition - - Tabledefinition - - Datatypes: - - INTEGER (Forces the input to Int) - - DOUBLE - - CURRENCY (Formats the values to currency notation) - - VARCHAR (no format check, maxlength: 255) - - TEXT (no format check) - - DATE (Dateformat, automatic conversion to timestamps) - - Formtype: - - TEXT (Textfield) - - TEXTAREA (Textarea) - - PASSWORD (Password textfield, input is not shown when edited) - - SELECT (Select option field) - - RADIO - - CHECKBOX - - CHECKBOXARRAY - - FILE - - VALUE: - - Wert oder Array - - Hint: - The ID field of the database table is not part of the datafield definition. - The ID field must be always auto incement (int or bigint). - - -*/ - -$form["title"] = "Spamfilter policy"; -$form["description"] = ""; -$form["name"] = "spamfilter_policy"; -$form["action"] = "spamfilter_policy_edit.php"; -$form["db_table"] = "spamfilter_policy"; -$form["db_table_idx"] = "id"; -$form["db_history"] = "yes"; -$form["tab_default"] = "policy"; -$form["list_default"] = "spamfilter_policy_list.php"; -$form["auth"] = 'yes'; // yes / no - -$form["auth_preset"]["userid"] = 0; // 0 = id of the user, > 0 id must match with id of current user -$form["auth_preset"]["groupid"] = 0; // 0 = default groupid of the user, > 0 id must match with groupid of current user -$form["auth_preset"]["perm_user"] = 'riud'; //r = read, i = insert, u = update, d = delete -$form["auth_preset"]["perm_group"] = 'riud'; //r = read, i = insert, u = update, d = delete -$form["auth_preset"]["perm_other"] = 'r'; //r = read, i = insert, u = update, d = delete - -$form["tabs"]['policy'] = array ( - 'title' => "Policy", - 'width' => 100, - 'template' => "templates/spamfilter_policy_edit.htm", - 'fields' => array ( - //################################# - // Begin Datatable fields - //################################# - 'policy_name' => array ( - 'datatype' => 'VARCHAR', - 'formtype' => 'TEXT', - 'default' => '', - 'validators' => array ( 0 => array ( 'type' => 'NOTEMPTY', - 'errmsg'=> 'policyname_error_notempty'), - ), - 'filters' => array( - 0 => array( 'event' => 'SAVE', - 'type' => 'STRIPTAGS'), - 1 => array( 'event' => 'SAVE', - 'type' => 'STRIPNL') - ), - 'value' => '', - 'width' => '30', - 'maxlength' => '255' - ), - 'virus_lover' => array ( - 'datatype' => 'VARCHAR', - 'formtype' => 'SELECT', - 'default' => 'N', - 'value' => array('N' => 'No', 'Y' => 'Yes') - ), - 'spam_lover' => array ( - 'datatype' => 'VARCHAR', - 'formtype' => 'SELECT', - 'default' => 'N', - 'value' => array('N' => 'No', 'Y' => 'Yes') - ), - 'banned_files_lover' => array ( - 'datatype' => 'VARCHAR', - 'formtype' => 'SELECT', - 'default' => 'N', - 'value' => array('N' => 'No', 'Y' => 'Yes') - ), - 'bad_header_lover' => array ( - 'datatype' => 'VARCHAR', - 'formtype' => 'SELECT', - 'default' => 'N', - 'value' => array('N' => 'No', 'Y' => 'Yes') - ), - 'bypass_virus_checks' => array ( - 'datatype' => 'VARCHAR', - 'formtype' => 'SELECT', - 'default' => 'N', - 'value' => array('N' => 'No', 'Y' => 'Yes') - ), - 'bypass_banned_checks' => array ( - 'datatype' => 'VARCHAR', - 'formtype' => 'SELECT', - 'default' => 'N', - 'value' => array('N' => 'No', 'Y' => 'Yes') - ), - 'bypass_header_checks' => array ( - 'datatype' => 'VARCHAR', - 'formtype' => 'SELECT', - 'default' => 'N', - 'value' => array('N' => 'No', 'Y' => 'Yes') - ), - //################################# - // ENDE Datatable fields - //################################# - ) -); - - -$form["tabs"]['quarantine'] = array ( - 'title' => "Quarantine", - 'width' => 100, - 'template' => "templates/spamfilter_quarantine_edit.htm", - 'fields' => array ( - //################################# - // Begin Datatable fields - //################################# - 'virus_quarantine_to' => array ( - 'datatype' => 'VARCHAR', - 'formtype' => 'TEXT', - 'filters' => array( - 0 => array( 'event' => 'SAVE', - 'type' => 'STRIPTAGS'), - 1 => array( 'event' => 'SAVE', - 'type' => 'STRIPNL') - ), - 'default' => '', - 'value' => '', - 'width' => '30', - 'maxlength' => '255' - ), - 'spam_quarantine_to' => array ( - 'datatype' => 'VARCHAR', - 'formtype' => 'TEXT', - 'filters' => array( - 0 => array( 'event' => 'SAVE', - 'type' => 'STRIPTAGS'), - 1 => array( 'event' => 'SAVE', - 'type' => 'STRIPNL') - ), - 'default' => '', - 'value' => '', - 'width' => '30', - 'maxlength' => '255' - ), - 'banned_quarantine_to' => array ( - 'datatype' => 'VARCHAR', - 'formtype' => 'TEXT', - 'filters' => array( - 0 => array( 'event' => 'SAVE', - 'type' => 'STRIPTAGS'), - 1 => array( 'event' => 'SAVE', - 'type' => 'STRIPNL') - ), - 'default' => '', - 'value' => '', - 'width' => '30', - 'maxlength' => '255' - ), - 'bad_header_quarantine_to' => array ( - 'datatype' => 'VARCHAR', - 'formtype' => 'TEXT', - 'filters' => array( - 0 => array( 'event' => 'SAVE', - 'type' => 'STRIPTAGS'), - 1 => array( 'event' => 'SAVE', - 'type' => 'STRIPNL') - ), - 'default' => '', - 'value' => '', - 'width' => '30', - 'maxlength' => '255' - ), - 'clean_quarantine_to' => array ( - 'datatype' => 'VARCHAR', - 'formtype' => 'TEXT', - 'filters' => array( - 0 => array( 'event' => 'SAVE', - 'type' => 'STRIPTAGS'), - 1 => array( 'event' => 'SAVE', - 'type' => 'STRIPNL') - ), - 'default' => '', - 'value' => '', - 'width' => '30', - 'maxlength' => '255' - ), - 'other_quarantine_to' => array ( - 'datatype' => 'VARCHAR', - 'formtype' => 'TEXT', - 'filters' => array( - 0 => array( 'event' => 'SAVE', - 'type' => 'STRIPTAGS'), - 1 => array( 'event' => 'SAVE', - 'type' => 'STRIPNL') - ), - 'default' => '', - 'value' => '', - 'width' => '30', - 'maxlength' => '255' - ), - //################################# - // ENDE Datatable fields - //################################# - ) -); - -$form["tabs"]['taglevel'] = array ( - 'title' => "Tag-Level", - 'width' => 100, - 'template' => "templates/spamfilter_taglevel_edit.htm", - 'fields' => array ( - //################################# - // Begin Datatable fields - //################################# - 'spam_tag_level' => array ( - 'datatype' => 'DOUBLE', - 'formtype' => 'TEXT', - 'default' => '0', - 'value' => '', - 'width' => '10', - 'maxlength' => '255' - ), - 'spam_tag2_level' => array ( - 'datatype' => 'DOUBLE', - 'formtype' => 'TEXT', - 'default' => '0', - 'value' => '', - 'width' => '10', - 'maxlength' => '255' - ), - 'spam_kill_level' => array ( - 'datatype' => 'DOUBLE', - 'formtype' => 'TEXT', - 'default' => '0', - 'value' => '', - 'width' => '10', - 'maxlength' => '255' - ), - 'spam_dsn_cutoff_level' => array ( - 'datatype' => 'DOUBLE', - 'formtype' => 'TEXT', - 'default' => '0', - 'value' => '', - 'width' => '10', - 'maxlength' => '255' - ), - 'spam_quarantine_cutoff_level' => array ( - 'datatype' => 'DOUBLE', - 'formtype' => 'TEXT', - 'default' => '0', - 'value' => '', - 'width' => '10', - 'maxlength' => '255' - ), - 'spam_modifies_subj' => array ( - 'datatype' => 'VARCHAR', - 'formtype' => 'SELECT', - 'default' => 'N', - 'value' => array('N' => 'No', 'Y' => 'Yes') - ), - 'spam_subject_tag' => array ( - 'datatype' => 'VARCHAR', - 'formtype' => 'TEXT', - 'filters' => array( - 0 => array( 'event' => 'SAVE', - 'type' => 'STRIPTAGS'), - 1 => array( 'event' => 'SAVE', - 'type' => 'STRIPNL') - ), - 'default' => '', - 'value' => '', - 'width' => '30', - 'maxlength' => '255' - ), - 'spam_subject_tag2' => array ( - 'datatype' => 'VARCHAR', - 'formtype' => 'TEXT', - 'filters' => array( - 0 => array( 'event' => 'SAVE', - 'type' => 'STRIPTAGS'), - 1 => array( 'event' => 'SAVE', - 'type' => 'STRIPNL') - ), - 'default' => '', - 'value' => '', - 'width' => '30', - 'maxlength' => '255' - ), - //################################# - // ENDE Datatable fields - //################################# - ) -); - - -$form["tabs"]['other'] = array ( - 'title' => "Other", - 'width' => 100, - 'template' => "templates/spamfilter_other_edit.htm", - 'fields' => array ( - //################################# - // Begin Datatable fields - //################################# - 'addr_extension_virus' => array ( - 'datatype' => 'VARCHAR', - 'formtype' => 'TEXT', - 'filters' => array( - 0 => array( 'event' => 'SAVE', - 'type' => 'STRIPTAGS'), - 1 => array( 'event' => 'SAVE', - 'type' => 'STRIPNL') - ), - 'default' => '', - 'value' => '', - 'width' => '30', - 'maxlength' => '255' - ), - 'addr_extension_spam' => array ( - 'datatype' => 'VARCHAR', - 'formtype' => 'TEXT', - 'filters' => array( - 0 => array( 'event' => 'SAVE', - 'type' => 'STRIPTAGS'), - 1 => array( 'event' => 'SAVE', - 'type' => 'STRIPNL') - ), - 'default' => '', - 'value' => '', - 'width' => '30', - 'maxlength' => '255' - ), - 'addr_extension_banned' => array ( - 'datatype' => 'VARCHAR', - 'formtype' => 'TEXT', - 'filters' => array( - 0 => array( 'event' => 'SAVE', - 'type' => 'STRIPTAGS'), - 1 => array( 'event' => 'SAVE', - 'type' => 'STRIPNL') - ), - 'default' => '', - 'value' => '', - 'width' => '30', - 'maxlength' => '255' - ), - 'addr_extension_bad_header' => array ( - 'datatype' => 'VARCHAR', - 'formtype' => 'TEXT', - 'filters' => array( - 0 => array( 'event' => 'SAVE', - 'type' => 'STRIPTAGS'), - 1 => array( 'event' => 'SAVE', - 'type' => 'STRIPNL') - ), - 'default' => '', - 'value' => '', - 'width' => '30', - 'maxlength' => '255' - ), - 'warnvirusrecip' => array ( - 'datatype' => 'VARCHAR', - 'formtype' => 'SELECT', - 'default' => 'N', - 'value' => array('N' => 'No', 'Y' => 'Yes') - ), - 'warnbannedrecip' => array ( - 'datatype' => 'VARCHAR', - 'formtype' => 'SELECT', - 'default' => 'N', - 'value' => array('N' => 'No', 'Y' => 'Yes') - ), - 'warnbadhrecip' => array ( - 'datatype' => 'VARCHAR', - 'formtype' => 'SELECT', - 'default' => 'N', - 'value' => array('N' => 'No', 'Y' => 'Yes') - ), - 'newvirus_admin' => array ( - 'datatype' => 'VARCHAR', - 'formtype' => 'TEXT', - 'filters' => array( - 0 => array( 'event' => 'SAVE', - 'type' => 'STRIPTAGS'), - 1 => array( 'event' => 'SAVE', - 'type' => 'STRIPNL') - ), - 'default' => '', - 'value' => '', - 'width' => '30', - 'maxlength' => '255' - ), - 'virus_admin' => array ( - 'datatype' => 'VARCHAR', - 'formtype' => 'TEXT', - 'filters' => array( - 0 => array( 'event' => 'SAVE', - 'type' => 'STRIPTAGS'), - 1 => array( 'event' => 'SAVE', - 'type' => 'STRIPNL') - ), - 'default' => '', - 'value' => '', - 'width' => '30', - 'maxlength' => '255' - ), - 'banned_admin' => array ( - 'datatype' => 'VARCHAR', - 'formtype' => 'TEXT', - 'filters' => array( - 0 => array( 'event' => 'SAVE', - 'type' => 'STRIPTAGS'), - 1 => array( 'event' => 'SAVE', - 'type' => 'STRIPNL') - ), - 'default' => '', - 'value' => '', - 'width' => '30', - 'maxlength' => '255' - ), - 'bad_header_admin' => array ( - 'datatype' => 'VARCHAR', - 'formtype' => 'TEXT', - 'filters' => array( - 0 => array( 'event' => 'SAVE', - 'type' => 'STRIPTAGS'), - 1 => array( 'event' => 'SAVE', - 'type' => 'STRIPNL') - ), - 'default' => '', - 'value' => '', - 'width' => '30', - 'maxlength' => '255' - ), - 'spam_admin' => array ( - 'datatype' => 'VARCHAR', - 'formtype' => 'TEXT', - 'filters' => array( - 0 => array( 'event' => 'SAVE', - 'type' => 'STRIPTAGS'), - 1 => array( 'event' => 'SAVE', - 'type' => 'STRIPNL') - ), - 'default' => '', - 'value' => '', - 'width' => '30', - 'maxlength' => '255' - ), - - 'message_size_limit' => array ( - 'datatype' => 'INTEGER', - 'formtype' => 'TEXT', - 'default' => '', - 'value' => '', - 'width' => '10', - 'maxlength' => '255' - ), - 'banned_rulenames' => array ( - 'datatype' => 'VARCHAR', - 'formtype' => 'TEXT', - 'filters' => array( - 0 => array( 'event' => 'SAVE', - 'type' => 'STRIPTAGS'), - 1 => array( 'event' => 'SAVE', - 'type' => 'STRIPNL') - ), - 'default' => '', - 'value' => '', - 'width' => '30', - 'maxlength' => '255' - ), - - //################################# - // ENDE Datatable fields - //################################# - ) -); - -?> -- GitLab From a23052c6cd5a63ddb87cee2d42f5117d69fd50ba Mon Sep 17 00:00:00 2001 From: Marius Burkard <m.burkard@pixcept.de> Date: Wed, 31 Jul 2019 15:14:20 +0200 Subject: [PATCH 119/215] - fixed argument replacement in exec_safe function --- interface/lib/classes/system.inc.php | 3 ++- server/lib/classes/system.inc.php | 1 + 2 files changed, 3 insertions(+), 1 deletion(-) diff --git a/interface/lib/classes/system.inc.php b/interface/lib/classes/system.inc.php index ede53034d3..0be2b6b1e9 100644 --- a/interface/lib/classes/system.inc.php +++ b/interface/lib/classes/system.inc.php @@ -71,7 +71,8 @@ class system { } if($arg_count > 1) { $args = func_get_args(); - + array_shift($args); + $pos = 0; $a = 0; foreach($args as $value) { diff --git a/server/lib/classes/system.inc.php b/server/lib/classes/system.inc.php index 88cf83eeba..288f9d73f8 100644 --- a/server/lib/classes/system.inc.php +++ b/server/lib/classes/system.inc.php @@ -2077,6 +2077,7 @@ class system{ } if($arg_count > 1) { $args = func_get_args(); + array_shift($args); $pos = 0; $a = 0; -- GitLab From d6ab12b7da16a426b96fc086f828ae7f81b573ec Mon Sep 17 00:00:00 2001 From: Marius Burkard <m.burkard@pixcept.de> Date: Wed, 31 Jul 2019 15:46:25 +0200 Subject: [PATCH 120/215] - fixed PHP warning (undefined constant openvz_tools) --- server/lib/classes/cron.d/100-monitor_openvz.inc.php | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/server/lib/classes/cron.d/100-monitor_openvz.inc.php b/server/lib/classes/cron.d/100-monitor_openvz.inc.php index 30b51b4b5f..adc092ec95 100644 --- a/server/lib/classes/cron.d/100-monitor_openvz.inc.php +++ b/server/lib/classes/cron.d/100-monitor_openvz.inc.php @@ -69,7 +69,7 @@ class cronjob_monitor_openvz extends cronjob { /* Fetch the data into a array */ - $app->load(openvz_tools); + $app->load('openvz_tools'); $openVzTools = new openvz_tools(); $data = $openVzTools->getOpenVzVeInfo(); @@ -98,7 +98,7 @@ class cronjob_monitor_openvz extends cronjob { /* Fetch the data into a array */ - $app->load(openvz_tools); + $app->load('openvz_tools'); $openVzTools = new openvz_tools(); $data = $openVzTools->getOpenVzVeBeanCounter(); -- GitLab From cbb258385a579f319ca6dde17f9b20158c5d4f6e Mon Sep 17 00:00:00 2001 From: Marius Burkard <m.burkard@pixcept.de> Date: Wed, 31 Jul 2019 15:47:32 +0200 Subject: [PATCH 121/215] - fixed PHP warning The each() function is deprecated in cron.inc.php --- server/lib/classes/cron.inc.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/server/lib/classes/cron.inc.php b/server/lib/classes/cron.inc.php index 48ca093739..c6c2ad02b2 100644 --- a/server/lib/classes/cron.inc.php +++ b/server/lib/classes/cron.inc.php @@ -264,7 +264,7 @@ class cron { if(!array_key_exists($sField, $this->_aValidValues)) return false; reset($this->_aValidValues[$sField]); - while(($cur = each($this->_aValidValues[$sField])) !== false) { + foreach($this->_aValidValues[$sField] as $cur) { if($bIncludeCurrent == true && $cur['value'] >= $iValue) return $cur['value']; elseif($cur['value'] > $iValue) return $cur['value']; } -- GitLab From a0fed931cbf202c6d94672d3401e9286b6643843 Mon Sep 17 00:00:00 2001 From: Marius Burkard <m.burkard@pixcept.de> Date: Wed, 31 Jul 2019 15:53:06 +0200 Subject: [PATCH 122/215] - fixed problem with gid/uid problem on user creation (apache2 and nginx plugin) --- server/plugins-available/apache2_plugin.inc.php | 10 +++++----- server/plugins-available/nginx_plugin.inc.php | 10 +++++----- 2 files changed, 10 insertions(+), 10 deletions(-) diff --git a/server/plugins-available/apache2_plugin.inc.php b/server/plugins-available/apache2_plugin.inc.php index 2183e96eb4..ad8de1ab4c 100644 --- a/server/plugins-available/apache2_plugin.inc.php +++ b/server/plugins-available/apache2_plugin.inc.php @@ -606,7 +606,7 @@ class apache2_plugin { $groupname = $data['new']['system_group']; if($data['new']['system_group'] != '' && !$app->system->is_group($data['new']['system_group'])) { - $app->system->exec_safe('groupadd ? ?', $fixed_gid_param, $groupname); + $app->system->exec_safe('groupadd ' . $fixed_gid_param . ' ?', $groupname); if($apache_chrooted) $app->system->exec_safe('chroot ? groupadd ?', $web_config['website_basedir'], $groupname); $app->log('Adding the group: '.$groupname, LOGLEVEL_DEBUG); } @@ -614,11 +614,11 @@ class apache2_plugin { $username = $data['new']['system_user']; if($data['new']['system_user'] != '' && !$app->system->is_user($data['new']['system_user'])) { if($web_config['add_web_users_to_sshusers_group'] == 'y') { - $app->system->exec_safe('useradd -d ? -g ? ? -G sshusers ? -s /bin/false', $data['new']['document_root'], $groupname, $fixed_uid_param, $username); - if($apache_chrooted) $app->system->exec_safe('chroot ? useradd -d ? -g ? ? -G sshusers ? -s /bin/false', $web_config['website_basedir'], $data['new']['document_root'], $groupname, $fixed_uid_param, $username); + $app->system->exec_safe('useradd -d ? -g ? ' . $fixed_uid_param . ' -G sshusers ? -s /bin/false', $data['new']['document_root'], $groupname, $username); + if($apache_chrooted) $app->system->exec_safe('chroot ? useradd -d ? -g ? ' . $fixed_uid_param . ' -G sshusers ? -s /bin/false', $web_config['website_basedir'], $data['new']['document_root'], $groupname, $username); } else { - $app->system->exec_safe('useradd -d ? -g ? ? ? -s /bin/false', $data['new']['document_root'], $groupname, $fixed_uid_param, $username); - if($apache_chrooted) $app->system->exec_safe('chroot ? useradd -d ? -g ? ? ? -s /bin/false', $web_config['website_basedir'], $data['new']['document_root'], $groupname, $fixed_uid_param, $username); + $app->system->exec_safe('useradd -d ? -g ? ' . $fixed_uid_param . ' ? -s /bin/false', $data['new']['document_root'], $groupname, $username); + if($apache_chrooted) $app->system->exec_safe('chroot ? useradd -d ? -g ? ' . $fixed_uid_param . ' ? -s /bin/false', $web_config['website_basedir'], $data['new']['document_root'], $groupname, $username); } $app->log('Adding the user: '.$username, LOGLEVEL_DEBUG); } diff --git a/server/plugins-available/nginx_plugin.inc.php b/server/plugins-available/nginx_plugin.inc.php index 9913299aa5..86d5aba14f 100644 --- a/server/plugins-available/nginx_plugin.inc.php +++ b/server/plugins-available/nginx_plugin.inc.php @@ -451,7 +451,7 @@ class nginx_plugin { $groupname = $data['new']['system_group']; if($data['new']['system_group'] != '' && !$app->system->is_group($data['new']['system_group'])) { - $app->system->exec_safe('groupadd ? ?', $fixed_gid_param, $groupname); + $app->system->exec_safe('groupadd ' . $fixed_gid_param . ' ?', $groupname); if($nginx_chrooted) $app->system->exec_safe('chroot ? groupadd ?', $web_config['website_basedir'], $groupname); $app->log('Adding the group: '.$groupname, LOGLEVEL_DEBUG); } @@ -459,11 +459,11 @@ class nginx_plugin { $username = $data['new']['system_user']; if($data['new']['system_user'] != '' && !$app->system->is_user($data['new']['system_user'])) { if($web_config['add_web_users_to_sshusers_group'] == 'y') { - $app->system->exec_safe('useradd -d ? -g ? ? -G sshusers ? -s /bin/false', $data['new']['document_root'], $groupname, $fixed_uid_param, $username); - if($nginx_chrooted) $app->system->exec_safe('chroot ? useradd -d ? -g ? ? -G sshusers ? -s /bin/false', $web_config['website_basedir'], $data['new']['document_root'], $groupname, $fixed_uid_param, $username); + $app->system->exec_safe('useradd -d ? -g ? ' . $fixed_uid_param . ' -G sshusers ? -s /bin/false', $data['new']['document_root'], $groupname, $username); + if($nginx_chrooted) $app->system->exec_safe('chroot ? useradd -d ? -g ? ' . $fixed_uid_param . ' -G sshusers ? -s /bin/false', $web_config['website_basedir'], $data['new']['document_root'], $groupname, $username); } else { - $app->system->exec_safe('useradd -d ? -g ? ? ? -s /bin/false', $data['new']['document_root'], $groupname, $fixed_uid_param, $username); - if($nginx_chrooted) $app->system->exec_safe('chroot ? useradd -d ? -g ? ? ? -s /bin/false', $web_config['website_basedir'], $data['new']['document_root'], $groupname, $fixed_uid_param, $username); + $app->system->exec_safe('useradd -d ? -g ? ' . $fixed_uid_param . ' ? -s /bin/false', $data['new']['document_root'], $groupname, $username); + if($nginx_chrooted) $app->system->exec_safe('chroot ? useradd -d ? -g ? ' . $fixed_uid_param . ' ? -s /bin/false', $web_config['website_basedir'], $data['new']['document_root'], $groupname, $username); } $app->log('Adding the user: '.$username, LOGLEVEL_DEBUG); } -- GitLab From 112102507f29ea3b10313bac16e46978773f77db Mon Sep 17 00:00:00 2001 From: Marius Burkard <m.burkard@pixcept.de> Date: Wed, 31 Jul 2019 15:58:17 +0200 Subject: [PATCH 123/215] - fixed invalid argument count on exec_safe in shell_user plugin --- server/plugins-available/shelluser_base_plugin.inc.php | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/server/plugins-available/shelluser_base_plugin.inc.php b/server/plugins-available/shelluser_base_plugin.inc.php index 90e3293ad7..1fa61f8438 100755 --- a/server/plugins-available/shelluser_base_plugin.inc.php +++ b/server/plugins-available/shelluser_base_plugin.inc.php @@ -129,9 +129,9 @@ class shelluser_base_plugin { $app->system->chgrp($homedir,$data['new']['pgroup'],false); } $command = 'useradd -d ? -g ? -o ?'; // non unique - if($data['new']['password'] != '') $command .= ' -p ?'; + if($data['new']['password'] != '') $command .= ' -p ' . escapeshellarg($data['new']['password']); $command .= ' -s ? -u ? ?'; - $app->system->exec_safe($command, $homedir, $data['new']['pgroup'], $data['new']['password'], $data['new']['shell'], $uid, $data['new']['username']); + $app->system->exec_safe($command, $homedir, $data['new']['pgroup'], $data['new']['shell'], $uid, $data['new']['username']); $app->log("Executed command: ".$command, LOGLEVEL_DEBUG); $app->log("Added shelluser: ".$data['new']['username'], LOGLEVEL_DEBUG); -- GitLab From 6e4209499f267108c7ac25a1244177255b4b9820 Mon Sep 17 00:00:00 2001 From: Marius Burkard <m.burkard@pixcept.de> Date: Wed, 31 Jul 2019 16:00:16 +0200 Subject: [PATCH 124/215] - fixed parameter naming in app.inc.php (interface) --- interface/lib/app.inc.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/interface/lib/app.inc.php b/interface/lib/app.inc.php index 46f7213240..11bd024398 100755 --- a/interface/lib/app.inc.php +++ b/interface/lib/app.inc.php @@ -78,7 +78,7 @@ class app { $this->uses($prop); if(property_exists($this, $prop)) return $this->{$prop}; - else trigger_error('Undefined property ' . $name . ' of class app', E_USER_WARNING); + else trigger_error('Undefined property ' . $prop . ' of class app', E_USER_WARNING); } public function __destruct() { -- GitLab From a68bd9a76c61e04665fb144762aba2d57dd8c88b Mon Sep 17 00:00:00 2001 From: Marius Burkard <m.burkard@pixcept.de> Date: Wed, 31 Jul 2019 16:09:03 +0200 Subject: [PATCH 125/215] - too many arguments for useradd in shell user plugin --- server/plugins-available/shelluser_base_plugin.inc.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/server/plugins-available/shelluser_base_plugin.inc.php b/server/plugins-available/shelluser_base_plugin.inc.php index 1fa61f8438..b4e47b4e97 100755 --- a/server/plugins-available/shelluser_base_plugin.inc.php +++ b/server/plugins-available/shelluser_base_plugin.inc.php @@ -128,7 +128,7 @@ class shelluser_base_plugin { $app->system->chown($homedir,$data['new']['puser'],false); $app->system->chgrp($homedir,$data['new']['pgroup'],false); } - $command = 'useradd -d ? -g ? -o ?'; // non unique + $command = 'useradd -d ? -g ? -o'; // non unique if($data['new']['password'] != '') $command .= ' -p ' . escapeshellarg($data['new']['password']); $command .= ' -s ? -u ? ?'; $app->system->exec_safe($command, $homedir, $data['new']['pgroup'], $data['new']['shell'], $uid, $data['new']['username']); -- GitLab From 8f1357074fec6a5a74bd3531a38a581cad8550ab Mon Sep 17 00:00:00 2001 From: Marius Burkard <m.burkard@pixcept.de> Date: Thu, 1 Aug 2019 19:20:52 +0200 Subject: [PATCH 126/215] - set autofocus on username/email field for login page, implements #5358 --- interface/web/login/templates/index.htm | 2 +- interface/web/login/templates/password_reset.htm | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/interface/web/login/templates/index.htm b/interface/web/login/templates/index.htm index 9a75a66cbd..e03e58f1f1 100644 --- a/interface/web/login/templates/index.htm +++ b/interface/web/login/templates/index.htm @@ -4,7 +4,7 @@ <form accept-charset="UTF-8" role="form" method="post" action="index.php"> <fieldset> <div class="form-group"> - <input class="form-control" placeholder="{tmpl_var name='username_txt'}" name="username" id="username" type="text"> + <input class="form-control" placeholder="{tmpl_var name='username_txt'}" name="username" id="username" type="text" autofocus> </div> <div class="form-group"> <input class="form-control" placeholder="{tmpl_var name='password_txt'}" name="password" id="password" type="password" value=""> diff --git a/interface/web/login/templates/password_reset.htm b/interface/web/login/templates/password_reset.htm index 66faf490f4..49fa528834 100644 --- a/interface/web/login/templates/password_reset.htm +++ b/interface/web/login/templates/password_reset.htm @@ -9,7 +9,7 @@ <form accept-charset="UTF-8" role="form" method="post" action="password_reset.php"> <fieldset> <div class="form-group"> - <input class="form-control" placeholder="{tmpl_var name='email_txt'}" name="email" id="email" type="text"> + <input class="form-control" placeholder="{tmpl_var name='email_txt'}" name="email" id="email" type="text" autofocus> </div> <div class="form-group"> <input class="form-control" placeholder="{tmpl_var name='username_txt'}" name="username" id="username" type="text"> -- GitLab From 793394b5084d1bf912e5e94955cbcdaee18c1545 Mon Sep 17 00:00:00 2001 From: Marius Burkard <m.burkard@pixcept.de> Date: Fri, 2 Aug 2019 13:44:58 +0200 Subject: [PATCH 127/215] - fixed invalid arguments for exec_safe on dkim --- interface/web/mail/ajax_get_json.php | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/interface/web/mail/ajax_get_json.php b/interface/web/mail/ajax_get_json.php index 69705ba6f7..412958a315 100644 --- a/interface/web/mail/ajax_get_json.php +++ b/interface/web/mail/ajax_get_json.php @@ -54,8 +54,9 @@ if($type == 'create_dkim' && $domain_id != ''){ if ($dkim_strength=='') $dkim_strength = 2048; $rnd_val = $dkim_strength * 10; - $app->system->exec_safe('openssl rand -out ../../temp/random-data.bin '.$rnd_val.' 2> /dev/null', $output, $result); - $app->system->exec_safe('openssl genrsa -rand ../../temp/random-data.bin '.$dkim_strength.' 2> /dev/null', $privkey, $result); + $app->system->exec_safe('openssl rand -out ../../temp/random-data.bin '.$rnd_val.' 2> /dev/null'); + $app->system->exec_safe('openssl genrsa -rand ../../temp/random-data.bin '.$dkim_strength.' 2> /dev/null'); + $privkey = $app->system->last_exec_out(); unlink("../../temp/random-data.bin"); $dkim_private=''; foreach($privkey as $values) $dkim_private=$dkim_private.$values."\n"; -- GitLab From e39bc1d6b6db40f70d59340b4dd45957bf9e5499 Mon Sep 17 00:00:00 2001 From: Marius Burkard <m.burkard@pixcept.de> Date: Fri, 2 Aug 2019 14:16:02 +0200 Subject: [PATCH 128/215] - dkim_signing conf for rspamd not readable for daemon --- install/lib/installer_base.lib.php | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/install/lib/installer_base.lib.php b/install/lib/installer_base.lib.php index 4db0da1ecf..6fd8024e86 100644 --- a/install/lib/installer_base.lib.php +++ b/install/lib/installer_base.lib.php @@ -1578,13 +1578,13 @@ class installer_base { exec('cp tpl/rspamd_neural_group.conf.master /etc/rspamd/local.d/neural_group.conf'); } - exec('chmod a+r /etc/rspamd/local.d/* /etc/rspamd/override.d/*'); - $tpl = new tpl(); $tpl->newTemplate('rspamd_dkim_signing.conf.master'); $tpl->setVar('dkim_path', $mail_config['dkim_path']); wf('/etc/rspamd/local.d/dkim_signing.conf', $tpl->grab()); + exec('chmod a+r /etc/rspamd/local.d/* /etc/rspamd/override.d/*'); + $command = 'usermod -a -G amavis _rspamd'; caselog($command.' &> /dev/null', __FILE__, __LINE__, "EXECUTED: $command", "Failed to execute the command $command"); -- GitLab From 6311f1edc90f5a5327ca496f2fe03e833d98f130 Mon Sep 17 00:00:00 2001 From: Patrick ZAJDA <patrick@zajda.fr> Date: Sat, 3 Aug 2019 16:44:50 +0200 Subject: [PATCH 129/215] Put http to https redirect before SEO in Nginx virtualhost. It makes better the compliance with HSTS, http to https redirect must be done before domain to www.domain. --- server/conf/nginx_vhost.conf.master | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) diff --git a/server/conf/nginx_vhost.conf.master b/server/conf/nginx_vhost.conf.master index e78a107c77..b1db61fe1c 100644 --- a/server/conf/nginx_vhost.conf.master +++ b/server/conf/nginx_vhost.conf.master @@ -25,6 +25,13 @@ server { root <tmpl_var name='web_document_root_www'>; +<tmpl_if name='ssl_enabled'> +<tmpl_if name='rewrite_to_https' op='==' value='y'> + if ($scheme != "https") { + rewrite ^ https://$http_host$request_uri? permanent; + } +</tmpl_if> +</tmpl_if> <tmpl_if name='seo_redirect_enabled'> if ($http_host <tmpl_var name='seo_redirect_operator'> "<tmpl_var name='seo_redirect_origin_domain'>") { rewrite ^ $scheme://<tmpl_var name='seo_redirect_target_domain'>$request_uri? permanent; @@ -40,13 +47,6 @@ server { rewrite ^<tmpl_var name='local_redirect_exclude'>(.*)$ <tmpl_var name='local_redirect_target'>$2 <tmpl_var name='local_redirect_type'>; } </tmpl_loop> -<tmpl_if name='ssl_enabled'> -<tmpl_if name='rewrite_to_https' op='==' value='y'> - if ($scheme != "https") { - rewrite ^ https://$http_host$request_uri? permanent; - } -</tmpl_if> -</tmpl_if> <tmpl_loop name="own_redirects"> <tmpl_if name='use_rewrite'> -- GitLab From af99f3ef9682e9a5e75d9b67698ee6e57436c6b9 Mon Sep 17 00:00:00 2001 From: Till Brehm <tbrehm@ispconfig.org> Date: Tue, 6 Aug 2019 13:45:09 +0200 Subject: [PATCH 130/215] Fixes #5362 wrong pool dir used for php-fpm --- server/plugins-available/apache2_plugin.inc.php | 2 ++ 1 file changed, 2 insertions(+) diff --git a/server/plugins-available/apache2_plugin.inc.php b/server/plugins-available/apache2_plugin.inc.php index ad8de1ab4c..59e97629cb 100644 --- a/server/plugins-available/apache2_plugin.inc.php +++ b/server/plugins-available/apache2_plugin.inc.php @@ -1559,9 +1559,11 @@ class apache2_plugin { if($default_php_fpm){ $pool_dir = $web_config['php_fpm_pool_dir']; + } else { $pool_dir = $custom_php_fpm_pool_dir; } $pool_dir = trim($pool_dir); + if(substr($pool_dir, -1) != '/') $pool_dir .= '/'; $pool_name = 'web'.$data['new']['domain_id']; $socket_dir = $web_config['php_fpm_socket_dir']; -- GitLab From 8b2ecd98f9c43966475a736ee6105dde3f140593 Mon Sep 17 00:00:00 2001 From: Florian Schaal <info@schaal-24.de> Date: Wed, 7 Aug 2019 12:42:49 +0200 Subject: [PATCH 131/215] fixed typo --- interface/web/dns/dns_dkim_edit.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/interface/web/dns/dns_dkim_edit.php b/interface/web/dns/dns_dkim_edit.php index 35bac0d0c6..5c95b2033d 100644 --- a/interface/web/dns/dns_dkim_edit.php +++ b/interface/web/dns/dns_dkim_edit.php @@ -128,7 +128,7 @@ class page_action extends tform_actions { // check for duplicate entry $check=$app->db->queryOneRecord("SELECT * FROM dns_rr WHERE zone = ? AND type = ? AND data = ? AND name = ?", $this->dataRecord["zone"], $this->dataRecord["type"], $this->dataRecord["data"], $this->dataRecord['name']); if ($check!='') $app->tform->errorMessage .= $app->tform->wordbook["record_exists_txt"]; - if (empty($this->dataRecord['data'])) $app->tform->errorMessage /= $app->tform->wordbook["dkim_disabled_txt"]; + if (empty($this->dataRecord['data'])) $app->tform->errorMessage .= $app->tform->wordbook["dkim_disabled_txt"]; // validate selector and public-key if (empty($this->dataRecord['selector'])) $app->tform->errorMessage .= '<br/>'.$app->tform->wordbook["dkim_selector_empty_txt"].'<br/>'; -- GitLab From c3e2fd1604eb485e08e4a6566b8b43e0048c3b19 Mon Sep 17 00:00:00 2001 From: Marius Burkard <m.burkard@pixcept.de> Date: Mon, 12 Aug 2019 14:13:22 +0200 Subject: [PATCH 132/215] - rspamd is not set even if it is installed --- install/lib/installer_base.lib.php | 2 ++ install/lib/update.lib.php | 3 +++ 2 files changed, 5 insertions(+) diff --git a/install/lib/installer_base.lib.php b/install/lib/installer_base.lib.php index 6fd8024e86..b60300e2b1 100644 --- a/install/lib/installer_base.lib.php +++ b/install/lib/installer_base.lib.php @@ -326,6 +326,8 @@ class installer_base { $tpl_ini_array['web']['php_ini_path_cgi'] = $conf['apache']['php_ini_path_cgi']; $tpl_ini_array['mail']['pop3_imap_daemon'] = ($conf['dovecot']['installed'] == true)?'dovecot':'courier'; $tpl_ini_array['mail']['mail_filter_syntax'] = ($conf['dovecot']['installed'] == true)?'sieve':'maildrop'; + $tpl_ini_array['mail']['content_filter'] = @($conf['rspamd']['installed']) ? 'rspamd' : 'amavis'; + $tpl_ini_array['mail']['rspamd_available'] = @($conf['rspamd']['installed']) ? 'y' : 'n'; $tpl_ini_array['dns']['bind_user'] = $conf['bind']['bind_user']; $tpl_ini_array['dns']['bind_group'] = $conf['bind']['bind_group']; $tpl_ini_array['dns']['bind_zonefiles_dir'] = $conf['bind']['bind_zonefiles_dir']; diff --git a/install/lib/update.lib.php b/install/lib/update.lib.php index fd1a34b2ca..9deb8ca10e 100644 --- a/install/lib/update.lib.php +++ b/install/lib/update.lib.php @@ -335,6 +335,9 @@ function updateDbAndIni() { $tpl_ini_array['web']['php_ini_path_cgi'] = $conf['apache']['php_ini_path_cgi']; $tpl_ini_array['mail']['pop3_imap_daemon'] = ($conf['dovecot']['installed'] == true)?'dovecot':'courier'; $tpl_ini_array['mail']['mail_filter_syntax'] = ($conf['dovecot']['installed'] == true)?'sieve':'maildrop'; + // do not switch to rspamd automatically! + // $tpl_ini_array['mail']['content_filter'] = @($conf['rspamd']['installed']) ? 'rspamd' : 'amavis'; + $tpl_ini_array['mail']['rspamd_available'] = @($conf['rspamd']['installed']) ? 'y' : 'n'; $tpl_ini_array['dns']['bind_user'] = $conf['bind']['bind_user']; $tpl_ini_array['dns']['bind_group'] = $conf['bind']['bind_group']; $tpl_ini_array['dns']['bind_zonefiles_dir'] = $conf['bind']['bind_zonefiles_dir']; -- GitLab From befdfb2ae5e9d33c90a1584c3be0fd055bcd0687 Mon Sep 17 00:00:00 2001 From: Marius Burkard <m.burkard@pixcept.de> Date: Mon, 12 Aug 2019 15:01:31 +0200 Subject: [PATCH 133/215] - added missing rspamd lines in apps vhost template on install --- install/lib/installer_base.lib.php | 11 ++++++++++- install/tpl/apache_apps.vhost.master | 18 ++++++++++++++++++ install/tpl/nginx_apps.vhost.master | 24 ++++++++++++++++++++++++ 3 files changed, 52 insertions(+), 1 deletion(-) diff --git a/install/lib/installer_base.lib.php b/install/lib/installer_base.lib.php index b60300e2b1..c7f955d945 100644 --- a/install/lib/installer_base.lib.php +++ b/install/lib/installer_base.lib.php @@ -2226,7 +2226,10 @@ class installer_base { $tpl->setVar('logging','yes'); } - + if($conf['rspamd']['installed'] == true) { + $tpl->setVar('use_rspamd', 'yes'); + } + // comment out the listen directive if port is 80 or 443 if($conf['web']['apps_vhost_ip'] == 80 or $conf['web']['apps_vhost_ip'] == 443) { $tpl->setVar('vhost_port_listen','#'); @@ -2294,6 +2297,12 @@ class installer_base { $apps_vhost_ip = $conf['web']['apps_vhost_ip'].':'; } + if($conf['rspamd']['installed'] == true) { + $content = str_replace('{use_rspamd}', '', $content); + } else { + $content = str_replace('{use_rspamd}', '# ', $content); + } + $socket_dir = escapeshellcmd($conf['nginx']['php_fpm_socket_dir']); if(substr($socket_dir, -1) != '/') $socket_dir .= '/'; if(!is_dir($socket_dir)) exec('mkdir -p '.$socket_dir); diff --git a/install/tpl/apache_apps.vhost.master b/install/tpl/apache_apps.vhost.master index ee1b693097..9cccf8d38e 100644 --- a/install/tpl/apache_apps.vhost.master +++ b/install/tpl/apache_apps.vhost.master @@ -19,6 +19,12 @@ RequestHeader unset Proxy early </IfModule> + {tmpl_if name="enable_spdy" op="==" value="y"} + <IfModule spdy_module> + SpdyEnabled on + </IfModule> + {/tmpl_if} + <IfModule mod_php5.c> DocumentRoot {tmpl_var name='apps_vhost_dir'} AddType application/x-httpd-php .php @@ -68,6 +74,18 @@ </Directory> </IfModule> +{tmpl_if name="use_rspamd"} + <Location /rspamd> + Order allow,deny + Allow from all + </Location> + RewriteEngine On + RewriteRule ^/rspamd$ /rspamd/ [R,L] + RewriteRule ^/rspamd/(.*) http://127.0.0.1:11334/$1 [P] +{/tmpl_if} + + + </VirtualHost> diff --git a/install/tpl/nginx_apps.vhost.master b/install/tpl/nginx_apps.vhost.master index 3d00d11106..871dff8c57 100644 --- a/install/tpl/nginx_apps.vhost.master +++ b/install/tpl/nginx_apps.vhost.master @@ -208,4 +208,28 @@ server { alias /var/lib/mailman/archives/public; autoindex on; } + + {use_rspamd}location /rspamd/ { + {use_rspamd}proxy_pass http://127.0.0.1:11334/; + {use_rspamd}rewrite ^//(.*) /$1; + {use_rspamd}proxy_set_header X-Forwarded-Proto $scheme; + {use_rspamd}proxy_set_header Host $host; + {use_rspamd}proxy_set_header X-Real-IP $remote_addr; + {use_rspamd}proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; + {use_rspamd}proxy_pass_header Authorization; + {use_rspamd}client_max_body_size 0; + {use_rspamd}client_body_buffer_size 1m; + {use_rspamd}proxy_intercept_errors on; + {use_rspamd}proxy_buffering on; + {use_rspamd}proxy_buffer_size 128k; + {use_rspamd}proxy_buffers 256 16k; + {use_rspamd}proxy_busy_buffers_size 256k; + {use_rspamd}proxy_temp_file_write_size 256k; + {use_rspamd}proxy_max_temp_file_size 0; + {use_rspamd}proxy_read_timeout 300; + {use_rspamd} + {use_rspamd}location ~* ^/rspamd/(.+\.(jpg|jpeg|gif|css|png|js|ico|html?|xml|txt))$ { + {use_rspamd}alias /usr/share/rspamd/www/$1; + {use_rspamd}} + {use_rspamd}} } -- GitLab From 7eb3be87690f6bb9aa6e399375c7254359cf0f83 Mon Sep 17 00:00:00 2001 From: Marius Burkard <m.burkard@pixcept.de> Date: Thu, 15 Aug 2019 10:42:41 +0200 Subject: [PATCH 134/215] - re-wrote policy editing to separate rspamd and amavis settings --- install/patches/upd_0088.php | 47 +++++ .../web/mail/form/spamfilter_policy.tform.php | 146 ++++++------- .../mail/lib/lang/en_spamfilter_policy.lng | 8 +- interface/web/mail/spamfilter_policy_edit.php | 80 ++----- .../mail/templates/spamfilter_amavis_edit.htm | 198 ++++++++++++++++++ .../mail/templates/spamfilter_other_edit.htm | 67 ------ .../mail/templates/spamfilter_policy_edit.htm | 36 +--- .../templates/spamfilter_quarantine_edit.htm | 35 ---- .../mail/templates/spamfilter_rspamd_edit.htm | 36 ++++ .../templates/spamfilter_taglevel_edit.htm | 69 ------ 10 files changed, 372 insertions(+), 350 deletions(-) create mode 100644 install/patches/upd_0088.php create mode 100644 interface/web/mail/templates/spamfilter_amavis_edit.htm delete mode 100644 interface/web/mail/templates/spamfilter_other_edit.htm delete mode 100644 interface/web/mail/templates/spamfilter_quarantine_edit.htm create mode 100644 interface/web/mail/templates/spamfilter_rspamd_edit.htm delete mode 100644 interface/web/mail/templates/spamfilter_taglevel_edit.htm diff --git a/install/patches/upd_0088.php b/install/patches/upd_0088.php new file mode 100644 index 0000000000..47a10f6080 --- /dev/null +++ b/install/patches/upd_0088.php @@ -0,0 +1,47 @@ +<?php + +if(!defined('INSTALLER_RUN')) die('Patch update file access violation.'); + +/* + Example installer patch update class. the classname must match + the php and the sql patch update filename. The php patches are + only executed when a corresponding sql patch exists. +*/ + +class upd_0088 extends installer_patch_update { + + public function onAfterSQL() { + global $inst; + + // delete all the files that were deleted on previous updates + $delete = array( + 'interface/web/mail/templates/spamfilter_taglevel_edit.htm', + 'interface/web/mail/templates/spamfilter_quarantine_edit.htm', + 'interface/web/mail/templates/spamfilter_other_edit.htm', + ); + + $curpath = dirname(dirname(realpath(dirname(__FILE__)))); + + $c = 0; + $del_all = false; + foreach($delete as $file) { + if(strpos($file, '..') !== false) continue; // security! + + if($del_all == false) { + $answer = $inst->simple_query('Delete obsolete file ' . $file . '?', array('y', 'n', 'a', 'all', 'none'), 'y'); + if($answer == 'n') continue; + elseif($answer == 'a' || $answer == 'all') $del_all = true; + elseif($answer == 'none') break; + } + if(@is_file('/usr/local/ispconfig/' . $file) && !@is_file($curpath . '/' . $file)) { + // be sure this is not a file contained in installation! + @unlink('/usr/local/ispconfig/' . $file); + ilog('Deleted obsolete file /usr/local/ispconfig/' . $file); + $c++; + } + } + ilog($c . 'obsolete files deleted.'); + } +} + +?> diff --git a/interface/web/mail/form/spamfilter_policy.tform.php b/interface/web/mail/form/spamfilter_policy.tform.php index d6ecef9bbc..2205dbb651 100644 --- a/interface/web/mail/form/spamfilter_policy.tform.php +++ b/interface/web/mail/form/spamfilter_policy.tform.php @@ -87,6 +87,21 @@ $form["tabs"]['policy'] = array ( 'default' => 'N', 'value' => array('N' => 'No', 'Y' => 'Yes') ), + //################################# + // ENDE Datatable fields + //################################# + ) +); + + +$form["tabs"]['amavis'] = array ( + 'title' => "Amavis", + 'width' => 100, + 'template' => "templates/spamfilter_amavis_edit.htm", + 'fields' => array ( + //################################# + // Begin Datatable fields + //################################# 'banned_files_lover' => array ( 'datatype' => 'VARCHAR', 'formtype' => 'SELECT', @@ -117,21 +132,6 @@ $form["tabs"]['policy'] = array ( 'default' => 'N', 'value' => array('N' => 'No', 'Y' => 'Yes') ), - //################################# - // ENDE Datatable fields - //################################# - ) -); - - -$form["tabs"]['quarantine'] = array ( - 'title' => "Quarantine", - 'width' => 100, - 'template' => "templates/spamfilter_quarantine_edit.htm", - 'fields' => array ( - //################################# - // Begin Datatable fields - //################################# 'virus_quarantine_to' => array ( 'datatype' => 'VARCHAR', 'formtype' => 'TEXT', @@ -216,20 +216,6 @@ $form["tabs"]['quarantine'] = array ( 'width' => '30', 'maxlength' => '255' ), - //################################# - // ENDE Datatable fields - //################################# - ) -); - -$form["tabs"]['taglevel'] = array ( - 'title' => "Tag-Level", - 'width' => 100, - 'template' => "templates/spamfilter_taglevel_edit.htm", - 'fields' => array ( - //################################# - // Begin Datatable fields - //################################# 'spam_tag_level' => array ( 'datatype' => 'DOUBLE', 'formtype' => 'TEXT', @@ -304,57 +290,6 @@ $form["tabs"]['taglevel'] = array ( 'width' => '30', 'maxlength' => '255' ), - 'rspamd_greylisting' => array ( - 'datatype' => 'VARCHAR', - 'formtype' => 'CHECKBOX', - 'default' => 'y', - 'value' => array(0 => 'n', 1 => 'y') - ), - 'rspamd_spam_greylisting_level' => array ( - 'datatype' => 'DOUBLE', - 'formtype' => 'TEXT', - 'default' => '0', - 'value' => '', - 'width' => '10', - 'maxlength' => '255' - ), - 'rspamd_spam_tag_level' => array ( - 'datatype' => 'DOUBLE', - 'formtype' => 'TEXT', - 'default' => '0', - 'value' => '', - 'width' => '10', - 'maxlength' => '255' - ), - 'rspamd_spam_tag_method' => array ( - 'datatype' => 'VARCHAR', - 'formtype' => 'SELECT', - 'default' => 'rewrite_subject', - 'value' => array('add_header' => $app->lng('add_header_txt'), 'rewrite_subject' => $app->lng('rewrite_subject_txt')) - ), - 'rspamd_spam_kill_level' => array ( - 'datatype' => 'DOUBLE', - 'formtype' => 'TEXT', - 'default' => '0', - 'value' => '', - 'width' => '10', - 'maxlength' => '255' - ), - //################################# - // ENDE Datatable fields - //################################# - ) -); - - -$form["tabs"]['other'] = array ( - 'title' => "Other", - 'width' => 100, - 'template' => "templates/spamfilter_other_edit.htm", - 'fields' => array ( - //################################# - // Begin Datatable fields - //################################# 'addr_extension_virus' => array ( 'datatype' => 'VARCHAR', 'formtype' => 'TEXT', @@ -522,11 +457,58 @@ $form["tabs"]['other'] = array ( 'width' => '30', 'maxlength' => '255' ), - //################################# // ENDE Datatable fields //################################# ) ); -?> +$form["tabs"]['rspamd'] = array ( + 'title' => "Rspamd", + 'width' => 100, + 'template' => "templates/spamfilter_rspamd_edit.htm", + 'fields' => array ( + //################################# + // Begin Datatable fields + //################################# + 'rspamd_greylisting' => array ( + 'datatype' => 'VARCHAR', + 'formtype' => 'CHECKBOX', + 'default' => 'y', + 'value' => array(0 => 'n', 1 => 'y') + ), + 'rspamd_spam_greylisting_level' => array ( + 'datatype' => 'DOUBLE', + 'formtype' => 'TEXT', + 'default' => '0', + 'value' => '', + 'width' => '10', + 'maxlength' => '255' + ), + 'rspamd_spam_tag_level' => array ( + 'datatype' => 'DOUBLE', + 'formtype' => 'TEXT', + 'default' => '0', + 'value' => '', + 'width' => '10', + 'maxlength' => '255' + ), + 'rspamd_spam_tag_method' => array ( + 'datatype' => 'VARCHAR', + 'formtype' => 'SELECT', + 'default' => 'rewrite_subject', + 'value' => array('add_header' => $app->lng('add_header_txt'), 'rewrite_subject' => $app->lng('rewrite_subject_txt')) + ), + 'rspamd_spam_kill_level' => array ( + 'datatype' => 'DOUBLE', + 'formtype' => 'TEXT', + 'default' => '0', + 'value' => '', + 'width' => '10', + 'maxlength' => '255' + ), + //################################# + // ENDE Datatable fields + //################################# + ) +); diff --git a/interface/web/mail/lib/lang/en_spamfilter_policy.lng b/interface/web/mail/lib/lang/en_spamfilter_policy.lng index f9e8a8e303..af1aac5d7f 100644 --- a/interface/web/mail/lib/lang/en_spamfilter_policy.lng +++ b/interface/web/mail/lib/lang/en_spamfilter_policy.lng @@ -42,4 +42,10 @@ $wb['rspamd_spam_tag_method_txt'] = 'SPAM tag method'; $wb['rspamd_spam_kill_level_txt'] = 'SPAM reject level'; $wb['btn_save_txt'] = 'Save'; $wb['btn_cancel_txt'] = 'Cancel'; -?> \ No newline at end of file + +$wb['amavis_settings_txt'] = 'Settings'; +$wb['amavis_taglevel_txt'] = 'Tag-Level'; +$wb['amavis_quarantine_txt'] = 'Quarantine'; +$wb['amavis_other_txt'] = 'Other'; +$wb['add_header_txt'] = 'Add header'; +$wb['rewrite_subject_txt'] = 'Rewrite subject'; \ No newline at end of file diff --git a/interface/web/mail/spamfilter_policy_edit.php b/interface/web/mail/spamfilter_policy_edit.php index 55a42fe847..ffc0818ffa 100644 --- a/interface/web/mail/spamfilter_policy_edit.php +++ b/interface/web/mail/spamfilter_policy_edit.php @@ -49,48 +49,9 @@ $app->uses('tpl,tform,tform_actions'); $app->load('tform_actions'); class page_action extends tform_actions { - - function onShow() { - global $app, $conf; - - // get the config - $app->uses('getconf'); - $mail_config = $app->getconf->get_server_config($conf['server_id'], 'mail'); - - $content_filter = 'amavisd'; - if($mail_config['content_filter'] == 'rspamd'){ - $content_filter = 'rspamd'; - unset($app->tform->formDef["tabs"]["policy"]['fields']['banned_files_lover']); - unset($app->tform->formDef["tabs"]["policy"]['fields']['bad_header_lover']); - unset($app->tform->formDef["tabs"]["policy"]['fields']['bypass_virus_checks']); - unset($app->tform->formDef["tabs"]["policy"]['fields']['bypass_banned_checks']); - unset($app->tform->formDef["tabs"]["policy"]['fields']['bypass_header_checks']); - - unset($app->tform->formDef["tabs"]["taglevel"]['fields']['spam_tag_level']); - unset($app->tform->formDef["tabs"]["taglevel"]['fields']['spam_tag2_level']); - unset($app->tform->formDef["tabs"]["taglevel"]['fields']['spam_kill_level']); - unset($app->tform->formDef["tabs"]["taglevel"]['fields']['spam_dsn_cutoff_level']); - unset($app->tform->formDef["tabs"]["taglevel"]['fields']['spam_quarantine_cutoff_level']); - unset($app->tform->formDef["tabs"]["taglevel"]['fields']['spam_modifies_subj']); - unset($app->tform->formDef["tabs"]["taglevel"]['fields']['spam_subject_tag']); - unset($app->tform->formDef["tabs"]["taglevel"]['fields']['spam_subject_tag2']); - - unset($app->tform->formDef["tabs"]["quarantine"]); - unset($app->tform->formDef["tabs"]["other"]); - } else { - unset($app->tform->formDef["tabs"]["taglevel"]['fields']['rspamd_greylisting']); - unset($app->tform->formDef["tabs"]["taglevel"]['fields']['rspamd_spam_greylisting_level']); - unset($app->tform->formDef["tabs"]["taglevel"]['fields']['rspamd_spam_tag_level']); - unset($app->tform->formDef["tabs"]["taglevel"]['fields']['rspamd_spam_tag_method']); - unset($app->tform->formDef["tabs"]["taglevel"]['fields']['rspamd_spam_kill_level']); - } - $app->tpl->setVar("content_filter", $content_filter); - - parent::onShow(); - } function onShowNew() { - global $app, $conf; + global $app; // we will check only users, not admins if($_SESSION["s"]["user"]["typ"] == 'user') { @@ -106,7 +67,7 @@ class page_action extends tform_actions { } function onSubmit() { - global $app, $conf; + global $app; // Check the client limits, if user is not the admin if($_SESSION["s"]["user"]["typ"] != 'admin') { // if user is not admin @@ -128,35 +89,30 @@ class page_action extends tform_actions { } function onAfterUpdate() { - global $app, $conf; - - $app->uses('getconf'); - $mail_config = $app->getconf->get_server_config($conf['server_id'], 'mail'); + global $app; - if($mail_config['content_filter'] == 'rspamd'){ - $record_has_changed = false; - if(isset($this->dataRecord['rspamd_spam_greylisting_level']) && !isset($this->dataRecord['rspamd_greylisting'])) $this->dataRecord['rspamd_greylisting'] = 'n'; - foreach($this->dataRecord as $key => $val) { - if(isset($this->oldDataRecord[$key]) && @$this->oldDataRecord[$key] != $val) { - // Record has changed - $record_has_changed = true; - } + $record_has_changed = false; + if(isset($this->dataRecord['rspamd_spam_greylisting_level']) && !isset($this->dataRecord['rspamd_greylisting'])) { + $this->dataRecord['rspamd_greylisting'] = 'n'; + } + foreach($this->dataRecord as $key => $val) { + if(isset($this->oldDataRecord[$key]) && @$this->oldDataRecord[$key] != $val) { + // Record has changed + $record_has_changed = true; } - - if($record_has_changed){ - $spamfilter_users = $app->db->queryAllRecords("SELECT * FROM spamfilter_users WHERE policy_id = ?", intval($this->id)); + } + + if($record_has_changed){ + $spamfilter_users = $app->db->queryAllRecords("SELECT * FROM spamfilter_users WHERE policy_id = ?", intval($this->id)); - if(is_array($spamfilter_users) && !empty($spamfilter_users)){ - foreach($spamfilter_users as $spamfilter_user){ - $app->db->datalogUpdate('spamfilter_users', $spamfilter_user, 'id', $spamfilter_user["id"], true); - } + if(is_array($spamfilter_users) && !empty($spamfilter_users)){ + foreach($spamfilter_users as $spamfilter_user){ + $app->db->datalogUpdate('spamfilter_users', $spamfilter_user, 'id', $spamfilter_user["id"], true); } } } } - } $app->tform_actions = new page_action; $app->tform_actions->onLoad(); -?> \ No newline at end of file diff --git a/interface/web/mail/templates/spamfilter_amavis_edit.htm b/interface/web/mail/templates/spamfilter_amavis_edit.htm new file mode 100644 index 0000000000..41bf6b5410 --- /dev/null +++ b/interface/web/mail/templates/spamfilter_amavis_edit.htm @@ -0,0 +1,198 @@ +<div class='page-header'> + <h1><tmpl_var name="list_head_txt"></h1> +</div> +<p><tmpl_var name="list_desc_txt"></p> + +<div class="panel-group" id="accordion" role="tablist" aria-multiselectable="true"> + <!-- Settings --> + <div class="panel panel-default"> + <div class="panel-heading" role="tab" id="headingSettings"> + <h4 class="panel-title"> + <a role="button" data-toggle="collapse" data-parent="#accordion" href="#collapseSettings" aria-expanded="true" aria-controls="collapseSettings"> + {tmpl_var name='amavis_settings_txt'} + </a> + </h4> + </div> + <div id="collapseSettings" class="panel-collapse collapse in" role="tabpanel" aria-labelledby="headingWeb"> + <div class="panel-body"> + <div class="form-group"> + <label for="banned_files_lover" class="col-sm-3 control-label">{tmpl_var name='banned_files_lover_txt'}</label> + <div class="col-sm-9"><select name="banned_files_lover" id="banned_files_lover" class="form-control"> + {tmpl_var name='banned_files_lover'} + </select></div> + </div> + <div class="form-group"> + <label for="bad_header_lover" class="col-sm-3 control-label">{tmpl_var name='bad_header_lover_txt'}</label> + <div class="col-sm-9"><select name="bad_header_lover" id="bad_header_lover" class="form-control"> + {tmpl_var name='bad_header_lover'} + </select></div> + </div> + <div class="form-group"> + <label for="bypass_virus_checks" class="col-sm-3 control-label">{tmpl_var name='bypass_virus_checks_txt'}</label> + <div class="col-sm-9"><select name="bypass_virus_checks" id="bypass_virus_checks" class="form-control"> + {tmpl_var name='bypass_virus_checks'} + </select></div> + </div> + <div class="form-group"> + <label for="bypass_banned_checks" class="col-sm-3 control-label">{tmpl_var name='bypass_banned_checks_txt'}</label> + <div class="col-sm-9"><select name="bypass_banned_checks" id="bypass_banned_checks" class="form-control"> + {tmpl_var name='bypass_banned_checks'} + </select></div> + </div> + <div class="form-group"> + <label for="bypass_header_checks" class="col-sm-3 control-label">{tmpl_var name='bypass_header_checks_txt'}</label> + <div class="col-sm-9"><select name="bypass_header_checks" id="bypass_header_checks" class="form-control"> + {tmpl_var name='bypass_header_checks'} + </select></div> + </div> + </div> + </div> + </div> + +<!-- Tag Level --> + <div class="panel panel-default"> + <div class="panel-heading" role="tab" id="headingTaglevel"> + <h4 class="panel-title"> + <a role="button" data-toggle="collapse" data-parent="#accordion" href="#collapseTaglevel" aria-expanded="true" aria-controls="collapseTaglevel"> + {tmpl_var name='amavis_taglevel_txt'} + </a> + </h4> + </div> + <div id="collapseTaglevel" class="panel-collapse collapse" role="tabpanel" aria-labelledby="headingTaglevel"> + <div class="panel-body"> + + <div class="form-group"> + <label for="spam_tag_level" class="col-sm-3 control-label">{tmpl_var name='spam_tag_level_txt'}</label> + <div class="col-sm-9"><input type="text" name="spam_tag_level" id="spam_tag_level" value="{tmpl_var name='spam_tag_level'}" class="form-control" /></div></div> + <div class="form-group"> + <label for="spam_tag2_level" class="col-sm-3 control-label">{tmpl_var name='spam_tag2_level_txt'}</label> + <div class="col-sm-9"><input type="text" name="spam_tag2_level" id="spam_tag2_level" value="{tmpl_var name='spam_tag2_level'}" class="form-control" /></div></div> + <div class="form-group"> + <label for="spam_kill_level" class="col-sm-3 control-label">{tmpl_var name='spam_kill_level_txt'}</label> + <div class="col-sm-9"><input type="text" name="spam_kill_level" id="spam_kill_level" value="{tmpl_var name='spam_kill_level'}" class="form-control" /></div></div> + <div class="form-group"> + <label for="spam_dsn_cutoff_level" class="col-sm-3 control-label">{tmpl_var name='spam_dsn_cutoff_level_txt'}</label> + <div class="col-sm-9"><input type="text" name="spam_dsn_cutoff_level" id="spam_dsn_cutoff_level" value="{tmpl_var name='spam_dsn_cutoff_level'}" class="form-control" /></div></div> + <div class="form-group"> + <label for="spam_quarantine_cutoff_level" class="col-sm-3 control-label">{tmpl_var name='spam_quarantine_cutoff_level_txt'}</label> + <div class="col-sm-9"><input type="text" name="spam_quarantine_cutoff_level" id="spam_quarantine_cutoff_level" value="{tmpl_var name='spam_quarantine_cutoff_level'}" class="form-control" /></div></div> + <div class="form-group"> + <label for="spam_modifies_subj" class="col-sm-3 control-label">{tmpl_var name='spam_modifies_subj_txt'}</label> + <div class="col-sm-9"><select name="spam_modifies_subj" id="spam_modifies_subj" class="form-control"> + {tmpl_var name='spam_modifies_subj'} + </select></div> + </div> + <div class="form-group"> + <label for="spam_subject_tag" class="col-sm-3 control-label">{tmpl_var name='spam_subject_tag_txt'}</label> + <div class="col-sm-9"><input type="text" name="spam_subject_tag" id="spam_subject_tag" value="{tmpl_var name='spam_subject_tag'}" class="form-control" /></div></div> + <div class="form-group"> + <label for="spam_subject_tag2" class="col-sm-3 control-label">{tmpl_var name='spam_subject_tag2_txt'}</label> + <div class="col-sm-9"><input type="text" name="spam_subject_tag2" id="spam_subject_tag2" value="{tmpl_var name='spam_subject_tag2'}" class="form-control" /></div></div> + </div> + </div> + </div> + +<!-- Quarantine --> + <div class="panel panel-default"> + <div class="panel-heading" role="tab" id="headingQuarantine"> + <h4 class="panel-title"> + <a role="button" data-toggle="collapse" data-parent="#accordion" href="#collapseQuarantine" aria-expanded="true" aria-controls="collapseQuarantine"> + {tmpl_var name='amavis_quarantine_txt'} + </a> + </h4> + </div> + <div id="collapseQuarantine" class="panel-collapse collapse" role="tabpanel" aria-labelledby="headingQuarantine"> + <div class="panel-body"> + + + <div class="form-group"> + <label for="virus_quarantine_to" class="col-sm-3 control-label">{tmpl_var name='virus_quarantine_to_txt'}</label> + <div class="col-sm-9"><input type="text" name="virus_quarantine_to" id="virus_quarantine_to" value="{tmpl_var name='virus_quarantine_to'}" class="form-control" /></div></div> + <div class="form-group"> + <label for="spam_quarantine_to" class="col-sm-3 control-label">{tmpl_var name='spam_quarantine_to_txt'}</label> + <div class="col-sm-9"><input type="text" name="spam_quarantine_to" id="spam_quarantine_to" value="{tmpl_var name='spam_quarantine_to'}" class="form-control" /></div></div> + <div class="form-group"> + <label for="banned_quarantine_to" class="col-sm-3 control-label">{tmpl_var name='banned_quarantine_to_txt'}</label> + <div class="col-sm-9"><input type="text" name="banned_quarantine_to" id="banned_quarantine_to" value="{tmpl_var name='banned_quarantine_to'}" class="form-control" /></div></div> + <div class="form-group"> + <label for="bad_header_quarantine_to" class="col-sm-3 control-label">{tmpl_var name='bad_header_quarantine_to_txt'}</label> + <div class="col-sm-9"><input type="text" name="bad_header_quarantine_to" id="bad_header_quarantine_to" value="{tmpl_var name='bad_header_quarantine_to'}" class="form-control" /></div></div> + </div> + </div> + </div> + +<!-- Other --> + <div class="panel panel-default"> + <div class="panel-heading" role="tab" id="headingOther"> + <h4 class="panel-title"> + <a role="button" data-toggle="collapse" data-parent="#accordion" href="#collapseOther" aria-expanded="true" aria-controls="collapseOther"> + {tmpl_var name='amavis_other_txt'} + </a> + </h4> + </div> + <div id="collapseOther" class="panel-collapse collapse" role="tabpanel" aria-labelledby="headingOther"> + <div class="panel-body"> + + <div class="form-group"> + <label for="addr_extension_virus" class="col-sm-3 control-label">{tmpl_var name='addr_extension_virus_txt'}</label> + <div class="col-sm-9"><input type="text" name="addr_extension_virus" id="addr_extension_virus" value="{tmpl_var name='addr_extension_virus'}" class="form-control" /></div></div> + <div class="form-group"> + <label for="addr_extension_spam" class="col-sm-3 control-label">{tmpl_var name='addr_extension_spam_txt'}</label> + <div class="col-sm-9"><input type="text" name="addr_extension_spam" id="addr_extension_spam" value="{tmpl_var name='addr_extension_spam'}" class="form-control" /></div></div> + <div class="form-group"> + <label for="addr_extension_banned" class="col-sm-3 control-label">{tmpl_var name='addr_extension_banned_txt'}</label> + <div class="col-sm-9"><input type="text" name="addr_extension_banned" id="addr_extension_banned" value="{tmpl_var name='addr_extension_banned'}" class="form-control" /></div></div> + <div class="form-group"> + <label for="addr_extension_bad_header" class="col-sm-3 control-label">{tmpl_var name='addr_extension_bad_header_txt'}</label> + <div class="col-sm-9"><input type="text" name="addr_extension_bad_header" id="addr_extension_bad_header" value="{tmpl_var name='addr_extension_bad_header'}" class="form-control" /></div></div> + <div class="form-group"> + <label for="warnvirusrecip" class="col-sm-3 control-label">{tmpl_var name='warnvirusrecip_txt'}</label> + <div class="col-sm-9"><select name="warnvirusrecip" id="warnvirusrecip" class="form-control"> + {tmpl_var name='warnvirusrecip'} + </select></div> + </div> + <div class="form-group"> + <label for="warnbannedrecip" class="col-sm-3 control-label">{tmpl_var name='warnbannedrecip_txt'}</label> + <div class="col-sm-9"><select name="warnbannedrecip" id="warnbannedrecip" class="form-control"> + {tmpl_var name='warnbannedrecip'} + </select></div> + </div> + <div class="form-group"> + <label for="warnbadhrecip" class="col-sm-3 control-label">{tmpl_var name='warnbadhrecip_txt'}</label> + <div class="col-sm-9"><select name="warnbadhrecip" id="warnbadhrecip" class="form-control"> + {tmpl_var name='warnbadhrecip'} + </select></div> + </div> + <div class="form-group"> + <label for="newvirus_admin" class="col-sm-3 control-label">{tmpl_var name='newvirus_admin_txt'}</label> + <div class="col-sm-9"><input type="text" name="newvirus_admin" id="newvirus_admin" value="{tmpl_var name='newvirus_admin'}" class="form-control" /></div></div> + <div class="form-group"> + <label for="virus_admin" class="col-sm-3 control-label">{tmpl_var name='virus_admin_txt'}</label> + <div class="col-sm-9"><input type="text" name="virus_admin" id="virus_admin" value="{tmpl_var name='virus_admin'}" class="form-control" /></div></div> + <div class="form-group"> + <label for="banned_admin" class="col-sm-3 control-label">{tmpl_var name='banned_admin_txt'}</label> + <div class="col-sm-9"><input type="text" name="banned_admin" id="banned_admin" value="{tmpl_var name='banned_admin'}" class="form-control" /></div></div> + <div class="form-group"> + <label for="bad_header_admin" class="col-sm-3 control-label">{tmpl_var name='bad_header_admin_txt'}</label> + <div class="col-sm-9"><input type="text" name="bad_header_admin" id="bad_header_admin" value="{tmpl_var name='bad_header_admin'}" class="form-control" /></div></div> + <div class="form-group"> + <label for="spam_admin" class="col-sm-3 control-label">{tmpl_var name='spam_admin_txt'}</label> + <div class="col-sm-9"><input type="text" name="spam_admin" id="spam_admin" value="{tmpl_var name='spam_admin'}" class="form-control" /></div></div> + <div class="form-group"> + <label for="message_size_limit" class="col-sm-3 control-label">{tmpl_var name='message_size_limit_txt'}</label> + <div class="col-sm-9"><div class="input-group"><input type="text" name="message_size_limit" id="message_size_limit" value="{tmpl_var name='message_size_limit'}" class="form-control" aria-describedby="message_size_limit-desc" /><span class="input-group-addon" id="message_size_limit-desc">Bytes</span></div></div> + </div> + <div class="form-group"> + <label for="banned_rulenames" class="col-sm-3 control-label">{tmpl_var name='banned_rulenames_txt'}</label> + <div class="col-sm-9"><input type="text" name="banned_rulenames" id="banned_rulenames" value="{tmpl_var name='banned_rulenames'}" class="form-control" /></div></div> + </div> + </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="mail/spamfilter_policy_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/spamfilter_policy_list.php">{tmpl_var name='btn_cancel_txt'}</button> + </div></div> \ No newline at end of file diff --git a/interface/web/mail/templates/spamfilter_other_edit.htm b/interface/web/mail/templates/spamfilter_other_edit.htm deleted file mode 100644 index 83cd4a95c9..0000000000 --- a/interface/web/mail/templates/spamfilter_other_edit.htm +++ /dev/null @@ -1,67 +0,0 @@ -<div class='page-header'> - <h1><tmpl_var name="list_head_txt"></h1> -</div> -<p><tmpl_var name="list_desc_txt"></p> - - - - <div class="form-group"> - <label for="addr_extension_virus" class="col-sm-3 control-label">{tmpl_var name='addr_extension_virus_txt'}</label> - <div class="col-sm-9"><input type="text" name="addr_extension_virus" id="addr_extension_virus" value="{tmpl_var name='addr_extension_virus'}" class="form-control" /></div></div> - <div class="form-group"> - <label for="addr_extension_spam" class="col-sm-3 control-label">{tmpl_var name='addr_extension_spam_txt'}</label> - <div class="col-sm-9"><input type="text" name="addr_extension_spam" id="addr_extension_spam" value="{tmpl_var name='addr_extension_spam'}" class="form-control" /></div></div> - <div class="form-group"> - <label for="addr_extension_banned" class="col-sm-3 control-label">{tmpl_var name='addr_extension_banned_txt'}</label> - <div class="col-sm-9"><input type="text" name="addr_extension_banned" id="addr_extension_banned" value="{tmpl_var name='addr_extension_banned'}" class="form-control" /></div></div> - <div class="form-group"> - <label for="addr_extension_bad_header" class="col-sm-3 control-label">{tmpl_var name='addr_extension_bad_header_txt'}</label> - <div class="col-sm-9"><input type="text" name="addr_extension_bad_header" id="addr_extension_bad_header" value="{tmpl_var name='addr_extension_bad_header'}" class="form-control" /></div></div> - <div class="form-group"> - <label for="warnvirusrecip" class="col-sm-3 control-label">{tmpl_var name='warnvirusrecip_txt'}</label> - <div class="col-sm-9"><select name="warnvirusrecip" id="warnvirusrecip" class="form-control"> - {tmpl_var name='warnvirusrecip'} - </select></div> - </div> - <div class="form-group"> - <label for="warnbannedrecip" class="col-sm-3 control-label">{tmpl_var name='warnbannedrecip_txt'}</label> - <div class="col-sm-9"><select name="warnbannedrecip" id="warnbannedrecip" class="form-control"> - {tmpl_var name='warnbannedrecip'} - </select></div> - </div> - <div class="form-group"> - <label for="warnbadhrecip" class="col-sm-3 control-label">{tmpl_var name='warnbadhrecip_txt'}</label> - <div class="col-sm-9"><select name="warnbadhrecip" id="warnbadhrecip" class="form-control"> - {tmpl_var name='warnbadhrecip'} - </select></div> - </div> - <div class="form-group"> - <label for="newvirus_admin" class="col-sm-3 control-label">{tmpl_var name='newvirus_admin_txt'}</label> - <div class="col-sm-9"><input type="text" name="newvirus_admin" id="newvirus_admin" value="{tmpl_var name='newvirus_admin'}" class="form-control" /></div></div> - <div class="form-group"> - <label for="virus_admin" class="col-sm-3 control-label">{tmpl_var name='virus_admin_txt'}</label> - <div class="col-sm-9"><input type="text" name="virus_admin" id="virus_admin" value="{tmpl_var name='virus_admin'}" class="form-control" /></div></div> - <div class="form-group"> - <label for="banned_admin" class="col-sm-3 control-label">{tmpl_var name='banned_admin_txt'}</label> - <div class="col-sm-9"><input type="text" name="banned_admin" id="banned_admin" value="{tmpl_var name='banned_admin'}" class="form-control" /></div></div> - <div class="form-group"> - <label for="bad_header_admin" class="col-sm-3 control-label">{tmpl_var name='bad_header_admin_txt'}</label> - <div class="col-sm-9"><input type="text" name="bad_header_admin" id="bad_header_admin" value="{tmpl_var name='bad_header_admin'}" class="form-control" /></div></div> - <div class="form-group"> - <label for="spam_admin" class="col-sm-3 control-label">{tmpl_var name='spam_admin_txt'}</label> - <div class="col-sm-9"><input type="text" name="spam_admin" id="spam_admin" value="{tmpl_var name='spam_admin'}" class="form-control" /></div></div> - <div class="form-group"> - <label for="message_size_limit" class="col-sm-3 control-label">{tmpl_var name='message_size_limit_txt'}</label> - <div class="col-sm-9"><div class="input-group"><input type="text" name="message_size_limit" id="message_size_limit" value="{tmpl_var name='message_size_limit'}" class="form-control" aria-describedby="message_size_limit-desc" /><span class="input-group-addon" id="message_size_limit-desc">Bytes</span></div></div> - </div> - <div class="form-group"> - <label for="banned_rulenames" class="col-sm-3 control-label">{tmpl_var name='banned_rulenames_txt'}</label> - <div class="col-sm-9"><input type="text" name="banned_rulenames" id="banned_rulenames" value="{tmpl_var name='banned_rulenames'}" class="form-control" /></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="mail/spamfilter_policy_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/spamfilter_policy_list.php">{tmpl_var name='btn_cancel_txt'}</button> - </div></div> diff --git a/interface/web/mail/templates/spamfilter_policy_edit.htm b/interface/web/mail/templates/spamfilter_policy_edit.htm index 0496d3a85a..506b4d5b89 100644 --- a/interface/web/mail/templates/spamfilter_policy_edit.htm +++ b/interface/web/mail/templates/spamfilter_policy_edit.htm @@ -3,8 +3,7 @@ </div> <p><tmpl_var name="list_desc_txt"></p> - - + <div class="form-group"> <label for="policy_name" class="col-sm-3 control-label">{tmpl_var name='policy_name_txt'}</label> <div class="col-sm-9"><input type="text" name="policy_name" id="policy_name" value="{tmpl_var name='policy_name'}" class="form-control" /></div></div> @@ -20,38 +19,7 @@ {tmpl_var name='spam_lover'} </select></div> </div> - <tmpl_if name='content_filter' op='==' value='amavisd'> - <div class="form-group"> - <label for="banned_files_lover" class="col-sm-3 control-label">{tmpl_var name='banned_files_lover_txt'}</label> - <div class="col-sm-9"><select name="banned_files_lover" id="banned_files_lover" class="form-control"> - {tmpl_var name='banned_files_lover'} - </select></div> - </div> - <div class="form-group"> - <label for="bad_header_lover" class="col-sm-3 control-label">{tmpl_var name='bad_header_lover_txt'}</label> - <div class="col-sm-9"><select name="bad_header_lover" id="bad_header_lover" class="form-control"> - {tmpl_var name='bad_header_lover'} - </select></div> - </div> - <div class="form-group"> - <label for="bypass_virus_checks" class="col-sm-3 control-label">{tmpl_var name='bypass_virus_checks_txt'}</label> - <div class="col-sm-9"><select name="bypass_virus_checks" id="bypass_virus_checks" class="form-control"> - {tmpl_var name='bypass_virus_checks'} - </select></div> - </div> - <div class="form-group"> - <label for="bypass_banned_checks" class="col-sm-3 control-label">{tmpl_var name='bypass_banned_checks_txt'}</label> - <div class="col-sm-9"><select name="bypass_banned_checks" id="bypass_banned_checks" class="form-control"> - {tmpl_var name='bypass_banned_checks'} - </select></div> - </div> - <div class="form-group"> - <label for="bypass_header_checks" class="col-sm-3 control-label">{tmpl_var name='bypass_header_checks_txt'}</label> - <div class="col-sm-9"><select name="bypass_header_checks" id="bypass_header_checks" class="form-control"> - {tmpl_var name='bypass_header_checks'} - </select></div> - </div> - </tmpl_if> + <input type="hidden" name="id" value="{tmpl_var name='id'}"> diff --git a/interface/web/mail/templates/spamfilter_quarantine_edit.htm b/interface/web/mail/templates/spamfilter_quarantine_edit.htm deleted file mode 100644 index 7f44b58020..0000000000 --- a/interface/web/mail/templates/spamfilter_quarantine_edit.htm +++ /dev/null @@ -1,35 +0,0 @@ -<div class='page-header'> - <h1><tmpl_var name="list_head_txt"></h1> -</div> -<p><tmpl_var name="list_desc_txt"></p> - - - - <div class="form-group"> - <label for="virus_quarantine_to" class="col-sm-3 control-label">{tmpl_var name='virus_quarantine_to_txt'}</label> - <div class="col-sm-9"><input type="text" name="virus_quarantine_to" id="virus_quarantine_to" value="{tmpl_var name='virus_quarantine_to'}" class="form-control" /></div></div> - <div class="form-group"> - <label for="spam_quarantine_to" class="col-sm-3 control-label">{tmpl_var name='spam_quarantine_to_txt'}</label> - <div class="col-sm-9"><input type="text" name="spam_quarantine_to" id="spam_quarantine_to" value="{tmpl_var name='spam_quarantine_to'}" class="form-control" /></div></div> - <div class="form-group"> - <label for="banned_quarantine_to" class="col-sm-3 control-label">{tmpl_var name='banned_quarantine_to_txt'}</label> - <div class="col-sm-9"><input type="text" name="banned_quarantine_to" id="banned_quarantine_to" value="{tmpl_var name='banned_quarantine_to'}" class="form-control" /></div></div> - <div class="form-group"> - <label for="bad_header_quarantine_to" class="col-sm-3 control-label">{tmpl_var name='bad_header_quarantine_to_txt'}</label> - <div class="col-sm-9"><input type="text" name="bad_header_quarantine_to" id="bad_header_quarantine_to" value="{tmpl_var name='bad_header_quarantine_to'}" class="form-control" /></div></div> - <!-- - <div class="form-group"> - <label for="clean_quarantine_to" class="col-sm-3 control-label">{tmpl_var name='clean_quarantine_to_txt'}</label> - <div class="col-sm-9"><input type="text" name="clean_quarantine_to" id="clean_quarantine_to" value="{tmpl_var name='clean_quarantine_to'}" class="form-control" /></div></div> - <div class="form-group"> - <label for="other_quarantine_to" class="col-sm-3 control-label">{tmpl_var name='other_quarantine_to_txt'}</label> - <div class="col-sm-9"><input type="text" name="other_quarantine_to" id="other_quarantine_to" value="{tmpl_var name='other_quarantine_to'}" class="form-control" /></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="mail/spamfilter_policy_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/spamfilter_policy_list.php">{tmpl_var name='btn_cancel_txt'}</button> - </div></div> \ No newline at end of file diff --git a/interface/web/mail/templates/spamfilter_rspamd_edit.htm b/interface/web/mail/templates/spamfilter_rspamd_edit.htm new file mode 100644 index 0000000000..73472a876c --- /dev/null +++ b/interface/web/mail/templates/spamfilter_rspamd_edit.htm @@ -0,0 +1,36 @@ +<div class='page-header'> + <h1><tmpl_var name="list_head_txt"></h1> +</div> +<p><tmpl_var name="list_desc_txt"></p> + + <div class="form-group"> + <label class="col-sm-3 control-label">{tmpl_var name='rspamd_greylisting_txt'}</label> + <div class="col-sm-9"> + {tmpl_var name='rspamd_greylisting'} + </div> + </div> + <div class="form-group"> + <label for="rspamd_spam_greylisting_level" class="col-sm-3 control-label">{tmpl_var name='rspamd_spam_greylisting_level_txt'}</label> + <div class="col-sm-9"><input type="text" name="rspamd_spam_greylisting_level" id="rspamd_spam_greylisting_level" value="{tmpl_var name='rspamd_spam_greylisting_level'}" class="form-control" /></div> + </div> + <div class="form-group"> + <label for="rspamd_spam_tag_level" class="col-sm-3 control-label">{tmpl_var name='rspamd_spam_tag_level_txt'}</label> + <div class="col-sm-9"><input type="text" name="rspamd_spam_tag_level" id="rspamd_spam_tag_level" value="{tmpl_var name='rspamd_spam_tag_level'}" class="form-control" /></div> + </div> + <div class="form-group"> + <label for="rspamd_spam_tag_method" class="col-sm-3 control-label">{tmpl_var name='rspamd_spam_tag_method_txt'}</label> + <div class="col-sm-9"><select name="rspamd_spam_tag_method" id="rspamd_spam_tag_method" class="form-control"> + {tmpl_var name='rspamd_spam_tag_method'} + </select></div> + </div> + <div class="form-group"> + <label for="rspamd_spam_kill_level" class="col-sm-3 control-label">{tmpl_var name='rspamd_spam_kill_level_txt'}</label> + <div class="col-sm-9"><input type="text" name="rspamd_spam_kill_level" id="rspamd_spam_kill_level" value="{tmpl_var name='rspamd_spam_kill_level'}" class="form-control" /></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="mail/spamfilter_policy_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/spamfilter_policy_list.php">{tmpl_var name='btn_cancel_txt'}</button> + </div></div> \ No newline at end of file diff --git a/interface/web/mail/templates/spamfilter_taglevel_edit.htm b/interface/web/mail/templates/spamfilter_taglevel_edit.htm deleted file mode 100644 index 1b3c3b482c..0000000000 --- a/interface/web/mail/templates/spamfilter_taglevel_edit.htm +++ /dev/null @@ -1,69 +0,0 @@ -<div class='page-header'> - <h1><tmpl_var name="list_head_txt"></h1> -</div> -<p><tmpl_var name="list_desc_txt"></p> - - - <tmpl_if name='content_filter' op='==' value='amavisd'> - <div class="form-group"> - <label for="spam_tag_level" class="col-sm-3 control-label">{tmpl_var name='spam_tag_level_txt'}</label> - <div class="col-sm-9"><input type="text" name="spam_tag_level" id="spam_tag_level" value="{tmpl_var name='spam_tag_level'}" class="form-control" /></div></div> - <div class="form-group"> - <label for="spam_tag2_level" class="col-sm-3 control-label">{tmpl_var name='spam_tag2_level_txt'}</label> - <div class="col-sm-9"><input type="text" name="spam_tag2_level" id="spam_tag2_level" value="{tmpl_var name='spam_tag2_level'}" class="form-control" /></div></div> - <div class="form-group"> - <label for="spam_kill_level" class="col-sm-3 control-label">{tmpl_var name='spam_kill_level_txt'}</label> - <div class="col-sm-9"><input type="text" name="spam_kill_level" id="spam_kill_level" value="{tmpl_var name='spam_kill_level'}" class="form-control" /></div></div> - <div class="form-group"> - <label for="spam_dsn_cutoff_level" class="col-sm-3 control-label">{tmpl_var name='spam_dsn_cutoff_level_txt'}</label> - <div class="col-sm-9"><input type="text" name="spam_dsn_cutoff_level" id="spam_dsn_cutoff_level" value="{tmpl_var name='spam_dsn_cutoff_level'}" class="form-control" /></div></div> - <div class="form-group"> - <label for="spam_quarantine_cutoff_level" class="col-sm-3 control-label">{tmpl_var name='spam_quarantine_cutoff_level_txt'}</label> - <div class="col-sm-9"><input type="text" name="spam_quarantine_cutoff_level" id="spam_quarantine_cutoff_level" value="{tmpl_var name='spam_quarantine_cutoff_level'}" class="form-control" /></div></div> - <div class="form-group"> - <label for="spam_modifies_subj" class="col-sm-3 control-label">{tmpl_var name='spam_modifies_subj_txt'}</label> - <div class="col-sm-9"><select name="spam_modifies_subj" id="spam_modifies_subj" class="form-control"> - {tmpl_var name='spam_modifies_subj'} - </select></div> - </div> - <div class="form-group"> - <label for="spam_subject_tag" class="col-sm-3 control-label">{tmpl_var name='spam_subject_tag_txt'}</label> - <div class="col-sm-9"><input type="text" name="spam_subject_tag" id="spam_subject_tag" value="{tmpl_var name='spam_subject_tag'}" class="form-control" /></div></div> - <div class="form-group"> - <label for="spam_subject_tag2" class="col-sm-3 control-label">{tmpl_var name='spam_subject_tag2_txt'}</label> - <div class="col-sm-9"><input type="text" name="spam_subject_tag2" id="spam_subject_tag2" value="{tmpl_var name='spam_subject_tag2'}" class="form-control" /></div></div> - </tmpl_if> - <tmpl_if name='content_filter' op='==' value='rspamd'> - <div class="form-group"> - <label class="col-sm-3 control-label">{tmpl_var name='rspamd_greylisting_txt'}</label> - <div class="col-sm-9"> - {tmpl_var name='rspamd_greylisting'} - </div> - </div> - <div class="form-group"> - <label for="rspamd_spam_greylisting_level" class="col-sm-3 control-label">{tmpl_var name='rspamd_spam_greylisting_level_txt'}</label> - <div class="col-sm-9"><input type="text" name="rspamd_spam_greylisting_level" id="rspamd_spam_greylisting_level" value="{tmpl_var name='rspamd_spam_greylisting_level'}" class="form-control" /></div> - </div> - <div class="form-group"> - <label for="rspamd_spam_tag_level" class="col-sm-3 control-label">{tmpl_var name='rspamd_spam_tag_level_txt'}</label> - <div class="col-sm-9"><input type="text" name="rspamd_spam_tag_level" id="rspamd_spam_tag_level" value="{tmpl_var name='rspamd_spam_tag_level'}" class="form-control" /></div> - </div> - <div class="form-group"> - <label for="rspamd_spam_tag_method" class="col-sm-3 control-label">{tmpl_var name='rspamd_spam_tag_method_txt'}</label> - <div class="col-sm-9"><select name="rspamd_spam_tag_method" id="rspamd_spam_tag_method" class="form-control"> - {tmpl_var name='rspamd_spam_tag_method'} - </select></div> - </div> - <div class="form-group"> - <label for="rspamd_spam_kill_level" class="col-sm-3 control-label">{tmpl_var name='rspamd_spam_kill_level_txt'}</label> - <div class="col-sm-9"><input type="text" name="rspamd_spam_kill_level" id="rspamd_spam_kill_level" value="{tmpl_var name='rspamd_spam_kill_level'}" class="form-control" /></div> - </div> - </tmpl_if> - - - <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="mail/spamfilter_policy_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/spamfilter_policy_list.php">{tmpl_var name='btn_cancel_txt'}</button> - </div></div> -- GitLab From 63b9660ffad9e2a9a9de32b9f0dce8fd10b44dd7 Mon Sep 17 00:00:00 2001 From: Till Brehm <tbrehm@ispconfig.org> Date: Fri, 16 Aug 2019 15:14:06 +0200 Subject: [PATCH 135/215] Fixes #5369 Internal ISPConfig cronjobs are not run in 3.1-dev version --- install/sql/incremental/upd_dev_collection.sql | 2 ++ server/lib/classes/cron.inc.php | 4 ++-- 2 files changed, 4 insertions(+), 2 deletions(-) diff --git a/install/sql/incremental/upd_dev_collection.sql b/install/sql/incremental/upd_dev_collection.sql index f86f6a93ac..91cbc81626 100644 --- a/install/sql/incremental/upd_dev_collection.sql +++ b/install/sql/incremental/upd_dev_collection.sql @@ -35,3 +35,5 @@ ALTER TABLE `ftp_user` CHANGE COLUMN `password` `password` VARCHAR(200) DEFAULT ALTER TABLE `shell_user` CHANGE COLUMN `password` `password` VARCHAR(200) DEFAULT NULL; ALTER TABLE `sys_user` CHANGE COLUMN `passwort` `passwort` VARCHAR(200) DEFAULT NULL; ALTER TABLE `webdav_user` CHANGE COLUMN `password` `password` VARCHAR(200) DEFAULT NULL; + +DELETE FROM sys_cron WHERE `next_run` IS NOT NULL AND `next_run` >= DATE_ADD(`last_run`, INTERVAL 30 DAY) AND `next_run` BETWEEN '2020-01-01' AND '2020-01-02'; diff --git a/server/lib/classes/cron.inc.php b/server/lib/classes/cron.inc.php index c6c2ad02b2..67be475fe3 100644 --- a/server/lib/classes/cron.inc.php +++ b/server/lib/classes/cron.inc.php @@ -265,8 +265,8 @@ class cron { reset($this->_aValidValues[$sField]); foreach($this->_aValidValues[$sField] as $cur) { - if($bIncludeCurrent == true && $cur['value'] >= $iValue) return $cur['value']; - elseif($cur['value'] > $iValue) return $cur['value']; + if($bIncludeCurrent == true && $cur >= $iValue) return $cur; + elseif($cur > $iValue) return $cur; } return reset($this->_aValidValues[$sField]); } -- GitLab From 2b3eb82dd3fdcedd90f7473ded8ba6a3ad2c7c94 Mon Sep 17 00:00:00 2001 From: Till Brehm <tbrehm@ispconfig.org> Date: Fri, 16 Aug 2019 15:15:10 +0200 Subject: [PATCH 136/215] Plugins module not loaded in cron debugger which prevents debugging of the Let's encrypt plugin. --- server/cron_debug.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/server/cron_debug.php b/server/cron_debug.php index 2ab9289d26..c92410f3e5 100644 --- a/server/cron_debug.php +++ b/server/cron_debug.php @@ -39,7 +39,7 @@ ini_set('error_reporting', E_ALL & ~E_NOTICE); $conf['server_id'] = intval($conf['server_id']); // Load required base-classes -$app->uses('modules,ini_parser,file,services,getconf,system,cron,functions'); +$app->uses('modules,plugins,ini_parser,file,services,getconf,system,cron,functions'); $app->load('libdatetime,cronjob'); // Path settings -- GitLab From 2df03bce442fcdf691681ea0a7fa390d8a06dae7 Mon Sep 17 00:00:00 2001 From: Marius Burkard <m.burkard@pixcept.de> Date: Sat, 17 Aug 2019 11:01:28 +0200 Subject: [PATCH 137/215] - don't treat cron jobs as running when last run is older than 24h --- server/lib/classes/cronjob.inc.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/server/lib/classes/cronjob.inc.php b/server/lib/classes/cronjob.inc.php index 9fba5af3c5..1e452b6481 100644 --- a/server/lib/classes/cronjob.inc.php +++ b/server/lib/classes/cronjob.inc.php @@ -100,7 +100,7 @@ class cronjob { // check the run time and values for this job // get previous run data - $data = $app->db->queryOneRecord("SELECT `last_run`, `next_run`, `running` FROM `sys_cron` WHERE `name` = ?", get_class($this)); + $data = $app->db->queryOneRecord("SELECT `last_run`, `next_run`, IF(`last_run` IS NOT NULL AND `last_run` < DATE_SUB(NOW(), INTERVAL 24 HOUR), 0, `running`) as `running` FROM `sys_cron` WHERE `name` = ?", get_class($this)); if($data) { if($data['last_run']) $this->_last_run = $data['last_run']; if($data['next_run']) $this->_next_run = $data['next_run']; -- GitLab From 3305f4ee9282f69666441122fdf9a53aa3189164 Mon Sep 17 00:00:00 2001 From: Webslice <webslice@bixels.nl> Date: Wed, 21 Aug 2019 14:20:27 +0200 Subject: [PATCH 138/215] Force equal passwords in APS installer before form can be posted --- interface/web/sites/templates/aps_install_package.htm | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/interface/web/sites/templates/aps_install_package.htm b/interface/web/sites/templates/aps_install_package.htm index 2c4b48b9d3..255a8685d5 100644 --- a/interface/web/sites/templates/aps_install_package.htm +++ b/interface/web/sites/templates/aps_install_package.htm @@ -57,7 +57,7 @@ <input type="hidden" name="install" value="0" /> <div class="clear"> <div class="right"> - <button class="btn btn-default formbutton-success" type="button" value="{tmpl_var name='btn_install_txt'}" name="btn_install" onclick="document.pageForm.install.value=1; ISPConfig.submitForm('pageForm','sites/aps_install_package.php?id={tmpl_var name='pkg_id'}');">{tmpl_var name='btn_install_txt'}</button> + <button class="btn btn-default formbutton-success positive" type="button" value="{tmpl_var name='btn_install_txt'}" name="btn_install" onclick="document.pageForm.install.value=1; ISPConfig.submitForm('pageForm','sites/aps_install_package.php?id={tmpl_var name='pkg_id'}');">{tmpl_var name='btn_install_txt'}</button> <button class="btn btn-default formbutton-default" type="button" value="{tmpl_var name='btn_cancel_txt'}" data-load-content="sites/aps_availablepackages_list.php">{tmpl_var name='btn_cancel_txt'}</button> </div> </div> -- GitLab From 0b1fac193e9cabc965b42645388ea45a5515cd9d Mon Sep 17 00:00:00 2001 From: Webslice <webslice@bixels.nl> Date: Wed, 21 Aug 2019 14:26:31 +0200 Subject: [PATCH 139/215] Don't try to load non-existing config in aps remote, fixes #4974 --- interface/lib/classes/remote.d/aps.inc.php | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/interface/lib/classes/remote.d/aps.inc.php b/interface/lib/classes/remote.d/aps.inc.php index 50dda48255..78330fc8bb 100644 --- a/interface/lib/classes/remote.d/aps.inc.php +++ b/interface/lib/classes/remote.d/aps.inc.php @@ -43,8 +43,7 @@ class remoting_aps extends remoting { throw new SoapFault('permission_denied', 'You do not have the permissions to access this function.'); return false; } - - require_once '../../../lib/config.inc.php'; + $app->load('aps_crawler'); $aps = new ApsCrawler($app, true); // true = Interface mode, false = Server mode -- GitLab From 2a3cadc8416c56f3c309df101249adffde3a0eaf Mon Sep 17 00:00:00 2001 From: Webslice <webslice@bixels.nl> Date: Wed, 21 Aug 2019 14:29:11 +0200 Subject: [PATCH 140/215] Minor language change for APS installer --- interface/web/sites/lib/lang/en_aps.lng | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/interface/web/sites/lib/lang/en_aps.lng b/interface/web/sites/lib/lang/en_aps.lng index b0300fe0cc..04f6fb798d 100644 --- a/interface/web/sites/lib/lang/en_aps.lng +++ b/interface/web/sites/lib/lang/en_aps.lng @@ -28,7 +28,7 @@ $wb['installation_txt'] = 'Installation'; $wb['install_location_txt'] = 'Install location'; $wb['btn_install_txt'] = 'Install'; $wb['btn_cancel_txt'] = 'Cancel'; -$wb['acceptance_txt'] = 'Acceptance'; +$wb['acceptance_txt'] = 'I accept the license'; $wb['acceptance_text_txt'] = 'Yes, i\'ve read the license and agree.'; $wb['install_language_txt'] = 'Interface language'; $wb['new_database_password_txt'] = 'New database password'; -- GitLab From 0bbef70c613b99664bc637ddb519697d3ce116cd Mon Sep 17 00:00:00 2001 From: Webslice <webslice@bixels.nl> Date: Wed, 21 Aug 2019 14:30:58 +0200 Subject: [PATCH 141/215] Load APS language file for APS instance list --- .../web/sites/list/aps_installedpackages.list.php | 14 ++++++++++---- 1 file changed, 10 insertions(+), 4 deletions(-) diff --git a/interface/web/sites/list/aps_installedpackages.list.php b/interface/web/sites/list/aps_installedpackages.list.php index d9a51d8bef..1f855082d5 100644 --- a/interface/web/sites/list/aps_installedpackages.list.php +++ b/interface/web/sites/list/aps_installedpackages.list.php @@ -28,6 +28,12 @@ NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ +// Load the APS language file +$lngfile = 'lib/lang/'.$app->functions->check_language($_SESSION['s']['language']).'_aps.lng'; +require_once $lngfile; +$app->tpl->setVar($wb); +$app->load_language_file('web/sites/'.$lngfile); + $liste['name'] = 'aps_instances'; // Name of the list $liste['table'] = 'aps_instances'; // Database table $liste['table_idx'] = 'id'; // Table index @@ -85,9 +91,9 @@ $liste["item"][] = array('field' => 'instance_status', 'prefix' => '', 'suffix' => '', 'width' => '', - 'value' => array(INSTANCE_INSTALL => $app->lng('Installation_task'), - INSTANCE_ERROR => $app->lng('Installation_error'), - INSTANCE_SUCCESS => $app->lng('Installation_success'), - INSTANCE_REMOVE => $app->lng('Installation_remove')), + 'value' => array(INSTANCE_INSTALL => $app->lng('installation_task_txt'), + INSTANCE_ERROR => $app->lng('installation_error_txt'), + INSTANCE_SUCCESS => $app->lng('installation_success_txt'), + INSTANCE_REMOVE => $app->lng('installation_remove_txt')), 'table' => 'aps_instances'); ?> -- GitLab From 1b273e48f9030743eaa046414079b055e894d209 Mon Sep 17 00:00:00 2001 From: Webslice <webslice@bixels.nl> Date: Wed, 21 Aug 2019 14:33:28 +0200 Subject: [PATCH 142/215] Fix APS package list table --- interface/web/sites/templates/aps_packages_list.htm | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/interface/web/sites/templates/aps_packages_list.htm b/interface/web/sites/templates/aps_packages_list.htm index d3f3f8c3bb..501e7aeedd 100644 --- a/interface/web/sites/templates/aps_packages_list.htm +++ b/interface/web/sites/templates/aps_packages_list.htm @@ -6,7 +6,7 @@ <table class="table"> <thead class="dark form-group-sm"> <tr> - <th>{tmpl_var name='name_txt'}</th> + <th colspan="2">{tmpl_var name='name_txt'}</th> <th>{tmpl_var name='version_txt'}</th> <th>{tmpl_var name='category_txt'}</th> <tmpl_if name='is_admin'> @@ -15,7 +15,7 @@ <th class="small-col text-right"> </th> </tr> <tr> - <td><input class="form-control" type="text" name="search_name" value="{tmpl_var name='search_name'}" /></td> + <td colspan="2"><input class="form-control" type="text" name="search_name" value="{tmpl_var name='search_name'}" /></td> <td><input class="form-control" type="text" name="search_version" value="{tmpl_var name='search_version'}" /></td> <td><select class="form-control" name="search_category" onChange="ISPConfig.submitForm('pageForm','sites/aps_availablepackages_list.php');">{tmpl_var name='search_category'}</select></td> <tmpl_if name='is_admin'> @@ -27,7 +27,7 @@ <tbody> <tmpl_loop name='records'> <tr> - <td><a href="#" data-load-content="sites/aps_packagedetails_show.php?id={tmpl_var name='id'}">{tmpl_var name='name'}</a></td> + <td colspan="2"><a href="#" data-load-content="sites/aps_packagedetails_show.php?id={tmpl_var name='id'}">{tmpl_var name='name'}</a></td> <td>{tmpl_var name='version'}-{tmpl_var name='release'}</td> <td>{tmpl_var name='category'}</td> <tmpl_if name='is_admin'> -- GitLab From 66ccf358c1d3463eddb4879f5b33bf9f5d851b2b Mon Sep 17 00:00:00 2001 From: Webslice <webslice@bixels.nl> Date: Wed, 21 Aug 2019 14:48:35 +0200 Subject: [PATCH 143/215] Add missing API doc for sites_aps_change_package_status --- remoting_client/API-docs/navigation.html | 7 +++-- .../sites_aps_change_package_status.html | 29 +++++++++++++++++++ 2 files changed, 33 insertions(+), 3 deletions(-) create mode 100644 remoting_client/API-docs/sites_aps_change_package_status.html diff --git a/remoting_client/API-docs/navigation.html b/remoting_client/API-docs/navigation.html index a9d32f7598..5168122f28 100644 --- a/remoting_client/API-docs/navigation.html +++ b/remoting_client/API-docs/navigation.html @@ -2,11 +2,11 @@ <html><head> <title>ISCPConfig 3 API Functions</title> - - + + <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"> - + <style type="text/css"> <!-- .command { @@ -200,6 +200,7 @@ <p><a href="server_get_php_versions.html" target="content">server_get_php_versions</a></p> <p><a href="server_get_serverid_by_ip.html" target="content">server_get_serverid_by_ip</a></p> <p><a href="sites_aps_available_packages_list.html" target="content">sites_aps_available_packages_list</a></p> +<p><a href="sites_aps_change_package_status.html" target="content">sites_aps_change_package_status</a></p> <p><a href="sites_aps_get_package_details.html" target="content">sites_aps_get_package_details</a></p> <p><a href="sites_aps_get_package_file.html" target="content">sites_aps_get_package_file</a></p> <p><a href="sites_aps_get_package_settings.html" target="content">sites_aps_get_package_settings</a></p> diff --git a/remoting_client/API-docs/sites_aps_change_package_status.html b/remoting_client/API-docs/sites_aps_change_package_status.html new file mode 100644 index 0000000000..bc8ad380ed --- /dev/null +++ b/remoting_client/API-docs/sites_aps_change_package_status.html @@ -0,0 +1,29 @@ +<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> +<html><head><title>ISPConfig 3 remote API documentation</title> + + + + + + <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"> + <link rel="stylesheet" type="text/css" href="definitionen.css"> + <style type="text/css"> + </style></head> + +<body> +<div style="padding:40px"> +<h1>sites_aps_change_package_status(<span class="var">$session_id</span>, <span class="var">$primary_id</span>, <span class="var">$params</span>);</h1> +<br> +<p class="headgrp">Description: </p> +<p class="margin"> Changes the status for specified APS package. Supply the APS package ID in $primary_id.</p><br> +<p class="headgrp">Input Variables: </p> +<p class="margin"> <span class="var">$session_id</span>, <span class="var">$primary_id</span>, <span class="var">$params</span></p> +<p class="headgrp">Parameters (in <span class="var">$params</span>): </p> +<p class="margin"> package_status (<span class="paratype">int</span>) - can be 1 (= PACKAGE_LOCKED) or 2 (= PACKAGE_ENABLED)</p> +<p class="headgrp">Output: </p> +<p class="margin"> Returns true package status was changed.</p> +<!--<b>Output:</b> +<p style="margin-left:100px">Gives a record of </p> --> +</div> + +</body></html> -- GitLab From c7e3e7d94f84a9f2da2f91f78d7fa518051d4c2f Mon Sep 17 00:00:00 2001 From: Herman van Rink <rink@initfour.nl> Date: Fri, 23 Aug 2019 09:12:17 +0200 Subject: [PATCH 144/215] On the Mailbox Quota, link rows to the mailbox page --- interface/web/dashboard/dashlets/templates/mailquota.htm | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/interface/web/dashboard/dashlets/templates/mailquota.htm b/interface/web/dashboard/dashlets/templates/mailquota.htm index 5ad01d6865..3573ef1ab9 100644 --- a/interface/web/dashboard/dashlets/templates/mailquota.htm +++ b/interface/web/dashboard/dashlets/templates/mailquota.htm @@ -12,7 +12,7 @@ <tbody> <tmpl_loop name='mailquota'> <tr> - <td>{tmpl_var name='email'}</td> + <td><a href="#" data-load-content="mail/mail_user_edit.php?id={tmpl_var name='mailuser_id'}" data-toggle="tooltip" data-placement="bottom" title="" data-original-title="{tmpl_var name='email'}">{tmpl_var name='email'}</a></td> <td>{tmpl_var name='name'}</td> <td>{tmpl_var name='used'}</td> <td>{tmpl_var name='quota'}</td> -- GitLab From 72fbabda91187018134675c0d2876753b12c4da8 Mon Sep 17 00:00:00 2001 From: Marius Burkard <m.burkard@pixcept.de> Date: Fri, 23 Aug 2019 12:56:55 +0200 Subject: [PATCH 145/215] - added missing onComplete() to cron debug script (led to permanent running marker on jobs) --- server/cron_debug.php | 1 + 1 file changed, 1 insertion(+) diff --git a/server/cron_debug.php b/server/cron_debug.php index c92410f3e5..6eda4fcdde 100644 --- a/server/cron_debug.php +++ b/server/cron_debug.php @@ -66,6 +66,7 @@ $cronjob->onPrepare(); $cronjob->onBeforeRun(); $cronjob->onRunJob(); $cronjob->onAfterRun(); +$cronjob->onCompleted(); die("finished.\n"); -- GitLab From 8f35cdb04e263fbcad5d3c7de77d7e48acb26946 Mon Sep 17 00:00:00 2001 From: Marius Burkard <m.burkard@pixcept.de> Date: Mon, 26 Aug 2019 14:03:35 +0200 Subject: [PATCH 146/215] - prevent running update when mysql cannot be used from command line with credentials from mysql_clientdb.conf --- install/update.php | 16 ++++++++++++++++ 1 file changed, 16 insertions(+) diff --git a/install/update.php b/install/update.php index 42ddd625f5..11570aa666 100644 --- a/install/update.php +++ b/install/update.php @@ -293,6 +293,22 @@ if($conf['mysql']['master_slave_setup'] == 'y') { */ checkDbHealth(); + +/* + * Check command line mysql login + */ +if( !empty($conf["mysql"]["admin_password"]) ) { + $cmd = "mysql --default-character-set=".escapeshellarg($conf['mysql']['charset'])." --force -h ".escapeshellarg($conf['mysql']['host'])." -u ".escapeshellarg($conf['mysql']['admin_user'])." -p".escapeshellarg($conf['mysql']['admin_password'])." -P ".escapeshellarg($conf['mysql']['port'])." -D ".escapeshellarg($conf['mysql']['database'])." -e ". escapeshellarg('SHOW DATABASES'); +} else { + $cmd = "mysql --default-character-set=".escapeshellarg($conf['mysql']['charset'])." --force -h ".escapeshellarg($conf['mysql']['host'])." -u ".escapeshellarg($conf['mysql']['admin_user'])." -P ".escapeshellarg($conf['mysql']['port'])." -D ".escapeshellarg($conf['mysql']['database'])." -e ". escapeshellarg('SHOW DATABASES'); +} +$retval = 0; +$retout = array(); +exec($cmd, $retout, $retval); +if($retval != 0) { + die("Unable to call mysql command line with credentials from mysql_clientdb.conf\n"); +} + /* * dump the new Database and reconfigure the server.ini */ -- GitLab From 8ab148b3bae66b595c8b4d73d61cf66ab7d4e8bc Mon Sep 17 00:00:00 2001 From: Marius Burkard <m.burkard@pixcept.de> Date: Mon, 26 Aug 2019 21:59:35 +0200 Subject: [PATCH 147/215] - added debug log to exec_safe including returncode - moved jailkit functions from bash files to system library --- server/lib/classes/system.inc.php | 85 ++++++++++++++++++- .../cron_jailkit_plugin.inc.php | 34 ++------ .../shelluser_jailkit_plugin.inc.php | 17 ++-- 3 files changed, 97 insertions(+), 39 deletions(-) diff --git a/server/lib/classes/system.inc.php b/server/lib/classes/system.inc.php index 288f9d73f8..4c76e9aaff 100644 --- a/server/lib/classes/system.inc.php +++ b/server/lib/classes/system.inc.php @@ -2070,6 +2070,8 @@ class system{ } public function exec_safe($cmd) { + global $app; + $arg_count = func_num_args(); if($arg_count != substr_count($cmd, '?') + 1) { trigger_error('Placeholder count not matching argument list.', E_USER_WARNING); @@ -2096,7 +2098,11 @@ class system{ $this->_last_exec_out = null; $this->_last_exec_retcode = null; - return exec($cmd, $this->_last_exec_out, $this->_last_exec_retcode); + $ret = exec($cmd, $this->_last_exec_out, $this->_last_exec_retcode); + + $this->app->log("safe_exec cmd: " . $cmd . " - return code: " . $this->_last_exec_retcode, LOGLEVEL_DEBUG); + + return $ret; } public function system_safe($cmd) { @@ -2104,4 +2110,81 @@ class system{ return implode("\n", $this->_last_exec_out); } + public function create_jailkit_user($username, $home_dir, $user_home_dir, $shell = '/bin/bash', $p_user = null, $p_user_home_dir = null) { + // Check if USERHOMEDIR already exists + if(!is_dir($home_dir . '/.' . $user_home_dir)) { + $this->mkdirpath($home_dir . '/.' . $user_home_dir, 0755, $username); + } + + // Reconfigure the chroot home directory for the user + $cmd = 'usermod --home=? ? 2>/dev/null'; + $this->exec_safe($cmd, $home_dir . '/.' . $user_home_dir, $username); + + // Add the chroot user + $cmd = 'jk_jailuser -n -s ? -j ? ?'; + $this->exec_safe($cmd, $shell, $home_dir, $username); + + // We have to reconfigure the chroot home directory for the parent user + if($p_user !== null) { + $cmd = 'usermod --home=? ? 2>/dev/null'; + $this->exec_safe($cmd, $home_dir . '/.' . $p_user_home_dir, $p_user); + } + + return true; + } + + public function create_jailkit_programs($home_dir, $programs = array()) { + if(empty($programs)) { + return true; + } + $program_args = ''; + foreach($programs as $prog) { + $program_args .= ' ' . escapeshellarg($prog); + } + + $cmd = 'jk_cp -k ?' . $program_args; + $this->exec_safe($cmd, $home_dir); + + return true; + } + + public function create_jailkit_chroot($home_dir, $app_sections = array()) { + if(empty($app_sections)) { + return true; + } + + // Change ownership of the chroot directory to root + $app->system->chown($home_dir, 'root'); + $app->system->chgrp($home_dir, 'root'); + + $app_args = ''; + foreach($app_sections as $app_section) { + $app_args .= ' ' . escapeshellarg($app_section); + } + + // Initialize the chroot into the specified directory with the specified applications + $cmd = 'jk_init -f -k -c /etc/jailkit/jk_init.ini -j ?' . $app_args; + $this->exec_safe($cmd, $home_dir); + + // Create the temp directory + if(!is_dir($home_dir . '/tmp')) { + $this->mkdirpath($home_dir . '/tmp', 0777); + } else { + $this->chmod($home_dir . '/tmp', 0777); + } + + // Fix permissions of the root firectory + $this->chmod($home_dir . '/bin', 0755); // was chmod g-w $CHROOT_HOMEDIR/bin + + // mysql needs the socket in the chrooted environment + $this->mkdirpath($home_dir . '/var/run/mysqld'); + + // ln /var/run/mysqld/mysqld.sock $CHROOT_HOMEDIR/var/run/mysqld/mysqld.sock + if(!file_exists("/var/run/mysqld/mysqld.sock")) { + $this->exec_safe('ln ? ?', '/var/run/mysqld/mysqld.sock', $home_dir . '/var/run/mysqld/mysqld.sock'); + } + + return true; + } + } diff --git a/server/plugins-available/cron_jailkit_plugin.inc.php b/server/plugins-available/cron_jailkit_plugin.inc.php index f8f6640444..81d4b72e96 100644 --- a/server/plugins-available/cron_jailkit_plugin.inc.php +++ b/server/plugins-available/cron_jailkit_plugin.inc.php @@ -216,12 +216,9 @@ class cron_jailkit_plugin { //check if the chroot environment is created yet if not create it with a list of program sections from the config if (!is_dir($this->parent_domain['document_root'].'/etc/jailkit')) { - $command = '/usr/local/ispconfig/server/scripts/create_jailkit_chroot.sh'; - $command .= ' ?'; - $command .= ' ?'; - $app->system->exec_safe($command.' 2>/dev/null', $this->parent_domain['document_root'], $this->jailkit_config['jailkit_chroot_app_sections']); + $app->system->create_jailkit_chroot($this->parent_domain['document_root'], preg_split('/[\s,]+/', $this->jailkit_config['jailkit_chroot_app_sections'])); - $this->app->log("Added jailkit chroot with command: ".$command, LOGLEVEL_DEBUG); + $this->app->log("Added jailkit chroot", LOGLEVEL_DEBUG); $this->app->load('tpl'); @@ -259,19 +256,11 @@ class cron_jailkit_plugin { global $app; //copy over further programs and its libraries - $command = '/usr/local/ispconfig/server/scripts/create_jailkit_programs.sh'; - $command .= ' ?'; - $command .= ' ?'; - $app->system->exec_safe($command.' 2>/dev/null', $this->parent_domain['document_root'], $this->jailkit_config['jailkit_chroot_app_programs']); - - $this->app->log("Added programs to jailkit chroot with command: ".$command, LOGLEVEL_DEBUG); - - $command = '/usr/local/ispconfig/server/scripts/create_jailkit_programs.sh'; - $command .= ' ?'; - $command .= ' ?'; - $app->system->exec_safe($command.' 2>/dev/null', $this->parent_domain['document_root'], $this->jailkit_config['jailkit_chroot_cron_programs']); - - $this->app->log("Added cron programs to jailkit chroot with command: ".$command, LOGLEVEL_DEBUG); + $app->system->create_jailkit_programs($this->parent_domain['document_root'], preg_split('/[\s,]+/', $this->jailkit_config['jailkit_chroot_app_programs'])); + $this->app->log("Added app programs to jailkit chroot", LOGLEVEL_DEBUG); + + $app->system->create_jailkit_programs($this->parent_domain['document_root'], preg_split('/[\s,]+/', $this->jailkit_config['jailkit_chroot_cron_programs'])); + $this->app->log("Added cron programs to jailkit chroot", LOGLEVEL_DEBUG); } function _add_jailkit_user() @@ -288,14 +277,7 @@ class cron_jailkit_plugin { // ALWAYS create the user. Even if the user was created before // if we check if the user exists, then a update (no shell -> jailkit) will not work // and the user has FULL ACCESS to the root of the server! - $command = '/usr/local/ispconfig/server/scripts/create_jailkit_user.sh'; - $command .= ' ?'; - $command .= ' ?'; - $command .= ' ?'; - $command .= ' /bin/bash'; - $app->system->exec_safe($command.' 2>/dev/null', $this->parent_domain['system_user'], $this->parent_domain['document_root'], $jailkit_chroot_userhome); - - $this->app->log("Added jailkit user to chroot with command: ".$command, LOGLEVEL_DEBUG); + $app->system->create_jailkit_user($this->parent_domain['system_user'], $this->parent_domain['document_root'], $jailkit_chroot_userhome); $app->system->mkdir($this->parent_domain['document_root'].$jailkit_chroot_userhome, 0755, true); $app->system->chown($this->parent_domain['document_root'].$jailkit_chroot_userhome, $this->parent_domain['system_user']); diff --git a/server/plugins-available/shelluser_jailkit_plugin.inc.php b/server/plugins-available/shelluser_jailkit_plugin.inc.php index 1f3a08face..eae2ea74fd 100755 --- a/server/plugins-available/shelluser_jailkit_plugin.inc.php +++ b/server/plugins-available/shelluser_jailkit_plugin.inc.php @@ -273,10 +273,8 @@ class shelluser_jailkit_plugin { //check if the chroot environment is created yet if not create it with a list of program sections from the config if (!is_dir($this->data['new']['dir'].'/etc/jailkit')) { - $command = '/usr/local/ispconfig/server/scripts/create_jailkit_chroot.sh ? ?'; - $app->system->exec_safe($command.' 2>/dev/null', $this->data['new']['dir'], $this->jailkit_config['jailkit_chroot_app_sections']); - - $this->app->log("Added jailkit chroot with command: ".$command, LOGLEVEL_DEBUG); + $app->system->create_jailkit_chroot($this->data['new']['dir'], preg_split('/[\s,]+/', $this->jailkit_config['jailkit_chroot_app_sections'])); + $this->app->log("Added jailkit chroot", LOGLEVEL_DEBUG); $this->_add_jailkit_programs(); @@ -323,10 +321,8 @@ class shelluser_jailkit_plugin { $jailkit_chroot_app_program = trim($jailkit_chroot_app_program); if(is_file($jailkit_chroot_app_program) || is_dir($jailkit_chroot_app_program)){ //copy over further programs and its libraries - $command = '/usr/local/ispconfig/server/scripts/create_jailkit_programs.sh ? ?'; - $app->system->exec_safe($command.' 2>/dev/null', $this->data['new']['dir'], $jailkit_chroot_app_program); - - $this->app->log("Added programs to jailkit chroot with command: ".$command, LOGLEVEL_DEBUG); + $app->system->create_jailkit_programs($this->data['new']['dir'], $jailkit_chroot_app_program); + $this->app->log("Added programs to jailkit chroot", LOGLEVEL_DEBUG); } } } @@ -357,8 +353,7 @@ class shelluser_jailkit_plugin { // ALWAYS create the user. Even if the user was created before // if we check if the user exists, then a update (no shell -> jailkit) will not work // and the user has FULL ACCESS to the root of the server! - $command = '/usr/local/ispconfig/server/scripts/create_jailkit_user.sh ? ? ? ? ? ?'; - $app->system->exec_safe($command.' 2>/dev/null', $this->data['new']['username'], $this->data['new']['dir'], $jailkit_chroot_userhome, $this->data['new']['shell'], $this->data['new']['puser'], $jailkit_chroot_puserhome); + $app->system->create_jailkit_user($this->data['new']['username'], $this->data['new']['dir'], $jailkit_chroot_userhome, $this->data['new']['shell'], $this->data['new']['puser'], $jailkit_chroot_puserhome); $shell = '/usr/sbin/jk_chrootsh'; if($this->data['new']['active'] != 'y') $shell = '/bin/false'; @@ -366,8 +361,6 @@ class shelluser_jailkit_plugin { $app->system->usermod($this->data['new']['username'], 0, 0, $this->data['new']['dir'].'/.'.$jailkit_chroot_userhome, $shell); $app->system->usermod($this->data['new']['puser'], 0, 0, $this->data['new']['dir'].'/.'.$jailkit_chroot_puserhome, '/usr/sbin/jk_chrootsh'); - $this->app->log("Added jailkit user to chroot with command: ".$command, LOGLEVEL_DEBUG); - if(!is_dir($this->data['new']['dir'].$jailkit_chroot_userhome)) { if(is_dir($this->data['old']['dir'].$jailkit_chroot_userhome_old)) { $app->system->rename($this->data['old']['dir'].$jailkit_chroot_userhome_old,$this->data['new']['dir'].$jailkit_chroot_userhome); -- GitLab From 90afc99533450e73162e984497f9e606dcde73b4 Mon Sep 17 00:00:00 2001 From: Marius Burkard <m.burkard@pixcept.de> Date: Mon, 26 Aug 2019 22:01:40 +0200 Subject: [PATCH 148/215] - missed changing app->system to this. --- server/lib/classes/system.inc.php | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/server/lib/classes/system.inc.php b/server/lib/classes/system.inc.php index 4c76e9aaff..1698d73fe1 100644 --- a/server/lib/classes/system.inc.php +++ b/server/lib/classes/system.inc.php @@ -2154,8 +2154,8 @@ class system{ } // Change ownership of the chroot directory to root - $app->system->chown($home_dir, 'root'); - $app->system->chgrp($home_dir, 'root'); + $this->chown($home_dir, 'root'); + $this->chgrp($home_dir, 'root'); $app_args = ''; foreach($app_sections as $app_section) { -- GitLab From 9387f0222c46ddcf64a7666f5dd3af4ad7a6d2d1 Mon Sep 17 00:00:00 2001 From: Marius Burkard <m.burkard@pixcept.de> Date: Mon, 26 Aug 2019 22:09:33 +0200 Subject: [PATCH 149/215] - typo in logging line --- server/lib/classes/system.inc.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/server/lib/classes/system.inc.php b/server/lib/classes/system.inc.php index 1698d73fe1..5da642e8ad 100644 --- a/server/lib/classes/system.inc.php +++ b/server/lib/classes/system.inc.php @@ -2100,7 +2100,7 @@ class system{ $this->_last_exec_retcode = null; $ret = exec($cmd, $this->_last_exec_out, $this->_last_exec_retcode); - $this->app->log("safe_exec cmd: " . $cmd . " - return code: " . $this->_last_exec_retcode, LOGLEVEL_DEBUG); + $app->log("safe_exec cmd: " . $cmd . " - return code: " . $this->_last_exec_retcode, LOGLEVEL_DEBUG); return $ret; } -- GitLab From 7bf3c540f444123d7236cc4632305419f2736e8c Mon Sep 17 00:00:00 2001 From: Marius Burkard <m.burkard@pixcept.de> Date: Mon, 26 Aug 2019 22:17:07 +0200 Subject: [PATCH 150/215] - moved splitting for programs and sections (jailkit) to lib - fixed warning in chmod --- server/lib/classes/system.inc.php | 8 ++++++-- server/plugins-available/cron_jailkit_plugin.inc.php | 6 +++--- server/plugins-available/shelluser_jailkit_plugin.inc.php | 2 +- 3 files changed, 10 insertions(+), 6 deletions(-) diff --git a/server/lib/classes/system.inc.php b/server/lib/classes/system.inc.php index 5da642e8ad..c05d5ddf00 100644 --- a/server/lib/classes/system.inc.php +++ b/server/lib/classes/system.inc.php @@ -2136,6 +2136,8 @@ class system{ public function create_jailkit_programs($home_dir, $programs = array()) { if(empty($programs)) { return true; + } elseif(is_string($programs)) { + $programs = preg_split('/[\s,]+/', $programs); } $program_args = ''; foreach($programs as $prog) { @@ -2151,6 +2153,8 @@ class system{ public function create_jailkit_chroot($home_dir, $app_sections = array()) { if(empty($app_sections)) { return true; + } elseif(is_string($app_sections)) { + $app_sections = preg_split('/[\s,]+/', $app_sections); } // Change ownership of the chroot directory to root @@ -2170,11 +2174,11 @@ class system{ if(!is_dir($home_dir . '/tmp')) { $this->mkdirpath($home_dir . '/tmp', 0777); } else { - $this->chmod($home_dir . '/tmp', 0777); + $this->chmod($home_dir . '/tmp', 0777, true); } // Fix permissions of the root firectory - $this->chmod($home_dir . '/bin', 0755); // was chmod g-w $CHROOT_HOMEDIR/bin + $this->chmod($home_dir . '/bin', 0755, true); // was chmod g-w $CHROOT_HOMEDIR/bin // mysql needs the socket in the chrooted environment $this->mkdirpath($home_dir . '/var/run/mysqld'); diff --git a/server/plugins-available/cron_jailkit_plugin.inc.php b/server/plugins-available/cron_jailkit_plugin.inc.php index 81d4b72e96..0650ad87a3 100644 --- a/server/plugins-available/cron_jailkit_plugin.inc.php +++ b/server/plugins-available/cron_jailkit_plugin.inc.php @@ -216,7 +216,7 @@ class cron_jailkit_plugin { //check if the chroot environment is created yet if not create it with a list of program sections from the config if (!is_dir($this->parent_domain['document_root'].'/etc/jailkit')) { - $app->system->create_jailkit_chroot($this->parent_domain['document_root'], preg_split('/[\s,]+/', $this->jailkit_config['jailkit_chroot_app_sections'])); + $app->system->create_jailkit_chroot($this->parent_domain['document_root'], $this->jailkit_config['jailkit_chroot_app_sections']); $this->app->log("Added jailkit chroot", LOGLEVEL_DEBUG); @@ -256,10 +256,10 @@ class cron_jailkit_plugin { global $app; //copy over further programs and its libraries - $app->system->create_jailkit_programs($this->parent_domain['document_root'], preg_split('/[\s,]+/', $this->jailkit_config['jailkit_chroot_app_programs'])); + $app->system->create_jailkit_programs($this->parent_domain['document_root'], $this->jailkit_config['jailkit_chroot_app_programs']); $this->app->log("Added app programs to jailkit chroot", LOGLEVEL_DEBUG); - $app->system->create_jailkit_programs($this->parent_domain['document_root'], preg_split('/[\s,]+/', $this->jailkit_config['jailkit_chroot_cron_programs'])); + $app->system->create_jailkit_programs($this->parent_domain['document_root'], $this->jailkit_config['jailkit_chroot_cron_programs']); $this->app->log("Added cron programs to jailkit chroot", LOGLEVEL_DEBUG); } diff --git a/server/plugins-available/shelluser_jailkit_plugin.inc.php b/server/plugins-available/shelluser_jailkit_plugin.inc.php index eae2ea74fd..43d6365008 100755 --- a/server/plugins-available/shelluser_jailkit_plugin.inc.php +++ b/server/plugins-available/shelluser_jailkit_plugin.inc.php @@ -273,7 +273,7 @@ class shelluser_jailkit_plugin { //check if the chroot environment is created yet if not create it with a list of program sections from the config if (!is_dir($this->data['new']['dir'].'/etc/jailkit')) { - $app->system->create_jailkit_chroot($this->data['new']['dir'], preg_split('/[\s,]+/', $this->jailkit_config['jailkit_chroot_app_sections'])); + $app->system->create_jailkit_chroot($this->data['new']['dir'], $this->jailkit_config['jailkit_chroot_app_sections']); $this->app->log("Added jailkit chroot", LOGLEVEL_DEBUG); $this->_add_jailkit_programs(); -- GitLab From a471ca233a99f4e6824ed0a16b65f069e3f148c2 Mon Sep 17 00:00:00 2001 From: Till Brehm <tbrehm@ispconfig.org> Date: Thu, 29 Aug 2019 13:42:23 +0200 Subject: [PATCH 151/215] #5373 No file when dns zone delete. --- server/plugins-available/bind_plugin.inc.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/server/plugins-available/bind_plugin.inc.php b/server/plugins-available/bind_plugin.inc.php index 29d841ef8a..e8b72b5dbc 100644 --- a/server/plugins-available/bind_plugin.inc.php +++ b/server/plugins-available/bind_plugin.inc.php @@ -391,7 +391,7 @@ class bind_plugin { $app->log("Deleting BIND domain file: ".$zone_file_name, LOGLEVEL_DEBUG); //* DNSSEC-Implementation - if($data['old']['dnssec_initialized'] == 'Y') { + if($data['old']['dnssec_initialized'] == 'Y' && file_exists('/usr/local/ispconfig/server/scripts/dnssec-delete.sh')) { //delete keys $app->system->exec_safe('/usr/local/ispconfig/server/scripts/dnssec-delete.sh ?', $data['old']['origin']); } -- GitLab From b951b645a7ac868ef9b2b6d9e80843a8366ab4e9 Mon Sep 17 00:00:00 2001 From: Till Brehm <tbrehm@ispconfig.org> Date: Thu, 29 Aug 2019 13:45:43 +0200 Subject: [PATCH 152/215] Fixed wrong socket path in apps vhost when PHP 7.3 is used on the server. --- install/lib/installer_base.lib.php | 3 +++ 1 file changed, 3 insertions(+) diff --git a/install/lib/installer_base.lib.php b/install/lib/installer_base.lib.php index c7f955d945..148c6708b8 100644 --- a/install/lib/installer_base.lib.php +++ b/install/lib/installer_base.lib.php @@ -2322,6 +2322,7 @@ class installer_base { || file_exists('/var/run/php/php7.1-fpm.sock') || file_exists('/var/run/php/php7.2-fpm.sock') || file_exists('/var/run/php/php7.3-fpm.sock') + || file_exists('/var/run/php/php7.4-fpm.sock') ){ $use_tcp = '#'; $use_socket = ''; @@ -2340,6 +2341,8 @@ class installer_base { if(file_exists('/var/run/php/php7.0-fpm.sock')) $content = str_replace('/var/run/php5-fpm.sock', '/var/run/php/php7.0-fpm.sock', $content); if(file_exists('/var/run/php/php7.1-fpm.sock')) $content = str_replace('/var/run/php5-fpm.sock', '/var/run/php/php7.1-fpm.sock', $content); if(file_exists('/var/run/php/php7.2-fpm.sock')) $content = str_replace('/var/run/php5-fpm.sock', '/var/run/php/php7.2-fpm.sock', $content); + if(file_exists('/var/run/php/php7.3-fpm.sock')) $content = str_replace('/var/run/php5-fpm.sock', '/var/run/php/php7.3-fpm.sock', $content); + if(file_exists('/var/run/php/php7.4-fpm.sock')) $content = str_replace('/var/run/php5-fpm.sock', '/var/run/php/php7.4-fpm.sock', $content); wf($vhost_conf_dir.'/apps.vhost', $content); -- GitLab From 3cabaa685abcff8d58c2296c7b52f85014bd5a37 Mon Sep 17 00:00:00 2001 From: Till Brehm <tbrehm@ispconfig.org> Date: Thu, 29 Aug 2019 14:11:21 +0200 Subject: [PATCH 153/215] Fixed #5343 Buster/Dovecot stats-writer --- install/dist/lib/debian60.lib.php | 6 +++++ install/dist/lib/fedora.lib.php | 32 +++++++++++++++++++++++ install/lib/installer_base.lib.php | 32 +++++++++++++++++++++++ install/tpl/debian6_dovecot2.conf.master | 17 ++++++++++++ install/tpl/debian_dovecot2.conf.master | 15 +++++++++++ install/tpl/fedora_dovecot2.conf.master | 15 +++++++++++ install/tpl/opensuse_dovecot2.conf.master | 15 +++++++++++ 7 files changed, 132 insertions(+) diff --git a/install/dist/lib/debian60.lib.php b/install/dist/lib/debian60.lib.php index 487d350512..cc234f132e 100644 --- a/install/dist/lib/debian60.lib.php +++ b/install/dist/lib/debian60.lib.php @@ -136,6 +136,12 @@ class installer extends installer_base { caselog($command.' &> /dev/null', __FILE__, __LINE__, "EXECUTED: $command", "Failed to execute the command $command"); } } + //remove #2.3+ comment + $content = file_get_contents($config_dir.'/'.$configfile); + $content = str_replace('#2.3+','',$content); + file_put_contents($config_dir.'/'.$configfile,$content); + unset($content); + } else { // remove settings which are not supported in Dovecot < 2.3 removeLine($config_dir.'/'.$configfile, 'ssl_min_protocol ='); diff --git a/install/dist/lib/fedora.lib.php b/install/dist/lib/fedora.lib.php index 5bb8fc0d25..3af8746908 100644 --- a/install/dist/lib/fedora.lib.php +++ b/install/dist/lib/fedora.lib.php @@ -449,6 +449,38 @@ class installer_dist extends installer_base { file_put_contents($config_dir.'/'.$configfile,$content); unset($content); } + if(version_compare($dovecot_version,2.3) >= 0) { + // Remove deprecated setting(s) + removeLine($config_dir.'/'.$configfile, 'ssl_protocols ='); + + // Check if we have a dhparams file and if not, create it + if(!file_exists('/etc/dovecot/dh.pem')) { + swriteln('Creating new DHParams file, this takes several minutes. Do not interrupt the script.'); + if(file_exists('/var/lib/dovecot/ssl-parameters.dat')) { + // convert existing ssl parameters file + $command = 'dd if=/var/lib/dovecot/ssl-parameters.dat bs=1 skip=88 | openssl dhparam -inform der > /etc/dovecot/dh.pem'; + caselog($command.' &> /dev/null', __FILE__, __LINE__, "EXECUTED: $command", "Failed to execute the command $command"); + } else { + /* + Create a new dhparams file. We use 2048 bit only as it simply takes too long + on smaller systems to generate a 4096 bit dh file (> 30 minutes). If you need + a 4096 bit file, create it manually before you install ISPConfig + */ + $command = 'openssl dhparam -out /etc/dovecot/dh.pem 2048'; + caselog($command.' &> /dev/null', __FILE__, __LINE__, "EXECUTED: $command", "Failed to execute the command $command"); + } + } + //remove #2.3+ comment + $content = file_get_contents($config_dir.'/'.$configfile); + $content = str_replace('#2.3+','',$content); + file_put_contents($config_dir.'/'.$configfile,$content); + unset($content); + + } else { + // remove settings which are not supported in Dovecot < 2.3 + removeLine($config_dir.'/'.$configfile, 'ssl_min_protocol ='); + removeLine($config_dir.'/'.$configfile, 'ssl_dh ='); + } replaceLine($config_dir.'/'.$configfile, 'postmaster_address = postmaster@example.com', 'postmaster_address = postmaster@'.$conf['hostname'], 1, 0); replaceLine($config_dir.'/'.$configfile, 'postmaster_address = webmaster@localhost', 'postmaster_address = postmaster@'.$conf['hostname'], 1, 0); } else { diff --git a/install/lib/installer_base.lib.php b/install/lib/installer_base.lib.php index 148c6708b8..dd4fe9c306 100644 --- a/install/lib/installer_base.lib.php +++ b/install/lib/installer_base.lib.php @@ -1304,6 +1304,38 @@ class installer_base { file_put_contents($config_dir.'/'.$configfile,$content); unset($content); } + if(version_compare($dovecot_version,2.3) >= 0) { + // Remove deprecated setting(s) + removeLine($config_dir.'/'.$configfile, 'ssl_protocols ='); + + // Check if we have a dhparams file and if not, create it + if(!file_exists('/etc/dovecot/dh.pem')) { + swriteln('Creating new DHParams file, this takes several minutes. Do not interrupt the script.'); + if(file_exists('/var/lib/dovecot/ssl-parameters.dat')) { + // convert existing ssl parameters file + $command = 'dd if=/var/lib/dovecot/ssl-parameters.dat bs=1 skip=88 | openssl dhparam -inform der > /etc/dovecot/dh.pem'; + caselog($command.' &> /dev/null', __FILE__, __LINE__, "EXECUTED: $command", "Failed to execute the command $command"); + } else { + /* + Create a new dhparams file. We use 2048 bit only as it simply takes too long + on smaller systems to generate a 4096 bit dh file (> 30 minutes). If you need + a 4096 bit file, create it manually before you install ISPConfig + */ + $command = 'openssl dhparam -out /etc/dovecot/dh.pem 2048'; + caselog($command.' &> /dev/null', __FILE__, __LINE__, "EXECUTED: $command", "Failed to execute the command $command"); + } + } + //remove #2.3+ comment + $content = file_get_contents($config_dir.'/'.$configfile); + $content = str_replace('#2.3+','',$content); + file_put_contents($config_dir.'/'.$configfile,$content); + unset($content); + + } else { + // remove settings which are not supported in Dovecot < 2.3 + removeLine($config_dir.'/'.$configfile, 'ssl_min_protocol ='); + removeLine($config_dir.'/'.$configfile, 'ssl_dh ='); + } } //* dovecot-lmtpd diff --git a/install/tpl/debian6_dovecot2.conf.master b/install/tpl/debian6_dovecot2.conf.master index f13bbd53df..74f680024b 100644 --- a/install/tpl/debian6_dovecot2.conf.master +++ b/install/tpl/debian6_dovecot2.conf.master @@ -68,3 +68,20 @@ protocol lmtp { postmaster_address = webmaster@localhost mail_plugins = quota sieve } + +mail_plugins = $mail_plugins quota + +#2.3+ service stats { +#2.3+ unix_listener stats-reader { +#2.3+ user = vmail +#2.3+ group = vmail +#2.3+ mode = 0660 +#2.3+ } +#2.3+ +#2.3+ unix_listener stats-writer { +#2.3+ user = vmail +#2.3+ group = vmail +#2.3+ mode = 0660 +#2.3+ } +#2.3+ } + diff --git a/install/tpl/debian_dovecot2.conf.master b/install/tpl/debian_dovecot2.conf.master index 8fdaf44eeb..cfe3bd0182 100644 --- a/install/tpl/debian_dovecot2.conf.master +++ b/install/tpl/debian_dovecot2.conf.master @@ -64,4 +64,19 @@ protocol lmtp { postmaster_address = webmaster@localhost mail_plugins = quota sieve } + mail_plugins = $mail_plugins quota + +#2.3+ service stats { +#2.3+ unix_listener stats-reader { +#2.3+ user = vmail +#2.3+ group = vmail +#2.3+ mode = 0660 +#2.3+ } +#2.3+ +#2.3+ unix_listener stats-writer { +#2.3+ user = vmail +#2.3+ group = vmail +#2.3+ mode = 0660 +#2.3+ } +#2.3+ } diff --git a/install/tpl/fedora_dovecot2.conf.master b/install/tpl/fedora_dovecot2.conf.master index c14af1d44d..1ba39a30d4 100644 --- a/install/tpl/fedora_dovecot2.conf.master +++ b/install/tpl/fedora_dovecot2.conf.master @@ -61,4 +61,19 @@ protocol lmtp { postmaster_address = webmaster@localhost mail_plugins = quota sieve } + mail_plugins = $mail_plugins quota + +#2.3+ service stats { +#2.3+ unix_listener stats-reader { +#2.3+ user = vmail +#2.3+ group = vmail +#2.3+ mode = 0660 +#2.3+ } +#2.3+ +#2.3+ unix_listener stats-writer { +#2.3+ user = vmail +#2.3+ group = vmail +#2.3+ mode = 0660 +#2.3+ } +#2.3+ } diff --git a/install/tpl/opensuse_dovecot2.conf.master b/install/tpl/opensuse_dovecot2.conf.master index f28c1095d2..f615cf3354 100644 --- a/install/tpl/opensuse_dovecot2.conf.master +++ b/install/tpl/opensuse_dovecot2.conf.master @@ -60,4 +60,19 @@ protocol lmtp { postmaster_address = webmaster@localhost mail_plugins = quota sieve } + mail_plugins = $mail_plugins quota + +#2.3+ service stats { +#2.3+ unix_listener stats-reader { +#2.3+ user = vmail +#2.3+ group = vmail +#2.3+ mode = 0660 +#2.3+ } +#2.3+ +#2.3+ unix_listener stats-writer { +#2.3+ user = vmail +#2.3+ group = vmail +#2.3+ mode = 0660 +#2.3+ } +#2.3+ } -- GitLab From ea111e9228a6be7acedfd5d0644825e5eb4aca54 Mon Sep 17 00:00:00 2001 From: Till Brehm <tbrehm@ispconfig.org> Date: Thu, 29 Aug 2019 14:14:26 +0200 Subject: [PATCH 154/215] Removed global quota line from dovecot.conf file again. --- install/tpl/debian6_dovecot2.conf.master | 2 -- 1 file changed, 2 deletions(-) diff --git a/install/tpl/debian6_dovecot2.conf.master b/install/tpl/debian6_dovecot2.conf.master index 74f680024b..777280f044 100644 --- a/install/tpl/debian6_dovecot2.conf.master +++ b/install/tpl/debian6_dovecot2.conf.master @@ -69,8 +69,6 @@ protocol lmtp { mail_plugins = quota sieve } -mail_plugins = $mail_plugins quota - #2.3+ service stats { #2.3+ unix_listener stats-reader { #2.3+ user = vmail -- GitLab From 20b7abe33d2b9d2cf549d5896c9763bc620e8a1b Mon Sep 17 00:00:00 2001 From: Marius Burkard <m.burkard@pixcept.de> Date: Fri, 30 Aug 2019 14:51:17 +0200 Subject: [PATCH 155/215] - enable greylisting setting for catchall mail addresses - change the way greylisting setting is evaluated (prio is now 1. mail user, 2. mail forward/alias, 3. catchall), fixes #5378 --- install/tpl/mysql-virtual_policy_greylist.cf.master | 3 ++- interface/web/mail/form/mail_domain_catchall.tform.php | 6 ++++++ interface/web/mail/lib/lang/de_mail_domain_catchall.lng | 1 + interface/web/mail/lib/lang/en_mail_domain_catchall.lng | 1 + interface/web/mail/templates/mail_domain_catchall_edit.htm | 6 ++++++ 5 files changed, 16 insertions(+), 1 deletion(-) diff --git a/install/tpl/mysql-virtual_policy_greylist.cf.master b/install/tpl/mysql-virtual_policy_greylist.cf.master index fd6fded819..7967ee4a9c 100644 --- a/install/tpl/mysql-virtual_policy_greylist.cf.master +++ b/install/tpl/mysql-virtual_policy_greylist.cf.master @@ -1,5 +1,6 @@ user = {mysql_server_ispconfig_user} password = {mysql_server_ispconfig_password} dbname = {mysql_server_database} -query = SELECT 'greylisting' FROM (SELECT greylisting, source AS email FROM mail_forwarding WHERE server_id = {server_id} UNION SELECT greylisting, email FROM mail_user WHERE server_id = {server_id}) addresses WHERE addresses.email='%s' AND addresses.greylisting='y' UNION SELECT 'greylisting' FROM `mail_forwarding` f CROSS JOIN `mail_user` u ON u.email = f.destination WHERE f.type = 'catchall' AND u.greylisting = 'y' AND u.server_id = {server_id} AND f.source = '@%s' +query = SELECT 'greylisting' FROM (SELECT `greylisting`, 1 as `prio` FROM `mail_user` WHERE `server_id` = {server_id} AND `email` = '%s' UNION SELECT `greylisting`, 2 as `prio` FROM `mail_forwarding` WHERE `server_id` = {server_id} AND `source` = '%s' UNION SELECT `greylisting`, 3 as `prio` FROM `mail_forwarding` WHERE `server_id` = {server_id} AND `source` = '@%s' ORDER BY `prio` ASC LIMIT 1) as rules WHERE rules.greylisting = 'y' + hosts = {mysql_server_ip} \ No newline at end of file diff --git a/interface/web/mail/form/mail_domain_catchall.tform.php b/interface/web/mail/form/mail_domain_catchall.tform.php index 8d0c0296bd..81ce24c7b5 100644 --- a/interface/web/mail/form/mail_domain_catchall.tform.php +++ b/interface/web/mail/form/mail_domain_catchall.tform.php @@ -131,6 +131,12 @@ $form["tabs"]['catchall'] = array ( 'default' => 'y', 'value' => array(0 => 'n', 1 => 'y') ), + 'greylisting' => array ( + 'datatype' => 'VARCHAR', + 'formtype' => 'CHECKBOX', + 'default' => 'n', + 'value' => array(1 => 'y', 0 => 'n') + ), //################################# // ENDE Datatable fields //################################# diff --git a/interface/web/mail/lib/lang/de_mail_domain_catchall.lng b/interface/web/mail/lib/lang/de_mail_domain_catchall.lng index 9f37e56697..bef241e0ea 100644 --- a/interface/web/mail/lib/lang/de_mail_domain_catchall.lng +++ b/interface/web/mail/lib/lang/de_mail_domain_catchall.lng @@ -8,4 +8,5 @@ $wb['domain_error_regex'] = 'Ungültiger Domainname oder ungültige Zeichen im D $wb['limit_mailcatchall_txt'] = 'Die maximale Anzahl an Catchall Einträgen für Ihr Konto wurde erreicht.'; $wb['source_txt'] = 'Quelle'; $wb['destination_error_isemail'] = 'Das Ziel ist keine gültige E-Mail Adresse.'; +$wb['greylisting_txt'] = 'Aktiviere Greylisting'; ?> diff --git a/interface/web/mail/lib/lang/en_mail_domain_catchall.lng b/interface/web/mail/lib/lang/en_mail_domain_catchall.lng index 1f1726e540..a49722802e 100644 --- a/interface/web/mail/lib/lang/en_mail_domain_catchall.lng +++ b/interface/web/mail/lib/lang/en_mail_domain_catchall.lng @@ -9,4 +9,5 @@ $wb["limit_mailcatchall_txt"] = 'The max. number of email catchall accounts for $wb['domain_txt'] = 'Domain'; $wb["source_txt"] = 'Source'; $wb['destination_error_isemail'] = 'Destination is no valid email address.'; +$wb['greylisting_txt'] = 'Enable greylisting'; ?> diff --git a/interface/web/mail/templates/mail_domain_catchall_edit.htm b/interface/web/mail/templates/mail_domain_catchall_edit.htm index 63c4405de2..5991f2aecc 100644 --- a/interface/web/mail/templates/mail_domain_catchall_edit.htm +++ b/interface/web/mail/templates/mail_domain_catchall_edit.htm @@ -14,6 +14,12 @@ <div class="form-group"> <label for="destination" class="col-sm-3 control-label">{tmpl_var name='destination_txt'}</label> <div class="col-sm-9"><input type="text" name="destination" id="destination" value="{tmpl_var name='destination'}" class="form-control" /></div></div> + <div class="form-group"> + <label class="col-sm-3 control-label">{tmpl_var name='greylisting_txt'}</label> + <div class="col-sm-9"> + {tmpl_var name='greylisting'} + </div> + </div> <div class="form-group"> <label class="col-sm-3 control-label">{tmpl_var name='active_txt'}</label> <div class="col-sm-9"> -- GitLab From 4666bfeb7456c34c847525a0f44a419f10457ace Mon Sep 17 00:00:00 2001 From: Marius Burkard <m.burkard@pixcept.de> Date: Fri, 30 Aug 2019 15:11:59 +0200 Subject: [PATCH 156/215] - fix for previous commit --- install/tpl/mysql-virtual_policy_greylist.cf.master | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/install/tpl/mysql-virtual_policy_greylist.cf.master b/install/tpl/mysql-virtual_policy_greylist.cf.master index 7967ee4a9c..00f504e082 100644 --- a/install/tpl/mysql-virtual_policy_greylist.cf.master +++ b/install/tpl/mysql-virtual_policy_greylist.cf.master @@ -1,6 +1,6 @@ user = {mysql_server_ispconfig_user} password = {mysql_server_ispconfig_password} dbname = {mysql_server_database} -query = SELECT 'greylisting' FROM (SELECT `greylisting`, 1 as `prio` FROM `mail_user` WHERE `server_id` = {server_id} AND `email` = '%s' UNION SELECT `greylisting`, 2 as `prio` FROM `mail_forwarding` WHERE `server_id` = {server_id} AND `source` = '%s' UNION SELECT `greylisting`, 3 as `prio` FROM `mail_forwarding` WHERE `server_id` = {server_id} AND `source` = '@%s' ORDER BY `prio` ASC LIMIT 1) as rules WHERE rules.greylisting = 'y' +query = SELECT 'greylisting' FROM (SELECT `greylisting`, 1 as `prio` FROM `mail_user` WHERE `server_id` = {server_id} AND `email` = '%s' UNION SELECT `greylisting`, 2 as `prio` FROM `mail_forwarding` WHERE `server_id` = {server_id} AND `source` = '%s' UNION SELECT `greylisting`, 3 as `prio` FROM `mail_forwarding` WHERE `server_id` = {server_id} AND `source` = '@%d' ORDER BY `prio` ASC LIMIT 1) as rules WHERE rules.greylisting = 'y' hosts = {mysql_server_ip} \ No newline at end of file -- GitLab From 24b60e9c77a440812e61b2a65200c6b8501a0f8c Mon Sep 17 00:00:00 2001 From: Marius Burkard <m.burkard@pixcept.de> Date: Mon, 2 Sep 2019 10:15:41 +0200 Subject: [PATCH 157/215] - fixed problem when running cron_debug.php - fixed php warning on awstats cron --- server/lib/classes/cron.d/150-awstats.inc.php | 4 +++- server/lib/classes/cronjob.inc.php | 2 +- 2 files changed, 4 insertions(+), 2 deletions(-) diff --git a/server/lib/classes/cron.d/150-awstats.inc.php b/server/lib/classes/cron.d/150-awstats.inc.php index 0b1cbd5a44..4ba286ea1a 100644 --- a/server/lib/classes/cron.d/150-awstats.inc.php +++ b/server/lib/classes/cron.d/150-awstats.inc.php @@ -148,7 +148,9 @@ class cronjob_awstats extends cronjob { } $statsdirold = $statsdir."/".$awyear."-".$awmonth."/"; - mkdir($statsdirold); + if(!is_dir($statsdirold)) { + mkdir($statsdirold); + } $files = scandir($statsdir); foreach ($files as $file) { if (substr($file, 0, 1) != "." && !is_dir("$statsdir"."/"."$file") && substr($file, 0, 1) != "w" && substr($file, 0, 1) != "i") copy("$statsdir"."/"."$file", "$statsdirold"."$file"); diff --git a/server/lib/classes/cronjob.inc.php b/server/lib/classes/cronjob.inc.php index 1e452b6481..1407add021 100644 --- a/server/lib/classes/cronjob.inc.php +++ b/server/lib/classes/cronjob.inc.php @@ -174,7 +174,7 @@ class cronjob { } // child classes may NOT override this! - private function onCompleted() { + protected function onCompleted() { global $app, $conf; if($conf['log_priority'] <= LOGLEVEL_DEBUG) print "Called onCompleted() for class " . get_class($this) . "\n"; -- GitLab From 2e3887d07d0baeed95208df87ab5b53816ada8ff Mon Sep 17 00:00:00 2001 From: Marius Burkard <m.burkard@pixcept.de> Date: Mon, 2 Sep 2019 11:13:54 +0200 Subject: [PATCH 158/215] - changed the way cron_debug.php calls cron job classes --- server/cron_debug.php | 7 +------ server/lib/classes/cronjob.inc.php | 4 ++-- 2 files changed, 3 insertions(+), 8 deletions(-) diff --git a/server/cron_debug.php b/server/cron_debug.php index 6eda4fcdde..74065f02c4 100644 --- a/server/cron_debug.php +++ b/server/cron_debug.php @@ -61,12 +61,7 @@ if(preg_match('/^\d+\-(.*)$/', $name, $match)) $name = $match[1]; // strip numer include $path . '/' . $cronjob_file; $class_name = 'cronjob_' . $name; $cronjob = new $class_name(); - -$cronjob->onPrepare(); -$cronjob->onBeforeRun(); -$cronjob->onRunJob(); -$cronjob->onAfterRun(); -$cronjob->onCompleted(); +$cronjob->run(true); die("finished.\n"); diff --git a/server/lib/classes/cronjob.inc.php b/server/lib/classes/cronjob.inc.php index 1407add021..27bc7038cf 100644 --- a/server/lib/classes/cronjob.inc.php +++ b/server/lib/classes/cronjob.inc.php @@ -76,14 +76,14 @@ class cronjob { /** run through cronjob sequence **/ - public function run() { + public function run($debug_mode = false) { global $conf; if($conf['log_priority'] <= LOGLEVEL_DEBUG) print "Called run() for class " . get_class($this) . "\n"; if($conf['log_priority'] <= LOGLEVEL_DEBUG) print "Job has schedule: " . $this->getSchedule() . "\n"; $this->onPrepare(); $run_it = $this->onBeforeRun(); - if($run_it == true) { + if($run_it == true || $debug_mode === true) { $this->onRunJob(); $this->onAfterRun(); $this->onCompleted(); -- GitLab From 20fd2cce482389d5c80a78a9f247c10562177a48 Mon Sep 17 00:00:00 2001 From: Till Brehm <tbrehm@ispconfig.org> Date: Mon, 2 Sep 2019 14:15:54 +0200 Subject: [PATCH 159/215] Implemented #5375 Add WebDAV functions to remoting API --- interface/lib/classes/remote.d/sites.inc.php | 50 ++++++++++++++++++++ interface/web/sites/lib/remote.conf.php | 1 + 2 files changed, 51 insertions(+) diff --git a/interface/lib/classes/remote.d/sites.inc.php b/interface/lib/classes/remote.d/sites.inc.php index a2f15d6f9d..59c2e371f3 100644 --- a/interface/lib/classes/remote.d/sites.inc.php +++ b/interface/lib/classes/remote.d/sites.inc.php @@ -1017,6 +1017,56 @@ class remoting_sites extends remoting { return $app->quota_lib->get_databasequota_data($client_id, false); } + // ---------------------------------------------------------------------------------------------------------- + + //* Get record details + public function sites_webdav_user_get($session_id, $primary_id) + { + global $app; + + if(!$this->checkPerm($session_id, 'sites_webdav_user_get')) { + throw new SoapFault('permission_denied', 'You do not have the permissions to access this function.'); + return false; + } + $app->uses('remoting_lib'); + $app->remoting_lib->loadFormDef('../sites/form/webdav_user.tform.php'); + return $app->remoting_lib->getDataRecord($primary_id); + } + + //* Add a record + public function sites_webdav_user_add($session_id, $client_id, $params) + { + if(!$this->checkPerm($session_id, 'sites_webdav_user_add')) { + throw new SoapFault('permission_denied', 'You do not have the permissions to access this function.'); + return false; + } + return $this->insertQuery('../sites/form/webdav_user.tform.php', $client_id, $params); + } + + //* Update a record + public function sites_webdav_user_update($session_id, $client_id, $primary_id, $params) + { + if(!$this->checkPerm($session_id, 'sites_webdav_user_update')) { + throw new SoapFault('permission_denied', 'You do not have the permissions to access this function.'); + return false; + } + $affected_rows = $this->updateQuery('../sites/form/webdav_user.tform.php', $client_id, $primary_id, $params); + return $affected_rows; + } + + //* Delete a record + public function sites_webdav_user_delete($session_id, $primary_id) + { + global $app; + if(!$this->checkPerm($session_id, 'sites_webdav_user_delete')) { + throw new SoapFault('permission_denied', 'You do not have the permissions to access this function.'); + return false; + } + + $affected_rows = $this->deleteQuery('../sites/form/webdav_user.tform.php', $primary_id); + return $affected_rows; + } + } diff --git a/interface/web/sites/lib/remote.conf.php b/interface/web/sites/lib/remote.conf.php index a9ef3236b7..19a48e3ca5 100644 --- a/interface/web/sites/lib/remote.conf.php +++ b/interface/web/sites/lib/remote.conf.php @@ -9,4 +9,5 @@ $function_list['sites_web_domain_backup'] = 'Sites Backup functions'; $function_list['sites_web_aliasdomain_get,sites_web_aliasdomain_add,sites_web_aliasdomain_update,sites_web_aliasdomain_delete'] = 'Sites Aliasdomain functions'; $function_list['sites_web_subdomain_get,sites_web_subdomain_add,sites_web_subdomain_update,sites_web_subdomain_delete'] = 'Sites Subdomain functions'; $function_list['sites_aps_update_package_list,sites_aps_available_packages_list,sites_aps_change_package_status,sites_aps_install_package,sites_aps_get_package_details,sites_aps_get_package_file,sites_aps_get_package_settings,sites_aps_instance_get,sites_aps_instance_delete'] = 'Sites APS functions'; +$function_list['sites_webdav_user_get,sites_webdav_user_add,sites_webdav_user_update,sites_webdav_user_delete'] = 'Sites WebDAV-User functions'; ?> -- GitLab From 80e4c48f17672b3791d744ce38a17c43ea61f7a1 Mon Sep 17 00:00:00 2001 From: Till Brehm <tbrehm@ispconfig.org> Date: Mon, 2 Sep 2019 14:25:15 +0200 Subject: [PATCH 160/215] #5383 Updated Czech translation --- interface/lib/lang/cz.lng | 2 +- .../web/admin/lib/lang/cz_server_php.lng | 2 +- .../web/admin/lib/lang/cz_server_php_list.lng | 2 +- .../web/admin/lib/lang/cz_system_config.lng | 16 +++---- .../web/client/lib/lang/cz_clients_list.lng | 6 +-- .../lib/lang/cz_dashlet_invoices.lng | 2 +- .../dashboard/lib/lang/cz_dashlet_limits.lng | 8 ++-- interface/web/dns/lib/lang/cz_dns_caa.lng | 32 +++++++------- interface/web/dns/lib/lang/cz_dns_dmarc.lng | 4 +- interface/web/dns/lib/lang/cz_dns_ds.lng | 4 +- interface/web/dns/lib/lang/cz_dns_import.lng | 2 +- interface/web/dns/lib/lang/cz_dns_loc.lng | 4 +- interface/web/dns/lib/lang/cz_dns_soa.lng | 2 +- interface/web/dns/lib/lang/cz_dns_spf.lng | 4 +- interface/web/dns/lib/lang/cz_dns_tlsa.lng | 4 +- interface/web/dns/lib/lang/cz_dns_wizard.lng | 2 +- .../web/mail/lib/lang/cz_mail_backup_list.lng | 12 ++--- interface/web/monitor/lib/lang/cz.lng | 2 +- .../lib/lang/cz_dataloghistory_list.lng | 12 ++--- .../lib/lang/cz_dataloghistory_undo.lng | 4 +- .../lib/lang/cz_dataloghistory_view.lng | 44 +++++++++---------- .../sites/lib/lang/cz_aps_instances_list.lng | 2 +- .../web/sites/lib/lang/cz_web_aliasdomain.lng | 2 +- .../web/sites/lib/lang/cz_web_backup_list.lng | 4 +- .../web/sites/lib/lang/cz_web_childdomain.lng | 2 +- .../sites/lib/lang/cz_web_vhost_domain.lng | 10 ++--- .../sites/lib/lang/cz_web_vhost_subdomain.lng | 2 +- 27 files changed, 96 insertions(+), 96 deletions(-) diff --git a/interface/lib/lang/cz.lng b/interface/lib/lang/cz.lng index 6d95c1249f..fdf9053dae 100644 --- a/interface/lib/lang/cz.lng +++ b/interface/lib/lang/cz.lng @@ -33,7 +33,7 @@ $wb['top_menu_monitor'] = 'Monitor'; $wb['top_menu_sites'] = 'Stránky'; $wb['top_menu_dns'] = 'DNS'; $wb['top_menu_tools'] = 'Nástroje'; -$wb['top_menu_help'] = 'Pomoc'; +$wb['top_menu_help'] = 'Podpora'; $wb['toolsarea_head_txt'] = 'Nástroje'; $wb['top_menu_billing'] = 'Fakturace'; $wb['top_menu_domain'] = 'Doména'; diff --git a/interface/web/admin/lib/lang/cz_server_php.lng b/interface/web/admin/lib/lang/cz_server_php.lng index 615431c355..e326870340 100644 --- a/interface/web/admin/lib/lang/cz_server_php.lng +++ b/interface/web/admin/lib/lang/cz_server_php.lng @@ -13,5 +13,5 @@ $wb['php_fastcgi_ini_dir_txt'] = 'Cesta k php.ini adresáři'; $wb['php_fpm_init_script_txt'] = 'Cesta k PHP-FPM init script'; $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'; -$wb['active_txt'] = 'Active'; +$wb['active_txt'] = 'AktivnÃ'; ?> 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 f79d482190..abe4f750ff 100644 --- a/interface/web/admin/lib/lang/cz_server_php_list.lng +++ b/interface/web/admin/lib/lang/cz_server_php_list.lng @@ -4,5 +4,5 @@ $wb['server_id_txt'] = 'Server'; $wb['add_new_record_txt'] = 'PÅ™idat verzi PHP'; $wb['client_id_txt'] = 'Klient'; $wb['name_txt'] = 'Verze PHP'; -$wb['active_txt'] = 'Active'; +$wb['active_txt'] = 'AktivnÃ'; ?> diff --git a/interface/web/admin/lib/lang/cz_system_config.lng b/interface/web/admin/lib/lang/cz_system_config.lng index a0abf26410..3660e1b689 100644 --- a/interface/web/admin/lib/lang/cz_system_config.lng +++ b/interface/web/admin/lib/lang/cz_system_config.lng @@ -77,17 +77,17 @@ $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['reseller_can_use_options_txt'] = 'Distributor (prodejce) může použÃt kartu možnostà pro weby.'; $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'; -$wb['ca_name_txt'] = 'Name'; -$wb['ca_issue_txt'] = 'Issue'; -$wb['ca_wildcard_txt'] = 'Use Wildcard'; -$wb['ca_critical_txt'] = 'Strict Check'; +$wb['ca_name_txt'] = 'Název vydavatele'; +$wb['ca_issue_txt'] = 'Doména vydavatele'; +$wb['ca_wildcard_txt'] = 'PoužÃt Wildcard (*)'; +$wb['ca_critical_txt'] = 'PÅ™Ãsná kontrola'; $wb['ca_iodef_txt'] = 'iodef'; -$wb['active_txt'] = 'Aktive'; -$wb['btn_save_txt'] = 'Save'; -$wb['btn_cancel_txt'] = 'Cancel'; +$wb['active_txt'] = 'AktivnÃ'; +$wb['btn_save_txt'] = 'Uložit'; +$wb['btn_cancel_txt'] = 'ZruÅ¡it'; $wb['web_php_options_txt'] = 'PHP Handler (Apache only)'; ?> diff --git a/interface/web/client/lib/lang/cz_clients_list.lng b/interface/web/client/lib/lang/cz_clients_list.lng index 8cdabf2696..270da3674d 100644 --- a/interface/web/client/lib/lang/cz_clients_list.lng +++ b/interface/web/client/lib/lang/cz_clients_list.lng @@ -8,7 +8,7 @@ $wb['country_txt'] = 'Stát'; $wb['add_new_record_txt'] = 'VytvoÅ™it klienta'; $wb['username_txt'] = 'Uživatelské jméno'; $wb['customer_no_txt'] = 'Zákaznické ÄÃslo'; -$wb['locked_txt'] = 'Locked'; -$wb['yes_txt'] = 'Yes'; -$wb['no_txt'] = 'No'; +$wb['locked_txt'] = 'ZamÄené'; +$wb['yes_txt'] = 'Ano'; +$wb['no_txt'] = 'Ne'; ?> diff --git a/interface/web/dashboard/lib/lang/cz_dashlet_invoices.lng b/interface/web/dashboard/lib/lang/cz_dashlet_invoices.lng index 9666ed2b08..ab093825c6 100644 --- a/interface/web/dashboard/lib/lang/cz_dashlet_invoices.lng +++ b/interface/web/dashboard/lib/lang/cz_dashlet_invoices.lng @@ -3,7 +3,7 @@ $wb['invoices_txt'] = 'Invoices'; $wb['invoice_no_txt'] = 'Invoice No.'; $wb['amount_txt'] = 'Amount'; $wb['date_txt'] = 'Datum'; -$wb['invoice_status_txt'] = 'Status'; +$wb['invoice_status_txt'] = 'Stav'; $wb['no_invoices_txt'] = 'No Invoices available.'; $wb['paid_txt'] = 'Paid'; $wb['unpaid_txt'] = 'Unpaid'; diff --git a/interface/web/dashboard/lib/lang/cz_dashlet_limits.lng b/interface/web/dashboard/lib/lang/cz_dashlet_limits.lng index d322823e6b..a7aecc4a53 100644 --- a/interface/web/dashboard/lib/lang/cz_dashlet_limits.lng +++ b/interface/web/dashboard/lib/lang/cz_dashlet_limits.lng @@ -1,5 +1,5 @@ <?php -$wb['limits_txt'] = 'Limity úÄtu'; +$wb['limits_txt'] = 'Limity úÄtů'; $wb['of_txt'] = 'z'; $wb['unlimited_txt'] = 'neomezeno'; $wb['limit_maildomain_txt'] = 'PoÄet e-mailových domén'; @@ -28,7 +28,7 @@ $wb['limit_client_txt'] = 'PoÄet klientů'; $wb['limit_database_txt'] = 'PoÄet databázÃ'; $wb['limit_mailmailinglist_txt'] = 'PoÄet e-mailových konferencÃ'; $wb['limit_domain_txt'] = 'PoÄet domén'; -$wb['limit_mailquota_txt'] = 'Assigned mailbox quota'; -$wb['limit_web_quota_txt'] = 'Assigned web quota'; -$wb['limit_database_quota_txt'] = 'Assigned database quota'; +$wb['limit_mailquota_txt'] = 'PÅ™iÅ™azená e-mailová kvóta'; +$wb['limit_web_quota_txt'] = 'PÅ™iÅ™azená webová kvóta'; +$wb['limit_database_quota_txt'] = 'PÅ™iÅ™azená databázová kvóta'; ?> diff --git a/interface/web/dns/lib/lang/cz_dns_caa.lng b/interface/web/dns/lib/lang/cz_dns_caa.lng index 973a97ceb6..f4ba690c5a 100644 --- a/interface/web/dns/lib/lang/cz_dns_caa.lng +++ b/interface/web/dns/lib/lang/cz_dns_caa.lng @@ -1,19 +1,19 @@ <?php -$wb['ca_list_txt'] = 'Certifiction Authority'; -$wb['ca_domain_txt'] = 'Domain'; -$wb['ca_hostname_txt'] = 'Additional Hostnamen'; -$wb['ca_hostname_note_txt'] = '(Sepearated list with commas - empty for all hostnames)'; -$wb['ca_options_txt'] = 'Additional Options'; -$wb['ca_options_note_txt'] = 'requested by the CA (Sepearated list with commas)'; -$wb['ca_wildcard_txt'] = 'Use Wildcard SSL'; -$wb['ca_critical_txt'] = 'Strict check'; +$wb['ca_list_txt'] = 'CertifikaÄnà autorita'; +$wb['ca_domain_txt'] = 'Doména'; +$wb['ca_hostname_txt'] = 'Omezit na názvy hostitelů'; +$wb['ca_hostname_note_txt'] = '(OddÄ›lený seznam s Äárkami - prázdný pro vÅ¡echna jména hostitelů)'; +$wb['ca_options_txt'] = 'DalÅ¡Ã možnosti názvu hostitele'; +$wb['ca_options_note_txt'] = 'requested by the CA (OddÄ›lený seznam s Äárkami)'; +$wb['ca_wildcard_txt'] = 'Použità Wildcard (*) SSL'; +$wb['ca_critical_txt'] = 'PÅ™Ãsná kontrola'; $wb['ttl_txt'] = 'TTL'; -$wb['active_txt'] = 'Active'; -$wb['select_txt'] = 'Select Certifiction Authority'; -$wb['no_zone_perm'] = 'You do not have the permission to add a record to this DNS zone.'; -$wb['limit_dns_record_txt'] = 'The max. number of DNS records for your account is reached.'; -$wb['ca_error_txt'] = 'No Certifiction Authority selected'; -$wb['caa_exists_error'] = 'CAA Record already exists'; -$wb['ca_option_error'] = 'Invalid format for additional options; OPTION=VALUE'; -$wb['ttl_range_error'] = 'Min. TTL time is 60 seconds.'; +$wb['active_txt'] = 'AktivnÃ'; +$wb['select_txt'] = 'Vyberte certifikaÄnà autoritu'; +$wb['no_zone_perm'] = 'Nemáte oprávnÄ›nà pÅ™idat záznam do této zóny DNS.'; +$wb['limit_dns_record_txt'] = 'Byl dosažen max. poÄet DNS záznamů pro váš úÄet.'; +$wb['ca_error_txt'] = 'Nebyla vybrána žádná certifikaÄnà autorita'; +$wb['caa_exists_error'] = 'CAA záznam již existuje'; +$wb['ca_option_error'] = 'Neplatný formát pro dalÅ¡Ã možnosti; OPTION=VALUE'; +$wb['ttl_range_error'] = 'Min. TTL Äas je 60 sekund.'; ?> diff --git a/interface/web/dns/lib/lang/cz_dns_dmarc.lng b/interface/web/dns/lib/lang/cz_dns_dmarc.lng index c5952552a6..c4c3bb4f24 100644 --- a/interface/web/dns/lib/lang/cz_dns_dmarc.lng +++ b/interface/web/dns/lib/lang/cz_dns_dmarc.lng @@ -44,7 +44,7 @@ $wb['dmarc_more_spf_txt'] = 'More than one active SPF Record'; $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 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['limit_dns_record_txt'] = 'Byl dosažen max. 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 DNS.'; $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 3d25095d3b..f7dd779ef8 100644 --- a/interface/web/dns/lib/lang/cz_dns_ds.lng +++ b/interface/web/dns/lib/lang/cz_dns_ds.lng @@ -6,8 +6,8 @@ $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['limit_dns_record_txt'] = 'Byl dosažen max. 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 DNS.'; $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'; diff --git a/interface/web/dns/lib/lang/cz_dns_import.lng b/interface/web/dns/lib/lang/cz_dns_import.lng index 3b41baa1be..fc90d3cf3c 100644 --- a/interface/web/dns/lib/lang/cz_dns_import.lng +++ b/interface/web/dns/lib/lang/cz_dns_import.lng @@ -12,5 +12,5 @@ $wb['title'] = 'Importovat soubory zón'; $wb['no_file_uploaded_error'] = 'Nelze odeslat DNS zonový soubor'; $wb['zone_file_import_txt'] = 'Importovat DNS zonový soubor'; $wb['error_no_server_id'] = 'No server provided.'; -$wb['error_not_allowed_server_id'] = 'The selected server is not allowed for this account.'; +$wb['error_not_allowed_server_id'] = 'Vybraný server nenà pro tento úÄet povolen.'; ?> diff --git a/interface/web/dns/lib/lang/cz_dns_loc.lng b/interface/web/dns/lib/lang/cz_dns_loc.lng index 90ddd3533b..4ed9018152 100644 --- a/interface/web/dns/lib/lang/cz_dns_loc.lng +++ b/interface/web/dns/lib/lang/cz_dns_loc.lng @@ -6,8 +6,8 @@ $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['limit_dns_record_txt'] = 'Byl dosažen max. 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 DNS.'; $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'; diff --git a/interface/web/dns/lib/lang/cz_dns_soa.lng b/interface/web/dns/lib/lang/cz_dns_soa.lng index 7dfbb0e91b..5e4a0c2bb3 100644 --- a/interface/web/dns/lib/lang/cz_dns_soa.lng +++ b/interface/web/dns/lib/lang/cz_dns_soa.lng @@ -38,7 +38,7 @@ $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'] = 'Podepsat zónu (DNSSEC)'; $wb['dnssec_wanted_info'] = 'Když deaktivujete DNSSEC klÃÄe nebudou odstranÄ›ny, ale DNS záznamy (zóna) již nebudou propagovány v podepsaném formátu. Pokud použÃváte PowerDNS, budou klÃÄe WILL vymazány!'; -$wb['error_not_allowed_server_id'] = 'The selected server is not allowed for this account.'; +$wb['error_not_allowed_server_id'] = 'Vybraný server nenà pro tento úÄet povolen.'; $wb['soa_cannot_be_changed_txt'] = 'Die Zone (SOA) kann nicht verändert werden. Bitte kontaktieren Sie ihren Administrator, um die Zone zu ändern.'; $wb['configuration_error_txt'] = 'CONFIGURATION ERROR'; ?> diff --git a/interface/web/dns/lib/lang/cz_dns_spf.lng b/interface/web/dns/lib/lang/cz_dns_spf.lng index 755e01f11e..3086454c34 100644 --- a/interface/web/dns/lib/lang/cz_dns_spf.lng +++ b/interface/web/dns/lib/lang/cz_dns_spf.lng @@ -19,7 +19,7 @@ $wb['spf_invalid_domain_txt'] = 'Neplatné doménové jméno'; $wb['ttl_txt'] = 'TTL'; $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['limit_dns_record_txt'] = 'Byl dosažen max. 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 DNS.'; $wb['ttl_range_error'] = 'Min. TTL doba je 60 sekund.'; ?> diff --git a/interface/web/dns/lib/lang/cz_dns_tlsa.lng b/interface/web/dns/lib/lang/cz_dns_tlsa.lng index b92da1d45b..3891ad37c7 100644 --- a/interface/web/dns/lib/lang/cz_dns_tlsa.lng +++ b/interface/web/dns/lib/lang/cz_dns_tlsa.lng @@ -6,8 +6,8 @@ $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['limit_dns_record_txt'] = 'Byl dosažen max. 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 DNS.'; $wb['name_error_empty'] = 'Název hostitele je prázdný.'; $wb['name_error_regex'] = 'The hostname has the wrong format. Correct: _<port>._(tcp|udp).<hostname>'; $wb['data_error_empty'] = 'TLSA-Data empty'; diff --git a/interface/web/dns/lib/lang/cz_dns_wizard.lng b/interface/web/dns/lib/lang/cz_dns_wizard.lng index 548b90d702..a4a1ddf539 100644 --- a/interface/web/dns/lib/lang/cz_dns_wizard.lng +++ b/interface/web/dns/lib/lang/cz_dns_wizard.lng @@ -39,7 +39,7 @@ $wb['list_head_txt'] = 'Průvodce vytvoÅ™enÃm DNS zóny'; $wb['list_desc_txt'] = 'VytvoÅ™enà DNS zóny pomocà průvodce'; $wb['dkim_txt'] = 'DKIM povolen'; $wb['error_no_server_id'] = 'No server provided.'; -$wb['error_not_allowed_server_id'] = 'The selected server is not allowed for this account.'; +$wb['error_not_allowed_server_id'] = 'Vybraný server nenà pro tento úÄet povolen.'; $wb['dnssec_txt'] = 'Podepsat zónu (DNSSEC)'; $wb['limit_dns_zone_txt'] = 'The max. number of DNS zones for your account is reached.'; ?> 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 91ea1ad49f..d4f941a4cd 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,16 @@ <?php -$wb['list_head_txt'] = 'StávajÃcà zálohy'; +$wb['list_head_txt'] = 'Dostupné 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['restore_info_txt'] = 'Obnovenà zálohy bylo zahájeno. DokonÄenà této akce může trvat nÄ›kolik minut.'; +$wb['restore_confirm_txt'] = 'Obnovenà může pÅ™epsat existujÃcà soubory ve vaÅ¡Ã poÅ¡tovnà schránce. Opravdu chcete tuto zálohu obnovit ?'; +$wb['download_pending_txt'] = 'Již existuje ÄekajÃcà úloha pro staženà zálohy.'; +$wb['restore_pending_txt'] = 'Již existuje ÄekajÃcà úloha pro obnovu zálohy.'; $wb['delete_backup_txt'] = 'Smazat zálohu'; $wb['delete_info_txt'] = 'Bylo zahájeno odstranÄ›nà zálohy. Tato akce může trvat nÄ›kolik minut než bude dokonÄena.'; $wb['delete_confirm_txt'] = 'Opravdu chcete smazat tuto zálohu ?'; -$wb['delete_pending_txt'] = 'There is already a pending backup delete job.'; +$wb['delete_pending_txt'] = 'Již existuje ÄekajÃcà úloha pro odstranÄ›nà zálohy.'; $wb['filesize_txt'] = 'Velikost souboru'; ?> diff --git a/interface/web/monitor/lib/lang/cz.lng b/interface/web/monitor/lib/lang/cz.lng index 9e054aacf2..be2d9eadbb 100644 --- a/interface/web/monitor/lib/lang/cz.lng +++ b/interface/web/monitor/lib/lang/cz.lng @@ -161,5 +161,5 @@ $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'; -$wb['Show Data Log History'] = 'Show Data Log History'; +$wb['Show Data Log History'] = 'Zobrazit historii datového logu'; ?> diff --git a/interface/web/monitor/lib/lang/cz_dataloghistory_list.lng b/interface/web/monitor/lib/lang/cz_dataloghistory_list.lng index 9f9afd6347..ce89af1a88 100644 --- a/interface/web/monitor/lib/lang/cz_dataloghistory_list.lng +++ b/interface/web/monitor/lib/lang/cz_dataloghistory_list.lng @@ -1,8 +1,8 @@ <?php -$wb["list_head_txt"] = 'Datalog History'; -$wb["tstamp_txt"] = 'Date'; -$wb["server_id_txt"] = 'Server'; -$wb["dbtable_txt"] = 'DB Table'; -$wb["action_txt"] = 'Action'; -$wb["status_txt"] = 'Status'; +$wb['list_head_txt'] = 'Protokol historie datového logu'; +$wb['tstamp_txt'] = 'Datum'; +$wb['server_id_txt'] = 'Server'; +$wb['dbtable_txt'] = 'DB Tabulka'; +$wb['action_txt'] = 'Akce'; +$wb['status_txt'] = 'Stav'; ?> diff --git a/interface/web/monitor/lib/lang/cz_dataloghistory_undo.lng b/interface/web/monitor/lib/lang/cz_dataloghistory_undo.lng index 0e040a3e77..0d25364ec1 100644 --- a/interface/web/monitor/lib/lang/cz_dataloghistory_undo.lng +++ b/interface/web/monitor/lib/lang/cz_dataloghistory_undo.lng @@ -1,7 +1,7 @@ <?php -$wb['list_head_txt'] = 'Data Log History Entry'; +$wb['list_head_txt'] = 'Záznam historie datového logu'; $wb['success_txt'] = 'Undo successful'; $wb['error_txt'] = 'Error during undo: Record does not exist anymore'; $wb['error_undelete_txt'] = 'Error during undelete: Record with primary id already existing.'; -$wb['btn_cancel_txt'] = 'Back'; +$wb['btn_cancel_txt'] = 'ZpÄ›t'; ?> diff --git a/interface/web/monitor/lib/lang/cz_dataloghistory_view.lng b/interface/web/monitor/lib/lang/cz_dataloghistory_view.lng index df9ddd286f..1f20cf12d4 100644 --- a/interface/web/monitor/lib/lang/cz_dataloghistory_view.lng +++ b/interface/web/monitor/lib/lang/cz_dataloghistory_view.lng @@ -1,26 +1,26 @@ <?php -$wb['i'] = 'Insert'; -$wb['u'] = 'Update'; -$wb['d'] = 'Delete'; -$wb['list_head_txt'] = 'Data Log History Entry'; +$wb['i'] = 'Vložit'; +$wb['u'] = 'Aktualizace'; +$wb['d'] = 'Odstranit'; +$wb['list_head_txt'] = 'Záznam historie datového logu'; $wb['id_txt'] = 'ID'; -$wb['timestamp_txt'] = 'Timestamp'; -$wb['table_txt'] = 'Table'; -$wb['action_txt'] = 'Action'; -$wb['session_id_txt'] = 'Session ID'; -$wb['fields_txt'] = 'Fields'; -$wb['fields_inserted_txt'] = 'Inserted Fields'; -$wb['fields_updated_txt'] = 'Updated Fields'; -$wb['fields_deleted_txt'] = 'Deleted Fields'; -$wb['no_changes_txt'] = 'No changes (re-sync)'; +$wb['timestamp_txt'] = 'ÄŒasové razÃtko'; +$wb['table_txt'] = 'Tabulka'; +$wb['action_txt'] = 'Akce'; +$wb['session_id_txt'] = 'ID Relace'; +$wb['fields_txt'] = 'Pole'; +$wb['fields_inserted_txt'] = 'Vložená pole'; +$wb['fields_updated_txt'] = 'Aktualizovaná pole'; +$wb['fields_deleted_txt'] = 'OdstranÄ›ná pole'; +$wb['no_changes_txt'] = 'Žádné zmÄ›ny (re-sync)'; $wb['is_diff_txt'] = 'The differences are highlighted'; -$wb['is_diff_inserts_txt'] = 'Insertions'; -$wb['is_diff_deletes_txt'] = 'Deletions'; -$wb['field_txt'] = 'Field'; -$wb['value_txt'] = 'Value'; -$wb['old_txt'] = 'Old'; -$wb['new_txt'] = 'New'; -$wb['btn_cancel_txt'] = 'Back'; -$wb['undo_txt'] = 'Undo action'; -$wb['undo_confirmation_txt'] = 'Do you really want to undo this action?'; +$wb['is_diff_inserts_txt'] = 'VloženÃ'; +$wb['is_diff_deletes_txt'] = 'OdstranÄ›nÃ'; +$wb['field_txt'] = 'Pole'; +$wb['value_txt'] = 'Hodnota'; +$wb['old_txt'] = 'Starý'; +$wb['new_txt'] = 'Nový'; +$wb['btn_cancel_txt'] = 'ZpÄ›t'; +$wb['undo_txt'] = 'Vrátit akci'; +$wb['undo_confirmation_txt'] = 'Opravdu chcete tuto akci vrátit zpÄ›t ?'; ?> 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 8d712878d7..db4494af02 100644 --- a/interface/web/sites/lib/lang/cz_aps_instances_list.lng +++ b/interface/web/sites/lib/lang/cz_aps_instances_list.lng @@ -3,7 +3,7 @@ $wb['list_head_txt'] = 'Nainstalované balÃÄky'; $wb['name_txt'] = 'Jméno'; $wb['version_txt'] = 'Verze'; $wb['customer_txt'] = 'Klient'; -$wb['status_txt'] = 'Status'; +$wb['status_txt'] = 'Stav'; $wb['install_location_txt'] = 'UmÃstÄ›nà instalace'; $wb['pkg_delete_confirmation'] = 'Opravdu chcete smazat tuto instalaci ?'; $wb['filter_txt'] = 'Hledat'; diff --git a/interface/web/sites/lib/lang/cz_web_aliasdomain.lng b/interface/web/sites/lib/lang/cz_web_aliasdomain.lng index 57b920156d..0f8d3e5dec 100644 --- a/interface/web/sites/lib/lang/cz_web_aliasdomain.lng +++ b/interface/web/sites/lib/lang/cz_web_aliasdomain.lng @@ -95,7 +95,7 @@ $wb['pm_min_spare_servers_error_regex'] = 'PHP-FPM pm.min_spare_servers must be $wb['pm_max_spare_servers_error_regex'] = 'PHP-FPM pm.max_spare_servers must be a positive integer value.'; $wb['hd_quota_error_regex'] = 'Harddisk quota is invalid.'; $wb['traffic_quota_error_regex'] = 'Traffic quota is invalid.'; -$wb['fastcgi_php_version_txt'] = 'PHP Version'; +$wb['fastcgi_php_version_txt'] = 'PHP Verze'; $wb['pm_txt'] = 'PHP-FPM Process Manager'; $wb['pm_process_idle_timeout_txt'] = 'PHP-FPM pm.process_idle_timeout'; $wb['pm_max_requests_txt'] = 'PHP-FPM pm.max_requests'; 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 9674e6197a..d30e41d961 100644 --- a/interface/web/sites/lib/lang/cz_web_backup_list.lng +++ b/interface/web/sites/lib/lang/cz_web_backup_list.lng @@ -1,5 +1,5 @@ <?php -$wb['list_head_txt'] = 'StávajÃcà zálohy'; +$wb['list_head_txt'] = 'Dostupné zálohy'; $wb['date_txt'] = 'Datum'; $wb['backup_type_txt'] = 'Verze'; $wb['filename_txt'] = 'Záloha souborů'; @@ -16,6 +16,6 @@ $wb['filesize_txt'] = 'Velikost souboru'; $wb['delete_backup_txt'] = 'Smazat zálohu'; $wb['delete_info_txt'] = 'Bylo zahájeno odstranÄ›nà zálohy. Tato akce může trvat nÄ›kolik minut než bude dokonÄena.'; $wb['delete_confirm_txt'] = 'Opravdu chcete smazat tuto zálohu ?'; -$wb['delete_pending_txt'] = 'There is already a pending backup delete job.'; +$wb['delete_pending_txt'] = 'Již existuje ÄekajÃcà úloha pro odstranÄ›nà zálohy.'; $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 e39dfc12ee..5a5091c89a 100644 --- a/interface/web/sites/lib/lang/cz_web_childdomain.lng +++ b/interface/web/sites/lib/lang/cz_web_childdomain.lng @@ -100,7 +100,7 @@ $wb['pm_min_spare_servers_error_regex'] = 'PHP-FPM pm.min_spare_servers must be $wb['pm_max_spare_servers_error_regex'] = 'PHP-FPM pm.max_spare_servers must be a positive integer value.'; $wb['hd_quota_error_regex'] = 'Harddisk quota is invalid.'; $wb['traffic_quota_error_regex'] = 'Traffic quota is invalid.'; -$wb['fastcgi_php_version_txt'] = 'PHP Version'; +$wb['fastcgi_php_version_txt'] = 'PHP Verze'; $wb['pm_txt'] = 'PHP-FPM Process Manager'; $wb['pm_process_idle_timeout_txt'] = 'PHP-FPM pm.process_idle_timeout'; $wb['pm_max_requests_txt'] = 'PHP-FPM pm.max_requests'; 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 269b6b5862..deaa3269c4 100644 --- a/interface/web/sites/lib/lang/cz_web_vhost_domain.lng +++ b/interface/web/sites/lib/lang/cz_web_vhost_domain.lng @@ -130,13 +130,13 @@ $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'] = '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['backup_excludes_note_txt'] = '(OddÄ›lte vÃce adresářů Äárkami. PÅ™Ãklad: web/cache/*,web/backup)'; +$wb['backup_excludes_error_regex'] = 'VylouÄené adresáře obsahujà neplatné znaky.'; +$wb['server_chosen_not_ok'] = 'Vybraný server nenà pro tento úÄet povolen.'; +$wb['subdomain_error_empty'] = 'Pole subdomény je prázdné nebo obsahuje neplatné znaky.'; $wb['btn_save_txt'] = 'Uložit'; $wb['btn_cancel_txt'] = 'ZruÅ¡it'; -$wb['enable_spdy_txt'] = 'Enable SPDY/HTTP2'; +$wb['enable_spdy_txt'] = 'Povolit SPDY / HTTP2'; $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'] = 'Obnovit údaje (resetovat)'; 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 2b6f3c77d2..268368c139 100644 --- a/interface/web/sites/lib/lang/cz_web_vhost_subdomain.lng +++ b/interface/web/sites/lib/lang/cz_web_vhost_subdomain.lng @@ -123,7 +123,7 @@ $wb['variables_txt'] = 'PromÄ›nné'; $wb['backup_excludes_txt'] = 'VylouÄené adresáře'; $wb['backup_excludes_note_txt'] = '(OddÄ›lte vÃce adresářů Äárkami. Vzor: web/cache/*,web/backup)'; $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.'; +$wb['subdomain_error_empty'] = 'Pole subdomény je prázdné nebo obsahuje neplatné znaky.'; $wb['http_port_txt'] = 'HTTP Port'; $wb['https_port_txt'] = 'HTTPS Port'; $wb['http_port_error_regex'] = 'HTTP Port invalid.'; -- GitLab From 90f3c771c5b42c904d9b15f15f7dbcce34fe5430 Mon Sep 17 00:00:00 2001 From: Marius Burkard <m.burkard@pixcept.de> Date: Mon, 2 Sep 2019 14:53:34 +0200 Subject: [PATCH 161/215] - fixed rspamd handling of user settings files - removed separate rspamd greylisting setting for policy and respect mail user/alias/forward/catchall setting for greylisting, fixes #5379 --- interface/web/admin/server_config_edit.php | 14 +- .../web/mail/form/spamfilter_policy.tform.php | 6 - interface/web/mail/spamfilter_policy_edit.php | 3 - .../mail/templates/spamfilter_rspamd_edit.htm | 6 - server/conf/rspamd_users.inc.conf.master | 56 +++-- .../plugins-available/rspamd_plugin.inc.php | 237 ++++++++++++------ 6 files changed, 208 insertions(+), 114 deletions(-) diff --git a/interface/web/admin/server_config_edit.php b/interface/web/admin/server_config_edit.php index 8a7cd770a3..f311f6b1a5 100644 --- a/interface/web/admin/server_config_edit.php +++ b/interface/web/admin/server_config_edit.php @@ -174,7 +174,7 @@ class page_action extends tform_actions { } } - $mail_users = $app->db->queryAllRecords("SELECT * FROM mail_user WHERE server_id = ? AND (autoresponder = 'y' OR move_junk = 'y')", intval($this->id)); + $mail_users = $app->db->queryAllRecords("SELECT * FROM mail_user WHERE server_id = ?", intval($this->id)); if(is_array($mail_users) && !empty($mail_users)){ foreach($mail_users as $mail_user){ if($mail_user['autoresponder'] == 'y'){ @@ -182,13 +182,21 @@ class page_action extends tform_actions { $app->db->datalogUpdate('mail_user', $mail_user, 'mailuser_id', $mail_user["mailuser_id"], true); $mail_user['autoresponder'] = 'y'; $app->db->datalogUpdate('mail_user', $mail_user, 'mailuser_id', $mail_user["mailuser_id"], true); - } else { + } elseif($mail_user['move_junk'] == 'y') { $mail_user['move_junk'] = 'n'; $app->db->datalogUpdate('mail_user', $mail_user, 'mailuser_id', $mail_user["mailuser_id"], true); $mail_user['move_junk'] = 'y'; $app->db->datalogUpdate('mail_user', $mail_user, 'mailuser_id', $mail_user["mailuser_id"], true); + } else { + $app->db->datalogUpdate('mail_user', $mail_user, 'mailuser_id', $mail_user["mailuser_id"], true); } - + } + } + + $mail_forwards = $app->db->queryAllRecords("SELECT * FROM mail_forwarding WHERE server_id = ?", intval($this->id)); + if(is_array($mail_forwards) && !empty($mail_forwards)){ + foreach($mail_forwards as $mail_forward){ + $app->db->datalogUpdate('mail_forwarding', $mail_forward, 'forwarding_id', $mail_forward["forwarding_id"], true); } } } diff --git a/interface/web/mail/form/spamfilter_policy.tform.php b/interface/web/mail/form/spamfilter_policy.tform.php index 2205dbb651..57aa4f2bf5 100644 --- a/interface/web/mail/form/spamfilter_policy.tform.php +++ b/interface/web/mail/form/spamfilter_policy.tform.php @@ -471,12 +471,6 @@ $form["tabs"]['rspamd'] = array ( //################################# // Begin Datatable fields //################################# - 'rspamd_greylisting' => array ( - 'datatype' => 'VARCHAR', - 'formtype' => 'CHECKBOX', - 'default' => 'y', - 'value' => array(0 => 'n', 1 => 'y') - ), 'rspamd_spam_greylisting_level' => array ( 'datatype' => 'DOUBLE', 'formtype' => 'TEXT', diff --git a/interface/web/mail/spamfilter_policy_edit.php b/interface/web/mail/spamfilter_policy_edit.php index ffc0818ffa..8226ae6048 100644 --- a/interface/web/mail/spamfilter_policy_edit.php +++ b/interface/web/mail/spamfilter_policy_edit.php @@ -92,9 +92,6 @@ class page_action extends tform_actions { global $app; $record_has_changed = false; - if(isset($this->dataRecord['rspamd_spam_greylisting_level']) && !isset($this->dataRecord['rspamd_greylisting'])) { - $this->dataRecord['rspamd_greylisting'] = 'n'; - } foreach($this->dataRecord as $key => $val) { if(isset($this->oldDataRecord[$key]) && @$this->oldDataRecord[$key] != $val) { // Record has changed diff --git a/interface/web/mail/templates/spamfilter_rspamd_edit.htm b/interface/web/mail/templates/spamfilter_rspamd_edit.htm index 73472a876c..2f8ea0f451 100644 --- a/interface/web/mail/templates/spamfilter_rspamd_edit.htm +++ b/interface/web/mail/templates/spamfilter_rspamd_edit.htm @@ -3,12 +3,6 @@ </div> <p><tmpl_var name="list_desc_txt"></p> - <div class="form-group"> - <label class="col-sm-3 control-label">{tmpl_var name='rspamd_greylisting_txt'}</label> - <div class="col-sm-9"> - {tmpl_var name='rspamd_greylisting'} - </div> - </div> <div class="form-group"> <label for="rspamd_spam_greylisting_level" class="col-sm-3 control-label">{tmpl_var name='rspamd_spam_greylisting_level_txt'}</label> <div class="col-sm-9"><input type="text" name="rspamd_spam_greylisting_level" id="rspamd_spam_greylisting_level" value="{tmpl_var name='rspamd_spam_greylisting_level'}" class="form-control" /></div> diff --git a/server/conf/rspamd_users.inc.conf.master b/server/conf/rspamd_users.inc.conf.master index 43890e8135..96ba9f0838 100644 --- a/server/conf/rspamd_users.inc.conf.master +++ b/server/conf/rspamd_users.inc.conf.master @@ -1,39 +1,55 @@ -spamfilter_users-<tmpl_var name='record_id'> { +<tmpl_var name='record_identifier'> { priority = <tmpl_var name='priority'>; - <tmpl_if name='local' op='==' value='Y'>rcpt<tmpl_else>from</tmpl_if> = "<tmpl_var name='email'>"; -<tmpl_if name='spam_lover_virus_lover' op='==' value='spam_lover_AND_virus_lover'> - want_spam = yes; +<tmpl_if name='from_email'> + from = "<tmpl_var name='from_email'>"; +</tmpl_if> +<tmpl_if name='to_email'> + rcpt = "<tmpl_var name='to_email'>"; </tmpl_if> -<tmpl_if name='spam_lover_virus_lover' op='==' value='spam_lover_AND_NOTvirus_lover'> + +<tmpl_if name='spam_lover'> +<tmpl_if name='virus_lover'> + want_spam = yes; +<tmpl_else> apply { CLAM_VIRUS = 1999.0; JUST_EICAR = 1999.0; actions { reject = null; + <tmpl_if name='greylisting'> + <tmpl_if name='greylisting' op='==' value='y'> + greylist = <tmpl_var name='greylisting_level'>; + <tmpl_else> + greylist = null; + </tmpl_if> + </tmpl_if> } } -</tmpl_if> -<tmpl_if name='spam_lover_virus_lover' op='==' value='NOTspam_lover_AND_virus_lover'> + </tmpl_if> +<tmpl_else> apply { + <tmpl_if name='virus_lover'> CLAM_VIRUS = -999.0; JUST_EICAR = -999.0; - actions { - <tmpl_if name='rspamd_greylisting' op='==' value='y'>greylist = <tmpl_var name='rspamd_spam_greylisting_level'>;</tmpl_if> - <tmpl_if name='rspamd_spam_tag_method' op='==' value='rewrite_subject'>"rewrite subject" = <tmpl_var name='rspamd_spam_tag_level'>;</tmpl_if> - <tmpl_if name='rspamd_spam_tag_method' op='==' value='add_header'>"add header" = <tmpl_var name='rspamd_spam_tag_level'>;</tmpl_if> - reject = <tmpl_var name='rspamd_spam_kill_level'>; - } - } -</tmpl_if> -<tmpl_if name='spam_lover_virus_lover' op='==' value='NOTspam_lover_AND_NOTvirus_lover'> - apply { + <tmpl_else> CLAM_VIRUS = <tmpl_var name='rspamd_virus_kill_level'>; JUST_EICAR = <tmpl_var name='rspamd_virus_kill_level'>; + </tmpl_if> actions { - <tmpl_if name='rspamd_greylisting' op='==' value='y'>greylist = <tmpl_var name='rspamd_spam_greylisting_level'>;</tmpl_if> - <tmpl_if name='rspamd_spam_tag_method' op='==' value='rewrite_subject'>"rewrite subject" = <tmpl_var name='rspamd_spam_tag_level'>;</tmpl_if> - <tmpl_if name='rspamd_spam_tag_method' op='==' value='add_header'>"add header" = <tmpl_var name='rspamd_spam_tag_level'>;</tmpl_if> + <tmpl_if name='rspamd_spam_tag_method' op='==' value='rewrite_subject'> + "rewrite subject" = <tmpl_var name='rspamd_spam_tag_level'>; + </tmpl_if> + <tmpl_if name='rspamd_spam_tag_method' op='==' value='add_header'> + "add header" = <tmpl_var name='rspamd_spam_tag_level'>; + </tmpl_if> reject = <tmpl_var name='rspamd_spam_kill_level'>; + <tmpl_if name='greylisting'> + <tmpl_if name='greylisting' op='==' value='y'> + greylist = <tmpl_var name='greylisting_level'>; + <tmpl_else> + greylist = null; + </tmpl_if> + </tmpl_if> } } </tmpl_if> diff --git a/server/plugins-available/rspamd_plugin.inc.php b/server/plugins-available/rspamd_plugin.inc.php index 7fd3ebf773..70885056d7 100644 --- a/server/plugins-available/rspamd_plugin.inc.php +++ b/server/plugins-available/rspamd_plugin.inc.php @@ -33,7 +33,7 @@ class rspamd_plugin { var $plugin_name = 'rspamd_plugin'; var $class_name = 'rspamd_plugin'; var $users_config_dir = '/etc/rspamd/local.d/users/'; - + //* This function is called during ispconfig installation to determine // if a symlink shall be created for this plugin. function onInstall() { @@ -57,109 +57,195 @@ class rspamd_plugin { Register for the events */ - //* spamfilter_users - $app->plugins->registerEvent('spamfilter_users_insert', $this->plugin_name, 'spamfilter_users_insert'); - $app->plugins->registerEvent('spamfilter_users_update', $this->plugin_name, 'spamfilter_users_update'); - $app->plugins->registerEvent('spamfilter_users_delete', $this->plugin_name, 'spamfilter_users_delete'); - //* spamfilter_wblist $app->plugins->registerEvent('spamfilter_wblist_insert', $this->plugin_name, 'spamfilter_wblist_insert'); $app->plugins->registerEvent('spamfilter_wblist_update', $this->plugin_name, 'spamfilter_wblist_update'); $app->plugins->registerEvent('spamfilter_wblist_delete', $this->plugin_name, 'spamfilter_wblist_delete'); + //* global mail access filters + $app->plugins->registerEvent('mail_access_insert', $this->plugin_name, 'spamfilter_wblist_insert'); + $app->plugins->registerEvent('mail_access_update', $this->plugin_name, 'spamfilter_wblist_update'); + $app->plugins->registerEvent('mail_access_delete', $this->plugin_name, 'spamfilter_wblist_delete'); + //* server ip $app->plugins->registerEvent('server_ip_insert', $this->plugin_name, 'server_ip'); $app->plugins->registerEvent('server_ip_update', $this->plugin_name, 'server_ip'); $app->plugins->registerEvent('server_ip_delete', $this->plugin_name, 'server_ip'); - //* global mail access filters - $app->plugins->registerEvent('mail_access_insert', $this->plugin_name, 'spamfilter_wblist_insert'); - $app->plugins->registerEvent('mail_access_update', $this->plugin_name, 'spamfilter_wblist_update'); - $app->plugins->registerEvent('mail_access_delete', $this->plugin_name, 'spamfilter_wblist_delete'); - } + //* spamfilter_users + $app->plugins->registerEvent('spamfilter_users_insert', $this->plugin_name, 'user_settings_update'); + $app->plugins->registerEvent('spamfilter_users_update', $this->plugin_name, 'user_settings_update'); + $app->plugins->registerEvent('spamfilter_users_delete', $this->plugin_name, 'user_settings_update'); - function spamfilter_users_insert($event_name, $data) { - $this->action = 'insert'; - // just run the spamfilter_users_update function - $this->spamfilter_users_update($event_name, $data); + //* mail user / fwd / catchall changed (greylisting) + $app->plugins->registerEvent('mail_user_insert', $this->plugin_name, 'user_settings_update'); + $app->plugins->registerEvent('mail_user_update', $this->plugin_name, 'user_settings_update'); + $app->plugins->registerEvent('mail_user_delete', $this->plugin_name, 'user_settings_update'); + $app->plugins->registerEvent('mail_forwarding_insert', $this->plugin_name, 'user_settings_update'); + $app->plugins->registerEvent('mail_forwarding_update', $this->plugin_name, 'user_settings_update'); + $app->plugins->registerEvent('mail_forwarding_delete', $this->plugin_name, 'user_settings_update'); } - function spamfilter_users_update($event_name, $data) { + function user_settings_update($event_name, $data) { global $app, $conf; + + if(!is_dir('/etc/rspamd')) { + return; + } + + $use_data = 'new'; + if(substr($event_name, -7) === 'delete') { + $mode = 'delete'; + $use_data = 'old'; + } elseif(substr($event_name, -7) === 'insert') { + $mode = 'insert'; + } else { + $mode = 'update'; + } // get the config $app->uses('getconf,system,functions'); $mail_config = $app->getconf->get_server_config($conf['server_id'], 'mail'); - - if(is_dir('/etc/rspamd')) { - $policy = $app->db->queryOneRecord("SELECT * FROM spamfilter_policy WHERE id = ?", intval($data['new']['policy_id'])); - - //* Create the config file - $user_file = $this->users_config_dir.'spamfilter_user_'.intval($data['new']['id']).'.conf'; - if(is_array($policy) && !empty($policy)){ - if(!is_dir($this->users_config_dir)){ - $app->system->mkdirpath($this->users_config_dir); - } + $type = false; + $identifier = false; + $entry_id = false; + if(substr($event_name, 0, 17) === 'spamfilter_users_') { + $identifier = 'email'; + $type = 'spamfilter_user'; + $entry_id = $data[$use_data]['id']; + } elseif(substr($event_name, 0, 16) === 'mail_forwarding_') { + $identifier = 'source'; + $type = 'mail_forwarding'; + $entry_id = $data[$use_data]['forwarding_id']; + } elseif(substr($event_name, 0, 10) === 'mail_user_') { + $identifier = 'email'; + $type = 'mail_user'; + $entry_id = $data[$use_data]['mailuser_id']; + } else { + // invalid event + $app->log('Invalid event name for rspamd_plugin: ' . $event_name, LOGLEVEL_WARN); + return; + } - $app->load('tpl'); - - $tpl = new tpl(); - $tpl->newTemplate('rspamd_users.inc.conf.master'); - $tpl->setVar('record_id', intval($data['new']['id'])); - $tpl->setVar('priority', intval($data['new']['priority'])); - $tpl->setVar('email', $app->functions->idn_encode($data['new']['email'])); - $tpl->setVar('local', $data['new']['local']); - - $tpl->setVar('rspamd_greylisting', $policy['rspamd_greylisting']); - $tpl->setVar('rspamd_spam_greylisting_level', floatval($policy['rspamd_spam_greylisting_level'])); - - $tpl->setVar('rspamd_spam_tag_level', floatval($policy['rspamd_spam_tag_level'])); - $tpl->setVar('rspamd_spam_tag_method', $policy['rspamd_spam_tag_method']); - - $tpl->setVar('rspamd_spam_kill_level', floatval($policy['rspamd_spam_kill_level'])); - $tpl->setVar('rspamd_virus_kill_level', floatval($policy['rspamd_spam_kill_level']) + 1000); + $is_domain = false; + $email_address = $data[$use_data][$identifier]; + $settings_name = $email_address; + if(!$email_address) { + // problem reading identifier + $app->log('Empty email address in rspamd_plugin from identifier: ' . $use_data . '/' . $identifier, LOGLEVEL_WARN); + return; + } elseif(substr($email_address, 0, 1) === '@') { + $settings_name = substr($email_address, 1); + $is_domain = true; + } elseif(strpos($email_address, '@') === false) { + $email_address = '@' . $email_address; + $is_domain = true; + } + + if($settings_name == '') { + // missing settings file name + $app->log('Empty email address in rspamd_plugin from identifier: ' . $use_data . '/' . $identifier, LOGLEVEL_WARN); + return; + } + + $settings_file = $this->users_config_dir . str_replace('@', '_', $settings_name) . '.conf'; + $app->log('Settings file for rspamd is ' . $settings_file, LOGLEVEL_WARN); + if($mode === 'delete') { + if(is_file($settings_file)) { + unlink($settings_file); + } + } else { + $settings_priority = 20; + if(isset($data[$use_data]['priority'])) { + $settings_priority = intval($data[$use_data]['priority']); + } elseif($is_domain === true) { + $settings_priority = 18; + } + + // get policy for entry + if($type === 'spamfilter_user') { + $policy = $app->db->queryOneRecord("SELECT * FROM spamfilter_policy WHERE id = ?", intval($data['new']['policy_id'])); - $spam_lover_virus_lover = ''; - if($policy['spam_lover'] == 'Y' && $policy['virus_lover'] == 'Y') $spam_lover_virus_lover = 'spam_lover_AND_virus_lover'; - if($policy['spam_lover'] == 'Y' && $policy['virus_lover'] != 'Y') $spam_lover_virus_lover = 'spam_lover_AND_NOTvirus_lover'; - if($policy['spam_lover'] != 'Y' && $policy['virus_lover'] == 'Y') $spam_lover_virus_lover = 'NOTspam_lover_AND_virus_lover'; - if($policy['spam_lover'] != 'Y' && $policy['virus_lover'] != 'Y') $spam_lover_virus_lover = 'NOTspam_lover_AND_NOTvirus_lover'; + $check = $app->db->queryOneRecord('SELECT `greylisting` FROM `mail_user` WHERE `server_id` = ? AND `email` = ? UNION SELECT `greylisting` FROM `mail_forwarding` WHERE `server_id` = ? AND `source` = ? ORDER BY (`greylisting` = ?) DESC', $conf['server_id'], $email_address, $conf['server_id'], $email_address, 'y'); + if($check) { + $greylisting = $check['greylisting']; + } else { + $greylisting = 'n'; + } + } else { + $search_for_policy[] = $email_address; + $search_for_policy[] = substr($email_address, strpos($email_address, '@')); - $tpl->setVar('spam_lover_virus_lover', $spam_lover_virus_lover); + $policy = $app->db->queryOneRecord("SELECT p.* FROM spamfilter_users as u INNER JOIN spamfilter_policy as p ON (p.id = u.policy_id) WHERE u.server_id = AND u.email IN ? ORDER BY u.priority DESC", $conf['server_id'], $search_for_policy); - //$groups_disabled = array(); - //if($policy['virus_lover'] == 'Y') $groups_disabled[] = ''; - - $app->system->file_put_contents($user_file, $tpl->grab()); - } else { - if(is_file($user_file)) { - unlink($user_file); + $greylisting = $data[$use_data]['greylisting']; + } + + if(!is_dir($this->users_config_dir)){ + $app->system->mkdirpath($this->users_config_dir); + } + + $app->load('tpl'); + + $tpl = new tpl(); + $tpl->newTemplate('rspamd_users.inc.conf.master'); + + $tpl->setVar('record_identifier', 'ispc_' . $type . '_' . $entry_id); + $tpl->setVar('priority', $settings_priority); + + if($type === 'spamfilter_user') { + if($data[$use_data]['local'] === 'Y') { + $tpl->setVar('to_email', $app->functions->idn_encode($email_address)); + } else { + $tpl->setVar('from_email', $app->functions->idn_encode($email_address)); } + $spamfilter = $data[$use_data]; + } else { + $tpl->setVar('to_email', $app->functions->idn_encode($email_address)); + + // need to get matching spamfilter user if any + $spamfilter = $app->db->queryOneRecord('SELECT * FROM spamfilter_users WHERE `email` = ?', $email_address); } - if($mail_config['content_filter'] == 'rspamd'){ - if(is_file('/etc/init.d/rspamd')) $app->services->restartServiceDelayed('rspamd', 'reload'); + if(!isset($policy['rspamd_spam_tag_level'])) { + $policy['rspamd_spam_tag_level'] = 6.0; } - } - } - - function spamfilter_users_delete($event_name, $data) { - global $app, $conf; + if(!isset($policy['rspamd_spam_tag_method'])) { + $policy['rspamd_spam_tag_method'] = 'add_header'; + } + if(!isset($policy['rspamd_spam_kill_level'])) { + $policy['rspamd_spam_kill_level'] = 15.0; + } + if(!isset($policy['rspamd_virus_kill_level'])) { + $policy['rspamd_virus_kill_level'] = floatval($policy['rspamd_spam_kill_level']) + 1000; + } + + $tpl->setVar('rspamd_spam_tag_level', floatval($policy['rspamd_spam_tag_level'])); + $tpl->setVar('rspamd_spam_tag_method', floatval($policy['rspamd_spam_tag_method'])); + $tpl->setVar('rspamd_spam_kill_level', floatval($policy['rspamd_spam_kill_level'])); + $tpl->setVar('rspamd_virus_kill_level', floatval($policy['rspamd_spam_kill_level']) + 1000); + + if(isset($policy['spam_lover']) && $policy['spam_lover'] == 'Y') { + $tpl->setVar('spam_lover', true); + } + if(isset($policy['virus_lover']) && $policy['virus_lover'] == 'Y') { + $tpl->setVar('virus_lover', true); + } + + $tpl->setVar('greylisting', $greylisting); - // get the config - $app->uses('getconf'); - $mail_config = $app->getconf->get_server_config($conf['server_id'], 'mail'); + if(isset($policy['rspamd_spam_greylisting_level'])) { + $tpl->setVar('greylisting_level', floatval($policy['rspamd_spam_greylisting_level'])); + } else { + $tpl->setVar('greylisting_level', 0.1); + } - if(is_dir('/etc/rspamd')) { - //* delete the config file - $user_file = $this->users_config_dir.'spamfilter_user_'.intval($data['old']['id']).'.conf'; - if(is_file($user_file)) unlink($user_file); - + $app->system->file_put_contents($settings_file, $tpl->grab()); } - - if($mail_config['content_filter'] == 'rspamd') { - if(is_file('/etc/init.d/rspamd')) $app->services->restartServiceDelayed('rspamd', 'reload'); + + if($mail_config['content_filter'] == 'rspamd'){ + $app->services->restartServiceDelayed('rspamd', 'reload'); } } @@ -234,7 +320,7 @@ class rspamd_plugin { $tpl->setVar('list_scope', ($global_filter ? 'global' : 'spamfilter')); $tpl->setVar('record_id', $record_id); // we need to add 10 to priority to avoid mailbox/domain spamfilter settings overriding white/blacklists - $tpl->setVar('priority', intval($data['new']['priority']) + ($global_filter ? 20 : 10)); + $tpl->setVar('priority', intval($data['new']['priority']) + ($global_filter ? 10 : 20)); $tpl->setVar('from', $filter_from); $tpl->setVar('recipient', $filter_rcpt); $tpl->setVar('hostname', $filter['hostname']); @@ -315,5 +401,4 @@ class rspamd_plugin { return false; } } - } // end class -- GitLab From fbbedfa302b51e1e475197be586a16d37c52a474 Mon Sep 17 00:00:00 2001 From: Marius Burkard <m.burkard@pixcept.de> Date: Mon, 2 Sep 2019 14:59:21 +0200 Subject: [PATCH 162/215] - added german text for rspamd policy change --- interface/web/mail/lib/lang/de_spamfilter_policy.lng | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/interface/web/mail/lib/lang/de_spamfilter_policy.lng b/interface/web/mail/lib/lang/de_spamfilter_policy.lng index 04b8274478..1efbcb6afc 100644 --- a/interface/web/mail/lib/lang/de_spamfilter_policy.lng +++ b/interface/web/mail/lib/lang/de_spamfilter_policy.lng @@ -42,3 +42,10 @@ $wb['rspamd_spam_tag_method_txt'] = 'SPAM-Markierungsmethode'; $wb['rspamd_spam_kill_level_txt'] = 'SPAM-Reject-Level'; $wb['btn_save_txt'] = 'Speichern'; $wb['btn_cancel_txt'] = 'Abbrechen'; + +$wb['amavis_settings_txt'] = 'Einstellungen'; +$wb['amavis_taglevel_txt'] = 'Tag-Level'; +$wb['amavis_quarantine_txt'] = 'Quarantäne'; +$wb['amavis_other_txt'] = 'Sonstiges'; +$wb['add_header_txt'] = 'Header hinzufügen'; +$wb['rewrite_subject_txt'] = 'Betreff ändern'; \ No newline at end of file -- GitLab From e470fde84a904409aa7912bedcf424d6467d9e0f Mon Sep 17 00:00:00 2001 From: Marius Burkard <m.burkard@pixcept.de> Date: Mon, 2 Sep 2019 15:06:44 +0200 Subject: [PATCH 163/215] Remote API: monitor_jobqueue_count returning wrong count in multiserver setup, fixes #5382 --- interface/lib/classes/remote.d/monitor.inc.php | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/interface/lib/classes/remote.d/monitor.inc.php b/interface/lib/classes/remote.d/monitor.inc.php index d3689b94ca..3df681f9ba 100644 --- a/interface/lib/classes/remote.d/monitor.inc.php +++ b/interface/lib/classes/remote.d/monitor.inc.php @@ -39,7 +39,6 @@ class remoting_monitor extends remoting { if(!$this->checkPerm($session_id, 'monitor_jobqueue_count')) { throw new SoapFault('permission_denied', 'You do not have the permissions to access this function.'); - return false; } $server_id = intval($server_id); @@ -48,7 +47,7 @@ class remoting_monitor extends remoting { $servers = $app->db->queryAllRecords("SELECT server_id, updated FROM server"); $sql = 'SELECT count(datalog_id) as jobqueue_count FROM sys_datalog WHERE '; foreach($servers as $sv) { - $sql .= " (datalog_id > ".$sv['updated']." AND server_id = ".$sv['server_id'].") OR "; + $sql .= " (datalog_id > ".$sv['updated']." AND server_id IN (0,".$sv['server_id'].")) OR "; } $sql = substr($sql, 0, -4); $tmp = $app->db->queryOneRecord($sql); @@ -56,7 +55,7 @@ class remoting_monitor extends remoting { } else { $server = $app->db->queryOneRecord("SELECT updated FROM server WHERE server_id = ?",$server_id); - $tmp = $app->db->queryOneRecord('SELECT count(datalog_id) as jobqueue_count FROM sys_datalog WHERE datalog_id > ?',$server['updated']); + $tmp = $app->db->queryOneRecord('SELECT count(datalog_id) as jobqueue_count FROM sys_datalog WHERE datalog_id > ? AND server_id IN ?',$server['updated'], array(0, $server_id)); return $tmp['jobqueue_count']; } } -- GitLab From 0fce8c16f197599d3ec33f54494b00d085f8e4ae Mon Sep 17 00:00:00 2001 From: Till Brehm <tbrehm@ispconfig.org> Date: Mon, 2 Sep 2019 15:25:21 +0200 Subject: [PATCH 164/215] Fixed #5351 Remote API function dns_templatezone_add issue Added test script for dns_templatezone_add remote API function --- interface/lib/classes/remote.d/aps.inc.php | 3 ++ interface/lib/classes/remote.d/dns.inc.php | 4 +- .../examples/dns_templatezone_add.php | 50 +++++++++++++++++++ 3 files changed, 56 insertions(+), 1 deletion(-) create mode 100644 remoting_client/examples/dns_templatezone_add.php diff --git a/interface/lib/classes/remote.d/aps.inc.php b/interface/lib/classes/remote.d/aps.inc.php index 50dda48255..4cca7fb8b6 100644 --- a/interface/lib/classes/remote.d/aps.inc.php +++ b/interface/lib/classes/remote.d/aps.inc.php @@ -238,6 +238,9 @@ class remoting_aps extends remoting { throw new SoapFault('permission_denied', 'You do not have the permissions to access this function.'); return false; } + + $app->uses('remoting_lib'); + $app->remoting_lib->loadUserProfile(0); $app->load('aps_guicontroller'); $gui = new ApsGUIController($app); diff --git a/interface/lib/classes/remote.d/dns.inc.php b/interface/lib/classes/remote.d/dns.inc.php index 7e0b230d7f..434af6a983 100644 --- a/interface/lib/classes/remote.d/dns.inc.php +++ b/interface/lib/classes/remote.d/dns.inc.php @@ -56,7 +56,9 @@ class remoting_dns extends remoting { $tform_def_file = "../../web/dns/form/dns_soa.tform.php"; $app->uses('tform'); $app->tform->loadFormDef($tform_def_file); - $app->uses('tpl,validate_dns'); + $app->uses('tpl,validate_dns,remoting_lib'); + + $app->remoting_lib->loadUserProfile($client_id); //* replace template placeholders $tpl_content = $template_record['template']; diff --git a/remoting_client/examples/dns_templatezone_add.php b/remoting_client/examples/dns_templatezone_add.php new file mode 100644 index 0000000000..aedfc61f5d --- /dev/null +++ b/remoting_client/examples/dns_templatezone_add.php @@ -0,0 +1,50 @@ +<?php + +require 'soap_config.php'; + +// Disable SSL verification for this test script +$context = stream_context_create([ + 'ssl' => [ + // set some SSL/TLS specific options + 'verify_peer' => false, + 'verify_peer_name' => false, + 'allow_self_signed' => true + ] +]); + +$client = new SoapClient(null, array('location' => $soap_location, + 'uri' => $soap_uri, + 'trace' => 1, + 'exceptions' => 1, + 'stream_context' => $context)); + + +try { + if($session_id = $client->login($username, $password)) { + echo 'Logged successfull. Session ID:'.$session_id.'<br />'; + } + + //* Set the function parameters. + $client_id = 1; + $template_id = 1; + $domain = 'test.tld'; + $ip = '192.168.0.100'; + $ns1 = 'ns1.testhoster.tld'; + $ns2 = 'ns2.testhoster.tld'; + $email = 'email.test.tld'; + + $id = $client->dns_templatezone_add($session_id, $client_id, $template_id, $domain, $ip, $ns1, $ns2, $email); + + echo "ID: ".$id."<br>"; + + if($client->logout($session_id)) { + echo 'Logged out.<br />'; + } + + +} catch (SoapFault $e) { + echo $client->__getLastResponse(); + die('SOAP Error: '.$e->getMessage()); +} + +?> \ No newline at end of file -- GitLab From 724b7e4f7f0a8c9377b2ff250ae46c86b3a892d6 Mon Sep 17 00:00:00 2001 From: Till Brehm <tbrehm@ispconfig.org> Date: Mon, 2 Sep 2019 15:44:43 +0200 Subject: [PATCH 165/215] Fixed #5348 Virtual server config panel showing without active VServer --- interface/web/dashboard/dashlets/modules.php | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/interface/web/dashboard/dashlets/modules.php b/interface/web/dashboard/dashlets/modules.php index 5c1f15149d..f5f96a82ac 100644 --- a/interface/web/dashboard/dashlets/modules.php +++ b/interface/web/dashboard/dashlets/modules.php @@ -40,6 +40,11 @@ class dashlet_modules { $web_servers = $app->db->queryOneRecord("SELECT COUNT(*) as cnt FROM server WHERE web_server = 1 AND active = 1"); if($web_servers['cnt'] == 0) continue; } + + if($mt == 'vm'){ + $vserver_servers = $app->db->queryOneRecord("SELECT COUNT(*) as cnt FROM server WHERE vserver_server = 1 AND active = 1"); + if($vserver_servers['cnt'] == 0) continue; + } $module_title = $app->lng($module['title']); if(function_exists('mb_strlen')) { -- GitLab From efda2243d899e9a4c4f9e383d3e2df13efa29271 Mon Sep 17 00:00:00 2001 From: Till Brehm <tbrehm@ispconfig.org> Date: Mon, 2 Sep 2019 16:01:58 +0200 Subject: [PATCH 166/215] Fixed ISPConfig server log warning: Unable to add a delayed restart for 'postfix'. Service not registered. --- server/mods-available/mail_module.inc.php | 17 +++++++++++++++++ 1 file changed, 17 insertions(+) diff --git a/server/mods-available/mail_module.inc.php b/server/mods-available/mail_module.inc.php index 14cbbb24e4..e13839d344 100644 --- a/server/mods-available/mail_module.inc.php +++ b/server/mods-available/mail_module.inc.php @@ -113,6 +113,7 @@ class mail_module { $app->modules->registerTableHook('spamfilter_wblist', 'mail_module', 'process'); $app->services->registerService('rspamd', 'mail_module', 'restartRspamd'); + $app->services->registerService('postfix', 'mail_module', 'restartPostfix'); } /* @@ -192,6 +193,22 @@ class mail_module { } return $retval; } + + function restartPostfix($action = 'reload') { + global $app; + + $app->uses('system'); + + $daemon = 'postfix'; + + $retval = array('output' => '', 'retval' => 0); + if($action == 'restart') { + exec($app->system->getinitcommand($daemon, 'restart').' 2>&1', $retval['output'], $retval['retval']); + } else { + exec($app->system->getinitcommand($daemon, 'reload').' 2>&1', $retval['output'], $retval['retval']); + } + return $retval; + } } // end class ?> -- GitLab From 65be9518b8f704479010e1cd65c8d5552f98ed4c Mon Sep 17 00:00:00 2001 From: Till Brehm <tbrehm@ispconfig.org> Date: Mon, 2 Sep 2019 16:10:43 +0200 Subject: [PATCH 167/215] Fixed PHP Warning: Undefined property wb of class app in /usr/local/ispconfig/interface/lib/app.inc.php on line 81 --- interface/lib/app.inc.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/interface/lib/app.inc.php b/interface/lib/app.inc.php index 11bd024398..e341a57943 100755 --- a/interface/lib/app.inc.php +++ b/interface/lib/app.inc.php @@ -248,7 +248,7 @@ class app { } $this->_language_inc = 1; } - if(isset($this->_wb[$text]) && $this->wb[$text] !== '') { + if(isset($this->_wb[$text]) && $this->_wb[$text] !== '') { $text = $this->_wb[$text]; } else { if($this->_conf['debug_language']) { -- GitLab From 7d72427c9d61e0b78d2869da75c8aa469a36c57a Mon Sep 17 00:00:00 2001 From: Till Brehm <tbrehm@ispconfig.org> Date: Mon, 2 Sep 2019 16:28:03 +0200 Subject: [PATCH 168/215] Fixed html glitch behind active checkbox in dmarc edit form. --- interface/web/dns/templates/dns_dmarc_edit.htm | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/interface/web/dns/templates/dns_dmarc_edit.htm b/interface/web/dns/templates/dns_dmarc_edit.htm index 630c18559b..4b7646a398 100644 --- a/interface/web/dns/templates/dns_dmarc_edit.htm +++ b/interface/web/dns/templates/dns_dmarc_edit.htm @@ -147,7 +147,7 @@ <div class="form-group"> <label class="col-sm-2 control-label">{tmpl_var name='active_txt'}</label> <div class="col-sm-3"> - <input type="checkbox" value="1" id="active" name="active" {tmpl_var name='active'} /> + {tmpl_var name='active'} </div> </div> -- GitLab From 2eede67205b7b51988f1540c3b7c999b42ee02e6 Mon Sep 17 00:00:00 2001 From: Marius Burkard <m.burkard@pixcept.de> Date: Tue, 3 Sep 2019 10:32:05 +0200 Subject: [PATCH 169/215] - fixed invalid sql query on rspamd plugin --- server/plugins-available/rspamd_plugin.inc.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/server/plugins-available/rspamd_plugin.inc.php b/server/plugins-available/rspamd_plugin.inc.php index 70885056d7..17a14ce42e 100644 --- a/server/plugins-available/rspamd_plugin.inc.php +++ b/server/plugins-available/rspamd_plugin.inc.php @@ -177,7 +177,7 @@ class rspamd_plugin { $search_for_policy[] = $email_address; $search_for_policy[] = substr($email_address, strpos($email_address, '@')); - $policy = $app->db->queryOneRecord("SELECT p.* FROM spamfilter_users as u INNER JOIN spamfilter_policy as p ON (p.id = u.policy_id) WHERE u.server_id = AND u.email IN ? ORDER BY u.priority DESC", $conf['server_id'], $search_for_policy); + $policy = $app->db->queryOneRecord("SELECT p.* FROM spamfilter_users as u INNER JOIN spamfilter_policy as p ON (p.id = u.policy_id) WHERE u.server_id = ? AND u.email IN ? ORDER BY u.priority DESC", $conf['server_id'], $search_for_policy); $greylisting = $data[$use_data]['greylisting']; } -- GitLab From 44b6fa2337b35149a9b5cd80ff4790c311c5e471 Mon Sep 17 00:00:00 2001 From: Marius Burkard <m.burkard@pixcept.de> Date: Tue, 3 Sep 2019 10:39:35 +0200 Subject: [PATCH 170/215] - removed debug message from rspamd plugin --- server/plugins-available/rspamd_plugin.inc.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/server/plugins-available/rspamd_plugin.inc.php b/server/plugins-available/rspamd_plugin.inc.php index 17a14ce42e..49eb87165e 100644 --- a/server/plugins-available/rspamd_plugin.inc.php +++ b/server/plugins-available/rspamd_plugin.inc.php @@ -150,7 +150,7 @@ class rspamd_plugin { } $settings_file = $this->users_config_dir . str_replace('@', '_', $settings_name) . '.conf'; - $app->log('Settings file for rspamd is ' . $settings_file, LOGLEVEL_WARN); + //$app->log('Settings file for rspamd is ' . $settings_file, LOGLEVEL_WARN); if($mode === 'delete') { if(is_file($settings_file)) { unlink($settings_file); -- GitLab From b9f6e3fa6e33cd596f56044827b422e17f844477 Mon Sep 17 00:00:00 2001 From: Marius Burkard <m.burkard@pixcept.de> Date: Tue, 3 Sep 2019 15:54:08 +0200 Subject: [PATCH 171/215] - allow @ in webdav username --- interface/web/sites/form/webdav_user.tform.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/interface/web/sites/form/webdav_user.tform.php b/interface/web/sites/form/webdav_user.tform.php index 8d5c0c561f..b7db858546 100644 --- a/interface/web/sites/form/webdav_user.tform.php +++ b/interface/web/sites/form/webdav_user.tform.php @@ -85,7 +85,7 @@ $form["tabs"]['webdav'] = array ( 'validators' => array ( 0 => array ( 'type' => 'UNIQUE', 'errmsg'=> 'username_error_unique'), 1 => array ( 'type' => 'REGEX', - 'regex' => '/^[\w\.\-]{0,64}$/', + 'regex' => '/^[\w\.\-@]{0,64}$/', 'errmsg'=> 'username_error_regex'), ), 'default' => '', -- GitLab From af562b205e3013b5c2ccd2622608f51133779f6d Mon Sep 17 00:00:00 2001 From: Till Brehm <tbrehm@ispconfig.org> Date: Wed, 4 Sep 2019 11:37:08 +0200 Subject: [PATCH 172/215] Moved sql dev collection to upd_0088.sql file. --- install/sql/incremental/upd_0088.sql | 39 +++++++++++++++++++ .../sql/incremental/upd_dev_collection.sql | 39 ------------------- 2 files changed, 39 insertions(+), 39 deletions(-) create mode 100644 install/sql/incremental/upd_0088.sql diff --git a/install/sql/incremental/upd_0088.sql b/install/sql/incremental/upd_0088.sql new file mode 100644 index 0000000000..5c062603f9 --- /dev/null +++ b/install/sql/incremental/upd_0088.sql @@ -0,0 +1,39 @@ +-- rspamd +ALTER TABLE `spamfilter_policy` ADD `rspamd_greylisting` ENUM('n','y') CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL DEFAULT 'n' AFTER `policyd_greylist`; +ALTER TABLE `spamfilter_policy` ADD `rspamd_spam_greylisting_level` DECIMAL(5,2) NULL DEFAULT NULL AFTER `rspamd_greylisting`; +ALTER TABLE `spamfilter_policy` ADD `rspamd_spam_tag_level` DECIMAL(5,2) NULL DEFAULT NULL AFTER `rspamd_spam_greylisting_level`; +ALTER TABLE `spamfilter_policy` ADD `rspamd_spam_tag_method` ENUM('add_header','rewrite_subject') CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL DEFAULT 'rewrite_subject' AFTER `rspamd_spam_tag_level`; +ALTER TABLE `spamfilter_policy` ADD `rspamd_spam_kill_level` DECIMAL(5,2) NULL DEFAULT NULL AFTER `rspamd_spam_tag_method`; + +UPDATE `spamfilter_policy` SET `rspamd_greylisting` = 'y' WHERE id = 4; +UPDATE `spamfilter_policy` SET `rspamd_greylisting` = 'y' WHERE id = 5; +UPDATE `spamfilter_policy` SET `rspamd_greylisting` = 'y' WHERE id = 6; + +UPDATE `spamfilter_policy` SET `rspamd_spam_greylisting_level` = '4.00'; +UPDATE `spamfilter_policy` SET `rspamd_spam_greylisting_level` = '6.00' WHERE id = 1; +UPDATE `spamfilter_policy` SET `rspamd_spam_greylisting_level` = '999.00' WHERE id = 2; +UPDATE `spamfilter_policy` SET `rspamd_spam_greylisting_level` = '999.00' WHERE id = 3; +UPDATE `spamfilter_policy` SET `rspamd_spam_greylisting_level` = '2.00' WHERE id = 6; +UPDATE `spamfilter_policy` SET `rspamd_spam_greylisting_level` = '7.00' WHERE id = 7; + +UPDATE `spamfilter_policy` SET `rspamd_spam_tag_level` = '6.00'; +UPDATE `spamfilter_policy` SET `rspamd_spam_tag_level` = '8.00' WHERE id = 1; +UPDATE `spamfilter_policy` SET `rspamd_spam_tag_level` = '999.00' WHERE id = 2; +UPDATE `spamfilter_policy` SET `rspamd_spam_tag_level` = '999.00' WHERE id = 3; +UPDATE `spamfilter_policy` SET `rspamd_spam_tag_level` = '4.00' WHERE id = 6; +UPDATE `spamfilter_policy` SET `rspamd_spam_tag_level` = '10.00' WHERE id = 7; + +UPDATE `spamfilter_policy` SET `rspamd_spam_kill_level` = '10.00'; +UPDATE `spamfilter_policy` SET `rspamd_spam_kill_level` = '12.00' WHERE id = 1; +UPDATE `spamfilter_policy` SET `rspamd_spam_kill_level` = '999.00' WHERE id = 2; +UPDATE `spamfilter_policy` SET `rspamd_spam_kill_level` = '999.00' WHERE id = 3; +UPDATE `spamfilter_policy` SET `rspamd_spam_kill_level` = '8.00' WHERE id = 6; +UPDATE `spamfilter_policy` SET `rspamd_spam_kill_level` = '20.00' WHERE id = 7; +-- end of rspamd +ALTER TABLE `client` CHANGE COLUMN `password` `password` VARCHAR(200) DEFAULT NULL; +ALTER TABLE `ftp_user` CHANGE COLUMN `password` `password` VARCHAR(200) DEFAULT NULL; +ALTER TABLE `shell_user` CHANGE COLUMN `password` `password` VARCHAR(200) DEFAULT NULL; +ALTER TABLE `sys_user` CHANGE COLUMN `passwort` `passwort` VARCHAR(200) DEFAULT NULL; +ALTER TABLE `webdav_user` CHANGE COLUMN `password` `password` VARCHAR(200) DEFAULT NULL; + +DELETE FROM sys_cron WHERE `next_run` IS NOT NULL AND `next_run` >= DATE_ADD(`last_run`, INTERVAL 30 DAY) AND `next_run` BETWEEN '2020-01-01' AND '2020-01-02'; \ No newline at end of file diff --git a/install/sql/incremental/upd_dev_collection.sql b/install/sql/incremental/upd_dev_collection.sql index 91cbc81626..e69de29bb2 100644 --- a/install/sql/incremental/upd_dev_collection.sql +++ b/install/sql/incremental/upd_dev_collection.sql @@ -1,39 +0,0 @@ --- rspamd -ALTER TABLE `spamfilter_policy` ADD `rspamd_greylisting` ENUM('n','y') CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL DEFAULT 'n' AFTER `policyd_greylist`; -ALTER TABLE `spamfilter_policy` ADD `rspamd_spam_greylisting_level` DECIMAL(5,2) NULL DEFAULT NULL AFTER `rspamd_greylisting`; -ALTER TABLE `spamfilter_policy` ADD `rspamd_spam_tag_level` DECIMAL(5,2) NULL DEFAULT NULL AFTER `rspamd_spam_greylisting_level`; -ALTER TABLE `spamfilter_policy` ADD `rspamd_spam_tag_method` ENUM('add_header','rewrite_subject') CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL DEFAULT 'rewrite_subject' AFTER `rspamd_spam_tag_level`; -ALTER TABLE `spamfilter_policy` ADD `rspamd_spam_kill_level` DECIMAL(5,2) NULL DEFAULT NULL AFTER `rspamd_spam_tag_method`; - -UPDATE `spamfilter_policy` SET `rspamd_greylisting` = 'y' WHERE id = 4; -UPDATE `spamfilter_policy` SET `rspamd_greylisting` = 'y' WHERE id = 5; -UPDATE `spamfilter_policy` SET `rspamd_greylisting` = 'y' WHERE id = 6; - -UPDATE `spamfilter_policy` SET `rspamd_spam_greylisting_level` = '4.00'; -UPDATE `spamfilter_policy` SET `rspamd_spam_greylisting_level` = '6.00' WHERE id = 1; -UPDATE `spamfilter_policy` SET `rspamd_spam_greylisting_level` = '999.00' WHERE id = 2; -UPDATE `spamfilter_policy` SET `rspamd_spam_greylisting_level` = '999.00' WHERE id = 3; -UPDATE `spamfilter_policy` SET `rspamd_spam_greylisting_level` = '2.00' WHERE id = 6; -UPDATE `spamfilter_policy` SET `rspamd_spam_greylisting_level` = '7.00' WHERE id = 7; - -UPDATE `spamfilter_policy` SET `rspamd_spam_tag_level` = '6.00'; -UPDATE `spamfilter_policy` SET `rspamd_spam_tag_level` = '8.00' WHERE id = 1; -UPDATE `spamfilter_policy` SET `rspamd_spam_tag_level` = '999.00' WHERE id = 2; -UPDATE `spamfilter_policy` SET `rspamd_spam_tag_level` = '999.00' WHERE id = 3; -UPDATE `spamfilter_policy` SET `rspamd_spam_tag_level` = '4.00' WHERE id = 6; -UPDATE `spamfilter_policy` SET `rspamd_spam_tag_level` = '10.00' WHERE id = 7; - -UPDATE `spamfilter_policy` SET `rspamd_spam_kill_level` = '10.00'; -UPDATE `spamfilter_policy` SET `rspamd_spam_kill_level` = '12.00' WHERE id = 1; -UPDATE `spamfilter_policy` SET `rspamd_spam_kill_level` = '999.00' WHERE id = 2; -UPDATE `spamfilter_policy` SET `rspamd_spam_kill_level` = '999.00' WHERE id = 3; -UPDATE `spamfilter_policy` SET `rspamd_spam_kill_level` = '8.00' WHERE id = 6; -UPDATE `spamfilter_policy` SET `rspamd_spam_kill_level` = '20.00' WHERE id = 7; --- end of rspamd -ALTER TABLE `client` CHANGE COLUMN `password` `password` VARCHAR(200) DEFAULT NULL; -ALTER TABLE `ftp_user` CHANGE COLUMN `password` `password` VARCHAR(200) DEFAULT NULL; -ALTER TABLE `shell_user` CHANGE COLUMN `password` `password` VARCHAR(200) DEFAULT NULL; -ALTER TABLE `sys_user` CHANGE COLUMN `passwort` `passwort` VARCHAR(200) DEFAULT NULL; -ALTER TABLE `webdav_user` CHANGE COLUMN `password` `password` VARCHAR(200) DEFAULT NULL; - -DELETE FROM sys_cron WHERE `next_run` IS NOT NULL AND `next_run` >= DATE_ADD(`last_run`, INTERVAL 30 DAY) AND `next_run` BETWEEN '2020-01-01' AND '2020-01-02'; -- GitLab From 65d142ea6719c72b3e4612a06b245ad3b3495c33 Mon Sep 17 00:00:00 2001 From: Till Brehm <tbrehm@ispconfig.org> Date: Wed, 4 Sep 2019 11:41:56 +0200 Subject: [PATCH 173/215] Merged language files. --- interface/lib/lang/ar.lng | 2 +- interface/lib/lang/bg.lng | 2 +- interface/lib/lang/ca.lng | 2 +- interface/lib/lang/cz.lng | 2 +- interface/lib/lang/de.lng | 5 ++--- interface/lib/lang/dk.lng | 2 +- interface/lib/lang/el.lng | 2 +- interface/lib/lang/es.lng | 2 +- interface/lib/lang/fi.lng | 2 +- interface/lib/lang/hr.lng | 2 +- interface/lib/lang/hu.lng | 2 +- interface/lib/lang/id.lng | 2 +- interface/lib/lang/it.lng | 2 +- interface/lib/lang/ja.lng | 2 +- interface/lib/lang/nl.lng | 2 +- interface/lib/lang/pl.lng | 2 +- interface/lib/lang/pt.lng | 2 +- interface/lib/lang/ro.lng | 2 +- interface/lib/lang/ru.lng | 2 +- interface/lib/lang/se.lng | 2 +- interface/lib/lang/sk.lng | 2 +- interface/lib/lang/tr.lng | 2 +- .../web/admin/lib/lang/ar_server_config.lng | 4 ++++ .../web/admin/lib/lang/ar_system_config.lng | 2 +- interface/web/admin/lib/lang/ar_users.lng | 2 +- .../web/admin/lib/lang/bg_server_config.lng | 4 ++++ .../web/admin/lib/lang/bg_system_config.lng | 2 +- interface/web/admin/lib/lang/bg_users.lng | 2 +- .../web/admin/lib/lang/br_server_config.lng | 4 ++++ .../web/admin/lib/lang/br_system_config.lng | 2 +- interface/web/admin/lib/lang/ca_firewall.lng | 4 ++-- .../web/admin/lib/lang/ca_server_config.lng | 6 +++++- .../web/admin/lib/lang/ca_system_config.lng | 2 +- interface/web/admin/lib/lang/ca_users.lng | 2 +- .../web/admin/lib/lang/cz_remote_action.lng | 4 ++-- .../web/admin/lib/lang/cz_server_config.lng | 6 +++++- .../web/admin/lib/lang/de_server_config.lng | 3 ++- interface/web/admin/lib/lang/dk_firewall.lng | 4 ++-- .../web/admin/lib/lang/dk_server_config.lng | 6 +++++- .../web/admin/lib/lang/dk_system_config.lng | 2 +- interface/web/admin/lib/lang/dk_users.lng | 2 +- .../web/admin/lib/lang/el_server_config.lng | 4 ++++ .../web/admin/lib/lang/el_system_config.lng | 2 +- interface/web/admin/lib/lang/el_users.lng | 2 +- interface/web/admin/lib/lang/es_firewall.lng | 4 ++-- .../web/admin/lib/lang/es_server_config.lng | 6 +++++- .../web/admin/lib/lang/es_system_config.lng | 4 ++-- .../web/admin/lib/lang/fi_server_config.lng | 4 ++++ .../web/admin/lib/lang/fi_system_config.lng | 2 +- interface/web/admin/lib/lang/fi_users.lng | 2 +- .../web/admin/lib/lang/fr_remote_action.lng | 2 +- .../web/admin/lib/lang/fr_server_config.lng | 4 ++++ .../web/admin/lib/lang/fr_system_config.lng | 2 +- .../web/admin/lib/lang/hr_server_config.lng | 4 ++++ .../web/admin/lib/lang/hr_system_config.lng | 2 +- interface/web/admin/lib/lang/hr_users.lng | 2 +- interface/web/admin/lib/lang/hr_users_list.lng | 2 +- .../web/admin/lib/lang/hu_server_config.lng | 4 ++++ .../web/admin/lib/lang/hu_system_config.lng | 2 +- interface/web/admin/lib/lang/hu_users.lng | 2 +- .../web/admin/lib/lang/id_server_config.lng | 4 ++++ .../web/admin/lib/lang/id_system_config.lng | 2 +- interface/web/admin/lib/lang/id_users.lng | 2 +- .../web/admin/lib/lang/it_server_config.lng | 4 ++++ .../web/admin/lib/lang/it_system_config.lng | 2 +- interface/web/admin/lib/lang/it_users.lng | 2 +- .../web/admin/lib/lang/ja_server_config.lng | 4 ++++ .../web/admin/lib/lang/ja_system_config.lng | 2 +- interface/web/admin/lib/lang/ja_users.lng | 2 +- .../web/admin/lib/lang/nl_server_config.lng | 4 ++++ .../web/admin/lib/lang/nl_system_config.lng | 2 +- interface/web/admin/lib/lang/nl_users.lng | 2 +- .../web/admin/lib/lang/pl_server_config.lng | 4 ++++ .../web/admin/lib/lang/pl_system_config.lng | 2 +- .../web/admin/lib/lang/pt_server_config.lng | 4 ++++ .../web/admin/lib/lang/pt_system_config.lng | 2 +- interface/web/admin/lib/lang/pt_users.lng | 2 +- .../web/admin/lib/lang/ro_server_config.lng | 4 ++++ .../web/admin/lib/lang/ro_system_config.lng | 2 +- interface/web/admin/lib/lang/ro_users.lng | 2 +- interface/web/admin/lib/lang/ru_firewall.lng | 4 ++-- .../web/admin/lib/lang/ru_server_config.lng | 6 +++++- .../web/admin/lib/lang/ru_system_config.lng | 4 ++-- interface/web/admin/lib/lang/ru_users.lng | 2 +- .../web/admin/lib/lang/se_server_config.lng | 4 ++++ .../web/admin/lib/lang/se_system_config.lng | 2 +- .../web/admin/lib/lang/sk_server_config.lng | 4 ++++ .../web/admin/lib/lang/sk_system_config.lng | 2 +- interface/web/admin/lib/lang/sk_users.lng | 2 +- interface/web/admin/lib/lang/tr_firewall.lng | 4 ++-- .../web/admin/lib/lang/tr_remote_action.lng | 4 ++-- .../web/admin/lib/lang/tr_server_config.lng | 6 +++++- .../web/admin/lib/lang/tr_system_config.lng | 2 +- interface/web/admin/lib/lang/tr_users.lng | 2 +- interface/web/client/lib/lang/ar_client.lng | 2 +- interface/web/client/lib/lang/ar_reseller.lng | 2 +- interface/web/client/lib/lang/bg_client.lng | 2 +- interface/web/client/lib/lang/bg_reseller.lng | 2 +- interface/web/client/lib/lang/br_client.lng | 2 +- .../web/client/lib/lang/br_client_template.lng | 2 +- interface/web/client/lib/lang/br_reseller.lng | 2 +- interface/web/client/lib/lang/ca_client.lng | 2 +- interface/web/client/lib/lang/ca_reseller.lng | 2 +- interface/web/client/lib/lang/cz_client.lng | 2 +- interface/web/client/lib/lang/cz_reseller.lng | 2 +- interface/web/client/lib/lang/de_reseller.lng | 2 +- interface/web/client/lib/lang/dk_client.lng | 2 +- interface/web/client/lib/lang/dk_reseller.lng | 2 +- interface/web/client/lib/lang/el_client.lng | 2 +- interface/web/client/lib/lang/el_reseller.lng | 2 +- interface/web/client/lib/lang/es_client.lng | 4 ++-- .../web/client/lib/lang/es_client_template.lng | 4 ++-- interface/web/client/lib/lang/es_reseller.lng | 4 ++-- interface/web/client/lib/lang/fi_client.lng | 2 +- interface/web/client/lib/lang/fi_reseller.lng | 2 +- interface/web/client/lib/lang/fr_client.lng | 2 +- interface/web/client/lib/lang/fr_reseller.lng | 2 +- interface/web/client/lib/lang/hr_client.lng | 2 +- interface/web/client/lib/lang/hr_reseller.lng | 2 +- interface/web/client/lib/lang/hu_client.lng | 2 +- interface/web/client/lib/lang/hu_reseller.lng | 2 +- interface/web/client/lib/lang/id_client.lng | 2 +- interface/web/client/lib/lang/id_reseller.lng | 2 +- interface/web/client/lib/lang/it_client.lng | 2 +- interface/web/client/lib/lang/it_reseller.lng | 2 +- interface/web/client/lib/lang/ja_client.lng | 2 +- interface/web/client/lib/lang/ja_reseller.lng | 2 +- interface/web/client/lib/lang/nl_client.lng | 2 +- interface/web/client/lib/lang/nl_reseller.lng | 2 +- interface/web/client/lib/lang/pl_reseller.lng | 2 +- interface/web/client/lib/lang/pt_client.lng | 2 +- interface/web/client/lib/lang/pt_reseller.lng | 2 +- interface/web/client/lib/lang/ro_client.lng | 2 +- interface/web/client/lib/lang/ro_reseller.lng | 2 +- interface/web/client/lib/lang/ru_client.lng | 4 ++-- interface/web/client/lib/lang/ru_reseller.lng | 4 ++-- interface/web/client/lib/lang/se_client.lng | 2 +- interface/web/client/lib/lang/se_reseller.lng | 2 +- interface/web/client/lib/lang/sk_client.lng | 2 +- interface/web/client/lib/lang/sk_reseller.lng | 2 +- interface/web/client/lib/lang/tr_client.lng | 2 +- interface/web/client/lib/lang/tr_reseller.lng | 2 +- .../web/dashboard/lib/lang/es_dashlet_limits.lng | 2 +- interface/web/dns/lib/lang/br_dns_dmarc.lng | 10 +++++----- interface/web/dns/lib/lang/br_dns_tlsa.lng | 4 ++-- interface/web/dns/lib/lang/ru_dns_hinfo.lng | 2 +- .../web/help/lib/lang/br_support_message.lng | 2 +- interface/web/login/lib/lang/ar_login_as.lng | 6 +++--- interface/web/login/lib/lang/bg_login_as.lng | 6 +++--- interface/web/login/lib/lang/br_login_as.lng | 2 +- interface/web/login/lib/lang/ca_login_as.lng | 6 +++--- interface/web/login/lib/lang/dk_login_as.lng | 6 +++--- interface/web/login/lib/lang/el_login_as.lng | 6 +++--- interface/web/login/lib/lang/es_login_as.lng | 6 +++--- interface/web/login/lib/lang/fi_login_as.lng | 6 +++--- interface/web/login/lib/lang/hr_login_as.lng | 6 +++--- interface/web/login/lib/lang/hu_login_as.lng | 6 +++--- interface/web/login/lib/lang/id_login_as.lng | 6 +++--- interface/web/login/lib/lang/it_login_as.lng | 6 +++--- interface/web/login/lib/lang/ja_login_as.lng | 6 +++--- interface/web/login/lib/lang/nl_login_as.lng | 4 ++-- interface/web/login/lib/lang/pt_login_as.lng | 6 +++--- interface/web/login/lib/lang/ro_login_as.lng | 6 +++--- interface/web/login/lib/lang/ru_login_as.lng | 6 +++--- interface/web/login/lib/lang/se_login_as.lng | 6 +++--- interface/web/login/lib/lang/sk_login_as.lng | 6 +++--- interface/web/login/lib/lang/tr_login_as.lng | 6 +++--- interface/web/mail/lib/lang/ar.lng | 2 ++ .../mail/lib/lang/ar_mail_domain_catchall.lng | 1 + interface/web/mail/lib/lang/ar_mail_get.lng | 2 +- .../web/mail/lib/lang/ar_spamfilter_policy.lng | 13 +++++++++++++ interface/web/mail/lib/lang/bg.lng | 2 ++ .../mail/lib/lang/bg_mail_domain_catchall.lng | 1 + interface/web/mail/lib/lang/bg_mail_get.lng | 2 +- .../web/mail/lib/lang/bg_spamfilter_policy.lng | 13 +++++++++++++ interface/web/mail/lib/lang/br.lng | 2 ++ .../mail/lib/lang/br_mail_domain_catchall.lng | 1 + interface/web/mail/lib/lang/br_mail_user.lng | 4 ++-- .../web/mail/lib/lang/br_spamfilter_policy.lng | 13 +++++++++++++ interface/web/mail/lib/lang/ca.lng | 2 ++ .../mail/lib/lang/ca_mail_domain_catchall.lng | 1 + interface/web/mail/lib/lang/ca_mail_get.lng | 2 +- .../web/mail/lib/lang/ca_spamfilter_policy.lng | 13 +++++++++++++ interface/web/mail/lib/lang/cz.lng | 2 ++ .../mail/lib/lang/cz_mail_domain_catchall.lng | 1 + interface/web/mail/lib/lang/cz_mail_get.lng | 2 +- .../web/mail/lib/lang/cz_mail_mailinglist.lng | 2 +- .../web/mail/lib/lang/cz_spamfilter_policy.lng | 13 +++++++++++++ interface/web/mail/lib/lang/de.lng | 2 ++ .../web/mail/lib/lang/de_spamfilter_policy.lng | 4 ++-- interface/web/mail/lib/lang/dk.lng | 2 ++ .../mail/lib/lang/dk_mail_domain_catchall.lng | 1 + interface/web/mail/lib/lang/dk_mail_get.lng | 2 +- .../web/mail/lib/lang/dk_spamfilter_policy.lng | 13 +++++++++++++ interface/web/mail/lib/lang/el.lng | 2 ++ .../mail/lib/lang/el_mail_domain_catchall.lng | 1 + interface/web/mail/lib/lang/el_mail_get.lng | 2 +- .../web/mail/lib/lang/el_spamfilter_policy.lng | 13 +++++++++++++ interface/web/mail/lib/lang/es.lng | 4 +++- .../mail/lib/lang/es_mail_domain_catchall.lng | 5 +++-- .../lib/lang/es_mail_domain_catchall_list.lng | 4 ++-- interface/web/mail/lib/lang/es_mail_get.lng | 2 +- .../web/mail/lib/lang/es_spamfilter_policy.lng | 13 +++++++++++++ interface/web/mail/lib/lang/fi.lng | 2 ++ .../mail/lib/lang/fi_mail_domain_catchall.lng | 1 + interface/web/mail/lib/lang/fi_mail_get.lng | 2 +- .../web/mail/lib/lang/fi_spamfilter_policy.lng | 13 +++++++++++++ interface/web/mail/lib/lang/fr.lng | 2 ++ .../mail/lib/lang/fr_mail_domain_catchall.lng | 1 + interface/web/mail/lib/lang/fr_mail_get.lng | 2 +- .../web/mail/lib/lang/fr_spamfilter_policy.lng | 13 +++++++++++++ interface/web/mail/lib/lang/hr.lng | 2 ++ .../mail/lib/lang/hr_mail_domain_catchall.lng | 1 + interface/web/mail/lib/lang/hr_mail_get.lng | 2 +- .../web/mail/lib/lang/hr_spamfilter_policy.lng | 13 +++++++++++++ interface/web/mail/lib/lang/hu.lng | 2 ++ .../mail/lib/lang/hu_mail_domain_catchall.lng | 1 + interface/web/mail/lib/lang/hu_mail_get.lng | 2 +- .../web/mail/lib/lang/hu_spamfilter_policy.lng | 13 +++++++++++++ interface/web/mail/lib/lang/id.lng | 2 ++ .../mail/lib/lang/id_mail_domain_catchall.lng | 1 + interface/web/mail/lib/lang/id_mail_get.lng | 2 +- .../web/mail/lib/lang/id_spamfilter_policy.lng | 13 +++++++++++++ interface/web/mail/lib/lang/it.lng | 2 ++ .../mail/lib/lang/it_mail_domain_catchall.lng | 1 + interface/web/mail/lib/lang/it_mail_get.lng | 2 +- .../web/mail/lib/lang/it_spamfilter_policy.lng | 13 +++++++++++++ interface/web/mail/lib/lang/ja.lng | 2 ++ .../mail/lib/lang/ja_mail_domain_catchall.lng | 1 + interface/web/mail/lib/lang/ja_mail_get.lng | 2 +- .../web/mail/lib/lang/ja_spamfilter_policy.lng | 13 +++++++++++++ interface/web/mail/lib/lang/nl.lng | 2 ++ .../mail/lib/lang/nl_mail_domain_catchall.lng | 1 + interface/web/mail/lib/lang/nl_mail_get.lng | 2 +- interface/web/mail/lib/lang/nl_mail_user.lng | 4 ++-- .../web/mail/lib/lang/nl_spamfilter_policy.lng | 13 +++++++++++++ interface/web/mail/lib/lang/pl.lng | 2 ++ .../mail/lib/lang/pl_mail_domain_catchall.lng | 1 + .../web/mail/lib/lang/pl_spamfilter_policy.lng | 13 +++++++++++++ interface/web/mail/lib/lang/pt.lng | 2 ++ .../mail/lib/lang/pt_mail_domain_catchall.lng | 1 + interface/web/mail/lib/lang/pt_mail_get.lng | 2 +- .../web/mail/lib/lang/pt_spamfilter_policy.lng | 13 +++++++++++++ interface/web/mail/lib/lang/ro.lng | 2 ++ .../mail/lib/lang/ro_mail_domain_catchall.lng | 1 + interface/web/mail/lib/lang/ro_mail_get.lng | 2 +- .../web/mail/lib/lang/ro_spamfilter_policy.lng | 13 +++++++++++++ interface/web/mail/lib/lang/ru.lng | 2 ++ .../mail/lib/lang/ru_mail_domain_catchall.lng | 1 + interface/web/mail/lib/lang/ru_mail_get.lng | 2 +- .../web/mail/lib/lang/ru_mail_user_filter.lng | 2 +- .../web/mail/lib/lang/ru_spamfilter_policy.lng | 13 +++++++++++++ interface/web/mail/lib/lang/se.lng | 2 ++ .../mail/lib/lang/se_mail_domain_catchall.lng | 1 + interface/web/mail/lib/lang/se_mail_get.lng | 2 +- .../web/mail/lib/lang/se_spamfilter_policy.lng | 13 +++++++++++++ interface/web/mail/lib/lang/sk.lng | 2 ++ .../mail/lib/lang/sk_mail_domain_catchall.lng | 1 + interface/web/mail/lib/lang/sk_mail_get.lng | 2 +- .../web/mail/lib/lang/sk_spamfilter_policy.lng | 13 +++++++++++++ interface/web/mail/lib/lang/tr.lng | 2 ++ .../mail/lib/lang/tr_mail_domain_catchall.lng | 1 + interface/web/mail/lib/lang/tr_mail_get.lng | 2 +- .../web/mail/lib/lang/tr_spamfilter_policy.lng | 13 +++++++++++++ .../mailuser/lib/lang/ru_mail_user_filter.lng | 2 +- .../monitor/lib/lang/ar_dataloghistory_list.lng | 12 ++++++------ .../monitor/lib/lang/bg_dataloghistory_list.lng | 12 ++++++------ .../monitor/lib/lang/br_dataloghistory_list.lng | 12 ++++++------ .../monitor/lib/lang/ca_dataloghistory_list.lng | 12 ++++++------ .../monitor/lib/lang/dk_dataloghistory_list.lng | 12 ++++++------ .../monitor/lib/lang/el_dataloghistory_list.lng | 12 ++++++------ interface/web/monitor/lib/lang/es.lng | 2 +- .../monitor/lib/lang/es_dataloghistory_list.lng | 12 ++++++------ .../monitor/lib/lang/fi_dataloghistory_list.lng | 12 ++++++------ .../monitor/lib/lang/fr_dataloghistory_list.lng | 12 ++++++------ .../monitor/lib/lang/hr_dataloghistory_list.lng | 12 ++++++------ .../monitor/lib/lang/hu_dataloghistory_list.lng | 12 ++++++------ .../monitor/lib/lang/id_dataloghistory_list.lng | 12 ++++++------ .../monitor/lib/lang/it_dataloghistory_list.lng | 12 ++++++------ .../monitor/lib/lang/ja_dataloghistory_list.lng | 12 ++++++------ .../monitor/lib/lang/nl_dataloghistory_list.lng | 12 ++++++------ .../monitor/lib/lang/pl_dataloghistory_list.lng | 12 ++++++------ .../monitor/lib/lang/pt_dataloghistory_list.lng | 12 ++++++------ .../monitor/lib/lang/ro_dataloghistory_list.lng | 12 ++++++------ .../monitor/lib/lang/ru_dataloghistory_list.lng | 12 ++++++------ .../monitor/lib/lang/se_dataloghistory_list.lng | 12 ++++++------ .../monitor/lib/lang/sk_dataloghistory_list.lng | 12 ++++++------ .../monitor/lib/lang/tr_dataloghistory_list.lng | 12 ++++++------ interface/web/sites/lib/lang/ar.lng | 2 +- interface/web/sites/lib/lang/ar_aps.lng | 16 ++++++++-------- .../web/sites/lib/lang/ar_web_childdomain.lng | 2 +- .../web/sites/lib/lang/ar_web_subdomain.lng | 2 +- interface/web/sites/lib/lang/bg.lng | 2 +- interface/web/sites/lib/lang/bg_aps.lng | 16 ++++++++-------- .../web/sites/lib/lang/bg_web_childdomain.lng | 2 +- .../web/sites/lib/lang/bg_web_subdomain.lng | 2 +- interface/web/sites/lib/lang/br.lng | 2 +- interface/web/sites/lib/lang/br_cron.lng | 4 ++-- interface/web/sites/lib/lang/br_database.lng | 2 +- .../web/sites/lib/lang/br_database_user.lng | 2 +- interface/web/sites/lib/lang/br_ftp_user.lng | 4 ++-- interface/web/sites/lib/lang/br_shell_user.lng | 4 ++-- .../web/sites/lib/lang/br_web_aliasdomain.lng | 4 ++-- .../web/sites/lib/lang/br_web_childdomain.lng | 6 +++--- interface/web/sites/lib/lang/br_web_domain.lng | 6 +++--- .../web/sites/lib/lang/br_web_subdomain.lng | 2 +- .../web/sites/lib/lang/br_web_vhost_domain.lng | 4 ++-- .../sites/lib/lang/br_web_vhost_subdomain.lng | 10 +++++----- interface/web/sites/lib/lang/br_webdav_user.lng | 4 ++-- interface/web/sites/lib/lang/ca.lng | 2 +- interface/web/sites/lib/lang/ca_aps.lng | 16 ++++++++-------- .../web/sites/lib/lang/ca_web_childdomain.lng | 2 +- .../web/sites/lib/lang/ca_web_subdomain.lng | 2 +- interface/web/sites/lib/lang/cz.lng | 2 +- interface/web/sites/lib/lang/cz_aps.lng | 16 ++++++++-------- .../web/sites/lib/lang/cz_web_childdomain.lng | 2 +- .../web/sites/lib/lang/cz_web_subdomain.lng | 2 +- .../web/sites/lib/lang/de_web_childdomain.lng | 2 +- .../web/sites/lib/lang/de_web_subdomain.lng | 2 +- interface/web/sites/lib/lang/dk.lng | 2 +- interface/web/sites/lib/lang/dk_aps.lng | 16 ++++++++-------- .../web/sites/lib/lang/dk_web_childdomain.lng | 2 +- .../web/sites/lib/lang/dk_web_subdomain.lng | 2 +- interface/web/sites/lib/lang/el.lng | 2 +- interface/web/sites/lib/lang/el_aps.lng | 16 ++++++++-------- .../web/sites/lib/lang/el_web_childdomain.lng | 2 +- .../web/sites/lib/lang/el_web_subdomain.lng | 2 +- interface/web/sites/lib/lang/es.lng | 2 +- interface/web/sites/lib/lang/es_aps.lng | 16 ++++++++-------- .../web/sites/lib/lang/es_web_childdomain.lng | 4 ++-- .../web/sites/lib/lang/es_web_subdomain.lng | 2 +- .../web/sites/lib/lang/es_web_vhost_domain.lng | 2 +- interface/web/sites/lib/lang/fi.lng | 2 +- interface/web/sites/lib/lang/fi_aps.lng | 16 ++++++++-------- .../web/sites/lib/lang/fi_web_childdomain.lng | 2 +- .../web/sites/lib/lang/fi_web_subdomain.lng | 2 +- interface/web/sites/lib/lang/fr.lng | 2 +- interface/web/sites/lib/lang/fr_aps.lng | 16 ++++++++-------- .../web/sites/lib/lang/fr_web_childdomain.lng | 2 +- .../web/sites/lib/lang/fr_web_subdomain.lng | 2 +- interface/web/sites/lib/lang/hr.lng | 2 +- interface/web/sites/lib/lang/hr_aps.lng | 16 ++++++++-------- .../web/sites/lib/lang/hr_web_childdomain.lng | 2 +- .../web/sites/lib/lang/hr_web_subdomain.lng | 2 +- interface/web/sites/lib/lang/hu.lng | 2 +- interface/web/sites/lib/lang/hu_aps.lng | 16 ++++++++-------- .../web/sites/lib/lang/hu_web_childdomain.lng | 2 +- .../web/sites/lib/lang/hu_web_subdomain.lng | 2 +- interface/web/sites/lib/lang/id.lng | 2 +- interface/web/sites/lib/lang/id_aps.lng | 16 ++++++++-------- .../web/sites/lib/lang/id_web_childdomain.lng | 2 +- .../web/sites/lib/lang/id_web_subdomain.lng | 2 +- interface/web/sites/lib/lang/it.lng | 2 +- interface/web/sites/lib/lang/it_aps.lng | 16 ++++++++-------- .../web/sites/lib/lang/it_web_childdomain.lng | 2 +- .../web/sites/lib/lang/it_web_subdomain.lng | 2 +- interface/web/sites/lib/lang/ja.lng | 2 +- interface/web/sites/lib/lang/ja_aps.lng | 16 ++++++++-------- .../web/sites/lib/lang/ja_web_childdomain.lng | 2 +- .../web/sites/lib/lang/ja_web_subdomain.lng | 2 +- interface/web/sites/lib/lang/nl.lng | 2 +- interface/web/sites/lib/lang/nl_aps.lng | 16 ++++++++-------- .../web/sites/lib/lang/nl_web_childdomain.lng | 2 +- .../web/sites/lib/lang/nl_web_subdomain.lng | 2 +- interface/web/sites/lib/lang/pl_aps.lng | 16 ++++++++-------- interface/web/sites/lib/lang/pt.lng | 2 +- interface/web/sites/lib/lang/pt_aps.lng | 16 ++++++++-------- .../web/sites/lib/lang/pt_web_childdomain.lng | 2 +- .../web/sites/lib/lang/pt_web_subdomain.lng | 2 +- interface/web/sites/lib/lang/ro.lng | 2 +- interface/web/sites/lib/lang/ro_aps.lng | 16 ++++++++-------- .../web/sites/lib/lang/ro_web_childdomain.lng | 2 +- .../web/sites/lib/lang/ro_web_subdomain.lng | 2 +- interface/web/sites/lib/lang/ru.lng | 2 +- interface/web/sites/lib/lang/ru_aps.lng | 16 ++++++++-------- interface/web/sites/lib/lang/ru_database.lng | 2 +- .../web/sites/lib/lang/ru_database_user.lng | 2 +- .../web/sites/lib/lang/ru_web_childdomain.lng | 2 +- .../web/sites/lib/lang/ru_web_subdomain.lng | 2 +- interface/web/sites/lib/lang/se.lng | 2 +- interface/web/sites/lib/lang/se_aps.lng | 16 ++++++++-------- .../web/sites/lib/lang/se_web_childdomain.lng | 2 +- .../web/sites/lib/lang/se_web_subdomain.lng | 2 +- interface/web/sites/lib/lang/sk.lng | 2 +- interface/web/sites/lib/lang/sk_aps.lng | 16 ++++++++-------- .../web/sites/lib/lang/sk_web_childdomain.lng | 2 +- .../web/sites/lib/lang/sk_web_subdomain.lng | 2 +- interface/web/sites/lib/lang/tr.lng | 2 +- interface/web/sites/lib/lang/tr_aps.lng | 16 ++++++++-------- .../web/sites/lib/lang/tr_web_childdomain.lng | 2 +- .../web/sites/lib/lang/tr_web_subdomain.lng | 2 +- interface/web/vm/lib/lang/dk_openvz_template.lng | 2 +- interface/web/vm/lib/lang/es_openvz_template.lng | 2 +- interface/web/vm/lib/lang/tr_openvz_template.lng | 2 +- 394 files changed, 1113 insertions(+), 651 deletions(-) diff --git a/interface/lib/lang/ar.lng b/interface/lib/lang/ar.lng index c8ee365e4b..25dd920831 100644 --- a/interface/lib/lang/ar.lng +++ b/interface/lib/lang/ar.lng @@ -145,7 +145,7 @@ $wb['strength_2'] = 'Fair'; $wb['strength_3'] = 'Good'; $wb['strength_4'] = 'Strong'; $wb['strength_5'] = 'Very Strong'; -$wb['weak_password_txt'] = 'The chosen password does not match the security guidelines. It has to be at least {chars} chars in length and have a strength of \"{strength}\".'; +$wb['weak_password_txt'] = 'The chosen password does not match the security guidelines. It has to be at least {chars} chars in length and have a strength of \\"{strength}\\".'; $wb['weak_password_length_txt'] = 'The chosen password does not match the security guidelines. It has to be at least {chars} chars in length.'; $wb['security_check1_txt'] = 'Check for security permission:'; $wb['security_check2_txt'] = 'failed.'; diff --git a/interface/lib/lang/bg.lng b/interface/lib/lang/bg.lng index eafc8334d4..ff1e39fe34 100644 --- a/interface/lib/lang/bg.lng +++ b/interface/lib/lang/bg.lng @@ -145,7 +145,7 @@ $wb['strength_2'] = 'Fair'; $wb['strength_3'] = 'Good'; $wb['strength_4'] = 'Strong'; $wb['strength_5'] = 'Very Strong'; -$wb['weak_password_txt'] = 'The chosen password does not match the security guidelines. It has to be at least {chars} chars in length and have a strength of \"{strength}\".'; +$wb['weak_password_txt'] = 'The chosen password does not match the security guidelines. It has to be at least {chars} chars in length and have a strength of \\"{strength}\\".'; $wb['weak_password_length_txt'] = 'The chosen password does not match the security guidelines. It has to be at least {chars} chars in length.'; $wb['security_check1_txt'] = 'Check for security permission:'; $wb['security_check2_txt'] = 'failed.'; diff --git a/interface/lib/lang/ca.lng b/interface/lib/lang/ca.lng index 03b9e65a0d..c39cd0db27 100644 --- a/interface/lib/lang/ca.lng +++ b/interface/lib/lang/ca.lng @@ -145,7 +145,7 @@ $wb['strength_2'] = 'Moyen'; $wb['strength_3'] = 'Bon'; $wb['strength_4'] = 'Fort'; $wb['strength_5'] = 'Très fort'; -$wb['weak_password_txt'] = 'Le mot de passe choisi ne rencontre pas les minimas requis : {chars} caractères minimums et une force de \"{strength}\".'; +$wb['weak_password_txt'] = 'Le mot de passe choisi ne rencontre pas les minimas requis : {chars} caractères minimums et une force de \\"{strength}\\".'; $wb['weak_password_length_txt'] = 'Le mot de passe choisi ne rencontre pas les minimas requis : {chars} caractères minimums.'; $wb['security_check1_txt'] = 'Vérifier les permissions de sécurité:'; $wb['security_check2_txt'] = 'Echec'; diff --git a/interface/lib/lang/cz.lng b/interface/lib/lang/cz.lng index fdf9053dae..eeb0819292 100644 --- a/interface/lib/lang/cz.lng +++ b/interface/lib/lang/cz.lng @@ -145,7 +145,7 @@ $wb['strength_2'] = 'PodprůmÄ›rná'; $wb['strength_3'] = 'Dobrá'; $wb['strength_4'] = 'Silná'; $wb['strength_5'] = 'Velmi silná'; -$wb['weak_password_txt'] = 'Zvolené heslo neodpovÃdá požadavkům zásad pro tvorbu hesel. Heslo musà být alespoň {chars} znaků dlouhé a majÃcà sÃlu \"{strength}\".'; +$wb['weak_password_txt'] = 'Zvolené heslo neodpovÃdá požadavkům zásad pro tvorbu hesel. Heslo musà být alespoň {chars} znaků dlouhé a majÃcà sÃlu \\"{strength}\\".'; $wb['weak_password_length_txt'] = 'Zvolené heslo neodpovÃdá požadavkům zásad pro tvorbu hesel. Heslo musà být alespoň {chars} znaků dlouhé.'; $wb['security_check1_txt'] = 'Check for security permission:'; $wb['security_check2_txt'] = 'failed.'; diff --git a/interface/lib/lang/de.lng b/interface/lib/lang/de.lng index bc217c30b0..61551ceeab 100644 --- a/interface/lib/lang/de.lng +++ b/interface/lib/lang/de.lng @@ -152,11 +152,10 @@ $wb['strength_2'] = 'Mittel'; $wb['strength_3'] = 'Gut'; $wb['strength_4'] = 'Stark'; $wb['strength_5'] = 'Sehr stark'; -$wb['weak_password_txt'] = 'Das gewählte Passwort erfüllt die Sicherheitsanforderungen nicht. Es muss mindestens {chars} Zeichen lang sein und die Stärke \"{strength}\" besitzen.'; +$wb['weak_password_txt'] = 'Das gewählte Passwort erfüllt die Sicherheitsanforderungen nicht. Es muss mindestens {chars} Zeichen lang sein und die Stärke \\"{strength}\\" besitzen.'; $wb['weak_password_length_txt'] = 'Das gewählte Passwort erfüllt die Sicherheitsanforderungen nicht. Es muss mindestens {chars} Zeichen lang sein.'; $wb['security_check1_txt'] = 'Sicherheitsüberprüfung für:'; $wb['security_check2_txt'] = 'fehlgeschlagen.'; $wb['select_directive_snippet_txt'] = 'Direktiven Schnipsel'; $wb['select_master_directive_snippet_txt'] = 'Master Direktiven Schnipsel'; -$wb['add_header_txt'] = 'Header (fügt "X-Spam: Yes" hinzu)'; -$wb['rewrite_subject_txt'] = 'Betreff (fügt "***SPAM***" am Anfang hinzu)'; +?> diff --git a/interface/lib/lang/dk.lng b/interface/lib/lang/dk.lng index 2f7aeb2790..798d2ccd45 100644 --- a/interface/lib/lang/dk.lng +++ b/interface/lib/lang/dk.lng @@ -146,7 +146,7 @@ $wb['strength_2'] = 'Nogenlunde'; $wb['strength_3'] = 'God'; $wb['strength_4'] = 'Stærk'; $wb['strength_5'] = 'Meget Stærk'; -$wb['weak_password_txt'] = 'Den valgte adgangskode matcher ikke retningslinjerne for sikkerhedsindstillingerne. Det skal være mindst {chars} tegn i længden og have en styrke pÃ¥ \"{strength}\".'; +$wb['weak_password_txt'] = 'Den valgte adgangskode matcher ikke retningslinjerne for sikkerhedsindstillingerne. Det skal være mindst {chars} tegn i længden og have en styrke pÃ¥ \\"{strength}\\".'; $wb['weak_password_length_txt'] = 'Den valgte adgangskode matcher ikke retningslinjerne for sikkerhedsindstillingerne. Det skal være mindst {chars} tegn i længden.'; $wb['security_check1_txt'] = 'Check for sikkerheds tilladelse:'; $wb['security_check2_txt'] = 'mislykkedes.'; diff --git a/interface/lib/lang/el.lng b/interface/lib/lang/el.lng index 53cd56f175..382bf4a758 100644 --- a/interface/lib/lang/el.lng +++ b/interface/lib/lang/el.lng @@ -145,7 +145,7 @@ $wb['strength_2'] = 'Fair'; $wb['strength_3'] = 'Good'; $wb['strength_4'] = 'Strong'; $wb['strength_5'] = 'Very Strong'; -$wb['weak_password_txt'] = 'The chosen password does not match the security guidelines. It has to be at least {chars} chars in length and have a strength of \"{strength}\".'; +$wb['weak_password_txt'] = 'The chosen password does not match the security guidelines. It has to be at least {chars} chars in length and have a strength of \\"{strength}\\".'; $wb['weak_password_length_txt'] = 'The chosen password does not match the security guidelines. It has to be at least {chars} chars in length.'; $wb['security_check1_txt'] = 'Check for security permission:'; $wb['security_check2_txt'] = 'failed.'; diff --git a/interface/lib/lang/es.lng b/interface/lib/lang/es.lng index 8b9bc94ef8..3b1bae0b46 100644 --- a/interface/lib/lang/es.lng +++ b/interface/lib/lang/es.lng @@ -146,7 +146,7 @@ $wb['strength_2'] = 'Aceptable'; $wb['strength_3'] = 'Buena'; $wb['strength_4'] = 'Fuerte'; $wb['strength_5'] = 'Muy fuerte'; -$wb['weak_password_txt'] = 'La contraseña elegida no coincide con las directrices de seguridad. Debe contener al menos {chars} caracteres y tener una fortaleza \"{strength}\".'; +$wb['weak_password_txt'] = 'La contraseña elegida no coincide con las directrices de seguridad. Debe contener al menos {chars} caracteres y tener una fortaleza \\"{strength}\\".'; $wb['weak_password_length_txt'] = 'La contraseña elegida no coincide con las directrices de seguridad. Debe contener al menos {chars} caracteres.'; $wb['security_check1_txt'] = 'Verificar permisos de seguridad:'; $wb['security_check2_txt'] = 'ha fallado.'; diff --git a/interface/lib/lang/fi.lng b/interface/lib/lang/fi.lng index 0439142c52..d4c23ca777 100755 --- a/interface/lib/lang/fi.lng +++ b/interface/lib/lang/fi.lng @@ -145,7 +145,7 @@ $wb['strength_2'] = 'Fair'; $wb['strength_3'] = 'Good'; $wb['strength_4'] = 'Strong'; $wb['strength_5'] = 'Very Strong'; -$wb['weak_password_txt'] = 'The chosen password does not match the security guidelines. It has to be at least {chars} chars in length and have a strength of \"{strength}\".'; +$wb['weak_password_txt'] = 'The chosen password does not match the security guidelines. It has to be at least {chars} chars in length and have a strength of \\"{strength}\\".'; $wb['weak_password_length_txt'] = 'The chosen password does not match the security guidelines. It has to be at least {chars} chars in length.'; $wb['security_check1_txt'] = 'Check for security permission:'; $wb['security_check2_txt'] = 'failed.'; diff --git a/interface/lib/lang/hr.lng b/interface/lib/lang/hr.lng index c6a1b74d81..310371be47 100644 --- a/interface/lib/lang/hr.lng +++ b/interface/lib/lang/hr.lng @@ -145,7 +145,7 @@ $wb['strength_2'] = 'Dobro'; $wb['strength_3'] = 'Bolje'; $wb['strength_4'] = 'Jako'; $wb['strength_5'] = 'OdliÄno'; -$wb['weak_password_txt'] = 'UneÅ¡ena Å¡ifra nije dobra. Mora biti dugaÄka barem {chars} znakova i jaÄine \"{strength}\".'; +$wb['weak_password_txt'] = 'UneÅ¡ena Å¡ifra nije dobra. Mora biti dugaÄka barem {chars} znakova i jaÄine \\"{strength}\\".'; $wb['weak_password_length_txt'] = 'UneÅ¡ena Å¡ifra nije dobra. Mora biti dugaÄka barem {chars} znakova.'; $wb['security_check1_txt'] = 'Provjerite sigurnosne dozvole:'; $wb['security_check2_txt'] = 'greÅ¡ka.'; diff --git a/interface/lib/lang/hu.lng b/interface/lib/lang/hu.lng index 1ef741d6a2..dd4cce79b3 100644 --- a/interface/lib/lang/hu.lng +++ b/interface/lib/lang/hu.lng @@ -145,7 +145,7 @@ $wb['strength_2'] = 'Fair'; $wb['strength_3'] = 'Good'; $wb['strength_4'] = 'Strong'; $wb['strength_5'] = 'Very Strong'; -$wb['weak_password_txt'] = 'The chosen password does not match the security guidelines. It has to be at least {chars} chars in length and have a strength of \"{strength}\".'; +$wb['weak_password_txt'] = 'The chosen password does not match the security guidelines. It has to be at least {chars} chars in length and have a strength of \\"{strength}\\".'; $wb['weak_password_length_txt'] = 'The chosen password does not match the security guidelines. It has to be at least {chars} chars in length.'; $wb['security_check1_txt'] = 'Check for security permission:'; $wb['security_check2_txt'] = 'failed.'; diff --git a/interface/lib/lang/id.lng b/interface/lib/lang/id.lng index 6483418b3e..bd90fd5a1b 100644 --- a/interface/lib/lang/id.lng +++ b/interface/lib/lang/id.lng @@ -145,7 +145,7 @@ $wb['strength_2'] = 'Fair'; $wb['strength_3'] = 'Good'; $wb['strength_4'] = 'Strong'; $wb['strength_5'] = 'Very Strong'; -$wb['weak_password_txt'] = 'The chosen password does not match the security guidelines. It has to be at least {chars} chars in length and have a strength of \"{strength}\".'; +$wb['weak_password_txt'] = 'The chosen password does not match the security guidelines. It has to be at least {chars} chars in length and have a strength of \\"{strength}\\".'; $wb['weak_password_length_txt'] = 'The chosen password does not match the security guidelines. It has to be at least {chars} chars in length.'; $wb['security_check1_txt'] = 'Check for security permission:'; $wb['security_check2_txt'] = 'failed.'; diff --git a/interface/lib/lang/it.lng b/interface/lib/lang/it.lng index 332cd1ab9f..33d16c3d5f 100644 --- a/interface/lib/lang/it.lng +++ b/interface/lib/lang/it.lng @@ -138,7 +138,7 @@ $wb['strength_2'] = 'Mediocre'; $wb['strength_3'] = 'Buono'; $wb['strength_4'] = 'Forte'; $wb['strength_5'] = 'Molto forte'; -$wb['weak_password_txt'] = 'La password indicata non segue le impostazioni di sicurezza. Deve essere lunga almeno {chars} caratteri ed avere un livello di sicurezza pari a \"{strength}\".'; +$wb['weak_password_txt'] = 'La password indicata non segue le impostazioni di sicurezza. Deve essere lunga almeno {chars} caratteri ed avere un livello di sicurezza pari a \\"{strength}\\".'; $wb['weak_password_length_txt'] = 'La password indicata non segue le impostazioni di sicurezza. Deve essere lunga almeno {chars} caratteri.'; $wb['security_check1_txt'] = 'Verifica permessi di sicurezza:'; $wb['security_check2_txt'] = 'fallito.'; diff --git a/interface/lib/lang/ja.lng b/interface/lib/lang/ja.lng index 5f8b20add4..2a56e77399 100644 --- a/interface/lib/lang/ja.lng +++ b/interface/lib/lang/ja.lng @@ -145,7 +145,7 @@ $wb['strength_2'] = 'Fair'; $wb['strength_3'] = 'Good'; $wb['strength_4'] = 'Strong'; $wb['strength_5'] = 'Very Strong'; -$wb['weak_password_txt'] = 'The chosen password does not match the security guidelines. It has to be at least {chars} chars in length and have a strength of \"{strength}\".'; +$wb['weak_password_txt'] = 'The chosen password does not match the security guidelines. It has to be at least {chars} chars in length and have a strength of \\"{strength}\\".'; $wb['weak_password_length_txt'] = 'The chosen password does not match the security guidelines. It has to be at least {chars} chars in length.'; $wb['security_check1_txt'] = 'Check for security permission:'; $wb['security_check2_txt'] = 'failed.'; diff --git a/interface/lib/lang/nl.lng b/interface/lib/lang/nl.lng index 561e4cdb76..888f9c0200 100644 --- a/interface/lib/lang/nl.lng +++ b/interface/lib/lang/nl.lng @@ -145,7 +145,7 @@ $wb['strength_2'] = 'Fair'; $wb['strength_3'] = 'Good'; $wb['strength_4'] = 'Strong'; $wb['strength_5'] = 'Very Strong'; -$wb['weak_password_txt'] = 'The chosen password does not match the security guidelines. It has to be at least {chars} chars in length and have a strength of \"{strength}\".'; +$wb['weak_password_txt'] = 'The chosen password does not match the security guidelines. It has to be at least {chars} chars in length and have a strength of \\"{strength}\\".'; $wb['weak_password_length_txt'] = 'The chosen password does not match the security guidelines. It has to be at least {chars} chars in length.'; $wb['security_check1_txt'] = 'Check for security permission:'; $wb['security_check2_txt'] = 'failed.'; diff --git a/interface/lib/lang/pl.lng b/interface/lib/lang/pl.lng index abbb98ee14..b5b62c816d 100644 --- a/interface/lib/lang/pl.lng +++ b/interface/lib/lang/pl.lng @@ -145,7 +145,7 @@ $wb['strength_2'] = 'Fair'; $wb['strength_3'] = 'Good'; $wb['strength_4'] = 'Strong'; $wb['strength_5'] = 'Very Strong'; -$wb['weak_password_txt'] = 'The chosen password does not match the security guidelines. It has to be at least {chars} chars in length and have a strength of \"{strength}\".'; +$wb['weak_password_txt'] = 'The chosen password does not match the security guidelines. It has to be at least {chars} chars in length and have a strength of \\"{strength}\\".'; $wb['weak_password_length_txt'] = 'The chosen password does not match the security guidelines. It has to be at least {chars} chars in length.'; $wb['security_check1_txt'] = 'Check for security permission:'; $wb['security_check2_txt'] = 'failed.'; diff --git a/interface/lib/lang/pt.lng b/interface/lib/lang/pt.lng index 026aff80a8..7845520a5b 100644 --- a/interface/lib/lang/pt.lng +++ b/interface/lib/lang/pt.lng @@ -145,7 +145,7 @@ $wb['strength_2'] = 'Fair'; $wb['strength_3'] = 'Good'; $wb['strength_4'] = 'Strong'; $wb['strength_5'] = 'Very Strong'; -$wb['weak_password_txt'] = 'The chosen password does not match the security guidelines. It has to be at least {chars} chars in length and have a strength of \"{strength}\".'; +$wb['weak_password_txt'] = 'The chosen password does not match the security guidelines. It has to be at least {chars} chars in length and have a strength of \\"{strength}\\".'; $wb['weak_password_length_txt'] = 'The chosen password does not match the security guidelines. It has to be at least {chars} chars in length.'; $wb['security_check1_txt'] = 'Check for security permission:'; $wb['security_check2_txt'] = 'failed.'; diff --git a/interface/lib/lang/ro.lng b/interface/lib/lang/ro.lng index bfbd725dab..613f2377a1 100644 --- a/interface/lib/lang/ro.lng +++ b/interface/lib/lang/ro.lng @@ -145,7 +145,7 @@ $wb['strength_2'] = 'Fair'; $wb['strength_3'] = 'Good'; $wb['strength_4'] = 'Strong'; $wb['strength_5'] = 'Very Strong'; -$wb['weak_password_txt'] = 'The chosen password does not match the security guidelines. It has to be at least {chars} chars in length and have a strength of \"{strength}\".'; +$wb['weak_password_txt'] = 'The chosen password does not match the security guidelines. It has to be at least {chars} chars in length and have a strength of \\"{strength}\\".'; $wb['weak_password_length_txt'] = 'The chosen password does not match the security guidelines. It has to be at least {chars} chars in length.'; $wb['security_check1_txt'] = 'Check for security permission:'; $wb['security_check2_txt'] = 'failed.'; diff --git a/interface/lib/lang/ru.lng b/interface/lib/lang/ru.lng index 823ef44c79..e5e8ce6278 100644 --- a/interface/lib/lang/ru.lng +++ b/interface/lib/lang/ru.lng @@ -145,7 +145,7 @@ $wb['strength_2'] = 'Средний'; $wb['strength_3'] = 'Хороший'; $wb['strength_4'] = 'Стойкий'; $wb['strength_5'] = 'Очень Ñтойкий'; -$wb['weak_password_txt'] = 'Выбранный пароль не ÑоответÑтвует требованиÑм безопаÑноÑти. Он должен быть как минимум {chars} Ñимволов в длину и ÑтойкоÑÑ‚ÑŒ \"{strength}\".'; +$wb['weak_password_txt'] = 'Выбранный пароль не ÑоответÑтвует требованиÑм безопаÑноÑти. Он должен быть как минимум {chars} Ñимволов в длину и ÑтойкоÑÑ‚ÑŒ \\"{strength}\\".'; $wb['weak_password_length_txt'] = 'Выбранный пароль не ÑоответÑтвует требованиÑм безопаÑноÑти. Он должен быть как минимум {chars} Ñимволов в длину.'; $wb['security_check1_txt'] = 'Проверка разрешений безопаÑноÑти:'; $wb['security_check2_txt'] = 'не удалоÑÑŒ.'; diff --git a/interface/lib/lang/se.lng b/interface/lib/lang/se.lng index 4f67c28024..b6767144df 100644 --- a/interface/lib/lang/se.lng +++ b/interface/lib/lang/se.lng @@ -145,7 +145,7 @@ $wb['strength_2'] = 'SÃ¥där'; $wb['strength_3'] = 'Bra'; $wb['strength_4'] = 'Starkt'; $wb['strength_5'] = 'Väldigt starkt'; -$wb['weak_password_txt'] = 'The chosen password does not match the security guidelines. It has to be at least {chars} chars in length and have a strength of \"{strength}\".'; +$wb['weak_password_txt'] = 'The chosen password does not match the security guidelines. It has to be at least {chars} chars in length and have a strength of \\"{strength}\\".'; $wb['weak_password_length_txt'] = 'The chosen password does not match the security guidelines. It has to be at least {chars} chars in length.'; $wb['security_check1_txt'] = 'Check for security permission:'; $wb['security_check2_txt'] = 'failed.'; diff --git a/interface/lib/lang/sk.lng b/interface/lib/lang/sk.lng index b647226e34..6b4ef7676f 100644 --- a/interface/lib/lang/sk.lng +++ b/interface/lib/lang/sk.lng @@ -145,7 +145,7 @@ $wb['strength_2'] = 'Fair'; $wb['strength_3'] = 'Good'; $wb['strength_4'] = 'Strong'; $wb['strength_5'] = 'Very Strong'; -$wb['weak_password_txt'] = 'The chosen password does not match the security guidelines. It has to be at least {chars} chars in length and have a strength of \"{strength}\".'; +$wb['weak_password_txt'] = 'The chosen password does not match the security guidelines. It has to be at least {chars} chars in length and have a strength of \\"{strength}\\".'; $wb['weak_password_length_txt'] = 'The chosen password does not match the security guidelines. It has to be at least {chars} chars in length.'; $wb['security_check1_txt'] = 'Check for security permission:'; $wb['security_check2_txt'] = 'failed.'; diff --git a/interface/lib/lang/tr.lng b/interface/lib/lang/tr.lng index 551fae8d86..115bc890bb 100644 --- a/interface/lib/lang/tr.lng +++ b/interface/lib/lang/tr.lng @@ -146,7 +146,7 @@ $wb['strength_2'] = 'Yeterli'; $wb['strength_3'] = 'Ä°yi'; $wb['strength_4'] = 'Güçlü'; $wb['strength_5'] = 'Çok Güçlü'; -$wb['weak_password_txt'] = 'Yazdığınız parola güvenlik ilkesine uygun deÄŸil. Parola en az {chars} karakter uzunluÄŸunda ve \"{strength}\" güçlüğünde olmalı.'; +$wb['weak_password_txt'] = 'Yazdığınız parola güvenlik ilkesine uygun deÄŸil. Parola en az {chars} karakter uzunluÄŸunda ve \\"{strength}\\" güçlüğünde olmalı.'; $wb['weak_password_length_txt'] = 'Yazdığınız parola güvenlik ilkesine uygun deÄŸil. Parola en az {chars} karakter uzunluÄŸunda olmalı.'; $wb['security_check1_txt'] = 'Güvenlik iznini denetle:'; $wb['security_check2_txt'] = 'baÅŸarısız.'; diff --git a/interface/web/admin/lib/lang/ar_server_config.lng b/interface/web/admin/lib/lang/ar_server_config.lng index 55d3f8949c..bccdcc42c0 100644 --- a/interface/web/admin/lib/lang/ar_server_config.lng +++ b/interface/web/admin/lib/lang/ar_server_config.lng @@ -296,4 +296,8 @@ $wb['php_default_name_txt'] = 'Description Default PHP-Version'; $wb['php_default_name_error_empty'] = 'Description Default PHP-Version must not be empty'; $wb['error_mailbox_message_size_txt'] = 'Mailbox size must be larger or equal to message size'; $wb['php_fpm_reload_mode_txt'] = 'PHP-FPM reload mode'; +$wb['content_filter_txt'] = 'Content Filter'; +$wb['rspamd_url_txt'] = 'Rspamd URL'; +$wb['rspamd_user_txt'] = 'Rspamd User'; +$wb['rspamd_password_txt'] = 'Rspamd Password'; ?> diff --git a/interface/web/admin/lib/lang/ar_system_config.lng b/interface/web/admin/lib/lang/ar_system_config.lng index b650929064..0a830014d8 100644 --- a/interface/web/admin/lib/lang/ar_system_config.lng +++ b/interface/web/admin/lib/lang/ar_system_config.lng @@ -67,7 +67,7 @@ $wb['customer_no_template_error_regex_txt'] = 'The customer No. template contain $wb['customer_no_start_txt'] = 'Customer No. start value'; $wb['customer_no_counter_txt'] = 'Customer No. counter'; $wb['session_timeout_txt'] = 'Session timeout (minutes)'; -$wb['session_allow_endless_txt'] = 'Enable \"stay logged in\"'; +$wb['session_allow_endless_txt'] = 'Enable \\"stay logged in\\"'; $wb['No'] = 'No'; $wb['min_password_length_txt'] = 'Minimum password length'; $wb['min_password_strength_txt'] = 'Minimum password strength'; diff --git a/interface/web/admin/lib/lang/ar_users.lng b/interface/web/admin/lib/lang/ar_users.lng index 9d9923b631..dcbc4f4727 100644 --- a/interface/web/admin/lib/lang/ar_users.lng +++ b/interface/web/admin/lib/lang/ar_users.lng @@ -29,7 +29,7 @@ $wb['generate_password_txt'] = 'Generate Password'; $wb['repeat_password_txt'] = 'Repeat Password'; $wb['password_mismatch_txt'] = 'The passwords do not match.'; $wb['password_match_txt'] = 'The passwords do match.'; -$wb['username_error_collision'] = 'The username may not be web or web plus a number.\"'; +$wb['username_error_collision'] = 'The username may not be web or web plus a number.\\"'; $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'; $wb['no_user_insert'] = 'CP-Users of type -user- get added and updated automatically when you add a client or reseller.'; diff --git a/interface/web/admin/lib/lang/bg_server_config.lng b/interface/web/admin/lib/lang/bg_server_config.lng index 6b63770459..39531461c3 100644 --- a/interface/web/admin/lib/lang/bg_server_config.lng +++ b/interface/web/admin/lib/lang/bg_server_config.lng @@ -296,4 +296,8 @@ $wb['php_default_name_txt'] = 'Description Default PHP-Version'; $wb['php_default_name_error_empty'] = 'Description Default PHP-Version must not be empty'; $wb['error_mailbox_message_size_txt'] = 'Mailbox size must be larger or equal to message size'; $wb['php_fpm_reload_mode_txt'] = 'PHP-FPM reload mode'; +$wb['content_filter_txt'] = 'Content Filter'; +$wb['rspamd_url_txt'] = 'Rspamd URL'; +$wb['rspamd_user_txt'] = 'Rspamd User'; +$wb['rspamd_password_txt'] = 'Rspamd Password'; ?> diff --git a/interface/web/admin/lib/lang/bg_system_config.lng b/interface/web/admin/lib/lang/bg_system_config.lng index 15d5338704..130cb596aa 100644 --- a/interface/web/admin/lib/lang/bg_system_config.lng +++ b/interface/web/admin/lib/lang/bg_system_config.lng @@ -67,7 +67,7 @@ $wb['customer_no_template_error_regex_txt'] = 'The customer No. template contain $wb['customer_no_start_txt'] = 'Customer No. start value'; $wb['customer_no_counter_txt'] = 'Customer No. counter'; $wb['session_timeout_txt'] = 'Session timeout (minutes)'; -$wb['session_allow_endless_txt'] = 'Enable \"stay logged in\"'; +$wb['session_allow_endless_txt'] = 'Enable \\"stay logged in\\"'; $wb['No'] = 'No'; $wb['min_password_length_txt'] = 'Minimum password length'; $wb['min_password_strength_txt'] = 'Minimum password strength'; diff --git a/interface/web/admin/lib/lang/bg_users.lng b/interface/web/admin/lib/lang/bg_users.lng index e36d2d9d32..e8dc631a59 100644 --- a/interface/web/admin/lib/lang/bg_users.lng +++ b/interface/web/admin/lib/lang/bg_users.lng @@ -29,7 +29,7 @@ $wb['generate_password_txt'] = 'Generate Password'; $wb['repeat_password_txt'] = 'Repeat Password'; $wb['password_mismatch_txt'] = 'The passwords do not match.'; $wb['password_match_txt'] = 'The passwords do match.'; -$wb['username_error_collision'] = 'The username may not be web or web plus a number.\"'; +$wb['username_error_collision'] = 'The username may not be web or web plus a number.\\"'; $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'; $wb['no_user_insert'] = 'CP-Users of type -user- get added and updated automatically when you add a client or reseller.'; diff --git a/interface/web/admin/lib/lang/br_server_config.lng b/interface/web/admin/lib/lang/br_server_config.lng index 088dac70be..25ffb06996 100644 --- a/interface/web/admin/lib/lang/br_server_config.lng +++ b/interface/web/admin/lib/lang/br_server_config.lng @@ -296,4 +296,8 @@ $wb['php_default_name_txt'] = 'Description Default PHP-Version'; $wb['error_mailbox_message_size_txt'] = 'Mailbox size must be larger or equal to message size'; $wb['php_default_name_error_empty'] = 'Description Default PHP-Version must not be empty'; $wb['php_fpm_reload_mode_txt'] = 'PHP-FPM reload mode'; +$wb['content_filter_txt'] = 'Content Filter'; +$wb['rspamd_url_txt'] = 'Rspamd URL'; +$wb['rspamd_user_txt'] = 'Rspamd User'; +$wb['rspamd_password_txt'] = 'Rspamd Password'; ?> diff --git a/interface/web/admin/lib/lang/br_system_config.lng b/interface/web/admin/lib/lang/br_system_config.lng index 3d8ea38e14..8688ca53aa 100644 --- a/interface/web/admin/lib/lang/br_system_config.lng +++ b/interface/web/admin/lib/lang/br_system_config.lng @@ -67,7 +67,7 @@ $wb['customer_no_template_error_regex_txt'] = 'O número do gabarito do cliente $wb['customer_no_start_txt'] = 'Valor inicial do código do cliente'; $wb['customer_no_counter_txt'] = 'Contador de código do cliente'; $wb['session_timeout_txt'] = 'Duração da sessão (minutos)'; -$wb['session_allow_endless_txt'] = 'Habilitar \"Manter-me conectado\"'; +$wb['session_allow_endless_txt'] = 'Habilitar \\"Manter-me conectado\\"'; $wb['min_password_length_txt'] = 'Comprimento mÃnimo da senha'; $wb['min_password_strength_txt'] = 'Dificuldade mÃnima da senha'; $wb['company_name_txt'] = 'Nome da empresa no tÃtulo da página'; diff --git a/interface/web/admin/lib/lang/ca_firewall.lng b/interface/web/admin/lib/lang/ca_firewall.lng index 0e08215f7a..06a51c80cf 100644 --- a/interface/web/admin/lib/lang/ca_firewall.lng +++ b/interface/web/admin/lib/lang/ca_firewall.lng @@ -6,6 +6,6 @@ $wb['tcp_port_help_txt'] = 'Separated by comma'; $wb['udp_port_help_txt'] = 'Separated by comma'; $wb['active_txt'] = 'Active'; $wb['firewall_error_unique'] = 'There is already a firewall record for this server.'; -$wb['tcp_ports_error_regex'] = 'Character not allowed in tcp port definition. Allowed characters are numbers, \":\" and \",\".'; -$wb['udp_ports_error_regex'] = 'Character not allowed in udp port definition. Allowed characters are numbers, \":\" and \",\".'; +$wb['tcp_ports_error_regex'] = 'Character not allowed in tcp port definition. Allowed characters are numbers, \\":\\" and \\",\\".'; +$wb['udp_ports_error_regex'] = 'Character not allowed in udp port definition. Allowed characters are numbers, \\":\\" and \\",\\".'; ?> diff --git a/interface/web/admin/lib/lang/ca_server_config.lng b/interface/web/admin/lib/lang/ca_server_config.lng index 42fb15c246..14f0b91d3b 100644 --- a/interface/web/admin/lib/lang/ca_server_config.lng +++ b/interface/web/admin/lib/lang/ca_server_config.lng @@ -161,7 +161,7 @@ $wb['do_not_try_rescue_httpd_txt'] = 'Disable HTTPD monitoring'; $wb['do_not_try_rescue_mongodb_txt'] = 'Disable MongoDB monitoring'; $wb['do_not_try_rescue_mysql_txt'] = 'Disable MySQL monitoring'; $wb['do_not_try_rescue_mail_txt'] = 'Disable Email monitoring'; -$wb['rescue_description_txt'] = '<b>Information:</b> If you want to shut down mysql you have to select the \"Disable MySQL monitor\" checkbox and then wait 2-3 minutes.<br>If you do not wait 2-3 minutes, rescue will try to restart mysql!'; +$wb['rescue_description_txt'] = '<b>Information:</b> If you want to shut down mysql you have to select the \\"Disable MySQL monitor\\" checkbox and then wait 2-3 minutes.<br>If you do not wait 2-3 minutes, rescue will try to restart mysql!'; $wb['enable_sni_txt'] = 'Enable SNI'; $wb['set_folder_permissions_on_update_txt'] = 'Set folder permissions on update'; $wb['add_web_users_to_sshusers_group_txt'] = 'Add web users to -sshusers- group'; @@ -296,4 +296,8 @@ $wb['php_default_name_txt'] = 'Description Default PHP-Version'; $wb['php_default_name_error_empty'] = 'Description Default PHP-Version must not be empty'; $wb['error_mailbox_message_size_txt'] = 'Mailbox size must be larger or equal to message size'; $wb['php_fpm_reload_mode_txt'] = 'PHP-FPM reload mode'; +$wb['content_filter_txt'] = 'Content Filter'; +$wb['rspamd_url_txt'] = 'Rspamd URL'; +$wb['rspamd_user_txt'] = 'Rspamd User'; +$wb['rspamd_password_txt'] = 'Rspamd Password'; ?> diff --git a/interface/web/admin/lib/lang/ca_system_config.lng b/interface/web/admin/lib/lang/ca_system_config.lng index 326b3b2750..cc3c11c6c5 100644 --- a/interface/web/admin/lib/lang/ca_system_config.lng +++ b/interface/web/admin/lib/lang/ca_system_config.lng @@ -67,7 +67,7 @@ $wb['customer_no_template_error_regex_txt'] = 'The customer No. template contain $wb['customer_no_start_txt'] = 'Customer No. start value'; $wb['customer_no_counter_txt'] = 'Customer No. counter'; $wb['session_timeout_txt'] = 'Session timeout (minutes)'; -$wb['session_allow_endless_txt'] = 'Enable \"stay logged in\"'; +$wb['session_allow_endless_txt'] = 'Enable \\"stay logged in\\"'; $wb['No'] = 'No'; $wb['min_password_length_txt'] = 'Minimum password length'; $wb['min_password_strength_txt'] = 'Minimum password strength'; diff --git a/interface/web/admin/lib/lang/ca_users.lng b/interface/web/admin/lib/lang/ca_users.lng index 9d9923b631..dcbc4f4727 100644 --- a/interface/web/admin/lib/lang/ca_users.lng +++ b/interface/web/admin/lib/lang/ca_users.lng @@ -29,7 +29,7 @@ $wb['generate_password_txt'] = 'Generate Password'; $wb['repeat_password_txt'] = 'Repeat Password'; $wb['password_mismatch_txt'] = 'The passwords do not match.'; $wb['password_match_txt'] = 'The passwords do match.'; -$wb['username_error_collision'] = 'The username may not be web or web plus a number.\"'; +$wb['username_error_collision'] = 'The username may not be web or web plus a number.\\"'; $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'; $wb['no_user_insert'] = 'CP-Users of type -user- get added and updated automatically when you add a client or reseller.'; diff --git a/interface/web/admin/lib/lang/cz_remote_action.lng b/interface/web/admin/lib/lang/cz_remote_action.lng index 68da1c065d..e1908e2d04 100644 --- a/interface/web/admin/lib/lang/cz_remote_action.lng +++ b/interface/web/admin/lib/lang/cz_remote_action.lng @@ -2,9 +2,9 @@ $wb['select_server_txt'] = 'Zvolit server'; $wb['btn_do_txt'] = 'Provést akci'; $wb['do_osupdate_caption'] = 'Aktualizace operaÄnÃho systému na vzdáleném serveru.'; -$wb['do_osupdate_desc'] = 'Tato akce provede \"aptitude -y\" aktualizaci na vybraném serveru.<br><br><strong>POUŽITà TÉTO AKCE NA VLASTNà NEBEZPEČà !</strong>'; +$wb['do_osupdate_desc'] = 'Tato akce provede \\"aptitude -y\\" aktualizaci na vybraném serveru.<br><br><strong>POUŽITà TÉTO AKCE NA VLASTNà NEBEZPEČà !</strong>'; $wb['do_ispcupdate_caption'] = 'Provedenà ISPConfig 3 - aktualizace na vzdáleném serveru'; -$wb['do_ispcupdate_desc'] = 'Tato akce provede \"ISPConfig 3\" aktualizaci na vaÅ¡em vybraném serveru.<br><br><strong>POUŽITà TÉTO AKCE NA VLASTNà NEBEZPEČà !</strong>'; +$wb['do_ispcupdate_desc'] = 'Tato akce provede \\"ISPConfig 3\\" aktualizaci na vaÅ¡em vybraném serveru.<br><br><strong>POUŽITà TÉTO AKCE NA VLASTNà NEBEZPEČà !</strong>'; $wb['action_scheduled'] = 'Akce je naplánována na provedenÃ'; $wb['select_all_server'] = 'VÅ¡echny servery'; $wb['ispconfig_update_title'] = 'ISPConfig pokyny k aktualizaci'; diff --git a/interface/web/admin/lib/lang/cz_server_config.lng b/interface/web/admin/lib/lang/cz_server_config.lng index 40af41289a..a97d78b8eb 100644 --- a/interface/web/admin/lib/lang/cz_server_config.lng +++ b/interface/web/admin/lib/lang/cz_server_config.lng @@ -143,7 +143,7 @@ $wb['php_fpm_socket_dir_error_empty'] = 'PHP-FPM adresář pro socket je prázdn $wb['try_rescue_txt'] = 'Povolit monitorovánà služeb a restartovat pÅ™i selhánÃ'; $wb['do_not_try_rescue_mysql_txt'] = 'Zakázat MySQL monitorovánÃ'; $wb['do_not_try_rescue_mail_txt'] = 'Zakázat E-mail monitorovánÃ'; -$wb['rescue_description_txt'] = '<b>Informace:</b> Pokud chcete napÅ™. vypnout MySQL službu zatrhnÄ›te polÃÄko \"Zakázat MySQL monitorovánÃ\" zmÄ›na se provede do 2-3 minut.<br>Pokud nepoÄkáte 2-3 minuty, monitorovánà nastartuje službu MySQL automaticky znovu !'; +$wb['rescue_description_txt'] = '<b>Informace:</b> Pokud chcete napÅ™. vypnout MySQL službu zatrhnÄ›te polÃÄko \\"Zakázat MySQL monitorovánÃ\\" zmÄ›na se provede do 2-3 minut.<br>Pokud nepoÄkáte 2-3 minuty, monitorovánà nastartuje službu MySQL automaticky znovu !'; $wb['enable_sni_txt'] = 'Aktivovat SNI (Server Name Indication)'; $wb['do_not_try_rescue_httpd_txt'] = 'Zakázat HTTPD monitorovánÃ'; $wb['set_folder_permissions_on_update_txt'] = 'Nastavenà oprávnÄ›nà složky pÅ™i aktualizaci'; @@ -296,4 +296,8 @@ $wb['php_default_name_txt'] = 'Description Default PHP-Version'; $wb['php_default_name_error_empty'] = 'Description Default PHP-Version must not be empty'; $wb['error_mailbox_message_size_txt'] = 'Mailbox size must be larger or equal to message size'; $wb['php_fpm_reload_mode_txt'] = 'PHP-FPM reload mode'; +$wb['content_filter_txt'] = 'Content Filter'; +$wb['rspamd_url_txt'] = 'Rspamd URL'; +$wb['rspamd_user_txt'] = 'Rspamd User'; +$wb['rspamd_password_txt'] = 'Rspamd Password'; ?> diff --git a/interface/web/admin/lib/lang/de_server_config.lng b/interface/web/admin/lib/lang/de_server_config.lng index 50b3514564..960381e7c1 100644 --- a/interface/web/admin/lib/lang/de_server_config.lng +++ b/interface/web/admin/lib/lang/de_server_config.lng @@ -299,4 +299,5 @@ $wb['php_fpm_reload_mode_txt'] = 'PHP-FPM reload Modus'; $wb['content_filter_txt'] = 'Content-Filter'; $wb['rspamd_url_txt'] = 'Rspamd-URL'; $wb['rspamd_user_txt'] = 'Rspamd-Benutzer'; -$wb['rspamd_password_txt'] = 'Rspamd-Passwort'; \ No newline at end of file +$wb['rspamd_password_txt'] = 'Rspamd-Passwort'; +?> diff --git a/interface/web/admin/lib/lang/dk_firewall.lng b/interface/web/admin/lib/lang/dk_firewall.lng index 9a20698384..96608b2830 100644 --- a/interface/web/admin/lib/lang/dk_firewall.lng +++ b/interface/web/admin/lib/lang/dk_firewall.lng @@ -6,6 +6,6 @@ $wb['tcp_port_help_txt'] = 'Adskilt af komma'; $wb['udp_port_help_txt'] = 'Adskilt af komma'; $wb['active_txt'] = 'Aktiv'; $wb['firewall_error_unique'] = 'Der er allerede en firewall post for denne server.'; -$wb['tcp_ports_error_regex'] = 'Tegn ikke tilladt i tcp port definition. Tilladt tegn er tal, \":\" og \",\".'; -$wb['udp_ports_error_regex'] = 'Tegn ikke tilladt i udp port definition. Tilladt tegn er tal, \":\" og \",\".'; +$wb['tcp_ports_error_regex'] = 'Tegn ikke tilladt i tcp port definition. Tilladt tegn er tal, \\":\\" og \\",\\".'; +$wb['udp_ports_error_regex'] = 'Tegn ikke tilladt i udp port definition. Tilladt tegn er tal, \\":\\" og \\",\\".'; ?> diff --git a/interface/web/admin/lib/lang/dk_server_config.lng b/interface/web/admin/lib/lang/dk_server_config.lng index a4e0a12d9f..73e7ef1bfd 100644 --- a/interface/web/admin/lib/lang/dk_server_config.lng +++ b/interface/web/admin/lib/lang/dk_server_config.lng @@ -152,7 +152,7 @@ $wb['try_rescue_txt'] = 'Aktiver overvÃ¥gnings service og genstarte ved fejl'; $wb['do_not_try_rescue_httpd_txt'] = 'Deaktiver HTTPD monitoring'; $wb['do_not_try_rescue_mysql_txt'] = 'Deaktiver MySQL monitoring'; $wb['do_not_try_rescue_mail_txt'] = 'Deaktiver E-mail monitoring'; -$wb['rescue_description_txt'] = '<b>Information:</b> Hvis du ønsker nedlukning af mysql skal du vælge \"Deaktiver MySQL monitor\" afkrydsningsfeltet og derefter vente 2-3 minutter.<br>Hvis du ikke vente 2-3 minutter, vil redning forsøge at genstarte mysql!'; +$wb['rescue_description_txt'] = '<b>Information:</b> Hvis du ønsker nedlukning af mysql skal du vælge \\"Deaktiver MySQL monitor\\" afkrydsningsfeltet og derefter vente 2-3 minutter.<br>Hvis du ikke vente 2-3 minutter, vil redning forsøge at genstarte mysql!'; $wb['enable_sni_txt'] = 'Enable SNI'; $wb['set_folder_permissions_on_update_txt'] = 'Indstil mappe tilladelser ved opdatering'; $wb['add_web_users_to_sshusers_group_txt'] = 'Tilføj web-brugere til -sshusers- gruppe'; @@ -296,4 +296,8 @@ $wb['php_default_name_txt'] = 'Description Default PHP-Version'; $wb['php_default_name_error_empty'] = 'Description Default PHP-Version must not be empty'; $wb['error_mailbox_message_size_txt'] = 'Mailbox size must be larger or equal to message size'; $wb['php_fpm_reload_mode_txt'] = 'PHP-FPM reload mode'; +$wb['content_filter_txt'] = 'Content Filter'; +$wb['rspamd_url_txt'] = 'Rspamd URL'; +$wb['rspamd_user_txt'] = 'Rspamd User'; +$wb['rspamd_password_txt'] = 'Rspamd Password'; ?> diff --git a/interface/web/admin/lib/lang/dk_system_config.lng b/interface/web/admin/lib/lang/dk_system_config.lng index 75e55f1eb0..26b0fe7e78 100644 --- a/interface/web/admin/lib/lang/dk_system_config.lng +++ b/interface/web/admin/lib/lang/dk_system_config.lng @@ -64,7 +64,7 @@ $wb['customer_no_template_error_regex_txt'] = 'Kunde Nr. skabelon indeholder ugy $wb['customer_no_start_txt'] = 'Kunde Nr. start værdi'; $wb['customer_no_counter_txt'] = 'Kunde Nr. tæller'; $wb['session_timeout_txt'] = 'Session timeout (minutter)'; -$wb['session_allow_endless_txt'] = 'Aktiver \"forbliv logget ind\"'; +$wb['session_allow_endless_txt'] = 'Aktiver \\"forbliv logget ind\\"'; $wb['No'] = 'No'; $wb['min_password_length_txt'] = 'Minimum adgangskode længde'; $wb['min_password_strength_txt'] = 'Minimum adgangskode styrke'; diff --git a/interface/web/admin/lib/lang/dk_users.lng b/interface/web/admin/lib/lang/dk_users.lng index a70cc1dbf1..2e86ab4ca9 100644 --- a/interface/web/admin/lib/lang/dk_users.lng +++ b/interface/web/admin/lib/lang/dk_users.lng @@ -29,7 +29,7 @@ $wb['generate_password_txt'] = 'Generer Adgangskode'; $wb['repeat_password_txt'] = 'Gentage Adgangskode'; $wb['password_mismatch_txt'] = 'Adgangskoderne stemmer ikke overens.'; $wb['password_match_txt'] = 'Adgangskoderne stemmer overens.'; -$wb['username_error_collision'] = 'Brugernavn mÃ¥ ikke være web eller web plus et tal.\"'; +$wb['username_error_collision'] = 'Brugernavn mÃ¥ ikke være web eller web plus et tal.\\"'; $wb['client_not_admin_err'] = 'En bruger der hører til en klient kan ikke indstilles til typen: admin'; $wb['lost_password_function_txt'] = 'Forgot password function is available'; $wb['no_user_insert'] = 'CP-Users of type -user- get added and updated automatically when you add a client or reseller.'; diff --git a/interface/web/admin/lib/lang/el_server_config.lng b/interface/web/admin/lib/lang/el_server_config.lng index ae0efc9e31..84992261bb 100644 --- a/interface/web/admin/lib/lang/el_server_config.lng +++ b/interface/web/admin/lib/lang/el_server_config.lng @@ -296,4 +296,8 @@ $wb['php_default_name_txt'] = 'Description Default PHP-Version'; $wb['php_default_name_error_empty'] = 'Description Default PHP-Version must not be empty'; $wb['error_mailbox_message_size_txt'] = 'Mailbox size must be larger or equal to message size'; $wb['php_fpm_reload_mode_txt'] = 'PHP-FPM reload mode'; +$wb['content_filter_txt'] = 'Content Filter'; +$wb['rspamd_url_txt'] = 'Rspamd URL'; +$wb['rspamd_user_txt'] = 'Rspamd User'; +$wb['rspamd_password_txt'] = 'Rspamd Password'; ?> diff --git a/interface/web/admin/lib/lang/el_system_config.lng b/interface/web/admin/lib/lang/el_system_config.lng index 80ddaca144..640d6f00a9 100644 --- a/interface/web/admin/lib/lang/el_system_config.lng +++ b/interface/web/admin/lib/lang/el_system_config.lng @@ -67,7 +67,7 @@ $wb['customer_no_template_error_regex_txt'] = 'The customer No. template contain $wb['customer_no_start_txt'] = 'Customer No. start value'; $wb['customer_no_counter_txt'] = 'Customer No. counter'; $wb['session_timeout_txt'] = 'Session timeout (minutes)'; -$wb['session_allow_endless_txt'] = 'Enable \"stay logged in\"'; +$wb['session_allow_endless_txt'] = 'Enable \\"stay logged in\\"'; $wb['No'] = 'No'; $wb['min_password_length_txt'] = 'Minimum password length'; $wb['min_password_strength_txt'] = 'Minimum password strength'; diff --git a/interface/web/admin/lib/lang/el_users.lng b/interface/web/admin/lib/lang/el_users.lng index e5ce7a8792..f0307b95ec 100644 --- a/interface/web/admin/lib/lang/el_users.lng +++ b/interface/web/admin/lib/lang/el_users.lng @@ -29,7 +29,7 @@ $wb['generate_password_txt'] = 'Generate Password'; $wb['repeat_password_txt'] = 'Repeat Password'; $wb['password_mismatch_txt'] = 'The passwords do not match.'; $wb['password_match_txt'] = 'The passwords do match.'; -$wb['username_error_collision'] = 'The username may not be web or web plus a number.\"'; +$wb['username_error_collision'] = 'The username may not be web or web plus a number.\\"'; $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'; $wb['no_user_insert'] = 'CP-Users of type -user- get added and updated automatically when you add a client or reseller.'; diff --git a/interface/web/admin/lib/lang/es_firewall.lng b/interface/web/admin/lib/lang/es_firewall.lng index db09b57844..81cad3c0aa 100755 --- a/interface/web/admin/lib/lang/es_firewall.lng +++ b/interface/web/admin/lib/lang/es_firewall.lng @@ -4,8 +4,8 @@ $wb['firewall_error_unique'] = 'Ya existe un registro de cortafuegos para este s $wb['server_id_txt'] = 'Servidor'; $wb['tcp_port_help_txt'] = 'Separados por coma'; $wb['tcp_port_txt'] = 'Puertos TCP abiertos'; -$wb['tcp_ports_error_regex'] = 'Caracteres no permitidos en la definición de puertos tcp. Los caracteres permitidos son: números, \":\" y \",\".'; +$wb['tcp_ports_error_regex'] = 'Caracteres no permitidos en la definición de puertos tcp. Los caracteres permitidos son: números, \\":\\" y \\",\\".'; $wb['udp_port_help_txt'] = 'Separados por coma'; $wb['udp_port_txt'] = 'Puertos UDP abiertos'; -$wb['udp_ports_error_regex'] = 'Caracteres no permitidos en la definición de puertos udp. Los caracteres permitidos son: números, \":\" y \",\".'; +$wb['udp_ports_error_regex'] = 'Caracteres no permitidos en la definición de puertos udp. Los caracteres permitidos son: números, \\":\\" y \\",\\".'; ?> diff --git a/interface/web/admin/lib/lang/es_server_config.lng b/interface/web/admin/lib/lang/es_server_config.lng index 01c9978ae1..01350367ae 100755 --- a/interface/web/admin/lib/lang/es_server_config.lng +++ b/interface/web/admin/lib/lang/es_server_config.lng @@ -228,7 +228,7 @@ $wb['reject_sender_login_mismatch_txt'] = 'Rechazar remitente e inicio de sesió $wb['relayhost_password_txt'] = 'Contraseña del servidor de retransmisión'; $wb['relayhost_txt'] = 'Servidor de retransmisión'; $wb['relayhost_user_txt'] = 'Usuario del servidor de retransmisión'; -$wb['rescue_description_txt'] = '<b>Información:</b> Si desea detener el servicio de MySQL debe seleccionar la casilla \"Deshabilitar monitorización de MySQL\" y luego esperar 2-3 minutos.<br>Si no espera 2-3 minutos, el rescatador intentará reiniciar el servicio'; +$wb['rescue_description_txt'] = '<b>Información:</b> Si desea detener el servicio de MySQL debe seleccionar la casilla \\"Deshabilitar monitorización de MySQL\\" y luego esperar 2-3 minutos.<br>Si no espera 2-3 minutos, el rescatador intentará reiniciar el servicio'; $wb['security_level_txt'] = 'Nivel de seguridad'; $wb['server_type_txt'] = 'Tipo de servidor'; $wb['set_folder_permissions_on_update_txt'] = 'Establecer permisos de carpetas al actualizar'; @@ -296,4 +296,8 @@ $wb['php_default_name_txt'] = 'Description Default PHP-Version'; $wb['php_default_name_error_empty'] = 'Description Default PHP-Version must not be empty'; $wb['error_mailbox_message_size_txt'] = 'Mailbox size must be larger or equal to message size'; $wb['php_fpm_reload_mode_txt'] = 'PHP-FPM reload mode'; +$wb['content_filter_txt'] = 'Content Filter'; +$wb['rspamd_url_txt'] = 'Rspamd URL'; +$wb['rspamd_user_txt'] = 'Rspamd User'; +$wb['rspamd_password_txt'] = 'Rspamd Password'; ?> diff --git a/interface/web/admin/lib/lang/es_system_config.lng b/interface/web/admin/lib/lang/es_system_config.lng index b927ab043f..043c52cfdd 100755 --- a/interface/web/admin/lib/lang/es_system_config.lng +++ b/interface/web/admin/lib/lang/es_system_config.lng @@ -7,7 +7,7 @@ $wb['available_dashlets_note_txt'] = 'Componentes disponibles:'; $wb['backups_include_into_web_quota_txt'] = 'Incluir archivos de copia de seguridad en la cuota web.'; $wb['client_dashlets_left_txt'] = 'Componentes del cliente a la izquierda'; $wb['client_dashlets_right_txt'] = 'Componentes del cliente a la derecha'; -$wb['client_username_web_check_disabled_txt'] = 'Desactivar la comprobación de la palabra \"web\" en los nombres de clientes.'; +$wb['client_username_web_check_disabled_txt'] = 'Desactivar la comprobación de la palabra \\"web\\" en los nombres de clientes.'; $wb['company_name_txt'] = 'Nombre de la compañÃa para el tÃtulo de la página'; $wb['custom_login_link_txt'] = 'Enlace personalizado para la página de Inicio de Sesión'; $wb['custom_login_text_txt'] = 'Texto personalizado para la página de Inicio de Sesión'; @@ -51,7 +51,7 @@ $wb['phpmyadmin_url_txt'] = 'Enlace a phpMyAdmin'; $wb['reseller_can_use_options_txt'] = 'El revendedor puede utilizar la pestaña opciones para los sitios webs'; $wb['reseller_dashlets_left_txt'] = 'Componentes de revendedores a la izquierda'; $wb['reseller_dashlets_right_txt'] = 'Componentes de revendedores a la derecha'; -$wb['session_allow_endless_txt'] = 'Habilitar \"mantenerme conectado\"'; +$wb['session_allow_endless_txt'] = 'Habilitar \\"mantenerme conectado\\"'; $wb['session_timeout_txt'] = 'Tiempo lÃmite de sesión (minutos)'; $wb['shelluser_prefix_error_regex'] = 'Carácter no permitido en el prefijo de usuario del shell.'; $wb['shelluser_prefix_txt'] = 'Prefijo del usuario del Shell'; diff --git a/interface/web/admin/lib/lang/fi_server_config.lng b/interface/web/admin/lib/lang/fi_server_config.lng index c1e43b276b..6caf643abe 100755 --- a/interface/web/admin/lib/lang/fi_server_config.lng +++ b/interface/web/admin/lib/lang/fi_server_config.lng @@ -296,4 +296,8 @@ $wb['php_default_name_txt'] = 'Description Default PHP-Version'; $wb['php_default_name_error_empty'] = 'Description Default PHP-Version must not be empty'; $wb['error_mailbox_message_size_txt'] = 'Mailbox size must be larger or equal to message size'; $wb['php_fpm_reload_mode_txt'] = 'PHP-FPM reload mode'; +$wb['content_filter_txt'] = 'Content Filter'; +$wb['rspamd_url_txt'] = 'Rspamd URL'; +$wb['rspamd_user_txt'] = 'Rspamd User'; +$wb['rspamd_password_txt'] = 'Rspamd Password'; ?> diff --git a/interface/web/admin/lib/lang/fi_system_config.lng b/interface/web/admin/lib/lang/fi_system_config.lng index 72e7aaa2e6..c0972c49d8 100644 --- a/interface/web/admin/lib/lang/fi_system_config.lng +++ b/interface/web/admin/lib/lang/fi_system_config.lng @@ -67,7 +67,7 @@ $wb['customer_no_template_error_regex_txt'] = 'The customer No. template contain $wb['customer_no_start_txt'] = 'Customer No. start value'; $wb['customer_no_counter_txt'] = 'Customer No. counter'; $wb['session_timeout_txt'] = 'Session timeout (minutes)'; -$wb['session_allow_endless_txt'] = 'Enable \"stay logged in\"'; +$wb['session_allow_endless_txt'] = 'Enable \\"stay logged in\\"'; $wb['No'] = 'No'; $wb['min_password_length_txt'] = 'Minimum password length'; $wb['min_password_strength_txt'] = 'Minimum password strength'; diff --git a/interface/web/admin/lib/lang/fi_users.lng b/interface/web/admin/lib/lang/fi_users.lng index 4fde01b87c..199601f520 100755 --- a/interface/web/admin/lib/lang/fi_users.lng +++ b/interface/web/admin/lib/lang/fi_users.lng @@ -29,7 +29,7 @@ $wb['generate_password_txt'] = 'Generate Password'; $wb['repeat_password_txt'] = 'Repeat Password'; $wb['password_mismatch_txt'] = 'The passwords do not match.'; $wb['password_match_txt'] = 'The passwords do match.'; -$wb['username_error_collision'] = 'The username may not be web or web plus a number.\"'; +$wb['username_error_collision'] = 'The username may not be web or web plus a number.\\"'; $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'; $wb['no_user_insert'] = 'CP-Users of type -user- get added and updated automatically when you add a client or reseller.'; diff --git a/interface/web/admin/lib/lang/fr_remote_action.lng b/interface/web/admin/lib/lang/fr_remote_action.lng index 0072271d69..bb3443b40a 100644 --- a/interface/web/admin/lib/lang/fr_remote_action.lng +++ b/interface/web/admin/lib/lang/fr_remote_action.lng @@ -8,5 +8,5 @@ $wb['do_ispcupdate_desc'] = 'Cette action met à jour ISPConfig3 sur le serveur $wb['action_scheduled'] = 'L’action est marquée pour exécution'; $wb['select_all_server'] = 'Tout serveur'; $wb['ispconfig_update_title'] = 'ISPConfig update instructions'; -$wb['ispconfig_update_text'] = 'Login as root user on the shell of your server and execute the command<br /><br /> <strong>ispconfig_update.sh</strong><br /><br />to start the ISPConfig update.<br /><br /><a href=\"http://www.faqforge.com/linux/controlpanels/ispconfig3/how-to-update-ispconfig-3/\" target=\"_blank\">Click here for detailed update instructions</a>'; +$wb['ispconfig_update_text'] = 'Login as root user on the shell of your server and execute the command<br /><br /> <strong>ispconfig_update.sh</strong><br /><br />to start the ISPConfig update.<br /><br /><a href=\\"http://www.faqforge.com/linux/controlpanels/ispconfig3/how-to-update-ispconfig-3/\\" target=\\"_blank\\">Click here for detailed update instructions</a>'; ?> diff --git a/interface/web/admin/lib/lang/fr_server_config.lng b/interface/web/admin/lib/lang/fr_server_config.lng index 418f633670..25f7375688 100644 --- a/interface/web/admin/lib/lang/fr_server_config.lng +++ b/interface/web/admin/lib/lang/fr_server_config.lng @@ -296,4 +296,8 @@ $wb['php_default_name_txt'] = 'Description Default PHP-Version'; $wb['php_default_name_error_empty'] = 'Description Default PHP-Version must not be empty'; $wb['error_mailbox_message_size_txt'] = 'Mailbox size must be larger or equal to message size'; $wb['php_fpm_reload_mode_txt'] = 'PHP-FPM reload mode'; +$wb['content_filter_txt'] = 'Content Filter'; +$wb['rspamd_url_txt'] = 'Rspamd URL'; +$wb['rspamd_user_txt'] = 'Rspamd User'; +$wb['rspamd_password_txt'] = 'Rspamd Password'; ?> diff --git a/interface/web/admin/lib/lang/fr_system_config.lng b/interface/web/admin/lib/lang/fr_system_config.lng index df90e03011..18f0dbbed4 100644 --- a/interface/web/admin/lib/lang/fr_system_config.lng +++ b/interface/web/admin/lib/lang/fr_system_config.lng @@ -64,7 +64,7 @@ $wb['customer_no_template_error_regex_txt'] = 'The customer No. template contain $wb['customer_no_start_txt'] = 'Customer No. start value'; $wb['customer_no_counter_txt'] = 'Customer No. counter'; $wb['session_timeout_txt'] = 'Session timeout (minutes)'; -$wb['session_allow_endless_txt'] = 'Enable \"stay logged in\"'; +$wb['session_allow_endless_txt'] = 'Enable \\"stay logged in\\"'; $wb['No'] = 'No'; $wb['min_password_length_txt'] = 'Minimum password length'; $wb['min_password_strength_txt'] = 'Minimum password strength'; diff --git a/interface/web/admin/lib/lang/hr_server_config.lng b/interface/web/admin/lib/lang/hr_server_config.lng index 78d9a57a5b..faf08f4201 100644 --- a/interface/web/admin/lib/lang/hr_server_config.lng +++ b/interface/web/admin/lib/lang/hr_server_config.lng @@ -296,4 +296,8 @@ $wb['php_default_name_txt'] = 'Description Default PHP-Version'; $wb['php_default_name_error_empty'] = 'Description Default PHP-Version must not be empty'; $wb['error_mailbox_message_size_txt'] = 'Mailbox size must be larger or equal to message size'; $wb['php_fpm_reload_mode_txt'] = 'PHP-FPM reload mode'; +$wb['content_filter_txt'] = 'Content Filter'; +$wb['rspamd_url_txt'] = 'Rspamd URL'; +$wb['rspamd_user_txt'] = 'Rspamd User'; +$wb['rspamd_password_txt'] = 'Rspamd Password'; ?> diff --git a/interface/web/admin/lib/lang/hr_system_config.lng b/interface/web/admin/lib/lang/hr_system_config.lng index a8b44528c6..a7735647b1 100644 --- a/interface/web/admin/lib/lang/hr_system_config.lng +++ b/interface/web/admin/lib/lang/hr_system_config.lng @@ -67,7 +67,7 @@ $wb['customer_no_template_error_regex_txt'] = 'The customer No. template contain $wb['customer_no_start_txt'] = 'Customer No. start value'; $wb['customer_no_counter_txt'] = 'Customer No. counter'; $wb['session_timeout_txt'] = 'Session timeout (minutes)'; -$wb['session_allow_endless_txt'] = 'Enable \"stay logged in\"'; +$wb['session_allow_endless_txt'] = 'Enable \\"stay logged in\\"'; $wb['No'] = 'No'; $wb['min_password_length_txt'] = 'Minimum password length'; $wb['min_password_strength_txt'] = 'Minimum password strength'; diff --git a/interface/web/admin/lib/lang/hr_users.lng b/interface/web/admin/lib/lang/hr_users.lng index 52f0bdff34..7be3f968f2 100644 --- a/interface/web/admin/lib/lang/hr_users.lng +++ b/interface/web/admin/lib/lang/hr_users.lng @@ -29,7 +29,7 @@ $wb['generate_password_txt'] = 'Generiraj Å¡ifru'; $wb['repeat_password_txt'] = 'Ponovi Å¡ifru'; $wb['password_mismatch_txt'] = 'Å ifre nisu identiÄne.'; $wb['password_match_txt'] = 'Å ifre su identiÄne.'; -$wb['username_error_collision'] = 'KorisniÄko ime ne može biti web ili web sa brojem.\"'; +$wb['username_error_collision'] = 'KorisniÄko ime ne može biti web ili web sa brojem.\\"'; $wb['client_not_admin_err'] = 'Korisnik koji je u grupi klijenti ne može biti admin'; $wb['lost_password_function_txt'] = 'Forgot password function is available'; $wb['no_user_insert'] = 'CP-Users of type -user- get added and updated automatically when you add a client or reseller.'; diff --git a/interface/web/admin/lib/lang/hr_users_list.lng b/interface/web/admin/lib/lang/hr_users_list.lng index 7725ce2b96..c102e5f7f5 100644 --- a/interface/web/admin/lib/lang/hr_users_list.lng +++ b/interface/web/admin/lib/lang/hr_users_list.lng @@ -4,6 +4,6 @@ $wb['username_txt'] = 'KorisniÄko ime'; $wb['client_id_txt'] = 'Client ID'; $wb['active_txt'] = 'Active'; $wb['add_new_record_txt'] = 'Dodaj klijenta'; -$wb['warning_txt'] = '<b>UPOZORENJE:</b> Ovdje nemojte mijenjati podatke klijenta. Koristite \"Klijent\" i \"PreprodavaÄ\" postavke u Klijent modulu. Mijenjanjem postavki klijenata ili grupa može doći do gubitka podataka!'; +$wb['warning_txt'] = '<b>UPOZORENJE:</b> Ovdje nemojte mijenjati podatke klijenta. Koristite \\"Klijent\\" i \\"PreprodavaÄ\\" postavke u Klijent modulu. Mijenjanjem postavki klijenata ili grupa može doći do gubitka podataka!'; $wb['groups_txt'] = 'Groups'; ?> diff --git a/interface/web/admin/lib/lang/hu_server_config.lng b/interface/web/admin/lib/lang/hu_server_config.lng index c2adb3efb2..6347afb7da 100644 --- a/interface/web/admin/lib/lang/hu_server_config.lng +++ b/interface/web/admin/lib/lang/hu_server_config.lng @@ -296,4 +296,8 @@ $wb['php_default_name_txt'] = 'Description Default PHP-Version'; $wb['php_default_name_error_empty'] = 'Description Default PHP-Version must not be empty'; $wb['error_mailbox_message_size_txt'] = 'Mailbox size must be larger or equal to message size'; $wb['php_fpm_reload_mode_txt'] = 'PHP-FPM reload mode'; +$wb['content_filter_txt'] = 'Content Filter'; +$wb['rspamd_url_txt'] = 'Rspamd URL'; +$wb['rspamd_user_txt'] = 'Rspamd User'; +$wb['rspamd_password_txt'] = 'Rspamd Password'; ?> diff --git a/interface/web/admin/lib/lang/hu_system_config.lng b/interface/web/admin/lib/lang/hu_system_config.lng index e983379e3f..cee497fe19 100644 --- a/interface/web/admin/lib/lang/hu_system_config.lng +++ b/interface/web/admin/lib/lang/hu_system_config.lng @@ -67,7 +67,7 @@ $wb['customer_no_template_error_regex_txt'] = 'The customer No. template contain $wb['customer_no_start_txt'] = 'Customer No. start value'; $wb['customer_no_counter_txt'] = 'Customer No. counter'; $wb['session_timeout_txt'] = 'Session timeout (minutes)'; -$wb['session_allow_endless_txt'] = 'Enable \"stay logged in\"'; +$wb['session_allow_endless_txt'] = 'Enable \\"stay logged in\\"'; $wb['No'] = 'No'; $wb['min_password_length_txt'] = 'Minimum password length'; $wb['min_password_strength_txt'] = 'Minimum password strength'; diff --git a/interface/web/admin/lib/lang/hu_users.lng b/interface/web/admin/lib/lang/hu_users.lng index 05f3554dfd..e2cf25fb79 100644 --- a/interface/web/admin/lib/lang/hu_users.lng +++ b/interface/web/admin/lib/lang/hu_users.lng @@ -29,7 +29,7 @@ $wb['generate_password_txt'] = 'Generate Password'; $wb['repeat_password_txt'] = 'Repeat Password'; $wb['password_mismatch_txt'] = 'The passwords do not match.'; $wb['password_match_txt'] = 'The passwords do match.'; -$wb['username_error_collision'] = 'The username may not be web or web plus a number.\"'; +$wb['username_error_collision'] = 'The username may not be web or web plus a number.\\"'; $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'; $wb['no_user_insert'] = 'CP-Users of type -user- get added and updated automatically when you add a client or reseller.'; diff --git a/interface/web/admin/lib/lang/id_server_config.lng b/interface/web/admin/lib/lang/id_server_config.lng index 36f3cd8535..9a28dff300 100644 --- a/interface/web/admin/lib/lang/id_server_config.lng +++ b/interface/web/admin/lib/lang/id_server_config.lng @@ -296,4 +296,8 @@ $wb['php_default_name_txt'] = 'Description Default PHP-Version'; $wb['php_default_name_error_empty'] = 'Description Default PHP-Version must not be empty'; $wb['error_mailbox_message_size_txt'] = 'Mailbox size must be larger or equal to message size'; $wb['php_fpm_reload_mode_txt'] = 'PHP-FPM reload mode'; +$wb['content_filter_txt'] = 'Content Filter'; +$wb['rspamd_url_txt'] = 'Rspamd URL'; +$wb['rspamd_user_txt'] = 'Rspamd User'; +$wb['rspamd_password_txt'] = 'Rspamd Password'; ?> diff --git a/interface/web/admin/lib/lang/id_system_config.lng b/interface/web/admin/lib/lang/id_system_config.lng index 41dd67fbac..344185b84d 100644 --- a/interface/web/admin/lib/lang/id_system_config.lng +++ b/interface/web/admin/lib/lang/id_system_config.lng @@ -67,7 +67,7 @@ $wb['customer_no_template_error_regex_txt'] = 'The customer No. template contain $wb['customer_no_start_txt'] = 'Customer No. start value'; $wb['customer_no_counter_txt'] = 'Customer No. counter'; $wb['session_timeout_txt'] = 'Session timeout (minutes)'; -$wb['session_allow_endless_txt'] = 'Enable \"stay logged in\"'; +$wb['session_allow_endless_txt'] = 'Enable \\"stay logged in\\"'; $wb['No'] = 'No'; $wb['min_password_length_txt'] = 'Minimum password length'; $wb['min_password_strength_txt'] = 'Minimum password strength'; diff --git a/interface/web/admin/lib/lang/id_users.lng b/interface/web/admin/lib/lang/id_users.lng index f5ae7efea5..f9e961192c 100644 --- a/interface/web/admin/lib/lang/id_users.lng +++ b/interface/web/admin/lib/lang/id_users.lng @@ -29,7 +29,7 @@ $wb['generate_password_txt'] = 'Generate Password'; $wb['repeat_password_txt'] = 'Repeat Password'; $wb['password_mismatch_txt'] = 'The passwords do not match.'; $wb['password_match_txt'] = 'The passwords do match.'; -$wb['username_error_collision'] = 'The username may not be web or web plus a number.\"'; +$wb['username_error_collision'] = 'The username may not be web or web plus a number.\\"'; $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'; $wb['no_user_insert'] = 'CP-Users of type -user- get added and updated automatically when you add a client or reseller.'; diff --git a/interface/web/admin/lib/lang/it_server_config.lng b/interface/web/admin/lib/lang/it_server_config.lng index 766b7fb1ae..3dc37a3c1d 100644 --- a/interface/web/admin/lib/lang/it_server_config.lng +++ b/interface/web/admin/lib/lang/it_server_config.lng @@ -296,4 +296,8 @@ $wb['php_default_name_txt'] = 'Description Default PHP-Version'; $wb['php_default_name_error_empty'] = 'Description Default PHP-Version must not be empty'; $wb['error_mailbox_message_size_txt'] = 'Mailbox size must be larger or equal to message size'; $wb['php_fpm_reload_mode_txt'] = 'PHP-FPM reload mode'; +$wb['content_filter_txt'] = 'Content Filter'; +$wb['rspamd_url_txt'] = 'Rspamd URL'; +$wb['rspamd_user_txt'] = 'Rspamd User'; +$wb['rspamd_password_txt'] = 'Rspamd Password'; ?> diff --git a/interface/web/admin/lib/lang/it_system_config.lng b/interface/web/admin/lib/lang/it_system_config.lng index 35e625bd2a..311b7c957c 100644 --- a/interface/web/admin/lib/lang/it_system_config.lng +++ b/interface/web/admin/lib/lang/it_system_config.lng @@ -64,7 +64,7 @@ $wb['customer_no_template_error_regex_txt'] = 'The customer No. template contain $wb['customer_no_start_txt'] = 'Customer No. start value'; $wb['customer_no_counter_txt'] = 'Customer No. counter'; $wb['session_timeout_txt'] = 'Session timeout (minutes)'; -$wb['session_allow_endless_txt'] = 'Enable \"stay logged in\"'; +$wb['session_allow_endless_txt'] = 'Enable \\"stay logged in\\"'; $wb['No'] = 'No'; $wb['min_password_length_txt'] = 'Minimum password length'; $wb['min_password_strength_txt'] = 'Minimum password strength'; diff --git a/interface/web/admin/lib/lang/it_users.lng b/interface/web/admin/lib/lang/it_users.lng index be1294cdbe..1bde73a67b 100644 --- a/interface/web/admin/lib/lang/it_users.lng +++ b/interface/web/admin/lib/lang/it_users.lng @@ -29,7 +29,7 @@ $wb['generate_password_txt'] = 'Genera Password'; $wb['repeat_password_txt'] = 'Ripeti Password'; $wb['password_mismatch_txt'] = 'Le password non coincidono.'; $wb['password_match_txt'] = 'Le password coincidono.'; -$wb['username_error_collision'] = 'The username may not be web or web plus a number.\"'; +$wb['username_error_collision'] = 'The username may not be web or web plus a number.\\"'; $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'; $wb['no_user_insert'] = 'CP-Users of type -user- get added and updated automatically when you add a client or reseller.'; diff --git a/interface/web/admin/lib/lang/ja_server_config.lng b/interface/web/admin/lib/lang/ja_server_config.lng index ccabb127e6..72bef72c4b 100644 --- a/interface/web/admin/lib/lang/ja_server_config.lng +++ b/interface/web/admin/lib/lang/ja_server_config.lng @@ -296,4 +296,8 @@ $wb['php_default_name_txt'] = 'Description Default PHP-Version'; $wb['php_default_name_error_empty'] = 'Description Default PHP-Version must not be empty'; $wb['error_mailbox_message_size_txt'] = 'Mailbox size must be larger or equal to message size'; $wb['php_fpm_reload_mode_txt'] = 'PHP-FPM reload mode'; +$wb['content_filter_txt'] = 'Content Filter'; +$wb['rspamd_url_txt'] = 'Rspamd URL'; +$wb['rspamd_user_txt'] = 'Rspamd User'; +$wb['rspamd_password_txt'] = 'Rspamd Password'; ?> diff --git a/interface/web/admin/lib/lang/ja_system_config.lng b/interface/web/admin/lib/lang/ja_system_config.lng index 494f90dd3e..aa5cc6a7a3 100644 --- a/interface/web/admin/lib/lang/ja_system_config.lng +++ b/interface/web/admin/lib/lang/ja_system_config.lng @@ -67,7 +67,7 @@ $wb['customer_no_template_error_regex_txt'] = 'The customer No. template contain $wb['customer_no_start_txt'] = 'Customer No. start value'; $wb['customer_no_counter_txt'] = 'Customer No. counter'; $wb['session_timeout_txt'] = 'Session timeout (minutes)'; -$wb['session_allow_endless_txt'] = 'Enable \"stay logged in\"'; +$wb['session_allow_endless_txt'] = 'Enable \\"stay logged in\\"'; $wb['No'] = 'No'; $wb['min_password_length_txt'] = 'Minimum password length'; $wb['min_password_strength_txt'] = 'Minimum password strength'; diff --git a/interface/web/admin/lib/lang/ja_users.lng b/interface/web/admin/lib/lang/ja_users.lng index 2e6ad9fb72..64f8339ffa 100644 --- a/interface/web/admin/lib/lang/ja_users.lng +++ b/interface/web/admin/lib/lang/ja_users.lng @@ -29,7 +29,7 @@ $wb['generate_password_txt'] = 'Generate Password'; $wb['repeat_password_txt'] = 'Repeat Password'; $wb['password_mismatch_txt'] = 'The passwords do not match.'; $wb['password_match_txt'] = 'The passwords do match.'; -$wb['username_error_collision'] = 'The username may not be web or web plus a number.\"'; +$wb['username_error_collision'] = 'The username may not be web or web plus a number.\\"'; $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'; $wb['no_user_insert'] = 'CP-Users of type -user- get added and updated automatically when you add a client or reseller.'; diff --git a/interface/web/admin/lib/lang/nl_server_config.lng b/interface/web/admin/lib/lang/nl_server_config.lng index 187ea86ec1..2884f304ec 100644 --- a/interface/web/admin/lib/lang/nl_server_config.lng +++ b/interface/web/admin/lib/lang/nl_server_config.lng @@ -296,4 +296,8 @@ $wb['php_default_name_txt'] = 'Description Default PHP-Version'; $wb['php_default_name_error_empty'] = 'Description Default PHP-Version must not be empty'; $wb['error_mailbox_message_size_txt'] = 'Mailbox size must be larger or equal to message size'; $wb['php_fpm_reload_mode_txt'] = 'PHP-FPM reload mode'; +$wb['content_filter_txt'] = 'Content Filter'; +$wb['rspamd_url_txt'] = 'Rspamd URL'; +$wb['rspamd_user_txt'] = 'Rspamd User'; +$wb['rspamd_password_txt'] = 'Rspamd Password'; ?> diff --git a/interface/web/admin/lib/lang/nl_system_config.lng b/interface/web/admin/lib/lang/nl_system_config.lng index 89e3ff8e47..44a58b7646 100644 --- a/interface/web/admin/lib/lang/nl_system_config.lng +++ b/interface/web/admin/lib/lang/nl_system_config.lng @@ -67,7 +67,7 @@ $wb['customer_no_template_error_regex_txt'] = 'The customer No. template contain $wb['customer_no_start_txt'] = 'Customer No. start value'; $wb['customer_no_counter_txt'] = 'Customer No. counter'; $wb['session_timeout_txt'] = 'Session timeout (minutes)'; -$wb['session_allow_endless_txt'] = 'Enable \"stay logged in\"'; +$wb['session_allow_endless_txt'] = 'Enable \\"stay logged in\\"'; $wb['No'] = 'No'; $wb['min_password_length_txt'] = 'Minimum password length'; $wb['min_password_strength_txt'] = 'Minimum password strength'; diff --git a/interface/web/admin/lib/lang/nl_users.lng b/interface/web/admin/lib/lang/nl_users.lng index 782bfc5f90..1e6d4ef586 100644 --- a/interface/web/admin/lib/lang/nl_users.lng +++ b/interface/web/admin/lib/lang/nl_users.lng @@ -29,7 +29,7 @@ $wb['generate_password_txt'] = 'Generate Password'; $wb['repeat_password_txt'] = 'Repeat Password'; $wb['password_mismatch_txt'] = 'The passwords do not match.'; $wb['password_match_txt'] = 'The passwords do match.'; -$wb['username_error_collision'] = 'The username may not be web or web plus a number.\"'; +$wb['username_error_collision'] = 'The username may not be web or web plus a number.\\"'; $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'; $wb['no_user_insert'] = 'CP-Users of type -user- get added and updated automatically when you add a client or reseller.'; diff --git a/interface/web/admin/lib/lang/pl_server_config.lng b/interface/web/admin/lib/lang/pl_server_config.lng index a50e27b33e..29cb94e96c 100644 --- a/interface/web/admin/lib/lang/pl_server_config.lng +++ b/interface/web/admin/lib/lang/pl_server_config.lng @@ -296,4 +296,8 @@ $wb['php_default_name_txt'] = 'Description Default PHP-Version'; $wb['php_default_name_error_empty'] = 'Description Default PHP-Version must not be empty'; $wb['error_mailbox_message_size_txt'] = 'Mailbox size must be larger or equal to message size'; $wb['php_fpm_reload_mode_txt'] = 'PHP-FPM reload mode'; +$wb['content_filter_txt'] = 'Content Filter'; +$wb['rspamd_url_txt'] = 'Rspamd URL'; +$wb['rspamd_user_txt'] = 'Rspamd User'; +$wb['rspamd_password_txt'] = 'Rspamd Password'; ?> diff --git a/interface/web/admin/lib/lang/pl_system_config.lng b/interface/web/admin/lib/lang/pl_system_config.lng index bbbbf95ec7..a809251ec1 100644 --- a/interface/web/admin/lib/lang/pl_system_config.lng +++ b/interface/web/admin/lib/lang/pl_system_config.lng @@ -67,7 +67,7 @@ $wb['customer_no_template_error_regex_txt'] = 'The customer No. template contain $wb['customer_no_start_txt'] = 'Customer No. start value'; $wb['customer_no_counter_txt'] = 'Customer No. counter'; $wb['session_timeout_txt'] = 'Session timeout (minutes)'; -$wb['session_allow_endless_txt'] = 'Enable \"stay logged in\"'; +$wb['session_allow_endless_txt'] = 'Enable \\"stay logged in\\"'; $wb['No'] = 'No'; $wb['min_password_length_txt'] = 'Minimum password length'; $wb['min_password_strength_txt'] = 'Minimum password strength'; diff --git a/interface/web/admin/lib/lang/pt_server_config.lng b/interface/web/admin/lib/lang/pt_server_config.lng index 96c16d3a2c..3703c759ed 100644 --- a/interface/web/admin/lib/lang/pt_server_config.lng +++ b/interface/web/admin/lib/lang/pt_server_config.lng @@ -296,4 +296,8 @@ $wb['php_default_name_txt'] = 'Description Default PHP-Version'; $wb['php_default_name_error_empty'] = 'Description Default PHP-Version must not be empty'; $wb['error_mailbox_message_size_txt'] = 'Mailbox size must be larger or equal to message size'; $wb['php_fpm_reload_mode_txt'] = 'PHP-FPM reload mode'; +$wb['content_filter_txt'] = 'Content Filter'; +$wb['rspamd_url_txt'] = 'Rspamd URL'; +$wb['rspamd_user_txt'] = 'Rspamd User'; +$wb['rspamd_password_txt'] = 'Rspamd Password'; ?> diff --git a/interface/web/admin/lib/lang/pt_system_config.lng b/interface/web/admin/lib/lang/pt_system_config.lng index a72ca0e954..6fc26344c0 100644 --- a/interface/web/admin/lib/lang/pt_system_config.lng +++ b/interface/web/admin/lib/lang/pt_system_config.lng @@ -67,7 +67,7 @@ $wb['customer_no_template_error_regex_txt'] = 'The customer No. template contain $wb['customer_no_start_txt'] = 'Customer No. start value'; $wb['customer_no_counter_txt'] = 'Customer No. counter'; $wb['session_timeout_txt'] = 'Session timeout (minutes)'; -$wb['session_allow_endless_txt'] = 'Enable \"stay logged in\"'; +$wb['session_allow_endless_txt'] = 'Enable \\"stay logged in\\"'; $wb['No'] = 'No'; $wb['min_password_length_txt'] = 'Minimum password length'; $wb['min_password_strength_txt'] = 'Minimum password strength'; diff --git a/interface/web/admin/lib/lang/pt_users.lng b/interface/web/admin/lib/lang/pt_users.lng index b53790e6fa..67cfe4f572 100644 --- a/interface/web/admin/lib/lang/pt_users.lng +++ b/interface/web/admin/lib/lang/pt_users.lng @@ -29,7 +29,7 @@ $wb['generate_password_txt'] = 'Generate Password'; $wb['repeat_password_txt'] = 'Repeat Password'; $wb['password_mismatch_txt'] = 'The passwords do not match.'; $wb['password_match_txt'] = 'The passwords do match.'; -$wb['username_error_collision'] = 'The username may not be web or web plus a number.\"'; +$wb['username_error_collision'] = 'The username may not be web or web plus a number.\\"'; $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'; $wb['no_user_insert'] = 'CP-Users of type -user- get added and updated automatically when you add a client or reseller.'; diff --git a/interface/web/admin/lib/lang/ro_server_config.lng b/interface/web/admin/lib/lang/ro_server_config.lng index 239a87dc74..3251476126 100644 --- a/interface/web/admin/lib/lang/ro_server_config.lng +++ b/interface/web/admin/lib/lang/ro_server_config.lng @@ -296,4 +296,8 @@ $wb['php_default_name_txt'] = 'Description Default PHP-Version'; $wb['php_default_name_error_empty'] = 'Description Default PHP-Version must not be empty'; $wb['error_mailbox_message_size_txt'] = 'Mailbox size must be larger or equal to message size'; $wb['php_fpm_reload_mode_txt'] = 'PHP-FPM reload mode'; +$wb['content_filter_txt'] = 'Content Filter'; +$wb['rspamd_url_txt'] = 'Rspamd URL'; +$wb['rspamd_user_txt'] = 'Rspamd User'; +$wb['rspamd_password_txt'] = 'Rspamd Password'; ?> diff --git a/interface/web/admin/lib/lang/ro_system_config.lng b/interface/web/admin/lib/lang/ro_system_config.lng index 93ccf39477..2a39a454e8 100644 --- a/interface/web/admin/lib/lang/ro_system_config.lng +++ b/interface/web/admin/lib/lang/ro_system_config.lng @@ -67,7 +67,7 @@ $wb['customer_no_template_error_regex_txt'] = 'The customer No. template contain $wb['customer_no_start_txt'] = 'Customer No. start value'; $wb['customer_no_counter_txt'] = 'Customer No. counter'; $wb['session_timeout_txt'] = 'Session timeout (minutes)'; -$wb['session_allow_endless_txt'] = 'Enable \"stay logged in\"'; +$wb['session_allow_endless_txt'] = 'Enable \\"stay logged in\\"'; $wb['No'] = 'No'; $wb['min_password_length_txt'] = 'Minimum password length'; $wb['min_password_strength_txt'] = 'Minimum password strength'; diff --git a/interface/web/admin/lib/lang/ro_users.lng b/interface/web/admin/lib/lang/ro_users.lng index 9d9923b631..dcbc4f4727 100644 --- a/interface/web/admin/lib/lang/ro_users.lng +++ b/interface/web/admin/lib/lang/ro_users.lng @@ -29,7 +29,7 @@ $wb['generate_password_txt'] = 'Generate Password'; $wb['repeat_password_txt'] = 'Repeat Password'; $wb['password_mismatch_txt'] = 'The passwords do not match.'; $wb['password_match_txt'] = 'The passwords do match.'; -$wb['username_error_collision'] = 'The username may not be web or web plus a number.\"'; +$wb['username_error_collision'] = 'The username may not be web or web plus a number.\\"'; $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'; $wb['no_user_insert'] = 'CP-Users of type -user- get added and updated automatically when you add a client or reseller.'; diff --git a/interface/web/admin/lib/lang/ru_firewall.lng b/interface/web/admin/lib/lang/ru_firewall.lng index c30f26f2e8..70beb30437 100644 --- a/interface/web/admin/lib/lang/ru_firewall.lng +++ b/interface/web/admin/lib/lang/ru_firewall.lng @@ -6,6 +6,6 @@ $wb['tcp_port_help_txt'] = 'ПеречиÑлить порты TCP через з $wb['udp_port_help_txt'] = 'ПеречиÑлить порты UDP через запÑтую'; $wb['active_txt'] = 'Ðктивно'; $wb['firewall_error_unique'] = 'Уже еÑÑ‚ÑŒ Ñ‚Ð°ÐºÐ°Ñ Ð·Ð°Ð¿Ð¸ÑÑŒ брандмауÑра Ð´Ð»Ñ Ñтого Ñервера.'; -$wb['tcp_ports_error_regex'] = 'ÐедопуÑтимый Ñимвол в указании tcp порта. Корректные Ñиволы - цифры, \":\" и \",\"'; -$wb['udp_ports_error_regex'] = 'Ðекорректный Ñимвол в указании UDP порта. ДопуÑтимые Ñиволы - цифры, \":\" и \",\"'; +$wb['tcp_ports_error_regex'] = 'ÐедопуÑтимый Ñимвол в указании tcp порта. Корректные Ñиволы - цифры, \\":\\" и \\",\\"'; +$wb['udp_ports_error_regex'] = 'Ðекорректный Ñимвол в указании UDP порта. ДопуÑтимые Ñиволы - цифры, \\":\\" и \\",\\"'; ?> diff --git a/interface/web/admin/lib/lang/ru_server_config.lng b/interface/web/admin/lib/lang/ru_server_config.lng index ca66b325bc..b2f0b407d6 100644 --- a/interface/web/admin/lib/lang/ru_server_config.lng +++ b/interface/web/admin/lib/lang/ru_server_config.lng @@ -152,7 +152,7 @@ $wb['php_fpm_socket_dir_error_empty'] = 'Каталог PHP-FPM Ñокета п $wb['try_rescue_txt'] = 'Включить мониторинг Ñлужбы и перезапуÑк при Ñбое'; $wb['do_not_try_rescue_mysql_txt'] = 'Отключить мониторинг MySQL'; $wb['do_not_try_rescue_mail_txt'] = 'Отключить мониторинг Email'; -$wb['rescue_description_txt'] = '<b>ИнформациÑ:</b> ЕÑли вы хотите выключить MySQL, вы должны уÑтановить флажок \"Отключить мониторинг MySQL\" и подождать 2-3 минуты.<br>ЕÑли вы не подождёте 2-3 минуты, мониторинг будет пытатьÑÑ Ð¿ÐµÑ€ÐµÐ·Ð°Ð¿ÑƒÑтить MySQL!'; +$wb['rescue_description_txt'] = '<b>ИнформациÑ:</b> ЕÑли вы хотите выключить MySQL, вы должны уÑтановить флажок \\"Отключить мониторинг MySQL\\" и подождать 2-3 минуты.<br>ЕÑли вы не подождёте 2-3 минуты, мониторинг будет пытатьÑÑ Ð¿ÐµÑ€ÐµÐ·Ð°Ð¿ÑƒÑтить MySQL!'; $wb['enable_sni_txt'] = 'Включить SNI'; $wb['do_not_try_rescue_httpd_txt'] = 'Отключить мониторинг HTTPD'; $wb['set_folder_permissions_on_update_txt'] = 'УÑтановить Ñ€Ð°Ð·Ñ€ÐµÑˆÐµÐ½Ð¸Ñ Ð´Ð»Ñ Ð¿Ð°Ð¿ÐºÐ¸ на обновлениÑ'; @@ -296,4 +296,8 @@ $wb['php_default_name_txt'] = 'Description Default PHP-Version'; $wb['php_default_name_error_empty'] = 'Description Default PHP-Version must not be empty'; $wb['error_mailbox_message_size_txt'] = 'Mailbox size must be larger or equal to message size'; $wb['php_fpm_reload_mode_txt'] = 'PHP-FPM reload mode'; +$wb['content_filter_txt'] = 'Content Filter'; +$wb['rspamd_url_txt'] = 'Rspamd URL'; +$wb['rspamd_user_txt'] = 'Rspamd User'; +$wb['rspamd_password_txt'] = 'Rspamd Password'; ?> diff --git a/interface/web/admin/lib/lang/ru_system_config.lng b/interface/web/admin/lib/lang/ru_system_config.lng index 52324f3c77..baed497b0e 100644 --- a/interface/web/admin/lib/lang/ru_system_config.lng +++ b/interface/web/admin/lib/lang/ru_system_config.lng @@ -14,7 +14,7 @@ $wb['mailboxlist_webmail_link_txt'] = 'СÑылка на веб-почту в Ñ $wb['webmail_url_txt'] = 'URL веб-почты'; $wb['phpmyadmin_url_txt'] = 'URL PHPMyAdmin'; $wb['use_domain_module_txt'] = 'ИÑпользовать модуль домена, чтобы добавить новые домены'; -$wb['use_domain_module_hint'] = 'При иÑпользовании Ñтого модулÑ, Ваши клиенты Ñмогут выбрать только один из доменов, Ñозданных Ð´Ð»Ñ Ð½Ð¸Ñ… админиÑтратором. Они не могут Ñвободно редактировать поле \"домен\". Чтобы Ñделать Ñти Ð¸Ð·Ð¼ÐµÐ½ÐµÐ½Ð¸Ñ Ð²Ð¸Ð´Ð¸Ð¼Ñ‹Ð¼Ð¸, Ð’Ñ‹ должны выйти и повторно войти в панель поÑле Ð¸Ð·Ð¼ÐµÐ½ÐµÐ½Ð¸Ñ Ñтого значениÑ.'; +$wb['use_domain_module_hint'] = 'При иÑпользовании Ñтого модулÑ, Ваши клиенты Ñмогут выбрать только один из доменов, Ñозданных Ð´Ð»Ñ Ð½Ð¸Ñ… админиÑтратором. Они не могут Ñвободно редактировать поле \\"домен\\". Чтобы Ñделать Ñти Ð¸Ð·Ð¼ÐµÐ½ÐµÐ½Ð¸Ñ Ð²Ð¸Ð´Ð¸Ð¼Ñ‹Ð¼Ð¸, Ð’Ñ‹ должны выйти и повторно войти в панель поÑле Ð¸Ð·Ð¼ÐµÐ½ÐµÐ½Ð¸Ñ Ñтого значениÑ.'; $wb['new_domain_txt'] = 'HTML текÑÑ‚, чтобы Ñоздать новый домен'; $wb['webdavuser_prefix_txt'] = 'ÐŸÑ€ÐµÑ„Ð¸ÐºÑ Ð¿Ð¾Ð»ÑŒÐ·Ð¾Ð²Ð°Ñ‚ÐµÐ»Ñ WebDAV'; $wb['webdavuser_prefix_error_regex'] = 'Ðекорректный Ñимвол в префикÑе Ð¿Ð¾Ð»ÑŒÐ·Ð¾Ð²Ð°Ñ‚ÐµÐ»Ñ WebDAV.'; @@ -67,7 +67,7 @@ $wb['customer_no_template_error_regex_txt'] = 'Шаблон номера Кли $wb['customer_no_start_txt'] = 'Ðачальное значение номера Клиента'; $wb['customer_no_counter_txt'] = 'Счётчик номера Клиента'; $wb['session_timeout_txt'] = 'Тайм-аут ÑеÑÑии (в минутах)'; -$wb['session_allow_endless_txt'] = 'Включить \"оÑтаватьÑÑ Ð² ÑиÑтеме\"'; +$wb['session_allow_endless_txt'] = 'Включить \\"оÑтаватьÑÑ Ð² ÑиÑтеме\\"'; $wb['No'] = 'Ðет'; $wb['min_password_length_txt'] = 'ÐœÐ¸Ð½Ð¸Ð¼Ð°Ð»ÑŒÐ½Ð°Ñ Ð´Ð»Ð¸Ð½Ð° паролÑ'; $wb['min_password_strength_txt'] = 'ÐœÐ¸Ð½Ð¸Ð¼Ð°Ð»ÑŒÐ½Ð°Ñ ÑтойкоÑÑ‚ÑŒ паролÑ'; diff --git a/interface/web/admin/lib/lang/ru_users.lng b/interface/web/admin/lib/lang/ru_users.lng index bd1b8034ff..63f081f917 100644 --- a/interface/web/admin/lib/lang/ru_users.lng +++ b/interface/web/admin/lib/lang/ru_users.lng @@ -29,7 +29,7 @@ $wb['generate_password_txt'] = 'Создать пароль'; $wb['repeat_password_txt'] = 'Повторить пароль'; $wb['password_mismatch_txt'] = 'Пароли не Ñовпадают.'; $wb['password_match_txt'] = 'Ðти пароли Ñовпадают.'; -$wb['username_error_collision'] = 'Ð˜Ð¼Ñ Ð¿Ð¾Ð»ÑŒÐ·Ð¾Ð²Ð°Ñ‚ÐµÐ»Ñ Ð½Ðµ может начинатьÑÑ Ñо Ñлова \"web\" или \"web\" Ð¿Ð»ÑŽÑ Ñ‡Ð¸Ñло.'; +$wb['username_error_collision'] = 'Ð˜Ð¼Ñ Ð¿Ð¾Ð»ÑŒÐ·Ð¾Ð²Ð°Ñ‚ÐµÐ»Ñ Ð½Ðµ может начинатьÑÑ Ñо Ñлова \\"web\\" или \\"web\\" Ð¿Ð»ÑŽÑ Ñ‡Ð¸Ñло.'; $wb['client_not_admin_err'] = 'Пользователь, который принадлежит к клиенту не может быть уÑтановлен тип: admin'; $wb['lost_password_function_txt'] = 'Ð¤ÑƒÐ½ÐºÑ†Ð¸Ñ Ð²Ð¾ÑÑÑ‚Ð°Ð½Ð¾Ð²Ð»ÐµÐ½Ð¸Ñ Ð¿Ð°Ñ€Ð¾Ð»Ñ Ð´Ð¾Ñтупна'; $wb['no_user_insert'] = 'CP-Users of type -user- get added and updated automatically when you add a client or reseller.'; diff --git a/interface/web/admin/lib/lang/se_server_config.lng b/interface/web/admin/lib/lang/se_server_config.lng index c949c052ba..1103baa4d2 100644 --- a/interface/web/admin/lib/lang/se_server_config.lng +++ b/interface/web/admin/lib/lang/se_server_config.lng @@ -296,4 +296,8 @@ $wb['php_default_name_txt'] = 'Description Default PHP-Version'; $wb['php_default_name_error_empty'] = 'Description Default PHP-Version must not be empty'; $wb['error_mailbox_message_size_txt'] = 'Mailbox size must be larger or equal to message size'; $wb['php_fpm_reload_mode_txt'] = 'PHP-FPM reload mode'; +$wb['content_filter_txt'] = 'Content Filter'; +$wb['rspamd_url_txt'] = 'Rspamd URL'; +$wb['rspamd_user_txt'] = 'Rspamd User'; +$wb['rspamd_password_txt'] = 'Rspamd Password'; ?> diff --git a/interface/web/admin/lib/lang/se_system_config.lng b/interface/web/admin/lib/lang/se_system_config.lng index 0c5643bf4f..74ae16734f 100644 --- a/interface/web/admin/lib/lang/se_system_config.lng +++ b/interface/web/admin/lib/lang/se_system_config.lng @@ -67,7 +67,7 @@ $wb['customer_no_template_error_regex_txt'] = 'Kundnummermallen innehÃ¥ller otil $wb['customer_no_start_txt'] = 'Kundnummer startvärde'; $wb['customer_no_counter_txt'] = 'Kundnummer räknare'; $wb['session_timeout_txt'] = 'Session timeout (minuter)'; -$wb['session_allow_endless_txt'] = 'Aktivera \"hÃ¥ll mig inloggad\"'; +$wb['session_allow_endless_txt'] = 'Aktivera \\"hÃ¥ll mig inloggad\\"'; $wb['No'] = 'Nej'; $wb['min_password_length_txt'] = 'Minsta lösenordslängd'; $wb['min_password_strength_txt'] = 'Minsta lösenordsstyrka'; diff --git a/interface/web/admin/lib/lang/sk_server_config.lng b/interface/web/admin/lib/lang/sk_server_config.lng index 709f7b928a..125e0b1ea2 100644 --- a/interface/web/admin/lib/lang/sk_server_config.lng +++ b/interface/web/admin/lib/lang/sk_server_config.lng @@ -296,4 +296,8 @@ $wb['php_default_name_txt'] = 'Description Default PHP-Version'; $wb['php_default_name_error_empty'] = 'Description Default PHP-Version must not be empty'; $wb['error_mailbox_message_size_txt'] = 'Mailbox size must be larger or equal to message size'; $wb['php_fpm_reload_mode_txt'] = 'PHP-FPM reload mode'; +$wb['content_filter_txt'] = 'Content Filter'; +$wb['rspamd_url_txt'] = 'Rspamd URL'; +$wb['rspamd_user_txt'] = 'Rspamd User'; +$wb['rspamd_password_txt'] = 'Rspamd Password'; ?> diff --git a/interface/web/admin/lib/lang/sk_system_config.lng b/interface/web/admin/lib/lang/sk_system_config.lng index 390458886c..90418e87d5 100644 --- a/interface/web/admin/lib/lang/sk_system_config.lng +++ b/interface/web/admin/lib/lang/sk_system_config.lng @@ -67,7 +67,7 @@ $wb['customer_no_template_error_regex_txt'] = 'The customer No. template contain $wb['customer_no_start_txt'] = 'Customer No. start value'; $wb['customer_no_counter_txt'] = 'Customer No. counter'; $wb['session_timeout_txt'] = 'Session timeout (minutes)'; -$wb['session_allow_endless_txt'] = 'Enable \"stay logged in\"'; +$wb['session_allow_endless_txt'] = 'Enable \\"stay logged in\\"'; $wb['No'] = 'No'; $wb['min_password_length_txt'] = 'Minimum password length'; $wb['min_password_strength_txt'] = 'Minimum password strength'; diff --git a/interface/web/admin/lib/lang/sk_users.lng b/interface/web/admin/lib/lang/sk_users.lng index 60a0aa99ec..d71952fa3e 100644 --- a/interface/web/admin/lib/lang/sk_users.lng +++ b/interface/web/admin/lib/lang/sk_users.lng @@ -29,7 +29,7 @@ $wb['generate_password_txt'] = 'Generate Password'; $wb['repeat_password_txt'] = 'Repeat Password'; $wb['password_mismatch_txt'] = 'The passwords do not match.'; $wb['password_match_txt'] = 'The passwords do match.'; -$wb['username_error_collision'] = 'The username may not be web or web plus a number.\"'; +$wb['username_error_collision'] = 'The username may not be web or web plus a number.\\"'; $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'; $wb['no_user_insert'] = 'CP-Users of type -user- get added and updated automatically when you add a client or reseller.'; diff --git a/interface/web/admin/lib/lang/tr_firewall.lng b/interface/web/admin/lib/lang/tr_firewall.lng index 8db312ff05..a45998d4e1 100644 --- a/interface/web/admin/lib/lang/tr_firewall.lng +++ b/interface/web/admin/lib/lang/tr_firewall.lng @@ -6,6 +6,6 @@ $wb['tcp_port_help_txt'] = 'Virgül ile ayırarak yazın'; $wb['udp_port_help_txt'] = 'Virgül ile ayırarak yazın'; $wb['active_txt'] = 'Etkin'; $wb['firewall_error_unique'] = 'Bu sunucu için bir güvenlik duvarı kaydı zaten var.'; -$wb['tcp_ports_error_regex'] = 'TCP kapı açıklamasında karakter kullanılamaz. Yalnız rakam, \":\" ve \",\" karakterleri kullanılabilir.'; -$wb['udp_ports_error_regex'] = 'UDP kapı açıklamasında karakter kullanılamaz. Yalnız rakam, \":\" ve \",\" karakterleri kullanılabilir.'; +$wb['tcp_ports_error_regex'] = 'TCP kapı açıklamasında karakter kullanılamaz. Yalnız rakam, \\":\\" ve \\",\\" karakterleri kullanılabilir.'; +$wb['udp_ports_error_regex'] = 'UDP kapı açıklamasında karakter kullanılamaz. Yalnız rakam, \\":\\" ve \\",\\" karakterleri kullanılabilir.'; ?> diff --git a/interface/web/admin/lib/lang/tr_remote_action.lng b/interface/web/admin/lib/lang/tr_remote_action.lng index 2f124714e1..c067f67e88 100644 --- a/interface/web/admin/lib/lang/tr_remote_action.lng +++ b/interface/web/admin/lib/lang/tr_remote_action.lng @@ -2,11 +2,11 @@ $wb['select_server_txt'] = 'Sunucu Seçin'; $wb['btn_do_txt'] = 'Ä°ÅŸlemi BaÅŸlatın'; $wb['do_osupdate_caption'] = 'Uzak sunucudaki iÅŸletim sistemini güncelleyin'; -$wb['do_osupdate_desc'] = 'Bu iÅŸlem seçilmiÅŸ sunucuda \"aptitude -y upgrade\" komutunu yürütür.<br><br><strong>OLUÅžABÄ°LECEK RÄ°SKLER SÄ°ZE AÄ°TTÄ°R!</strong>'; +$wb['do_osupdate_desc'] = 'Bu iÅŸlem seçilmiÅŸ sunucuda \\"aptitude -y upgrade\\" komutunu yürütür.<br><br><strong>OLUÅžABÄ°LECEK RÄ°SKLER SÄ°ZE AÄ°TTÄ°R!</strong>'; $wb['do_ispcupdate_caption'] = 'Uzak sunucudaki ISPConfig 3 - sürümünü güncelleyin'; $wb['do_ispcupdate_desc'] = 'Bu iÅŸlem seçilmiÅŸ sunucuda ISPConfig3 güncellemesini yürütür.<br><br><strong>OLUÅžABÄ°LECEK RÄ°SKLER SÃœZE AÄ°TTÄ°R!</strong>'; $wb['action_scheduled'] = 'Ä°ÅŸlem yürütülmek üzere zamanlandı'; $wb['select_all_server'] = 'Tüm Sunucularda'; $wb['ispconfig_update_title'] = 'ISPConfig güncelleme yönergeleri'; -$wb['ispconfig_update_text'] = 'Sunucunuzda root kullanıcısı ile bir kabuk oturumu açın ve ISPConfig güncellemesini baÅŸlatmak için<br /><br /> <strong>ispconfig_update.sh</strong><br /><br />komutunu yürütün.<br /><br /><a href=\"http://www.faqforge.com/linux/controlpanels/ispconfig3/how-to-update-ispconfig-3/\" target=\"_blank\">Ayrıntılı güncelleme bilgilerine bakmak için buraya tıklayın</a>'; +$wb['ispconfig_update_text'] = 'Sunucunuzda root kullanıcısı ile bir kabuk oturumu açın ve ISPConfig güncellemesini baÅŸlatmak için<br /><br /> <strong>ispconfig_update.sh</strong><br /><br />komutunu yürütün.<br /><br /><a href=\\"http://www.faqforge.com/linux/controlpanels/ispconfig3/how-to-update-ispconfig-3/\\" target=\\"_blank\\">Ayrıntılı güncelleme bilgilerine bakmak için buraya tıklayın</a>'; ?> diff --git a/interface/web/admin/lib/lang/tr_server_config.lng b/interface/web/admin/lib/lang/tr_server_config.lng index 4abfd909bf..efe24bf3a4 100644 --- a/interface/web/admin/lib/lang/tr_server_config.lng +++ b/interface/web/admin/lib/lang/tr_server_config.lng @@ -152,7 +152,7 @@ $wb['try_rescue_txt'] = 'Hizmetler izlensin ve sorun çıktığında yeniden ba $wb['do_not_try_rescue_httpd_txt'] = 'HTTPD izlenmesin'; $wb['do_not_try_rescue_mysql_txt'] = 'MySQL izlenmesin'; $wb['do_not_try_rescue_mail_txt'] = 'E-posta izlenmesin'; -$wb['rescue_description_txt'] = '<b>Uyarı:</b> mysql sunucusunu kapatmak istiyorsanız \"MySQL izlenmesin\" seçeneÄŸini iÅŸaretleyip 2-3 dakika bekleyin.<br>2-3 dakika beklemezseniz, kurtarma iÅŸlemi mysql sunucusunu yeniden baÅŸlatmaya çalışır!'; +$wb['rescue_description_txt'] = '<b>Uyarı:</b> mysql sunucusunu kapatmak istiyorsanız \\"MySQL izlenmesin\\" seçeneÄŸini iÅŸaretleyip 2-3 dakika bekleyin.<br>2-3 dakika beklemezseniz, kurtarma iÅŸlemi mysql sunucusunu yeniden baÅŸlatmaya çalışır!'; $wb['enable_sni_txt'] = 'SNI Kullanılsın'; $wb['set_folder_permissions_on_update_txt'] = 'Güncellenirken klasör izinleri ayarlansın'; $wb['add_web_users_to_sshusers_group_txt'] = 'Web kullanıcıları -sshusers- grubuna eklensin'; @@ -296,4 +296,8 @@ $wb['php_default_name_txt'] = 'Description Default PHP-Version'; $wb['php_default_name_error_empty'] = 'Description Default PHP-Version must not be empty'; $wb['error_mailbox_message_size_txt'] = 'Mailbox size must be larger or equal to message size'; $wb['php_fpm_reload_mode_txt'] = 'PHP-FPM reload mode'; +$wb['content_filter_txt'] = 'Content Filter'; +$wb['rspamd_url_txt'] = 'Rspamd URL'; +$wb['rspamd_user_txt'] = 'Rspamd User'; +$wb['rspamd_password_txt'] = 'Rspamd Password'; ?> diff --git a/interface/web/admin/lib/lang/tr_system_config.lng b/interface/web/admin/lib/lang/tr_system_config.lng index b4b213697f..c52893f6b4 100644 --- a/interface/web/admin/lib/lang/tr_system_config.lng +++ b/interface/web/admin/lib/lang/tr_system_config.lng @@ -64,7 +64,7 @@ $wb['customer_no_template_error_regex_txt'] = 'Müşteri no kalıbında geçersi $wb['customer_no_start_txt'] = 'Müşteri No BaÅŸlangıç DeÄŸeri'; $wb['customer_no_counter_txt'] = 'Müşteri No Sayacı'; $wb['session_timeout_txt'] = 'Oturum Zaman Aşımı (dakika)'; -$wb['session_allow_endless_txt'] = '\"Oturum açık kalsın\" kullanılabilsin'; +$wb['session_allow_endless_txt'] = '\\"Oturum açık kalsın\\" kullanılabilsin'; $wb['No'] = 'No'; $wb['min_password_length_txt'] = 'En Az Parola UzunluÄŸu'; $wb['min_password_strength_txt'] = 'En Az Parola Güçlüğü'; diff --git a/interface/web/admin/lib/lang/tr_users.lng b/interface/web/admin/lib/lang/tr_users.lng index b639bf9a1d..0029214773 100644 --- a/interface/web/admin/lib/lang/tr_users.lng +++ b/interface/web/admin/lib/lang/tr_users.lng @@ -29,7 +29,7 @@ $wb['generate_password_txt'] = 'Parola OluÅŸtur'; $wb['repeat_password_txt'] = 'Parola Onayı'; $wb['password_mismatch_txt'] = 'Parola ile onayı aynı deÄŸil.'; $wb['password_match_txt'] = 'Parola ile onayı aynı.'; -$wb['username_error_collision'] = 'Kullanıcı adı -web- ya da -web- sözcüğünü izleyen bir sayı ile baÅŸlayamaz.\"'; +$wb['username_error_collision'] = 'Kullanıcı adı -web- ya da -web- sözcüğünü izleyen bir sayı ile baÅŸlayamaz.\\"'; $wb['client_not_admin_err'] = 'Bir müşteriye ait bir kullanıcının tipi admin olarak atanamaz'; $wb['lost_password_function_txt'] = 'Forgot password function is available'; $wb['no_user_insert'] = 'CP-Users of type -user- get added and updated automatically when you add a client or reseller.'; diff --git a/interface/web/client/lib/lang/ar_client.lng b/interface/web/client/lib/lang/ar_client.lng index 4d2bcccef0..71bc0fc1f7 100644 --- a/interface/web/client/lib/lang/ar_client.lng +++ b/interface/web/client/lib/lang/ar_client.lng @@ -141,7 +141,7 @@ $wb['email_error_isemail'] = 'Please enter a valid email address.'; $wb['customer_no_error_unique'] = 'The customer no. must be unique (or empty).'; $wb['paypal_email_error_isemail'] = 'Please enter a valid PayPal email address.'; $wb['paypal_email_txt'] = 'PayPal Email'; -$wb['err_msg_master_tpl_set'] = 'All custom limit settings are ignored if any master template other than \"custom\" is selected.'; +$wb['err_msg_master_tpl_set'] = 'All custom limit settings are ignored if any master template other than \\"custom\\" is selected.'; $wb['aps_limits_txt'] = 'APS Installer Limits'; $wb['limit_aps_txt'] = 'Max. number of APS instances'; $wb['limit_aps_error_notint'] = 'The APS instances limit must be a number.'; diff --git a/interface/web/client/lib/lang/ar_reseller.lng b/interface/web/client/lib/lang/ar_reseller.lng index 553abe0aee..68e8a950f3 100644 --- a/interface/web/client/lib/lang/ar_reseller.lng +++ b/interface/web/client/lib/lang/ar_reseller.lng @@ -159,7 +159,7 @@ $wb['added_date_txt'] = 'Added date'; $wb['limit_domainmodule_error_notint'] = 'Domainmodule limit must be a number.'; $wb['limit_domainmodule_txt'] = 'Domainmodule Limit'; $wb['client_limits_txt'] = 'Client Limits'; -$wb['err_msg_master_tpl_set'] = 'All custom limit settings are ignored if any master template other than \"custom\" is selected.'; +$wb['err_msg_master_tpl_set'] = 'All custom limit settings are ignored if any master template other than \\"custom\\" is selected.'; $wb['btn_save_txt'] = 'Save'; $wb['btn_cancel_txt'] = 'Cancel'; $wb['email_error_empty'] = 'Email is empty'; diff --git a/interface/web/client/lib/lang/bg_client.lng b/interface/web/client/lib/lang/bg_client.lng index 163f677043..36da0a0422 100644 --- a/interface/web/client/lib/lang/bg_client.lng +++ b/interface/web/client/lib/lang/bg_client.lng @@ -141,7 +141,7 @@ $wb['email_error_isemail'] = 'Please enter a valid email address.'; $wb['customer_no_error_unique'] = 'The customer no. must be unique (or empty).'; $wb['paypal_email_error_isemail'] = 'Please enter a valid PayPal email address.'; $wb['paypal_email_txt'] = 'PayPal Email'; -$wb['err_msg_master_tpl_set'] = 'All custom limit settings are ignored if any master template other than \"custom\" is selected.'; +$wb['err_msg_master_tpl_set'] = 'All custom limit settings are ignored if any master template other than \\"custom\\" is selected.'; $wb['aps_limits_txt'] = 'APS Installer Limits'; $wb['limit_aps_txt'] = 'Max. number of APS instances'; $wb['limit_aps_error_notint'] = 'The APS instances limit must be a number.'; diff --git a/interface/web/client/lib/lang/bg_reseller.lng b/interface/web/client/lib/lang/bg_reseller.lng index 7daa4cff22..211b6daf93 100644 --- a/interface/web/client/lib/lang/bg_reseller.lng +++ b/interface/web/client/lib/lang/bg_reseller.lng @@ -159,7 +159,7 @@ $wb['added_date_txt'] = 'Added date'; $wb['limit_domainmodule_error_notint'] = 'Domainmodule limit must be a number.'; $wb['limit_domainmodule_txt'] = 'Domainmodule Limit'; $wb['client_limits_txt'] = 'Client Limits'; -$wb['err_msg_master_tpl_set'] = 'All custom limit settings are ignored if any master template other than \"custom\" is selected.'; +$wb['err_msg_master_tpl_set'] = 'All custom limit settings are ignored if any master template other than \\"custom\\" is selected.'; $wb['btn_save_txt'] = 'Save'; $wb['btn_cancel_txt'] = 'Cancel'; $wb['email_error_empty'] = 'Email is empty'; diff --git a/interface/web/client/lib/lang/br_client.lng b/interface/web/client/lib/lang/br_client.lng index ad9282aa4c..992c1ea2ca 100644 --- a/interface/web/client/lib/lang/br_client.lng +++ b/interface/web/client/lib/lang/br_client.lng @@ -141,7 +141,7 @@ $wb['email_error_isemail'] = 'Por favor, insira um e-mail válido.'; $wb['customer_no_error_unique'] = 'O código do cliente deve ser exclusivo (ou em branco).'; $wb['paypal_email_error_isemail'] = 'Por favor, insira um e-mail do PayPal válido.'; $wb['paypal_email_txt'] = 'e-mail do PayPal'; -$wb['err_msg_master_tpl_set'] = 'Todos as configurações de limites personalizadas são ignoradas se qualquer gabarito mestre ou algum gabarito \"personalizado\" for selecionado.'; +$wb['err_msg_master_tpl_set'] = 'Todos as configurações de limites personalizadas são ignoradas se qualquer gabarito mestre ou algum gabarito \\"personalizado\\" for selecionado.'; $wb['aps_limits_txt'] = 'Limites de apps instalados'; $wb['limit_aps_txt'] = 'Limite de instâncias de apps'; $wb['limit_aps_error_notint'] = 'Limite de instâncias de apps deve ser um número.'; diff --git a/interface/web/client/lib/lang/br_client_template.lng b/interface/web/client/lib/lang/br_client_template.lng index bc7124b16c..4b2ce6555b 100644 --- a/interface/web/client/lib/lang/br_client_template.lng +++ b/interface/web/client/lib/lang/br_client_template.lng @@ -76,7 +76,7 @@ $wb['limit_perl_txt'] = 'Perl disponÃvel'; $wb['limit_ruby_txt'] = 'Ruby disponÃvel'; $wb['limit_python_txt'] = 'Python disponÃvel'; $wb['force_suexec_txt'] = 'Forçar SuEXEC'; -$wb['limit_hterror_txt'] = 'Diretório \"Custom error docs\" disponÃvel'; +$wb['limit_hterror_txt'] = 'Diretório \\"Custom error docs\\" disponÃvel'; $wb['limit_wildcard_txt'] = 'Curingas de subdomÃnios disponÃveis'; $wb['limit_ssl_txt'] = 'SSL disponÃvel'; $wb['web_limits_txt'] = 'Limites web'; diff --git a/interface/web/client/lib/lang/br_reseller.lng b/interface/web/client/lib/lang/br_reseller.lng index 524f875f73..d90d3b15a2 100644 --- a/interface/web/client/lib/lang/br_reseller.lng +++ b/interface/web/client/lib/lang/br_reseller.lng @@ -159,7 +159,7 @@ $wb['added_date_txt'] = 'Data do cadastro'; $wb['limit_domainmodule_error_notint'] = 'Limite de módulos de domÃnio deve ser um número.'; $wb['limit_domainmodule_txt'] = 'Limites de módulos de domÃnio'; $wb['client_limits_txt'] = 'Limite de clientes'; -$wb['err_msg_master_tpl_set'] = 'Todas as configurações personalizadas de limites serão ignoradas se um gabarito mestre ou \"personalizado\" for selecionado.'; +$wb['err_msg_master_tpl_set'] = 'Todas as configurações personalizadas de limites serão ignoradas se um gabarito mestre ou \\"personalizado\\" for selecionado.'; $wb['btn_save_txt'] = 'Salvar'; $wb['btn_cancel_txt'] = 'Cancelar'; $wb['email_error_empty'] = 'e-mail está em branco.'; diff --git a/interface/web/client/lib/lang/ca_client.lng b/interface/web/client/lib/lang/ca_client.lng index 7f460522ff..bfa38a3401 100644 --- a/interface/web/client/lib/lang/ca_client.lng +++ b/interface/web/client/lib/lang/ca_client.lng @@ -139,7 +139,7 @@ $wb['email_error_isemail'] = 'Saisissez une adresse courriel valide.'; $wb['customer_no_error_unique'] = 'Le numéro client doit être unique (ou vide).'; $wb['paypal_email_error_isemail'] = 'Saisissez un compte Paypal valide.'; $wb['paypal_email_txt'] = 'Compte Paypal'; -$wb['err_msg_master_tpl_set'] = 'Les paramètres de limites personnalisés seront ignorés si un modèle maître autre que \"custom\" est sélectionné.'; +$wb['err_msg_master_tpl_set'] = 'Les paramètres de limites personnalisés seront ignorés si un modèle maître autre que \\"custom\\" est sélectionné.'; $wb['aps_limits_txt'] = 'Nombre max d\'Installeur APS'; $wb['limit_aps_txt'] = 'Nombre max d\'instances APS'; $wb['limit_aps_error_notint'] = 'La limite d\'instances APS doit être un nombre'; diff --git a/interface/web/client/lib/lang/ca_reseller.lng b/interface/web/client/lib/lang/ca_reseller.lng index 7125b01a74..f83d3aaff7 100644 --- a/interface/web/client/lib/lang/ca_reseller.lng +++ b/interface/web/client/lib/lang/ca_reseller.lng @@ -156,7 +156,7 @@ $wb['added_date_txt'] = 'Ajouté le'; $wb['limit_domainmodule_error_notint'] = 'Domainmodule limit must be a number.'; $wb['limit_domainmodule_txt'] = 'Domainmodule Limit'; $wb['client_limits_txt'] = 'Client Limits'; -$wb['err_msg_master_tpl_set'] = 'All custom limit settings are ignored if any master template other than \"custom\" is selected.'; +$wb['err_msg_master_tpl_set'] = 'All custom limit settings are ignored if any master template other than \\"custom\\" is selected.'; $wb['contact_firstname_txt'] = 'Contact firstname'; $wb['limit_backup_txt'] = 'Backupfunction available'; $wb['limit_client_error_positive_or_unlimited'] = 'The number of clients must be > 0 or -1 (unlimited)'; diff --git a/interface/web/client/lib/lang/cz_client.lng b/interface/web/client/lib/lang/cz_client.lng index edd366830a..3351ac58e1 100644 --- a/interface/web/client/lib/lang/cz_client.lng +++ b/interface/web/client/lib/lang/cz_client.lng @@ -139,7 +139,7 @@ $wb['email_error_isemail'] = 'Zadejte prosÃm platnou e-mailovou adresu.'; $wb['customer_no_error_unique'] = 'Zákaznické ÄÃslo musà být jedineÄné (nebo prázdné).'; $wb['paypal_email_error_isemail'] = 'Zadejte prosÃm platnou PayPal e-mail addresu.'; $wb['paypal_email_txt'] = 'PayPal e-mail'; -$wb['err_msg_master_tpl_set'] = 'Nelze nastavit vlastnà limity, pokud chtete nastavit vlatnà limity musà být \"hlavnà šablona\" nastavena na volbu \"Custom\".'; +$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['aps_limits_txt'] = 'APS limity instalátoru'; $wb['limit_aps_txt'] = 'Max. poÄet APS instalacÃ'; $wb['limit_aps_error_notint'] = 'Limit pro APS instalace musà být ÄÃslo.'; diff --git a/interface/web/client/lib/lang/cz_reseller.lng b/interface/web/client/lib/lang/cz_reseller.lng index 011b985311..adfea62ac5 100644 --- a/interface/web/client/lib/lang/cz_reseller.lng +++ b/interface/web/client/lib/lang/cz_reseller.lng @@ -156,7 +156,7 @@ $wb['added_date_txt'] = 'Datum vytvoÅ™enà úÄtu'; $wb['limit_domainmodule_error_notint'] = 'Domainmodule limit must be a number.'; $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['err_msg_master_tpl_set'] = 'Nelze nastavit vlastnà limity, pokud chtete nastavit vlatnà limity musà být \\"hlavnà šablona\\" nastavena na volbu \\"Custom\\".'; $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)'; diff --git a/interface/web/client/lib/lang/de_reseller.lng b/interface/web/client/lib/lang/de_reseller.lng index 48460658c0..e37ca395af 100644 --- a/interface/web/client/lib/lang/de_reseller.lng +++ b/interface/web/client/lib/lang/de_reseller.lng @@ -160,7 +160,7 @@ $wb['added_date_txt'] = 'Added date'; $wb['limit_domainmodule_error_notint'] = 'Domainmodule limit must be a number.'; $wb['limit_domainmodule_txt'] = 'Domainmodule Limit'; $wb['client_limits_txt'] = 'Client Limits'; -$wb['err_msg_master_tpl_set'] = 'All custom limit settings are ignored if any master template other than \"custom\" is selected.'; +$wb['err_msg_master_tpl_set'] = 'All custom limit settings are ignored if any master template other than \\"custom\\" is selected.'; $wb['invalid_vat_id'] = 'Die USt.-ID ist ungültig.'; $wb['btn_save_txt'] = 'Speichern'; $wb['btn_cancel_txt'] = 'Abbrechen'; diff --git a/interface/web/client/lib/lang/dk_client.lng b/interface/web/client/lib/lang/dk_client.lng index f0a8d1a7cd..b944e03175 100644 --- a/interface/web/client/lib/lang/dk_client.lng +++ b/interface/web/client/lib/lang/dk_client.lng @@ -139,7 +139,7 @@ $wb['email_error_isemail'] = 'Indtast en gyldig e-mail adresse.'; $wb['customer_no_error_unique'] = 'Kunde nr. skal være unikke (eller tomt).'; $wb['paypal_email_error_isemail'] = 'Indtast en gyldig PayPal e-mail adresse.'; $wb['paypal_email_txt'] = 'PayPal E-mail'; -$wb['err_msg_master_tpl_set'] = 'Alle brugerdefinerede grænse indstillinger ignoreres, hvis nogen anden master skabelonen end \"custom\" er valgt.'; +$wb['err_msg_master_tpl_set'] = 'Alle brugerdefinerede grænse indstillinger ignoreres, hvis nogen anden master skabelonen end \\"custom\\" er valgt.'; $wb['aps_limits_txt'] = 'APS Installer Begrænsninger'; $wb['limit_aps_txt'] = 'Max. antal af APS forekomster'; $wb['limit_aps_error_notint'] = 'APS forekomster grænse skal være et tal.'; diff --git a/interface/web/client/lib/lang/dk_reseller.lng b/interface/web/client/lib/lang/dk_reseller.lng index 93cd7c4032..b06301ccdd 100644 --- a/interface/web/client/lib/lang/dk_reseller.lng +++ b/interface/web/client/lib/lang/dk_reseller.lng @@ -156,7 +156,7 @@ $wb['added_date_txt'] = 'Tilføjet d.'; $wb['limit_domainmodule_error_notint'] = 'Domænemodul grænse skal være et tal.'; $wb['limit_domainmodule_txt'] = 'Domænemodul Begrænsning'; $wb['client_limits_txt'] = 'Kunde Begrænsninger'; -$wb['err_msg_master_tpl_set'] = 'Alle brugerdefinerede grænse indstillinger ignoreres, hvis nogen anden master skabelonen end \"custom\" er valgt.'; +$wb['err_msg_master_tpl_set'] = 'Alle brugerdefinerede grænse indstillinger ignoreres, hvis nogen anden master skabelonen end \\"custom\\" er valgt.'; $wb['contact_firstname_txt'] = 'Contact firstname'; $wb['password_click_to_set_txt'] = 'Click to set'; $wb['limit_database_user_txt'] = 'Max. Database users'; diff --git a/interface/web/client/lib/lang/el_client.lng b/interface/web/client/lib/lang/el_client.lng index 8c2d7d738e..b85f653d4e 100644 --- a/interface/web/client/lib/lang/el_client.lng +++ b/interface/web/client/lib/lang/el_client.lng @@ -141,7 +141,7 @@ $wb['email_error_isemail'] = 'Please enter a valid email address.'; $wb['customer_no_error_unique'] = 'The customer no. must be unique (or empty).'; $wb['paypal_email_error_isemail'] = 'Please enter a valid PayPal email address.'; $wb['paypal_email_txt'] = 'PayPal Email'; -$wb['err_msg_master_tpl_set'] = 'All custom limit settings are ignored if any master template other than \"custom\" is selected.'; +$wb['err_msg_master_tpl_set'] = 'All custom limit settings are ignored if any master template other than \\"custom\\" is selected.'; $wb['aps_limits_txt'] = 'APS Installer Limits'; $wb['limit_aps_txt'] = 'Max. number of APS instances'; $wb['limit_aps_error_notint'] = 'The APS instances limit must be a number.'; diff --git a/interface/web/client/lib/lang/el_reseller.lng b/interface/web/client/lib/lang/el_reseller.lng index 13a38caf9d..b409c169e6 100644 --- a/interface/web/client/lib/lang/el_reseller.lng +++ b/interface/web/client/lib/lang/el_reseller.lng @@ -159,7 +159,7 @@ $wb['added_date_txt'] = 'Added date'; $wb['limit_domainmodule_error_notint'] = 'Domainmodule limit must be a number.'; $wb['limit_domainmodule_txt'] = 'Domainmodule Limit'; $wb['client_limits_txt'] = 'Client Limits'; -$wb['err_msg_master_tpl_set'] = 'All custom limit settings are ignored if any master template other than \"custom\" is selected.'; +$wb['err_msg_master_tpl_set'] = 'All custom limit settings are ignored if any master template other than \\"custom\\" is selected.'; $wb['btn_save_txt'] = 'Save'; $wb['btn_cancel_txt'] = 'Cancel'; $wb['email_error_empty'] = 'Email is empty'; diff --git a/interface/web/client/lib/lang/es_client.lng b/interface/web/client/lib/lang/es_client.lng index 1935b168af..75125024fb 100755 --- a/interface/web/client/lib/lang/es_client.lng +++ b/interface/web/client/lib/lang/es_client.lng @@ -42,7 +42,7 @@ $wb['email_error_empty'] = 'El correo electrónico está vacÃo'; $wb['email_error_isemail'] = 'Por favor ingrese una dirección de correo válida.'; $wb['email_limits_txt'] = 'LÃmites de correo'; $wb['email_txt'] = 'Correo'; -$wb['err_msg_master_tpl_set'] = 'Todas las opciones personalizadas de lÃmites serán ignoradas si se utiliza otra plantilla maestra diferente a \"personalizada\".'; +$wb['err_msg_master_tpl_set'] = 'Todas las opciones personalizadas de lÃmites serán ignoradas si se utiliza otra plantilla maestra diferente a \\"personalizada\\".'; $wb['fax_txt'] = 'Fax'; $wb['firstname_error_empty'] = 'El nombre está vacÃo.'; $wb['firstname_txt'] = 'Nombre'; @@ -90,7 +90,7 @@ $wb['limit_mailaliasdomain_error_notint'] = 'El lÃmite de alias de dominio de c $wb['limit_mailaliasdomain_txt'] = 'Cantidad máx. de alias de dominio'; $wb['limit_mailbox_error_notint'] = 'El lÃmite de buzones debe ser un número.'; $wb['limit_mailbox_txt'] = 'Cantidad máx. de buzones'; -$wb['limit_mailcatchall_error_notint'] = 'El lÃmite de correos \"recoge-todo\" debe ser un número.'; +$wb['limit_mailcatchall_error_notint'] = 'El lÃmite de correos \\"recoge-todo\\" debe ser un número.'; $wb['limit_mailcatchall_txt'] = 'Cantidad máx. de receptores de correos huérfanos'; $wb['limit_maildomain_error_notint'] = 'El lÃmite de dominio de correo debe ser un número.'; $wb['limit_maildomain_txt'] = 'Cantidad máx. de dominios para correo'; diff --git a/interface/web/client/lib/lang/es_client_template.lng b/interface/web/client/lib/lang/es_client_template.lng index 6a51459600..4fd6f650f3 100755 --- a/interface/web/client/lib/lang/es_client_template.lng +++ b/interface/web/client/lib/lang/es_client_template.lng @@ -46,8 +46,8 @@ $wb['limit_mailaliasdomain_error_notint'] = 'El lÃmite de alias de dominio de c $wb['limit_mailaliasdomain_txt'] = 'Cantidad máx. de alias de dominio'; $wb['limit_mailbox_error_notint'] = 'El lÃmite de buzones debe ser un número.'; $wb['limit_mailbox_txt'] = 'Cantidad máx. de buzones'; -$wb['limit_mailcatchall_error_notint'] = 'El lÃmite de receptores de correo \"recoge-todo\" debe ser un número.'; -$wb['limit_mailcatchall_txt'] = 'Cantidad máx. de receptores de correo \"recoge-todo\" '; +$wb['limit_mailcatchall_error_notint'] = 'El lÃmite de receptores de correo \\"recoge-todo\\" debe ser un número.'; +$wb['limit_mailcatchall_txt'] = 'Cantidad máx. de receptores de correo \\"recoge-todo\\" '; $wb['limit_maildomain_error_notint'] = 'El lÃmite de dominio de correo debe ser un número.'; $wb['limit_maildomain_txt'] = 'Cantidad máx. de dominios para correo'; $wb['limit_mailfetchmail_error_notint'] = 'El lÃmite de recuperadores de correo debe ser un número.'; diff --git a/interface/web/client/lib/lang/es_reseller.lng b/interface/web/client/lib/lang/es_reseller.lng index a1de1fb7b9..5a94b9e803 100755 --- a/interface/web/client/lib/lang/es_reseller.lng +++ b/interface/web/client/lib/lang/es_reseller.lng @@ -46,7 +46,7 @@ $wb['email_error_empty'] = 'El correo electrónico está vacÃo'; $wb['email_error_isemail'] = 'Por favor ingrese una dirección de correo válida.'; $wb['email_limits_txt'] = 'LÃmites de correo'; $wb['email_txt'] = 'Correo'; -$wb['err_msg_master_tpl_set'] = 'Todas las opciones personalizadas de lÃmites serán ignoradas si se utiliza otra plantilla maestra diferente a \"personalizada\".'; +$wb['err_msg_master_tpl_set'] = 'Todas las opciones personalizadas de lÃmites serán ignoradas si se utiliza otra plantilla maestra diferente a \\"personalizada\\".'; $wb['fax_txt'] = 'Fax'; $wb['firstname_error_empty'] = 'El nombre está vacÃo.'; $wb['firstname_txt'] = 'Nombre'; @@ -97,7 +97,7 @@ $wb['limit_mailalias_txt'] = 'Cantidad máx. de alias de correo'; $wb['limit_mailaliasdomain_txt'] = 'Cantidad máx. de alias de dominio'; $wb['limit_mailbox_error_notint'] = 'El lÃmite de buzones debe ser un número.'; $wb['limit_mailbox_txt'] = 'Cantidad máx. de buzones'; -$wb['limit_mailcatchall_error_notint'] = 'El lÃmite de correos \"recoge-todo\" debe ser un número.'; +$wb['limit_mailcatchall_error_notint'] = 'El lÃmite de correos \\"recoge-todo\\" debe ser un número.'; $wb['limit_mailcatchall_txt'] = 'Cantidad máx. de receptores de correos huérfanos'; $wb['limit_maildomain_error_notint'] = 'El lÃmite de dominio de correo debe ser un número.'; $wb['limit_maildomain_txt'] = 'Cantidad máx. de dominios para correo'; diff --git a/interface/web/client/lib/lang/fi_client.lng b/interface/web/client/lib/lang/fi_client.lng index a90a3d7c2d..6df30e7753 100755 --- a/interface/web/client/lib/lang/fi_client.lng +++ b/interface/web/client/lib/lang/fi_client.lng @@ -141,7 +141,7 @@ $wb['email_error_isemail'] = 'Please enter a valid email address.'; $wb['customer_no_error_unique'] = 'The customer no. must be unique (or empty).'; $wb['paypal_email_error_isemail'] = 'Please enter a valid PayPal email address.'; $wb['paypal_email_txt'] = 'PayPal Email'; -$wb['err_msg_master_tpl_set'] = 'All custom limit settings are ignored if any master template other than \"custom\" is selected.'; +$wb['err_msg_master_tpl_set'] = 'All custom limit settings are ignored if any master template other than \\"custom\\" is selected.'; $wb['aps_limits_txt'] = 'APS Installer Limits'; $wb['limit_aps_txt'] = 'Max. number of APS instances'; $wb['limit_aps_error_notint'] = 'The APS instances limit must be a number.'; diff --git a/interface/web/client/lib/lang/fi_reseller.lng b/interface/web/client/lib/lang/fi_reseller.lng index 6aecc836e3..58af2fdf0d 100644 --- a/interface/web/client/lib/lang/fi_reseller.lng +++ b/interface/web/client/lib/lang/fi_reseller.lng @@ -159,7 +159,7 @@ $wb['added_date_txt'] = 'Added date'; $wb['limit_domainmodule_error_notint'] = 'Domainmodule limit must be a number.'; $wb['limit_domainmodule_txt'] = 'Domainmodule Limit'; $wb['client_limits_txt'] = 'Client Limits'; -$wb['err_msg_master_tpl_set'] = 'All custom limit settings are ignored if any master template other than \"custom\" is selected.'; +$wb['err_msg_master_tpl_set'] = 'All custom limit settings are ignored if any master template other than \\"custom\\" is selected.'; $wb['btn_save_txt'] = 'Save'; $wb['btn_cancel_txt'] = 'Cancel'; $wb['email_error_empty'] = 'Email is empty'; diff --git a/interface/web/client/lib/lang/fr_client.lng b/interface/web/client/lib/lang/fr_client.lng index f13f0d4676..61612ccbe0 100644 --- a/interface/web/client/lib/lang/fr_client.lng +++ b/interface/web/client/lib/lang/fr_client.lng @@ -139,7 +139,7 @@ $wb['email_error_isemail'] = 'Saisissez une adresse e-mail valide.'; $wb['customer_no_error_unique'] = 'Le numéro client doit être unique (ou vide).'; $wb['paypal_email_error_isemail'] = 'Saisissez un compte Paypal valide.'; $wb['paypal_email_txt'] = 'Compte Paypal'; -$wb['err_msg_master_tpl_set'] = 'Les paramètres de limites personnalisés seront ignorés si un modèle maître autre que \"custom\" est sélectionné.'; +$wb['err_msg_master_tpl_set'] = 'Les paramètres de limites personnalisés seront ignorés si un modèle maître autre que \\"custom\\" est sélectionné.'; $wb['aps_limits_txt'] = 'Nombre max d’Installeur APS'; $wb['limit_aps_txt'] = 'Nombre max d’instances APS'; $wb['limit_aps_error_notint'] = 'La limite d’instances APS doit être un nombre'; diff --git a/interface/web/client/lib/lang/fr_reseller.lng b/interface/web/client/lib/lang/fr_reseller.lng index 591e12ac35..f30fcd48c6 100644 --- a/interface/web/client/lib/lang/fr_reseller.lng +++ b/interface/web/client/lib/lang/fr_reseller.lng @@ -156,7 +156,7 @@ $wb['added_date_txt'] = 'Added date'; $wb['limit_domainmodule_error_notint'] = 'Domainmodule limit must be a number.'; $wb['limit_domainmodule_txt'] = 'Domainmodule Limit'; $wb['client_limits_txt'] = 'Client Limits'; -$wb['err_msg_master_tpl_set'] = 'All custom limit settings are ignored if any master template other than \"custom\" is selected.'; +$wb['err_msg_master_tpl_set'] = 'All custom limit settings are ignored if any master template other than \\"custom\\" is selected.'; $wb['contact_firstname_txt'] = 'Contact firstname'; $wb['limit_backup_txt'] = 'Backupfunction available'; $wb['limit_client_error_positive_or_unlimited'] = 'The number of clients must be > 0 or -1 (unlimited)'; diff --git a/interface/web/client/lib/lang/hr_client.lng b/interface/web/client/lib/lang/hr_client.lng index 351ad4b8b4..ec5b73d940 100644 --- a/interface/web/client/lib/lang/hr_client.lng +++ b/interface/web/client/lib/lang/hr_client.lng @@ -141,7 +141,7 @@ $wb['email_error_isemail'] = 'Unesi ispravnu email adresu.'; $wb['customer_no_error_unique'] = 'The customer no. must be unique (or empty).'; $wb['paypal_email_error_isemail'] = 'Please enter a valid PayPal email address.'; $wb['paypal_email_txt'] = 'PayPal Email'; -$wb['err_msg_master_tpl_set'] = 'All custom limit settings are ignored if any master template other than \"custom\" is selected.'; +$wb['err_msg_master_tpl_set'] = 'All custom limit settings are ignored if any master template other than \\"custom\\" is selected.'; $wb['aps_limits_txt'] = 'APS Installer Limits'; $wb['limit_aps_txt'] = 'Max. number of APS instances'; $wb['limit_aps_error_notint'] = 'The APS instances limit must be a number.'; diff --git a/interface/web/client/lib/lang/hr_reseller.lng b/interface/web/client/lib/lang/hr_reseller.lng index 37e1e38356..9188b6861b 100644 --- a/interface/web/client/lib/lang/hr_reseller.lng +++ b/interface/web/client/lib/lang/hr_reseller.lng @@ -159,7 +159,7 @@ $wb['added_date_txt'] = 'Datum dodavanja'; $wb['limit_domainmodule_error_notint'] = 'Domainmodule limit must be a number.'; $wb['limit_domainmodule_txt'] = 'Domain module Limit'; $wb['client_limits_txt'] = 'Limiti klijenata'; -$wb['err_msg_master_tpl_set'] = 'All custom limit settings are ignored if any master template other than \"custom\" is selected.'; +$wb['err_msg_master_tpl_set'] = 'All custom limit settings are ignored if any master template other than \\"custom\\" is selected.'; $wb['btn_save_txt'] = 'Save'; $wb['btn_cancel_txt'] = 'Cancel'; $wb['email_error_empty'] = 'Email is empty'; diff --git a/interface/web/client/lib/lang/hu_client.lng b/interface/web/client/lib/lang/hu_client.lng index 8b9cc16081..10993601c0 100644 --- a/interface/web/client/lib/lang/hu_client.lng +++ b/interface/web/client/lib/lang/hu_client.lng @@ -141,7 +141,7 @@ $wb['email_error_isemail'] = 'Please enter a valid email address.'; $wb['customer_no_error_unique'] = 'The customer no. must be unique (or empty).'; $wb['paypal_email_error_isemail'] = 'Please enter a valid PayPal email address.'; $wb['paypal_email_txt'] = 'PayPal Email'; -$wb['err_msg_master_tpl_set'] = 'All custom limit settings are ignored if any master template other than \"custom\" is selected.'; +$wb['err_msg_master_tpl_set'] = 'All custom limit settings are ignored if any master template other than \\"custom\\" is selected.'; $wb['aps_limits_txt'] = 'APS Installer Limits'; $wb['limit_aps_txt'] = 'Max. number of APS instances'; $wb['limit_aps_error_notint'] = 'The APS instances limit must be a number.'; diff --git a/interface/web/client/lib/lang/hu_reseller.lng b/interface/web/client/lib/lang/hu_reseller.lng index 2b0c15e8f0..dd9290885a 100644 --- a/interface/web/client/lib/lang/hu_reseller.lng +++ b/interface/web/client/lib/lang/hu_reseller.lng @@ -159,7 +159,7 @@ $wb['added_date_txt'] = 'Added date'; $wb['limit_domainmodule_error_notint'] = 'Domainmodule limit must be a number.'; $wb['limit_domainmodule_txt'] = 'Domainmodule Limit'; $wb['client_limits_txt'] = 'Client Limits'; -$wb['err_msg_master_tpl_set'] = 'All custom limit settings are ignored if any master template other than \"custom\" is selected.'; +$wb['err_msg_master_tpl_set'] = 'All custom limit settings are ignored if any master template other than \\"custom\\" is selected.'; $wb['btn_save_txt'] = 'Save'; $wb['btn_cancel_txt'] = 'Cancel'; $wb['email_error_empty'] = 'Email is empty'; diff --git a/interface/web/client/lib/lang/id_client.lng b/interface/web/client/lib/lang/id_client.lng index d25230ea3d..c84e6251f4 100644 --- a/interface/web/client/lib/lang/id_client.lng +++ b/interface/web/client/lib/lang/id_client.lng @@ -141,7 +141,7 @@ $wb['email_error_isemail'] = 'Please enter a valid email address.'; $wb['customer_no_error_unique'] = 'The customer no. must be unique (or empty).'; $wb['paypal_email_error_isemail'] = 'Please enter a valid PayPal email address.'; $wb['paypal_email_txt'] = 'PayPal Email'; -$wb['err_msg_master_tpl_set'] = 'All custom limit settings are ignored if any master template other than \"custom\" is selected.'; +$wb['err_msg_master_tpl_set'] = 'All custom limit settings are ignored if any master template other than \\"custom\\" is selected.'; $wb['aps_limits_txt'] = 'APS Installer Limits'; $wb['limit_aps_txt'] = 'Max. number of APS instances'; $wb['limit_aps_error_notint'] = 'The APS instances limit must be a number.'; diff --git a/interface/web/client/lib/lang/id_reseller.lng b/interface/web/client/lib/lang/id_reseller.lng index af91d1bb4e..821a35e3cd 100644 --- a/interface/web/client/lib/lang/id_reseller.lng +++ b/interface/web/client/lib/lang/id_reseller.lng @@ -159,7 +159,7 @@ $wb['added_date_txt'] = 'Added date'; $wb['limit_domainmodule_error_notint'] = 'Domainmodule limit must be a number.'; $wb['limit_domainmodule_txt'] = 'Domainmodule Limit'; $wb['client_limits_txt'] = 'Client Limits'; -$wb['err_msg_master_tpl_set'] = 'All custom limit settings are ignored if any master template other than \"custom\" is selected.'; +$wb['err_msg_master_tpl_set'] = 'All custom limit settings are ignored if any master template other than \\"custom\\" is selected.'; $wb['btn_save_txt'] = 'Save'; $wb['btn_cancel_txt'] = 'Cancel'; $wb['email_error_empty'] = 'Email is empty'; diff --git a/interface/web/client/lib/lang/it_client.lng b/interface/web/client/lib/lang/it_client.lng index a361d0a887..0f75d849d6 100644 --- a/interface/web/client/lib/lang/it_client.lng +++ b/interface/web/client/lib/lang/it_client.lng @@ -139,7 +139,7 @@ $wb['email_error_isemail'] = 'Please enter a valid email address.'; $wb['customer_no_error_unique'] = 'The customer no. must be unique (or empty).'; $wb['paypal_email_error_isemail'] = 'Please enter a valid PayPal email address.'; $wb['paypal_email_txt'] = 'PayPal Email'; -$wb['err_msg_master_tpl_set'] = 'All custom limit settings are ignored if any master template other than \"custom\" is selected.'; +$wb['err_msg_master_tpl_set'] = 'All custom limit settings are ignored if any master template other than \\"custom\\" is selected.'; $wb['aps_limits_txt'] = 'APS Installer Limits'; $wb['limit_aps_txt'] = 'Max. number of APS instances'; $wb['limit_aps_error_notint'] = 'The APS instances limit must be a number.'; diff --git a/interface/web/client/lib/lang/it_reseller.lng b/interface/web/client/lib/lang/it_reseller.lng index 8fc49568af..2cef293265 100644 --- a/interface/web/client/lib/lang/it_reseller.lng +++ b/interface/web/client/lib/lang/it_reseller.lng @@ -156,7 +156,7 @@ $wb['added_date_txt'] = 'Added date'; $wb['limit_domainmodule_error_notint'] = 'Domainmodule limit must be a number.'; $wb['limit_domainmodule_txt'] = 'Domainmodule Limit'; $wb['client_limits_txt'] = 'Client Limits'; -$wb['err_msg_master_tpl_set'] = 'All custom limit settings are ignored if any master template other than \"custom\" is selected.'; +$wb['err_msg_master_tpl_set'] = 'All custom limit settings are ignored if any master template other than \\"custom\\" is selected.'; $wb['contact_firstname_txt'] = 'Contact firstname'; $wb['limit_backup_txt'] = 'Backupfunction available'; $wb['limit_client_error_positive_or_unlimited'] = 'The number of clients must be > 0 or -1 (unlimited)'; diff --git a/interface/web/client/lib/lang/ja_client.lng b/interface/web/client/lib/lang/ja_client.lng index 2526c02791..33aa6ab4e9 100644 --- a/interface/web/client/lib/lang/ja_client.lng +++ b/interface/web/client/lib/lang/ja_client.lng @@ -141,7 +141,7 @@ $wb['email_error_isemail'] = 'Please enter a valid email address.'; $wb['customer_no_error_unique'] = 'The customer no. must be unique (or empty).'; $wb['paypal_email_error_isemail'] = 'Please enter a valid PayPal email address.'; $wb['paypal_email_txt'] = 'PayPal Email'; -$wb['err_msg_master_tpl_set'] = 'All custom limit settings are ignored if any master template other than \"custom\" is selected.'; +$wb['err_msg_master_tpl_set'] = 'All custom limit settings are ignored if any master template other than \\"custom\\" is selected.'; $wb['aps_limits_txt'] = 'APS Installer Limits'; $wb['limit_aps_txt'] = 'Max. number of APS instances'; $wb['limit_aps_error_notint'] = 'The APS instances limit must be a number.'; diff --git a/interface/web/client/lib/lang/ja_reseller.lng b/interface/web/client/lib/lang/ja_reseller.lng index 66200eccbe..7edf836f39 100644 --- a/interface/web/client/lib/lang/ja_reseller.lng +++ b/interface/web/client/lib/lang/ja_reseller.lng @@ -159,7 +159,7 @@ $wb['added_date_txt'] = 'Added date'; $wb['limit_domainmodule_error_notint'] = 'Domainmodule limit must be a number.'; $wb['limit_domainmodule_txt'] = 'Domainmodule Limit'; $wb['client_limits_txt'] = 'Client Limits'; -$wb['err_msg_master_tpl_set'] = 'All custom limit settings are ignored if any master template other than \"custom\" is selected.'; +$wb['err_msg_master_tpl_set'] = 'All custom limit settings are ignored if any master template other than \\"custom\\" is selected.'; $wb['btn_save_txt'] = 'Save'; $wb['btn_cancel_txt'] = 'Cancel'; $wb['email_error_empty'] = 'Email is empty'; diff --git a/interface/web/client/lib/lang/nl_client.lng b/interface/web/client/lib/lang/nl_client.lng index 8e0092f255..188a37f4fd 100644 --- a/interface/web/client/lib/lang/nl_client.lng +++ b/interface/web/client/lib/lang/nl_client.lng @@ -142,7 +142,7 @@ $wb['email_error_isemail'] = 'Please enter a valid email address.'; $wb['customer_no_error_unique'] = 'The customer no. must be unique (or empty).'; $wb['paypal_email_error_isemail'] = 'Please enter a valid PayPal email address.'; $wb['paypal_email_txt'] = 'PayPal Email'; -$wb['err_msg_master_tpl_set'] = 'All custom limit settings are ignored if any master template other than \"custom\" is selected.'; +$wb['err_msg_master_tpl_set'] = 'All custom limit settings are ignored if any master template other than \\"custom\\" is selected.'; $wb['aps_limits_txt'] = 'APS Installer Limits'; $wb['limit_aps_txt'] = 'Max. number of APS instances'; $wb['limit_aps_error_notint'] = 'The APS instances limit must be a number.'; diff --git a/interface/web/client/lib/lang/nl_reseller.lng b/interface/web/client/lib/lang/nl_reseller.lng index 9cdb1856fe..9953880bec 100644 --- a/interface/web/client/lib/lang/nl_reseller.lng +++ b/interface/web/client/lib/lang/nl_reseller.lng @@ -160,7 +160,7 @@ $wb['added_date_txt'] = 'Added date'; $wb['limit_domainmodule_error_notint'] = 'Domainmodule limit must be a number.'; $wb['limit_domainmodule_txt'] = 'Domainmodule Limit'; $wb['client_limits_txt'] = 'Client Limits'; -$wb['err_msg_master_tpl_set'] = 'All custom limit settings are ignored if any master template other than \"custom\" is selected.'; +$wb['err_msg_master_tpl_set'] = 'All custom limit settings are ignored if any master template other than \\"custom\\" is selected.'; $wb['btn_save_txt'] = 'Save'; $wb['btn_cancel_txt'] = 'Cancel'; $wb['email_error_empty'] = 'Email is empty'; diff --git a/interface/web/client/lib/lang/pl_reseller.lng b/interface/web/client/lib/lang/pl_reseller.lng index 69b30fe2a3..9b2cf58f75 100644 --- a/interface/web/client/lib/lang/pl_reseller.lng +++ b/interface/web/client/lib/lang/pl_reseller.lng @@ -159,7 +159,7 @@ $wb['added_date_txt'] = 'Added date'; $wb['limit_domainmodule_error_notint'] = 'Domainmodule limit must be a number.'; $wb['limit_domainmodule_txt'] = 'Domainmodule Limit'; $wb['client_limits_txt'] = 'Client Limits'; -$wb['err_msg_master_tpl_set'] = 'All custom limit settings are ignored if any master template other than \"custom\" is selected.'; +$wb['err_msg_master_tpl_set'] = 'All custom limit settings are ignored if any master template other than \\"custom\\" is selected.'; $wb['btn_save_txt'] = 'Save'; $wb['btn_cancel_txt'] = 'Cancel'; $wb['email_error_empty'] = 'Email is empty'; diff --git a/interface/web/client/lib/lang/pt_client.lng b/interface/web/client/lib/lang/pt_client.lng index b05e14dfe7..ae3e45b24d 100644 --- a/interface/web/client/lib/lang/pt_client.lng +++ b/interface/web/client/lib/lang/pt_client.lng @@ -141,7 +141,7 @@ $wb['email_error_isemail'] = 'Please enter a valid email address.'; $wb['customer_no_error_unique'] = 'The customer no. must be unique (or empty).'; $wb['paypal_email_error_isemail'] = 'Please enter a valid PayPal email address.'; $wb['paypal_email_txt'] = 'PayPal Email'; -$wb['err_msg_master_tpl_set'] = 'All custom limit settings are ignored if any master template other than \"custom\" is selected.'; +$wb['err_msg_master_tpl_set'] = 'All custom limit settings are ignored if any master template other than \\"custom\\" is selected.'; $wb['aps_limits_txt'] = 'APS Installer Limits'; $wb['limit_aps_txt'] = 'Max. number of APS instances'; $wb['limit_aps_error_notint'] = 'The APS instances limit must be a number.'; diff --git a/interface/web/client/lib/lang/pt_reseller.lng b/interface/web/client/lib/lang/pt_reseller.lng index ae3eddd8b0..e021cd2511 100644 --- a/interface/web/client/lib/lang/pt_reseller.lng +++ b/interface/web/client/lib/lang/pt_reseller.lng @@ -159,7 +159,7 @@ $wb['added_date_txt'] = 'Added date'; $wb['limit_domainmodule_error_notint'] = 'Domainmodule limit must be a number.'; $wb['limit_domainmodule_txt'] = 'Domainmodule Limit'; $wb['client_limits_txt'] = 'Client Limits'; -$wb['err_msg_master_tpl_set'] = 'All custom limit settings are ignored if any master template other than \"custom\" is selected.'; +$wb['err_msg_master_tpl_set'] = 'All custom limit settings are ignored if any master template other than \\"custom\\" is selected.'; $wb['btn_save_txt'] = 'Save'; $wb['btn_cancel_txt'] = 'Cancel'; $wb['email_error_empty'] = 'Email is empty'; diff --git a/interface/web/client/lib/lang/ro_client.lng b/interface/web/client/lib/lang/ro_client.lng index bc0ad4316e..034c4d0e44 100644 --- a/interface/web/client/lib/lang/ro_client.lng +++ b/interface/web/client/lib/lang/ro_client.lng @@ -141,7 +141,7 @@ $wb['email_error_isemail'] = 'Please enter a valid email address.'; $wb['customer_no_error_unique'] = 'The customer no. must be unique (or empty).'; $wb['paypal_email_error_isemail'] = 'Please enter a valid PayPal email address.'; $wb['paypal_email_txt'] = 'PayPal Email'; -$wb['err_msg_master_tpl_set'] = 'All custom limit settings are ignored if any master template other than \"custom\" is selected.'; +$wb['err_msg_master_tpl_set'] = 'All custom limit settings are ignored if any master template other than \\"custom\\" is selected.'; $wb['aps_limits_txt'] = 'APS Installer Limits'; $wb['limit_aps_txt'] = 'Max. number of APS instances'; $wb['limit_aps_error_notint'] = 'The APS instances limit must be a number.'; diff --git a/interface/web/client/lib/lang/ro_reseller.lng b/interface/web/client/lib/lang/ro_reseller.lng index 553abe0aee..68e8a950f3 100644 --- a/interface/web/client/lib/lang/ro_reseller.lng +++ b/interface/web/client/lib/lang/ro_reseller.lng @@ -159,7 +159,7 @@ $wb['added_date_txt'] = 'Added date'; $wb['limit_domainmodule_error_notint'] = 'Domainmodule limit must be a number.'; $wb['limit_domainmodule_txt'] = 'Domainmodule Limit'; $wb['client_limits_txt'] = 'Client Limits'; -$wb['err_msg_master_tpl_set'] = 'All custom limit settings are ignored if any master template other than \"custom\" is selected.'; +$wb['err_msg_master_tpl_set'] = 'All custom limit settings are ignored if any master template other than \\"custom\\" is selected.'; $wb['btn_save_txt'] = 'Save'; $wb['btn_cancel_txt'] = 'Cancel'; $wb['email_error_empty'] = 'Email is empty'; diff --git a/interface/web/client/lib/lang/ru_client.lng b/interface/web/client/lib/lang/ru_client.lng index a37d4673a1..befd6b15bf 100644 --- a/interface/web/client/lib/lang/ru_client.lng +++ b/interface/web/client/lib/lang/ru_client.lng @@ -108,7 +108,7 @@ $wb['limit_openvz_vm_template_id_txt'] = 'Принудительный шабл $wb['limit_openvz_vm_error_notint'] = 'Лимит виртуальных Ñерверов должен быть чиÑлом.'; $wb['web_php_options_notempty'] = 'Ðет выбранных параметров PHP. Выберите по крайней мере один параметр PHP.'; $wb['ssh_chroot_notempty'] = 'Ðе выбран параметр SSH-Chroot. Выберите по крайней мере один параметр SSH-Chroot.'; -$wb['username_error_collision'] = 'Ð˜Ð¼Ñ Ð¿Ð¾Ð»ÑŒÐ·Ð¾Ð²Ð°Ñ‚ÐµÐ»Ñ Ð½Ðµ может начинатьÑÑ Ñо Ñлова \"web\" или \"web\" Ð¿Ð»ÑŽÑ Ñ‡Ð¸Ñло.'; +$wb['username_error_collision'] = 'Ð˜Ð¼Ñ Ð¿Ð¾Ð»ÑŒÐ·Ð¾Ð²Ð°Ñ‚ÐµÐ»Ñ Ð½Ðµ может начинатьÑÑ Ñо Ñлова \\"web\\" или \\"web\\" Ð¿Ð»ÑŽÑ Ñ‡Ð¸Ñло.'; $wb['add_additional_template_txt'] = 'Добавить дополнительный шаблон'; $wb['delete_additional_template_txt'] = 'Удалить дополнительный шаблон'; $wb['limit_cgi_txt'] = 'CGI доÑтупен'; @@ -141,7 +141,7 @@ $wb['email_error_isemail'] = 'Ðекорректный почтовый адре $wb['customer_no_error_unique'] = 'Счётчик номера Клиента должен быть уникален (или отÑутÑтвует).'; $wb['paypal_email_error_isemail'] = 'ПожалуйÑта, введите дейÑтвующий Ð°Ð´Ñ€ÐµÑ Ñлектронной почты PayPal.'; $wb['paypal_email_txt'] = 'ÐÐ´Ñ€ÐµÑ Ñлектронной почты PayPal'; -$wb['err_msg_master_tpl_set'] = 'ЗначениÑ, уÑтановленные здеÑÑŒ игнорируютÑÑ, еÑли не выбран в качеÑтве главного шаблона \"Custom\"!'; +$wb['err_msg_master_tpl_set'] = 'ЗначениÑ, уÑтановленные здеÑÑŒ игнорируютÑÑ, еÑли не выбран в качеÑтве главного шаблона \\"Custom\\"!'; $wb['aps_limits_txt'] = 'Лимиты УÑтановщика APS'; $wb['limit_aps_txt'] = 'МакÑ. количеÑтво ÑкземплÑров APS'; $wb['limit_aps_error_notint'] = 'Лимит ÑкземплÑров APS должен быть чиÑлом.'; diff --git a/interface/web/client/lib/lang/ru_reseller.lng b/interface/web/client/lib/lang/ru_reseller.lng index 4a177cccc8..998a886990 100644 --- a/interface/web/client/lib/lang/ru_reseller.lng +++ b/interface/web/client/lib/lang/ru_reseller.lng @@ -108,7 +108,7 @@ $wb['limit_openvz_vm_template_id_txt'] = 'Принудительный шабл $wb['limit_openvz_vm_error_notint'] = 'Лимит виртуальных Ñерверов должен быть чиÑлом.'; $wb['web_php_options_notempty'] = 'Ðет выбранных параметров PHP. Выберите по крайней мере один параметр PHP.'; $wb['ssh_chroot_notempty'] = 'Ðе выбран параметр SSH-Chroot. Выберите по крайней мере один параметр SSH-Chroot.'; -$wb['username_error_collision'] = 'Ð˜Ð¼Ñ Ð¿Ð¾Ð»ÑŒÐ·Ð¾Ð²Ð°Ñ‚ÐµÐ»Ñ Ð½Ðµ может начинатьÑÑ Ñо Ñлова \"web\" или \"web\" Ð¿Ð»ÑŽÑ Ñ‡Ð¸Ñло.'; +$wb['username_error_collision'] = 'Ð˜Ð¼Ñ Ð¿Ð¾Ð»ÑŒÐ·Ð¾Ð²Ð°Ñ‚ÐµÐ»Ñ Ð½Ðµ может начинатьÑÑ Ñо Ñлова \\"web\\" или \\"web\\" Ð¿Ð»ÑŽÑ Ñ‡Ð¸Ñло.'; $wb['add_additional_template_txt'] = 'Добавить дополнительный шаблон'; $wb['delete_additional_template_txt'] = 'Удалить дополнительный шаблон'; $wb['limit_cgi_txt'] = 'CGI доÑтупен'; @@ -159,7 +159,7 @@ $wb['added_date_txt'] = 'Дата добавлениÑ'; $wb['limit_domainmodule_error_notint'] = 'Лимит модулей домена должен быть чиÑлом.'; $wb['limit_domainmodule_txt'] = 'Лимит модулей домена'; $wb['client_limits_txt'] = 'Лимиты Клиента'; -$wb['err_msg_master_tpl_set'] = 'ЗначениÑ, уÑтановленные здеÑÑŒ игнорируютÑÑ, еÑли не выбран в качеÑтве главного шаблона \"Custom\"!'; +$wb['err_msg_master_tpl_set'] = 'ЗначениÑ, уÑтановленные здеÑÑŒ игнорируютÑÑ, еÑли не выбран в качеÑтве главного шаблона \\"Custom\\"!'; $wb['btn_save_txt'] = 'Сохранить'; $wb['btn_cancel_txt'] = 'Отменить'; $wb['email_error_empty'] = 'ÐÐ´Ñ€ÐµÑ Ñл. почты пуÑтой'; diff --git a/interface/web/client/lib/lang/se_client.lng b/interface/web/client/lib/lang/se_client.lng index 5232e95f55..2884302c18 100644 --- a/interface/web/client/lib/lang/se_client.lng +++ b/interface/web/client/lib/lang/se_client.lng @@ -141,7 +141,7 @@ $wb['email_error_isemail'] = 'Vänligen ange en giltig epostadress'; $wb['customer_no_error_unique'] = 'The customer no. must be unique (or empty).'; $wb['paypal_email_error_isemail'] = 'Please enter a valid PayPal email address.'; $wb['paypal_email_txt'] = 'PayPal epostadress'; -$wb['err_msg_master_tpl_set'] = 'All custom limit settings are ignored if any master template other than \"custom\" is selected.'; +$wb['err_msg_master_tpl_set'] = 'All custom limit settings are ignored if any master template other than \\"custom\\" is selected.'; $wb['aps_limits_txt'] = 'APS Installer Limits'; $wb['limit_aps_txt'] = 'Max. number of APS instances'; $wb['limit_aps_error_notint'] = 'The APS instances limit must be a number.'; diff --git a/interface/web/client/lib/lang/se_reseller.lng b/interface/web/client/lib/lang/se_reseller.lng index 553abe0aee..68e8a950f3 100644 --- a/interface/web/client/lib/lang/se_reseller.lng +++ b/interface/web/client/lib/lang/se_reseller.lng @@ -159,7 +159,7 @@ $wb['added_date_txt'] = 'Added date'; $wb['limit_domainmodule_error_notint'] = 'Domainmodule limit must be a number.'; $wb['limit_domainmodule_txt'] = 'Domainmodule Limit'; $wb['client_limits_txt'] = 'Client Limits'; -$wb['err_msg_master_tpl_set'] = 'All custom limit settings are ignored if any master template other than \"custom\" is selected.'; +$wb['err_msg_master_tpl_set'] = 'All custom limit settings are ignored if any master template other than \\"custom\\" is selected.'; $wb['btn_save_txt'] = 'Save'; $wb['btn_cancel_txt'] = 'Cancel'; $wb['email_error_empty'] = 'Email is empty'; diff --git a/interface/web/client/lib/lang/sk_client.lng b/interface/web/client/lib/lang/sk_client.lng index 6fff6bf3f0..3edec417cf 100644 --- a/interface/web/client/lib/lang/sk_client.lng +++ b/interface/web/client/lib/lang/sk_client.lng @@ -141,7 +141,7 @@ $wb['email_error_isemail'] = 'Please enter a valid email address.'; $wb['customer_no_error_unique'] = 'The customer no. must be unique (or empty).'; $wb['paypal_email_error_isemail'] = 'Please enter a valid PayPal email address.'; $wb['paypal_email_txt'] = 'PayPal Email'; -$wb['err_msg_master_tpl_set'] = 'All custom limit settings are ignored if any master template other than \"custom\" is selected.'; +$wb['err_msg_master_tpl_set'] = 'All custom limit settings are ignored if any master template other than \\"custom\\" is selected.'; $wb['aps_limits_txt'] = 'APS Installer Limits'; $wb['limit_aps_txt'] = 'Max. number of APS instances'; $wb['limit_aps_error_notint'] = 'The APS instances limit must be a number.'; diff --git a/interface/web/client/lib/lang/sk_reseller.lng b/interface/web/client/lib/lang/sk_reseller.lng index 34643c55b8..4ae3ef5b97 100644 --- a/interface/web/client/lib/lang/sk_reseller.lng +++ b/interface/web/client/lib/lang/sk_reseller.lng @@ -159,7 +159,7 @@ $wb['added_date_txt'] = 'Added date'; $wb['limit_domainmodule_error_notint'] = 'Domainmodule limit must be a number.'; $wb['limit_domainmodule_txt'] = 'Domainmodule Limit'; $wb['client_limits_txt'] = 'Client Limits'; -$wb['err_msg_master_tpl_set'] = 'All custom limit settings are ignored if any master template other than \"custom\" is selected.'; +$wb['err_msg_master_tpl_set'] = 'All custom limit settings are ignored if any master template other than \\"custom\\" is selected.'; $wb['btn_save_txt'] = 'Save'; $wb['btn_cancel_txt'] = 'Cancel'; $wb['email_error_empty'] = 'Email is empty'; diff --git a/interface/web/client/lib/lang/tr_client.lng b/interface/web/client/lib/lang/tr_client.lng index 359095534a..765d9f1980 100644 --- a/interface/web/client/lib/lang/tr_client.lng +++ b/interface/web/client/lib/lang/tr_client.lng @@ -139,7 +139,7 @@ $wb['email_error_isemail'] = 'Lütfen geçerli bir e-posta adresi yazın.'; $wb['customer_no_error_unique'] = 'Müşteri numarası eÅŸsiz (ya da boÅŸ) olmalıdır.'; $wb['paypal_email_error_isemail'] = 'Lütfen geçerli bir PayPal e-posta adresi yazın.'; $wb['paypal_email_txt'] = 'PayPal E-posta Adresi'; -$wb['err_msg_master_tpl_set'] = '\"Özel\" kalıptan baÅŸka bir ana kalıp seçilirse, tüm özel sınırlama ayarları yoksayılır.'; +$wb['err_msg_master_tpl_set'] = '\\"Özel\\" kalıptan baÅŸka bir ana kalıp seçilirse, tüm özel sınırlama ayarları yoksayılır.'; $wb['aps_limits_txt'] = 'APS Yükleyici Sınırları'; $wb['limit_aps_txt'] = 'En Fazla APS Kopyası Sayısı'; $wb['limit_aps_error_notint'] = 'APS kopya sayısı sınırı bir sayı olmalıdır.'; diff --git a/interface/web/client/lib/lang/tr_reseller.lng b/interface/web/client/lib/lang/tr_reseller.lng index 5e2a37e268..4906a894c0 100644 --- a/interface/web/client/lib/lang/tr_reseller.lng +++ b/interface/web/client/lib/lang/tr_reseller.lng @@ -156,7 +156,7 @@ $wb['added_date_txt'] = 'EklendiÄŸi Tarih'; $wb['limit_domainmodule_error_notint'] = 'Alan adı modülü sınırı bir sayı olmalıdır.'; $wb['limit_domainmodule_txt'] = 'Alan Adı Modülü Sınırı'; $wb['client_limits_txt'] = 'Müşteri Sınırları'; -$wb['err_msg_master_tpl_set'] = '\"Özel\" kalıptan baÅŸka bir ana kalıp seçilirse, tüm özel sınırlama ayarları yoksayılır.'; +$wb['err_msg_master_tpl_set'] = '\\"Özel\\" kalıptan baÅŸka bir ana kalıp seçilirse, tüm özel sınırlama ayarları yoksayılır.'; $wb['contact_firstname_txt'] = 'Contact firstname'; $wb['password_click_to_set_txt'] = 'Click to set'; $wb['limit_database_user_txt'] = 'Max. Database users'; diff --git a/interface/web/dashboard/lib/lang/es_dashlet_limits.lng b/interface/web/dashboard/lib/lang/es_dashlet_limits.lng index 0f819f2a9d..da6cd6b513 100755 --- a/interface/web/dashboard/lib/lang/es_dashlet_limits.lng +++ b/interface/web/dashboard/lib/lang/es_dashlet_limits.lng @@ -11,7 +11,7 @@ $wb['limit_ftp_user_txt'] = 'Cantidad de usuarios FTP'; $wb['limit_mailalias_txt'] = 'Cantidad de alias de correos'; $wb['limit_mailaliasdomain_txt'] = 'Cantidad de alias de dominios'; $wb['limit_mailbox_txt'] = 'Cantidad de buzones'; -$wb['limit_mailcatchall_txt'] = 'Cantidad de cuentas de correo \"recoge-todo\"'; +$wb['limit_mailcatchall_txt'] = 'Cantidad de cuentas de correo \\"recoge-todo\\"'; $wb['limit_maildomain_txt'] = 'Cantidad de dominios para correo'; $wb['limit_mailfilter_txt'] = 'Cantidad de filtros de correo'; $wb['limit_mailforward_txt'] = 'Cantidad de reenviadores de correos'; diff --git a/interface/web/dns/lib/lang/br_dns_dmarc.lng b/interface/web/dns/lib/lang/br_dns_dmarc.lng index 5b7201075f..8bb35318f8 100644 --- a/interface/web/dns/lib/lang/br_dns_dmarc.lng +++ b/interface/web/dns/lib/lang/br_dns_dmarc.lng @@ -2,7 +2,7 @@ $wb['data_txt'] = 'Registro DMARC'; $wb['domain_txt'] = 'DomÃnio'; $wb['dmarc_policy_txt'] = 'PolÃtica de recepção de e-mails'; -$wb['dmarc_policy_note_txt'] = 'Como os \"ISPs\" devem tratar as mensagens SPF ou DKIM com falha (DMARC).'; +$wb['dmarc_policy_note_txt'] = 'Como os \\"ISPs\\" devem tratar as mensagens SPF ou DKIM com falha (DMARC).'; $wb['dmarc_policy_none_txt'] = 'não fazer nada'; $wb['dmarc_policy_quarantine_txt'] = 'quarentena'; $wb['dmarc_policy_reject_txt'] = 'rejeitar'; @@ -11,16 +11,16 @@ $wb['dmarc_rua_note_txt'] = 'Endereços de e-mail para receber relatórios do si $wb['dmarc_ruf_txt'] = 'Relatório forense de dados por endereço'; $wb['dmarc_ruf_note_txt'] = 'Endereços de e-mail para receber amostras de mensagens com falha e controles DMARC do domÃnio (separados por espaço em branco)'; $wb['dmarc_fo_txt'] = 'Opções de relatório forense'; -$wb['dmarc_fo0_txt'] = 'Gerar relatórios se todos os mecanismos de autenticação subjacentes deixarem de produzir um resultado DMARC \"pass\".'; +$wb['dmarc_fo0_txt'] = 'Gerar relatórios se todos os mecanismos de autenticação subjacentes deixarem de produzir um resultado DMARC \\"pass\\".'; $wb['dmarc_fo1_txt'] = 'Gerar relatório se algum mecanismo falhar.'; $wb['dmarc_fod_txt'] = 'Gerar relatório se assinatura DKIM falhar na verificação.'; $wb['dmarc_fos_txt'] = 'Gerar relatório se o SPF falhar.'; $wb['dmarc_adkim_txt'] = 'Parametrização do identificador DKIM'; -$wb['dmarc_adkim_note_txt'] = 'Modo \"strict\" exige combinação exata entre o DKIM do domÃnio e e-mails'; +$wb['dmarc_adkim_note_txt'] = 'Modo \\"strict\\" exige combinação exata entre o DKIM do domÃnio e e-mails'; $wb['dmarc_adkim_r_txt'] = 'relaxed'; $wb['dmarc_adkim_s_txt'] = 'strict'; $wb['dmarc_aspf_txt'] = 'Parametrização do identificador SPF'; -$wb['dmarc_aspf_note_txt'] = 'Modo \"strict\" exige combinação exata entre o SPF do domÃnio e e-mails'; +$wb['dmarc_aspf_note_txt'] = 'Modo \\"strict\\" exige combinação exata entre o SPF do domÃnio e e-mails'; $wb['dmarc_aspf_r_txt'] = 'relaxed'; $wb['dmarc_aspf_s_txt'] = 'strict'; $wb['dmarc_rf_txt'] = 'Formatação do relatório'; @@ -37,7 +37,7 @@ $wb['dmarc_sp_quarantine_txt'] = 'quarentena'; $wb['dmarc_sp_reject_txt'] = 'rejeitar'; $wb['ttl_txt'] = 'TTL'; $wb['active_txt'] = 'Ativo'; -$wb['dmarc_policy_error_txt'] = 'Somente a polÃtica \"nenhum\" é permitida para e-mails sem assinatura DKIM.'; +$wb['dmarc_policy_error_txt'] = 'Somente a polÃtica \\"nenhum\\" é permitida para e-mails sem assinatura DKIM.'; $wb['dmarc_no_dkim_txt'] = 'Nenhum registro DKIM ativo.'; $wb['dmarc_no_spf_txt'] = 'Nenhum registro SPF ativo.'; $wb['dmarc_more_spf_txt'] = 'Mais de um registro SPF ativo.'; diff --git a/interface/web/dns/lib/lang/br_dns_tlsa.lng b/interface/web/dns/lib/lang/br_dns_tlsa.lng index c78c6fd190..5e1bf2256e 100644 --- a/interface/web/dns/lib/lang/br_dns_tlsa.lng +++ b/interface/web/dns/lib/lang/br_dns_tlsa.lng @@ -9,8 +9,8 @@ $wb['active_txt'] = 'Ativo'; $wb['limit_dns_record_txt'] = 'O limite de registros dns para esta conta foi alcançado.'; $wb['no_zone_perm'] = 'Você não tem permissão para adicionar registros a esta zona dns.'; $wb['name_error_empty'] = 'Descritor de serviço está em branco.'; -$wb['name_error_regex'] = 'Descritor de serviço é inválido. Formato correto: \"_<port>._(tcp|udp).<hostname>\".'; +$wb['name_error_regex'] = 'Descritor de serviço é inválido. Formato correto: \\"_<port>._(tcp|udp).<hostname>\\".'; $wb['data_error_empty'] = 'Dados TLSA está em branco.'; -$wb['data_error_regex'] = 'Dados TLSA são inválidos. Formato correto: \"n n n HASH\".'; +$wb['data_error_regex'] = 'Dados TLSA são inválidos. Formato correto: \\"n n n HASH\\".'; $wb['ttl_range_error'] = 'O ttl mÃnimo são 60 segundos.'; ?> diff --git a/interface/web/dns/lib/lang/ru_dns_hinfo.lng b/interface/web/dns/lib/lang/ru_dns_hinfo.lng index 830576fdf6..363ed0eef5 100644 --- a/interface/web/dns/lib/lang/ru_dns_hinfo.lng +++ b/interface/web/dns/lib/lang/ru_dns_hinfo.lng @@ -11,6 +11,6 @@ $wb['no_zone_perm'] = 'У Ð’Ð°Ñ Ð½ÐµÑ‚ прав добавлÑÑ‚ÑŒ Ñту за $wb['name_error_empty'] = 'Ð˜Ð¼Ñ Ð¿ÑƒÑтое.'; $wb['name_error_regex'] = 'Ð˜Ð¼Ñ ÑƒÐ·Ð»Ð° имеет неправильный формат.'; $wb['data_error_empty'] = 'Ð˜Ð½Ñ„Ð¾Ñ€Ð¼Ð°Ñ†Ð¸Ñ Ð¾Ð± узле отÑутÑвует'; -$wb['data_error_regex'] = 'Поле \"Ð˜Ð½Ñ„Ð¾Ñ€Ð¼Ð°Ñ†Ð¸Ñ Ð¾ хоÑте\" имеет неправильный формат'; +$wb['data_error_regex'] = 'Поле \\"Ð˜Ð½Ñ„Ð¾Ñ€Ð¼Ð°Ñ†Ð¸Ñ Ð¾ хоÑте\\" имеет неправильный формат'; $wb['ttl_range_error'] = 'Мин. Ð²Ñ€ÐµÐ¼Ñ <b>TTL</b> 60 Ñекунд.'; ?> diff --git a/interface/web/help/lib/lang/br_support_message.lng b/interface/web/help/lib/lang/br_support_message.lng index 83097915bf..19ae309a1f 100644 --- a/interface/web/help/lib/lang/br_support_message.lng +++ b/interface/web/help/lib/lang/br_support_message.lng @@ -12,5 +12,5 @@ $wb['answer_to_support_request_txt'] = 'Você tem uma nova resposta para requisi $wb['answer_to_support_request_sent_txt'] = 'Sua resposta para requisição de suporte foi enviada. Por favor, não responda esse e-mail.'; $wb['support_request_sent_txt'] = 'Sua requisição de suporte foi enviada. Por favor não responda este e-mail.'; $wb['recipient_or_sender_email_address_not_valid_txt'] = 'A mensagem não foi enviada porque o e-mail do destinatário e/ou remetente não é válido.'; -$wb['subject_is_empty'] = 'Não é permitido o campo \"Assunto\" em branco.'; +$wb['subject_is_empty'] = 'Não é permitido o campo \\"Assunto\\" em branco.'; ?> diff --git a/interface/web/login/lib/lang/ar_login_as.lng b/interface/web/login/lib/lang/ar_login_as.lng index 68cb3318e5..cf75b54b47 100644 --- a/interface/web/login/lib/lang/ar_login_as.lng +++ b/interface/web/login/lib/lang/ar_login_as.lng @@ -1,12 +1,12 @@ <?php $wb['login_1_txt'] = 'Do you want to login as user'; -$wb['login_2_txt'] = 'If you do so, you can \"go back\" by clicking at logout.'; +$wb['login_2_txt'] = 'If you do so, you can \\"go back\\" by clicking at logout.'; $wb['btn_yes_txt'] = 'Yes, login as Client'; $wb['btn_back_txt'] = 'No, back to list'; $wb['udp_port_help_txt'] = 'Separated by comma'; $wb['active_txt'] = 'Active'; $wb['firewall_error_unique'] = 'There is already a firewall record for this server.'; -$wb['tcp_ports_error_regex'] = 'Character not allowed in tcp port definition. Allowed characters are numbers, \":\" and \",\".'; -$wb['udp_ports_error_regex'] = 'Character not allowed in udp port definition. Allowed characters are numbers, \":\" and \",\".'; +$wb['tcp_ports_error_regex'] = 'Character not allowed in tcp port definition. Allowed characters are numbers, \\":\\" and \\",\\".'; +$wb['udp_ports_error_regex'] = 'Character not allowed in udp port definition. Allowed characters are numbers, \\":\\" and \\",\\".'; $wb['login_as_or_logout_txt'] = 'Do you want to re-login as {UTYPE} or logout?'; ?> diff --git a/interface/web/login/lib/lang/bg_login_as.lng b/interface/web/login/lib/lang/bg_login_as.lng index 68cb3318e5..cf75b54b47 100644 --- a/interface/web/login/lib/lang/bg_login_as.lng +++ b/interface/web/login/lib/lang/bg_login_as.lng @@ -1,12 +1,12 @@ <?php $wb['login_1_txt'] = 'Do you want to login as user'; -$wb['login_2_txt'] = 'If you do so, you can \"go back\" by clicking at logout.'; +$wb['login_2_txt'] = 'If you do so, you can \\"go back\\" by clicking at logout.'; $wb['btn_yes_txt'] = 'Yes, login as Client'; $wb['btn_back_txt'] = 'No, back to list'; $wb['udp_port_help_txt'] = 'Separated by comma'; $wb['active_txt'] = 'Active'; $wb['firewall_error_unique'] = 'There is already a firewall record for this server.'; -$wb['tcp_ports_error_regex'] = 'Character not allowed in tcp port definition. Allowed characters are numbers, \":\" and \",\".'; -$wb['udp_ports_error_regex'] = 'Character not allowed in udp port definition. Allowed characters are numbers, \":\" and \",\".'; +$wb['tcp_ports_error_regex'] = 'Character not allowed in tcp port definition. Allowed characters are numbers, \\":\\" and \\",\\".'; +$wb['udp_ports_error_regex'] = 'Character not allowed in udp port definition. Allowed characters are numbers, \\":\\" and \\",\\".'; $wb['login_as_or_logout_txt'] = 'Do you want to re-login as {UTYPE} or logout?'; ?> diff --git a/interface/web/login/lib/lang/br_login_as.lng b/interface/web/login/lib/lang/br_login_as.lng index 4c02c963c2..5d9fb269b9 100644 --- a/interface/web/login/lib/lang/br_login_as.lng +++ b/interface/web/login/lib/lang/br_login_as.lng @@ -1,6 +1,6 @@ <?php $wb['login_1_txt'] = 'Você deseja acessar como usuário'; -$wb['login_2_txt'] = 'Para retornar ao administrador, você pode \"voltar\" selecionando sair.'; +$wb['login_2_txt'] = 'Para retornar ao administrador, você pode \\"voltar\\" selecionando sair.'; $wb['btn_yes_txt'] = 'Sim, acessar como cliente'; $wb['btn_back_txt'] = 'Não, voltar a lista'; $wb['udp_port_help_txt'] = 'Separado por vÃrgula'; diff --git a/interface/web/login/lib/lang/ca_login_as.lng b/interface/web/login/lib/lang/ca_login_as.lng index 68cb3318e5..cf75b54b47 100644 --- a/interface/web/login/lib/lang/ca_login_as.lng +++ b/interface/web/login/lib/lang/ca_login_as.lng @@ -1,12 +1,12 @@ <?php $wb['login_1_txt'] = 'Do you want to login as user'; -$wb['login_2_txt'] = 'If you do so, you can \"go back\" by clicking at logout.'; +$wb['login_2_txt'] = 'If you do so, you can \\"go back\\" by clicking at logout.'; $wb['btn_yes_txt'] = 'Yes, login as Client'; $wb['btn_back_txt'] = 'No, back to list'; $wb['udp_port_help_txt'] = 'Separated by comma'; $wb['active_txt'] = 'Active'; $wb['firewall_error_unique'] = 'There is already a firewall record for this server.'; -$wb['tcp_ports_error_regex'] = 'Character not allowed in tcp port definition. Allowed characters are numbers, \":\" and \",\".'; -$wb['udp_ports_error_regex'] = 'Character not allowed in udp port definition. Allowed characters are numbers, \":\" and \",\".'; +$wb['tcp_ports_error_regex'] = 'Character not allowed in tcp port definition. Allowed characters are numbers, \\":\\" and \\",\\".'; +$wb['udp_ports_error_regex'] = 'Character not allowed in udp port definition. Allowed characters are numbers, \\":\\" and \\",\\".'; $wb['login_as_or_logout_txt'] = 'Do you want to re-login as {UTYPE} or logout?'; ?> diff --git a/interface/web/login/lib/lang/dk_login_as.lng b/interface/web/login/lib/lang/dk_login_as.lng index a75ea7262a..bebcf165a7 100644 --- a/interface/web/login/lib/lang/dk_login_as.lng +++ b/interface/web/login/lib/lang/dk_login_as.lng @@ -1,12 +1,12 @@ <?php $wb['login_1_txt'] = 'Vil du logge ind som bruger'; -$wb['login_2_txt'] = 'Hvis du gør det, kan du \"GÃ¥ tilbage\" ved at klikke pÃ¥ logout.'; +$wb['login_2_txt'] = 'Hvis du gør det, kan du \\"GÃ¥ tilbage\\" ved at klikke pÃ¥ logout.'; $wb['btn_yes_txt'] = 'Ja, log ind som Kunde'; $wb['btn_back_txt'] = 'Nej, tilbage til listen'; $wb['udp_port_help_txt'] = 'Adskilt af komma'; $wb['active_txt'] = 'Aktiv'; $wb['firewall_error_unique'] = 'Der er allerede en firewall post for denne server.'; -$wb['tcp_ports_error_regex'] = 'Tegn ikke tilladt i TCP port definition. Tilladt tegn er tal, \":\" og \",\".'; -$wb['udp_ports_error_regex'] = 'Tegn ikke tilladt i UDP port definition. Tilladt tegn er tal, \":\" og \",\".'; +$wb['tcp_ports_error_regex'] = 'Tegn ikke tilladt i TCP port definition. Tilladt tegn er tal, \\":\\" og \\",\\".'; +$wb['udp_ports_error_regex'] = 'Tegn ikke tilladt i UDP port definition. Tilladt tegn er tal, \\":\\" og \\",\\".'; $wb['login_as_or_logout_txt'] = 'Do you want to re-login as {UTYPE} or logout?'; ?> diff --git a/interface/web/login/lib/lang/el_login_as.lng b/interface/web/login/lib/lang/el_login_as.lng index a6c2988017..435d3e9a69 100644 --- a/interface/web/login/lib/lang/el_login_as.lng +++ b/interface/web/login/lib/lang/el_login_as.lng @@ -1,12 +1,12 @@ <?php $wb['login_1_txt'] = 'ΘÎλετε να εισÎλθετε ως χÏήστης;'; -$wb['login_2_txt'] = 'Αν το κάνετε, μποÏείτε να \"επιστÏÎψετε\" κάνοντας αποσÏνδεση.'; +$wb['login_2_txt'] = 'Αν το κάνετε, μποÏείτε να \\"επιστÏÎψετε\\" κάνοντας αποσÏνδεση.'; $wb['btn_yes_txt'] = 'Îαι, είσοδος ως Πελάτης'; $wb['btn_back_txt'] = 'Όχι, επιστÏοφή στην λίστα'; $wb['udp_port_help_txt'] = 'διαχωÏισμός με κόμα'; $wb['active_txt'] = 'Εν ΕνεÏγεία'; $wb['firewall_error_unique'] = 'ΥπάÏχει ήδη μια εγγÏαφή Firewall για αυτόν τον server.'; -$wb['tcp_ports_error_regex'] = 'Μη ÎγκυÏος χαÏακτήÏας για τον οÏισμός θÏÏας tcp. ΕπιτÏεπόμενοι χαÏακτήÏες είναι οι αÏιθμοί, η \":\" και οι \",\".'; -$wb['udp_ports_error_regex'] = 'Μη ÎγκυÏος χαÏακτήÏας για τον οÏισμός θÏÏας udp. ΕπιτÏεπόμενοι χαÏακτήÏες είναι οι αÏιθμοί, η \":\" και οι \",\".'; +$wb['tcp_ports_error_regex'] = 'Μη ÎγκυÏος χαÏακτήÏας για τον οÏισμός θÏÏας tcp. ΕπιτÏεπόμενοι χαÏακτήÏες είναι οι αÏιθμοί, η \\":\\" και οι \\",\\".'; +$wb['udp_ports_error_regex'] = 'Μη ÎγκυÏος χαÏακτήÏας για τον οÏισμός θÏÏας udp. ΕπιτÏεπόμενοι χαÏακτήÏες είναι οι αÏιθμοί, η \\":\\" και οι \\",\\".'; $wb['login_as_or_logout_txt'] = 'Do you want to re-login as {UTYPE} or logout?'; ?> diff --git a/interface/web/login/lib/lang/es_login_as.lng b/interface/web/login/lib/lang/es_login_as.lng index 10a8554bcb..b7f3e21f98 100755 --- a/interface/web/login/lib/lang/es_login_as.lng +++ b/interface/web/login/lib/lang/es_login_as.lng @@ -4,9 +4,9 @@ $wb['btn_back_txt'] = 'No, volver a la lista'; $wb['btn_yes_txt'] = 'SÃ, iniciar sesión como cliente'; $wb['firewall_error_unique'] = 'Ya existe un registro de cortafuegos para este servidor.'; $wb['login_1_txt'] = 'Desea iniciar sesión como usuario'; -$wb['login_2_txt'] = 'Si lo hace, puede \"volver\" haciendo clic en salir.'; -$wb['tcp_ports_error_regex'] = 'Caracteres no permitidos en la definición de puertos tcp. Los caracteres permitidos son: números, \":\" y \",\".'; +$wb['login_2_txt'] = 'Si lo hace, puede \\"volver\\" haciendo clic en salir.'; +$wb['tcp_ports_error_regex'] = 'Caracteres no permitidos en la definición de puertos tcp. Los caracteres permitidos son: números, \\":\\" y \\",\\".'; $wb['udp_port_help_txt'] = 'Separado por comas'; -$wb['udp_ports_error_regex'] = 'Caracteres no permitidos en la definición de puertos udp. Los caracteres permitidos son: números, \":\" y \",\".'; +$wb['udp_ports_error_regex'] = 'Caracteres no permitidos en la definición de puertos udp. Los caracteres permitidos son: números, \\":\\" y \\",\\".'; $wb['login_as_or_logout_txt'] = 'Do you want to re-login as {UTYPE} or logout?'; ?> diff --git a/interface/web/login/lib/lang/fi_login_as.lng b/interface/web/login/lib/lang/fi_login_as.lng index 68cb3318e5..cf75b54b47 100644 --- a/interface/web/login/lib/lang/fi_login_as.lng +++ b/interface/web/login/lib/lang/fi_login_as.lng @@ -1,12 +1,12 @@ <?php $wb['login_1_txt'] = 'Do you want to login as user'; -$wb['login_2_txt'] = 'If you do so, you can \"go back\" by clicking at logout.'; +$wb['login_2_txt'] = 'If you do so, you can \\"go back\\" by clicking at logout.'; $wb['btn_yes_txt'] = 'Yes, login as Client'; $wb['btn_back_txt'] = 'No, back to list'; $wb['udp_port_help_txt'] = 'Separated by comma'; $wb['active_txt'] = 'Active'; $wb['firewall_error_unique'] = 'There is already a firewall record for this server.'; -$wb['tcp_ports_error_regex'] = 'Character not allowed in tcp port definition. Allowed characters are numbers, \":\" and \",\".'; -$wb['udp_ports_error_regex'] = 'Character not allowed in udp port definition. Allowed characters are numbers, \":\" and \",\".'; +$wb['tcp_ports_error_regex'] = 'Character not allowed in tcp port definition. Allowed characters are numbers, \\":\\" and \\",\\".'; +$wb['udp_ports_error_regex'] = 'Character not allowed in udp port definition. Allowed characters are numbers, \\":\\" and \\",\\".'; $wb['login_as_or_logout_txt'] = 'Do you want to re-login as {UTYPE} or logout?'; ?> diff --git a/interface/web/login/lib/lang/hr_login_as.lng b/interface/web/login/lib/lang/hr_login_as.lng index a94f659705..bcd13040d3 100644 --- a/interface/web/login/lib/lang/hr_login_as.lng +++ b/interface/web/login/lib/lang/hr_login_as.lng @@ -1,12 +1,12 @@ <?php $wb['login_1_txt'] = 'Do you want to login as user'; -$wb['login_2_txt'] = 'If you do so, you can \"go back\" by clicking at logout.'; +$wb['login_2_txt'] = 'If you do so, you can \\"go back\\" by clicking at logout.'; $wb['btn_yes_txt'] = 'Yes, login as Client'; $wb['btn_back_txt'] = 'No, back to list'; $wb['udp_port_help_txt'] = 'Odvojeno zarezom'; $wb['active_txt'] = 'Aktivno'; $wb['firewall_error_unique'] = 'There is already a firewall record for this server.'; -$wb['tcp_ports_error_regex'] = 'Character not allowed in tcp port definition. Allowed characters are numbers, \":\" and \",\".'; -$wb['udp_ports_error_regex'] = 'Character not allowed in udp port definition. Allowed characters are numbers, \":\" and \",\".'; +$wb['tcp_ports_error_regex'] = 'Character not allowed in tcp port definition. Allowed characters are numbers, \\":\\" and \\",\\".'; +$wb['udp_ports_error_regex'] = 'Character not allowed in udp port definition. Allowed characters are numbers, \\":\\" and \\",\\".'; $wb['login_as_or_logout_txt'] = 'Do you want to re-login as {UTYPE} or logout?'; ?> diff --git a/interface/web/login/lib/lang/hu_login_as.lng b/interface/web/login/lib/lang/hu_login_as.lng index 68cb3318e5..cf75b54b47 100644 --- a/interface/web/login/lib/lang/hu_login_as.lng +++ b/interface/web/login/lib/lang/hu_login_as.lng @@ -1,12 +1,12 @@ <?php $wb['login_1_txt'] = 'Do you want to login as user'; -$wb['login_2_txt'] = 'If you do so, you can \"go back\" by clicking at logout.'; +$wb['login_2_txt'] = 'If you do so, you can \\"go back\\" by clicking at logout.'; $wb['btn_yes_txt'] = 'Yes, login as Client'; $wb['btn_back_txt'] = 'No, back to list'; $wb['udp_port_help_txt'] = 'Separated by comma'; $wb['active_txt'] = 'Active'; $wb['firewall_error_unique'] = 'There is already a firewall record for this server.'; -$wb['tcp_ports_error_regex'] = 'Character not allowed in tcp port definition. Allowed characters are numbers, \":\" and \",\".'; -$wb['udp_ports_error_regex'] = 'Character not allowed in udp port definition. Allowed characters are numbers, \":\" and \",\".'; +$wb['tcp_ports_error_regex'] = 'Character not allowed in tcp port definition. Allowed characters are numbers, \\":\\" and \\",\\".'; +$wb['udp_ports_error_regex'] = 'Character not allowed in udp port definition. Allowed characters are numbers, \\":\\" and \\",\\".'; $wb['login_as_or_logout_txt'] = 'Do you want to re-login as {UTYPE} or logout?'; ?> diff --git a/interface/web/login/lib/lang/id_login_as.lng b/interface/web/login/lib/lang/id_login_as.lng index 68cb3318e5..cf75b54b47 100644 --- a/interface/web/login/lib/lang/id_login_as.lng +++ b/interface/web/login/lib/lang/id_login_as.lng @@ -1,12 +1,12 @@ <?php $wb['login_1_txt'] = 'Do you want to login as user'; -$wb['login_2_txt'] = 'If you do so, you can \"go back\" by clicking at logout.'; +$wb['login_2_txt'] = 'If you do so, you can \\"go back\\" by clicking at logout.'; $wb['btn_yes_txt'] = 'Yes, login as Client'; $wb['btn_back_txt'] = 'No, back to list'; $wb['udp_port_help_txt'] = 'Separated by comma'; $wb['active_txt'] = 'Active'; $wb['firewall_error_unique'] = 'There is already a firewall record for this server.'; -$wb['tcp_ports_error_regex'] = 'Character not allowed in tcp port definition. Allowed characters are numbers, \":\" and \",\".'; -$wb['udp_ports_error_regex'] = 'Character not allowed in udp port definition. Allowed characters are numbers, \":\" and \",\".'; +$wb['tcp_ports_error_regex'] = 'Character not allowed in tcp port definition. Allowed characters are numbers, \\":\\" and \\",\\".'; +$wb['udp_ports_error_regex'] = 'Character not allowed in udp port definition. Allowed characters are numbers, \\":\\" and \\",\\".'; $wb['login_as_or_logout_txt'] = 'Do you want to re-login as {UTYPE} or logout?'; ?> diff --git a/interface/web/login/lib/lang/it_login_as.lng b/interface/web/login/lib/lang/it_login_as.lng index fab2f1b088..3fa23da274 100644 --- a/interface/web/login/lib/lang/it_login_as.lng +++ b/interface/web/login/lib/lang/it_login_as.lng @@ -1,12 +1,12 @@ <?php $wb['login_1_txt'] = 'Desideri accedere come utente'; -$wb['login_2_txt'] = 'Se vuoi procedere puoi tornare indietro \"go back\" eseguendo il logout.'; +$wb['login_2_txt'] = 'Se vuoi procedere puoi tornare indietro \\"go back\\" eseguendo il logout.'; $wb['btn_yes_txt'] = 'Si, login accedi come cliente'; $wb['btn_back_txt'] = 'No, torna alla lista'; $wb['udp_port_help_txt'] = 'Separato da virgola'; $wb['active_txt'] = 'Attivo'; $wb['firewall_error_unique'] = 'Esiste già un record firewall per questo server.'; -$wb['tcp_ports_error_regex'] = 'Caratteri non autorizzati nella definizine di porta tcp. Sono consentiti caratteri numerici, \":\" e \",\".'; -$wb['udp_ports_error_regex'] = 'Caratteri non autorizzati nella definizine di porta udp. ono consentiti caratteri numerici, \":\" e \",\".'; +$wb['tcp_ports_error_regex'] = 'Caratteri non autorizzati nella definizine di porta tcp. Sono consentiti caratteri numerici, \\":\\" e \\",\\".'; +$wb['udp_ports_error_regex'] = 'Caratteri non autorizzati nella definizine di porta udp. ono consentiti caratteri numerici, \\":\\" e \\",\\".'; $wb['login_as_or_logout_txt'] = 'Do you want to re-login as {UTYPE} or logout?'; ?> diff --git a/interface/web/login/lib/lang/ja_login_as.lng b/interface/web/login/lib/lang/ja_login_as.lng index 68cb3318e5..cf75b54b47 100644 --- a/interface/web/login/lib/lang/ja_login_as.lng +++ b/interface/web/login/lib/lang/ja_login_as.lng @@ -1,12 +1,12 @@ <?php $wb['login_1_txt'] = 'Do you want to login as user'; -$wb['login_2_txt'] = 'If you do so, you can \"go back\" by clicking at logout.'; +$wb['login_2_txt'] = 'If you do so, you can \\"go back\\" by clicking at logout.'; $wb['btn_yes_txt'] = 'Yes, login as Client'; $wb['btn_back_txt'] = 'No, back to list'; $wb['udp_port_help_txt'] = 'Separated by comma'; $wb['active_txt'] = 'Active'; $wb['firewall_error_unique'] = 'There is already a firewall record for this server.'; -$wb['tcp_ports_error_regex'] = 'Character not allowed in tcp port definition. Allowed characters are numbers, \":\" and \",\".'; -$wb['udp_ports_error_regex'] = 'Character not allowed in udp port definition. Allowed characters are numbers, \":\" and \",\".'; +$wb['tcp_ports_error_regex'] = 'Character not allowed in tcp port definition. Allowed characters are numbers, \\":\\" and \\",\\".'; +$wb['udp_ports_error_regex'] = 'Character not allowed in udp port definition. Allowed characters are numbers, \\":\\" and \\",\\".'; $wb['login_as_or_logout_txt'] = 'Do you want to re-login as {UTYPE} or logout?'; ?> diff --git a/interface/web/login/lib/lang/nl_login_as.lng b/interface/web/login/lib/lang/nl_login_as.lng index 3061782706..d4d2715e7a 100644 --- a/interface/web/login/lib/lang/nl_login_as.lng +++ b/interface/web/login/lib/lang/nl_login_as.lng @@ -6,7 +6,7 @@ $wb['btn_back_txt'] = 'Nee, terug naar het overzicht'; $wb['udp_port_help_txt'] = 'Gescheiden door komma'; $wb['active_txt'] = 'Active'; $wb['firewall_error_unique'] = 'There is already a firewall record for this server.'; -$wb['tcp_ports_error_regex'] = 'Character not allowed in tcp port definition. Allowed characters are numbers, \":\" and \",\".'; -$wb['udp_ports_error_regex'] = 'Character not allowed in udp port definition. Allowed characters are numbers, \":\" and \",\".'; +$wb['tcp_ports_error_regex'] = 'Character not allowed in tcp port definition. Allowed characters are numbers, \\":\\" and \\",\\".'; +$wb['udp_ports_error_regex'] = 'Character not allowed in udp port definition. Allowed characters are numbers, \\":\\" and \\",\\".'; $wb['login_as_or_logout_txt'] = 'Do you want to re-login as {UTYPE} or logout?'; ?> diff --git a/interface/web/login/lib/lang/pt_login_as.lng b/interface/web/login/lib/lang/pt_login_as.lng index 68cb3318e5..cf75b54b47 100644 --- a/interface/web/login/lib/lang/pt_login_as.lng +++ b/interface/web/login/lib/lang/pt_login_as.lng @@ -1,12 +1,12 @@ <?php $wb['login_1_txt'] = 'Do you want to login as user'; -$wb['login_2_txt'] = 'If you do so, you can \"go back\" by clicking at logout.'; +$wb['login_2_txt'] = 'If you do so, you can \\"go back\\" by clicking at logout.'; $wb['btn_yes_txt'] = 'Yes, login as Client'; $wb['btn_back_txt'] = 'No, back to list'; $wb['udp_port_help_txt'] = 'Separated by comma'; $wb['active_txt'] = 'Active'; $wb['firewall_error_unique'] = 'There is already a firewall record for this server.'; -$wb['tcp_ports_error_regex'] = 'Character not allowed in tcp port definition. Allowed characters are numbers, \":\" and \",\".'; -$wb['udp_ports_error_regex'] = 'Character not allowed in udp port definition. Allowed characters are numbers, \":\" and \",\".'; +$wb['tcp_ports_error_regex'] = 'Character not allowed in tcp port definition. Allowed characters are numbers, \\":\\" and \\",\\".'; +$wb['udp_ports_error_regex'] = 'Character not allowed in udp port definition. Allowed characters are numbers, \\":\\" and \\",\\".'; $wb['login_as_or_logout_txt'] = 'Do you want to re-login as {UTYPE} or logout?'; ?> diff --git a/interface/web/login/lib/lang/ro_login_as.lng b/interface/web/login/lib/lang/ro_login_as.lng index 68cb3318e5..cf75b54b47 100644 --- a/interface/web/login/lib/lang/ro_login_as.lng +++ b/interface/web/login/lib/lang/ro_login_as.lng @@ -1,12 +1,12 @@ <?php $wb['login_1_txt'] = 'Do you want to login as user'; -$wb['login_2_txt'] = 'If you do so, you can \"go back\" by clicking at logout.'; +$wb['login_2_txt'] = 'If you do so, you can \\"go back\\" by clicking at logout.'; $wb['btn_yes_txt'] = 'Yes, login as Client'; $wb['btn_back_txt'] = 'No, back to list'; $wb['udp_port_help_txt'] = 'Separated by comma'; $wb['active_txt'] = 'Active'; $wb['firewall_error_unique'] = 'There is already a firewall record for this server.'; -$wb['tcp_ports_error_regex'] = 'Character not allowed in tcp port definition. Allowed characters are numbers, \":\" and \",\".'; -$wb['udp_ports_error_regex'] = 'Character not allowed in udp port definition. Allowed characters are numbers, \":\" and \",\".'; +$wb['tcp_ports_error_regex'] = 'Character not allowed in tcp port definition. Allowed characters are numbers, \\":\\" and \\",\\".'; +$wb['udp_ports_error_regex'] = 'Character not allowed in udp port definition. Allowed characters are numbers, \\":\\" and \\",\\".'; $wb['login_as_or_logout_txt'] = 'Do you want to re-login as {UTYPE} or logout?'; ?> diff --git a/interface/web/login/lib/lang/ru_login_as.lng b/interface/web/login/lib/lang/ru_login_as.lng index 46a3eab288..63031d4d09 100644 --- a/interface/web/login/lib/lang/ru_login_as.lng +++ b/interface/web/login/lib/lang/ru_login_as.lng @@ -1,12 +1,12 @@ <?php $wb['login_1_txt'] = 'Ð’Ñ‹ хотите войти как пользователь'; -$wb['login_2_txt'] = 'ЕÑли вы Ñто Ñделаете, вы можете \"вернутьÑÑ\", нажав на \"выход\".'; +$wb['login_2_txt'] = 'ЕÑли вы Ñто Ñделаете, вы можете \\"вернутьÑÑ\\", нажав на \\"выход\\".'; $wb['btn_yes_txt'] = 'Да, войти как Клиент'; $wb['btn_back_txt'] = 'Ðет, назад к ÑпиÑку'; $wb['udp_port_help_txt'] = 'ПеречиÑлить через запÑтую'; $wb['active_txt'] = 'Ðктивно'; $wb['firewall_error_unique'] = 'Уже еÑÑ‚ÑŒ Ñ‚Ð°ÐºÐ°Ñ Ð·Ð°Ð¿Ð¸ÑÑŒ бредмауÑра Ð´Ð»Ñ Ñтого Ñервера.'; -$wb['tcp_ports_error_regex'] = 'ÐедопуÑтимый Ñимвол в указании tcp порта. Корректные Ñиволы - цифры, \":\" и \",\"'; -$wb['udp_ports_error_regex'] = 'Ðекорректный Ñимвол в указании UDP порта. ДопуÑтимые Ñиволы - цифры, \":\" и \",\"'; +$wb['tcp_ports_error_regex'] = 'ÐедопуÑтимый Ñимвол в указании tcp порта. Корректные Ñиволы - цифры, \\":\\" и \\",\\"'; +$wb['udp_ports_error_regex'] = 'Ðекорректный Ñимвол в указании UDP порта. ДопуÑтимые Ñиволы - цифры, \\":\\" и \\",\\"'; $wb['login_as_or_logout_txt'] = 'Ð’Ñ‹ хотите заново войти как {UTYPE} или выйти?'; ?> diff --git a/interface/web/login/lib/lang/se_login_as.lng b/interface/web/login/lib/lang/se_login_as.lng index 203832c7b7..17a82080dc 100644 --- a/interface/web/login/lib/lang/se_login_as.lng +++ b/interface/web/login/lib/lang/se_login_as.lng @@ -1,12 +1,12 @@ <?php $wb['login_1_txt'] = 'Vill du loggga in som användare'; -$wb['login_2_txt'] = 'If you do so, you can \"go back\" by clicking at logout.'; +$wb['login_2_txt'] = 'If you do so, you can \\"go back\\" by clicking at logout.'; $wb['btn_yes_txt'] = 'Ja, logga in som kund'; $wb['btn_back_txt'] = 'Nej, tillbaka till listan'; $wb['udp_port_help_txt'] = 'Avdelade med kommatecken'; $wb['active_txt'] = 'Aktiv'; $wb['firewall_error_unique'] = 'There is already a firewall record for this server.'; -$wb['tcp_ports_error_regex'] = 'Character not allowed in tcp port definition. Allowed characters are numbers, \":\" and \",\".'; -$wb['udp_ports_error_regex'] = 'Character not allowed in udp port definition. Allowed characters are numbers, \":\" and \",\".'; +$wb['tcp_ports_error_regex'] = 'Character not allowed in tcp port definition. Allowed characters are numbers, \\":\\" and \\",\\".'; +$wb['udp_ports_error_regex'] = 'Character not allowed in udp port definition. Allowed characters are numbers, \\":\\" and \\",\\".'; $wb['login_as_or_logout_txt'] = 'Do you want to re-login as {UTYPE} or logout?'; ?> diff --git a/interface/web/login/lib/lang/sk_login_as.lng b/interface/web/login/lib/lang/sk_login_as.lng index 68cb3318e5..cf75b54b47 100644 --- a/interface/web/login/lib/lang/sk_login_as.lng +++ b/interface/web/login/lib/lang/sk_login_as.lng @@ -1,12 +1,12 @@ <?php $wb['login_1_txt'] = 'Do you want to login as user'; -$wb['login_2_txt'] = 'If you do so, you can \"go back\" by clicking at logout.'; +$wb['login_2_txt'] = 'If you do so, you can \\"go back\\" by clicking at logout.'; $wb['btn_yes_txt'] = 'Yes, login as Client'; $wb['btn_back_txt'] = 'No, back to list'; $wb['udp_port_help_txt'] = 'Separated by comma'; $wb['active_txt'] = 'Active'; $wb['firewall_error_unique'] = 'There is already a firewall record for this server.'; -$wb['tcp_ports_error_regex'] = 'Character not allowed in tcp port definition. Allowed characters are numbers, \":\" and \",\".'; -$wb['udp_ports_error_regex'] = 'Character not allowed in udp port definition. Allowed characters are numbers, \":\" and \",\".'; +$wb['tcp_ports_error_regex'] = 'Character not allowed in tcp port definition. Allowed characters are numbers, \\":\\" and \\",\\".'; +$wb['udp_ports_error_regex'] = 'Character not allowed in udp port definition. Allowed characters are numbers, \\":\\" and \\",\\".'; $wb['login_as_or_logout_txt'] = 'Do you want to re-login as {UTYPE} or logout?'; ?> diff --git a/interface/web/login/lib/lang/tr_login_as.lng b/interface/web/login/lib/lang/tr_login_as.lng index a000d44342..f7f12feeff 100644 --- a/interface/web/login/lib/lang/tr_login_as.lng +++ b/interface/web/login/lib/lang/tr_login_as.lng @@ -1,12 +1,12 @@ <?php $wb['login_1_txt'] = 'Bu kullanıcı olarak oturum açmak ister misiniz'; -$wb['login_2_txt'] = '\"Geri dönmek\" için oturumu kapat üzerine tıklayın.'; +$wb['login_2_txt'] = '\\"Geri dönmek\\" için oturumu kapat üzerine tıklayın.'; $wb['btn_yes_txt'] = 'Evet, Müşteri olarak oturum aç'; $wb['btn_back_txt'] = 'Hayır, listeye geri dön'; $wb['udp_port_help_txt'] = 'Virgül ile ayırarak yazın'; $wb['active_txt'] = 'Etkin'; $wb['firewall_error_unique'] = 'Bu sunucu için bir güvenlik duvarı kaydı zaten var.'; -$wb['tcp_ports_error_regex'] = 'TCP kapı açıklamasında karakter kullanılamaz. Yalnız rakam, \":\" ve \",\" karakterleri kullanılabilir.'; -$wb['udp_ports_error_regex'] = 'UDP kapı açıklamasında karakter kullanılamaz. Yalnız rakam, \":\" ve \",\" karakterleri kullanılabilir.'; +$wb['tcp_ports_error_regex'] = 'TCP kapı açıklamasında karakter kullanılamaz. Yalnız rakam, \\":\\" ve \\",\\" karakterleri kullanılabilir.'; +$wb['udp_ports_error_regex'] = 'UDP kapı açıklamasında karakter kullanılamaz. Yalnız rakam, \\":\\" ve \\",\\" karakterleri kullanılabilir.'; $wb['login_as_or_logout_txt'] = 'Do you want to re-login as {UTYPE} or logout?'; ?> diff --git a/interface/web/mail/lib/lang/ar.lng b/interface/web/mail/lib/lang/ar.lng index e12b05e278..3d15a518a1 100644 --- a/interface/web/mail/lib/lang/ar.lng +++ b/interface/web/mail/lib/lang/ar.lng @@ -45,4 +45,6 @@ $wb['Global Filters'] = 'Global Filters'; $wb['Domain Alias'] = 'Domain Alias'; $wb['Relay Recipients'] = 'Relay Recipients'; $wb['Mailbox quota'] = 'Mailbox quota'; +$wb['add_header_txt'] = 'Header (adds \"X-Spam: Yes\")'; +$wb['rewrite_subject_txt'] = 'Subject (adds \"***SPAM***\" at the beginning)'; ?> diff --git a/interface/web/mail/lib/lang/ar_mail_domain_catchall.lng b/interface/web/mail/lib/lang/ar_mail_domain_catchall.lng index af8e42f24b..d1b54151d2 100644 --- a/interface/web/mail/lib/lang/ar_mail_domain_catchall.lng +++ b/interface/web/mail/lib/lang/ar_mail_domain_catchall.lng @@ -8,4 +8,5 @@ $wb['domain_error_regex'] = 'Invalid domain name od domain contains invalid char $wb['limit_mailcatchall_txt'] = 'The max. number of email catchall accounts for your account is reached.'; $wb['source_txt'] = 'Source'; $wb['destination_error_isemail'] = 'Destination is no valid email address.'; +$wb['greylisting_txt'] = 'Enable greylisting'; ?> diff --git a/interface/web/mail/lib/lang/ar_mail_get.lng b/interface/web/mail/lib/lang/ar_mail_get.lng index 5d6a72fbfb..8ae7712151 100644 --- a/interface/web/mail/lib/lang/ar_mail_get.lng +++ b/interface/web/mail/lib/lang/ar_mail_get.lng @@ -14,6 +14,6 @@ $wb['source_password_error_isempty'] = 'Password is empty.'; $wb['destination_error_isemail'] = 'No destination selected.'; $wb['source_server_error_regex'] = 'Pop3/Imap Server is not a valid domain name.'; $wb['source_read_all_txt'] = 'Retrieve all emails (incl. read mails)'; -$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['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'] = 'Please check first if email retrieval works, before you activate this option.'; ?> diff --git a/interface/web/mail/lib/lang/ar_spamfilter_policy.lng b/interface/web/mail/lib/lang/ar_spamfilter_policy.lng index e876330a68..683b378c21 100644 --- a/interface/web/mail/lib/lang/ar_spamfilter_policy.lng +++ b/interface/web/mail/lib/lang/ar_spamfilter_policy.lng @@ -35,4 +35,17 @@ $wb['bad_header_admin_txt'] = 'Bad header admin'; $wb['spam_admin_txt'] = 'SPAM admin'; $wb['message_size_limit_txt'] = 'Message size limit'; $wb['banned_rulenames_txt'] = 'Banned rulenames'; +$wb['rspamd_greylisting_txt'] = 'Use greylisting'; +$wb['rspamd_spam_greylisting_level_txt'] = 'Greylisting level'; +$wb['rspamd_spam_tag_level_txt'] = 'SPAM tag level'; +$wb['rspamd_spam_tag_method_txt'] = 'SPAM tag method'; +$wb['rspamd_spam_kill_level_txt'] = 'SPAM reject level'; +$wb['btn_save_txt'] = 'Save'; +$wb['btn_cancel_txt'] = 'Cancel'; +$wb['amavis_settings_txt'] = 'Settings'; +$wb['amavis_taglevel_txt'] = 'Tag-Level'; +$wb['amavis_quarantine_txt'] = 'Quarantine'; +$wb['amavis_other_txt'] = 'Other'; +$wb['add_header_txt'] = 'Add header'; +$wb['rewrite_subject_txt'] = 'Rewrite subject'; ?> diff --git a/interface/web/mail/lib/lang/bg.lng b/interface/web/mail/lib/lang/bg.lng index a1299f4472..c117c863a2 100644 --- a/interface/web/mail/lib/lang/bg.lng +++ b/interface/web/mail/lib/lang/bg.lng @@ -45,4 +45,6 @@ $wb['Global Filters'] = 'Глобални филтри'; $wb['Domain Alias'] = 'Domain Alias'; $wb['Relay Recipients'] = 'Relay Recipients'; $wb['Mailbox quota'] = 'Mailbox quota'; +$wb['add_header_txt'] = 'Header (adds \"X-Spam: Yes\")'; +$wb['rewrite_subject_txt'] = 'Subject (adds \"***SPAM***\" at the beginning)'; ?> diff --git a/interface/web/mail/lib/lang/bg_mail_domain_catchall.lng b/interface/web/mail/lib/lang/bg_mail_domain_catchall.lng index 5db26b11a1..06f1f01e11 100644 --- a/interface/web/mail/lib/lang/bg_mail_domain_catchall.lng +++ b/interface/web/mail/lib/lang/bg_mail_domain_catchall.lng @@ -8,4 +8,5 @@ $wb['domain_error_regex'] = 'Грешен домейн или непозволе $wb['limit_mailcatchall_txt'] = 'МакÑималниÑÑ‚ брой запиÑи за catchall в твоÑÑ‚ акоунт е доÑтигнат.'; $wb['source_txt'] = 'Source'; $wb['destination_error_isemail'] = 'Destination is no valid email address.'; +$wb['greylisting_txt'] = 'Enable greylisting'; ?> diff --git a/interface/web/mail/lib/lang/bg_mail_get.lng b/interface/web/mail/lib/lang/bg_mail_get.lng index 305256d5c6..e1b1935d32 100644 --- a/interface/web/mail/lib/lang/bg_mail_get.lng +++ b/interface/web/mail/lib/lang/bg_mail_get.lng @@ -14,6 +14,6 @@ $wb['source_password_error_isempty'] = 'Password is empty.'; $wb['destination_error_isemail'] = 'No destination selected.'; $wb['source_server_error_regex'] = 'Pop3/Imap Server is not a valid domain name.'; $wb['source_read_all_txt'] = 'Retrieve all emails (incl. read mails)'; -$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['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'] = 'Please check first if email retrieval works, before you activate this option.'; ?> diff --git a/interface/web/mail/lib/lang/bg_spamfilter_policy.lng b/interface/web/mail/lib/lang/bg_spamfilter_policy.lng index e876330a68..683b378c21 100644 --- a/interface/web/mail/lib/lang/bg_spamfilter_policy.lng +++ b/interface/web/mail/lib/lang/bg_spamfilter_policy.lng @@ -35,4 +35,17 @@ $wb['bad_header_admin_txt'] = 'Bad header admin'; $wb['spam_admin_txt'] = 'SPAM admin'; $wb['message_size_limit_txt'] = 'Message size limit'; $wb['banned_rulenames_txt'] = 'Banned rulenames'; +$wb['rspamd_greylisting_txt'] = 'Use greylisting'; +$wb['rspamd_spam_greylisting_level_txt'] = 'Greylisting level'; +$wb['rspamd_spam_tag_level_txt'] = 'SPAM tag level'; +$wb['rspamd_spam_tag_method_txt'] = 'SPAM tag method'; +$wb['rspamd_spam_kill_level_txt'] = 'SPAM reject level'; +$wb['btn_save_txt'] = 'Save'; +$wb['btn_cancel_txt'] = 'Cancel'; +$wb['amavis_settings_txt'] = 'Settings'; +$wb['amavis_taglevel_txt'] = 'Tag-Level'; +$wb['amavis_quarantine_txt'] = 'Quarantine'; +$wb['amavis_other_txt'] = 'Other'; +$wb['add_header_txt'] = 'Add header'; +$wb['rewrite_subject_txt'] = 'Rewrite subject'; ?> diff --git a/interface/web/mail/lib/lang/br.lng b/interface/web/mail/lib/lang/br.lng index 3ae45b5db0..972e134bc8 100644 --- a/interface/web/mail/lib/lang/br.lng +++ b/interface/web/mail/lib/lang/br.lng @@ -45,4 +45,6 @@ $wb['Domain Alias'] = 'Apelidos de domÃnio'; $wb['Relay Recipients'] = 'Destinatários de retransmissão'; $wb['Mailbox quota'] = 'Cota para contas de e-mails'; $wb['Server'] = 'Servidor'; +$wb['add_header_txt'] = 'Header (adds \"X-Spam: Yes\")'; +$wb['rewrite_subject_txt'] = 'Subject (adds \"***SPAM***\" at the beginning)'; ?> diff --git a/interface/web/mail/lib/lang/br_mail_domain_catchall.lng b/interface/web/mail/lib/lang/br_mail_domain_catchall.lng index df5fd39b9a..3c4c6a2628 100644 --- a/interface/web/mail/lib/lang/br_mail_domain_catchall.lng +++ b/interface/web/mail/lib/lang/br_mail_domain_catchall.lng @@ -8,4 +8,5 @@ $wb['domain_error_regex'] = 'O domÃnio contém caracteres inválidos'; $wb['limit_mailcatchall_txt'] = 'O limite de contas cata tudo para este domÃnio foi alcançado.'; $wb['source_txt'] = 'Origem'; $wb['destination_error_isemail'] = 'Destino não é um e-mail válido.'; +$wb['greylisting_txt'] = 'Enable greylisting'; ?> diff --git a/interface/web/mail/lib/lang/br_mail_user.lng b/interface/web/mail/lib/lang/br_mail_user.lng index a786566277..f91d40f625 100644 --- a/interface/web/mail/lib/lang/br_mail_user.lng +++ b/interface/web/mail/lib/lang/br_mail_user.lng @@ -35,7 +35,7 @@ $wb['name_txt'] = 'Nome real'; $wb['name_optional_txt'] = '(Opcional)'; $wb['autoresponder_active'] = 'Ativar autoresposta'; $wb['cc_txt'] = 'Enviar cópia para'; -$wb['cc_error_isemail'] = 'O campo \"Enviar cópia para\" deve conter um endereço de e-mail válido'; +$wb['cc_error_isemail'] = 'O campo \\"Enviar cópia para\\" deve conter um endereço de e-mail válido'; $wb['domain_txt'] = 'DomÃnio'; $wb['now_txt'] = 'Agora'; $wb['login_error_unique'] = 'O acesso já está em uso.'; @@ -48,7 +48,7 @@ $wb['generate_password_txt'] = 'Gerar senha'; $wb['repeat_password_txt'] = 'Repetir senha'; $wb['password_mismatch_txt'] = 'A senhas não coincidem.'; $wb['password_match_txt'] = 'A senhas coincidem.'; -$wb['email_error_isascii'] = 'Por favor não use caracteres \"unicode\" para a senha. Esta ação poderá causar problemas com seu cliente de e-mail (mua).'; +$wb['email_error_isascii'] = 'Por favor não use caracteres \\"unicode\\" para a senha. Esta ação poderá causar problemas com seu cliente de e-mail (mua).'; $wb['cc_note_txt'] = '(Múltiplos e-mails separados por vÃrgulas)'; $wb['disablesmtp_txt'] = 'Desabilitar smtp (envio)'; $wb['autoresponder_start_date_is_required'] = 'Data de inÃcio deve ser configurada quando \'autoresposta\' é habilitada.'; diff --git a/interface/web/mail/lib/lang/br_spamfilter_policy.lng b/interface/web/mail/lib/lang/br_spamfilter_policy.lng index 998f36d8fa..b5bb69db43 100644 --- a/interface/web/mail/lib/lang/br_spamfilter_policy.lng +++ b/interface/web/mail/lib/lang/br_spamfilter_policy.lng @@ -35,4 +35,17 @@ $wb['bad_header_admin_txt'] = 'Administrador para cabeçalhos inválidos'; $wb['spam_admin_txt'] = 'Administrador para spam'; $wb['message_size_limit_txt'] = 'Tamanho máximo da mensagem'; $wb['banned_rulenames_txt'] = 'Regras de banimento'; +$wb['rspamd_greylisting_txt'] = 'Use greylisting'; +$wb['rspamd_spam_greylisting_level_txt'] = 'Greylisting level'; +$wb['rspamd_spam_tag_level_txt'] = 'SPAM tag level'; +$wb['rspamd_spam_tag_method_txt'] = 'SPAM tag method'; +$wb['rspamd_spam_kill_level_txt'] = 'SPAM reject level'; +$wb['btn_save_txt'] = 'Save'; +$wb['btn_cancel_txt'] = 'Cancel'; +$wb['amavis_settings_txt'] = 'Settings'; +$wb['amavis_taglevel_txt'] = 'Tag-Level'; +$wb['amavis_quarantine_txt'] = 'Quarantine'; +$wb['amavis_other_txt'] = 'Other'; +$wb['add_header_txt'] = 'Add header'; +$wb['rewrite_subject_txt'] = 'Rewrite subject'; ?> diff --git a/interface/web/mail/lib/lang/ca.lng b/interface/web/mail/lib/lang/ca.lng index 1665346a82..0531f19bd0 100644 --- a/interface/web/mail/lib/lang/ca.lng +++ b/interface/web/mail/lib/lang/ca.lng @@ -45,4 +45,6 @@ $wb['Mailbox traffic'] = 'Trafic de la boite courriels'; $wb['Domain Alias'] = 'Alias de domaine'; $wb['Relay Recipients'] = 'Destinataires de relais'; $wb['Mailbox quota'] = 'Quota courriel'; +$wb['add_header_txt'] = 'Header (adds \"X-Spam: Yes\")'; +$wb['rewrite_subject_txt'] = 'Subject (adds \"***SPAM***\" at the beginning)'; ?> diff --git a/interface/web/mail/lib/lang/ca_mail_domain_catchall.lng b/interface/web/mail/lib/lang/ca_mail_domain_catchall.lng index 7e82c34ca2..feafd436f6 100644 --- a/interface/web/mail/lib/lang/ca_mail_domain_catchall.lng +++ b/interface/web/mail/lib/lang/ca_mail_domain_catchall.lng @@ -8,4 +8,5 @@ $wb['domain_error_regex'] = 'Nom de domaine invalide, ou contient des caractère $wb['limit_mailcatchall_txt'] = 'Le nombre maximal de comptes collecteurs pour votre compte a été atteint.'; $wb['source_txt'] = 'Source'; $wb['destination_error_isemail'] = 'La destination n\'est pas valide.'; +$wb['greylisting_txt'] = 'Enable greylisting'; ?> diff --git a/interface/web/mail/lib/lang/ca_mail_get.lng b/interface/web/mail/lib/lang/ca_mail_get.lng index 9300a29049..a13a1b03f6 100644 --- a/interface/web/mail/lib/lang/ca_mail_get.lng +++ b/interface/web/mail/lib/lang/ca_mail_get.lng @@ -14,6 +14,6 @@ $wb['source_password_error_isempty'] = 'Le mot de passe est vide.'; $wb['destination_error_isemail'] = 'Pas de destination sélectionnée.'; $wb['source_server_error_regex'] = 'Le serveur POP3 / IMAP n\'est pas un nom de domaine valide.'; $wb['source_read_all_txt'] = 'Récupérer tous les courriels (incl. les courriels lus)'; -$wb['error_delete_read_all_combination'] = 'Combinaison d\'options non autorisée. Vous ne pouvez pas utiliser \"Supprimer les courriels après récupération\" = non avec \"Récupérer tous les courriels\" = oui'; +$wb['error_delete_read_all_combination'] = 'Combinaison d\'options non autorisée. Vous ne pouvez pas utiliser \\"Supprimer les courriels après récupération\\" = non avec \\"Récupérer tous les courriels\\" = oui'; $wb['source_delete_note_txt'] = 'Please check first if courriel retrieval works, before you activate this option.'; ?> diff --git a/interface/web/mail/lib/lang/ca_spamfilter_policy.lng b/interface/web/mail/lib/lang/ca_spamfilter_policy.lng index d07b382ddf..7b593f0a16 100644 --- a/interface/web/mail/lib/lang/ca_spamfilter_policy.lng +++ b/interface/web/mail/lib/lang/ca_spamfilter_policy.lng @@ -35,4 +35,17 @@ $wb['bad_header_admin_txt'] = 'Admin mauvais entête'; $wb['spam_admin_txt'] = 'Admin SPAM'; $wb['message_size_limit_txt'] = 'Limite de taille de message'; $wb['banned_rulenames_txt'] = 'Noms des règles bannir'; +$wb['rspamd_greylisting_txt'] = 'Use greylisting'; +$wb['rspamd_spam_greylisting_level_txt'] = 'Greylisting level'; +$wb['rspamd_spam_tag_level_txt'] = 'SPAM tag level'; +$wb['rspamd_spam_tag_method_txt'] = 'SPAM tag method'; +$wb['rspamd_spam_kill_level_txt'] = 'SPAM reject level'; +$wb['btn_save_txt'] = 'Save'; +$wb['btn_cancel_txt'] = 'Cancel'; +$wb['amavis_settings_txt'] = 'Settings'; +$wb['amavis_taglevel_txt'] = 'Tag-Level'; +$wb['amavis_quarantine_txt'] = 'Quarantine'; +$wb['amavis_other_txt'] = 'Other'; +$wb['add_header_txt'] = 'Add header'; +$wb['rewrite_subject_txt'] = 'Rewrite subject'; ?> diff --git a/interface/web/mail/lib/lang/cz.lng b/interface/web/mail/lib/lang/cz.lng index d0f6157cb4..040a6d0de8 100644 --- a/interface/web/mail/lib/lang/cz.lng +++ b/interface/web/mail/lib/lang/cz.lng @@ -45,4 +45,6 @@ $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'; +$wb['add_header_txt'] = 'Header (adds \"X-Spam: Yes\")'; +$wb['rewrite_subject_txt'] = 'Subject (adds \"***SPAM***\" at the beginning)'; ?> 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 ab4006df0c..d0ae7c7e4b 100644 --- a/interface/web/mail/lib/lang/cz_mail_domain_catchall.lng +++ b/interface/web/mail/lib/lang/cz_mail_domain_catchall.lng @@ -8,4 +8,5 @@ $wb['domain_error_regex'] = 'Chybné doménové jméno nebo doména obsahuje chy $wb['limit_mailcatchall_txt'] = 'Byl dosažen maximálnà poÄet košů úÄtů pro Váš úÄet.'; $wb['source_txt'] = 'Zdroj'; $wb['destination_error_isemail'] = 'CÃlová e-mailová adresa nenà platná.'; +$wb['greylisting_txt'] = 'Enable greylisting'; ?> diff --git a/interface/web/mail/lib/lang/cz_mail_get.lng b/interface/web/mail/lib/lang/cz_mail_get.lng index 3dfee1a5ef..cdb39b09a1 100644 --- a/interface/web/mail/lib/lang/cz_mail_get.lng +++ b/interface/web/mail/lib/lang/cz_mail_get.lng @@ -14,6 +14,6 @@ $wb['source_password_error_isempty'] = 'Heslo je prázdné.'; $wb['destination_error_isemail'] = 'Nevybrán žádný cÃl.'; $wb['source_server_error_regex'] = 'POP3/IMAP server nenà validnà doménový název.'; $wb['source_read_all_txt'] = 'NaÄÃst vÅ¡echny e-maily (vÄetnÄ› již pÅ™eÄtené poÅ¡ty)'; -$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['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Ãmánà e-mailů funguje, než aktivujete tuto možnost.'; ?> diff --git a/interface/web/mail/lib/lang/cz_mail_mailinglist.lng b/interface/web/mail/lib/lang/cz_mail_mailinglist.lng index f534d6c8e9..e1f7dfbfa5 100644 --- a/interface/web/mail/lib/lang/cz_mail_mailinglist.lng +++ b/interface/web/mail/lib/lang/cz_mail_mailinglist.lng @@ -16,7 +16,7 @@ $wb['generate_password_txt'] = 'Generovat heslo'; $wb['repeat_password_txt'] = 'Opakujte heslo'; $wb['password_mismatch_txt'] = 'Hesla se neshodujÃ.'; $wb['password_match_txt'] = 'Hesla se shodujÃ.'; -$wb['listname_error_unique'] = 'Na serveru je již shodný \"název seznamu\". ProsÃm, vyberte si jiný \"název seznamu\".'; +$wb['listname_error_unique'] = 'Na serveru je již shodný \\"název seznamu\\". ProsÃm, vyberte si jiný \\"název seznamu\\".'; $wb['email_error_isemail'] = 'E-mailová adresa je neplatná.'; $wb['mailinglist_txt'] = 'E-mailové konference'; ?> diff --git a/interface/web/mail/lib/lang/cz_spamfilter_policy.lng b/interface/web/mail/lib/lang/cz_spamfilter_policy.lng index c5765e807f..b8b8a2e78f 100644 --- a/interface/web/mail/lib/lang/cz_spamfilter_policy.lng +++ b/interface/web/mail/lib/lang/cz_spamfilter_policy.lng @@ -35,4 +35,17 @@ $wb['bad_header_admin_txt'] = 'Å patná hlaviÄka admin'; $wb['spam_admin_txt'] = 'SPAM admin'; $wb['message_size_limit_txt'] = 'Limit velikosti zprávy'; $wb['banned_rulenames_txt'] = 'Název pravidel zabanované'; +$wb['rspamd_greylisting_txt'] = 'Use greylisting'; +$wb['rspamd_spam_greylisting_level_txt'] = 'Greylisting level'; +$wb['rspamd_spam_tag_level_txt'] = 'SPAM tag level'; +$wb['rspamd_spam_tag_method_txt'] = 'SPAM tag method'; +$wb['rspamd_spam_kill_level_txt'] = 'SPAM reject level'; +$wb['btn_save_txt'] = 'Save'; +$wb['btn_cancel_txt'] = 'Cancel'; +$wb['amavis_settings_txt'] = 'Settings'; +$wb['amavis_taglevel_txt'] = 'Tag-Level'; +$wb['amavis_quarantine_txt'] = 'Quarantine'; +$wb['amavis_other_txt'] = 'Other'; +$wb['add_header_txt'] = 'Add header'; +$wb['rewrite_subject_txt'] = 'Rewrite subject'; ?> diff --git a/interface/web/mail/lib/lang/de.lng b/interface/web/mail/lib/lang/de.lng index 91418972dd..e0f1e7cd3b 100644 --- a/interface/web/mail/lib/lang/de.lng +++ b/interface/web/mail/lib/lang/de.lng @@ -45,4 +45,6 @@ $wb['Global Filters'] = 'Globale Filter'; $wb['Domain Alias'] = 'E-Mail Domain Alias'; $wb['Relay Recipients'] = 'Relay Empfänger'; $wb['Mailbox quota'] = 'E-Mail Konto Speichernutzung'; +$wb['add_header_txt'] = 'Header (adds \"X-Spam: Yes\")'; +$wb['rewrite_subject_txt'] = 'Subject (adds \"***SPAM***\" at the beginning)'; ?> diff --git a/interface/web/mail/lib/lang/de_spamfilter_policy.lng b/interface/web/mail/lib/lang/de_spamfilter_policy.lng index 1efbcb6afc..1036fbf91c 100644 --- a/interface/web/mail/lib/lang/de_spamfilter_policy.lng +++ b/interface/web/mail/lib/lang/de_spamfilter_policy.lng @@ -42,10 +42,10 @@ $wb['rspamd_spam_tag_method_txt'] = 'SPAM-Markierungsmethode'; $wb['rspamd_spam_kill_level_txt'] = 'SPAM-Reject-Level'; $wb['btn_save_txt'] = 'Speichern'; $wb['btn_cancel_txt'] = 'Abbrechen'; - $wb['amavis_settings_txt'] = 'Einstellungen'; $wb['amavis_taglevel_txt'] = 'Tag-Level'; $wb['amavis_quarantine_txt'] = 'Quarantäne'; $wb['amavis_other_txt'] = 'Sonstiges'; $wb['add_header_txt'] = 'Header hinzufügen'; -$wb['rewrite_subject_txt'] = 'Betreff ändern'; \ No newline at end of file +$wb['rewrite_subject_txt'] = 'Betreff ändern'; +?> diff --git a/interface/web/mail/lib/lang/dk.lng b/interface/web/mail/lib/lang/dk.lng index 7330253c23..3fe8d568ae 100644 --- a/interface/web/mail/lib/lang/dk.lng +++ b/interface/web/mail/lib/lang/dk.lng @@ -45,4 +45,6 @@ $wb['Global Filters'] = 'Global Filtere'; $wb['Domain Alias'] = 'Domæne Alias'; $wb['Relay Recipients'] = 'Relay Modtagere'; $wb['Mailbox quota'] = 'Postboks kvota'; +$wb['add_header_txt'] = 'Header (adds \"X-Spam: Yes\")'; +$wb['rewrite_subject_txt'] = 'Subject (adds \"***SPAM***\" at the beginning)'; ?> diff --git a/interface/web/mail/lib/lang/dk_mail_domain_catchall.lng b/interface/web/mail/lib/lang/dk_mail_domain_catchall.lng index 0cdcad2098..8c0be49775 100644 --- a/interface/web/mail/lib/lang/dk_mail_domain_catchall.lng +++ b/interface/web/mail/lib/lang/dk_mail_domain_catchall.lng @@ -8,4 +8,5 @@ $wb['domain_error_regex'] = 'Ugyldigt domæne navn eller domæne, indeholder ugy $wb['limit_mailcatchall_txt'] = 'Max. antal af e-mail catchall konti for din konto er nÃ¥et.'; $wb['source_txt'] = 'Kilde'; $wb['destination_error_isemail'] = 'Destinationen er ikke en gyldig e-mail adresse.'; +$wb['greylisting_txt'] = 'Enable greylisting'; ?> diff --git a/interface/web/mail/lib/lang/dk_mail_get.lng b/interface/web/mail/lib/lang/dk_mail_get.lng index dc0b7455ac..1fa44cb6ad 100644 --- a/interface/web/mail/lib/lang/dk_mail_get.lng +++ b/interface/web/mail/lib/lang/dk_mail_get.lng @@ -15,5 +15,5 @@ $wb['source_username_error_isempty'] = 'Brugernavn er tom.'; $wb['source_password_error_isempty'] = 'Adgangskode er tom.'; $wb['destination_error_isemail'] = 'Ingen destination er valgt.'; $wb['source_server_error_regex'] = 'Pop3/Imap Server er ikke et gyldigt domænenavn.'; -$wb['error_delete_read_all_combination'] = 'Ulovlig kombination af muligheder. Du kan ikke bruge \"Slet e-mails efter hentning\" = nej sammen med \"Hent alle e-mails\" = ja'; +$wb['error_delete_read_all_combination'] = 'Ulovlig kombination af muligheder. Du kan ikke bruge \\"Slet e-mails efter hentning\\" = nej sammen med \\"Hent alle e-mails\\" = ja'; ?> diff --git a/interface/web/mail/lib/lang/dk_spamfilter_policy.lng b/interface/web/mail/lib/lang/dk_spamfilter_policy.lng index b225eb48ac..97b02923d8 100644 --- a/interface/web/mail/lib/lang/dk_spamfilter_policy.lng +++ b/interface/web/mail/lib/lang/dk_spamfilter_policy.lng @@ -35,4 +35,17 @@ $wb['bad_header_admin_txt'] = 'Bad header admin'; $wb['spam_admin_txt'] = 'SPAM admin'; $wb['message_size_limit_txt'] = 'Meddelelses størrelse grænse'; $wb['banned_rulenames_txt'] = 'Bandlyste reglnavne'; +$wb['rspamd_greylisting_txt'] = 'Use greylisting'; +$wb['rspamd_spam_greylisting_level_txt'] = 'Greylisting level'; +$wb['rspamd_spam_tag_level_txt'] = 'SPAM tag level'; +$wb['rspamd_spam_tag_method_txt'] = 'SPAM tag method'; +$wb['rspamd_spam_kill_level_txt'] = 'SPAM reject level'; +$wb['btn_save_txt'] = 'Save'; +$wb['btn_cancel_txt'] = 'Cancel'; +$wb['amavis_settings_txt'] = 'Settings'; +$wb['amavis_taglevel_txt'] = 'Tag-Level'; +$wb['amavis_quarantine_txt'] = 'Quarantine'; +$wb['amavis_other_txt'] = 'Other'; +$wb['add_header_txt'] = 'Add header'; +$wb['rewrite_subject_txt'] = 'Rewrite subject'; ?> diff --git a/interface/web/mail/lib/lang/el.lng b/interface/web/mail/lib/lang/el.lng index f8cadc62f0..cb873eac2a 100644 --- a/interface/web/mail/lib/lang/el.lng +++ b/interface/web/mail/lib/lang/el.lng @@ -45,4 +45,6 @@ $wb['Global Filters'] = 'Καθολικά ΦίλτÏα'; $wb['Domain Alias'] = 'Ψευδώνυμο Domain'; $wb['Relay Recipients'] = 'ΠαÏαλήπτες Relay'; $wb['Mailbox quota'] = 'Mailbox quota'; +$wb['add_header_txt'] = 'Header (adds \"X-Spam: Yes\")'; +$wb['rewrite_subject_txt'] = 'Subject (adds \"***SPAM***\" at the beginning)'; ?> diff --git a/interface/web/mail/lib/lang/el_mail_domain_catchall.lng b/interface/web/mail/lib/lang/el_mail_domain_catchall.lng index 43c0bdf565..b04b43cfcc 100644 --- a/interface/web/mail/lib/lang/el_mail_domain_catchall.lng +++ b/interface/web/mail/lib/lang/el_mail_domain_catchall.lng @@ -8,4 +8,5 @@ $wb['domain_error_regex'] = 'Μη ÎγκÏÏ…Ïο όνομα domain ή το όν $wb['limit_mailcatchall_txt'] = 'Το μÎγιστο πλήθος των email catchall για τον λογαÏιασμό σας, Îχει εξαντληθεί.'; $wb['source_txt'] = 'Source'; $wb['destination_error_isemail'] = 'Destination is no valid email address.'; +$wb['greylisting_txt'] = 'Enable greylisting'; ?> diff --git a/interface/web/mail/lib/lang/el_mail_get.lng b/interface/web/mail/lib/lang/el_mail_get.lng index cc2c261a5b..0ec9645c8f 100644 --- a/interface/web/mail/lib/lang/el_mail_get.lng +++ b/interface/web/mail/lib/lang/el_mail_get.lng @@ -14,6 +14,6 @@ $wb['source_password_error_isempty'] = 'Το Συνθηματικό δεν Îχ $wb['destination_error_isemail'] = 'Δεν επιλÎχθηκε Ï€ÏοοÏισμός.'; $wb['source_server_error_regex'] = 'Το όνομα του Pop3/Imap Server δεν είναι ÎγκυÏο.'; $wb['source_read_all_txt'] = 'Ανάκτηση όλων των emails (συμπεÏ. αναγνωσμÎνων mails)'; -$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['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'] = 'Please check first if email retrieval works, before you activate this option.'; ?> diff --git a/interface/web/mail/lib/lang/el_spamfilter_policy.lng b/interface/web/mail/lib/lang/el_spamfilter_policy.lng index 4ab7291697..0eed350239 100644 --- a/interface/web/mail/lib/lang/el_spamfilter_policy.lng +++ b/interface/web/mail/lib/lang/el_spamfilter_policy.lng @@ -35,4 +35,17 @@ $wb['bad_header_admin_txt'] = 'Bad header admin'; $wb['spam_admin_txt'] = 'SPAM admin'; $wb['message_size_limit_txt'] = 'ÎŒÏιο μεγÎθους μηνÏματος'; $wb['banned_rulenames_txt'] = 'Banned rulenames'; +$wb['rspamd_greylisting_txt'] = 'Use greylisting'; +$wb['rspamd_spam_greylisting_level_txt'] = 'Greylisting level'; +$wb['rspamd_spam_tag_level_txt'] = 'SPAM tag level'; +$wb['rspamd_spam_tag_method_txt'] = 'SPAM tag method'; +$wb['rspamd_spam_kill_level_txt'] = 'SPAM reject level'; +$wb['btn_save_txt'] = 'Save'; +$wb['btn_cancel_txt'] = 'Cancel'; +$wb['amavis_settings_txt'] = 'Settings'; +$wb['amavis_taglevel_txt'] = 'Tag-Level'; +$wb['amavis_quarantine_txt'] = 'Quarantine'; +$wb['amavis_other_txt'] = 'Other'; +$wb['add_header_txt'] = 'Add header'; +$wb['rewrite_subject_txt'] = 'Rewrite subject'; ?> diff --git a/interface/web/mail/lib/lang/es.lng b/interface/web/mail/lib/lang/es.lng index 787007a7fc..fdf4e5b00d 100755 --- a/interface/web/mail/lib/lang/es.lng +++ b/interface/web/mail/lib/lang/es.lng @@ -8,7 +8,7 @@ $wb['Domain'] = 'Dominio'; $wb['Email Accounts'] = 'Cuentas de correo'; $wb['Email Alias'] = 'Alias de correo'; $wb['Email Blacklist'] = 'Lista negra de correo'; -$wb['Email Catchall'] = 'Correo \"recoge-todo\"'; +$wb['Email Catchall'] = 'Correo \\"recoge-todo\\"'; $wb['Email filter'] = 'Filtro de correo'; $wb['Email Forward'] = 'ReenvÃo de correo'; $wb['Email Mailbox'] = 'Buzón de correo'; @@ -45,4 +45,6 @@ $wb['Tag-Level'] = 'Nivel de etiqueta'; $wb['User / Domain'] = 'Usuario / Dominio'; $wb['Users'] = 'Usuarios'; $wb['Whitelist'] = 'Lista blanca'; +$wb['add_header_txt'] = 'Header (adds \"X-Spam: Yes\")'; +$wb['rewrite_subject_txt'] = 'Subject (adds \"***SPAM***\" at the beginning)'; ?> diff --git a/interface/web/mail/lib/lang/es_mail_domain_catchall.lng b/interface/web/mail/lib/lang/es_mail_domain_catchall.lng index ed6c9b5db4..68e03c8c37 100755 --- a/interface/web/mail/lib/lang/es_mail_domain_catchall.lng +++ b/interface/web/mail/lib/lang/es_mail_domain_catchall.lng @@ -3,9 +3,10 @@ $wb['active_txt'] = 'Habilitado'; $wb['destination_error_isemail'] = 'El destinatario no es una dirección de correo válida.'; $wb['destination_txt'] = 'Correo de destino'; $wb['domain_error_regex'] = 'El nombre de dominio es inválido o contiene caracteres no permitidos.'; -$wb['domain_error_unique'] = 'Este dominio ya tiene un correo \"recoge-todo\".'; +$wb['domain_error_unique'] = 'Este dominio ya tiene un correo \\"recoge-todo\\".'; $wb['domain_txt'] = 'Dominio'; -$wb['limit_mailcatchall_txt'] = 'Ha alcanzado el número máx. de correo \"recoge-todo\" para correo permitidos para su cuenta.'; +$wb['limit_mailcatchall_txt'] = 'Ha alcanzado el número máx. de correo \\"recoge-todo\\" para correo permitidos para su cuenta.'; $wb['no_domain_perm'] = 'No tiene permisos para usar este dominio.'; $wb['source_txt'] = 'Origen'; +$wb['greylisting_txt'] = 'Enable greylisting'; ?> diff --git a/interface/web/mail/lib/lang/es_mail_domain_catchall_list.lng b/interface/web/mail/lib/lang/es_mail_domain_catchall_list.lng index fc3fde1956..8288430a18 100755 --- a/interface/web/mail/lib/lang/es_mail_domain_catchall_list.lng +++ b/interface/web/mail/lib/lang/es_mail_domain_catchall_list.lng @@ -1,9 +1,9 @@ <?php $wb['active_txt'] = 'Habilitado'; -$wb['add_new_record_txt'] = 'Añadir correo \"recoge-todo\"'; +$wb['add_new_record_txt'] = 'Añadir correo \\"recoge-todo\\"'; $wb['destination_txt'] = 'Dirección de correo de destino'; $wb['domain_txt'] = 'Dominio'; -$wb['list_head_txt'] = 'Correo \"recoge-todo\"'; +$wb['list_head_txt'] = 'Correo \\"recoge-todo\\"'; $wb['server_id_txt'] = 'Servidor'; $wb['source_txt'] = 'Origen'; ?> diff --git a/interface/web/mail/lib/lang/es_mail_get.lng b/interface/web/mail/lib/lang/es_mail_get.lng index 47529e27c6..81de60b038 100755 --- a/interface/web/mail/lib/lang/es_mail_get.lng +++ b/interface/web/mail/lib/lang/es_mail_get.lng @@ -2,7 +2,7 @@ $wb['active_txt'] = 'Habilitado'; $wb['destination_error_isemail'] = 'No ha seleccionado un destinatario.'; $wb['destination_txt'] = 'Destino'; -$wb['error_delete_read_all_combination'] = 'Combinación incorrecta de opciones. No puede usar \"Borrar correos después de recuperarlos\" = NO al mismo tiempo que \"Recuperar todos los correos\" = SI'; +$wb['error_delete_read_all_combination'] = 'Combinación incorrecta de opciones. No puede usar \\"Borrar correos después de recuperarlos\\" = NO al mismo tiempo que \\"Recuperar todos los correos\\" = SI'; $wb['limit_fetchmail_txt'] = 'Ha alcanzado el número máx. de registros de recuperación de correo permitidos para su cuenta.'; $wb['server_id_txt'] = 'Servidor'; $wb['source_delete_note_txt'] = 'Por favor, verifique que funcione la recuperación de correos antes de activar esta opción.'; diff --git a/interface/web/mail/lib/lang/es_spamfilter_policy.lng b/interface/web/mail/lib/lang/es_spamfilter_policy.lng index 1cb1d43630..b7a168c983 100755 --- a/interface/web/mail/lib/lang/es_spamfilter_policy.lng +++ b/interface/web/mail/lib/lang/es_spamfilter_policy.lng @@ -35,4 +35,17 @@ $wb['virus_quarantine_to_txt'] = 'Reenviar virus al correo'; $wb['warnbadhrecip_txt'] = 'Avisar al receptor de la cabecera incorrecta.'; $wb['warnbannedrecip_txt'] = 'Avisar al receptor del bloqueo.'; $wb['warnvirusrecip_txt'] = 'Avisar al receptor del virus.'; +$wb['rspamd_greylisting_txt'] = 'Use greylisting'; +$wb['rspamd_spam_greylisting_level_txt'] = 'Greylisting level'; +$wb['rspamd_spam_tag_level_txt'] = 'SPAM tag level'; +$wb['rspamd_spam_tag_method_txt'] = 'SPAM tag method'; +$wb['rspamd_spam_kill_level_txt'] = 'SPAM reject level'; +$wb['btn_save_txt'] = 'Save'; +$wb['btn_cancel_txt'] = 'Cancel'; +$wb['amavis_settings_txt'] = 'Settings'; +$wb['amavis_taglevel_txt'] = 'Tag-Level'; +$wb['amavis_quarantine_txt'] = 'Quarantine'; +$wb['amavis_other_txt'] = 'Other'; +$wb['add_header_txt'] = 'Add header'; +$wb['rewrite_subject_txt'] = 'Rewrite subject'; ?> diff --git a/interface/web/mail/lib/lang/fi.lng b/interface/web/mail/lib/lang/fi.lng index 3738c7fd64..78a4328336 100755 --- a/interface/web/mail/lib/lang/fi.lng +++ b/interface/web/mail/lib/lang/fi.lng @@ -45,4 +45,6 @@ $wb['Server'] = 'Palvelin'; $wb['Domain Alias'] = 'Aliasverkkotunnus'; $wb['Relay Recipients'] = 'Välityksen vastaanottajat'; $wb['Mailbox quota'] = 'Mailbox quota'; +$wb['add_header_txt'] = 'Header (adds \"X-Spam: Yes\")'; +$wb['rewrite_subject_txt'] = 'Subject (adds \"***SPAM***\" at the beginning)'; ?> diff --git a/interface/web/mail/lib/lang/fi_mail_domain_catchall.lng b/interface/web/mail/lib/lang/fi_mail_domain_catchall.lng index f835f5667a..085a116c2c 100755 --- a/interface/web/mail/lib/lang/fi_mail_domain_catchall.lng +++ b/interface/web/mail/lib/lang/fi_mail_domain_catchall.lng @@ -8,4 +8,5 @@ $wb['domain_error_regex'] = 'Vääränlainen verkkotunnus tai se sisältää kie $wb['limit_mailcatchall_txt'] = 'Käyttäjätunnuksella on jo sallittu määrä CatchAll-tunnuksia.'; $wb['source_txt'] = 'Source'; $wb['destination_error_isemail'] = 'Destination is no valid email address.'; +$wb['greylisting_txt'] = 'Enable greylisting'; ?> diff --git a/interface/web/mail/lib/lang/fi_mail_get.lng b/interface/web/mail/lib/lang/fi_mail_get.lng index 9eca1d8498..063a37bf04 100755 --- a/interface/web/mail/lib/lang/fi_mail_get.lng +++ b/interface/web/mail/lib/lang/fi_mail_get.lng @@ -14,6 +14,6 @@ $wb['source_password_error_isempty'] = 'Salasana-kenttä on tyhjä.'; $wb['destination_error_isemail'] = 'Ei kohdetta valittuna.'; $wb['source_server_error_regex'] = 'Pop3/Imap-palvelin ei ole kelvollinen osoite.'; $wb['source_read_all_txt'] = 'Retrieve all emails (incl. read mails)'; -$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['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'] = 'Please check first if email retrieval works, before you activate this option.'; ?> diff --git a/interface/web/mail/lib/lang/fi_spamfilter_policy.lng b/interface/web/mail/lib/lang/fi_spamfilter_policy.lng index 8f61ba411b..4f72021077 100755 --- a/interface/web/mail/lib/lang/fi_spamfilter_policy.lng +++ b/interface/web/mail/lib/lang/fi_spamfilter_policy.lng @@ -35,4 +35,17 @@ $wb['bad_header_admin_txt'] = 'Otsikkovirhetunnisteiden ylläpitäjä'; $wb['spam_admin_txt'] = 'Roskapostitunnisteiden ylläpitäjä'; $wb['message_size_limit_txt'] = 'Viestin kokoraja'; $wb['banned_rulenames_txt'] = 'Estojen sääntönimet'; +$wb['rspamd_greylisting_txt'] = 'Use greylisting'; +$wb['rspamd_spam_greylisting_level_txt'] = 'Greylisting level'; +$wb['rspamd_spam_tag_level_txt'] = 'SPAM tag level'; +$wb['rspamd_spam_tag_method_txt'] = 'SPAM tag method'; +$wb['rspamd_spam_kill_level_txt'] = 'SPAM reject level'; +$wb['btn_save_txt'] = 'Save'; +$wb['btn_cancel_txt'] = 'Cancel'; +$wb['amavis_settings_txt'] = 'Settings'; +$wb['amavis_taglevel_txt'] = 'Tag-Level'; +$wb['amavis_quarantine_txt'] = 'Quarantine'; +$wb['amavis_other_txt'] = 'Other'; +$wb['add_header_txt'] = 'Add header'; +$wb['rewrite_subject_txt'] = 'Rewrite subject'; ?> diff --git a/interface/web/mail/lib/lang/fr.lng b/interface/web/mail/lib/lang/fr.lng index 3437d37100..a70f080295 100644 --- a/interface/web/mail/lib/lang/fr.lng +++ b/interface/web/mail/lib/lang/fr.lng @@ -45,4 +45,6 @@ $wb['Domain Alias'] = 'Alias de domaine'; $wb['Relay Recipients'] = 'Destinataires de relais'; $wb['Mailbox quota'] = 'Mailbox quota'; $wb['Email'] = 'Email'; +$wb['add_header_txt'] = 'Header (adds \"X-Spam: Yes\")'; +$wb['rewrite_subject_txt'] = 'Subject (adds \"***SPAM***\" at the beginning)'; ?> diff --git a/interface/web/mail/lib/lang/fr_mail_domain_catchall.lng b/interface/web/mail/lib/lang/fr_mail_domain_catchall.lng index b7c4b60760..199cd47224 100644 --- a/interface/web/mail/lib/lang/fr_mail_domain_catchall.lng +++ b/interface/web/mail/lib/lang/fr_mail_domain_catchall.lng @@ -8,4 +8,5 @@ $wb['domain_error_regex'] = 'Nom de domaine invalide, ou contient des caractère $wb['limit_mailcatchall_txt'] = 'Le nombre maximal de comptes collecteurs pour votre compte a été atteint.'; $wb['source_txt'] = 'Source'; $wb['destination_error_isemail'] = 'Destination is no valid e-mail address.'; +$wb['greylisting_txt'] = 'Enable greylisting'; ?> diff --git a/interface/web/mail/lib/lang/fr_mail_get.lng b/interface/web/mail/lib/lang/fr_mail_get.lng index 118ab5ed32..00f72f0c8b 100644 --- a/interface/web/mail/lib/lang/fr_mail_get.lng +++ b/interface/web/mail/lib/lang/fr_mail_get.lng @@ -14,6 +14,6 @@ $wb['source_password_error_isempty'] = 'Le mot de passe est vide.'; $wb['destination_error_isemail'] = 'Pas de destination sélectionnée.'; $wb['source_server_error_regex'] = 'Le serveur POP3 / IMAP n’est pas un nom de domaine valide.'; $wb['source_read_all_txt'] = 'Récupérer tous les emails (incl. les emails lus)'; -$wb['error_delete_read_all_combination'] = 'Combinaison d’options non autorisée. Vous ne pouvez pas utiliser \"Supprimer les emails après récupération\" = non avec \"Récupérer tous les emails\" = oui'; +$wb['error_delete_read_all_combination'] = 'Combinaison d’options non autorisée. Vous ne pouvez pas utiliser \\"Supprimer les emails après récupération\\" = non avec \\"Récupérer tous les emails\\" = oui'; $wb['source_delete_note_txt'] = 'Please check first if e-mail retrieval works, before you activate this option.'; ?> diff --git a/interface/web/mail/lib/lang/fr_spamfilter_policy.lng b/interface/web/mail/lib/lang/fr_spamfilter_policy.lng index d07b382ddf..7b593f0a16 100644 --- a/interface/web/mail/lib/lang/fr_spamfilter_policy.lng +++ b/interface/web/mail/lib/lang/fr_spamfilter_policy.lng @@ -35,4 +35,17 @@ $wb['bad_header_admin_txt'] = 'Admin mauvais entête'; $wb['spam_admin_txt'] = 'Admin SPAM'; $wb['message_size_limit_txt'] = 'Limite de taille de message'; $wb['banned_rulenames_txt'] = 'Noms des règles bannir'; +$wb['rspamd_greylisting_txt'] = 'Use greylisting'; +$wb['rspamd_spam_greylisting_level_txt'] = 'Greylisting level'; +$wb['rspamd_spam_tag_level_txt'] = 'SPAM tag level'; +$wb['rspamd_spam_tag_method_txt'] = 'SPAM tag method'; +$wb['rspamd_spam_kill_level_txt'] = 'SPAM reject level'; +$wb['btn_save_txt'] = 'Save'; +$wb['btn_cancel_txt'] = 'Cancel'; +$wb['amavis_settings_txt'] = 'Settings'; +$wb['amavis_taglevel_txt'] = 'Tag-Level'; +$wb['amavis_quarantine_txt'] = 'Quarantine'; +$wb['amavis_other_txt'] = 'Other'; +$wb['add_header_txt'] = 'Add header'; +$wb['rewrite_subject_txt'] = 'Rewrite subject'; ?> diff --git a/interface/web/mail/lib/lang/hr.lng b/interface/web/mail/lib/lang/hr.lng index 882f6d2b7e..877f8827f5 100644 --- a/interface/web/mail/lib/lang/hr.lng +++ b/interface/web/mail/lib/lang/hr.lng @@ -45,4 +45,6 @@ $wb['Domain Alias'] = 'Alias domena'; $wb['Relay Recipients'] = 'Relay primatelji'; $wb['Mailbox quota'] = 'Mailbox quota'; $wb['Domain'] = 'Domain'; +$wb['add_header_txt'] = 'Header (adds \"X-Spam: Yes\")'; +$wb['rewrite_subject_txt'] = 'Subject (adds \"***SPAM***\" at the beginning)'; ?> diff --git a/interface/web/mail/lib/lang/hr_mail_domain_catchall.lng b/interface/web/mail/lib/lang/hr_mail_domain_catchall.lng index 2c8d23e218..1c8da72ab3 100644 --- a/interface/web/mail/lib/lang/hr_mail_domain_catchall.lng +++ b/interface/web/mail/lib/lang/hr_mail_domain_catchall.lng @@ -8,4 +8,5 @@ $wb['domain_error_regex'] = 'Neispravan naziv domene ili naziv sadrži nedozvolj $wb['limit_mailcatchall_txt'] = 'IskoriÅ¡ten ja maksimalan broj email catchall raÄuna.'; $wb['source_txt'] = 'Source'; $wb['destination_error_isemail'] = 'Destination is no valid email address.'; +$wb['greylisting_txt'] = 'Enable greylisting'; ?> diff --git a/interface/web/mail/lib/lang/hr_mail_get.lng b/interface/web/mail/lib/lang/hr_mail_get.lng index 025bb136b0..18c53a4d53 100644 --- a/interface/web/mail/lib/lang/hr_mail_get.lng +++ b/interface/web/mail/lib/lang/hr_mail_get.lng @@ -14,6 +14,6 @@ $wb['source_password_error_isempty'] = 'Password is empty.'; $wb['destination_error_isemail'] = 'No destination selected.'; $wb['source_server_error_regex'] = 'Pop3/Imap Server is not a valid domain name.'; $wb['source_read_all_txt'] = 'Retrieve all emails (incl. read mails)'; -$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['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'] = 'Please check first if email retrieval works, before you activate this option.'; ?> diff --git a/interface/web/mail/lib/lang/hr_spamfilter_policy.lng b/interface/web/mail/lib/lang/hr_spamfilter_policy.lng index e876330a68..683b378c21 100644 --- a/interface/web/mail/lib/lang/hr_spamfilter_policy.lng +++ b/interface/web/mail/lib/lang/hr_spamfilter_policy.lng @@ -35,4 +35,17 @@ $wb['bad_header_admin_txt'] = 'Bad header admin'; $wb['spam_admin_txt'] = 'SPAM admin'; $wb['message_size_limit_txt'] = 'Message size limit'; $wb['banned_rulenames_txt'] = 'Banned rulenames'; +$wb['rspamd_greylisting_txt'] = 'Use greylisting'; +$wb['rspamd_spam_greylisting_level_txt'] = 'Greylisting level'; +$wb['rspamd_spam_tag_level_txt'] = 'SPAM tag level'; +$wb['rspamd_spam_tag_method_txt'] = 'SPAM tag method'; +$wb['rspamd_spam_kill_level_txt'] = 'SPAM reject level'; +$wb['btn_save_txt'] = 'Save'; +$wb['btn_cancel_txt'] = 'Cancel'; +$wb['amavis_settings_txt'] = 'Settings'; +$wb['amavis_taglevel_txt'] = 'Tag-Level'; +$wb['amavis_quarantine_txt'] = 'Quarantine'; +$wb['amavis_other_txt'] = 'Other'; +$wb['add_header_txt'] = 'Add header'; +$wb['rewrite_subject_txt'] = 'Rewrite subject'; ?> diff --git a/interface/web/mail/lib/lang/hu.lng b/interface/web/mail/lib/lang/hu.lng index 752f4003a8..f3ffa4aef0 100644 --- a/interface/web/mail/lib/lang/hu.lng +++ b/interface/web/mail/lib/lang/hu.lng @@ -45,4 +45,6 @@ $wb['Domain Alias'] = 'Domain Alias'; $wb['Relay Recipients'] = 'Relay Recipients'; $wb['Server'] = 'Server'; $wb['Mailbox quota'] = 'Mailbox quota'; +$wb['add_header_txt'] = 'Header (adds \"X-Spam: Yes\")'; +$wb['rewrite_subject_txt'] = 'Subject (adds \"***SPAM***\" at the beginning)'; ?> diff --git a/interface/web/mail/lib/lang/hu_mail_domain_catchall.lng b/interface/web/mail/lib/lang/hu_mail_domain_catchall.lng index 8331f22101..e26795953d 100644 --- a/interface/web/mail/lib/lang/hu_mail_domain_catchall.lng +++ b/interface/web/mail/lib/lang/hu_mail_domain_catchall.lng @@ -8,4 +8,5 @@ $wb['domain_error_regex'] = 'Érvénytelen domain vagy a domain érvénytelen ka $wb['limit_mailcatchall_txt'] = 'Nincs több catchall lehetÅ‘ség.'; $wb['source_txt'] = 'Source'; $wb['destination_error_isemail'] = 'Destination is no valid email address.'; +$wb['greylisting_txt'] = 'Enable greylisting'; ?> diff --git a/interface/web/mail/lib/lang/hu_mail_get.lng b/interface/web/mail/lib/lang/hu_mail_get.lng index a02a1fe114..59cb26dd6a 100644 --- a/interface/web/mail/lib/lang/hu_mail_get.lng +++ b/interface/web/mail/lib/lang/hu_mail_get.lng @@ -14,6 +14,6 @@ $wb['source_password_error_isempty'] = 'Jelszó üres.'; $wb['destination_error_isemail'] = 'Nem választott cÃmzettet.'; $wb['source_server_error_regex'] = 'Pop3/Imap Server is not a valid domain name.'; $wb['source_read_all_txt'] = 'Retrieve all emails (incl. read mails)'; -$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['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'] = 'Please check first if email retrieval works, before you activate this option.'; ?> diff --git a/interface/web/mail/lib/lang/hu_spamfilter_policy.lng b/interface/web/mail/lib/lang/hu_spamfilter_policy.lng index 391d4ab43a..c2b6b9244c 100644 --- a/interface/web/mail/lib/lang/hu_spamfilter_policy.lng +++ b/interface/web/mail/lib/lang/hu_spamfilter_policy.lng @@ -35,4 +35,17 @@ $wb['bad_header_admin_txt'] = 'Hibás fejléc admin'; $wb['spam_admin_txt'] = 'SPAM admin'; $wb['message_size_limit_txt'] = 'Levél méret limit'; $wb['banned_rulenames_txt'] = 'Tiltószabály nevek'; +$wb['rspamd_greylisting_txt'] = 'Use greylisting'; +$wb['rspamd_spam_greylisting_level_txt'] = 'Greylisting level'; +$wb['rspamd_spam_tag_level_txt'] = 'SPAM tag level'; +$wb['rspamd_spam_tag_method_txt'] = 'SPAM tag method'; +$wb['rspamd_spam_kill_level_txt'] = 'SPAM reject level'; +$wb['btn_save_txt'] = 'Save'; +$wb['btn_cancel_txt'] = 'Cancel'; +$wb['amavis_settings_txt'] = 'Settings'; +$wb['amavis_taglevel_txt'] = 'Tag-Level'; +$wb['amavis_quarantine_txt'] = 'Quarantine'; +$wb['amavis_other_txt'] = 'Other'; +$wb['add_header_txt'] = 'Add header'; +$wb['rewrite_subject_txt'] = 'Rewrite subject'; ?> diff --git a/interface/web/mail/lib/lang/id.lng b/interface/web/mail/lib/lang/id.lng index c9acaf27f1..3a2b5dfe45 100644 --- a/interface/web/mail/lib/lang/id.lng +++ b/interface/web/mail/lib/lang/id.lng @@ -45,4 +45,6 @@ $wb['Global Filters'] = 'Penyaringan Global'; $wb['Domain Alias'] = 'Alias Domain'; $wb['Relay Recipients'] = 'Penerima Relay'; $wb['Mailbox quota'] = 'Mailbox quota'; +$wb['add_header_txt'] = 'Header (adds \"X-Spam: Yes\")'; +$wb['rewrite_subject_txt'] = 'Subject (adds \"***SPAM***\" at the beginning)'; ?> diff --git a/interface/web/mail/lib/lang/id_mail_domain_catchall.lng b/interface/web/mail/lib/lang/id_mail_domain_catchall.lng index 435856c105..c380957fdc 100644 --- a/interface/web/mail/lib/lang/id_mail_domain_catchall.lng +++ b/interface/web/mail/lib/lang/id_mail_domain_catchall.lng @@ -8,4 +8,5 @@ $wb['domain_error_regex'] = 'Nama domain tidak valid atau domain mengandung kara $wb['limit_mailcatchall_txt'] = 'Jumlah maks akun catchall email untuk akun Anda sudah tercapai.'; $wb['source_txt'] = 'Source'; $wb['destination_error_isemail'] = 'Destination is no valid email address.'; +$wb['greylisting_txt'] = 'Enable greylisting'; ?> diff --git a/interface/web/mail/lib/lang/id_mail_get.lng b/interface/web/mail/lib/lang/id_mail_get.lng index 7617cbc7df..cec2466f28 100644 --- a/interface/web/mail/lib/lang/id_mail_get.lng +++ b/interface/web/mail/lib/lang/id_mail_get.lng @@ -14,6 +14,6 @@ $wb['source_password_error_isempty'] = 'Kata Sandi kosong.'; $wb['destination_error_isemail'] = 'Tidak ada tujuan yang dipilih.'; $wb['source_server_error_regex'] = 'Server Pop3/Imap bukan merupakan nama domain yang valid.'; $wb['source_read_all_txt'] = 'Retrieve all emails (incl. read mails)'; -$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['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'] = 'Please check first if email retrieval works, before you activate this option.'; ?> diff --git a/interface/web/mail/lib/lang/id_spamfilter_policy.lng b/interface/web/mail/lib/lang/id_spamfilter_policy.lng index afa0ba1a09..9813dec470 100644 --- a/interface/web/mail/lib/lang/id_spamfilter_policy.lng +++ b/interface/web/mail/lib/lang/id_spamfilter_policy.lng @@ -35,4 +35,17 @@ $wb['bad_header_admin_txt'] = 'Admin Bad header'; $wb['spam_admin_txt'] = 'Admin SPAM'; $wb['message_size_limit_txt'] = 'Batasan ukuran pesan'; $wb['banned_rulenames_txt'] = 'Nama aturan Banned'; +$wb['rspamd_greylisting_txt'] = 'Use greylisting'; +$wb['rspamd_spam_greylisting_level_txt'] = 'Greylisting level'; +$wb['rspamd_spam_tag_level_txt'] = 'SPAM tag level'; +$wb['rspamd_spam_tag_method_txt'] = 'SPAM tag method'; +$wb['rspamd_spam_kill_level_txt'] = 'SPAM reject level'; +$wb['btn_save_txt'] = 'Save'; +$wb['btn_cancel_txt'] = 'Cancel'; +$wb['amavis_settings_txt'] = 'Settings'; +$wb['amavis_taglevel_txt'] = 'Tag-Level'; +$wb['amavis_quarantine_txt'] = 'Quarantine'; +$wb['amavis_other_txt'] = 'Other'; +$wb['add_header_txt'] = 'Add header'; +$wb['rewrite_subject_txt'] = 'Rewrite subject'; ?> diff --git a/interface/web/mail/lib/lang/it.lng b/interface/web/mail/lib/lang/it.lng index 715e2efb8e..15bc87ea3f 100644 --- a/interface/web/mail/lib/lang/it.lng +++ b/interface/web/mail/lib/lang/it.lng @@ -45,4 +45,6 @@ $wb['Global Filters'] = 'Filtri globali'; $wb['Domain Alias'] = 'Alias dominio'; $wb['Relay Recipients'] = 'Destinatari inoltro'; $wb['Mailbox quota'] = 'Quota Casella di Posta'; +$wb['add_header_txt'] = 'Header (adds \"X-Spam: Yes\")'; +$wb['rewrite_subject_txt'] = 'Subject (adds \"***SPAM***\" at the beginning)'; ?> diff --git a/interface/web/mail/lib/lang/it_mail_domain_catchall.lng b/interface/web/mail/lib/lang/it_mail_domain_catchall.lng index 6ff4cbdf1c..3345bed9c7 100644 --- a/interface/web/mail/lib/lang/it_mail_domain_catchall.lng +++ b/interface/web/mail/lib/lang/it_mail_domain_catchall.lng @@ -8,4 +8,5 @@ $wb['domain_error_regex'] = 'Invalid domain name od domain contiene caratteri no $wb['limit_mailcatchall_txt'] = 'The max. number of email catchall accounts raggiunto per il tuo account.'; $wb['source_txt'] = 'Source'; $wb['destination_error_isemail'] = 'Destination is no valid email address.'; +$wb['greylisting_txt'] = 'Enable greylisting'; ?> diff --git a/interface/web/mail/lib/lang/it_mail_get.lng b/interface/web/mail/lib/lang/it_mail_get.lng index 3b443a7268..70770c22d4 100644 --- a/interface/web/mail/lib/lang/it_mail_get.lng +++ b/interface/web/mail/lib/lang/it_mail_get.lng @@ -14,6 +14,6 @@ $wb['source_password_error_isempty'] = 'Valore Password vuoto.'; $wb['destination_error_isemail'] = 'Nessuna destinazione selezionata.'; $wb['source_server_error_regex'] = 'Pop3/Imap Server non è un nome dominio valido.'; $wb['source_read_all_txt'] = 'Recupera tutte le email (incluso mail lette)'; -$wb['error_delete_read_all_combination'] = 'Combinazione di opzioni non conforme. Non puoi utilizzare \"Elimina mail dopo averle scaricate \" = NO assieme a \"Recupera tutte le email\" = SI'; +$wb['error_delete_read_all_combination'] = 'Combinazione di opzioni non conforme. Non puoi utilizzare \\"Elimina mail dopo averle scaricate \\" = NO assieme a \\"Recupera tutte le email\\" = SI'; $wb['source_delete_note_txt'] = 'Please check first if email retrieval works, before you activate this option.'; ?> diff --git a/interface/web/mail/lib/lang/it_spamfilter_policy.lng b/interface/web/mail/lib/lang/it_spamfilter_policy.lng index e876330a68..683b378c21 100644 --- a/interface/web/mail/lib/lang/it_spamfilter_policy.lng +++ b/interface/web/mail/lib/lang/it_spamfilter_policy.lng @@ -35,4 +35,17 @@ $wb['bad_header_admin_txt'] = 'Bad header admin'; $wb['spam_admin_txt'] = 'SPAM admin'; $wb['message_size_limit_txt'] = 'Message size limit'; $wb['banned_rulenames_txt'] = 'Banned rulenames'; +$wb['rspamd_greylisting_txt'] = 'Use greylisting'; +$wb['rspamd_spam_greylisting_level_txt'] = 'Greylisting level'; +$wb['rspamd_spam_tag_level_txt'] = 'SPAM tag level'; +$wb['rspamd_spam_tag_method_txt'] = 'SPAM tag method'; +$wb['rspamd_spam_kill_level_txt'] = 'SPAM reject level'; +$wb['btn_save_txt'] = 'Save'; +$wb['btn_cancel_txt'] = 'Cancel'; +$wb['amavis_settings_txt'] = 'Settings'; +$wb['amavis_taglevel_txt'] = 'Tag-Level'; +$wb['amavis_quarantine_txt'] = 'Quarantine'; +$wb['amavis_other_txt'] = 'Other'; +$wb['add_header_txt'] = 'Add header'; +$wb['rewrite_subject_txt'] = 'Rewrite subject'; ?> diff --git a/interface/web/mail/lib/lang/ja.lng b/interface/web/mail/lib/lang/ja.lng index f8289d4907..818a3ed126 100644 --- a/interface/web/mail/lib/lang/ja.lng +++ b/interface/web/mail/lib/lang/ja.lng @@ -45,4 +45,6 @@ $wb['Global Filters'] = 'ã‚°ãƒãƒ¼ãƒãƒ«ãƒ•ã‚£ãƒ«ã‚¿ãƒ¼'; $wb['Domain Alias'] = 'Domain Alias'; $wb['Relay Recipients'] = 'Relay Recipients'; $wb['Mailbox quota'] = 'Mailbox quota'; +$wb['add_header_txt'] = 'Header (adds \"X-Spam: Yes\")'; +$wb['rewrite_subject_txt'] = 'Subject (adds \"***SPAM***\" at the beginning)'; ?> diff --git a/interface/web/mail/lib/lang/ja_mail_domain_catchall.lng b/interface/web/mail/lib/lang/ja_mail_domain_catchall.lng index cb430fefe6..6da7d05c56 100644 --- a/interface/web/mail/lib/lang/ja_mail_domain_catchall.lng +++ b/interface/web/mail/lib/lang/ja_mail_domain_catchall.lng @@ -8,4 +8,5 @@ $wb['domain_error_regex'] = 'ドメインåãŒä¸æ£ã§ã™ã€‚無効ãªæ–‡å—ã‚’ $wb['limit_mailcatchall_txt'] = 'ã‚ャッãƒã‚ªãƒ¼ãƒ«ã‚¢ã‚«ã‚¦ãƒ³ãƒˆãŒæœ€å¤§æ•°ã«é”ã—ãŸãŸã‚ã€ã“ã‚Œä»¥ä¸Šè¿½åŠ ã§ãã¾ã›ã‚“。'; $wb['source_txt'] = 'Source'; $wb['destination_error_isemail'] = 'Destination is no valid email address.'; +$wb['greylisting_txt'] = 'Enable greylisting'; ?> diff --git a/interface/web/mail/lib/lang/ja_mail_get.lng b/interface/web/mail/lib/lang/ja_mail_get.lng index f1c45256bf..3c5c9ec092 100644 --- a/interface/web/mail/lib/lang/ja_mail_get.lng +++ b/interface/web/mail/lib/lang/ja_mail_get.lng @@ -14,6 +14,6 @@ $wb['source_password_error_isempty'] = 'パスワードを指定ã—ã¦ãã ã• $wb['destination_error_isemail'] = '宛先をé¸æŠžã—ã¦ãã ã•ã„。'; $wb['source_server_error_regex'] = 'Pop3/Imap Server is not a valid domain name.'; $wb['source_read_all_txt'] = 'Retrieve all emails (incl. read mails)'; -$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['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'] = 'Please check first if email retrieval works, before you activate this option.'; ?> diff --git a/interface/web/mail/lib/lang/ja_spamfilter_policy.lng b/interface/web/mail/lib/lang/ja_spamfilter_policy.lng index 89d377a384..a23f28a766 100644 --- a/interface/web/mail/lib/lang/ja_spamfilter_policy.lng +++ b/interface/web/mail/lib/lang/ja_spamfilter_policy.lng @@ -35,4 +35,17 @@ $wb['bad_header_admin_txt'] = 'Bad header admin'; $wb['spam_admin_txt'] = 'SPAM admin'; $wb['message_size_limit_txt'] = 'Message size limit'; $wb['banned_rulenames_txt'] = 'Banned rulenames'; +$wb['rspamd_greylisting_txt'] = 'Use greylisting'; +$wb['rspamd_spam_greylisting_level_txt'] = 'Greylisting level'; +$wb['rspamd_spam_tag_level_txt'] = 'SPAM tag level'; +$wb['rspamd_spam_tag_method_txt'] = 'SPAM tag method'; +$wb['rspamd_spam_kill_level_txt'] = 'SPAM reject level'; +$wb['btn_save_txt'] = 'Save'; +$wb['btn_cancel_txt'] = 'Cancel'; +$wb['amavis_settings_txt'] = 'Settings'; +$wb['amavis_taglevel_txt'] = 'Tag-Level'; +$wb['amavis_quarantine_txt'] = 'Quarantine'; +$wb['amavis_other_txt'] = 'Other'; +$wb['add_header_txt'] = 'Add header'; +$wb['rewrite_subject_txt'] = 'Rewrite subject'; ?> diff --git a/interface/web/mail/lib/lang/nl.lng b/interface/web/mail/lib/lang/nl.lng index e47cc65811..91d63a7abc 100644 --- a/interface/web/mail/lib/lang/nl.lng +++ b/interface/web/mail/lib/lang/nl.lng @@ -45,4 +45,6 @@ $wb['Global Filters'] = 'Globale filters'; $wb['Domain Alias'] = 'Domein alias'; $wb['Relay Recipients'] = 'Relay ontvangers'; $wb['Mailbox quota'] = 'Mailbox quota'; +$wb['add_header_txt'] = 'Header (adds \"X-Spam: Yes\")'; +$wb['rewrite_subject_txt'] = 'Subject (adds \"***SPAM***\" at the beginning)'; ?> diff --git a/interface/web/mail/lib/lang/nl_mail_domain_catchall.lng b/interface/web/mail/lib/lang/nl_mail_domain_catchall.lng index 06ad66c9be..ee9c1f7678 100644 --- a/interface/web/mail/lib/lang/nl_mail_domain_catchall.lng +++ b/interface/web/mail/lib/lang/nl_mail_domain_catchall.lng @@ -8,4 +8,5 @@ $wb['domain_error_regex'] = 'Ongeldige domeinnaam of domein bevat ongeldige kara $wb['limit_mailcatchall_txt'] = 'Het max. aantal e-mail catchall accounts voor uw account is bereikt.'; $wb['source_txt'] = 'Source'; $wb['destination_error_isemail'] = 'Destination is no valid email address.'; +$wb['greylisting_txt'] = 'Enable greylisting'; ?> diff --git a/interface/web/mail/lib/lang/nl_mail_get.lng b/interface/web/mail/lib/lang/nl_mail_get.lng index 6752b42cd8..5cbeab14e7 100644 --- a/interface/web/mail/lib/lang/nl_mail_get.lng +++ b/interface/web/mail/lib/lang/nl_mail_get.lng @@ -14,6 +14,6 @@ $wb['source_password_error_isempty'] = 'Wachtwoord is niet ingvuld.'; $wb['destination_error_isemail'] = 'Geen bestemming geselecteerd.'; $wb['source_server_error_regex'] = 'Pop3/Imap server is geen geldige domeinnaam.'; $wb['source_read_all_txt'] = 'Retrieve all emails (incl. read mails)'; -$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['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'] = 'Please check first if email retrieval works, before you activate this option.'; ?> diff --git a/interface/web/mail/lib/lang/nl_mail_user.lng b/interface/web/mail/lib/lang/nl_mail_user.lng index acc2da94e1..94dd018332 100644 --- a/interface/web/mail/lib/lang/nl_mail_user.lng +++ b/interface/web/mail/lib/lang/nl_mail_user.lng @@ -36,7 +36,7 @@ $wb['name_txt'] = 'Echte naam'; $wb['name_optional_txt'] = '(Optioneel)'; $wb['autoresponder_active'] = 'Inschakelen autoresponder'; $wb['cc_txt'] = 'Stuur kopie naar'; -$wb['cc_error_isemail'] = 'Het \"Stuur kopie naar\" veld bevat geen geldig e-mail adres'; +$wb['cc_error_isemail'] = 'Het \\"Stuur kopie naar\\" veld bevat geen geldig e-mail adres'; $wb['domain_txt'] = 'Domain'; $wb['now_txt'] = 'Now'; $wb['login_error_unique'] = 'Login is already taken.'; @@ -60,6 +60,6 @@ $wb['cc_note_txt'] = '(Meerdere e-mail adressen scheiden met een komma)'; $wb['disablesmtp_txt'] = 'Uitschakelen SMTP (versturen)'; $wb['autoresponder_start_date_is_required'] = 'Start date must be set when Autoresponder is enabled.'; $wb['sender_cc_txt'] = 'Stuur uitgaande kopie aan'; -$wb['sender_cc_error_isemail'] = 'Het \"Stuur uitgaande kopie aan\" veld bevat geen geldig e-mail adres'; +$wb['sender_cc_error_isemail'] = 'Het \\"Stuur uitgaande kopie aan\\" veld bevat geen geldig e-mail adres'; $wb['sender_cc_note_txt'] = '(Meerdere e-mail adressen scheiden met een komma)'; ?> diff --git a/interface/web/mail/lib/lang/nl_spamfilter_policy.lng b/interface/web/mail/lib/lang/nl_spamfilter_policy.lng index 84d5242da9..4a7ab96152 100644 --- a/interface/web/mail/lib/lang/nl_spamfilter_policy.lng +++ b/interface/web/mail/lib/lang/nl_spamfilter_policy.lng @@ -35,4 +35,17 @@ $wb['bad_header_admin_txt'] = 'Bad header admin'; $wb['spam_admin_txt'] = 'SPAM admin'; $wb['message_size_limit_txt'] = 'Bericht grootte limiet'; $wb['banned_rulenames_txt'] = 'Verbannen rulenames'; +$wb['rspamd_greylisting_txt'] = 'Use greylisting'; +$wb['rspamd_spam_greylisting_level_txt'] = 'Greylisting level'; +$wb['rspamd_spam_tag_level_txt'] = 'SPAM tag level'; +$wb['rspamd_spam_tag_method_txt'] = 'SPAM tag method'; +$wb['rspamd_spam_kill_level_txt'] = 'SPAM reject level'; +$wb['btn_save_txt'] = 'Save'; +$wb['btn_cancel_txt'] = 'Cancel'; +$wb['amavis_settings_txt'] = 'Settings'; +$wb['amavis_taglevel_txt'] = 'Tag-Level'; +$wb['amavis_quarantine_txt'] = 'Quarantine'; +$wb['amavis_other_txt'] = 'Other'; +$wb['add_header_txt'] = 'Add header'; +$wb['rewrite_subject_txt'] = 'Rewrite subject'; ?> diff --git a/interface/web/mail/lib/lang/pl.lng b/interface/web/mail/lib/lang/pl.lng index 93861b784d..17b7701992 100644 --- a/interface/web/mail/lib/lang/pl.lng +++ b/interface/web/mail/lib/lang/pl.lng @@ -45,4 +45,6 @@ $wb['Global Filters'] = 'Globalne filtry'; $wb['Domain Alias'] = 'Alias domeny'; $wb['Relay Recipients'] = 'Odbiorcy przekierowania'; $wb['Mailbox quota'] = 'Użycie skrzynek email'; +$wb['add_header_txt'] = 'Header (adds \"X-Spam: Yes\")'; +$wb['rewrite_subject_txt'] = 'Subject (adds \"***SPAM***\" at the beginning)'; ?> diff --git a/interface/web/mail/lib/lang/pl_mail_domain_catchall.lng b/interface/web/mail/lib/lang/pl_mail_domain_catchall.lng index 3630b954bf..fad83875ca 100644 --- a/interface/web/mail/lib/lang/pl_mail_domain_catchall.lng +++ b/interface/web/mail/lib/lang/pl_mail_domain_catchall.lng @@ -8,4 +8,5 @@ $wb['domain_error_regex'] = 'NieprawidÅ‚owa nazwa domeny. Domena zawiera niedozo $wb['limit_mailcatchall_txt'] = 'Maksymalna ilość kont e-mail catchall dla Twojej domeny zostaÅ‚a przekroczona.'; $wb['source_txt'] = 'ŹródÅ‚o'; $wb['destination_error_isemail'] = 'Cel nie jest poprawnym adresem email.'; +$wb['greylisting_txt'] = 'Enable greylisting'; ?> diff --git a/interface/web/mail/lib/lang/pl_spamfilter_policy.lng b/interface/web/mail/lib/lang/pl_spamfilter_policy.lng index 8a825b5594..8291102308 100644 --- a/interface/web/mail/lib/lang/pl_spamfilter_policy.lng +++ b/interface/web/mail/lib/lang/pl_spamfilter_policy.lng @@ -35,4 +35,17 @@ $wb['bad_header_admin_txt'] = 'Admin obsÅ‚ugi zÅ‚ych nagÅ‚owków'; $wb['spam_admin_txt'] = 'Admin obsÅ‚ugi spamu'; $wb['message_size_limit_txt'] = 'Limit wielkoÅ›ci wiadomoÅ›ci'; $wb['banned_rulenames_txt'] = 'Zabronione nazwy zasad'; +$wb['rspamd_greylisting_txt'] = 'Use greylisting'; +$wb['rspamd_spam_greylisting_level_txt'] = 'Greylisting level'; +$wb['rspamd_spam_tag_level_txt'] = 'SPAM tag level'; +$wb['rspamd_spam_tag_method_txt'] = 'SPAM tag method'; +$wb['rspamd_spam_kill_level_txt'] = 'SPAM reject level'; +$wb['btn_save_txt'] = 'Save'; +$wb['btn_cancel_txt'] = 'Cancel'; +$wb['amavis_settings_txt'] = 'Settings'; +$wb['amavis_taglevel_txt'] = 'Tag-Level'; +$wb['amavis_quarantine_txt'] = 'Quarantine'; +$wb['amavis_other_txt'] = 'Other'; +$wb['add_header_txt'] = 'Add header'; +$wb['rewrite_subject_txt'] = 'Rewrite subject'; ?> diff --git a/interface/web/mail/lib/lang/pt.lng b/interface/web/mail/lib/lang/pt.lng index 7a9a69cf83..d47eb6183b 100644 --- a/interface/web/mail/lib/lang/pt.lng +++ b/interface/web/mail/lib/lang/pt.lng @@ -45,4 +45,6 @@ $wb['Global Filters'] = 'Filtros Globais'; $wb['Domain Alias'] = 'DomÃnios Alias'; $wb['Relay Recipients'] = 'Recipientes de Relay'; $wb['Mailbox quota'] = 'Mailbox quota'; +$wb['add_header_txt'] = 'Header (adds \"X-Spam: Yes\")'; +$wb['rewrite_subject_txt'] = 'Subject (adds \"***SPAM***\" at the beginning)'; ?> diff --git a/interface/web/mail/lib/lang/pt_mail_domain_catchall.lng b/interface/web/mail/lib/lang/pt_mail_domain_catchall.lng index 1fde21c020..e81afd74b9 100644 --- a/interface/web/mail/lib/lang/pt_mail_domain_catchall.lng +++ b/interface/web/mail/lib/lang/pt_mail_domain_catchall.lng @@ -8,4 +8,5 @@ $wb['domain_error_regex'] = 'O nome do domÃnio contém caracteres inválidos'; $wb['limit_mailcatchall_txt'] = 'O número máximo de catchall para este domÃnio foi atingido.'; $wb['source_txt'] = 'Source'; $wb['destination_error_isemail'] = 'Destination is no valid email address.'; +$wb['greylisting_txt'] = 'Enable greylisting'; ?> diff --git a/interface/web/mail/lib/lang/pt_mail_get.lng b/interface/web/mail/lib/lang/pt_mail_get.lng index f3ea6227fa..883279a2d5 100644 --- a/interface/web/mail/lib/lang/pt_mail_get.lng +++ b/interface/web/mail/lib/lang/pt_mail_get.lng @@ -14,6 +14,6 @@ $wb['source_password_error_isempty'] = 'Senha em branco.'; $wb['destination_error_isemail'] = 'Destino não seleccionado.'; $wb['source_server_error_regex'] = 'Servidor Pop3/Imap não é um nome de domÃnio válido.'; $wb['source_read_all_txt'] = 'Retrieve all emails (incl. read mails)'; -$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['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'] = 'Please check first if email retrieval works, before you activate this option.'; ?> diff --git a/interface/web/mail/lib/lang/pt_spamfilter_policy.lng b/interface/web/mail/lib/lang/pt_spamfilter_policy.lng index 1610aebdca..af960c99f6 100644 --- a/interface/web/mail/lib/lang/pt_spamfilter_policy.lng +++ b/interface/web/mail/lib/lang/pt_spamfilter_policy.lng @@ -35,4 +35,17 @@ $wb['bad_header_admin_txt'] = 'Administrador de Bad header'; $wb['spam_admin_txt'] = 'Administrador SPAM'; $wb['message_size_limit_txt'] = 'Tamanho limite da mensagem'; $wb['banned_rulenames_txt'] = 'Regras de Banimento'; +$wb['rspamd_greylisting_txt'] = 'Use greylisting'; +$wb['rspamd_spam_greylisting_level_txt'] = 'Greylisting level'; +$wb['rspamd_spam_tag_level_txt'] = 'SPAM tag level'; +$wb['rspamd_spam_tag_method_txt'] = 'SPAM tag method'; +$wb['rspamd_spam_kill_level_txt'] = 'SPAM reject level'; +$wb['btn_save_txt'] = 'Save'; +$wb['btn_cancel_txt'] = 'Cancel'; +$wb['amavis_settings_txt'] = 'Settings'; +$wb['amavis_taglevel_txt'] = 'Tag-Level'; +$wb['amavis_quarantine_txt'] = 'Quarantine'; +$wb['amavis_other_txt'] = 'Other'; +$wb['add_header_txt'] = 'Add header'; +$wb['rewrite_subject_txt'] = 'Rewrite subject'; ?> diff --git a/interface/web/mail/lib/lang/ro.lng b/interface/web/mail/lib/lang/ro.lng index dbfa06bcc8..0c0e85995e 100644 --- a/interface/web/mail/lib/lang/ro.lng +++ b/interface/web/mail/lib/lang/ro.lng @@ -45,4 +45,6 @@ $wb['Global Filters'] = 'Filtre Global'; $wb['Domain Alias'] = 'Domain Alias'; $wb['Relay Recipients'] = 'Relay Recipients'; $wb['Mailbox quota'] = 'Mailbox quota'; +$wb['add_header_txt'] = 'Header (adds \"X-Spam: Yes\")'; +$wb['rewrite_subject_txt'] = 'Subject (adds \"***SPAM***\" at the beginning)'; ?> diff --git a/interface/web/mail/lib/lang/ro_mail_domain_catchall.lng b/interface/web/mail/lib/lang/ro_mail_domain_catchall.lng index 97add765ab..c0689ca044 100644 --- a/interface/web/mail/lib/lang/ro_mail_domain_catchall.lng +++ b/interface/web/mail/lib/lang/ro_mail_domain_catchall.lng @@ -8,4 +8,5 @@ $wb['domain_error_regex'] = 'nume de domeniu invalid sau caractere nepermise'; $wb['limit_mailcatchall_txt'] = 'numarul maxim de CATCHALL pe contul dumneavoatra a fost atins'; $wb['source_txt'] = 'Source'; $wb['destination_error_isemail'] = 'Destination is no valid email address.'; +$wb['greylisting_txt'] = 'Enable greylisting'; ?> diff --git a/interface/web/mail/lib/lang/ro_mail_get.lng b/interface/web/mail/lib/lang/ro_mail_get.lng index 16a0b6aeb7..5e0a590f70 100644 --- a/interface/web/mail/lib/lang/ro_mail_get.lng +++ b/interface/web/mail/lib/lang/ro_mail_get.lng @@ -14,6 +14,6 @@ $wb['source_password_error_isempty'] = 'Password este necompletat'; $wb['destination_error_isemail'] = 'Nici o destinatie nu e selectata'; $wb['source_server_error_regex'] = 'Pop3/Imap Server is not a valid domain name.'; $wb['source_read_all_txt'] = 'Retrieve all emails (incl. read mails)'; -$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['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'] = 'Please check first if email retrieval works, before you activate this option.'; ?> diff --git a/interface/web/mail/lib/lang/ro_spamfilter_policy.lng b/interface/web/mail/lib/lang/ro_spamfilter_policy.lng index 3645b3e1d1..f77d0f3e5a 100644 --- a/interface/web/mail/lib/lang/ro_spamfilter_policy.lng +++ b/interface/web/mail/lib/lang/ro_spamfilter_policy.lng @@ -35,4 +35,17 @@ $wb['bad_header_admin_txt'] = ' header defect admin'; $wb['spam_admin_txt'] = 'SPAM admin'; $wb['message_size_limit_txt'] = 'Message size limit'; $wb['banned_rulenames_txt'] = 'Banned nume reguli'; +$wb['rspamd_greylisting_txt'] = 'Use greylisting'; +$wb['rspamd_spam_greylisting_level_txt'] = 'Greylisting level'; +$wb['rspamd_spam_tag_level_txt'] = 'SPAM tag level'; +$wb['rspamd_spam_tag_method_txt'] = 'SPAM tag method'; +$wb['rspamd_spam_kill_level_txt'] = 'SPAM reject level'; +$wb['btn_save_txt'] = 'Save'; +$wb['btn_cancel_txt'] = 'Cancel'; +$wb['amavis_settings_txt'] = 'Settings'; +$wb['amavis_taglevel_txt'] = 'Tag-Level'; +$wb['amavis_quarantine_txt'] = 'Quarantine'; +$wb['amavis_other_txt'] = 'Other'; +$wb['add_header_txt'] = 'Add header'; +$wb['rewrite_subject_txt'] = 'Rewrite subject'; ?> diff --git a/interface/web/mail/lib/lang/ru.lng b/interface/web/mail/lib/lang/ru.lng index 124441ffa9..1b7995e024 100644 --- a/interface/web/mail/lib/lang/ru.lng +++ b/interface/web/mail/lib/lang/ru.lng @@ -45,4 +45,6 @@ $wb['Global Filters'] = 'Глобальные фильтры'; $wb['Domain Alias'] = 'ÐлиаÑÑ‹ доменов'; $wb['Relay Recipients'] = 'Relay получатели'; $wb['Mailbox quota'] = 'Квота почтового Ñщика'; +$wb['add_header_txt'] = 'Header (adds \"X-Spam: Yes\")'; +$wb['rewrite_subject_txt'] = 'Subject (adds \"***SPAM***\" at the beginning)'; ?> diff --git a/interface/web/mail/lib/lang/ru_mail_domain_catchall.lng b/interface/web/mail/lib/lang/ru_mail_domain_catchall.lng index 60d3ebd326..25349ca497 100644 --- a/interface/web/mail/lib/lang/ru_mail_domain_catchall.lng +++ b/interface/web/mail/lib/lang/ru_mail_domain_catchall.lng @@ -8,4 +8,5 @@ $wb['domain_error_regex'] = 'Ðекорректное Ð¸Ð¼Ñ Ð´Ð¾Ð¼ÐµÐ½Ð°.'; $wb['limit_mailcatchall_txt'] = 'МакÑимальное чиÑло МакÑ. количеÑтво учётных запиÑей Ñводных почтовых Ñщиков доÑтигнуто.'; $wb['source_txt'] = 'ИÑточник'; $wb['destination_error_isemail'] = 'Ðе выбран получатель или запиÑÑŒ некорректна.'; +$wb['greylisting_txt'] = 'Enable greylisting'; ?> diff --git a/interface/web/mail/lib/lang/ru_mail_get.lng b/interface/web/mail/lib/lang/ru_mail_get.lng index 0ce613cd05..b3f2f0b6bf 100644 --- a/interface/web/mail/lib/lang/ru_mail_get.lng +++ b/interface/web/mail/lib/lang/ru_mail_get.lng @@ -14,6 +14,6 @@ $wb['source_password_error_isempty'] = 'ПуÑтой пароль.'; $wb['destination_error_isemail'] = 'Ðе выбран получатель или запиÑÑŒ некорректна.'; $wb['source_server_error_regex'] = 'Ðекорректное доменное Ð¸Ð¼Ñ Ð´Ð»Ñ Ñервера POP3/IMAP.'; $wb['source_read_all_txt'] = 'Получать вÑе ÑÐ¾Ð¾Ð±Ñ‰ÐµÐ½Ð¸Ñ Ñлектронной почты (Ð²ÐºÐ»ÑŽÑ‡Ð°Ñ Ð¿Ñ€Ð¾Ñ‡Ð¸Ñ‚Ð°Ð½Ð½Ñ‹Ðµ пиÑьма)'; -$wb['error_delete_read_all_combination'] = 'ÐедопуÑÑ‚Ð¸Ð¼Ð°Ñ ÐºÐ¾Ð¼Ð±Ð¸Ð½Ð°Ñ†Ð¸Ñ Ð¿Ð°Ñ€Ð°Ð¼ÐµÑ‚Ñ€Ð¾Ð². Ð’Ñ‹ не можете иÑпользовать \"Удалить пиÑьма поÑле получениÑ\" = ÐЕТ вмеÑте Ñ \"Получить вÑе пиÑьма\" = ДÐ'; +$wb['error_delete_read_all_combination'] = 'ÐедопуÑÑ‚Ð¸Ð¼Ð°Ñ ÐºÐ¾Ð¼Ð±Ð¸Ð½Ð°Ñ†Ð¸Ñ Ð¿Ð°Ñ€Ð°Ð¼ÐµÑ‚Ñ€Ð¾Ð². Ð’Ñ‹ не можете иÑпользовать \\"Удалить пиÑьма поÑле получениÑ\\" = ÐЕТ вмеÑте Ñ \\"Получить вÑе пиÑьма\\" = ДÐ'; $wb['source_delete_note_txt'] = 'ПожалуйÑта, прежде чем активировать Ñтот параметр, убедитеÑÑŒ в том, что Ñборщик почты работает.'; ?> diff --git a/interface/web/mail/lib/lang/ru_mail_user_filter.lng b/interface/web/mail/lib/lang/ru_mail_user_filter.lng index ecc2d25b9d..c8306f9838 100644 --- a/interface/web/mail/lib/lang/ru_mail_user_filter.lng +++ b/interface/web/mail/lib/lang/ru_mail_user_filter.lng @@ -6,7 +6,7 @@ $wb['active_txt'] = 'Ðктивно'; $wb['rulename_error_empty'] = 'Ð˜Ð¼Ñ Ð¿ÑƒÑтое.'; $wb['searchterm_is_empty'] = 'Поле поиÑка пуÑтое.'; $wb['source_txt'] = 'ИÑточник'; -$wb['target_error_regex'] = 'Ðазначение может Ñодержать только Ñледующие Ñимволы: \"a-z\", \"0-9\", \"-\", \".\", \"_\" и {пробел}'; +$wb['target_error_regex'] = 'Ðазначение может Ñодержать только Ñледующие Ñимволы: \\"a-z\\", \\"0-9\\", \\"-\\", \\".\\", \\"_\\" и {пробел}'; $wb['limit_mailfilter_txt'] = 'МакÑимальное чиÑло почтовых фильтров доÑтигнуто.'; $wb['subject_txt'] = 'Тема'; $wb['from_txt'] = 'От'; diff --git a/interface/web/mail/lib/lang/ru_spamfilter_policy.lng b/interface/web/mail/lib/lang/ru_spamfilter_policy.lng index 7bae8a0fd0..bab0a9ba0c 100644 --- a/interface/web/mail/lib/lang/ru_spamfilter_policy.lng +++ b/interface/web/mail/lib/lang/ru_spamfilter_policy.lng @@ -35,4 +35,17 @@ $wb['bad_header_admin_txt'] = 'Ðдмин: кривые заголовки'; $wb['spam_admin_txt'] = 'Ðдмин: СПÐÐœ'; $wb['message_size_limit_txt'] = 'Превышен размер ÑообщениÑ'; $wb['banned_rulenames_txt'] = 'Правила банов'; +$wb['rspamd_greylisting_txt'] = 'Use greylisting'; +$wb['rspamd_spam_greylisting_level_txt'] = 'Greylisting level'; +$wb['rspamd_spam_tag_level_txt'] = 'SPAM tag level'; +$wb['rspamd_spam_tag_method_txt'] = 'SPAM tag method'; +$wb['rspamd_spam_kill_level_txt'] = 'SPAM reject level'; +$wb['btn_save_txt'] = 'Save'; +$wb['btn_cancel_txt'] = 'Cancel'; +$wb['amavis_settings_txt'] = 'Settings'; +$wb['amavis_taglevel_txt'] = 'Tag-Level'; +$wb['amavis_quarantine_txt'] = 'Quarantine'; +$wb['amavis_other_txt'] = 'Other'; +$wb['add_header_txt'] = 'Add header'; +$wb['rewrite_subject_txt'] = 'Rewrite subject'; ?> diff --git a/interface/web/mail/lib/lang/se.lng b/interface/web/mail/lib/lang/se.lng index 3edc2034d0..7a415aa901 100644 --- a/interface/web/mail/lib/lang/se.lng +++ b/interface/web/mail/lib/lang/se.lng @@ -45,4 +45,6 @@ $wb['Global Filters'] = 'Global Filters'; $wb['Domain Alias'] = 'Domain Alias'; $wb['Relay Recipients'] = 'Relay Recipients'; $wb['Mailbox quota'] = 'Mailbox quota'; +$wb['add_header_txt'] = 'Header (adds \"X-Spam: Yes\")'; +$wb['rewrite_subject_txt'] = 'Subject (adds \"***SPAM***\" at the beginning)'; ?> diff --git a/interface/web/mail/lib/lang/se_mail_domain_catchall.lng b/interface/web/mail/lib/lang/se_mail_domain_catchall.lng index 7ef1116390..39c6e6c559 100644 --- a/interface/web/mail/lib/lang/se_mail_domain_catchall.lng +++ b/interface/web/mail/lib/lang/se_mail_domain_catchall.lng @@ -8,4 +8,5 @@ $wb['domain_error_regex'] = 'Ogiltig domän eller domänen innehÃ¥ller ogiltiga $wb['limit_mailcatchall_txt'] = 'Det maximala antalet catchall-adresser för ditt konto är uppnÃ¥tt.'; $wb['source_txt'] = 'Källa'; $wb['destination_error_isemail'] = 'Destinationen när inte en giltig epostadress.'; +$wb['greylisting_txt'] = 'Enable greylisting'; ?> diff --git a/interface/web/mail/lib/lang/se_mail_get.lng b/interface/web/mail/lib/lang/se_mail_get.lng index db4440210e..9ed9710055 100644 --- a/interface/web/mail/lib/lang/se_mail_get.lng +++ b/interface/web/mail/lib/lang/se_mail_get.lng @@ -14,6 +14,6 @@ $wb['source_password_error_isempty'] = 'Lösenord är tomt.'; $wb['destination_error_isemail'] = 'Ingen destination vald.'; $wb['source_server_error_regex'] = 'POP3-/Imapserver är inte ett giltigt domännamn.'; $wb['source_read_all_txt'] = 'Hämta all epost (även läst epost)'; -$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['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'] = 'Vänligen kontrollera först om eposthämtning fungerar innan du aktiverar detta val..'; ?> diff --git a/interface/web/mail/lib/lang/se_spamfilter_policy.lng b/interface/web/mail/lib/lang/se_spamfilter_policy.lng index e876330a68..683b378c21 100644 --- a/interface/web/mail/lib/lang/se_spamfilter_policy.lng +++ b/interface/web/mail/lib/lang/se_spamfilter_policy.lng @@ -35,4 +35,17 @@ $wb['bad_header_admin_txt'] = 'Bad header admin'; $wb['spam_admin_txt'] = 'SPAM admin'; $wb['message_size_limit_txt'] = 'Message size limit'; $wb['banned_rulenames_txt'] = 'Banned rulenames'; +$wb['rspamd_greylisting_txt'] = 'Use greylisting'; +$wb['rspamd_spam_greylisting_level_txt'] = 'Greylisting level'; +$wb['rspamd_spam_tag_level_txt'] = 'SPAM tag level'; +$wb['rspamd_spam_tag_method_txt'] = 'SPAM tag method'; +$wb['rspamd_spam_kill_level_txt'] = 'SPAM reject level'; +$wb['btn_save_txt'] = 'Save'; +$wb['btn_cancel_txt'] = 'Cancel'; +$wb['amavis_settings_txt'] = 'Settings'; +$wb['amavis_taglevel_txt'] = 'Tag-Level'; +$wb['amavis_quarantine_txt'] = 'Quarantine'; +$wb['amavis_other_txt'] = 'Other'; +$wb['add_header_txt'] = 'Add header'; +$wb['rewrite_subject_txt'] = 'Rewrite subject'; ?> diff --git a/interface/web/mail/lib/lang/sk.lng b/interface/web/mail/lib/lang/sk.lng index 22773a574a..7b00f9d52c 100644 --- a/interface/web/mail/lib/lang/sk.lng +++ b/interface/web/mail/lib/lang/sk.lng @@ -45,4 +45,6 @@ $wb['Global Filters'] = 'Globálne Filtere'; $wb['Domain Alias'] = 'Domain Alias'; $wb['Relay Recipients'] = 'Relay Recipients'; $wb['Mailbox quota'] = 'Mailbox quota'; +$wb['add_header_txt'] = 'Header (adds \"X-Spam: Yes\")'; +$wb['rewrite_subject_txt'] = 'Subject (adds \"***SPAM***\" at the beginning)'; ?> diff --git a/interface/web/mail/lib/lang/sk_mail_domain_catchall.lng b/interface/web/mail/lib/lang/sk_mail_domain_catchall.lng index 38c37544e6..03c701c6db 100644 --- a/interface/web/mail/lib/lang/sk_mail_domain_catchall.lng +++ b/interface/web/mail/lib/lang/sk_mail_domain_catchall.lng @@ -8,4 +8,5 @@ $wb['domain_error_regex'] = 'Neplatný názov domény alebo doména obsahuje nep $wb['limit_mailcatchall_txt'] = 'Max. poÄet e-mailových doménových koÅ¡ov pre Váš úÄet je dosiahnutý.'; $wb['source_txt'] = 'Source'; $wb['destination_error_isemail'] = 'Destination is no valid email address.'; +$wb['greylisting_txt'] = 'Enable greylisting'; ?> diff --git a/interface/web/mail/lib/lang/sk_mail_get.lng b/interface/web/mail/lib/lang/sk_mail_get.lng index 8e180ca7a8..e43899965d 100644 --- a/interface/web/mail/lib/lang/sk_mail_get.lng +++ b/interface/web/mail/lib/lang/sk_mail_get.lng @@ -14,6 +14,6 @@ $wb['source_password_error_isempty'] = 'Heslo je prázdne.'; $wb['destination_error_isemail'] = 'Žiadny Cieľ nebol vybraný.'; $wb['source_server_error_regex'] = 'Pop3/Imap Server nie je valÃdne doménové meno.'; $wb['source_read_all_txt'] = 'Retrieve all emails (incl. read mails)'; -$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['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'] = 'Please check first if email retrieval works, before you activate this option.'; ?> diff --git a/interface/web/mail/lib/lang/sk_spamfilter_policy.lng b/interface/web/mail/lib/lang/sk_spamfilter_policy.lng index b58988d60b..6a4d636259 100644 --- a/interface/web/mail/lib/lang/sk_spamfilter_policy.lng +++ b/interface/web/mail/lib/lang/sk_spamfilter_policy.lng @@ -35,4 +35,17 @@ $wb['bad_header_admin_txt'] = 'Zlé hlaviÄky admin'; $wb['spam_admin_txt'] = 'SPAM admin'; $wb['message_size_limit_txt'] = 'Limit veľkosti správy'; $wb['banned_rulenames_txt'] = 'Banned rulenames'; +$wb['rspamd_greylisting_txt'] = 'Use greylisting'; +$wb['rspamd_spam_greylisting_level_txt'] = 'Greylisting level'; +$wb['rspamd_spam_tag_level_txt'] = 'SPAM tag level'; +$wb['rspamd_spam_tag_method_txt'] = 'SPAM tag method'; +$wb['rspamd_spam_kill_level_txt'] = 'SPAM reject level'; +$wb['btn_save_txt'] = 'Save'; +$wb['btn_cancel_txt'] = 'Cancel'; +$wb['amavis_settings_txt'] = 'Settings'; +$wb['amavis_taglevel_txt'] = 'Tag-Level'; +$wb['amavis_quarantine_txt'] = 'Quarantine'; +$wb['amavis_other_txt'] = 'Other'; +$wb['add_header_txt'] = 'Add header'; +$wb['rewrite_subject_txt'] = 'Rewrite subject'; ?> diff --git a/interface/web/mail/lib/lang/tr.lng b/interface/web/mail/lib/lang/tr.lng index e2deaca006..4f6f77a38a 100644 --- a/interface/web/mail/lib/lang/tr.lng +++ b/interface/web/mail/lib/lang/tr.lng @@ -45,4 +45,6 @@ $wb['Global Filters'] = 'Genel Süzgeçler'; $wb['Domain Alias'] = 'Takma Alan Adı'; $wb['Relay Recipients'] = 'Aktarılan Alıcılar'; $wb['Mailbox quota'] = 'Posta Kutusu Kotası'; +$wb['add_header_txt'] = 'Header (adds \"X-Spam: Yes\")'; +$wb['rewrite_subject_txt'] = 'Subject (adds \"***SPAM***\" at the beginning)'; ?> diff --git a/interface/web/mail/lib/lang/tr_mail_domain_catchall.lng b/interface/web/mail/lib/lang/tr_mail_domain_catchall.lng index 037d2ad16e..c5f8725a72 100644 --- a/interface/web/mail/lib/lang/tr_mail_domain_catchall.lng +++ b/interface/web/mail/lib/lang/tr_mail_domain_catchall.lng @@ -8,4 +8,5 @@ $wb['domain_error_regex'] = 'Alan adı geçersiz ya da geçersiz karakterler iç $wb['limit_mailcatchall_txt'] = 'Hesabınıza ekleyebileceÄŸiniz en fazla tümünü al hesabı sayısına ulaÅŸtınız.'; $wb['source_txt'] = 'Kaynak'; $wb['destination_error_isemail'] = 'Hedef e-posta adresi geçersiz.'; +$wb['greylisting_txt'] = 'Enable greylisting'; ?> diff --git a/interface/web/mail/lib/lang/tr_mail_get.lng b/interface/web/mail/lib/lang/tr_mail_get.lng index 3e29c26a71..b82b6c8c9a 100644 --- a/interface/web/mail/lib/lang/tr_mail_get.lng +++ b/interface/web/mail/lib/lang/tr_mail_get.lng @@ -15,5 +15,5 @@ $wb['source_username_error_isempty'] = 'Kullanıcı adı boÅŸ olamaz.'; $wb['source_password_error_isempty'] = 'Parola boÅŸ olamaz.'; $wb['destination_error_isemail'] = 'Hedef seçilmemiÅŸ.'; $wb['source_server_error_regex'] = 'POP3/IMAP Sunucu alan adı geçersiz.'; -$wb['error_delete_read_all_combination'] = 'Seçenek kombinasyonu geçersiz. You can not use \"E-postalar alındıktan sonra silinsin\" = Hayır iken \"Tüm e-postalar alınsın\" = Evet olamaz'; +$wb['error_delete_read_all_combination'] = 'Seçenek kombinasyonu geçersiz. You can not use \\"E-postalar alındıktan sonra silinsin\\" = Hayır iken \\"Tüm e-postalar alınsın\\" = Evet olamaz'; ?> diff --git a/interface/web/mail/lib/lang/tr_spamfilter_policy.lng b/interface/web/mail/lib/lang/tr_spamfilter_policy.lng index 721b0490f7..d7b76496a1 100644 --- a/interface/web/mail/lib/lang/tr_spamfilter_policy.lng +++ b/interface/web/mail/lib/lang/tr_spamfilter_policy.lng @@ -35,4 +35,17 @@ $wb['bad_header_admin_txt'] = 'Kötü üstbilgi yönetici'; $wb['spam_admin_txt'] = 'Önemsiz posta yönetici'; $wb['message_size_limit_txt'] = 'Ä°leti boyutu sınırı'; $wb['banned_rulenames_txt'] = 'Yasak kural adları'; +$wb['rspamd_greylisting_txt'] = 'Use greylisting'; +$wb['rspamd_spam_greylisting_level_txt'] = 'Greylisting level'; +$wb['rspamd_spam_tag_level_txt'] = 'SPAM tag level'; +$wb['rspamd_spam_tag_method_txt'] = 'SPAM tag method'; +$wb['rspamd_spam_kill_level_txt'] = 'SPAM reject level'; +$wb['btn_save_txt'] = 'Save'; +$wb['btn_cancel_txt'] = 'Cancel'; +$wb['amavis_settings_txt'] = 'Settings'; +$wb['amavis_taglevel_txt'] = 'Tag-Level'; +$wb['amavis_quarantine_txt'] = 'Quarantine'; +$wb['amavis_other_txt'] = 'Other'; +$wb['add_header_txt'] = 'Add header'; +$wb['rewrite_subject_txt'] = 'Rewrite subject'; ?> diff --git a/interface/web/mailuser/lib/lang/ru_mail_user_filter.lng b/interface/web/mailuser/lib/lang/ru_mail_user_filter.lng index f10dd4ddb2..d834e4057a 100644 --- a/interface/web/mailuser/lib/lang/ru_mail_user_filter.lng +++ b/interface/web/mailuser/lib/lang/ru_mail_user_filter.lng @@ -6,7 +6,7 @@ $wb['active_txt'] = 'Ðктивно'; $wb['rulename_error_empty'] = 'Ð˜Ð¼Ñ Ð¿ÑƒÑтое.'; $wb['searchterm_is_empty'] = 'Поле поиÑка пуÑтое.'; $wb['source_txt'] = 'ИÑточник'; -$wb['target_error_regex'] = 'Ðазначение может Ñодержать только Ñледующие Ñимволы: \"a-z\", \"0-9\", \"-\", \".\", \"_\" и {пробел}'; +$wb['target_error_regex'] = 'Ðазначение может Ñодержать только Ñледующие Ñимволы: \\"a-z\\", \\"0-9\\", \\"-\\", \\".\\", \\"_\\" и {пробел}'; $wb['limit_mailfilter_txt'] = 'МакÑимальное чиÑло почтовых фильтров доÑтигнуто.'; $wb['subject_txt'] = 'Тема'; $wb['from_txt'] = 'От'; diff --git a/interface/web/monitor/lib/lang/ar_dataloghistory_list.lng b/interface/web/monitor/lib/lang/ar_dataloghistory_list.lng index 9f9afd6347..f1ba8c67b8 100644 --- a/interface/web/monitor/lib/lang/ar_dataloghistory_list.lng +++ b/interface/web/monitor/lib/lang/ar_dataloghistory_list.lng @@ -1,8 +1,8 @@ <?php -$wb["list_head_txt"] = 'Datalog History'; -$wb["tstamp_txt"] = 'Date'; -$wb["server_id_txt"] = 'Server'; -$wb["dbtable_txt"] = 'DB Table'; -$wb["action_txt"] = 'Action'; -$wb["status_txt"] = 'Status'; +$wb['list_head_txt'] = 'Datalog History'; +$wb['tstamp_txt'] = 'Date'; +$wb['server_id_txt'] = 'Server'; +$wb['dbtable_txt'] = 'DB Table'; +$wb['action_txt'] = 'Action'; +$wb['status_txt'] = 'Status'; ?> diff --git a/interface/web/monitor/lib/lang/bg_dataloghistory_list.lng b/interface/web/monitor/lib/lang/bg_dataloghistory_list.lng index 9f9afd6347..f1ba8c67b8 100644 --- a/interface/web/monitor/lib/lang/bg_dataloghistory_list.lng +++ b/interface/web/monitor/lib/lang/bg_dataloghistory_list.lng @@ -1,8 +1,8 @@ <?php -$wb["list_head_txt"] = 'Datalog History'; -$wb["tstamp_txt"] = 'Date'; -$wb["server_id_txt"] = 'Server'; -$wb["dbtable_txt"] = 'DB Table'; -$wb["action_txt"] = 'Action'; -$wb["status_txt"] = 'Status'; +$wb['list_head_txt'] = 'Datalog History'; +$wb['tstamp_txt'] = 'Date'; +$wb['server_id_txt'] = 'Server'; +$wb['dbtable_txt'] = 'DB Table'; +$wb['action_txt'] = 'Action'; +$wb['status_txt'] = 'Status'; ?> diff --git a/interface/web/monitor/lib/lang/br_dataloghistory_list.lng b/interface/web/monitor/lib/lang/br_dataloghistory_list.lng index 9f9afd6347..f1ba8c67b8 100644 --- a/interface/web/monitor/lib/lang/br_dataloghistory_list.lng +++ b/interface/web/monitor/lib/lang/br_dataloghistory_list.lng @@ -1,8 +1,8 @@ <?php -$wb["list_head_txt"] = 'Datalog History'; -$wb["tstamp_txt"] = 'Date'; -$wb["server_id_txt"] = 'Server'; -$wb["dbtable_txt"] = 'DB Table'; -$wb["action_txt"] = 'Action'; -$wb["status_txt"] = 'Status'; +$wb['list_head_txt'] = 'Datalog History'; +$wb['tstamp_txt'] = 'Date'; +$wb['server_id_txt'] = 'Server'; +$wb['dbtable_txt'] = 'DB Table'; +$wb['action_txt'] = 'Action'; +$wb['status_txt'] = 'Status'; ?> diff --git a/interface/web/monitor/lib/lang/ca_dataloghistory_list.lng b/interface/web/monitor/lib/lang/ca_dataloghistory_list.lng index 9f9afd6347..f1ba8c67b8 100644 --- a/interface/web/monitor/lib/lang/ca_dataloghistory_list.lng +++ b/interface/web/monitor/lib/lang/ca_dataloghistory_list.lng @@ -1,8 +1,8 @@ <?php -$wb["list_head_txt"] = 'Datalog History'; -$wb["tstamp_txt"] = 'Date'; -$wb["server_id_txt"] = 'Server'; -$wb["dbtable_txt"] = 'DB Table'; -$wb["action_txt"] = 'Action'; -$wb["status_txt"] = 'Status'; +$wb['list_head_txt'] = 'Datalog History'; +$wb['tstamp_txt'] = 'Date'; +$wb['server_id_txt'] = 'Server'; +$wb['dbtable_txt'] = 'DB Table'; +$wb['action_txt'] = 'Action'; +$wb['status_txt'] = 'Status'; ?> diff --git a/interface/web/monitor/lib/lang/dk_dataloghistory_list.lng b/interface/web/monitor/lib/lang/dk_dataloghistory_list.lng index 9f9afd6347..f1ba8c67b8 100644 --- a/interface/web/monitor/lib/lang/dk_dataloghistory_list.lng +++ b/interface/web/monitor/lib/lang/dk_dataloghistory_list.lng @@ -1,8 +1,8 @@ <?php -$wb["list_head_txt"] = 'Datalog History'; -$wb["tstamp_txt"] = 'Date'; -$wb["server_id_txt"] = 'Server'; -$wb["dbtable_txt"] = 'DB Table'; -$wb["action_txt"] = 'Action'; -$wb["status_txt"] = 'Status'; +$wb['list_head_txt'] = 'Datalog History'; +$wb['tstamp_txt'] = 'Date'; +$wb['server_id_txt'] = 'Server'; +$wb['dbtable_txt'] = 'DB Table'; +$wb['action_txt'] = 'Action'; +$wb['status_txt'] = 'Status'; ?> diff --git a/interface/web/monitor/lib/lang/el_dataloghistory_list.lng b/interface/web/monitor/lib/lang/el_dataloghistory_list.lng index 9f9afd6347..f1ba8c67b8 100644 --- a/interface/web/monitor/lib/lang/el_dataloghistory_list.lng +++ b/interface/web/monitor/lib/lang/el_dataloghistory_list.lng @@ -1,8 +1,8 @@ <?php -$wb["list_head_txt"] = 'Datalog History'; -$wb["tstamp_txt"] = 'Date'; -$wb["server_id_txt"] = 'Server'; -$wb["dbtable_txt"] = 'DB Table'; -$wb["action_txt"] = 'Action'; -$wb["status_txt"] = 'Status'; +$wb['list_head_txt'] = 'Datalog History'; +$wb['tstamp_txt'] = 'Date'; +$wb['server_id_txt'] = 'Server'; +$wb['dbtable_txt'] = 'DB Table'; +$wb['action_txt'] = 'Action'; +$wb['status_txt'] = 'Status'; ?> diff --git a/interface/web/monitor/lib/lang/es.lng b/interface/web/monitor/lib/lang/es.lng index 3a95c6e9c2..f4acb3c45c 100755 --- a/interface/web/monitor/lib/lang/es.lng +++ b/interface/web/monitor/lib/lang/es.lng @@ -27,7 +27,7 @@ $wb['monitor_logs_mailerr_txt'] = 'Registros de errores de correo'; $wb['monitor_logs_mailwarn_txt'] = 'Registros de advertencias de correo'; $wb['monitor_logs_messages_txt'] = 'Registros de mensajes del sistema'; $wb['monitor_norkhunter_txt'] = 'RKHunter no está instalado, por lo que no hay registros a mostrar'; -$wb['monitor_nosupportedraid1_txt'] = 'Por el momento, soportamos \"mdadm\" o \"mpt-status\" para supervisar el RAID.<br>No hemos podido encontrarlo en su servidor. </br> Por lo tanto no podemos monitorizar su RAID todavÃa.'; +$wb['monitor_nosupportedraid1_txt'] = 'Por el momento, soportamos \\"mdadm\\" o \\"mpt-status\\" para supervisar el RAID.<br>No hemos podido encontrarlo en su servidor. </br> Por lo tanto no podemos monitorizar su RAID todavÃa.'; $wb['monitor_serverstate_beancountercritical_txt'] = 'Existen muchos errores en el Beancounter'; $wb['monitor_serverstate_beancountererror_txt'] = 'Existen muchÃsimos errores en el Beancounter'; $wb['monitor_serverstate_beancounterinfo_txt'] = 'Existen algún error en el Beancounter'; diff --git a/interface/web/monitor/lib/lang/es_dataloghistory_list.lng b/interface/web/monitor/lib/lang/es_dataloghistory_list.lng index 9f9afd6347..f1ba8c67b8 100644 --- a/interface/web/monitor/lib/lang/es_dataloghistory_list.lng +++ b/interface/web/monitor/lib/lang/es_dataloghistory_list.lng @@ -1,8 +1,8 @@ <?php -$wb["list_head_txt"] = 'Datalog History'; -$wb["tstamp_txt"] = 'Date'; -$wb["server_id_txt"] = 'Server'; -$wb["dbtable_txt"] = 'DB Table'; -$wb["action_txt"] = 'Action'; -$wb["status_txt"] = 'Status'; +$wb['list_head_txt'] = 'Datalog History'; +$wb['tstamp_txt'] = 'Date'; +$wb['server_id_txt'] = 'Server'; +$wb['dbtable_txt'] = 'DB Table'; +$wb['action_txt'] = 'Action'; +$wb['status_txt'] = 'Status'; ?> diff --git a/interface/web/monitor/lib/lang/fi_dataloghistory_list.lng b/interface/web/monitor/lib/lang/fi_dataloghistory_list.lng index 9f9afd6347..f1ba8c67b8 100644 --- a/interface/web/monitor/lib/lang/fi_dataloghistory_list.lng +++ b/interface/web/monitor/lib/lang/fi_dataloghistory_list.lng @@ -1,8 +1,8 @@ <?php -$wb["list_head_txt"] = 'Datalog History'; -$wb["tstamp_txt"] = 'Date'; -$wb["server_id_txt"] = 'Server'; -$wb["dbtable_txt"] = 'DB Table'; -$wb["action_txt"] = 'Action'; -$wb["status_txt"] = 'Status'; +$wb['list_head_txt'] = 'Datalog History'; +$wb['tstamp_txt'] = 'Date'; +$wb['server_id_txt'] = 'Server'; +$wb['dbtable_txt'] = 'DB Table'; +$wb['action_txt'] = 'Action'; +$wb['status_txt'] = 'Status'; ?> diff --git a/interface/web/monitor/lib/lang/fr_dataloghistory_list.lng b/interface/web/monitor/lib/lang/fr_dataloghistory_list.lng index 9f9afd6347..f1ba8c67b8 100644 --- a/interface/web/monitor/lib/lang/fr_dataloghistory_list.lng +++ b/interface/web/monitor/lib/lang/fr_dataloghistory_list.lng @@ -1,8 +1,8 @@ <?php -$wb["list_head_txt"] = 'Datalog History'; -$wb["tstamp_txt"] = 'Date'; -$wb["server_id_txt"] = 'Server'; -$wb["dbtable_txt"] = 'DB Table'; -$wb["action_txt"] = 'Action'; -$wb["status_txt"] = 'Status'; +$wb['list_head_txt'] = 'Datalog History'; +$wb['tstamp_txt'] = 'Date'; +$wb['server_id_txt'] = 'Server'; +$wb['dbtable_txt'] = 'DB Table'; +$wb['action_txt'] = 'Action'; +$wb['status_txt'] = 'Status'; ?> diff --git a/interface/web/monitor/lib/lang/hr_dataloghistory_list.lng b/interface/web/monitor/lib/lang/hr_dataloghistory_list.lng index 9f9afd6347..f1ba8c67b8 100644 --- a/interface/web/monitor/lib/lang/hr_dataloghistory_list.lng +++ b/interface/web/monitor/lib/lang/hr_dataloghistory_list.lng @@ -1,8 +1,8 @@ <?php -$wb["list_head_txt"] = 'Datalog History'; -$wb["tstamp_txt"] = 'Date'; -$wb["server_id_txt"] = 'Server'; -$wb["dbtable_txt"] = 'DB Table'; -$wb["action_txt"] = 'Action'; -$wb["status_txt"] = 'Status'; +$wb['list_head_txt'] = 'Datalog History'; +$wb['tstamp_txt'] = 'Date'; +$wb['server_id_txt'] = 'Server'; +$wb['dbtable_txt'] = 'DB Table'; +$wb['action_txt'] = 'Action'; +$wb['status_txt'] = 'Status'; ?> diff --git a/interface/web/monitor/lib/lang/hu_dataloghistory_list.lng b/interface/web/monitor/lib/lang/hu_dataloghistory_list.lng index 9f9afd6347..f1ba8c67b8 100644 --- a/interface/web/monitor/lib/lang/hu_dataloghistory_list.lng +++ b/interface/web/monitor/lib/lang/hu_dataloghistory_list.lng @@ -1,8 +1,8 @@ <?php -$wb["list_head_txt"] = 'Datalog History'; -$wb["tstamp_txt"] = 'Date'; -$wb["server_id_txt"] = 'Server'; -$wb["dbtable_txt"] = 'DB Table'; -$wb["action_txt"] = 'Action'; -$wb["status_txt"] = 'Status'; +$wb['list_head_txt'] = 'Datalog History'; +$wb['tstamp_txt'] = 'Date'; +$wb['server_id_txt'] = 'Server'; +$wb['dbtable_txt'] = 'DB Table'; +$wb['action_txt'] = 'Action'; +$wb['status_txt'] = 'Status'; ?> diff --git a/interface/web/monitor/lib/lang/id_dataloghistory_list.lng b/interface/web/monitor/lib/lang/id_dataloghistory_list.lng index 9f9afd6347..f1ba8c67b8 100644 --- a/interface/web/monitor/lib/lang/id_dataloghistory_list.lng +++ b/interface/web/monitor/lib/lang/id_dataloghistory_list.lng @@ -1,8 +1,8 @@ <?php -$wb["list_head_txt"] = 'Datalog History'; -$wb["tstamp_txt"] = 'Date'; -$wb["server_id_txt"] = 'Server'; -$wb["dbtable_txt"] = 'DB Table'; -$wb["action_txt"] = 'Action'; -$wb["status_txt"] = 'Status'; +$wb['list_head_txt'] = 'Datalog History'; +$wb['tstamp_txt'] = 'Date'; +$wb['server_id_txt'] = 'Server'; +$wb['dbtable_txt'] = 'DB Table'; +$wb['action_txt'] = 'Action'; +$wb['status_txt'] = 'Status'; ?> diff --git a/interface/web/monitor/lib/lang/it_dataloghistory_list.lng b/interface/web/monitor/lib/lang/it_dataloghistory_list.lng index 9f9afd6347..f1ba8c67b8 100644 --- a/interface/web/monitor/lib/lang/it_dataloghistory_list.lng +++ b/interface/web/monitor/lib/lang/it_dataloghistory_list.lng @@ -1,8 +1,8 @@ <?php -$wb["list_head_txt"] = 'Datalog History'; -$wb["tstamp_txt"] = 'Date'; -$wb["server_id_txt"] = 'Server'; -$wb["dbtable_txt"] = 'DB Table'; -$wb["action_txt"] = 'Action'; -$wb["status_txt"] = 'Status'; +$wb['list_head_txt'] = 'Datalog History'; +$wb['tstamp_txt'] = 'Date'; +$wb['server_id_txt'] = 'Server'; +$wb['dbtable_txt'] = 'DB Table'; +$wb['action_txt'] = 'Action'; +$wb['status_txt'] = 'Status'; ?> diff --git a/interface/web/monitor/lib/lang/ja_dataloghistory_list.lng b/interface/web/monitor/lib/lang/ja_dataloghistory_list.lng index 9f9afd6347..f1ba8c67b8 100644 --- a/interface/web/monitor/lib/lang/ja_dataloghistory_list.lng +++ b/interface/web/monitor/lib/lang/ja_dataloghistory_list.lng @@ -1,8 +1,8 @@ <?php -$wb["list_head_txt"] = 'Datalog History'; -$wb["tstamp_txt"] = 'Date'; -$wb["server_id_txt"] = 'Server'; -$wb["dbtable_txt"] = 'DB Table'; -$wb["action_txt"] = 'Action'; -$wb["status_txt"] = 'Status'; +$wb['list_head_txt'] = 'Datalog History'; +$wb['tstamp_txt'] = 'Date'; +$wb['server_id_txt'] = 'Server'; +$wb['dbtable_txt'] = 'DB Table'; +$wb['action_txt'] = 'Action'; +$wb['status_txt'] = 'Status'; ?> diff --git a/interface/web/monitor/lib/lang/nl_dataloghistory_list.lng b/interface/web/monitor/lib/lang/nl_dataloghistory_list.lng index 9f9afd6347..f1ba8c67b8 100644 --- a/interface/web/monitor/lib/lang/nl_dataloghistory_list.lng +++ b/interface/web/monitor/lib/lang/nl_dataloghistory_list.lng @@ -1,8 +1,8 @@ <?php -$wb["list_head_txt"] = 'Datalog History'; -$wb["tstamp_txt"] = 'Date'; -$wb["server_id_txt"] = 'Server'; -$wb["dbtable_txt"] = 'DB Table'; -$wb["action_txt"] = 'Action'; -$wb["status_txt"] = 'Status'; +$wb['list_head_txt'] = 'Datalog History'; +$wb['tstamp_txt'] = 'Date'; +$wb['server_id_txt'] = 'Server'; +$wb['dbtable_txt'] = 'DB Table'; +$wb['action_txt'] = 'Action'; +$wb['status_txt'] = 'Status'; ?> diff --git a/interface/web/monitor/lib/lang/pl_dataloghistory_list.lng b/interface/web/monitor/lib/lang/pl_dataloghistory_list.lng index 9f9afd6347..f1ba8c67b8 100644 --- a/interface/web/monitor/lib/lang/pl_dataloghistory_list.lng +++ b/interface/web/monitor/lib/lang/pl_dataloghistory_list.lng @@ -1,8 +1,8 @@ <?php -$wb["list_head_txt"] = 'Datalog History'; -$wb["tstamp_txt"] = 'Date'; -$wb["server_id_txt"] = 'Server'; -$wb["dbtable_txt"] = 'DB Table'; -$wb["action_txt"] = 'Action'; -$wb["status_txt"] = 'Status'; +$wb['list_head_txt'] = 'Datalog History'; +$wb['tstamp_txt'] = 'Date'; +$wb['server_id_txt'] = 'Server'; +$wb['dbtable_txt'] = 'DB Table'; +$wb['action_txt'] = 'Action'; +$wb['status_txt'] = 'Status'; ?> diff --git a/interface/web/monitor/lib/lang/pt_dataloghistory_list.lng b/interface/web/monitor/lib/lang/pt_dataloghistory_list.lng index 9f9afd6347..f1ba8c67b8 100644 --- a/interface/web/monitor/lib/lang/pt_dataloghistory_list.lng +++ b/interface/web/monitor/lib/lang/pt_dataloghistory_list.lng @@ -1,8 +1,8 @@ <?php -$wb["list_head_txt"] = 'Datalog History'; -$wb["tstamp_txt"] = 'Date'; -$wb["server_id_txt"] = 'Server'; -$wb["dbtable_txt"] = 'DB Table'; -$wb["action_txt"] = 'Action'; -$wb["status_txt"] = 'Status'; +$wb['list_head_txt'] = 'Datalog History'; +$wb['tstamp_txt'] = 'Date'; +$wb['server_id_txt'] = 'Server'; +$wb['dbtable_txt'] = 'DB Table'; +$wb['action_txt'] = 'Action'; +$wb['status_txt'] = 'Status'; ?> diff --git a/interface/web/monitor/lib/lang/ro_dataloghistory_list.lng b/interface/web/monitor/lib/lang/ro_dataloghistory_list.lng index 9f9afd6347..f1ba8c67b8 100644 --- a/interface/web/monitor/lib/lang/ro_dataloghistory_list.lng +++ b/interface/web/monitor/lib/lang/ro_dataloghistory_list.lng @@ -1,8 +1,8 @@ <?php -$wb["list_head_txt"] = 'Datalog History'; -$wb["tstamp_txt"] = 'Date'; -$wb["server_id_txt"] = 'Server'; -$wb["dbtable_txt"] = 'DB Table'; -$wb["action_txt"] = 'Action'; -$wb["status_txt"] = 'Status'; +$wb['list_head_txt'] = 'Datalog History'; +$wb['tstamp_txt'] = 'Date'; +$wb['server_id_txt'] = 'Server'; +$wb['dbtable_txt'] = 'DB Table'; +$wb['action_txt'] = 'Action'; +$wb['status_txt'] = 'Status'; ?> diff --git a/interface/web/monitor/lib/lang/ru_dataloghistory_list.lng b/interface/web/monitor/lib/lang/ru_dataloghistory_list.lng index 9f9afd6347..f1ba8c67b8 100644 --- a/interface/web/monitor/lib/lang/ru_dataloghistory_list.lng +++ b/interface/web/monitor/lib/lang/ru_dataloghistory_list.lng @@ -1,8 +1,8 @@ <?php -$wb["list_head_txt"] = 'Datalog History'; -$wb["tstamp_txt"] = 'Date'; -$wb["server_id_txt"] = 'Server'; -$wb["dbtable_txt"] = 'DB Table'; -$wb["action_txt"] = 'Action'; -$wb["status_txt"] = 'Status'; +$wb['list_head_txt'] = 'Datalog History'; +$wb['tstamp_txt'] = 'Date'; +$wb['server_id_txt'] = 'Server'; +$wb['dbtable_txt'] = 'DB Table'; +$wb['action_txt'] = 'Action'; +$wb['status_txt'] = 'Status'; ?> diff --git a/interface/web/monitor/lib/lang/se_dataloghistory_list.lng b/interface/web/monitor/lib/lang/se_dataloghistory_list.lng index 9f9afd6347..f1ba8c67b8 100644 --- a/interface/web/monitor/lib/lang/se_dataloghistory_list.lng +++ b/interface/web/monitor/lib/lang/se_dataloghistory_list.lng @@ -1,8 +1,8 @@ <?php -$wb["list_head_txt"] = 'Datalog History'; -$wb["tstamp_txt"] = 'Date'; -$wb["server_id_txt"] = 'Server'; -$wb["dbtable_txt"] = 'DB Table'; -$wb["action_txt"] = 'Action'; -$wb["status_txt"] = 'Status'; +$wb['list_head_txt'] = 'Datalog History'; +$wb['tstamp_txt'] = 'Date'; +$wb['server_id_txt'] = 'Server'; +$wb['dbtable_txt'] = 'DB Table'; +$wb['action_txt'] = 'Action'; +$wb['status_txt'] = 'Status'; ?> diff --git a/interface/web/monitor/lib/lang/sk_dataloghistory_list.lng b/interface/web/monitor/lib/lang/sk_dataloghistory_list.lng index 9f9afd6347..f1ba8c67b8 100644 --- a/interface/web/monitor/lib/lang/sk_dataloghistory_list.lng +++ b/interface/web/monitor/lib/lang/sk_dataloghistory_list.lng @@ -1,8 +1,8 @@ <?php -$wb["list_head_txt"] = 'Datalog History'; -$wb["tstamp_txt"] = 'Date'; -$wb["server_id_txt"] = 'Server'; -$wb["dbtable_txt"] = 'DB Table'; -$wb["action_txt"] = 'Action'; -$wb["status_txt"] = 'Status'; +$wb['list_head_txt'] = 'Datalog History'; +$wb['tstamp_txt'] = 'Date'; +$wb['server_id_txt'] = 'Server'; +$wb['dbtable_txt'] = 'DB Table'; +$wb['action_txt'] = 'Action'; +$wb['status_txt'] = 'Status'; ?> diff --git a/interface/web/monitor/lib/lang/tr_dataloghistory_list.lng b/interface/web/monitor/lib/lang/tr_dataloghistory_list.lng index 9f9afd6347..f1ba8c67b8 100644 --- a/interface/web/monitor/lib/lang/tr_dataloghistory_list.lng +++ b/interface/web/monitor/lib/lang/tr_dataloghistory_list.lng @@ -1,8 +1,8 @@ <?php -$wb["list_head_txt"] = 'Datalog History'; -$wb["tstamp_txt"] = 'Date'; -$wb["server_id_txt"] = 'Server'; -$wb["dbtable_txt"] = 'DB Table'; -$wb["action_txt"] = 'Action'; -$wb["status_txt"] = 'Status'; +$wb['list_head_txt'] = 'Datalog History'; +$wb['tstamp_txt'] = 'Date'; +$wb['server_id_txt'] = 'Server'; +$wb['dbtable_txt'] = 'DB Table'; +$wb['action_txt'] = 'Action'; +$wb['status_txt'] = 'Status'; ?> diff --git a/interface/web/sites/lib/lang/ar.lng b/interface/web/sites/lib/lang/ar.lng index bfd833292d..6ca61afae0 100644 --- a/interface/web/sites/lib/lang/ar.lng +++ b/interface/web/sites/lib/lang/ar.lng @@ -31,5 +31,5 @@ $wb['Available packages'] = 'Available packages'; $wb['Installed packages'] = 'Installed packages'; $wb['Update Packagelist'] = 'Update Packagelist'; $wb['Subdomain (Vhost)'] = 'Subdomain (Vhost)'; -$wb['error_proxy_requires_url'] = 'Redirect Type \"proxy\" requires a URL as the redirect path.'; +$wb['error_proxy_requires_url'] = 'Redirect Type \\"proxy\\" requires a URL as the redirect path.'; ?> diff --git a/interface/web/sites/lib/lang/ar_aps.lng b/interface/web/sites/lib/lang/ar_aps.lng index 3ff130f57e..881c146a4d 100644 --- a/interface/web/sites/lib/lang/ar_aps.lng +++ b/interface/web/sites/lib/lang/ar_aps.lng @@ -38,14 +38,14 @@ $wb['error_inv_main_location'] = 'The given install location folder is invalid.' $wb['error_license_agreement'] = 'In order to continue you have to accept the license agreement.'; $wb['error_no_database_pw'] = 'You have provided no valid database password.'; $wb['error_short_database_pw'] = 'Please choose a longer database password.'; -$wb['error_no_value_for'] = 'The field \"%s\" must not be empty.'; -$wb['error_short_value_for'] = 'The field \"%s\" requires a longer input value.'; -$wb['error_long_value_for'] = 'The field \"%s\" requires a shorter input value.'; -$wb['error_inv_value_for'] = 'You have entered an invalid value for the field \"%s\".'; -$wb['error_inv_email_for'] = 'You have entered an invalid mail address for the field \"%s\".'; -$wb['error_inv_domain_for'] = 'You have entered an invalid domain for the field \"%s\".'; -$wb['error_inv_integer_for'] = 'You have entered an invalid number for the field \"%s\".'; -$wb['error_inv_float_for'] = 'You have entered an invalid floating point number for the field \"%s\".'; +$wb['error_no_value_for'] = 'The field \\"%s\\" must not be empty.'; +$wb['error_short_value_for'] = 'The field \\"%s\\" requires a longer input value.'; +$wb['error_long_value_for'] = 'The field \\"%s\\" requires a shorter input value.'; +$wb['error_inv_value_for'] = 'You have entered an invalid value for the field \\"%s\\".'; +$wb['error_inv_email_for'] = 'You have entered an invalid mail address for the field \\"%s\\".'; +$wb['error_inv_domain_for'] = 'You have entered an invalid domain for the field \\"%s\\".'; +$wb['error_inv_integer_for'] = 'You have entered an invalid number for the field \\"%s\\".'; +$wb['error_inv_float_for'] = 'You have entered an invalid floating point number for the field \\"%s\\".'; $wb['error_used_location'] = 'The installation path already contains a package installation.'; $wb['installation_task_txt'] = 'Install planned'; $wb['installation_error_txt'] = 'Install error'; diff --git a/interface/web/sites/lib/lang/ar_web_childdomain.lng b/interface/web/sites/lib/lang/ar_web_childdomain.lng index 604a81b68f..636505f248 100644 --- a/interface/web/sites/lib/lang/ar_web_childdomain.lng +++ b/interface/web/sites/lib/lang/ar_web_childdomain.lng @@ -43,7 +43,7 @@ $wb['no_flag_txt'] = 'No flag'; $wb['domain_error_wildcard'] = 'Wildcard subdomains are not allowed.'; $wb['proxy_directives_txt'] = 'Proxy Directives'; $wb['available_proxy_directive_snippets_txt'] = 'Available Proxy Directive Snippets:'; -$wb['error_proxy_requires_url'] = 'Redirect Type \"proxy\" requires a URL as the redirect path.'; +$wb['error_proxy_requires_url'] = 'Redirect Type \\"proxy\\" requires a URL as the redirect path.'; $wb['backup_interval_txt'] = 'Backup interval'; $wb['backup_copies_txt'] = 'Number of backup copies'; $wb['ssl_key_txt'] = 'SSL Key'; diff --git a/interface/web/sites/lib/lang/ar_web_subdomain.lng b/interface/web/sites/lib/lang/ar_web_subdomain.lng index 1295f36697..c5fa1711bb 100644 --- a/interface/web/sites/lib/lang/ar_web_subdomain.lng +++ b/interface/web/sites/lib/lang/ar_web_subdomain.lng @@ -42,7 +42,7 @@ $wb['no_flag_txt'] = 'No flag'; $wb['domain_error_wildcard'] = 'Wildcard subdomains are not allowed.'; $wb['proxy_directives_txt'] = 'Proxy Directives'; $wb['available_proxy_directive_snippets_txt'] = 'Available Proxy Directive Snippets:'; -$wb['error_proxy_requires_url'] = 'Redirect Type \"proxy\" requires a URL as the redirect path.'; +$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.'; diff --git a/interface/web/sites/lib/lang/bg.lng b/interface/web/sites/lib/lang/bg.lng index 842b70ae02..0d28df2994 100644 --- a/interface/web/sites/lib/lang/bg.lng +++ b/interface/web/sites/lib/lang/bg.lng @@ -31,5 +31,5 @@ $wb['Available packages'] = 'Available packages'; $wb['Installed packages'] = 'Installed packages'; $wb['Update Packagelist'] = 'Update Packagelist'; $wb['Subdomain (Vhost)'] = 'Subdomain (Vhost)'; -$wb['error_proxy_requires_url'] = 'Redirect Type \"proxy\" requires a URL as the redirect path.'; +$wb['error_proxy_requires_url'] = 'Redirect Type \\"proxy\\" requires a URL as the redirect path.'; ?> diff --git a/interface/web/sites/lib/lang/bg_aps.lng b/interface/web/sites/lib/lang/bg_aps.lng index 612adcd429..6a5f981943 100644 --- a/interface/web/sites/lib/lang/bg_aps.lng +++ b/interface/web/sites/lib/lang/bg_aps.lng @@ -38,14 +38,14 @@ $wb['error_inv_main_location'] = 'The given install location folder is invalid.' $wb['error_license_agreement'] = 'In order to continue you have to accept the license agreement.'; $wb['error_no_database_pw'] = 'You have provided no valid database password.'; $wb['error_short_database_pw'] = 'Please choose a longer database password.'; -$wb['error_no_value_for'] = 'The field \"%s\" must not be empty.'; -$wb['error_short_value_for'] = 'The field \"%s\" requires a longer input value.'; -$wb['error_long_value_for'] = 'The field \"%s\" requires a shorter input value.'; -$wb['error_inv_value_for'] = 'You have entered an invalid value for the field \"%s\".'; -$wb['error_inv_email_for'] = 'You have entered an invalid mail address for the field \"%s\".'; -$wb['error_inv_domain_for'] = 'You have entered an invalid domain for the field \"%s\".'; -$wb['error_inv_integer_for'] = 'You have entered an invalid number for the field \"%s\".'; -$wb['error_inv_float_for'] = 'You have entered an invalid floating point number for the field \"%s\".'; +$wb['error_no_value_for'] = 'The field \\"%s\\" must not be empty.'; +$wb['error_short_value_for'] = 'The field \\"%s\\" requires a longer input value.'; +$wb['error_long_value_for'] = 'The field \\"%s\\" requires a shorter input value.'; +$wb['error_inv_value_for'] = 'You have entered an invalid value for the field \\"%s\\".'; +$wb['error_inv_email_for'] = 'You have entered an invalid mail address for the field \\"%s\\".'; +$wb['error_inv_domain_for'] = 'You have entered an invalid domain for the field \\"%s\\".'; +$wb['error_inv_integer_for'] = 'You have entered an invalid number for the field \\"%s\\".'; +$wb['error_inv_float_for'] = 'You have entered an invalid floating point number for the field \\"%s\\".'; $wb['error_used_location'] = 'The installation path already contains a package installation.'; $wb['installation_task_txt'] = 'Install planned'; $wb['installation_error_txt'] = 'Install error'; diff --git a/interface/web/sites/lib/lang/bg_web_childdomain.lng b/interface/web/sites/lib/lang/bg_web_childdomain.lng index 7106438c34..c7549b76f7 100644 --- a/interface/web/sites/lib/lang/bg_web_childdomain.lng +++ b/interface/web/sites/lib/lang/bg_web_childdomain.lng @@ -42,7 +42,7 @@ $wb['no_flag_txt'] = 'No flag'; $wb['domain_error_wildcard'] = 'Wildcard subdomains are not allowed.'; $wb['proxy_directives_txt'] = 'Proxy Directives'; $wb['available_proxy_directive_snippets_txt'] = 'Available Proxy Directive Snippets:'; -$wb['error_proxy_requires_url'] = 'Redirect Type \"proxy\" requires a URL as the redirect path.'; +$wb['error_proxy_requires_url'] = 'Redirect Type \\"proxy\\" requires a URL as the redirect path.'; $wb['backup_interval_txt'] = 'Backup interval'; $wb['backup_copies_txt'] = 'Number of backup copies'; $wb['ssl_key_txt'] = 'SSL Key'; diff --git a/interface/web/sites/lib/lang/bg_web_subdomain.lng b/interface/web/sites/lib/lang/bg_web_subdomain.lng index f4218278d9..0df1e50594 100644 --- a/interface/web/sites/lib/lang/bg_web_subdomain.lng +++ b/interface/web/sites/lib/lang/bg_web_subdomain.lng @@ -42,7 +42,7 @@ $wb['no_flag_txt'] = 'No flag'; $wb['domain_error_wildcard'] = 'Wildcard subdomains are not allowed.'; $wb['proxy_directives_txt'] = 'Proxy Directives'; $wb['available_proxy_directive_snippets_txt'] = 'Available Proxy Directive Snippets:'; -$wb['error_proxy_requires_url'] = 'Redirect Type \"proxy\" requires a URL as the redirect path.'; +$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.'; diff --git a/interface/web/sites/lib/lang/br.lng b/interface/web/sites/lib/lang/br.lng index 3fdd93585e..685ce6ed28 100644 --- a/interface/web/sites/lib/lang/br.lng +++ b/interface/web/sites/lib/lang/br.lng @@ -30,6 +30,6 @@ $wb['Available packages'] = 'Pacotes disponÃveis'; $wb['Installed packages'] = 'Pacotes instalados'; $wb['Update Packagelist'] = 'Atualizar lista de pacotes'; $wb['Subdomain (Vhost)'] = 'SubdomÃnio (vhost)'; -$wb['error_proxy_requires_url'] = 'Tipo de redirecionamento \"proxy\" exige uma url como caminho do redirecionamento.'; +$wb['error_proxy_requires_url'] = 'Tipo de redirecionamento \\"proxy\\" exige uma url como caminho do redirecionamento.'; $wb['Domain'] = 'DomÃnio'; ?> diff --git a/interface/web/sites/lib/lang/br_cron.lng b/interface/web/sites/lib/lang/br_cron.lng index eab5b9f688..2bbadf6d1b 100644 --- a/interface/web/sites/lib/lang/br_cron.lng +++ b/interface/web/sites/lib/lang/br_cron.lng @@ -19,8 +19,8 @@ $wb['run_wday_error_format'] = 'Formato dos dias da semana é inválido.'; $wb['command_error_format'] = 'Formato de comando é inválido. Somente endereços url http/https são permitidos.'; $wb['unknown_fieldtype_error'] = 'Um tipo desconhecido de campo foi usado.'; $wb['server_id_error_empty'] = 'O ID do servidor está em branco.'; -$wb['limit_cron_url_txt'] = 'Somente url do cron. Por favor, insira uma url iniciando com \"http://\" e um comando do cron.'; +$wb['limit_cron_url_txt'] = 'Somente url do cron. Por favor, insira uma url iniciando com \\"http://\\" e um comando do cron.'; $wb['command_error_empty'] = 'Comando está em branco.'; -$wb['command_hint_txt'] = 'Você poderá usar, por exemplo: \"/var/www/clients/clientX/webY/meu_script.sh\" ou \"http://www.dominio.com.br/path/script.php\" e também a palavra reservada \"[web_root]\" substituÃdo por \"/var/www/clients/clientX/webY/web\".'; +$wb['command_hint_txt'] = 'Você poderá usar, por exemplo: \\"/var/www/clients/clientX/webY/meu_script.sh\\" ou \\"http://www.dominio.com.br/path/script.php\\" e também a palavra reservada \\"[web_root]\\" substituÃdo por \\"/var/www/clients/clientX/webY/web\\".'; $wb['log_output_txt'] = 'SaÃda do Log'; ?> diff --git a/interface/web/sites/lib/lang/br_database.lng b/interface/web/sites/lib/lang/br_database.lng index 57b97693eb..ac916feef1 100644 --- a/interface/web/sites/lib/lang/br_database.lng +++ b/interface/web/sites/lib/lang/br_database.lng @@ -23,7 +23,7 @@ $wb['database_remote_error_ips'] = 'Pelo menos um dos endereços IP informados n $wb['database_name_error_len'] = 'Nome do banco de dados - {db} - é muito longo. 64 caracteres, incluindo o prefixo, é o limite permitido.'; $wb['database_user_error_len'] = 'Nome do usuário do banco de dados \'{user}\' é muito longo. 16 caracteres, incluindo o prefixo, é o limite permitido.'; $wb['parent_domain_id_txt'] = 'Site'; -$wb['database_site_error_empty'] = 'Selecione o \"site\" ao qual o banco de dados pertence.'; +$wb['database_site_error_empty'] = 'Selecione o \\"site\\" ao qual o banco de dados pertence.'; $wb['select_site_txt'] = '- Selecionar site -'; $wb['btn_save_txt'] = 'Salvar'; $wb['btn_cancel_txt'] = 'Cancelar'; diff --git a/interface/web/sites/lib/lang/br_database_user.lng b/interface/web/sites/lib/lang/br_database_user.lng index 518f0296e1..59b9fce627 100644 --- a/interface/web/sites/lib/lang/br_database_user.lng +++ b/interface/web/sites/lib/lang/br_database_user.lng @@ -6,7 +6,7 @@ $wb['client_txt'] = 'Cliente'; $wb['active_txt'] = 'Ativo'; $wb['database_user_error_empty'] = 'Usuário do banco de dados está em branco.'; $wb['database_user_error_unique'] = 'Já existe um usuário do banco de dados com este nome no servidor. Para configurar um nome exclusivo, use como prefixo o domÃnio para o nome do usuário.'; -$wb['database_user_error_regex'] = 'Usuário do banco de dados inválido! O nome do usuário pode conter os seguintes caracteres: \'\"a-z\', \'A-Z\', \'0-9\' e o \'underscore\'. Tamanho: 2 - 64 caracteres.'; +$wb['database_user_error_regex'] = 'Usuário do banco de dados inválido! O nome do usuário pode conter os seguintes caracteres: \'\\"a-z\', \'A-Z\', \'0-9\' e o \'underscore\'. Tamanho: 2 - 64 caracteres.'; $wb['database_user_error_len'] = 'O usuário do banco de dados - {user} - é muito longo. O limite do nome do usuário, incluindo o prefixo, são 16 caracteres.'; $wb['btn_save_txt'] = 'Salvar'; $wb['btn_cancel_txt'] = 'Cancelar'; diff --git a/interface/web/sites/lib/lang/br_ftp_user.lng b/interface/web/sites/lib/lang/br_ftp_user.lng index bb8d99ceb0..3df741ed9e 100644 --- a/interface/web/sites/lib/lang/br_ftp_user.lng +++ b/interface/web/sites/lib/lang/br_ftp_user.lng @@ -25,8 +25,8 @@ $wb['directory_error_empty'] = 'Diretório está em branco.'; $wb['directory_error_notinweb'] = 'O diretório não está dentro do diretório web principal.'; $wb['parent_domain_id_error_empty'] = 'Nenhum site selecionado.'; $wb['quota_size_error_regex'] = 'Cota: insira -1 para ilimitado ou um número > 0'; -$wb['dir_dot_error'] = 'Não é permitido \"..\" no caminho.'; -$wb['dir_slashdot_error'] = 'Não é permitido \"./\" no caminho.'; +$wb['dir_dot_error'] = 'Não é permitido \\"..\\" no caminho.'; +$wb['dir_slashdot_error'] = 'Não é permitido \\"./\\" no caminho.'; $wb['generate_password_txt'] = 'Gerar senha'; $wb['repeat_password_txt'] = 'Repetir senha'; $wb['password_mismatch_txt'] = 'A senhas não coincidem.'; diff --git a/interface/web/sites/lib/lang/br_shell_user.lng b/interface/web/sites/lib/lang/br_shell_user.lng index c92bf5baa4..3cbc911ab3 100644 --- a/interface/web/sites/lib/lang/br_shell_user.lng +++ b/interface/web/sites/lib/lang/br_shell_user.lng @@ -20,8 +20,8 @@ $wb['parent_domain_id_error_empty'] = 'Nenhum site selecionado.'; $wb['puser_txt'] = 'Usuário web'; $wb['pgroup_txt'] = 'Grupo web'; $wb['ssh_rsa_txt'] = 'Chave pública SSH-RSA (para acessos baseados em chave)'; -$wb['dir_dot_error'] = 'Não é permitido \"..\" no caminho.'; -$wb['dir_slashdot_error'] = 'Não é permitido \"./\" no caminho.'; +$wb['dir_dot_error'] = 'Não é permitido \\"..\\" no caminho.'; +$wb['dir_slashdot_error'] = 'Não é permitido \\"./\\" no caminho.'; $wb['generate_password_txt'] = 'Gerar senha'; $wb['repeat_password_txt'] = 'Repetir senha'; $wb['password_mismatch_txt'] = 'A senhas não coincidem.'; diff --git a/interface/web/sites/lib/lang/br_web_aliasdomain.lng b/interface/web/sites/lib/lang/br_web_aliasdomain.lng index 9d4f1951d8..4acadb2c54 100644 --- a/interface/web/sites/lib/lang/br_web_aliasdomain.lng +++ b/interface/web/sites/lib/lang/br_web_aliasdomain.lng @@ -14,7 +14,7 @@ $wb['ssl_bundle_txt'] = 'Pacote'; $wb['ssl_action_txt'] = 'Ação'; $wb['ssl_domain_txt'] = 'DomÃnio'; $wb['server_id_txt'] = 'Servidor'; -$wb['web_folder_error_regex'] = 'Pasta inválida inserida. Por favor, não use barra \"/\".'; +$wb['web_folder_error_regex'] = 'Pasta inválida inserida. Por favor, não use barra \\"/\\".'; $wb['type_txt'] = 'Tipo'; $wb['parent_domain_id_txt'] = 'Site pai'; $wb['redirect_type_txt'] = 'Tipo de redirecionamento'; @@ -62,7 +62,7 @@ $wb['ssl_organisation_error_regex'] = 'Campo \'Empresa\' é inválido. São cara $wb['ssl_organistaion_unit_error_regex'] = 'Campo \'Departamento\' é inválido. São caracteres válidos: \'a-z\', \'0-9\' e \'.,-_\'.'; $wb['ssl_country_error_regex'] = 'Campo \'PaÃs\' é inválido. São caracteres válidos: \'A-Z\'.'; $wb['limit_traffic_quota_free_txt'] = 'Cota máxima de tráfego disponÃvel'; -$wb['redirect_error_regex'] = 'Caminho de redirecionamento é inválido. Exemplos de caminhos válidos: \"/teste/\" ou \"http://www.dominio.com.br/teste/\".'; +$wb['redirect_error_regex'] = 'Caminho de redirecionamento é inválido. Exemplos de caminhos válidos: \\"/teste/\\" ou \\"http://www.dominio.com.br/teste/\\".'; $wb['php_open_basedir_txt'] = 'Diretório open_basedir do PHP'; $wb['traffic_quota_exceeded_txt'] = 'Cota de tráfego excedida'; $wb['ruby_txt'] = 'Ruby'; diff --git a/interface/web/sites/lib/lang/br_web_childdomain.lng b/interface/web/sites/lib/lang/br_web_childdomain.lng index 1c53d16584..ecff0c2ae8 100644 --- a/interface/web/sites/lib/lang/br_web_childdomain.lng +++ b/interface/web/sites/lib/lang/br_web_childdomain.lng @@ -36,18 +36,18 @@ $wb['domain_error_empty'] = 'DomÃnio está em branco.'; $wb['domain_error_unique'] = 'Já existe apelido de domÃnio ou subdomÃnio com este nome.'; $wb['domain_error_regex'] = 'Nome de domÃnio é inválido.'; $wb['host_txt'] = 'Nome do servidor'; -$wb['redirect_error_regex'] = 'Caminho de redirecionamento é inválido. Exemplo de caminho válido: \"/teste/\" ou \"http://www.dominio.com.br/teste/\".'; +$wb['redirect_error_regex'] = 'Caminho de redirecionamento é inválido. Exemplo de caminho válido: \\"/teste/\\" ou \\"http://www.dominio.com.br/teste/\\".'; $wb['no_redirect_txt'] = 'Sem redirecionamento'; $wb['no_flag_txt'] = 'Sem marcas'; $wb['domain_error_wildcard'] = 'Curingas para subdomÃnios não são permitidos.'; $wb['proxy_directives_txt'] = 'Diretivas do proxy'; $wb['available_proxy_directive_snippets_txt'] = 'Diretivas de trechos de código do proxy disponÃveis:'; -$wb['error_proxy_requires_url'] = 'O tipo de redirecionamento \"proxy\" exige uma url no caminho de redirecionamento.'; +$wb['error_proxy_requires_url'] = 'O tipo de redirecionamento \\"proxy\\" exige uma url no caminho de redirecionamento.'; $wb['backup_interval_txt'] = 'Intervalo de backup'; $wb['backup_copies_txt'] = 'Limite de cópias do backup'; $wb['ssl_key_txt'] = 'Chave'; $wb['ssl_domain_txt'] = 'DomÃnio do SSL'; -$wb['web_folder_error_regex'] = 'Pasta inválida informada. Por favor não use uma barra - \"/\".'; +$wb['web_folder_error_regex'] = 'Pasta inválida informada. Por favor não use uma barra - \\"/\\".'; $wb['ipv6_address_txt'] = 'Endereço IPv6'; $wb['errordocs_txt'] = 'Pasta personalizada Error-Documents'; $wb['subdomain_txt'] = 'SubdomÃnio automático'; diff --git a/interface/web/sites/lib/lang/br_web_domain.lng b/interface/web/sites/lib/lang/br_web_domain.lng index 4b2e77b654..662fdb407c 100644 --- a/interface/web/sites/lib/lang/br_web_domain.lng +++ b/interface/web/sites/lib/lang/br_web_domain.lng @@ -52,10 +52,10 @@ $wb['limit_web_quota_free_txt'] = 'Cota máxima de disco disponÃvel'; $wb['ssl_state_error_regex'] = 'Campo \'Estado\' é inválido. São caracteres válidos: \'a-z\', \'0-9\' e \'.,-_\'.'; $wb['ssl_locality_error_regex'] = 'Campo \'Cidade\' é inválido. São caracteres válidos: \'a-z\', \'0-9\' e \'.,-_\'.'; $wb['ssl_organisation_error_regex'] = 'Campo \'Empresa\' é inválido. São caracteres válidos: \'a-z\', \'0-9\' e \'.,-_\'.'; -$wb['ssl_organistaion_unit_error_regex'] = 'Campo \'Departamento\' é inválido. São caracteres válidos: \"a-z\", \'0-9\' e \'.,-_\'.'; +$wb['ssl_organistaion_unit_error_regex'] = 'Campo \'Departamento\' é inválido. São caracteres válidos: \\"a-z\\", \'0-9\' e \'.,-_\'.'; $wb['ssl_country_error_regex'] = 'Campo \'PaÃs\' é inválido. São caracteres válidos: \'A-Z\'.'; $wb['limit_traffic_quota_free_txt'] = 'Cota máxima de tráfego disponÃvel'; -$wb['redirect_error_regex'] = 'Caminho de redirecionamento é inválido. Exemplos de caminhos válidos: \"/teste/\" ou \"http://www.dominio.com.br/teste/\".'; +$wb['redirect_error_regex'] = 'Caminho de redirecionamento é inválido. Exemplos de caminhos válidos: \\"/teste/\\" ou \\"http://www.dominio.com.br/teste/\\".'; $wb['php_open_basedir_txt'] = 'Diretório open_basedir do php'; $wb['traffic_quota_exceeded_txt'] = 'Cota de tráfego excedida'; $wb['backup_interval_txt'] = 'Intervalo de backup'; @@ -104,7 +104,7 @@ $wb['generate_password_txt'] = 'Gerar senha'; $wb['repeat_password_txt'] = 'Repetir senha'; $wb['password_mismatch_txt'] = 'A senhas não coincidem.'; $wb['password_match_txt'] = 'A senhas coincidem.'; -$wb['web_folder_error_regex'] = 'Pasta informada é inválida! Por favor não insira barra \"/\".'; +$wb['web_folder_error_regex'] = 'Pasta informada é inválida! Por favor não insira barra \\"/\\".'; $wb['domain_error_autosub'] = 'Já existe um subdomÃnio com estas configurações.'; $wb['available_php_directive_snippets_txt'] = 'Diretivas de trechos de código do php:'; $wb['available_apache_directive_snippets_txt'] = 'Diretivas de trechos de código do apache:'; diff --git a/interface/web/sites/lib/lang/br_web_subdomain.lng b/interface/web/sites/lib/lang/br_web_subdomain.lng index 8abb050438..0ccc574805 100644 --- a/interface/web/sites/lib/lang/br_web_subdomain.lng +++ b/interface/web/sites/lib/lang/br_web_subdomain.lng @@ -36,7 +36,7 @@ $wb['domain_error_empty'] = 'DomÃnio está em branco.'; $wb['domain_error_unique'] = 'Já existe apelido de domÃnio ou subdomÃnio com este nome.'; $wb['domain_error_regex'] = 'Nome do domÃnio é inválido.'; $wb['host_txt'] = 'Host'; -$wb['redirect_error_regex'] = 'Caminho de redirecionamento é inválido. Exemplo de caminho válido: \"/teste/\" ou \"http://www.dominio.com.br/teste/\".'; +$wb['redirect_error_regex'] = 'Caminho de redirecionamento é inválido. Exemplo de caminho válido: \\"/teste/\\" ou \\"http://www.dominio.com.br/teste/\\".'; $wb['no_redirect_txt'] = 'Sem redirecionamento'; $wb['no_flag_txt'] = 'Sem marcas'; $wb['domain_error_wildcard'] = 'Curingas de subdomÃnios não são permitidos.'; diff --git a/interface/web/sites/lib/lang/br_web_vhost_domain.lng b/interface/web/sites/lib/lang/br_web_vhost_domain.lng index d30db9f189..4c72b1fd88 100644 --- a/interface/web/sites/lib/lang/br_web_vhost_domain.lng +++ b/interface/web/sites/lib/lang/br_web_vhost_domain.lng @@ -56,7 +56,7 @@ $wb['ssl_organisation_error_regex'] = 'Campo \'Empresa\' é inválido. São cara $wb['ssl_organistaion_unit_error_regex'] = 'Campo \'Departamento\' é inválido. São caracteres válidos: \'a-z\', \'0-9\' e \'.,-_\'.'; $wb['ssl_country_error_regex'] = 'Campo \'PaÃs\' é inválido. São caracteres válidos: \'A-Z\'.'; $wb['limit_traffic_quota_free_txt'] = 'Limite da cota de tráfego'; -$wb['redirect_error_regex'] = 'Caminho de redirecionamento é inválido. Exemplos de caminhos válidos: \"/teste\" ou \"http://www.dominio.com.br/teste/\".'; +$wb['redirect_error_regex'] = 'Caminho de redirecionamento é inválido. Exemplos de caminhos válidos: \\"/teste\\" ou \\"http://www.dominio.com.br/teste/\\".'; $wb['php_open_basedir_txt'] = 'Diretório open_basedir do php'; $wb['traffic_quota_exceeded_txt'] = 'Cota de tráfego excedida'; $wb['backup_interval_txt'] = 'Intervalo de backup'; @@ -106,7 +106,7 @@ $wb['generate_password_txt'] = 'Gerar senha'; $wb['repeat_password_txt'] = 'Repetir senha'; $wb['password_mismatch_txt'] = 'A senhas não coincidem.'; $wb['password_match_txt'] = 'A senhas coincidem.'; -$wb['web_folder_error_regex'] = 'Pasta inválida informada. Por favor não insira barra - \"\".'; +$wb['web_folder_error_regex'] = 'Pasta inválida informada. Por favor não insira barra - \\"\\".'; $wb['domain_error_autosub'] = 'Já existe um subdomÃnio com essas configurações.'; $wb['available_php_directive_snippets_txt'] = 'Diretivas de trechos de código do php disponÃveis:'; $wb['available_apache_directive_snippets_txt'] = 'Diretivas de trechos de código do apache disponÃveis:'; diff --git a/interface/web/sites/lib/lang/br_web_vhost_subdomain.lng b/interface/web/sites/lib/lang/br_web_vhost_subdomain.lng index 8a0c3e6a1f..fa6ddad484 100644 --- a/interface/web/sites/lib/lang/br_web_vhost_subdomain.lng +++ b/interface/web/sites/lib/lang/br_web_vhost_subdomain.lng @@ -19,7 +19,7 @@ $wb['ssl_domain_txt'] = 'DomÃnio'; $wb['server_id_txt'] = 'Servidor'; $wb['domain_txt'] = 'DomÃnio'; $wb['host_txt'] = 'Hostname'; -$wb['web_folder_error_regex'] = 'Pasta informada é inválida. Por favor, não insira barra - \"/\".'; +$wb['web_folder_error_regex'] = 'Pasta informada é inválida. Por favor, não insira barra - \\"/\\".'; $wb['type_txt'] = 'Tipo'; $wb['redirect_type_txt'] = 'Tipo de redirecionamento'; $wb['redirect_path_txt'] = 'Caminho para redirecionamento'; @@ -60,13 +60,13 @@ $wb['client_group_id_txt'] = 'Cliente'; $wb['stats_password_txt'] = 'Senha para estatÃsticas web'; $wb['allow_override_txt'] = 'Diretiva Apache AllowOverride'; $wb['limit_web_quota_free_txt'] = 'Cota de disco'; -$wb['ssl_state_error_regex'] = 'Campo \'Estado\' é inválido. Caracteres válidos são: \'0-9\' e \".,-_\".'; +$wb['ssl_state_error_regex'] = 'Campo \'Estado\' é inválido. Caracteres válidos são: \'0-9\' e \\".,-_\\".'; $wb['ssl_locality_error_regex'] = 'Campo \'Cidade\' é inválido. Caracteres válidos são: \'a-z\', \'0-9\' e \'.,-_\'.'; $wb['ssl_organisation_error_regex'] = 'Campo \'Empresa\' é inválido. Caracteres válidos são: \'a-z\', \'0-9\' e \'.,-_\'.'; $wb['ssl_organistaion_unit_error_regex'] = 'Campo \'Departamento\' é inválido. Caracteres válidos são: \'a-z\', \'0-9\' e \'.,-_\'.'; $wb['ssl_country_error_regex'] = 'Campo \'PaÃs\' é inválido. Caracteres válidos são: \'A-Z\'.'; $wb['limit_traffic_quota_free_txt'] = 'Cota de tráfego'; -$wb['redirect_error_regex'] = 'Caminho de redirecionamento é inválido. Exemplo de caminho válido: \"/teste/\" ou \"http://www.dominio.com.br/teste/\".'; +$wb['redirect_error_regex'] = 'Caminho de redirecionamento é inválido. Exemplo de caminho válido: \\"/teste/\\" ou \\"http://www.dominio.com.br/teste/\\".'; $wb['php_open_basedir_txt'] = 'Diretório open_basedir do PHP'; $wb['traffic_quota_exceeded_txt'] = 'Cota de tráfego excedida'; $wb['ruby_txt'] = 'Ruby'; @@ -121,9 +121,9 @@ $wb['allowed_rewrite_rule_directives_txt'] = 'Diretivas Permitidas:'; $wb['configuration_error_txt'] = 'ERRO DE CONFIGURAÇÃO'; $wb['variables_txt'] = 'Variáveis'; $wb['backup_excludes_txt'] = 'Diretórios ExcluÃdos'; -$wb['backup_excludes_note_txt'] = '(Separar múltiplos diretórios por vÃrgulas. Exemplo: \"web/cache/*,web/backup\".)'; +$wb['backup_excludes_note_txt'] = '(Separar múltiplos diretórios por vÃrgulas. Exemplo: \\"web/cache/*,web/backup\\".)'; $wb['backup_excludes_error_regex'] = 'Os diretórios excluÃdos contém caracteres inválidos.'; -$wb['subdomain_error_empty'] = 'O campo \"SubdomÃnio\" está em branco ou contém caracteres inválidos.'; +$wb['subdomain_error_empty'] = 'O campo \\"SubdomÃnio\\" está em branco ou contém caracteres inválidos.'; $wb['http_port_txt'] = 'Porta HTTP'; $wb['https_port_txt'] = 'Porta HTTPS'; $wb['http_port_error_regex'] = 'Porta HTTP inválida.'; diff --git a/interface/web/sites/lib/lang/br_webdav_user.lng b/interface/web/sites/lib/lang/br_webdav_user.lng index b135d5e0fa..4347f8ae36 100644 --- a/interface/web/sites/lib/lang/br_webdav_user.lng +++ b/interface/web/sites/lib/lang/br_webdav_user.lng @@ -12,8 +12,8 @@ $wb['username_error_unique'] = 'O nome do usuário deve ser exclusivo.'; $wb['username_error_regex'] = 'O nome do usuário contém caracteres não permitidos.'; $wb['directory_error_empty'] = 'Diretório está em branco.'; $wb['parent_domain_id_error_empty'] = 'Nenhum site selecionado.'; -$wb['dir_dot_error'] = 'Não é permitido \"..\" no caminho.'; -$wb['dir_slashdot_error'] = 'Não é permitido \"./\" no caminho.'; +$wb['dir_dot_error'] = 'Não é permitido \\"..\\" no caminho.'; +$wb['dir_slashdot_error'] = 'Não é permitido \\"./\\" no caminho.'; $wb['generate_password_txt'] = 'Gerar senha'; $wb['repeat_password_txt'] = 'Repetir senha'; $wb['password_mismatch_txt'] = 'A senhas não coincidem.'; diff --git a/interface/web/sites/lib/lang/ca.lng b/interface/web/sites/lib/lang/ca.lng index c914ef002f..9acee9d061 100644 --- a/interface/web/sites/lib/lang/ca.lng +++ b/interface/web/sites/lib/lang/ca.lng @@ -31,5 +31,5 @@ $wb['Available packages'] = 'Packages disponibles'; $wb['Installed packages'] = 'Packages installés'; $wb['Update Packagelist'] = 'Mise à jour de la liste des packages'; $wb['Subdomain (Vhost)'] = 'Sous-domaine (Vhost)'; -$wb['error_proxy_requires_url'] = 'Type de redirection \"proxy\" nécessite une URL comme chemin de redirection.'; +$wb['error_proxy_requires_url'] = 'Type de redirection \\"proxy\\" nécessite une URL comme chemin de redirection.'; ?> diff --git a/interface/web/sites/lib/lang/ca_aps.lng b/interface/web/sites/lib/lang/ca_aps.lng index 7233c1f0dd..062d6ea589 100644 --- a/interface/web/sites/lib/lang/ca_aps.lng +++ b/interface/web/sites/lib/lang/ca_aps.lng @@ -38,14 +38,14 @@ $wb['error_inv_main_location'] = 'Le dossier d\'installation choisi est invalide $wb['error_license_agreement'] = 'Avant de continuer, vous devez accepter les conditions d\'utilisation (licence).'; $wb['error_no_database_pw'] = 'Vous n\'avez pas renseigné de mot de passe BDD valide.'; $wb['error_short_database_pw'] = 'Veuillez saisir un mot de passe BDD plus long.'; -$wb['error_no_value_for'] = 'Le champ \"%s\" ne peut pas être vide.'; -$wb['error_short_value_for'] = 'Le champ \"%s\" nécessite une valeur plus longue.'; -$wb['error_long_value_for'] = 'Le champ \"%s\" nécessite une valeur plus courte.'; -$wb['error_inv_value_for'] = 'Vous avez saisi une valeur invalide pour le champ \"%s\".'; -$wb['error_inv_email_for'] = 'L\'adresse courriel saisie pour le champ \"%s\" est invalide.'; -$wb['error_inv_domain_for'] = 'Le domaine saisi pour le champ \"%s\" est invalide.'; -$wb['error_inv_integer_for'] = 'Le nombre saisi pour le champ \"%s\" est invalide.'; -$wb['error_inv_float_for'] = 'La décimale saisie pour le champ \"%s\" est invalide.'; +$wb['error_no_value_for'] = 'Le champ \\"%s\\" ne peut pas être vide.'; +$wb['error_short_value_for'] = 'Le champ \\"%s\\" nécessite une valeur plus longue.'; +$wb['error_long_value_for'] = 'Le champ \\"%s\\" nécessite une valeur plus courte.'; +$wb['error_inv_value_for'] = 'Vous avez saisi une valeur invalide pour le champ \\"%s\\".'; +$wb['error_inv_email_for'] = 'L\'adresse courriel saisie pour le champ \\"%s\\" est invalide.'; +$wb['error_inv_domain_for'] = 'Le domaine saisi pour le champ \\"%s\\" est invalide.'; +$wb['error_inv_integer_for'] = 'Le nombre saisi pour le champ \\"%s\\" est invalide.'; +$wb['error_inv_float_for'] = 'La décimale saisie pour le champ \\"%s\\" est invalide.'; $wb['error_used_location'] = 'Le chemin de destination contient déjà un package d\'installation.'; $wb['installation_task_txt'] = 'Installation prévue'; $wb['installation_error_txt'] = 'Erreur d\'installation'; diff --git a/interface/web/sites/lib/lang/ca_web_childdomain.lng b/interface/web/sites/lib/lang/ca_web_childdomain.lng index 1d838990e3..762acfe244 100644 --- a/interface/web/sites/lib/lang/ca_web_childdomain.lng +++ b/interface/web/sites/lib/lang/ca_web_childdomain.lng @@ -43,7 +43,7 @@ $wb['no_redirect_txt'] = 'No redirect'; $wb['no_flag_txt'] = 'No flag'; $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['error_proxy_requires_url'] = 'Redirect Type \\"proxy\\" requires a URL as the redirect path.'; $wb['backup_interval_txt'] = 'Backup interval'; $wb['backup_copies_txt'] = 'Number of backup copies'; $wb['ssl_key_txt'] = 'SSL Key'; diff --git a/interface/web/sites/lib/lang/ca_web_subdomain.lng b/interface/web/sites/lib/lang/ca_web_subdomain.lng index ec5980a91b..13fd0d66ef 100644 --- a/interface/web/sites/lib/lang/ca_web_subdomain.lng +++ b/interface/web/sites/lib/lang/ca_web_subdomain.lng @@ -42,7 +42,7 @@ $wb['no_flag_txt'] = 'Aucun flag'; $wb['domain_error_wildcard'] = 'Les sous-domaines joker ne sont pas autorisés.'; $wb['proxy_directives_txt'] = 'Directives pour les Proxy'; $wb['available_proxy_directive_snippets_txt'] = 'Directives pour les Proxy Snippets disponibles :'; -$wb['error_proxy_requires_url'] = 'Les redirections de type \"proxy\" nécessitent une URL comme chemin de redirection.'; +$wb['error_proxy_requires_url'] = 'Les redirections de type \\"proxy\\" nécessitent une URL comme chemin de redirection.'; $wb['http_port_txt'] = 'HTTP Port'; $wb['https_port_txt'] = 'HTTPS Port'; $wb['http_port_error_regex'] = 'HTTP Port invalid.'; diff --git a/interface/web/sites/lib/lang/cz.lng b/interface/web/sites/lib/lang/cz.lng index 2e4276c817..4c16438e34 100644 --- a/interface/web/sites/lib/lang/cz.lng +++ b/interface/web/sites/lib/lang/cz.lng @@ -31,5 +31,5 @@ $wb['Available packages'] = 'Dostupné balÃÄky'; $wb['Installed packages'] = 'Nainstalované balÃÄky'; $wb['Update Packagelist'] = 'Aktualizace seznamu balÃÄků'; $wb['Subdomain (Vhost)'] = 'Subdoména (Vhost)'; -$wb['error_proxy_requires_url'] = 'Redirect Type \"proxy\" requires a URL as the redirect path.'; +$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 bb8015951c..adf6ccf58e 100644 --- a/interface/web/sites/lib/lang/cz_aps.lng +++ b/interface/web/sites/lib/lang/cz_aps.lng @@ -38,14 +38,14 @@ $wb['error_inv_main_location'] = 'The given install location folder is invalid.' $wb['error_license_agreement'] = 'In order to continue you have to accept the license agreement.'; $wb['error_no_database_pw'] = 'You have provided no valid database password.'; $wb['error_short_database_pw'] = 'Please choose a longer database password.'; -$wb['error_no_value_for'] = 'The field \"%s\" must not be empty.'; -$wb['error_short_value_for'] = 'The field \"%s\" requires a longer input value.'; -$wb['error_long_value_for'] = 'The field \"%s\" requires a shorter input value.'; -$wb['error_inv_value_for'] = 'You have entered an invalid value for the field \"%s\".'; -$wb['error_inv_email_for'] = 'You have entered an invalid mail address for the field \"%s\".'; -$wb['error_inv_domain_for'] = 'You have entered an invalid domain for the field \"%s\".'; -$wb['error_inv_integer_for'] = 'You have entered an invalid number for the field \"%s\".'; -$wb['error_inv_float_for'] = 'You have entered an invalid floating point number for the field \"%s\".'; +$wb['error_no_value_for'] = 'The field \\"%s\\" must not be empty.'; +$wb['error_short_value_for'] = 'The field \\"%s\\" requires a longer input value.'; +$wb['error_long_value_for'] = 'The field \\"%s\\" requires a shorter input value.'; +$wb['error_inv_value_for'] = 'You have entered an invalid value for the field \\"%s\\".'; +$wb['error_inv_email_for'] = 'You have entered an invalid mail address for the field \\"%s\\".'; +$wb['error_inv_domain_for'] = 'You have entered an invalid domain for the field \\"%s\\".'; +$wb['error_inv_integer_for'] = 'You have entered an invalid number for the field \\"%s\\".'; +$wb['error_inv_float_for'] = 'You have entered an invalid floating point number for the field \\"%s\\".'; $wb['error_used_location'] = 'The installation path already contains a package installation.'; $wb['installation_task_txt'] = 'Instalace plánované'; $wb['installation_error_txt'] = 'Chyba instalace'; diff --git a/interface/web/sites/lib/lang/cz_web_childdomain.lng b/interface/web/sites/lib/lang/cz_web_childdomain.lng index 5a5091c89a..b159976b29 100644 --- a/interface/web/sites/lib/lang/cz_web_childdomain.lng +++ b/interface/web/sites/lib/lang/cz_web_childdomain.lng @@ -49,7 +49,7 @@ $wb['no_flag_txt'] = 'Žádný pÅ™Ãznak'; $wb['domain_error_wildcard'] = 'Wildcard subdomains are not allowed.'; $wb['proxy_directives_txt'] = 'Proxy Directives'; $wb['available_proxy_directive_snippets_txt'] = 'Available Proxy Directive Snippets:'; -$wb['error_proxy_requires_url'] = 'Redirect Type \"proxy\" requires a URL as the redirect path.'; +$wb['error_proxy_requires_url'] = 'Redirect Type \\"proxy\\" requires a URL as the redirect path.'; $wb['ipv6_address_txt'] = 'IPv6 adresa'; $wb['domain_error_autosub'] = 'There is already a subdomain with these settings.'; $wb['hd_quota_error_empty'] = 'Harddisk quota is 0 or empty.'; diff --git a/interface/web/sites/lib/lang/cz_web_subdomain.lng b/interface/web/sites/lib/lang/cz_web_subdomain.lng index 986f76acc8..cd301db143 100644 --- a/interface/web/sites/lib/lang/cz_web_subdomain.lng +++ b/interface/web/sites/lib/lang/cz_web_subdomain.lng @@ -42,7 +42,7 @@ $wb['no_flag_txt'] = 'Žádný pÅ™Ãznak'; $wb['domain_error_wildcard'] = 'Wildcard subdomains are not allowed.'; $wb['proxy_directives_txt'] = 'Proxy Directives'; $wb['available_proxy_directive_snippets_txt'] = 'Available Proxy Directive Snippets:'; -$wb['error_proxy_requires_url'] = 'Redirect Type \"proxy\" requires a URL as the redirect path.'; +$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.'; diff --git a/interface/web/sites/lib/lang/de_web_childdomain.lng b/interface/web/sites/lib/lang/de_web_childdomain.lng index 561e8de968..05b1f1d51d 100644 --- a/interface/web/sites/lib/lang/de_web_childdomain.lng +++ b/interface/web/sites/lib/lang/de_web_childdomain.lng @@ -42,7 +42,7 @@ $wb['no_redirect_txt'] = 'Kein Redirect'; $wb['no_flag_txt'] = 'Kein Flag'; $wb['proxy_directives_txt'] = 'Proxy-Direktiven'; $wb['available_proxy_directive_snippets_txt'] = 'Verfügbare Proxy Direktiven Schnipsel:'; -$wb['error_proxy_requires_url'] = 'Weiterleitungstyp \"proxy\" erfordert eine URL als Weiterleitungspfad.'; +$wb['error_proxy_requires_url'] = 'Weiterleitungstyp \\"proxy\\" erfordert eine URL als Weiterleitungspfad.'; $wb['backup_interval_txt'] = 'Backup-Intervall'; $wb['backup_copies_txt'] = 'Anzahl der Backups'; $wb['ssl_key_txt'] = 'SSL-Schlüssel'; diff --git a/interface/web/sites/lib/lang/de_web_subdomain.lng b/interface/web/sites/lib/lang/de_web_subdomain.lng index a88918b09a..586c90adc3 100644 --- a/interface/web/sites/lib/lang/de_web_subdomain.lng +++ b/interface/web/sites/lib/lang/de_web_subdomain.lng @@ -42,7 +42,7 @@ $wb['no_redirect_txt'] = 'Kein Redirect'; $wb['no_flag_txt'] = 'Kein Flag'; $wb['proxy_directives_txt'] = 'Proxy-Direktiven'; $wb['available_proxy_directive_snippets_txt'] = 'Verfügbare Proxy Direktiven Schnipsel:'; -$wb['error_proxy_requires_url'] = 'Weiterleitungstyp \"proxy\" erfordert eine URL als Weiterleitungspfad.'; +$wb['error_proxy_requires_url'] = 'Weiterleitungstyp \\"proxy\\" erfordert eine URL als Weiterleitungspfad.'; $wb['http_port_txt'] = 'HTTP Port'; $wb['https_port_txt'] = 'HTTPS Port'; $wb['http_port_error_regex'] = 'HTTP Port invalid.'; diff --git a/interface/web/sites/lib/lang/dk.lng b/interface/web/sites/lib/lang/dk.lng index a99760a66e..39974fef5d 100644 --- a/interface/web/sites/lib/lang/dk.lng +++ b/interface/web/sites/lib/lang/dk.lng @@ -31,5 +31,5 @@ $wb['Available packages'] = 'Tilgængelig pakker'; $wb['Installed packages'] = 'Installeret pakker'; $wb['Update Packagelist'] = 'Opdater Pakkeliste'; $wb['Subdomain (Vhost)'] = 'Sub-domæne (Vhost)'; -$wb['error_proxy_requires_url'] = 'Omdiriger Type \"proxy\" requires a URL as the redirect path.'; +$wb['error_proxy_requires_url'] = 'Omdiriger Type \\"proxy\\" requires a URL as the redirect path.'; ?> diff --git a/interface/web/sites/lib/lang/dk_aps.lng b/interface/web/sites/lib/lang/dk_aps.lng index c3f2983cfd..ca006e2eb2 100644 --- a/interface/web/sites/lib/lang/dk_aps.lng +++ b/interface/web/sites/lib/lang/dk_aps.lng @@ -40,14 +40,14 @@ $wb['error_inv_main_location'] = 'Den oplyste installations mappe er ugyldig.'; $wb['error_license_agreement'] = 'For at fortsætte skal du acceptere licensaftalen.'; $wb['error_no_database_pw'] = 'Du har ikke oplyst en database adgangskode.'; $wb['error_short_database_pw'] = 'Vælg en længer database adgangskode.'; -$wb['error_no_value_for'] = 'Feltet \"%s\" mÃ¥ ikke være tomt.'; -$wb['error_short_value_for'] = 'Feltet \"%s\" kræver en længere indtastnings værdi.'; -$wb['error_long_value_for'] = 'Feltet \"%s\" kræver en kortere indtastnings værdi.'; -$wb['error_inv_value_for'] = 'Du har indtastet en ugyldig værdi for feltet \"%s\".'; -$wb['error_inv_email_for'] = 'Du har indtastet en ugyldig mail adresse for feltet \"%s\".'; -$wb['error_inv_domain_for'] = 'Du har indtastet et ugyldigt domæne for feltet \"%s\".'; -$wb['error_inv_integer_for'] = 'Du har indtastet et ugyldigt tal for feltet \"%s\".'; -$wb['error_inv_float_for'] = 'Du har indtastet et ugyldigt floating point tal for feltet \"%s\".'; +$wb['error_no_value_for'] = 'Feltet \\"%s\\" mÃ¥ ikke være tomt.'; +$wb['error_short_value_for'] = 'Feltet \\"%s\\" kræver en længere indtastnings værdi.'; +$wb['error_long_value_for'] = 'Feltet \\"%s\\" kræver en kortere indtastnings værdi.'; +$wb['error_inv_value_for'] = 'Du har indtastet en ugyldig værdi for feltet \\"%s\\".'; +$wb['error_inv_email_for'] = 'Du har indtastet en ugyldig mail adresse for feltet \\"%s\\".'; +$wb['error_inv_domain_for'] = 'Du har indtastet et ugyldigt domæne for feltet \\"%s\\".'; +$wb['error_inv_integer_for'] = 'Du har indtastet et ugyldigt tal for feltet \\"%s\\".'; +$wb['error_inv_float_for'] = 'Du har indtastet et ugyldigt floating point tal for feltet \\"%s\\".'; $wb['error_used_location'] = 'Installations stien indeholder allerede en pakke installation.'; $wb['installation_task_txt'] = 'Installation planlagt'; $wb['installation_error_txt'] = 'Installations fejl'; diff --git a/interface/web/sites/lib/lang/dk_web_childdomain.lng b/interface/web/sites/lib/lang/dk_web_childdomain.lng index 1d838990e3..762acfe244 100644 --- a/interface/web/sites/lib/lang/dk_web_childdomain.lng +++ b/interface/web/sites/lib/lang/dk_web_childdomain.lng @@ -43,7 +43,7 @@ $wb['no_redirect_txt'] = 'No redirect'; $wb['no_flag_txt'] = 'No flag'; $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['error_proxy_requires_url'] = 'Redirect Type \\"proxy\\" requires a URL as the redirect path.'; $wb['backup_interval_txt'] = 'Backup interval'; $wb['backup_copies_txt'] = 'Number of backup copies'; $wb['ssl_key_txt'] = 'SSL Key'; diff --git a/interface/web/sites/lib/lang/dk_web_subdomain.lng b/interface/web/sites/lib/lang/dk_web_subdomain.lng index 4fffd59365..c14a347263 100644 --- a/interface/web/sites/lib/lang/dk_web_subdomain.lng +++ b/interface/web/sites/lib/lang/dk_web_subdomain.lng @@ -42,7 +42,7 @@ $wb['no_redirect_txt'] = 'Ingen redirect'; $wb['no_flag_txt'] = 'Ingen flag'; $wb['proxy_directives_txt'] = 'Proxy Directives'; $wb['available_proxy_directive_snippets_txt'] = 'Tilgængelig Proxy Direktiv Kodestykker:'; -$wb['error_proxy_requires_url'] = 'Omdiriger Type \"proxy\" requires a URL as the redirect path.'; +$wb['error_proxy_requires_url'] = 'Omdiriger 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.'; diff --git a/interface/web/sites/lib/lang/el.lng b/interface/web/sites/lib/lang/el.lng index 19bfc27349..2d726140fd 100644 --- a/interface/web/sites/lib/lang/el.lng +++ b/interface/web/sites/lib/lang/el.lng @@ -31,5 +31,5 @@ $wb['Available packages'] = 'Available packages'; $wb['Installed packages'] = 'Installed packages'; $wb['Update Packagelist'] = 'Update Packagelist'; $wb['Subdomain (Vhost)'] = 'Subdomain (Vhost)'; -$wb['error_proxy_requires_url'] = 'Redirect Type \"proxy\" requires a URL as the redirect path.'; +$wb['error_proxy_requires_url'] = 'Redirect Type \\"proxy\\" requires a URL as the redirect path.'; ?> diff --git a/interface/web/sites/lib/lang/el_aps.lng b/interface/web/sites/lib/lang/el_aps.lng index 73cb49f106..0209737f61 100644 --- a/interface/web/sites/lib/lang/el_aps.lng +++ b/interface/web/sites/lib/lang/el_aps.lng @@ -38,14 +38,14 @@ $wb['error_inv_main_location'] = 'The given install location folder is invalid.' $wb['error_license_agreement'] = 'In order to continue you have to accept the license agreement.'; $wb['error_no_database_pw'] = 'You have provided no valid database password.'; $wb['error_short_database_pw'] = 'Please choose a longer database password.'; -$wb['error_no_value_for'] = 'The field \"%s\" must not be empty.'; -$wb['error_short_value_for'] = 'The field \"%s\" requires a longer input value.'; -$wb['error_long_value_for'] = 'The field \"%s\" requires a shorter input value.'; -$wb['error_inv_value_for'] = 'You have entered an invalid value for the field \"%s\".'; -$wb['error_inv_email_for'] = 'You have entered an invalid mail address for the field \"%s\".'; -$wb['error_inv_domain_for'] = 'You have entered an invalid domain for the field \"%s\".'; -$wb['error_inv_integer_for'] = 'You have entered an invalid number for the field \"%s\".'; -$wb['error_inv_float_for'] = 'You have entered an invalid floating point number for the field \"%s\".'; +$wb['error_no_value_for'] = 'The field \\"%s\\" must not be empty.'; +$wb['error_short_value_for'] = 'The field \\"%s\\" requires a longer input value.'; +$wb['error_long_value_for'] = 'The field \\"%s\\" requires a shorter input value.'; +$wb['error_inv_value_for'] = 'You have entered an invalid value for the field \\"%s\\".'; +$wb['error_inv_email_for'] = 'You have entered an invalid mail address for the field \\"%s\\".'; +$wb['error_inv_domain_for'] = 'You have entered an invalid domain for the field \\"%s\\".'; +$wb['error_inv_integer_for'] = 'You have entered an invalid number for the field \\"%s\\".'; +$wb['error_inv_float_for'] = 'You have entered an invalid floating point number for the field \\"%s\\".'; $wb['error_used_location'] = 'The installation path already contains a package installation.'; $wb['installation_task_txt'] = 'Install planned'; $wb['installation_error_txt'] = 'Install error'; diff --git a/interface/web/sites/lib/lang/el_web_childdomain.lng b/interface/web/sites/lib/lang/el_web_childdomain.lng index a1cead28e3..3c5cb7a936 100644 --- a/interface/web/sites/lib/lang/el_web_childdomain.lng +++ b/interface/web/sites/lib/lang/el_web_childdomain.lng @@ -45,7 +45,7 @@ $wb['no_flag_txt'] = 'ΧωÏίς Σημαία'; $wb['domain_error_wildcard'] = 'Wildcard subdomains δεν επιτÏÎπονται.'; $wb['proxy_directives_txt'] = 'Proxy Directives'; $wb['available_proxy_directive_snippets_txt'] = 'ΔιαθÎσιμα Proxy Directive Snippets:'; -$wb['error_proxy_requires_url'] = 'Ο Ï„Ïπος ανακατεÏθυνσης \"proxy\" απαιτεί Îνα URL ως μονοπάτι ανακατεÏθυνσης.'; +$wb['error_proxy_requires_url'] = 'Ο Ï„Ïπος ανακατεÏθυνσης \\"proxy\\" απαιτεί Îνα URL ως μονοπάτι ανακατεÏθυνσης.'; $wb['ssl_domain_txt'] = 'SSL Domain'; $wb['web_folder_error_regex'] = 'Εισάγατε μη ÎγκυÏο φάκελο. Μην εισάγετε την κάθετο.'; $wb['ipv6_address_txt'] = 'ΔιεÏθυνση IPv6'; diff --git a/interface/web/sites/lib/lang/el_web_subdomain.lng b/interface/web/sites/lib/lang/el_web_subdomain.lng index b3f8e1312f..606137bc82 100644 --- a/interface/web/sites/lib/lang/el_web_subdomain.lng +++ b/interface/web/sites/lib/lang/el_web_subdomain.lng @@ -42,7 +42,7 @@ $wb['no_flag_txt'] = 'ΧωÏίς Σημαία'; $wb['domain_error_wildcard'] = 'Wildcard subdomains are not allowed.'; $wb['proxy_directives_txt'] = 'Proxy Directives'; $wb['available_proxy_directive_snippets_txt'] = 'Available Proxy Directive Snippets:'; -$wb['error_proxy_requires_url'] = 'Redirect Type \"proxy\" requires a URL as the redirect path.'; +$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.'; diff --git a/interface/web/sites/lib/lang/es.lng b/interface/web/sites/lib/lang/es.lng index 78cfa3a609..7d128081f6 100755 --- a/interface/web/sites/lib/lang/es.lng +++ b/interface/web/sites/lib/lang/es.lng @@ -8,7 +8,7 @@ $wb['Cron'] = 'Trabajos programados'; $wb['Database User'] = 'Usuarios de bases de datos'; $wb['Database'] = 'Bases de datos'; $wb['Domain'] = 'Dominio'; -$wb['error_proxy_requires_url'] = 'La redirección del tipo \"proxy\" requiere de una URL como ruta de redirección.'; +$wb['error_proxy_requires_url'] = 'La redirección del tipo \\"proxy\\" requiere de una URL como ruta de redirección.'; $wb['Folder users'] = 'Usuarios de carpetas protegidas'; $wb['Folder'] = 'Carpetas protegidas'; $wb['FTP'] = 'FTP'; diff --git a/interface/web/sites/lib/lang/es_aps.lng b/interface/web/sites/lib/lang/es_aps.lng index afecc225fc..3780b32edd 100755 --- a/interface/web/sites/lib/lang/es_aps.lng +++ b/interface/web/sites/lib/lang/es_aps.lng @@ -12,20 +12,20 @@ $wb['config_script_txt'] = 'Archivo de configuración'; $wb['database_txt'] = 'Base de datos'; $wb['description_txt'] = 'Descripción'; $wb['details_txt'] = 'Detalles'; -$wb['error_inv_domain_for'] = 'Ha ingresado un dominio inválido en el campo \"%s\".'; -$wb['error_inv_email_for'] = 'Ha ingresado una dirección de correo inválida en el campo \"%s\".'; -$wb['error_inv_float_for'] = 'Ha introducido un número de punto flotante no válido para el campo \"%s\".'; -$wb['error_inv_integer_for'] = 'Ha ingresado un número inválido en el campo \"%s\".'; +$wb['error_inv_domain_for'] = 'Ha ingresado un dominio inválido en el campo \\"%s\\".'; +$wb['error_inv_email_for'] = 'Ha ingresado una dirección de correo inválida en el campo \\"%s\\".'; +$wb['error_inv_float_for'] = 'Ha introducido un número de punto flotante no válido para el campo \\"%s\\".'; +$wb['error_inv_integer_for'] = 'Ha ingresado un número inválido en el campo \\"%s\\".'; $wb['error_inv_main_location'] = 'La ubicación de la carpeta de instalación proporcionada es inválida.'; -$wb['error_inv_value_for'] = 'Ha ingresado un valor inválido en el campo \"%s\".'; +$wb['error_inv_value_for'] = 'Ha ingresado un valor inválido en el campo \\"%s\\".'; $wb['error_license_agreement'] = 'Para poder continuar debe aceptar el acuerdo de licencia.'; -$wb['error_long_value_for'] = 'El campo \"%s\" requiere una entrada más corta.'; +$wb['error_long_value_for'] = 'El campo \\"%s\\" requiere una entrada más corta.'; $wb['error_main_domain'] = 'El dominio de la ruta de la instalación es inválido.'; $wb['error_no_database_pw'] = 'No ha proporcionado una contraseña válida para la base de datos.'; $wb['error_no_main_location'] = 'Ha proporcionado una ruta de instalación inválida.'; -$wb['error_no_value_for'] = 'El campo \"%s\" no puede estar vacÃo.'; +$wb['error_no_value_for'] = 'El campo \\"%s\\" no puede estar vacÃo.'; $wb['error_short_database_pw'] = 'Por favor seleccione un contraseña más larga para la base de datos.'; -$wb['error_short_value_for'] = 'El campo \"%s\" requiere una entrada más larga.'; +$wb['error_short_value_for'] = 'El campo \\"%s\\" requiere una entrada más larga.'; $wb['error_used_location'] = 'La ruta de instalación ya contiene un paquete instalado.'; $wb['homepage_txt'] = 'Página de inicio'; $wb['install_language_txt'] = 'Idioma de la interfaz'; diff --git a/interface/web/sites/lib/lang/es_web_childdomain.lng b/interface/web/sites/lib/lang/es_web_childdomain.lng index 839110669f..25843a0e21 100644 --- a/interface/web/sites/lib/lang/es_web_childdomain.lng +++ b/interface/web/sites/lib/lang/es_web_childdomain.lng @@ -42,7 +42,7 @@ $wb['no_flag_txt'] = 'Sin flag'; $wb['domain_error_wildcard'] = 'No se permiten subdominios comodÃn.'; $wb['proxy_directives_txt'] = 'Directivas de Proxy'; $wb['available_proxy_directive_snippets_txt'] = 'Fragmentos de directivas de proxy disponibles:'; -$wb['error_proxy_requires_url'] = 'Tipo de redirección \"proxy\" necesita una URL como ruta de redirección.'; +$wb['error_proxy_requires_url'] = 'Tipo de redirección \\"proxy\\" necesita una URL como ruta de redirección.'; $wb['backup_interval_txt'] = 'Intervalo de copia de seguridad'; $wb['backup_copies_txt'] = 'Número de copias de seguridad'; $wb['ssl_key_txt'] = 'Clave SSL'; @@ -104,7 +104,7 @@ $wb['pm_process_idle_timeout_txt'] = 'PHP-FPM pm.process_idle_timeout'; $wb['pm_max_requests_txt'] = 'PHP-FPM pm.max_requests'; $wb['pm_process_idle_timeout_error_regex'] = 'PHP-FPM pm.process_idle_timeout debe ser un valor entero positivo.'; $wb['pm_max_requests_error_regex'] = 'PHP-FPM pm.max_requests debe ser un valor entero >= 0.'; -$wb['pm_ondemand_hint_txt'] = 'Por favor ten en cuenta que debes tener una versión de PHP >= 5.3.9 para poder usar el gestor de procesos \"ondemand\". Si seleccionas \"ondemand\" para una versión de PHP anterior, ¡PHP dejará de funcionar!'; +$wb['pm_ondemand_hint_txt'] = 'Por favor ten en cuenta que debes tener una versión de PHP >= 5.3.9 para poder usar el gestor de procesos \\"ondemand\\". Si seleccionas \\"ondemand\\" para una versión de PHP anterior, ¡PHP dejará de funcionar!'; $wb['generate_password_txt'] = 'Generar contraseña'; $wb['repeat_password_txt'] = 'Repetir contraseña'; $wb['password_mismatch_txt'] = 'Las contraseñas no coinciden.'; diff --git a/interface/web/sites/lib/lang/es_web_subdomain.lng b/interface/web/sites/lib/lang/es_web_subdomain.lng index 8bae76742c..2221a749c2 100644 --- a/interface/web/sites/lib/lang/es_web_subdomain.lng +++ b/interface/web/sites/lib/lang/es_web_subdomain.lng @@ -42,7 +42,7 @@ $wb['no_flag_txt'] = 'No flag'; $wb['domain_error_wildcard'] = 'Wildcard subdomains are not allowed.'; $wb['proxy_directives_txt'] = 'Proxy Directives'; $wb['available_proxy_directive_snippets_txt'] = 'Available Proxy Directive Snippets:'; -$wb['error_proxy_requires_url'] = 'Redirect Type \"proxy\" requires a URL as the redirect path.'; +$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.'; diff --git a/interface/web/sites/lib/lang/es_web_vhost_domain.lng b/interface/web/sites/lib/lang/es_web_vhost_domain.lng index 4a2b17cab7..f98c02db15 100644 --- a/interface/web/sites/lib/lang/es_web_vhost_domain.lng +++ b/interface/web/sites/lib/lang/es_web_vhost_domain.lng @@ -102,7 +102,7 @@ $wb['pm_process_idle_timeout_txt'] = 'PHP-FPM pm.process_idle_timeout'; $wb['pm_max_requests_txt'] = 'PHP-FPM pm.max_requests'; $wb['pm_process_idle_timeout_error_regex'] = 'PHP-FPM pm.process_idle_timeout debe ser un valor entero positivo.'; $wb['pm_max_requests_error_regex'] = 'PHP-FPM pm.max_requests debe ser un valor entero >= 0.'; -$wb['pm_ondemand_hint_txt'] = 'Por favor ten en cuenta que debes tener una versión de PHP >= 5.3.9 para poder usar el gestor de procesos \"ondemand\". Si seleccionas \"ondemand\" para una versión de PHP anterior, ¡PHP dejará de funcionar!'; +$wb['pm_ondemand_hint_txt'] = 'Por favor ten en cuenta que debes tener una versión de PHP >= 5.3.9 para poder usar el gestor de procesos \\"ondemand\\". Si seleccionas \\"ondemand\\" para una versión de PHP anterior, ¡PHP dejará de funcionar!'; $wb['generate_password_txt'] = 'Generar contraseña'; $wb['repeat_password_txt'] = 'Repetir contraseña'; $wb['password_mismatch_txt'] = 'Las contraseñas no coinciden.'; diff --git a/interface/web/sites/lib/lang/fi.lng b/interface/web/sites/lib/lang/fi.lng index 5adab57775..ebf94bc190 100755 --- a/interface/web/sites/lib/lang/fi.lng +++ b/interface/web/sites/lib/lang/fi.lng @@ -31,5 +31,5 @@ $wb['Available packages'] = 'Available packages'; $wb['Installed packages'] = 'Installed packages'; $wb['Update Packagelist'] = 'Update Packagelist'; $wb['Subdomain (Vhost)'] = 'Subdomain (Vhost)'; -$wb['error_proxy_requires_url'] = 'Redirect Type \"proxy\" requires a URL as the redirect path.'; +$wb['error_proxy_requires_url'] = 'Redirect Type \\"proxy\\" requires a URL as the redirect path.'; ?> diff --git a/interface/web/sites/lib/lang/fi_aps.lng b/interface/web/sites/lib/lang/fi_aps.lng index cc8dc83588..d78701f272 100644 --- a/interface/web/sites/lib/lang/fi_aps.lng +++ b/interface/web/sites/lib/lang/fi_aps.lng @@ -38,14 +38,14 @@ $wb['error_inv_main_location'] = 'The given install location folder is invalid.' $wb['error_license_agreement'] = 'In order to continue you have to accept the license agreement.'; $wb['error_no_database_pw'] = 'You have provided no valid database password.'; $wb['error_short_database_pw'] = 'Please choose a longer database password.'; -$wb['error_no_value_for'] = 'The field \"%s\" must not be empty.'; -$wb['error_short_value_for'] = 'The field \"%s\" requires a longer input value.'; -$wb['error_long_value_for'] = 'The field \"%s\" requires a shorter input value.'; -$wb['error_inv_value_for'] = 'You have entered an invalid value for the field \"%s\".'; -$wb['error_inv_email_for'] = 'You have entered an invalid mail address for the field \"%s\".'; -$wb['error_inv_domain_for'] = 'You have entered an invalid domain for the field \"%s\".'; -$wb['error_inv_integer_for'] = 'You have entered an invalid number for the field \"%s\".'; -$wb['error_inv_float_for'] = 'You have entered an invalid floating point number for the field \"%s\".'; +$wb['error_no_value_for'] = 'The field \\"%s\\" must not be empty.'; +$wb['error_short_value_for'] = 'The field \\"%s\\" requires a longer input value.'; +$wb['error_long_value_for'] = 'The field \\"%s\\" requires a shorter input value.'; +$wb['error_inv_value_for'] = 'You have entered an invalid value for the field \\"%s\\".'; +$wb['error_inv_email_for'] = 'You have entered an invalid mail address for the field \\"%s\\".'; +$wb['error_inv_domain_for'] = 'You have entered an invalid domain for the field \\"%s\\".'; +$wb['error_inv_integer_for'] = 'You have entered an invalid number for the field \\"%s\\".'; +$wb['error_inv_float_for'] = 'You have entered an invalid floating point number for the field \\"%s\\".'; $wb['error_used_location'] = 'The installation path already contains a package installation.'; $wb['installation_task_txt'] = 'Install planned'; $wb['installation_error_txt'] = 'Install error'; diff --git a/interface/web/sites/lib/lang/fi_web_childdomain.lng b/interface/web/sites/lib/lang/fi_web_childdomain.lng index 98c41088a1..5105ba3f2e 100755 --- a/interface/web/sites/lib/lang/fi_web_childdomain.lng +++ b/interface/web/sites/lib/lang/fi_web_childdomain.lng @@ -42,7 +42,7 @@ $wb['no_flag_txt'] = 'No flag'; $wb['domain_error_wildcard'] = 'Wildcard subdomains are not allowed.'; $wb['proxy_directives_txt'] = 'Proxy Directives'; $wb['available_proxy_directive_snippets_txt'] = 'Available Proxy Directive Snippets:'; -$wb['error_proxy_requires_url'] = 'Redirect Type \"proxy\" requires a URL as the redirect path.'; +$wb['error_proxy_requires_url'] = 'Redirect Type \\"proxy\\" requires a URL as the redirect path.'; $wb['backup_interval_txt'] = 'Backup interval'; $wb['backup_copies_txt'] = 'Number of backup copies'; $wb['ssl_key_txt'] = 'SSL Key'; diff --git a/interface/web/sites/lib/lang/fi_web_subdomain.lng b/interface/web/sites/lib/lang/fi_web_subdomain.lng index 7500fb7a61..7fe7103905 100644 --- a/interface/web/sites/lib/lang/fi_web_subdomain.lng +++ b/interface/web/sites/lib/lang/fi_web_subdomain.lng @@ -42,7 +42,7 @@ $wb['no_flag_txt'] = 'No flag'; $wb['domain_error_wildcard'] = 'Wildcard subdomains are not allowed.'; $wb['proxy_directives_txt'] = 'Proxy Directives'; $wb['available_proxy_directive_snippets_txt'] = 'Available Proxy Directive Snippets:'; -$wb['error_proxy_requires_url'] = 'Redirect Type \"proxy\" requires a URL as the redirect path.'; +$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.'; diff --git a/interface/web/sites/lib/lang/fr.lng b/interface/web/sites/lib/lang/fr.lng index c914ef002f..9acee9d061 100644 --- a/interface/web/sites/lib/lang/fr.lng +++ b/interface/web/sites/lib/lang/fr.lng @@ -31,5 +31,5 @@ $wb['Available packages'] = 'Packages disponibles'; $wb['Installed packages'] = 'Packages installés'; $wb['Update Packagelist'] = 'Mise à jour de la liste des packages'; $wb['Subdomain (Vhost)'] = 'Sous-domaine (Vhost)'; -$wb['error_proxy_requires_url'] = 'Type de redirection \"proxy\" nécessite une URL comme chemin de redirection.'; +$wb['error_proxy_requires_url'] = 'Type de redirection \\"proxy\\" nécessite une URL comme chemin de redirection.'; ?> diff --git a/interface/web/sites/lib/lang/fr_aps.lng b/interface/web/sites/lib/lang/fr_aps.lng index 0f067e78bc..6beef9939f 100644 --- a/interface/web/sites/lib/lang/fr_aps.lng +++ b/interface/web/sites/lib/lang/fr_aps.lng @@ -38,14 +38,14 @@ $wb['error_inv_main_location'] = 'Le dossier d’installation choisi est invalid $wb['error_license_agreement'] = 'Avant de continuer, vous devez accepter les conditions d’utilisation (licence).'; $wb['error_no_database_pw'] = 'Vous n’avez pas renseigné de mot de passe BDD valide.'; $wb['error_short_database_pw'] = 'Veuillez saisir un mot de passe BDD plus long.'; -$wb['error_no_value_for'] = 'Le champ \"%s\" ne peut pas être vide.'; -$wb['error_short_value_for'] = 'Le champ \"%s\" nécessite une valeur plus longue.'; -$wb['error_long_value_for'] = 'Le champ \"%s\" nécessite une valeur plus courte.'; -$wb['error_inv_value_for'] = 'Vous avez saisi une valeur invalide pour le champ \"%s\".'; -$wb['error_inv_email_for'] = 'L’adresse e-mail saisie pour le champ \"%s\" est invalide.'; -$wb['error_inv_domain_for'] = 'Le domaine saisi pour le champ \"%s\" est invalide.'; -$wb['error_inv_integer_for'] = 'Le nombre saisi pour le champ \"%s\" est invalide.'; -$wb['error_inv_float_for'] = 'La décimale saisie pour le champ \"%s\" est invalide.'; +$wb['error_no_value_for'] = 'Le champ \\"%s\\" ne peut pas être vide.'; +$wb['error_short_value_for'] = 'Le champ \\"%s\\" nécessite une valeur plus longue.'; +$wb['error_long_value_for'] = 'Le champ \\"%s\\" nécessite une valeur plus courte.'; +$wb['error_inv_value_for'] = 'Vous avez saisi une valeur invalide pour le champ \\"%s\\".'; +$wb['error_inv_email_for'] = 'L’adresse e-mail saisie pour le champ \\"%s\\" est invalide.'; +$wb['error_inv_domain_for'] = 'Le domaine saisi pour le champ \\"%s\\" est invalide.'; +$wb['error_inv_integer_for'] = 'Le nombre saisi pour le champ \\"%s\\" est invalide.'; +$wb['error_inv_float_for'] = 'La décimale saisie pour le champ \\"%s\\" est invalide.'; $wb['error_used_location'] = 'Le chemin de destination contient déjà un package d’installation.'; $wb['installation_task_txt'] = 'Installation prévue'; $wb['installation_error_txt'] = 'Erreur d’installation'; diff --git a/interface/web/sites/lib/lang/fr_web_childdomain.lng b/interface/web/sites/lib/lang/fr_web_childdomain.lng index f33ca58f09..1be206e122 100644 --- a/interface/web/sites/lib/lang/fr_web_childdomain.lng +++ b/interface/web/sites/lib/lang/fr_web_childdomain.lng @@ -42,7 +42,7 @@ $wb['no_flag_txt'] = 'Aucun flag'; $wb['domain_error_wildcard'] = 'Wildcard subdomains are not allowed.'; $wb['proxy_directives_txt'] = 'Proxy Directives'; $wb['available_proxy_directive_snippets_txt'] = 'Available Proxy Directive Snippets:'; -$wb['error_proxy_requires_url'] = 'Redirect Type \"proxy\" requires a URL as the redirect path.'; +$wb['error_proxy_requires_url'] = 'Redirect Type \\"proxy\\" requires a URL as the redirect path.'; $wb['backup_interval_txt'] = 'Backup interval'; $wb['backup_copies_txt'] = 'Number of backup copies'; $wb['ssl_key_txt'] = 'SSL Key'; diff --git a/interface/web/sites/lib/lang/fr_web_subdomain.lng b/interface/web/sites/lib/lang/fr_web_subdomain.lng index 6dfc914a0a..957dfbfed6 100644 --- a/interface/web/sites/lib/lang/fr_web_subdomain.lng +++ b/interface/web/sites/lib/lang/fr_web_subdomain.lng @@ -42,7 +42,7 @@ $wb['no_flag_txt'] = 'Aucun flag'; $wb['domain_error_wildcard'] = 'Les sous-domaines joker ne sont pas autorisés.'; $wb['proxy_directives_txt'] = 'Directives pour les Proxy'; $wb['available_proxy_directive_snippets_txt'] = 'Directives pour les Proxy Snippets disponibles :'; -$wb['error_proxy_requires_url'] = 'Les redirections de type \"proxy\" nécessitent une URL comme chemin de redirection.'; +$wb['error_proxy_requires_url'] = 'Les redirections de type \\"proxy\\" nécessitent une URL comme chemin de redirection.'; $wb['http_port_txt'] = 'HTTP Port'; $wb['https_port_txt'] = 'HTTPS Port'; $wb['http_port_error_regex'] = 'HTTP Port invalid.'; diff --git a/interface/web/sites/lib/lang/hr.lng b/interface/web/sites/lib/lang/hr.lng index 4c53c89843..b6af1225ac 100644 --- a/interface/web/sites/lib/lang/hr.lng +++ b/interface/web/sites/lib/lang/hr.lng @@ -30,6 +30,6 @@ $wb['Available packages'] = 'Dostupni paketi'; $wb['Installed packages'] = 'Instalirani paketi'; $wb['Update Packagelist'] = 'Osvježi listu paketa'; $wb['Subdomain (Vhost)'] = 'Poddomena (Vhost)'; -$wb['error_proxy_requires_url'] = '\"proxy\" redirekcija zahtijeva URL za redirekcijsku putanju.'; +$wb['error_proxy_requires_url'] = '\\"proxy\\" redirekcija zahtijeva URL za redirekcijsku putanju.'; $wb['Domain'] = 'Domain'; ?> diff --git a/interface/web/sites/lib/lang/hr_aps.lng b/interface/web/sites/lib/lang/hr_aps.lng index 6169342e71..79d31cf7fa 100644 --- a/interface/web/sites/lib/lang/hr_aps.lng +++ b/interface/web/sites/lib/lang/hr_aps.lng @@ -38,14 +38,14 @@ $wb['error_inv_main_location'] = 'The given install location folder is invalid.' $wb['error_license_agreement'] = 'In order to continue you have to accept the license agreement.'; $wb['error_no_database_pw'] = 'You have provided no valid database password.'; $wb['error_short_database_pw'] = 'Please choose a longer database password.'; -$wb['error_no_value_for'] = 'The field \"%s\" must not be empty.'; -$wb['error_short_value_for'] = 'The field \"%s\" requires a longer input value.'; -$wb['error_long_value_for'] = 'The field \"%s\" requires a shorter input value.'; -$wb['error_inv_value_for'] = 'You have entered an invalid value for the field \"%s\".'; -$wb['error_inv_email_for'] = 'You have entered an invalid mail address for the field \"%s\".'; -$wb['error_inv_domain_for'] = 'You have entered an invalid domain for the field \"%s\".'; -$wb['error_inv_integer_for'] = 'You have entered an invalid number for the field \"%s\".'; -$wb['error_inv_float_for'] = 'You have entered an invalid floating point number for the field \"%s\".'; +$wb['error_no_value_for'] = 'The field \\"%s\\" must not be empty.'; +$wb['error_short_value_for'] = 'The field \\"%s\\" requires a longer input value.'; +$wb['error_long_value_for'] = 'The field \\"%s\\" requires a shorter input value.'; +$wb['error_inv_value_for'] = 'You have entered an invalid value for the field \\"%s\\".'; +$wb['error_inv_email_for'] = 'You have entered an invalid mail address for the field \\"%s\\".'; +$wb['error_inv_domain_for'] = 'You have entered an invalid domain for the field \\"%s\\".'; +$wb['error_inv_integer_for'] = 'You have entered an invalid number for the field \\"%s\\".'; +$wb['error_inv_float_for'] = 'You have entered an invalid floating point number for the field \\"%s\\".'; $wb['error_used_location'] = 'The installation path already contains a package installation.'; $wb['installation_task_txt'] = 'Instalacija u postupku'; $wb['installation_error_txt'] = 'Instalacijska greÅ¡ka'; diff --git a/interface/web/sites/lib/lang/hr_web_childdomain.lng b/interface/web/sites/lib/lang/hr_web_childdomain.lng index f0e69f24f8..99df0d2fdf 100644 --- a/interface/web/sites/lib/lang/hr_web_childdomain.lng +++ b/interface/web/sites/lib/lang/hr_web_childdomain.lng @@ -42,7 +42,7 @@ $wb['no_flag_txt'] = 'Bez markiranja'; $wb['domain_error_wildcard'] = 'Wildcard subdomains are not allowed.'; $wb['proxy_directives_txt'] = 'Proxy Directives'; $wb['available_proxy_directive_snippets_txt'] = 'Available Proxy Directive Snippets:'; -$wb['error_proxy_requires_url'] = 'Redirect Type \"proxy\" requires a URL as the redirect path.'; +$wb['error_proxy_requires_url'] = 'Redirect Type \\"proxy\\" requires a URL as the redirect path.'; $wb['backup_interval_txt'] = 'Backup interval'; $wb['backup_copies_txt'] = 'Number of backup copies'; $wb['ssl_key_txt'] = 'SSL Key'; diff --git a/interface/web/sites/lib/lang/hr_web_subdomain.lng b/interface/web/sites/lib/lang/hr_web_subdomain.lng index 18fe4630a4..76d7f39571 100644 --- a/interface/web/sites/lib/lang/hr_web_subdomain.lng +++ b/interface/web/sites/lib/lang/hr_web_subdomain.lng @@ -42,7 +42,7 @@ $wb['no_flag_txt'] = 'Bez markiranja'; $wb['domain_error_wildcard'] = 'Wildcard poddomene nisu dozvoljene.'; $wb['proxy_directives_txt'] = 'Proxy direktive'; $wb['available_proxy_directive_snippets_txt'] = 'Dostupne proxy direktive:'; -$wb['error_proxy_requires_url'] = 'Vrsta redirekcije \"proxy\" zahtjeva URL kao redirekcijsku putanju.'; +$wb['error_proxy_requires_url'] = 'Vrsta redirekcije \\"proxy\\" zahtjeva URL kao redirekcijsku putanju.'; $wb['http_port_txt'] = 'HTTP Port'; $wb['https_port_txt'] = 'HTTPS Port'; $wb['http_port_error_regex'] = 'HTTP Port invalid.'; diff --git a/interface/web/sites/lib/lang/hu.lng b/interface/web/sites/lib/lang/hu.lng index 1a3e31d3f9..2c156a4775 100644 --- a/interface/web/sites/lib/lang/hu.lng +++ b/interface/web/sites/lib/lang/hu.lng @@ -31,5 +31,5 @@ $wb['Available packages'] = 'Available packages'; $wb['Installed packages'] = 'Installed packages'; $wb['Update Packagelist'] = 'Update Packagelist'; $wb['Subdomain (Vhost)'] = 'Subdomain (Vhost)'; -$wb['error_proxy_requires_url'] = 'Redirect Type \"proxy\" requires a URL as the redirect path.'; +$wb['error_proxy_requires_url'] = 'Redirect Type \\"proxy\\" requires a URL as the redirect path.'; ?> diff --git a/interface/web/sites/lib/lang/hu_aps.lng b/interface/web/sites/lib/lang/hu_aps.lng index 9330a1fb45..88708732df 100644 --- a/interface/web/sites/lib/lang/hu_aps.lng +++ b/interface/web/sites/lib/lang/hu_aps.lng @@ -38,14 +38,14 @@ $wb['error_inv_main_location'] = 'The given install location folder is invalid.' $wb['error_license_agreement'] = 'In order to continue you have to accept the license agreement.'; $wb['error_no_database_pw'] = 'You have provided no valid database password.'; $wb['error_short_database_pw'] = 'Please choose a longer database password.'; -$wb['error_no_value_for'] = 'The field \"%s\" must not be empty.'; -$wb['error_short_value_for'] = 'The field \"%s\" requires a longer input value.'; -$wb['error_long_value_for'] = 'The field \"%s\" requires a shorter input value.'; -$wb['error_inv_value_for'] = 'You have entered an invalid value for the field \"%s\".'; -$wb['error_inv_email_for'] = 'You have entered an invalid mail address for the field \"%s\".'; -$wb['error_inv_domain_for'] = 'You have entered an invalid domain for the field \"%s\".'; -$wb['error_inv_integer_for'] = 'You have entered an invalid number for the field \"%s\".'; -$wb['error_inv_float_for'] = 'You have entered an invalid floating point number for the field \"%s\".'; +$wb['error_no_value_for'] = 'The field \\"%s\\" must not be empty.'; +$wb['error_short_value_for'] = 'The field \\"%s\\" requires a longer input value.'; +$wb['error_long_value_for'] = 'The field \\"%s\\" requires a shorter input value.'; +$wb['error_inv_value_for'] = 'You have entered an invalid value for the field \\"%s\\".'; +$wb['error_inv_email_for'] = 'You have entered an invalid mail address for the field \\"%s\\".'; +$wb['error_inv_domain_for'] = 'You have entered an invalid domain for the field \\"%s\\".'; +$wb['error_inv_integer_for'] = 'You have entered an invalid number for the field \\"%s\\".'; +$wb['error_inv_float_for'] = 'You have entered an invalid floating point number for the field \\"%s\\".'; $wb['error_used_location'] = 'The installation path already contains a package installation.'; $wb['installation_task_txt'] = 'Install planned'; $wb['installation_error_txt'] = 'Install error'; diff --git a/interface/web/sites/lib/lang/hu_web_childdomain.lng b/interface/web/sites/lib/lang/hu_web_childdomain.lng index aa554d4bc4..5ac19c3bbc 100644 --- a/interface/web/sites/lib/lang/hu_web_childdomain.lng +++ b/interface/web/sites/lib/lang/hu_web_childdomain.lng @@ -42,7 +42,7 @@ $wb['redirect_error_regex'] = 'Invalid redirect path. Valid redirects are for ex $wb['domain_error_wildcard'] = 'Wildcard subdomains are not allowed.'; $wb['proxy_directives_txt'] = 'Proxy Directives'; $wb['available_proxy_directive_snippets_txt'] = 'Available Proxy Directive Snippets:'; -$wb['error_proxy_requires_url'] = 'Redirect Type \"proxy\" requires a URL as the redirect path.'; +$wb['error_proxy_requires_url'] = 'Redirect Type \\"proxy\\" requires a URL as the redirect path.'; $wb['backup_interval_txt'] = 'Backup interval'; $wb['backup_copies_txt'] = 'Number of backup copies'; $wb['ssl_key_txt'] = 'SSL Key'; diff --git a/interface/web/sites/lib/lang/hu_web_subdomain.lng b/interface/web/sites/lib/lang/hu_web_subdomain.lng index 79c9ecc700..84874b22c5 100644 --- a/interface/web/sites/lib/lang/hu_web_subdomain.lng +++ b/interface/web/sites/lib/lang/hu_web_subdomain.lng @@ -42,7 +42,7 @@ $wb['redirect_error_regex'] = 'Invalid redirect path. Valid redirects are for ex $wb['domain_error_wildcard'] = 'Wildcard subdomains are not allowed.'; $wb['proxy_directives_txt'] = 'Proxy Directives'; $wb['available_proxy_directive_snippets_txt'] = 'Available Proxy Directive Snippets:'; -$wb['error_proxy_requires_url'] = 'Redirect Type \"proxy\" requires a URL as the redirect path.'; +$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.'; diff --git a/interface/web/sites/lib/lang/id.lng b/interface/web/sites/lib/lang/id.lng index 4fdae1813f..c8510df6cb 100644 --- a/interface/web/sites/lib/lang/id.lng +++ b/interface/web/sites/lib/lang/id.lng @@ -31,5 +31,5 @@ $wb['Available packages'] = 'Available packages'; $wb['Installed packages'] = 'Installed packages'; $wb['Update Packagelist'] = 'Update Packagelist'; $wb['Subdomain (Vhost)'] = 'Subdomain (Vhost)'; -$wb['error_proxy_requires_url'] = 'Redirect Type \"proxy\" requires a URL as the redirect path.'; +$wb['error_proxy_requires_url'] = 'Redirect Type \\"proxy\\" requires a URL as the redirect path.'; ?> diff --git a/interface/web/sites/lib/lang/id_aps.lng b/interface/web/sites/lib/lang/id_aps.lng index 6f6d0bced2..b8c9af2152 100644 --- a/interface/web/sites/lib/lang/id_aps.lng +++ b/interface/web/sites/lib/lang/id_aps.lng @@ -38,14 +38,14 @@ $wb['error_inv_main_location'] = 'The given install location folder is invalid.' $wb['error_license_agreement'] = 'In order to continue you have to accept the license agreement.'; $wb['error_no_database_pw'] = 'You have provided no valid database password.'; $wb['error_short_database_pw'] = 'Please choose a longer database password.'; -$wb['error_no_value_for'] = 'The field \"%s\" must not be empty.'; -$wb['error_short_value_for'] = 'The field \"%s\" requires a longer input value.'; -$wb['error_long_value_for'] = 'The field \"%s\" requires a shorter input value.'; -$wb['error_inv_value_for'] = 'You have entered an invalid value for the field \"%s\".'; -$wb['error_inv_email_for'] = 'You have entered an invalid mail address for the field \"%s\".'; -$wb['error_inv_domain_for'] = 'You have entered an invalid domain for the field \"%s\".'; -$wb['error_inv_integer_for'] = 'You have entered an invalid number for the field \"%s\".'; -$wb['error_inv_float_for'] = 'You have entered an invalid floating point number for the field \"%s\".'; +$wb['error_no_value_for'] = 'The field \\"%s\\" must not be empty.'; +$wb['error_short_value_for'] = 'The field \\"%s\\" requires a longer input value.'; +$wb['error_long_value_for'] = 'The field \\"%s\\" requires a shorter input value.'; +$wb['error_inv_value_for'] = 'You have entered an invalid value for the field \\"%s\\".'; +$wb['error_inv_email_for'] = 'You have entered an invalid mail address for the field \\"%s\\".'; +$wb['error_inv_domain_for'] = 'You have entered an invalid domain for the field \\"%s\\".'; +$wb['error_inv_integer_for'] = 'You have entered an invalid number for the field \\"%s\\".'; +$wb['error_inv_float_for'] = 'You have entered an invalid floating point number for the field \\"%s\\".'; $wb['error_used_location'] = 'The installation path already contains a package installation.'; $wb['installation_task_txt'] = 'Install planned'; $wb['installation_error_txt'] = 'Install error'; diff --git a/interface/web/sites/lib/lang/id_web_childdomain.lng b/interface/web/sites/lib/lang/id_web_childdomain.lng index 2b97dc223a..d5fd9711a4 100644 --- a/interface/web/sites/lib/lang/id_web_childdomain.lng +++ b/interface/web/sites/lib/lang/id_web_childdomain.lng @@ -42,7 +42,7 @@ $wb['no_flag_txt'] = 'No flag'; $wb['domain_error_wildcard'] = 'Wildcard subdomains are not allowed.'; $wb['proxy_directives_txt'] = 'Proxy Directives'; $wb['available_proxy_directive_snippets_txt'] = 'Available Proxy Directive Snippets:'; -$wb['error_proxy_requires_url'] = 'Redirect Type \"proxy\" requires a URL as the redirect path.'; +$wb['error_proxy_requires_url'] = 'Redirect Type \\"proxy\\" requires a URL as the redirect path.'; $wb['backup_interval_txt'] = 'Backup interval'; $wb['backup_copies_txt'] = 'Number of backup copies'; $wb['ssl_key_txt'] = 'SSL Key'; diff --git a/interface/web/sites/lib/lang/id_web_subdomain.lng b/interface/web/sites/lib/lang/id_web_subdomain.lng index 7f51be8e44..c2d007e693 100644 --- a/interface/web/sites/lib/lang/id_web_subdomain.lng +++ b/interface/web/sites/lib/lang/id_web_subdomain.lng @@ -42,7 +42,7 @@ $wb['no_flag_txt'] = 'No flag'; $wb['domain_error_wildcard'] = 'Wildcard subdomains are not allowed.'; $wb['proxy_directives_txt'] = 'Proxy Directives'; $wb['available_proxy_directive_snippets_txt'] = 'Available Proxy Directive Snippets:'; -$wb['error_proxy_requires_url'] = 'Redirect Type \"proxy\" requires a URL as the redirect path.'; +$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.'; diff --git a/interface/web/sites/lib/lang/it.lng b/interface/web/sites/lib/lang/it.lng index 2237545be9..77473bd0f8 100644 --- a/interface/web/sites/lib/lang/it.lng +++ b/interface/web/sites/lib/lang/it.lng @@ -31,5 +31,5 @@ $wb['Available packages'] = 'Pacchetti disponibili'; $wb['Installed packages'] = 'Pacchetti Installati'; $wb['Update Packagelist'] = 'Aggiorna Elenco Pacchetti'; $wb['Subdomain (Vhost)'] = 'Sottodominio (Vhost)'; -$wb['error_proxy_requires_url'] = 'Tipo reinderizzamento \"proxy\" richiede una URL come percorso del reinderizzamento.'; +$wb['error_proxy_requires_url'] = 'Tipo reinderizzamento \\"proxy\\" richiede una URL come percorso del reinderizzamento.'; ?> diff --git a/interface/web/sites/lib/lang/it_aps.lng b/interface/web/sites/lib/lang/it_aps.lng index ade7808616..0a6365f98f 100644 --- a/interface/web/sites/lib/lang/it_aps.lng +++ b/interface/web/sites/lib/lang/it_aps.lng @@ -38,14 +38,14 @@ $wb['error_inv_main_location'] = 'La cartella di installazione fornita non è va $wb['error_license_agreement'] = 'Per poter proseguire è necessario che prendi visione ed accetti l accordi di licenza.'; $wb['error_no_database_pw'] = 'La password fornita non è valida.'; $wb['error_short_database_pw'] = 'Per favore scegli una password di database più lunga.'; -$wb['error_no_value_for'] = 'Il campo \"%s\" non può essere vuoto.'; -$wb['error_short_value_for'] = 'Il campo \"%s\" richiede un valore immesso più lungo.'; -$wb['error_long_value_for'] = 'Il campo \"%s\" richiede un valore immesso più corto.'; -$wb['error_inv_value_for'] = 'Hai inserito un valore non valido per il campo \"%s\".'; -$wb['error_inv_email_for'] = 'Hai inserito un indirizzo email non valido per il campo \"%s\".'; -$wb['error_inv_domain_for'] = 'Hai inserito un dominio non valido per il campo \"%s\".'; -$wb['error_inv_integer_for'] = 'Hai inserito un numero non valido per il campo \"%s\".'; -$wb['error_inv_float_for'] = 'Hai inserito un numero di floating point non valido per il campo \"%s\".'; +$wb['error_no_value_for'] = 'Il campo \\"%s\\" non può essere vuoto.'; +$wb['error_short_value_for'] = 'Il campo \\"%s\\" richiede un valore immesso più lungo.'; +$wb['error_long_value_for'] = 'Il campo \\"%s\\" richiede un valore immesso più corto.'; +$wb['error_inv_value_for'] = 'Hai inserito un valore non valido per il campo \\"%s\\".'; +$wb['error_inv_email_for'] = 'Hai inserito un indirizzo email non valido per il campo \\"%s\\".'; +$wb['error_inv_domain_for'] = 'Hai inserito un dominio non valido per il campo \\"%s\\".'; +$wb['error_inv_integer_for'] = 'Hai inserito un numero non valido per il campo \\"%s\\".'; +$wb['error_inv_float_for'] = 'Hai inserito un numero di floating point non valido per il campo \\"%s\\".'; $wb['error_used_location'] = 'L installazione della patch contiene già un pacchetto di installazione.'; $wb['installation_task_txt'] = 'Installazione pianificata'; $wb['installation_error_txt'] = 'Errore di installazione'; diff --git a/interface/web/sites/lib/lang/it_web_childdomain.lng b/interface/web/sites/lib/lang/it_web_childdomain.lng index edd32aa6db..3a214e298e 100644 --- a/interface/web/sites/lib/lang/it_web_childdomain.lng +++ b/interface/web/sites/lib/lang/it_web_childdomain.lng @@ -43,7 +43,7 @@ $wb['no_flag_txt'] = 'No flag'; $wb['domain_error_wildcard'] = 'Wildcard subdomains are not allowed.'; $wb['proxy_directives_txt'] = 'Proxy Directives'; $wb['available_proxy_directive_snippets_txt'] = 'Available Proxy Directive Snippets:'; -$wb['error_proxy_requires_url'] = 'Redirect Type \"proxy\" requires a URL as the redirect path.'; +$wb['error_proxy_requires_url'] = 'Redirect Type \\"proxy\\" requires a URL as the redirect path.'; $wb['backup_interval_txt'] = 'Backup interval'; $wb['backup_copies_txt'] = 'Number of backup copies'; $wb['ssl_key_txt'] = 'SSL Key'; diff --git a/interface/web/sites/lib/lang/it_web_subdomain.lng b/interface/web/sites/lib/lang/it_web_subdomain.lng index 0019304914..956b5c3be0 100644 --- a/interface/web/sites/lib/lang/it_web_subdomain.lng +++ b/interface/web/sites/lib/lang/it_web_subdomain.lng @@ -42,7 +42,7 @@ $wb['no_flag_txt'] = 'No flag'; $wb['domain_error_wildcard'] = 'Non sono ammessi caratteri jolly per i sottodomini.'; $wb['proxy_directives_txt'] = 'Direttive Proxy'; $wb['available_proxy_directive_snippets_txt'] = 'Snippets Direttive Proxy disponibili:'; -$wb['error_proxy_requires_url'] = 'Tipo reinderizzamento \"proxy\" richiede una URL come percorso di reinderizzamento.'; +$wb['error_proxy_requires_url'] = 'Tipo reinderizzamento \\"proxy\\" richiede una URL come percorso di reinderizzamento.'; $wb['http_port_txt'] = 'HTTP Port'; $wb['https_port_txt'] = 'HTTPS Port'; $wb['http_port_error_regex'] = 'HTTP Port invalid.'; diff --git a/interface/web/sites/lib/lang/ja.lng b/interface/web/sites/lib/lang/ja.lng index 470ec2baec..920064bc5e 100644 --- a/interface/web/sites/lib/lang/ja.lng +++ b/interface/web/sites/lib/lang/ja.lng @@ -31,5 +31,5 @@ $wb['Available packages'] = 'Available packages'; $wb['Installed packages'] = 'Installed packages'; $wb['Update Packagelist'] = 'Update Packagelist'; $wb['Subdomain (Vhost)'] = 'Subdomain (Vhost)'; -$wb['error_proxy_requires_url'] = 'Redirect Type \"proxy\" requires a URL as the redirect path.'; +$wb['error_proxy_requires_url'] = 'Redirect Type \\"proxy\\" requires a URL as the redirect path.'; ?> diff --git a/interface/web/sites/lib/lang/ja_aps.lng b/interface/web/sites/lib/lang/ja_aps.lng index 91f8ad102c..dc6b22edf7 100644 --- a/interface/web/sites/lib/lang/ja_aps.lng +++ b/interface/web/sites/lib/lang/ja_aps.lng @@ -38,14 +38,14 @@ $wb['error_inv_main_location'] = 'The given install location folder is invalid.' $wb['error_license_agreement'] = 'In order to continue you have to accept the license agreement.'; $wb['error_no_database_pw'] = 'You have provided no valid database password.'; $wb['error_short_database_pw'] = 'Please choose a longer database password.'; -$wb['error_no_value_for'] = 'The field \"%s\" must not be empty.'; -$wb['error_short_value_for'] = 'The field \"%s\" requires a longer input value.'; -$wb['error_long_value_for'] = 'The field \"%s\" requires a shorter input value.'; -$wb['error_inv_value_for'] = 'You have entered an invalid value for the field \"%s\".'; -$wb['error_inv_email_for'] = 'You have entered an invalid mail address for the field \"%s\".'; -$wb['error_inv_domain_for'] = 'You have entered an invalid domain for the field \"%s\".'; -$wb['error_inv_integer_for'] = 'You have entered an invalid number for the field \"%s\".'; -$wb['error_inv_float_for'] = 'You have entered an invalid floating point number for the field \"%s\".'; +$wb['error_no_value_for'] = 'The field \\"%s\\" must not be empty.'; +$wb['error_short_value_for'] = 'The field \\"%s\\" requires a longer input value.'; +$wb['error_long_value_for'] = 'The field \\"%s\\" requires a shorter input value.'; +$wb['error_inv_value_for'] = 'You have entered an invalid value for the field \\"%s\\".'; +$wb['error_inv_email_for'] = 'You have entered an invalid mail address for the field \\"%s\\".'; +$wb['error_inv_domain_for'] = 'You have entered an invalid domain for the field \\"%s\\".'; +$wb['error_inv_integer_for'] = 'You have entered an invalid number for the field \\"%s\\".'; +$wb['error_inv_float_for'] = 'You have entered an invalid floating point number for the field \\"%s\\".'; $wb['error_used_location'] = 'The installation path already contains a package installation.'; $wb['installation_task_txt'] = 'Install planned'; $wb['installation_error_txt'] = 'Install error'; diff --git a/interface/web/sites/lib/lang/ja_web_childdomain.lng b/interface/web/sites/lib/lang/ja_web_childdomain.lng index fe885c8c3e..d59d7bbda5 100644 --- a/interface/web/sites/lib/lang/ja_web_childdomain.lng +++ b/interface/web/sites/lib/lang/ja_web_childdomain.lng @@ -42,7 +42,7 @@ $wb['no_flag_txt'] = 'No flag'; $wb['domain_error_wildcard'] = 'Wildcard subdomains are not allowed.'; $wb['proxy_directives_txt'] = 'Proxy Directives'; $wb['available_proxy_directive_snippets_txt'] = 'Available Proxy Directive Snippets:'; -$wb['error_proxy_requires_url'] = 'Redirect Type \"proxy\" requires a URL as the redirect path.'; +$wb['error_proxy_requires_url'] = 'Redirect Type \\"proxy\\" requires a URL as the redirect path.'; $wb['backup_interval_txt'] = 'Backup interval'; $wb['backup_copies_txt'] = 'Number of backup copies'; $wb['ssl_key_txt'] = 'SSL Key'; diff --git a/interface/web/sites/lib/lang/ja_web_subdomain.lng b/interface/web/sites/lib/lang/ja_web_subdomain.lng index f77c98444e..5eb45907ea 100644 --- a/interface/web/sites/lib/lang/ja_web_subdomain.lng +++ b/interface/web/sites/lib/lang/ja_web_subdomain.lng @@ -42,7 +42,7 @@ $wb['no_flag_txt'] = 'No flag'; $wb['domain_error_wildcard'] = 'Wildcard subdomains are not allowed.'; $wb['proxy_directives_txt'] = 'Proxy Directives'; $wb['available_proxy_directive_snippets_txt'] = 'Available Proxy Directive Snippets:'; -$wb['error_proxy_requires_url'] = 'Redirect Type \"proxy\" requires a URL as the redirect path.'; +$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.'; diff --git a/interface/web/sites/lib/lang/nl.lng b/interface/web/sites/lib/lang/nl.lng index 89a4caa109..8e07a1844a 100644 --- a/interface/web/sites/lib/lang/nl.lng +++ b/interface/web/sites/lib/lang/nl.lng @@ -31,5 +31,5 @@ $wb['Available packages'] = 'Beschikbare pakketten'; $wb['Installed packages'] = 'Geïnstalleerde pakketten'; $wb['Update Packagelist'] = 'Pakkettenlijst bijwerken'; $wb['Subdomain (Vhost)'] = 'Subdomein (Vhost)'; -$wb['error_proxy_requires_url'] = 'Redirect Type \"proxy\" requires a URL as the redirect path.'; +$wb['error_proxy_requires_url'] = 'Redirect Type \\"proxy\\" requires a URL as the redirect path.'; ?> diff --git a/interface/web/sites/lib/lang/nl_aps.lng b/interface/web/sites/lib/lang/nl_aps.lng index dfd852dcd0..c0adacee99 100644 --- a/interface/web/sites/lib/lang/nl_aps.lng +++ b/interface/web/sites/lib/lang/nl_aps.lng @@ -38,14 +38,14 @@ $wb['error_inv_main_location'] = 'The given install location folder is invalid.' $wb['error_license_agreement'] = 'In order to continue you have to accept the license agreement.'; $wb['error_no_database_pw'] = 'You have provided no valid database password.'; $wb['error_short_database_pw'] = 'Please choose a longer database password.'; -$wb['error_no_value_for'] = 'The field \"%s\" must not be empty.'; -$wb['error_short_value_for'] = 'The field \"%s\" requires a longer input value.'; -$wb['error_long_value_for'] = 'The field \"%s\" requires a shorter input value.'; -$wb['error_inv_value_for'] = 'You have entered an invalid value for the field \"%s\".'; -$wb['error_inv_email_for'] = 'You have entered an invalid mail address for the field \"%s\".'; -$wb['error_inv_domain_for'] = 'You have entered an invalid domain for the field \"%s\".'; -$wb['error_inv_integer_for'] = 'You have entered an invalid number for the field \"%s\".'; -$wb['error_inv_float_for'] = 'You have entered an invalid floating point number for the field \"%s\".'; +$wb['error_no_value_for'] = 'The field \\"%s\\" must not be empty.'; +$wb['error_short_value_for'] = 'The field \\"%s\\" requires a longer input value.'; +$wb['error_long_value_for'] = 'The field \\"%s\\" requires a shorter input value.'; +$wb['error_inv_value_for'] = 'You have entered an invalid value for the field \\"%s\\".'; +$wb['error_inv_email_for'] = 'You have entered an invalid mail address for the field \\"%s\\".'; +$wb['error_inv_domain_for'] = 'You have entered an invalid domain for the field \\"%s\\".'; +$wb['error_inv_integer_for'] = 'You have entered an invalid number for the field \\"%s\\".'; +$wb['error_inv_float_for'] = 'You have entered an invalid floating point number for the field \\"%s\\".'; $wb['error_used_location'] = 'The installation path already contains a package installation.'; $wb['installation_task_txt'] = 'Install planned'; $wb['installation_error_txt'] = 'Install error'; diff --git a/interface/web/sites/lib/lang/nl_web_childdomain.lng b/interface/web/sites/lib/lang/nl_web_childdomain.lng index 4c5b3dc2ad..e99616ce11 100644 --- a/interface/web/sites/lib/lang/nl_web_childdomain.lng +++ b/interface/web/sites/lib/lang/nl_web_childdomain.lng @@ -42,7 +42,7 @@ $wb['no_flag_txt'] = 'No flag'; $wb['domain_error_wildcard'] = 'Wildcard subdomains are not allowed.'; $wb['proxy_directives_txt'] = 'Proxy Directives'; $wb['available_proxy_directive_snippets_txt'] = 'Available Proxy Directive Snippets:'; -$wb['error_proxy_requires_url'] = 'Redirect Type \"proxy\" requires a URL as the redirect path.'; +$wb['error_proxy_requires_url'] = 'Redirect Type \\"proxy\\" requires a URL as the redirect path.'; $wb['backup_interval_txt'] = 'Backup interval'; $wb['backup_copies_txt'] = 'Number of backup copies'; $wb['ssl_key_txt'] = 'SSL Key'; diff --git a/interface/web/sites/lib/lang/nl_web_subdomain.lng b/interface/web/sites/lib/lang/nl_web_subdomain.lng index c644d8113d..2f4412afba 100644 --- a/interface/web/sites/lib/lang/nl_web_subdomain.lng +++ b/interface/web/sites/lib/lang/nl_web_subdomain.lng @@ -42,7 +42,7 @@ $wb['no_flag_txt'] = 'Geen flag'; $wb['domain_error_wildcard'] = 'Wildcard subdomeinen zijn niet toegestaan.'; $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['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 niet correct.'; diff --git a/interface/web/sites/lib/lang/pl_aps.lng b/interface/web/sites/lib/lang/pl_aps.lng index 398c74e4c0..c17bbca532 100644 --- a/interface/web/sites/lib/lang/pl_aps.lng +++ b/interface/web/sites/lib/lang/pl_aps.lng @@ -38,14 +38,14 @@ $wb['error_inv_main_location'] = 'Instalacja w podanym folderze jest niemożliwa $wb['error_license_agreement'] = 'Aby kontynuować musisz zaakceptować umowÄ™ licencyjnÄ….'; $wb['error_no_database_pw'] = 'Nie podaÅ‚eÅ› prawidÅ‚owego hasÅ‚a do bazy danych.'; $wb['error_short_database_pw'] = 'Wybierz dÅ‚uższe hasÅ‚o do bazy.'; -$wb['error_no_value_for'] = 'Pole \"%s\" nie może być puste'; -$wb['error_short_value_for'] = 'Pole \"%s\" wymaga dÅ‚uższej wartoÅ›ci'; -$wb['error_long_value_for'] = 'Pole \"%s\" wymaga krótszej wartoÅ›ci'; -$wb['error_inv_value_for'] = 'WprowadziÅ‚eÅ› nieprawidÅ‚owÄ… wartość w polu \"%s\"'; -$wb['error_inv_email_for'] = 'WprowadziÅ‚eÅ› nieprawidÅ‚owy adres email w polu \"%s\"'; -$wb['error_inv_domain_for'] = 'WprowadziÅ‚eÅ› nieprawidÅ‚owÄ… domenÄ™ w polu \"%s\"'; -$wb['error_inv_integer_for'] = 'WprowadziÅ‚eÅ› nieprawidÅ‚owÄ… liczbÄ™ w polu \"%s\"'; -$wb['error_inv_float_for'] = 'WprowadziÅ‚eÅ› nieprawidÅ‚owÄ… liczbÄ™ w polu \"%s\"'; +$wb['error_no_value_for'] = 'Pole \\"%s\\" nie może być puste'; +$wb['error_short_value_for'] = 'Pole \\"%s\\" wymaga dÅ‚uższej wartoÅ›ci'; +$wb['error_long_value_for'] = 'Pole \\"%s\\" wymaga krótszej wartoÅ›ci'; +$wb['error_inv_value_for'] = 'WprowadziÅ‚eÅ› nieprawidÅ‚owÄ… wartość w polu \\"%s\\"'; +$wb['error_inv_email_for'] = 'WprowadziÅ‚eÅ› nieprawidÅ‚owy adres email w polu \\"%s\\"'; +$wb['error_inv_domain_for'] = 'WprowadziÅ‚eÅ› nieprawidÅ‚owÄ… domenÄ™ w polu \\"%s\\"'; +$wb['error_inv_integer_for'] = 'WprowadziÅ‚eÅ› nieprawidÅ‚owÄ… liczbÄ™ w polu \\"%s\\"'; +$wb['error_inv_float_for'] = 'WprowadziÅ‚eÅ› nieprawidÅ‚owÄ… liczbÄ™ w polu \\"%s\\"'; $wb['error_used_location'] = 'Åšcieżka instalacji zawiera już zainstalowany pakiet.'; $wb['installation_task_txt'] = 'Instalacja planowana'; $wb['installation_error_txt'] = 'BÅ‚Ä…d instalacji'; diff --git a/interface/web/sites/lib/lang/pt.lng b/interface/web/sites/lib/lang/pt.lng index 6cd9798fa1..c1fca015b8 100644 --- a/interface/web/sites/lib/lang/pt.lng +++ b/interface/web/sites/lib/lang/pt.lng @@ -31,5 +31,5 @@ $wb['Available packages'] = 'Available packages'; $wb['Installed packages'] = 'Installed packages'; $wb['Update Packagelist'] = 'Update Packagelist'; $wb['Subdomain (Vhost)'] = 'Subdomain (Vhost)'; -$wb['error_proxy_requires_url'] = 'Redirect Type \"proxy\" requires a URL as the redirect path.'; +$wb['error_proxy_requires_url'] = 'Redirect Type \\"proxy\\" requires a URL as the redirect path.'; ?> diff --git a/interface/web/sites/lib/lang/pt_aps.lng b/interface/web/sites/lib/lang/pt_aps.lng index 33c4e87266..c17ef00914 100644 --- a/interface/web/sites/lib/lang/pt_aps.lng +++ b/interface/web/sites/lib/lang/pt_aps.lng @@ -38,14 +38,14 @@ $wb['error_inv_main_location'] = 'The given install location folder is invalid.' $wb['error_license_agreement'] = 'In order to continue you have to accept the license agreement.'; $wb['error_no_database_pw'] = 'You have provided no valid database password.'; $wb['error_short_database_pw'] = 'Please choose a longer database password.'; -$wb['error_no_value_for'] = 'The field \"%s\" must not be empty.'; -$wb['error_short_value_for'] = 'The field \"%s\" requires a longer input value.'; -$wb['error_long_value_for'] = 'The field \"%s\" requires a shorter input value.'; -$wb['error_inv_value_for'] = 'You have entered an invalid value for the field \"%s\".'; -$wb['error_inv_email_for'] = 'You have entered an invalid mail address for the field \"%s\".'; -$wb['error_inv_domain_for'] = 'You have entered an invalid domain for the field \"%s\".'; -$wb['error_inv_integer_for'] = 'You have entered an invalid number for the field \"%s\".'; -$wb['error_inv_float_for'] = 'You have entered an invalid floating point number for the field \"%s\".'; +$wb['error_no_value_for'] = 'The field \\"%s\\" must not be empty.'; +$wb['error_short_value_for'] = 'The field \\"%s\\" requires a longer input value.'; +$wb['error_long_value_for'] = 'The field \\"%s\\" requires a shorter input value.'; +$wb['error_inv_value_for'] = 'You have entered an invalid value for the field \\"%s\\".'; +$wb['error_inv_email_for'] = 'You have entered an invalid mail address for the field \\"%s\\".'; +$wb['error_inv_domain_for'] = 'You have entered an invalid domain for the field \\"%s\\".'; +$wb['error_inv_integer_for'] = 'You have entered an invalid number for the field \\"%s\\".'; +$wb['error_inv_float_for'] = 'You have entered an invalid floating point number for the field \\"%s\\".'; $wb['error_used_location'] = 'The installation path already contains a package installation.'; $wb['installation_task_txt'] = 'Install planned'; $wb['installation_error_txt'] = 'Install error'; diff --git a/interface/web/sites/lib/lang/pt_web_childdomain.lng b/interface/web/sites/lib/lang/pt_web_childdomain.lng index 688af77bd2..4cbc032c19 100644 --- a/interface/web/sites/lib/lang/pt_web_childdomain.lng +++ b/interface/web/sites/lib/lang/pt_web_childdomain.lng @@ -42,7 +42,7 @@ $wb['no_flag_txt'] = 'No flag'; $wb['domain_error_wildcard'] = 'Wildcard subdomains are not allowed.'; $wb['proxy_directives_txt'] = 'Proxy Directives'; $wb['available_proxy_directive_snippets_txt'] = 'Available Proxy Directive Snippets:'; -$wb['error_proxy_requires_url'] = 'Redirect Type \"proxy\" requires a URL as the redirect path.'; +$wb['error_proxy_requires_url'] = 'Redirect Type \\"proxy\\" requires a URL as the redirect path.'; $wb['backup_interval_txt'] = 'Backup interval'; $wb['backup_copies_txt'] = 'Number of backup copies'; $wb['ssl_key_txt'] = 'SSL Key'; diff --git a/interface/web/sites/lib/lang/pt_web_subdomain.lng b/interface/web/sites/lib/lang/pt_web_subdomain.lng index 8f2fd70e46..8a4f1440fd 100644 --- a/interface/web/sites/lib/lang/pt_web_subdomain.lng +++ b/interface/web/sites/lib/lang/pt_web_subdomain.lng @@ -42,7 +42,7 @@ $wb['no_flag_txt'] = 'No flag'; $wb['domain_error_wildcard'] = 'Wildcard subdomains are not allowed.'; $wb['proxy_directives_txt'] = 'Proxy Directives'; $wb['available_proxy_directive_snippets_txt'] = 'Available Proxy Directive Snippets:'; -$wb['error_proxy_requires_url'] = 'Redirect Type \"proxy\" requires a URL as the redirect path.'; +$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.'; diff --git a/interface/web/sites/lib/lang/ro.lng b/interface/web/sites/lib/lang/ro.lng index 418585ea55..f674e91b80 100644 --- a/interface/web/sites/lib/lang/ro.lng +++ b/interface/web/sites/lib/lang/ro.lng @@ -31,5 +31,5 @@ $wb['Available packages'] = 'Available packages'; $wb['Installed packages'] = 'Installed packages'; $wb['Update Packagelist'] = 'Update Packagelist'; $wb['Subdomain (Vhost)'] = 'Subdomain (Vhost)'; -$wb['error_proxy_requires_url'] = 'Redirect Type \"proxy\" requires a URL as the redirect path.'; +$wb['error_proxy_requires_url'] = 'Redirect Type \\"proxy\\" requires a URL as the redirect path.'; ?> diff --git a/interface/web/sites/lib/lang/ro_aps.lng b/interface/web/sites/lib/lang/ro_aps.lng index 3ff130f57e..881c146a4d 100644 --- a/interface/web/sites/lib/lang/ro_aps.lng +++ b/interface/web/sites/lib/lang/ro_aps.lng @@ -38,14 +38,14 @@ $wb['error_inv_main_location'] = 'The given install location folder is invalid.' $wb['error_license_agreement'] = 'In order to continue you have to accept the license agreement.'; $wb['error_no_database_pw'] = 'You have provided no valid database password.'; $wb['error_short_database_pw'] = 'Please choose a longer database password.'; -$wb['error_no_value_for'] = 'The field \"%s\" must not be empty.'; -$wb['error_short_value_for'] = 'The field \"%s\" requires a longer input value.'; -$wb['error_long_value_for'] = 'The field \"%s\" requires a shorter input value.'; -$wb['error_inv_value_for'] = 'You have entered an invalid value for the field \"%s\".'; -$wb['error_inv_email_for'] = 'You have entered an invalid mail address for the field \"%s\".'; -$wb['error_inv_domain_for'] = 'You have entered an invalid domain for the field \"%s\".'; -$wb['error_inv_integer_for'] = 'You have entered an invalid number for the field \"%s\".'; -$wb['error_inv_float_for'] = 'You have entered an invalid floating point number for the field \"%s\".'; +$wb['error_no_value_for'] = 'The field \\"%s\\" must not be empty.'; +$wb['error_short_value_for'] = 'The field \\"%s\\" requires a longer input value.'; +$wb['error_long_value_for'] = 'The field \\"%s\\" requires a shorter input value.'; +$wb['error_inv_value_for'] = 'You have entered an invalid value for the field \\"%s\\".'; +$wb['error_inv_email_for'] = 'You have entered an invalid mail address for the field \\"%s\\".'; +$wb['error_inv_domain_for'] = 'You have entered an invalid domain for the field \\"%s\\".'; +$wb['error_inv_integer_for'] = 'You have entered an invalid number for the field \\"%s\\".'; +$wb['error_inv_float_for'] = 'You have entered an invalid floating point number for the field \\"%s\\".'; $wb['error_used_location'] = 'The installation path already contains a package installation.'; $wb['installation_task_txt'] = 'Install planned'; $wb['installation_error_txt'] = 'Install error'; diff --git a/interface/web/sites/lib/lang/ro_web_childdomain.lng b/interface/web/sites/lib/lang/ro_web_childdomain.lng index 5f56786510..30f83e7283 100644 --- a/interface/web/sites/lib/lang/ro_web_childdomain.lng +++ b/interface/web/sites/lib/lang/ro_web_childdomain.lng @@ -43,7 +43,7 @@ $wb['no_flag_txt'] = 'No flag'; $wb['domain_error_wildcard'] = 'Wildcard subdomains are not allowed.'; $wb['proxy_directives_txt'] = 'Proxy Directives'; $wb['available_proxy_directive_snippets_txt'] = 'Available Proxy Directive Snippets:'; -$wb['error_proxy_requires_url'] = 'Redirect Type \"proxy\" requires a URL as the redirect path.'; +$wb['error_proxy_requires_url'] = 'Redirect Type \\"proxy\\" requires a URL as the redirect path.'; $wb['backup_interval_txt'] = 'Backup interval'; $wb['backup_copies_txt'] = 'Number of backup copies'; $wb['ssl_key_txt'] = 'SSL Key'; diff --git a/interface/web/sites/lib/lang/ro_web_subdomain.lng b/interface/web/sites/lib/lang/ro_web_subdomain.lng index 436acc4cf9..f36685be8a 100644 --- a/interface/web/sites/lib/lang/ro_web_subdomain.lng +++ b/interface/web/sites/lib/lang/ro_web_subdomain.lng @@ -42,7 +42,7 @@ $wb['no_flag_txt'] = 'No flag'; $wb['domain_error_wildcard'] = 'Wildcard subdomains are not allowed.'; $wb['proxy_directives_txt'] = 'Proxy Directives'; $wb['available_proxy_directive_snippets_txt'] = 'Available Proxy Directive Snippets:'; -$wb['error_proxy_requires_url'] = 'Redirect Type \"proxy\" requires a URL as the redirect path.'; +$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.'; diff --git a/interface/web/sites/lib/lang/ru.lng b/interface/web/sites/lib/lang/ru.lng index 6316c21d17..dbf2926043 100644 --- a/interface/web/sites/lib/lang/ru.lng +++ b/interface/web/sites/lib/lang/ru.lng @@ -31,5 +31,5 @@ $wb['Available packages'] = 'ДоÑтупные пакеты'; $wb['Installed packages'] = 'УÑтановленные пакеты'; $wb['Update Packagelist'] = 'Обновить ÑпиÑок пакетов'; $wb['Subdomain (Vhost)'] = 'Поддомен (Vhost)'; -$wb['error_proxy_requires_url'] = 'Тип редиректа \"proxy\" требует URL в качеÑтве пути перенаправлениÑ.'; +$wb['error_proxy_requires_url'] = 'Тип редиректа \\"proxy\\" требует URL в качеÑтве пути перенаправлениÑ.'; ?> diff --git a/interface/web/sites/lib/lang/ru_aps.lng b/interface/web/sites/lib/lang/ru_aps.lng index 3dd4ad0a8a..d2225358c1 100644 --- a/interface/web/sites/lib/lang/ru_aps.lng +++ b/interface/web/sites/lib/lang/ru_aps.lng @@ -38,14 +38,14 @@ $wb['error_inv_main_location'] = 'Ð’Ñ‹ указали некорректную $wb['error_license_agreement'] = 'Ð”Ð»Ñ Ð¿Ñ€Ð¾Ð´Ð¾Ð»Ð¶ÐµÐ½Ð¸Ñ Ð½ÑƒÐ¶Ð½Ð¾ принÑÑ‚ÑŒ лицензионное Ñоглашение.'; $wb['error_no_database_pw'] = 'Ð’Ñ‹ предоÑтавили не правильный пароль базы данных.'; $wb['error_short_database_pw'] = 'ПожалуйÑта, выберите более длинный пароль базы данных.'; -$wb['error_no_value_for'] = 'Поле \"%s\" не может быть пуÑтым.'; -$wb['error_short_value_for'] = 'Поле \"%s\" требует более длинного входного значениÑ.'; -$wb['error_long_value_for'] = 'Поле \"%s\"требует более короткого входного значениÑ.'; -$wb['error_inv_value_for'] = 'Ð’Ñ‹ ввели неверное значение Ð´Ð»Ñ Ð¿Ð¾Ð»Ñ \"%s\".'; -$wb['error_inv_email_for'] = 'Ð’Ñ‹ ввели некорректный Ð°Ð´Ñ€ÐµÑ Ñлектронной почты Ð´Ð»Ñ Ð¿Ð¾Ð»Ñ \"%s\".'; -$wb['error_inv_domain_for'] = 'Ð’Ñ‹ ввели некорректный домен Ð´Ð»Ñ Ð¿Ð¾Ð»Ñ \"%s\".'; -$wb['error_inv_integer_for'] = 'Ð’Ñ‹ ввели некорректное чиÑло Ð´Ð»Ñ Ð¿Ð¾Ð»Ñ \"%s\".'; -$wb['error_inv_float_for'] = 'Ð’Ñ‹ ввели некорректное чиÑло Ñ Ð¿Ð»Ð°Ð²Ð°ÑŽÑ‰ÐµÐ¹ точкой Ð´Ð»Ñ Ð¿Ð¾Ð»Ñ \"%s\".'; +$wb['error_no_value_for'] = 'Поле \\"%s\\" не может быть пуÑтым.'; +$wb['error_short_value_for'] = 'Поле \\"%s\\" требует более длинного входного значениÑ.'; +$wb['error_long_value_for'] = 'Поле \\"%s\\"требует более короткого входного значениÑ.'; +$wb['error_inv_value_for'] = 'Ð’Ñ‹ ввели неверное значение Ð´Ð»Ñ Ð¿Ð¾Ð»Ñ \\"%s\\".'; +$wb['error_inv_email_for'] = 'Ð’Ñ‹ ввели некорректный Ð°Ð´Ñ€ÐµÑ Ñлектронной почты Ð´Ð»Ñ Ð¿Ð¾Ð»Ñ \\"%s\\".'; +$wb['error_inv_domain_for'] = 'Ð’Ñ‹ ввели некорректный домен Ð´Ð»Ñ Ð¿Ð¾Ð»Ñ \\"%s\\".'; +$wb['error_inv_integer_for'] = 'Ð’Ñ‹ ввели некорректное чиÑло Ð´Ð»Ñ Ð¿Ð¾Ð»Ñ \\"%s\\".'; +$wb['error_inv_float_for'] = 'Ð’Ñ‹ ввели некорректное чиÑло Ñ Ð¿Ð»Ð°Ð²Ð°ÑŽÑ‰ÐµÐ¹ точкой Ð´Ð»Ñ Ð¿Ð¾Ð»Ñ \\"%s\\".'; $wb['error_used_location'] = 'Путь уÑтановки уже Ñодержит уÑтановочный пакет.'; $wb['installation_task_txt'] = 'Запланирована уÑтановка'; $wb['installation_error_txt'] = 'Ошибка уÑтановки'; diff --git a/interface/web/sites/lib/lang/ru_database.lng b/interface/web/sites/lib/lang/ru_database.lng index b931b715f2..0f5eaf3180 100644 --- a/interface/web/sites/lib/lang/ru_database.lng +++ b/interface/web/sites/lib/lang/ru_database.lng @@ -13,7 +13,7 @@ $wb['database_name_error_unique'] = 'Ð˜Ð¼Ñ Ð±Ð°Ð·Ñ‹ данных уже Ñущ $wb['database_name_error_regex'] = 'Ðеверное Ð¸Ð¼Ñ Ð±Ð°Ð·Ñ‹ данных. Ð˜Ð¼Ñ Ð±Ð°Ð·Ñ‹ данных может Ñодержать только Ñледующие Ñимволы: a-z, A-Z, 0-9 и нижний пробел _. Длина: 2 - 64 Ñимвола.'; $wb['database_user_error_empty'] = 'Логин базы данных пуÑтой'; $wb['database_user_error_unique'] = 'Такой пользователь базы данных уже ÑущеÑтвует. Что бы получить уникальное имÑ, например, Ñложите название Ñайта и ваше имÑ.'; -$wb['database_user_error_regex'] = 'Ðекорректный логин Ð´Ð»Ñ Ð±Ð°Ð·Ñ‹ данных. Логин может Ñодержать только Ñледующие Ñимволы: a-z, A-Z, 0-9 и \"_\". Длина: 2 - 16 Ñимволов.'; +$wb['database_user_error_regex'] = 'Ðекорректный логин Ð´Ð»Ñ Ð±Ð°Ð·Ñ‹ данных. Логин может Ñодержать только Ñледующие Ñимволы: a-z, A-Z, 0-9 и \\"_\\". Длина: 2 - 16 Ñимволов.'; $wb['limit_database_txt'] = 'ДоÑтигнуто макÑимальное количеÑтво БД.'; $wb['database_name_change_txt'] = 'Ð˜Ð¼Ñ Ð±Ð°Ð·Ñ‹ данных не может быть изменено.'; $wb['database_charset_change_txt'] = 'Кодировка базы данных не может быть изменена'; diff --git a/interface/web/sites/lib/lang/ru_database_user.lng b/interface/web/sites/lib/lang/ru_database_user.lng index df927317ca..7de99a11dc 100644 --- a/interface/web/sites/lib/lang/ru_database_user.lng +++ b/interface/web/sites/lib/lang/ru_database_user.lng @@ -6,7 +6,7 @@ $wb['client_txt'] = 'Клиент'; $wb['active_txt'] = 'Ðктивно'; $wb['database_user_error_empty'] = 'Логин базы данных пуÑтой'; $wb['database_user_error_unique'] = 'Такой пользователь базы данных уже ÑущеÑтвует. Что бы получить уникальное имÑ, например, Ñложите название Ñайта и ваше имÑ.'; -$wb['database_user_error_regex'] = 'Ðекорректный логин Ð´Ð»Ñ Ð±Ð°Ð·Ñ‹ данных. Логин может Ñодержать только Ñледующие Ñимволы: a-z, A-Z, 0-9 и \"_\". Длина: 2 - 16 Ñимволов.'; +$wb['database_user_error_regex'] = 'Ðекорректный логин Ð´Ð»Ñ Ð±Ð°Ð·Ñ‹ данных. Логин может Ñодержать только Ñледующие Ñимволы: a-z, A-Z, 0-9 и \\"_\\". Длина: 2 - 16 Ñимволов.'; $wb['database_user_error_len'] = 'Логин Ð´Ð»Ñ Ð±Ð°Ð·Ñ‹ данных - {user} - cлишком длинный. МакÑÐ¸Ð¼Ð°Ð»ÑŒÐ½Ð°Ñ Ð´Ð»Ð¸Ð½Ð° логина - 16 Ñимволов'; $wb['btn_save_txt'] = 'Сохранить'; $wb['btn_cancel_txt'] = 'Отменить'; diff --git a/interface/web/sites/lib/lang/ru_web_childdomain.lng b/interface/web/sites/lib/lang/ru_web_childdomain.lng index 49905e77ea..af71669a47 100644 --- a/interface/web/sites/lib/lang/ru_web_childdomain.lng +++ b/interface/web/sites/lib/lang/ru_web_childdomain.lng @@ -42,7 +42,7 @@ $wb['no_flag_txt'] = 'Ðет флага'; $wb['domain_error_wildcard'] = 'Wildcard поддомены не допуÑкаютÑÑ.'; $wb['proxy_directives_txt'] = 'Директивы прокÑи'; $wb['available_proxy_directive_snippets_txt'] = 'ДоÑтупные заготовки директив Proxy:'; -$wb['error_proxy_requires_url'] = 'Тип редиректа \"proxy\" требует URL в качеÑтве пути перенаправлениÑ.'; +$wb['error_proxy_requires_url'] = 'Тип редиректа \\"proxy\\" требует URL в качеÑтве пути перенаправлениÑ.'; $wb['backup_interval_txt'] = 'Интервал резервного копированиÑ'; $wb['backup_copies_txt'] = 'КоличеÑтво резервных копий'; $wb['ssl_key_txt'] = 'SSL-ключ'; diff --git a/interface/web/sites/lib/lang/ru_web_subdomain.lng b/interface/web/sites/lib/lang/ru_web_subdomain.lng index 46203a1815..376c789430 100644 --- a/interface/web/sites/lib/lang/ru_web_subdomain.lng +++ b/interface/web/sites/lib/lang/ru_web_subdomain.lng @@ -42,7 +42,7 @@ $wb['no_flag_txt'] = 'Ðет флага'; $wb['domain_error_wildcard'] = 'Wildcard-поддомены не допуÑкаютÑÑ.'; $wb['proxy_directives_txt'] = 'Директивы прокÑи'; $wb['available_proxy_directive_snippets_txt'] = 'ДоÑтупные заготовки директив Proxy:'; -$wb['error_proxy_requires_url'] = 'Тип редиректа \"proxy\" требует URL в качеÑтве пути перенаправлениÑ.'; +$wb['error_proxy_requires_url'] = 'Тип редиректа \\"proxy\\" требует URL в качеÑтве пути перенаправлениÑ.'; $wb['http_port_txt'] = 'Порт HTTP'; $wb['https_port_txt'] = 'Порт HTTPS'; $wb['http_port_error_regex'] = 'Ðекорректный порт HTTP.'; diff --git a/interface/web/sites/lib/lang/se.lng b/interface/web/sites/lib/lang/se.lng index a63670545c..6b44cdcf7c 100644 --- a/interface/web/sites/lib/lang/se.lng +++ b/interface/web/sites/lib/lang/se.lng @@ -31,5 +31,5 @@ $wb['Available packages'] = 'Tillgängliga paket'; $wb['Installed packages'] = 'Installerade paket'; $wb['Update Packagelist'] = 'Uppdatera paketlista'; $wb['Subdomain (Vhost)'] = 'Underdomän (Vhost)'; -$wb['error_proxy_requires_url'] = 'Redirect Type \"proxy\" requires a URL as the redirect path.'; +$wb['error_proxy_requires_url'] = 'Redirect Type \\"proxy\\" requires a URL as the redirect path.'; ?> diff --git a/interface/web/sites/lib/lang/se_aps.lng b/interface/web/sites/lib/lang/se_aps.lng index f399880dea..3b32095d62 100644 --- a/interface/web/sites/lib/lang/se_aps.lng +++ b/interface/web/sites/lib/lang/se_aps.lng @@ -38,14 +38,14 @@ $wb['error_inv_main_location'] = 'The given install location folder is invalid.' $wb['error_license_agreement'] = 'In order to continue you have to accept the license agreement.'; $wb['error_no_database_pw'] = 'You have provided no valid database password.'; $wb['error_short_database_pw'] = 'Please choose a longer database password.'; -$wb['error_no_value_for'] = 'The field \"%s\" must not be empty.'; -$wb['error_short_value_for'] = 'The field \"%s\" requires a longer input value.'; -$wb['error_long_value_for'] = 'The field \"%s\" requires a shorter input value.'; -$wb['error_inv_value_for'] = 'You have entered an invalid value for the field \"%s\".'; -$wb['error_inv_email_for'] = 'You have entered an invalid mail address for the field \"%s\".'; -$wb['error_inv_domain_for'] = 'You have entered an invalid domain for the field \"%s\".'; -$wb['error_inv_integer_for'] = 'You have entered an invalid number for the field \"%s\".'; -$wb['error_inv_float_for'] = 'You have entered an invalid floating point number for the field \"%s\".'; +$wb['error_no_value_for'] = 'The field \\"%s\\" must not be empty.'; +$wb['error_short_value_for'] = 'The field \\"%s\\" requires a longer input value.'; +$wb['error_long_value_for'] = 'The field \\"%s\\" requires a shorter input value.'; +$wb['error_inv_value_for'] = 'You have entered an invalid value for the field \\"%s\\".'; +$wb['error_inv_email_for'] = 'You have entered an invalid mail address for the field \\"%s\\".'; +$wb['error_inv_domain_for'] = 'You have entered an invalid domain for the field \\"%s\\".'; +$wb['error_inv_integer_for'] = 'You have entered an invalid number for the field \\"%s\\".'; +$wb['error_inv_float_for'] = 'You have entered an invalid floating point number for the field \\"%s\\".'; $wb['error_used_location'] = 'The installation path already contains a package installation.'; $wb['installation_task_txt'] = 'Installation planerad'; $wb['installation_error_txt'] = 'Installationsfel'; diff --git a/interface/web/sites/lib/lang/se_web_childdomain.lng b/interface/web/sites/lib/lang/se_web_childdomain.lng index 52fba020aa..eff6791c65 100644 --- a/interface/web/sites/lib/lang/se_web_childdomain.lng +++ b/interface/web/sites/lib/lang/se_web_childdomain.lng @@ -43,7 +43,7 @@ $wb['no_flag_txt'] = 'No flag'; $wb['domain_error_wildcard'] = 'Wildcard subdomains are not allowed.'; $wb['proxy_directives_txt'] = 'Proxy Directives'; $wb['available_proxy_directive_snippets_txt'] = 'Available Proxy Directive Snippets:'; -$wb['error_proxy_requires_url'] = 'Redirect Type \"proxy\" requires a URL as the redirect path.'; +$wb['error_proxy_requires_url'] = 'Redirect Type \\"proxy\\" requires a URL as the redirect path.'; $wb['backup_interval_txt'] = 'Backup interval'; $wb['backup_copies_txt'] = 'Number of backup copies'; $wb['ssl_key_txt'] = 'SSL Key'; diff --git a/interface/web/sites/lib/lang/se_web_subdomain.lng b/interface/web/sites/lib/lang/se_web_subdomain.lng index a2d73c012d..ec784641e8 100644 --- a/interface/web/sites/lib/lang/se_web_subdomain.lng +++ b/interface/web/sites/lib/lang/se_web_subdomain.lng @@ -42,7 +42,7 @@ $wb['no_flag_txt'] = 'Ingan flagga'; $wb['domain_error_wildcard'] = 'Wildcard subdomains are not allowed.'; $wb['proxy_directives_txt'] = 'Proxy Directives'; $wb['available_proxy_directive_snippets_txt'] = 'Available Proxy Directive Snippets:'; -$wb['error_proxy_requires_url'] = 'Redirect Type \"proxy\" requires a URL as the redirect path.'; +$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.'; diff --git a/interface/web/sites/lib/lang/sk.lng b/interface/web/sites/lib/lang/sk.lng index 401ad2c65d..fabf52fda0 100644 --- a/interface/web/sites/lib/lang/sk.lng +++ b/interface/web/sites/lib/lang/sk.lng @@ -31,5 +31,5 @@ $wb['Available packages'] = 'Available packages'; $wb['Installed packages'] = 'Installed packages'; $wb['Update Packagelist'] = 'Update Packagelist'; $wb['Subdomain (Vhost)'] = 'Subdomain (Vhost)'; -$wb['error_proxy_requires_url'] = 'Redirect Type \"proxy\" requires a URL as the redirect path.'; +$wb['error_proxy_requires_url'] = 'Redirect Type \\"proxy\\" requires a URL as the redirect path.'; ?> diff --git a/interface/web/sites/lib/lang/sk_aps.lng b/interface/web/sites/lib/lang/sk_aps.lng index 2b3dc9a0ff..d6e6c7f4ca 100644 --- a/interface/web/sites/lib/lang/sk_aps.lng +++ b/interface/web/sites/lib/lang/sk_aps.lng @@ -38,14 +38,14 @@ $wb['error_inv_main_location'] = 'The given install location folder is invalid.' $wb['error_license_agreement'] = 'In order to continue you have to accept the license agreement.'; $wb['error_no_database_pw'] = 'You have provided no valid database password.'; $wb['error_short_database_pw'] = 'Please choose a longer database password.'; -$wb['error_no_value_for'] = 'The field \"%s\" must not be empty.'; -$wb['error_short_value_for'] = 'The field \"%s\" requires a longer input value.'; -$wb['error_long_value_for'] = 'The field \"%s\" requires a shorter input value.'; -$wb['error_inv_value_for'] = 'You have entered an invalid value for the field \"%s\".'; -$wb['error_inv_email_for'] = 'You have entered an invalid mail address for the field \"%s\".'; -$wb['error_inv_domain_for'] = 'You have entered an invalid domain for the field \"%s\".'; -$wb['error_inv_integer_for'] = 'You have entered an invalid number for the field \"%s\".'; -$wb['error_inv_float_for'] = 'You have entered an invalid floating point number for the field \"%s\".'; +$wb['error_no_value_for'] = 'The field \\"%s\\" must not be empty.'; +$wb['error_short_value_for'] = 'The field \\"%s\\" requires a longer input value.'; +$wb['error_long_value_for'] = 'The field \\"%s\\" requires a shorter input value.'; +$wb['error_inv_value_for'] = 'You have entered an invalid value for the field \\"%s\\".'; +$wb['error_inv_email_for'] = 'You have entered an invalid mail address for the field \\"%s\\".'; +$wb['error_inv_domain_for'] = 'You have entered an invalid domain for the field \\"%s\\".'; +$wb['error_inv_integer_for'] = 'You have entered an invalid number for the field \\"%s\\".'; +$wb['error_inv_float_for'] = 'You have entered an invalid floating point number for the field \\"%s\\".'; $wb['error_used_location'] = 'The installation path already contains a package installation.'; $wb['installation_task_txt'] = 'Install planned'; $wb['installation_error_txt'] = 'Install error'; diff --git a/interface/web/sites/lib/lang/sk_web_childdomain.lng b/interface/web/sites/lib/lang/sk_web_childdomain.lng index c91bee49ac..e0d26667bc 100644 --- a/interface/web/sites/lib/lang/sk_web_childdomain.lng +++ b/interface/web/sites/lib/lang/sk_web_childdomain.lng @@ -42,7 +42,7 @@ $wb['no_flag_txt'] = 'No flag'; $wb['domain_error_wildcard'] = 'Wildcard subdomains are not allowed.'; $wb['proxy_directives_txt'] = 'Proxy Directives'; $wb['available_proxy_directive_snippets_txt'] = 'Available Proxy Directive Snippets:'; -$wb['error_proxy_requires_url'] = 'Redirect Type \"proxy\" requires a URL as the redirect path.'; +$wb['error_proxy_requires_url'] = 'Redirect Type \\"proxy\\" requires a URL as the redirect path.'; $wb['backup_interval_txt'] = 'Backup interval'; $wb['backup_copies_txt'] = 'Number of backup copies'; $wb['ssl_key_txt'] = 'SSL Key'; diff --git a/interface/web/sites/lib/lang/sk_web_subdomain.lng b/interface/web/sites/lib/lang/sk_web_subdomain.lng index d44bb27bd6..f6bcffd901 100644 --- a/interface/web/sites/lib/lang/sk_web_subdomain.lng +++ b/interface/web/sites/lib/lang/sk_web_subdomain.lng @@ -42,7 +42,7 @@ $wb['no_flag_txt'] = 'No flag'; $wb['domain_error_wildcard'] = 'Wildcard subdomains are not allowed.'; $wb['proxy_directives_txt'] = 'Proxy Directives'; $wb['available_proxy_directive_snippets_txt'] = 'Available Proxy Directive Snippets:'; -$wb['error_proxy_requires_url'] = 'Redirect Type \"proxy\" requires a URL as the redirect path.'; +$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.'; diff --git a/interface/web/sites/lib/lang/tr.lng b/interface/web/sites/lib/lang/tr.lng index 4f8620c34a..d0570f6c12 100644 --- a/interface/web/sites/lib/lang/tr.lng +++ b/interface/web/sites/lib/lang/tr.lng @@ -31,5 +31,5 @@ $wb['Available packages'] = 'Kullanılabilecek Paketler'; $wb['Installed packages'] = 'Yüklü Paketler'; $wb['Update Packagelist'] = 'Güncelleme Paketi Listesi'; $wb['Subdomain (Vhost)'] = 'Alt alan adı (SSunucu)'; -$wb['error_proxy_requires_url'] = '\"Vekil Sunucu\" yönlendirme tipi için, yönlendirilecek yolu gösteren bir Ä°nternet adresi gereklidir.'; +$wb['error_proxy_requires_url'] = '\\"Vekil Sunucu\\" yönlendirme tipi için, yönlendirilecek yolu gösteren bir Ä°nternet adresi gereklidir.'; ?> diff --git a/interface/web/sites/lib/lang/tr_aps.lng b/interface/web/sites/lib/lang/tr_aps.lng index f0eea59cba..1c6ccd49a6 100644 --- a/interface/web/sites/lib/lang/tr_aps.lng +++ b/interface/web/sites/lib/lang/tr_aps.lng @@ -40,14 +40,14 @@ $wb['error_inv_main_location'] = 'Yazdığınız yükleme konumunu klasörü ge $wb['error_license_agreement'] = 'Devam etmek için lisans anlaÅŸmasını onaylamalısınız.'; $wb['error_no_database_pw'] = 'Yazdığınız veritabanı parolası geçersiz.'; $wb['error_short_database_pw'] = 'Lütfen daha uzun bir veritabanı parolası yazın.'; -$wb['error_no_value_for'] = '\"%s\" alanı boÅŸ olamaz.'; -$wb['error_short_value_for'] = '\"%s\" alanına daha uzun bir deÄŸer yazılmalıdır.'; -$wb['error_long_value_for'] = '\"%s\" alanına daha kısa bir deÄŸer yazılmalıdır.'; -$wb['error_inv_value_for'] = '\"%s\" alanına yazılan deÄŸer geçersiz.'; -$wb['error_inv_email_for'] = '\"%s\" alanına yazılan e-posta adresi geçersiz.'; -$wb['error_inv_domain_for'] = '\"%s\" alanına yazılan alan adı geçersiz.'; -$wb['error_inv_integer_for'] = '\"%s\" alanına yazılan sayı geçersiz.'; -$wb['error_inv_float_for'] = '\"%s\" alanına yazılan küsuratlı sayı geçersiz.'; +$wb['error_no_value_for'] = '\\"%s\\" alanı boÅŸ olamaz.'; +$wb['error_short_value_for'] = '\\"%s\\" alanına daha uzun bir deÄŸer yazılmalıdır.'; +$wb['error_long_value_for'] = '\\"%s\\" alanına daha kısa bir deÄŸer yazılmalıdır.'; +$wb['error_inv_value_for'] = '\\"%s\\" alanına yazılan deÄŸer geçersiz.'; +$wb['error_inv_email_for'] = '\\"%s\\" alanına yazılan e-posta adresi geçersiz.'; +$wb['error_inv_domain_for'] = '\\"%s\\" alanına yazılan alan adı geçersiz.'; +$wb['error_inv_integer_for'] = '\\"%s\\" alanına yazılan sayı geçersiz.'; +$wb['error_inv_float_for'] = '\\"%s\\" alanına yazılan küsuratlı sayı geçersiz.'; $wb['error_used_location'] = 'Yükleme yoluna daha önce yüklenmiÅŸ bir paket var.'; $wb['installation_task_txt'] = 'Yükleme planlandı'; $wb['installation_error_txt'] = 'Yükleme hatası'; diff --git a/interface/web/sites/lib/lang/tr_web_childdomain.lng b/interface/web/sites/lib/lang/tr_web_childdomain.lng index 5d68e809b3..e11c6a92b5 100644 --- a/interface/web/sites/lib/lang/tr_web_childdomain.lng +++ b/interface/web/sites/lib/lang/tr_web_childdomain.lng @@ -42,7 +42,7 @@ $wb['no_flag_txt'] = 'No flag'; $wb['domain_error_wildcard'] = 'Wildcard subdomains are not allowed.'; $wb['proxy_directives_txt'] = 'Proxy Directives'; $wb['available_proxy_directive_snippets_txt'] = 'Available Proxy Directive Snippets:'; -$wb['error_proxy_requires_url'] = 'Redirect Type \"proxy\" requires a URL as the redirect path.'; +$wb['error_proxy_requires_url'] = 'Redirect Type \\"proxy\\" requires a URL as the redirect path.'; $wb['backup_interval_txt'] = 'Backup interval'; $wb['backup_copies_txt'] = 'Number of backup copies'; $wb['ssl_key_txt'] = 'SSL Key'; diff --git a/interface/web/sites/lib/lang/tr_web_subdomain.lng b/interface/web/sites/lib/lang/tr_web_subdomain.lng index c6e28bc6fa..188b257589 100644 --- a/interface/web/sites/lib/lang/tr_web_subdomain.lng +++ b/interface/web/sites/lib/lang/tr_web_subdomain.lng @@ -42,7 +42,7 @@ $wb['no_redirect_txt'] = 'Yönlendirme yok'; $wb['no_flag_txt'] = 'Ä°ÅŸaret yok'; $wb['proxy_directives_txt'] = 'Vekil Sunucu Yönergeleri'; $wb['available_proxy_directive_snippets_txt'] = 'Kullanılabilecek Vekil Sunucu Yönerge Parçaları:'; -$wb['error_proxy_requires_url'] = '\"Vekil Sunucu\" yönlendirme tipi için, yönlendirilecek yolu gösteren bir Ä°nternet adresi gereklidir.'; +$wb['error_proxy_requires_url'] = '\\"Vekil Sunucu\\" yönlendirme tipi için, yönlendirilecek yolu gösteren bir Ä°nternet adresi gereklidir.'; $wb['http_port_txt'] = 'HTTP Port'; $wb['https_port_txt'] = 'HTTPS Port'; $wb['http_port_error_regex'] = 'HTTP Port invalid.'; diff --git a/interface/web/vm/lib/lang/dk_openvz_template.lng b/interface/web/vm/lib/lang/dk_openvz_template.lng index 7016f41a67..9de4a6fd92 100644 --- a/interface/web/vm/lib/lang/dk_openvz_template.lng +++ b/interface/web/vm/lib/lang/dk_openvz_template.lng @@ -44,7 +44,7 @@ $wb['tcpsndbuf_desc_txt'] = 'Total størrelse af TCP send buffere.'; $wb['tcprcvbuf_desc_txt'] = 'Total størrelse af TCP modtage buffere.'; $wb['othersockbuf_desc_txt'] = 'Total størrelse af UNIX-domæne sokel buffere, UDP og andre datagram protokoller send buffere.'; $wb['dgramrcvbuf_desc_txt'] = 'Modtage buffere af UDP og andre datagram protokoller.'; -$wb['oomguarpages_desc_txt'] = 'Den garanterede mængde hukommelse for det tilfælde hukommelsen er \"over-booked\" (out-of-memory kill guarantee), i sider.'; +$wb['oomguarpages_desc_txt'] = 'Den garanterede mængde hukommelse for det tilfælde hukommelsen er \\"over-booked\\" (out-of-memory kill guarantee), i sider.'; $wb['privvmpages_desc_txt'] = 'Hukommelses grænse tildeling, i sider.'; $wb['lockedpages_desc_txt'] = 'Proces-sider uden tiladelse til at blive byttet ud (pages locked by mlock(2)).'; $wb['shmpages_desc_txt'] = 'Total størrelse af delt hukommelse (IPC, delt anonyme afbildninger og tmpfs objekter), i sider.'; diff --git a/interface/web/vm/lib/lang/es_openvz_template.lng b/interface/web/vm/lib/lang/es_openvz_template.lng index 1868240d3e..1abd562ed5 100644 --- a/interface/web/vm/lib/lang/es_openvz_template.lng +++ b/interface/web/vm/lib/lang/es_openvz_template.lng @@ -44,7 +44,7 @@ $wb['tcpsndbuf_desc_txt'] = 'Tamaño total de los buffers de envÃo TCP.'; $wb['tcprcvbuf_desc_txt'] = 'Tamaño total de los buffers de recepción TCP.'; $wb['othersockbuf_desc_txt'] = 'Tamaño total de buffers de socket UNIX-domain, UDP y otros protocolos de envÃo para buffers de datagramas.'; $wb['dgramrcvbuf_desc_txt'] = 'Recibir buffers de UDP y otros protocolos de datagrama.'; -$wb['oomguarpages_desc_txt'] = 'La cantidad de memoria garantizada en caso de que la memoria \"over-booked\" (garantizado para out-of-memory kill), en las páginas.'; +$wb['oomguarpages_desc_txt'] = 'La cantidad de memoria garantizada en caso de que la memoria \\"over-booked\\" (garantizado para out-of-memory kill), en las páginas.'; $wb['privvmpages_desc_txt'] = 'LÃmite de asignación de memoria en las páginas.'; $wb['lockedpages_desc_txt'] = 'Páginas de procesos sin permisos para sacar del swap (páginas bloqueadas por mlock(2)).'; $wb['shmpages_desc_txt'] = 'Tamaño total de memoria compatida (IPC, asignaciones anónimas compartidas y objetos tmpfs), en las páginas.'; diff --git a/interface/web/vm/lib/lang/tr_openvz_template.lng b/interface/web/vm/lib/lang/tr_openvz_template.lng index 2621212862..fb1452e885 100644 --- a/interface/web/vm/lib/lang/tr_openvz_template.lng +++ b/interface/web/vm/lib/lang/tr_openvz_template.lng @@ -44,7 +44,7 @@ $wb['tcpsndbuf_desc_txt'] = 'TCP gönderme arabelleÄŸinin toplam boyutu.'; $wb['tcprcvbuf_desc_txt'] = 'TCP alma arabelleÄŸinin toplam boyutu.'; $wb['othersockbuf_desc_txt'] = 'UNIX alan adı soket arabelleÄŸinin toplam boyutu, UDP ve diÄŸer datagram iletiÅŸim kuralları gönderme ara bellekleri.'; $wb['dgramrcvbuf_desc_txt'] = 'UDP ve diÄŸer datagram iletiÅŸim kuralları alma ara bellekleri.'; -$wb['oomguarpages_desc_txt'] = 'Bellek sayfası cinsinden, bellek taÅŸması durumlarında garanti edilen bellek miktarı\" (bellek bitti boÅŸaltma garantisi).'; +$wb['oomguarpages_desc_txt'] = 'Bellek sayfası cinsinden, bellek taÅŸması durumlarında garanti edilen bellek miktarı\\" (bellek bitti boÅŸaltma garantisi).'; $wb['privvmpages_desc_txt'] = 'Bellek sayfası cinsinden ayrılacak bellek sınırı.'; $wb['lockedpages_desc_txt'] = 'Ä°ÅŸlem sayfaları takasına izin verilmez (mlock(2) ile kilitlenmiÅŸ sayfalar).'; $wb['shmpages_desc_txt'] = 'Bellek sayfası cinsinden, paylaşılan belleÄŸin toplam boyutu (IPC, paylaşılan anonim haritalama ve tmpfs nesneleri).'; -- GitLab From 9f745c2b9d37a496900e44565c2b47ce48802655 Mon Sep 17 00:00:00 2001 From: Herman van Rink <rink@initfour.nl> Date: Tue, 30 Jul 2019 22:16:39 +0200 Subject: [PATCH 174/215] Improve comments --- interface/lib/classes/remote.d/mail.inc.php | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/interface/lib/classes/remote.d/mail.inc.php b/interface/lib/classes/remote.d/mail.inc.php index bda7e861ed..477743dfc3 100644 --- a/interface/lib/classes/remote.d/mail.inc.php +++ b/interface/lib/classes/remote.d/mail.inc.php @@ -710,7 +710,7 @@ class remoting_mail extends remoting { return $app->remoting_lib->getDataRecord($primary_id); } - //* czarna lista e-mail + //* Add a new spamfilter blacklist public function mail_spamfilter_blacklist_add($session_id, $client_id, $params) { if (!$this->checkPerm($session_id, 'mail_spamfilter_blacklist_add')) @@ -810,7 +810,7 @@ class remoting_mail extends remoting { return $app->remoting_lib->getDataRecord($primary_id); } - //* polityki filtrów spamu e-mail + //* Add a spam policy public function mail_policy_add($session_id, $client_id, $params) { if (!$this->checkPerm($session_id, 'mail_policy_add')) @@ -860,7 +860,7 @@ class remoting_mail extends remoting { return $app->remoting_lib->getDataRecord($primary_id); } - //* fetchmail + //* Add fetchmail public function mail_fetchmail_add($session_id, $client_id, $params) { if (!$this->checkPerm($session_id, 'mail_fetchmail_add')) @@ -960,7 +960,7 @@ class remoting_mail extends remoting { return $app->remoting_lib->getDataRecord($primary_id); } - //* wpisy biaÅ‚ej listy + //* Add blacklist public function mail_blacklist_add($session_id, $client_id, $params) { if (!$this->checkPerm($session_id, 'mail_blacklist_add')) @@ -1010,7 +1010,7 @@ class remoting_mail extends remoting { return $app->remoting_lib->getDataRecord($primary_id); } - //* wpisy filtrow e-mail + //* Add mail filter public function mail_filter_add($session_id, $client_id, $params) { if (!$this->checkPerm($session_id, 'mail_filter_add')) -- GitLab From c830e6e714737f97d149d93d63dd8c745d89ffe7 Mon Sep 17 00:00:00 2001 From: Herman van Rink <rink@initfour.nl> Date: Tue, 30 Jul 2019 22:17:15 +0200 Subject: [PATCH 175/215] codestyle --- interface/lib/classes/validate_autoresponder.inc.php | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/interface/lib/classes/validate_autoresponder.inc.php b/interface/lib/classes/validate_autoresponder.inc.php index 8fefa33b30..25db68bdd9 100755 --- a/interface/lib/classes/validate_autoresponder.inc.php +++ b/interface/lib/classes/validate_autoresponder.inc.php @@ -53,8 +53,8 @@ class validate_autoresponder extends validate_datetime // Parse date $datetimeformat = (isset($app->remoting_lib) ? $app->remoting_lib->datetimeformat : $app->tform->datetimeformat); - $start_date_array = date_parse_from_format($datetimeformat,$start_date); - $end_date_array = date_parse_from_format($datetimeformat,$field_value); + $start_date_array = date_parse_from_format($datetimeformat, $start_date); + $end_date_array = date_parse_from_format($datetimeformat, $field_value); //calculate timestamps $start_date_tstamp = mktime($start_date_array['hour'], $start_date_array['minute'], $start_date_array['second'], $start_date_array['month'], $start_date_array['day'], $start_date_array['year']); -- GitLab From c7c1671b0a180bfdf9fb032f8e23484541af5958 Mon Sep 17 00:00:00 2001 From: Herman van Rink <rink@initfour.nl> Date: Tue, 30 Jul 2019 22:18:02 +0200 Subject: [PATCH 176/215] Add extra field explanation --- remoting_client/API-docs/mail_spamfilter_blacklist_add.html | 2 +- remoting_client/API-docs/mail_spamfilter_user_add.html | 2 +- remoting_client/examples/mail_spamfilter_blacklist_add.php | 2 +- 3 files changed, 3 insertions(+), 3 deletions(-) diff --git a/remoting_client/API-docs/mail_spamfilter_blacklist_add.html b/remoting_client/API-docs/mail_spamfilter_blacklist_add.html index c45c5d60f0..198f7b6b23 100644 --- a/remoting_client/API-docs/mail_spamfilter_blacklist_add.html +++ b/remoting_client/API-docs/mail_spamfilter_blacklist_add.html @@ -21,7 +21,7 @@ <p class="headgrp">Parameters (in <span class="var">$params</span>): </p> <p class="margin"> server_id (<span class="paratype">int(11)</span>)</p> <p class="margin"> wb (<span class="paratype">enum('W','B')</span>)</p> -<p class="margin"> rid (<span class="paratype">int(11)</span>)</p> +<p class="margin"> rid (<span class="paratype">int(11)</span>) An ID from the spamfilter_users table.</p> <p class="margin"> email (<span class="paratype">varchar(255)</span>)</p> <p class="margin"> priority (<span class="paratype">tinyint(3)</span>)</p> <p class="margin"> active (<span class="paratype">enum('n','y')</span>)</p> diff --git a/remoting_client/API-docs/mail_spamfilter_user_add.html b/remoting_client/API-docs/mail_spamfilter_user_add.html index c23a9dbd42..888c74ab70 100644 --- a/remoting_client/API-docs/mail_spamfilter_user_add.html +++ b/remoting_client/API-docs/mail_spamfilter_user_add.html @@ -24,7 +24,7 @@ <p class="margin"> policy_id (<span class="paratype">int(11)</span>)</p> <p class="margin"> email (<span class="paratype">varchar(255)</span>)</p> <p class="margin"> fullname (<span class="paratype">varchar(64)</span>)</p> -<p class="margin"> local (<span class="paratype">varchar(1)</span>)</p> +<p class="margin"> local (<span class="paratype">varchar(1)</span>) 'Y' for a local account.</p> <p class="headgrp">Output: </p> <p class="margin"> Returns the ID of the newly added spamfilter user.</p> <!--<b>Output:</b> diff --git a/remoting_client/examples/mail_spamfilter_blacklist_add.php b/remoting_client/examples/mail_spamfilter_blacklist_add.php index d5768e2536..b5d8a7f80a 100644 --- a/remoting_client/examples/mail_spamfilter_blacklist_add.php +++ b/remoting_client/examples/mail_spamfilter_blacklist_add.php @@ -19,7 +19,7 @@ try { $params = array( 'server_id' => 1, 'wb' => 'B', - 'rid' => '', + 'rid' => '', // Fill in an ID from the spamfilter_users table. 'email' => 'hmmnoe@test.int', 'priority' => 1, 'active' => 'y' -- GitLab From 96416c321a42f10d1abdd10a5e00137a1f45bb1d Mon Sep 17 00:00:00 2001 From: Herman van Rink <rink@initfour.nl> Date: Tue, 30 Jul 2019 22:20:00 +0200 Subject: [PATCH 177/215] Add missing autoresponder_subject field in api docs --- remoting_client/API-docs/mail_user_add.html | 1 + remoting_client/examples/mail_user_add.php | 1 + 2 files changed, 2 insertions(+) diff --git a/remoting_client/API-docs/mail_user_add.html b/remoting_client/API-docs/mail_user_add.html index b88ec706cc..88ab952e6a 100644 --- a/remoting_client/API-docs/mail_user_add.html +++ b/remoting_client/API-docs/mail_user_add.html @@ -36,6 +36,7 @@ <p class="margin"> autoresponder_start_date (<span class="paratype">datetime</span>)</p> <p class="margin"> autoresponder_end_date (<span class="paratype">datetime</span>)</p> <p class="margin"> autoresponder_text (<span class="paratype">mediumtext</span>)</p> +<p class="margin"> autoresponder_subject (<span class="paratype">varchar(255)</span>)</p> <p class="margin"> move_junk (<span class="paratype">enum('n','y')</span>)</p> <p class="margin"> custom_mailfilter (<span class="paratype">mediumtext</span>)</p> <p class="margin"> postfix (<span class="paratype">enum('n','y')</span>)</p> diff --git a/remoting_client/examples/mail_user_add.php b/remoting_client/examples/mail_user_add.php index 3b7d240ecc..80a7358cf9 100644 --- a/remoting_client/examples/mail_user_add.php +++ b/remoting_client/examples/mail_user_add.php @@ -32,6 +32,7 @@ try { 'autoresponder_start_date' => '', 'autoresponder_end_date' => '', 'autoresponder_text' => 'hallo', + 'autoresponder_subject' => 'Out of office reply', 'move_junk' => 'n', 'custom_mailfilter' => 'spam', 'postfix' => 'n', -- GitLab From 0efec5c38a5d51634a2ea07437ae97bffa1fb274 Mon Sep 17 00:00:00 2001 From: Herman van Rink <rink@initfour.nl> Date: Fri, 2 Aug 2019 22:31:51 +0200 Subject: [PATCH 178/215] Wrap long query for readability --- install/tpl/mysql-virtual_policy_greylist.cf.master | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/install/tpl/mysql-virtual_policy_greylist.cf.master b/install/tpl/mysql-virtual_policy_greylist.cf.master index 00f504e082..55378b29ca 100644 --- a/install/tpl/mysql-virtual_policy_greylist.cf.master +++ b/install/tpl/mysql-virtual_policy_greylist.cf.master @@ -1,6 +1,10 @@ user = {mysql_server_ispconfig_user} password = {mysql_server_ispconfig_password} dbname = {mysql_server_database} -query = SELECT 'greylisting' FROM (SELECT `greylisting`, 1 as `prio` FROM `mail_user` WHERE `server_id` = {server_id} AND `email` = '%s' UNION SELECT `greylisting`, 2 as `prio` FROM `mail_forwarding` WHERE `server_id` = {server_id} AND `source` = '%s' UNION SELECT `greylisting`, 3 as `prio` FROM `mail_forwarding` WHERE `server_id` = {server_id} AND `source` = '@%d' ORDER BY `prio` ASC LIMIT 1) as rules WHERE rules.greylisting = 'y' +query = SELECT 'greylisting' FROM + (SELECT `greylisting`, 1 as `prio` FROM `mail_user` WHERE `server_id` = {server_id} AND `email` = '%s' + UNION SELECT `greylisting`, 2 as `prio` FROM `mail_forwarding` WHERE `server_id` = {server_id} AND `source` = '%s' + UNION SELECT `greylisting`, 3 as `prio` FROM `mail_forwarding` WHERE `server_id` = {server_id} AND `source` = '@%d' ORDER BY `prio` ASC LIMIT 1) as rules + WHERE rules.greylisting = 'y' -hosts = {mysql_server_ip} \ No newline at end of file +hosts = {mysql_server_ip} -- GitLab From 1f46e8a23e2975631c6d8e924aedb2098fcaf481 Mon Sep 17 00:00:00 2001 From: Ales Seifert <ales@web4people.com.au> Date: Thu, 5 Sep 2019 09:19:47 +0200 Subject: [PATCH 179/215] updated to recognize newer Centos 7 releases & to recognize recent openSUSE even if not supported --- server/lib/classes/monitor_tools.inc.php | 11 ++++++++++- 1 file changed, 10 insertions(+), 1 deletion(-) diff --git a/server/lib/classes/monitor_tools.inc.php b/server/lib/classes/monitor_tools.inc.php index fefdbcd681..b2bd5ede30 100644 --- a/server/lib/classes/monitor_tools.inc.php +++ b/server/lib/classes/monitor_tools.inc.php @@ -249,6 +249,14 @@ class monitor_tools { $distver = '11.2'; $distid = 'opensuse112'; $distbaseid = 'opensuse'; + } elseif(stristr(file_get_contents('/etc/os-release'), 'opensuse')) { + $content = file_get_contents('/etc/os-release'); + preg_match_all('/NAME=\"([\w ]+)\"/m', $content, $name); + preg_match_all('/VERSION_ID=\"([0-9]{1,2})\.?([0-9]{0,2})\.?([0-9]*).$/m', $content, $version); + $distname = is_array($name) ? $name[1][0] : 'openSUSE'; + $distver = is_array($version) ? implode('.', array_filter([$version[1][0],$version[2][0],$version[3][0]],'strlen')) : 'Unknown'; + $distid = 'opensuse112'; + $distbaseid = 'opensuse'; } else { $distname = 'openSUSE'; $distver = 'Unknown'; @@ -299,8 +307,9 @@ class monitor_tools { $distid = 'centos53'; $distbaseid = 'fedora'; } elseif(stristr($content, 'CentOS Linux release 7')) { + preg_match_all('/([0-9]{1,2})\.?([0-9]{0,2})\.?([0-9]*)/', $content, $version); $distname = 'CentOS'; - $distver = 'Unknown'; + $distver = is_array($version)? implode('.', array_filter([$version[1][0],$version[2][0],$version[3][0]],'strlen')) :'Unknown'; $distbaseid = 'fedora'; $var=explode(" ", $content); $var=explode(".", $var[3]); -- GitLab From 8f4ed6281c06fcb677a981c74e62560a9573f18f Mon Sep 17 00:00:00 2001 From: Herman van Rink <rink@initfour.nl> Date: Sat, 20 Oct 2018 21:52:03 +0200 Subject: [PATCH 180/215] typo --- install/dist/tpl/gentoo/amavisd-ispconfig.conf.master | 2 +- install/tpl/amavisd_user_config.master | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/install/dist/tpl/gentoo/amavisd-ispconfig.conf.master b/install/dist/tpl/gentoo/amavisd-ispconfig.conf.master index 5e1c8ebba6..7e42c8a362 100644 --- a/install/dist/tpl/gentoo/amavisd-ispconfig.conf.master +++ b/install/dist/tpl/gentoo/amavisd-ispconfig.conf.master @@ -67,7 +67,7 @@ $final_spam_destiny = D_DISCARD; $final_banned_destiny = D_BOUNCE; $final_bad_header_destiny = D_PASS; -# Default settings, we st this very high to not filter aut emails accidently +# Default settings, we set this very high to not filter out emails accidentally $sa_spam_subject_tag = '***SPAM*** '; $sa_tag_level_deflt = 20.0; # add spam info headers if at, or above that level $sa_tag2_level_deflt = 60.0; # add 'spam detected' headers at that level diff --git a/install/tpl/amavisd_user_config.master b/install/tpl/amavisd_user_config.master index 2738eac3a9..344ea9a152 100644 --- a/install/tpl/amavisd_user_config.master +++ b/install/tpl/amavisd_user_config.master @@ -49,7 +49,7 @@ $final_spam_destiny = D_DISCARD; $final_banned_destiny = D_BOUNCE; $final_bad_header_destiny = D_PASS; -# Default settings, we st this very high to not filter aut emails accidently +# Default settings, we set this very high to not filter out emails accidentally $sa_spam_subject_tag = '***SPAM*** '; $sa_tag_level_deflt = 20.0; # add spam info headers if at, or above that level $sa_tag2_level_deflt = 60.0; # add 'spam detected' headers at that level -- GitLab From 9e7a9eb1351f1d4eb23103fb5230caa5725645db Mon Sep 17 00:00:00 2001 From: Herman van Rink <rink@initfour.nl> Date: Thu, 20 Jun 2019 13:53:49 +0200 Subject: [PATCH 181/215] Improve comments --- interface/lib/plugins/mail_user_filter_plugin.inc.php | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) diff --git a/interface/lib/plugins/mail_user_filter_plugin.inc.php b/interface/lib/plugins/mail_user_filter_plugin.inc.php index 5afd1c0044..26c0b02b83 100644 --- a/interface/lib/plugins/mail_user_filter_plugin.inc.php +++ b/interface/lib/plugins/mail_user_filter_plugin.inc.php @@ -55,9 +55,9 @@ class mail_user_filter_plugin { /* - function to create the mail filter rule and insert it into the custom rules - field when a new mail filter is added or modified. - */ + * Render the mail filter rule in the desired format and insert it into the custom rules + * field when a new mail filter is added or modified. + */ function mail_user_filter_edit($event_name, $page_form) { global $app, $conf; @@ -91,6 +91,9 @@ class mail_user_filter_plugin { } + /* + * Remove the rendered filter from custom_mailfilter when a mail_user_filter is deleted + */ function mail_user_filter_del($event_name, $page_form) { global $app, $conf; -- GitLab From 92f977d3eec6b87aff217f83a4bd4baf2c899c56 Mon Sep 17 00:00:00 2001 From: Herman van Rink <rink@initfour.nl> Date: Thu, 20 Jun 2019 15:38:34 +0200 Subject: [PATCH 182/215] Consistent comments, German vs English Some were already in English, most were still in German. --- .../admin/form/directive_snippets.tform.php | 2 +- interface/web/admin/form/firewall.tform.php | 2 +- .../web/admin/form/remote_user.tform.php | 2 +- interface/web/admin/form/server.tform.php | 4 ++-- .../web/admin/form/server_config.tform.php | 22 +++++++++---------- interface/web/admin/form/server_php.tform.php | 4 ++-- .../web/admin/form/system_config.tform.php | 10 ++++----- interface/web/client/form/client.tform.php | 2 +- interface/web/client/form/domain.tform.php | 2 +- interface/web/client/form/reseller.tform.php | 2 +- interface/web/dns/form/dns_a.tform.php | 2 +- interface/web/dns/form/dns_aaaa.tform.php | 2 +- interface/web/dns/form/dns_alias.tform.php | 2 +- interface/web/dns/form/dns_cname.tform.php | 2 +- interface/web/dns/form/dns_dkim.tform.php | 2 +- interface/web/dns/form/dns_dmarc.tform.php | 2 +- interface/web/dns/form/dns_ds.tform.php | 2 +- interface/web/dns/form/dns_hinfo.tform.php | 2 +- interface/web/dns/form/dns_loc.tform.php | 2 +- interface/web/dns/form/dns_mx.tform.php | 2 +- interface/web/dns/form/dns_ns.tform.php | 2 +- interface/web/dns/form/dns_ptr.tform.php | 2 +- interface/web/dns/form/dns_rp.tform.php | 2 +- interface/web/dns/form/dns_slave.tform.php | 2 +- interface/web/dns/form/dns_soa.tform.php | 4 ++-- interface/web/dns/form/dns_spf.tform.php | 2 +- interface/web/dns/form/dns_srv.tform.php | 2 +- interface/web/dns/form/dns_template.tform.php | 2 +- interface/web/dns/form/dns_tlsa.tform.php | 2 +- interface/web/dns/form/dns_txt.tform.php | 2 +- .../web/help/form/support_message.tform.php | 2 +- interface/web/mail/form/mail_alias.tform.php | 2 +- .../web/mail/form/mail_aliasdomain.tform.php | 2 +- .../web/mail/form/mail_blacklist.tform.php | 2 +- .../mail/form/mail_content_filter.tform.php | 2 +- interface/web/mail/form/mail_domain.tform.php | 2 +- .../mail/form/mail_domain_catchall.tform.php | 2 +- .../web/mail/form/mail_forward.tform.php | 2 +- interface/web/mail/form/mail_get.tform.php | 2 +- .../mail/form/mail_relay_recipient.tform.php | 2 +- .../web/mail/form/mail_spamfilter.tform.php | 2 +- .../web/mail/form/mail_transport.tform.php | 2 +- interface/web/mail/form/mail_user.tform.php | 2 +- .../web/mail/form/mail_user_filter.tform.php | 2 +- .../web/mail/form/mail_whitelist.tform.php | 2 +- .../mail/form/spamfilter_blacklist.tform.php | 2 +- .../web/mail/form/spamfilter_config.tform.php | 6 ++--- .../web/mail/form/spamfilter_policy.tform.php | 6 ++--- .../web/mail/form/spamfilter_users.tform.php | 2 +- .../mail/form/spamfilter_whitelist.tform.php | 2 +- .../mailuser/form/mail_user_filter.tform.php | 2 +- interface/web/sites/form/cron.tform.php | 2 +- interface/web/sites/form/database.tform.php | 2 +- .../web/sites/form/database_user.tform.php | 2 +- interface/web/sites/form/ftp_user.tform.php | 6 ++--- interface/web/sites/form/shell_user.tform.php | 4 ++-- .../web/sites/form/web_childdomain.tform.php | 4 ++-- interface/web/sites/form/web_folder.tform.php | 2 +- .../web/sites/form/web_folder_user.tform.php | 2 +- .../web/sites/form/web_vhost_domain.tform.php | 12 +++++----- .../web/sites/form/webdav_user.tform.php | 2 +- 61 files changed, 91 insertions(+), 91 deletions(-) diff --git a/interface/web/admin/form/directive_snippets.tform.php b/interface/web/admin/form/directive_snippets.tform.php index 544cb8b855..d451a50795 100644 --- a/interface/web/admin/form/directive_snippets.tform.php +++ b/interface/web/admin/form/directive_snippets.tform.php @@ -123,7 +123,7 @@ $form["tabs"]['directive_snippets'] = array ( 'separator' => ',', ), //################################# - // ENDE Datatable fields + // END Datatable fields //################################# ) ); diff --git a/interface/web/admin/form/firewall.tform.php b/interface/web/admin/form/firewall.tform.php index 75f190b3f0..e136b345be 100644 --- a/interface/web/admin/form/firewall.tform.php +++ b/interface/web/admin/form/firewall.tform.php @@ -103,7 +103,7 @@ $form["tabs"]['firewall'] = array ( 'value' => array(0 => 'n', 1 => 'y') ), //################################# - // ENDE Datatable fields + // END Datatable fields //################################# ) ); diff --git a/interface/web/admin/form/remote_user.tform.php b/interface/web/admin/form/remote_user.tform.php index 895d9418a9..3b920ccb4a 100644 --- a/interface/web/admin/form/remote_user.tform.php +++ b/interface/web/admin/form/remote_user.tform.php @@ -151,7 +151,7 @@ $form["tabs"]['remote_user'] = array ( ) //################################# - // ENDE Datatable fields + // END Datatable fields //################################# ) ); diff --git a/interface/web/admin/form/server.tform.php b/interface/web/admin/form/server.tform.php index 95dca6c33b..f205758a8d 100644 --- a/interface/web/admin/form/server.tform.php +++ b/interface/web/admin/form/server.tform.php @@ -135,7 +135,7 @@ $form["tabs"]['services'] = array ( 'value' => array(0 => 'No', 1 => 'Yes') ), //################################# - // ENDE Datatable fields + // END Datatable fields //################################# ) ); @@ -160,7 +160,7 @@ $form["tabs"]['config'] = array ( 'maxlength' => '' ), ################################## - # ENDE Datatable fields + # END Datatable fields ################################## ) ); diff --git a/interface/web/admin/form/server_config.tform.php b/interface/web/admin/form/server_config.tform.php index 1c19d0928b..2663cdd0e0 100644 --- a/interface/web/admin/form/server_config.tform.php +++ b/interface/web/admin/form/server_config.tform.php @@ -413,7 +413,7 @@ $form["tabs"]['server'] = array( 'value' => array(0 => 'n', 1 => 'y') ), //################################# - // ENDE Datatable fields + // END Datatable fields //################################# ) ); @@ -699,7 +699,7 @@ $form["tabs"]['mail'] = array( 'value' => array(0 => 'n', 1 => 'y') ), //################################# - // ENDE Datatable fields + // END Datatable fields //################################# ) ); @@ -727,7 +727,7 @@ $form["tabs"]['getmail'] = array( 'maxlength' => '255' ), //################################# - // ENDE Datatable fields + // END Datatable fields //################################# ) ); @@ -1408,7 +1408,7 @@ $form["tabs"]['web'] = array( 'maxlength' => '255' ), //################################# - // ENDE Datatable fields + // END Datatable fields //################################# ) ); @@ -1498,7 +1498,7 @@ $form["tabs"]['dns'] = array( 'value' => array(0 => 'n', 1 => 'y') ), //################################# - // ENDE Datatable fields + // END Datatable fields //################################# ) ); @@ -1615,7 +1615,7 @@ $form["tabs"]['fastcgi'] = array( 'maxlength' => '255' ), //################################# - // ENDE Datatable fields + // END Datatable fields //################################# ) ); @@ -1778,7 +1778,7 @@ $form["tabs"]['jailkit'] = array( 'maxlength' => '1000' ), //################################# - // ENDE Datatable fields + // END Datatable fields //################################# ) ); @@ -1841,7 +1841,7 @@ $form["tabs"]['ufw_firewall'] = array ( 'value' => array('low' => 'low', 'medium' => 'medium', 'high' => 'high') ) ################################## - # ENDE Datatable fields + # END Datatable fields ################################## ) ); @@ -1870,7 +1870,7 @@ $form["tabs"]['vlogger'] = array( 'maxlength' => '255' ), //################################# - // ENDE Datatable fields + // END Datatable fields //################################# ) ); @@ -1928,7 +1928,7 @@ $form["tabs"]['cron'] = array( 'maxlength' => '255' ), //################################# - // ENDE Datatable fields + // END Datatable fields //################################# ) ); @@ -1972,7 +1972,7 @@ $form["tabs"]['rescue'] = array( 'value' => array(0 => 'n', 1 => 'y') ), //################################# - // ENDE Datatable fields + // END Datatable fields //################################# ) ); diff --git a/interface/web/admin/form/server_php.tform.php b/interface/web/admin/form/server_php.tform.php index 67e54ec6b5..6d443e8d50 100644 --- a/interface/web/admin/form/server_php.tform.php +++ b/interface/web/admin/form/server_php.tform.php @@ -174,7 +174,7 @@ $form["tabs"]['php_fastcgi'] = array( 'maxlength' => '255' ), //################################# - // ENDE Datatable fields + // END Datatable fields //################################# ) ); @@ -230,7 +230,7 @@ $form["tabs"]['php_fpm'] = array( 'maxlength' => '255' ), //################################# - // ENDE Datatable fields + // END Datatable fields //################################# ) ); diff --git a/interface/web/admin/form/system_config.tform.php b/interface/web/admin/form/system_config.tform.php index 3fe7f0c7e3..cb37cbefdd 100644 --- a/interface/web/admin/form/system_config.tform.php +++ b/interface/web/admin/form/system_config.tform.php @@ -211,7 +211,7 @@ $form["tabs"]['sites'] = array ( 'value' => array('no' => 'Disabled', 'fast-cgi' => 'Fast-CGI', 'cgi' => 'CGI', 'mod' => 'Mod-PHP', 'suphp' => 'SuPHP', 'php-fpm' => 'PHP-FPM', 'hhvm' => 'HHVM') ), //################################# - // ENDE Datatable fields + // END Datatable fields //################################# ) ); @@ -397,7 +397,7 @@ $form["tabs"]['mail'] = array ( 'name' => 'default_mailserver' ), //################################# - // ENDE Datatable fields + // END Datatable fields //################################# ) ); @@ -433,7 +433,7 @@ $form["tabs"]['dns'] = array ( 'name' => 'default_slave_dnsserver' ), //################################# - // ENDE Datatable fields + // END Datatable fields //################################# ) ); @@ -463,7 +463,7 @@ $form["tabs"]['domains'] = array ( 'value' => '' ), //################################# - // ENDE Datatable fields + // END Datatable fields //################################# ) ); @@ -735,7 +735,7 @@ $form["tabs"]['misc'] = array ( 'value' => array('' => 'None', '1' => 'strength_1', '2' => 'strength_2', '3' => 'strength_3', '4' => 'strength_4', '5' => 'strength_5') ) //################################# - // ENDE Datatable fields + // END Datatable fields //################################# ) ); diff --git a/interface/web/client/form/client.tform.php b/interface/web/client/form/client.tform.php index 07ca813bf5..5b45ffb972 100644 --- a/interface/web/client/form/client.tform.php +++ b/interface/web/client/form/client.tform.php @@ -1518,7 +1518,7 @@ $form["tabs"]['ipaddress'] = array ( 'separator' => ';' ), ################################## - # ENDE Datatable fields + # END Datatable fields ################################## ) ); diff --git a/interface/web/client/form/domain.tform.php b/interface/web/client/form/domain.tform.php index 549617e713..2d3e1dbdd1 100644 --- a/interface/web/client/form/domain.tform.php +++ b/interface/web/client/form/domain.tform.php @@ -109,7 +109,7 @@ $form["tabs"]['domain'] = array ( 'maxlength' => '255' ), //################################# - // ENDE Datatable fields + // END Datatable fields //################################# ) ); diff --git a/interface/web/client/form/reseller.tform.php b/interface/web/client/form/reseller.tform.php index 6231895f28..174c18081d 100644 --- a/interface/web/client/form/reseller.tform.php +++ b/interface/web/client/form/reseller.tform.php @@ -1560,7 +1560,7 @@ $form["tabs"]['ipaddress'] = array ( 'separator' => ';' ), ################################## - # ENDE Datatable fields + # END Datatable fields ################################## ) ); diff --git a/interface/web/dns/form/dns_a.tform.php b/interface/web/dns/form/dns_a.tform.php index d9ed197c51..aa00e9cb50 100644 --- a/interface/web/dns/form/dns_a.tform.php +++ b/interface/web/dns/form/dns_a.tform.php @@ -159,7 +159,7 @@ $form["tabs"]['dns'] = array ( 'maxlength' => '10' ), //################################# - // ENDE Datatable fields + // END Datatable fields //################################# ) ); diff --git a/interface/web/dns/form/dns_aaaa.tform.php b/interface/web/dns/form/dns_aaaa.tform.php index 018657b838..05f52ca67b 100644 --- a/interface/web/dns/form/dns_aaaa.tform.php +++ b/interface/web/dns/form/dns_aaaa.tform.php @@ -152,7 +152,7 @@ $form["tabs"]['dns'] = array ( 'maxlength' => '10' ), //################################# - // ENDE Datatable fields + // END Datatable fields //################################# ) ); diff --git a/interface/web/dns/form/dns_alias.tform.php b/interface/web/dns/form/dns_alias.tform.php index 55833b7ec7..0e82ee6da2 100644 --- a/interface/web/dns/form/dns_alias.tform.php +++ b/interface/web/dns/form/dns_alias.tform.php @@ -170,7 +170,7 @@ $form["tabs"]['dns'] = array ( 'maxlength' => '10' ), //################################# - // ENDE Datatable fields + // END Datatable fields //################################# ) ); diff --git a/interface/web/dns/form/dns_cname.tform.php b/interface/web/dns/form/dns_cname.tform.php index d04c1d01af..290e83f54b 100644 --- a/interface/web/dns/form/dns_cname.tform.php +++ b/interface/web/dns/form/dns_cname.tform.php @@ -168,7 +168,7 @@ $form["tabs"]['dns'] = array ( 'maxlength' => '10' ), //################################# - // ENDE Datatable fields + // END Datatable fields //################################# ) ); diff --git a/interface/web/dns/form/dns_dkim.tform.php b/interface/web/dns/form/dns_dkim.tform.php index 550255da46..d47a622b0d 100644 --- a/interface/web/dns/form/dns_dkim.tform.php +++ b/interface/web/dns/form/dns_dkim.tform.php @@ -148,7 +148,7 @@ $form["tabs"]['dns'] = array ( 'maxlength' => '10' ), //################################# - // ENDE Datatable fields + // END Datatable fields //################################# ) ); diff --git a/interface/web/dns/form/dns_dmarc.tform.php b/interface/web/dns/form/dns_dmarc.tform.php index a1ecaa40c8..625fddc98c 100644 --- a/interface/web/dns/form/dns_dmarc.tform.php +++ b/interface/web/dns/form/dns_dmarc.tform.php @@ -154,7 +154,7 @@ $form["tabs"]['dns'] = array ( 'maxlength' => '10' ), //################################# - // End Datatable fields + // END Datatable fields //################################# ) ); diff --git a/interface/web/dns/form/dns_ds.tform.php b/interface/web/dns/form/dns_ds.tform.php index fe8528f9c8..04ee9a1f0b 100644 --- a/interface/web/dns/form/dns_ds.tform.php +++ b/interface/web/dns/form/dns_ds.tform.php @@ -152,7 +152,7 @@ $form["tabs"]['dns'] = array ( 'maxlength' => '10' ), //################################# - // ENDE Datatable fields + // END Datatable fields //################################# ) ); diff --git a/interface/web/dns/form/dns_hinfo.tform.php b/interface/web/dns/form/dns_hinfo.tform.php index 76c8c79dc0..972a07dff8 100644 --- a/interface/web/dns/form/dns_hinfo.tform.php +++ b/interface/web/dns/form/dns_hinfo.tform.php @@ -160,7 +160,7 @@ $form["tabs"]['dns'] = array ( 'maxlength' => '10' ), //################################# - // ENDE Datatable fields + // END Datatable fields //################################# ) ); diff --git a/interface/web/dns/form/dns_loc.tform.php b/interface/web/dns/form/dns_loc.tform.php index 5749a866b2..37df8b24c9 100644 --- a/interface/web/dns/form/dns_loc.tform.php +++ b/interface/web/dns/form/dns_loc.tform.php @@ -157,7 +157,7 @@ $form["tabs"]['dns'] = array ( 'maxlength' => '10' ), //################################# - // ENDE Datatable fields + // END Datatable fields //################################# ) ); diff --git a/interface/web/dns/form/dns_mx.tform.php b/interface/web/dns/form/dns_mx.tform.php index 9aace37ae7..3681c1a67a 100644 --- a/interface/web/dns/form/dns_mx.tform.php +++ b/interface/web/dns/form/dns_mx.tform.php @@ -169,7 +169,7 @@ $form["tabs"]['dns'] = array ( 'maxlength' => '10' ), //################################# - // ENDE Datatable fields + // END Datatable fields //################################# ) ); diff --git a/interface/web/dns/form/dns_ns.tform.php b/interface/web/dns/form/dns_ns.tform.php index e20a7892bf..fdfb92b54f 100644 --- a/interface/web/dns/form/dns_ns.tform.php +++ b/interface/web/dns/form/dns_ns.tform.php @@ -168,7 +168,7 @@ $form["tabs"]['dns'] = array ( 'maxlength' => '10' ), //################################# - // ENDE Datatable fields + // END Datatable fields //################################# ) ); diff --git a/interface/web/dns/form/dns_ptr.tform.php b/interface/web/dns/form/dns_ptr.tform.php index 4cc0462522..cf50577764 100644 --- a/interface/web/dns/form/dns_ptr.tform.php +++ b/interface/web/dns/form/dns_ptr.tform.php @@ -168,7 +168,7 @@ $form["tabs"]['dns'] = array ( 'maxlength' => '10' ), //################################# - // ENDE Datatable fields + // END Datatable fields //################################# ) ); diff --git a/interface/web/dns/form/dns_rp.tform.php b/interface/web/dns/form/dns_rp.tform.php index 5f4610a45b..fc85ad98e8 100644 --- a/interface/web/dns/form/dns_rp.tform.php +++ b/interface/web/dns/form/dns_rp.tform.php @@ -161,7 +161,7 @@ $form["tabs"]['dns'] = array ( 'maxlength' => '10' ), //################################# - // ENDE Datatable fields + // END Datatable fields //################################# ) ); diff --git a/interface/web/dns/form/dns_slave.tform.php b/interface/web/dns/form/dns_slave.tform.php index 2f287dbfd7..0b4457b700 100644 --- a/interface/web/dns/form/dns_slave.tform.php +++ b/interface/web/dns/form/dns_slave.tform.php @@ -144,7 +144,7 @@ $form["tabs"]['dns_slave'] = array ( 'value' => array(0 => 'N', 1 => 'Y') ), //################################# - // ENDE Datatable fields + // END Datatable fields //################################# ) ); diff --git a/interface/web/dns/form/dns_soa.tform.php b/interface/web/dns/form/dns_soa.tform.php index 6fab657baa..e56211782a 100644 --- a/interface/web/dns/form/dns_soa.tform.php +++ b/interface/web/dns/form/dns_soa.tform.php @@ -289,7 +289,7 @@ $form["tabs"]['dns_soa'] = array ( 'maxlength' => '10000' ), //################################# - // ENDE Datatable fields + // END Datatable fields //################################# ) ); @@ -304,7 +304,7 @@ $form["tabs"]['dns_records'] = array ( //################################# //################################# - // ENDE Datatable fields + // END Datatable fields //################################# ), 'plugins' => array ( diff --git a/interface/web/dns/form/dns_spf.tform.php b/interface/web/dns/form/dns_spf.tform.php index ea2cf8310c..62b6b5283b 100644 --- a/interface/web/dns/form/dns_spf.tform.php +++ b/interface/web/dns/form/dns_spf.tform.php @@ -154,7 +154,7 @@ $form["tabs"]['dns'] = array ( 'maxlength' => '10' ), //################################# - // End Datatable fields + // END Datatable fields //################################# ) ); diff --git a/interface/web/dns/form/dns_srv.tform.php b/interface/web/dns/form/dns_srv.tform.php index ee0674fd19..5d1c106695 100644 --- a/interface/web/dns/form/dns_srv.tform.php +++ b/interface/web/dns/form/dns_srv.tform.php @@ -159,7 +159,7 @@ $form["tabs"]['dns'] = array ( 'maxlength' => '10' ), //################################# - // ENDE Datatable fields + // END Datatable fields //################################# ) ); diff --git a/interface/web/dns/form/dns_template.tform.php b/interface/web/dns/form/dns_template.tform.php index 2c53f32ec1..5655c3e4cd 100644 --- a/interface/web/dns/form/dns_template.tform.php +++ b/interface/web/dns/form/dns_template.tform.php @@ -106,7 +106,7 @@ $form["tabs"]['template'] = array ( 'value' => array(0 => 'N', 1 => 'Y') ), //################################# - // ENDE Datatable fields + // END Datatable fields //################################# ) ); diff --git a/interface/web/dns/form/dns_tlsa.tform.php b/interface/web/dns/form/dns_tlsa.tform.php index ef6f2a05b1..b86252cc31 100644 --- a/interface/web/dns/form/dns_tlsa.tform.php +++ b/interface/web/dns/form/dns_tlsa.tform.php @@ -148,7 +148,7 @@ $form["tabs"]['dns'] = array ( 'maxlength' => '10' ), //################################# - // ENDE Datatable fields + // END Datatable fields //################################# ) ); diff --git a/interface/web/dns/form/dns_txt.tform.php b/interface/web/dns/form/dns_txt.tform.php index 3aee920dd9..564e26aa18 100644 --- a/interface/web/dns/form/dns_txt.tform.php +++ b/interface/web/dns/form/dns_txt.tform.php @@ -165,7 +165,7 @@ $form["tabs"]['dns'] = array ( 'maxlength' => '10' ), //################################# - // ENDE Datatable fields + // END Datatable fields //################################# ) ); diff --git a/interface/web/help/form/support_message.tform.php b/interface/web/help/form/support_message.tform.php index caf1a010c6..6313b4da67 100644 --- a/interface/web/help/form/support_message.tform.php +++ b/interface/web/help/form/support_message.tform.php @@ -136,7 +136,7 @@ $form["tabs"]['message'] = array ( 'maxlength' => '30' ), //################################# - // ENDE Datatable fields + // END Datatable fields //################################# ) ); diff --git a/interface/web/mail/form/mail_alias.tform.php b/interface/web/mail/form/mail_alias.tform.php index a004203622..9434ba3eec 100644 --- a/interface/web/mail/form/mail_alias.tform.php +++ b/interface/web/mail/form/mail_alias.tform.php @@ -137,7 +137,7 @@ $form["tabs"]['alias'] = array ( 'value' => array(1 => 'y', 0 => 'n') ), //################################# - // ENDE Datatable fields + // END Datatable fields //################################# ) ); diff --git a/interface/web/mail/form/mail_aliasdomain.tform.php b/interface/web/mail/form/mail_aliasdomain.tform.php index 66db01e5aa..a0d1024989 100644 --- a/interface/web/mail/form/mail_aliasdomain.tform.php +++ b/interface/web/mail/form/mail_aliasdomain.tform.php @@ -128,7 +128,7 @@ $form["tabs"]['alias'] = array ( 'value' => array(0 => 'n', 1 => 'y') ), //################################# - // ENDE Datatable fields + // END Datatable fields //################################# ) ); diff --git a/interface/web/mail/form/mail_blacklist.tform.php b/interface/web/mail/form/mail_blacklist.tform.php index 8b268147fb..957f35b95b 100644 --- a/interface/web/mail/form/mail_blacklist.tform.php +++ b/interface/web/mail/form/mail_blacklist.tform.php @@ -107,7 +107,7 @@ $form["tabs"]['blacklist'] = array ( 'value' => array(0 => 'n', 1 => 'y') ), //################################# - // ENDE Datatable fields + // END Datatable fields //################################# ) ); diff --git a/interface/web/mail/form/mail_content_filter.tform.php b/interface/web/mail/form/mail_content_filter.tform.php index 550ae6b5d6..88f16298f7 100644 --- a/interface/web/mail/form/mail_content_filter.tform.php +++ b/interface/web/mail/form/mail_content_filter.tform.php @@ -107,7 +107,7 @@ $form["tabs"]['filter'] = array ( 'value' => array(0 => 'n', 1 => 'y') ), //################################# - // ENDE Datatable fields + // END Datatable fields //################################# ) ); diff --git a/interface/web/mail/form/mail_domain.tform.php b/interface/web/mail/form/mail_domain.tform.php index 06fb0906c3..5c8fa0185a 100644 --- a/interface/web/mail/form/mail_domain.tform.php +++ b/interface/web/mail/form/mail_domain.tform.php @@ -143,7 +143,7 @@ $form["tabs"]['domain'] = array ( 'value' => array(0 => 'n', 1 => 'y') ), //################################# - // ENDE Datatable fields + // END Datatable fields //################################# ) ); diff --git a/interface/web/mail/form/mail_domain_catchall.tform.php b/interface/web/mail/form/mail_domain_catchall.tform.php index 81ce24c7b5..34d26088cd 100644 --- a/interface/web/mail/form/mail_domain_catchall.tform.php +++ b/interface/web/mail/form/mail_domain_catchall.tform.php @@ -138,7 +138,7 @@ $form["tabs"]['catchall'] = array ( 'value' => array(1 => 'y', 0 => 'n') ), //################################# - // ENDE Datatable fields + // END Datatable fields //################################# ) ); diff --git a/interface/web/mail/form/mail_forward.tform.php b/interface/web/mail/form/mail_forward.tform.php index 3c902b4221..003e678455 100644 --- a/interface/web/mail/form/mail_forward.tform.php +++ b/interface/web/mail/form/mail_forward.tform.php @@ -133,7 +133,7 @@ $form["tabs"]['forward'] = array ( 'value' => array(1 => 'y', 0 => 'n') ), //################################# - // ENDE Datatable fields + // END Datatable fields //################################# ) ); diff --git a/interface/web/mail/form/mail_get.tform.php b/interface/web/mail/form/mail_get.tform.php index 9f7de76e01..9082c36866 100644 --- a/interface/web/mail/form/mail_get.tform.php +++ b/interface/web/mail/form/mail_get.tform.php @@ -173,7 +173,7 @@ $form["tabs"]['mailget'] = array ( 'value' => array(0 => 'n', 1 => 'y') ), //################################# - // ENDE Datatable fields + // END Datatable fields //################################# ) ); diff --git a/interface/web/mail/form/mail_relay_recipient.tform.php b/interface/web/mail/form/mail_relay_recipient.tform.php index 34c23861e4..e3d8faa1ed 100644 --- a/interface/web/mail/form/mail_relay_recipient.tform.php +++ b/interface/web/mail/form/mail_relay_recipient.tform.php @@ -107,7 +107,7 @@ $form["tabs"]['relay_recipient'] = array ( 'value' => array(0 => 'n', 1 => 'y') ), //################################# - // ENDE Datatable fields + // END Datatable fields //################################# ) ); diff --git a/interface/web/mail/form/mail_spamfilter.tform.php b/interface/web/mail/form/mail_spamfilter.tform.php index d726a3eb74..2890cfb8b6 100644 --- a/interface/web/mail/form/mail_spamfilter.tform.php +++ b/interface/web/mail/form/mail_spamfilter.tform.php @@ -145,7 +145,7 @@ $form["tabs"]['spamfilter'] = array ( 'value' => array(0 => 'n', 1 => 'y') ), //################################# - // ENDE Datatable fields + // END Datatable fields //################################# ) ); diff --git a/interface/web/mail/form/mail_transport.tform.php b/interface/web/mail/form/mail_transport.tform.php index f55541346c..b40ad86e8a 100644 --- a/interface/web/mail/form/mail_transport.tform.php +++ b/interface/web/mail/form/mail_transport.tform.php @@ -122,7 +122,7 @@ $form["tabs"]['transport'] = array ( 'value' => array(0 => 'n', 1 => 'y') ), //################################# - // ENDE Datatable fields + // END Datatable fields //################################# ) ); diff --git a/interface/web/mail/form/mail_user.tform.php b/interface/web/mail/form/mail_user.tform.php index 631c507f90..da386f5844 100644 --- a/interface/web/mail/form/mail_user.tform.php +++ b/interface/web/mail/form/mail_user.tform.php @@ -472,7 +472,7 @@ if ($backup_available) { 'value' => array('1' => '1', '2' => '2', '3' => '3', '4' => '4', '5' => '5', '6' => '6', '7' => '7', '8' => '8', '9' => '9', '10' => '10') ), ################################## - # ENDE Datatable fields + # END Datatable fields ################################## ), 'plugins' => array ( diff --git a/interface/web/mail/form/mail_user_filter.tform.php b/interface/web/mail/form/mail_user_filter.tform.php index becb09351e..b00aacb9db 100644 --- a/interface/web/mail/form/mail_user_filter.tform.php +++ b/interface/web/mail/form/mail_user_filter.tform.php @@ -137,7 +137,7 @@ $form["tabs"]['filter'] = array ( 'value' => array(0 => 'n', 1 => 'y') ), //################################# - // ENDE Datatable fields + // END Datatable fields //################################# ) ); diff --git a/interface/web/mail/form/mail_whitelist.tform.php b/interface/web/mail/form/mail_whitelist.tform.php index 00fc971647..edd3248371 100644 --- a/interface/web/mail/form/mail_whitelist.tform.php +++ b/interface/web/mail/form/mail_whitelist.tform.php @@ -113,7 +113,7 @@ $form["tabs"]['whitelist'] = array ( 'value' => array(0 => 'n', 1 => 'y') ), //################################# - // ENDE Datatable fields + // END Datatable fields //################################# ) ); diff --git a/interface/web/mail/form/spamfilter_blacklist.tform.php b/interface/web/mail/form/spamfilter_blacklist.tform.php index 3514eed434..7d212d9317 100644 --- a/interface/web/mail/form/spamfilter_blacklist.tform.php +++ b/interface/web/mail/form/spamfilter_blacklist.tform.php @@ -127,7 +127,7 @@ $form["tabs"]['blacklist'] = array ( 'value' => array(0 => 'n', 1 => 'y') ), //################################# - // ENDE Datatable fields + // END Datatable fields //################################# ) ); diff --git a/interface/web/mail/form/spamfilter_config.tform.php b/interface/web/mail/form/spamfilter_config.tform.php index 39c1b35621..2217cbbd31 100644 --- a/interface/web/mail/form/spamfilter_config.tform.php +++ b/interface/web/mail/form/spamfilter_config.tform.php @@ -121,7 +121,7 @@ $form["tabs"]['server'] = array ( 'maxlength' => '255' ), //################################# - // ENDE Datatable fields + // END Datatable fields //################################# ) ); @@ -247,7 +247,7 @@ $form["tabs"]['mail'] = array ( 'maxlength' => '15' ), //################################# - // ENDE Datatable fields + // END Datatable fields //################################# ) ); @@ -272,7 +272,7 @@ $form["tabs"]['getmail'] = array ( 'maxlength' => '255' ), //################################# - // ENDE Datatable fields + // END Datatable fields //################################# ) ); diff --git a/interface/web/mail/form/spamfilter_policy.tform.php b/interface/web/mail/form/spamfilter_policy.tform.php index 57aa4f2bf5..ef777a8884 100644 --- a/interface/web/mail/form/spamfilter_policy.tform.php +++ b/interface/web/mail/form/spamfilter_policy.tform.php @@ -88,7 +88,7 @@ $form["tabs"]['policy'] = array ( 'value' => array('N' => 'No', 'Y' => 'Yes') ), //################################# - // ENDE Datatable fields + // END Datatable fields //################################# ) ); @@ -458,7 +458,7 @@ $form["tabs"]['amavis'] = array ( 'maxlength' => '255' ), //################################# - // ENDE Datatable fields + // END Datatable fields //################################# ) ); @@ -502,7 +502,7 @@ $form["tabs"]['rspamd'] = array ( 'maxlength' => '255' ), //################################# - // ENDE Datatable fields + // END Datatable fields //################################# ) ); diff --git a/interface/web/mail/form/spamfilter_users.tform.php b/interface/web/mail/form/spamfilter_users.tform.php index 8ef3c4e131..65f196b987 100644 --- a/interface/web/mail/form/spamfilter_users.tform.php +++ b/interface/web/mail/form/spamfilter_users.tform.php @@ -133,7 +133,7 @@ $form["tabs"]['users'] = array ( ), //################################# - // ENDE Datatable fields + // END Datatable fields //################################# ) ); diff --git a/interface/web/mail/form/spamfilter_whitelist.tform.php b/interface/web/mail/form/spamfilter_whitelist.tform.php index f0802fa491..202a3c6810 100644 --- a/interface/web/mail/form/spamfilter_whitelist.tform.php +++ b/interface/web/mail/form/spamfilter_whitelist.tform.php @@ -127,7 +127,7 @@ $form["tabs"]['whitelist'] = array ( 'value' => array(0 => 'n', 1 => 'y') ), //################################# - // ENDE Datatable fields + // END Datatable fields //################################# ) ); diff --git a/interface/web/mailuser/form/mail_user_filter.tform.php b/interface/web/mailuser/form/mail_user_filter.tform.php index b785ae0263..adf7716317 100644 --- a/interface/web/mailuser/form/mail_user_filter.tform.php +++ b/interface/web/mailuser/form/mail_user_filter.tform.php @@ -128,7 +128,7 @@ $form["tabs"]['filter'] = array ( 'value' => array(0 => 'n', 1 => 'y') ), //################################# - // ENDE Datatable fields + // END Datatable fields //################################# ) ); diff --git a/interface/web/sites/form/cron.tform.php b/interface/web/sites/form/cron.tform.php index 4a169c3a67..aedfcb26ca 100644 --- a/interface/web/sites/form/cron.tform.php +++ b/interface/web/sites/form/cron.tform.php @@ -185,7 +185,7 @@ $form["tabs"]['cron'] = array ( 'value' => array(0 => 'n', 1 => 'y') ), //################################# - // ENDE Datatable fields + // END Datatable fields //################################# ) ); diff --git a/interface/web/sites/form/database.tform.php b/interface/web/sites/form/database.tform.php index 3bb2f9af73..dd3910c043 100644 --- a/interface/web/sites/form/database.tform.php +++ b/interface/web/sites/form/database.tform.php @@ -185,7 +185,7 @@ $form["tabs"]['database'] = array ( 'searchable' => 2 ), //################################# - // ENDE Datatable fields + // END Datatable fields //################################# ) ); diff --git a/interface/web/sites/form/database_user.tform.php b/interface/web/sites/form/database_user.tform.php index 09d2c32b2c..5f91cbd1f3 100644 --- a/interface/web/sites/form/database_user.tform.php +++ b/interface/web/sites/form/database_user.tform.php @@ -125,7 +125,7 @@ $form["tabs"]['database_user'] = array ( 'maxlength' => '255' ), //################################# - // ENDE Datatable fields + // END Datatable fields //################################# ) ); diff --git a/interface/web/sites/form/ftp_user.tform.php b/interface/web/sites/form/ftp_user.tform.php index 5e77de4b5f..0b48d7a92d 100644 --- a/interface/web/sites/form/ftp_user.tform.php +++ b/interface/web/sites/form/ftp_user.tform.php @@ -146,7 +146,7 @@ $form["tabs"]['ftp'] = array ( 'value' => array(0 => 'n', 1 => 'y') ), //################################# - // ENDE Datatable fields + // END Datatable fields //################################# ) ); @@ -256,7 +256,7 @@ if($app->auth->is_admin()) { 'maxlength' => '7' ), //################################# - // ENDE Datatable fields + // END Datatable fields //################################# ) ); @@ -290,7 +290,7 @@ if($app->auth->is_admin()) { 'maxlength' => '255' ), //################################# - // ENDE Datatable fields + // END Datatable fields //################################# ) ); diff --git a/interface/web/sites/form/shell_user.tform.php b/interface/web/sites/form/shell_user.tform.php index 4268fc08ec..f4e83a1b57 100644 --- a/interface/web/sites/form/shell_user.tform.php +++ b/interface/web/sites/form/shell_user.tform.php @@ -164,7 +164,7 @@ $form["tabs"]['shell'] = array ( 'maxlength' => '600' ), //################################# - // ENDE Datatable fields + // END Datatable fields //################################# ) ); @@ -248,7 +248,7 @@ if($_SESSION["s"]["user"]["typ"] == 'admin') { 'maxlength' => '255' ), //################################# - // ENDE Datatable fields + // END Datatable fields //################################# ) ); diff --git a/interface/web/sites/form/web_childdomain.tform.php b/interface/web/sites/form/web_childdomain.tform.php index 6cfaa38c2a..01132a75dc 100644 --- a/interface/web/sites/form/web_childdomain.tform.php +++ b/interface/web/sites/form/web_childdomain.tform.php @@ -146,7 +146,7 @@ $form["tabs"]['domain'] = array ( 'value' => array(0 => 'n', 1 => 'y') ), //################################# - // ENDE Datatable fields + // END Datatable fields //################################# ) ); @@ -193,7 +193,7 @@ if($_SESSION["s"]["user"]["typ"] == 'admin') { 'maxlength' => '255' ), //################################# - // ENDE Datatable fields + // END Datatable fields //################################# ) ); diff --git a/interface/web/sites/form/web_folder.tform.php b/interface/web/sites/form/web_folder.tform.php index 5fec523a69..9f8418446c 100644 --- a/interface/web/sites/form/web_folder.tform.php +++ b/interface/web/sites/form/web_folder.tform.php @@ -99,7 +99,7 @@ $form["tabs"]['folder'] = array ( 'value' => array(0 => 'n', 1 => 'y') ), //################################# - // ENDE Datatable fields + // END Datatable fields //################################# ) ); diff --git a/interface/web/sites/form/web_folder_user.tform.php b/interface/web/sites/form/web_folder_user.tform.php index c3386a5a22..b5f0b711c6 100644 --- a/interface/web/sites/form/web_folder_user.tform.php +++ b/interface/web/sites/form/web_folder_user.tform.php @@ -119,7 +119,7 @@ $form["tabs"]['user'] = array ( 'value' => array(0 => 'n', 1 => 'y') ), //################################# - // ENDE Datatable fields + // END Datatable fields //################################# ) ); diff --git a/interface/web/sites/form/web_vhost_domain.tform.php b/interface/web/sites/form/web_vhost_domain.tform.php index e131a7cbaf..838445e361 100644 --- a/interface/web/sites/form/web_vhost_domain.tform.php +++ b/interface/web/sites/form/web_vhost_domain.tform.php @@ -299,7 +299,7 @@ $form["tabs"]['domain'] = array ( 'value' => array(0 => 'n', 1 => 'y') ), //################################# - // ENDE Datatable fields + // END Datatable fields //################################# ), 'plugins' => array ( @@ -435,7 +435,7 @@ $form["tabs"]['redirect'] = array ( ) ), //################################# - // ENDE Datatable fields + // END Datatable fields //################################# ) ); @@ -601,7 +601,7 @@ if($ssl_available) { ) ), //################################# - // ENDE Datatable fields + // END Datatable fields //################################# ) ); @@ -641,7 +641,7 @@ $form["tabs"]['stats'] = array ( 'value' => array('webalizer' => 'Webalizer', 'awstats' => 'AWStats', '' => 'None') ), //################################# - // ENDE Datatable fields + // END Datatable fields //################################# ) ); @@ -683,7 +683,7 @@ if ($backup_available) { 'maxlength' => '255' ), //################################# - // ENDE Datatable fields + // END Datatable fields //################################# ), 'plugins' => array ( @@ -972,7 +972,7 @@ if($_SESSION["s"]["user"]["typ"] == 'admin' 'maxlength' => '4' ) //################################# - // ENDE Datatable fields + // END Datatable fields //################################# ) ); diff --git a/interface/web/sites/form/webdav_user.tform.php b/interface/web/sites/form/webdav_user.tform.php index b7db858546..73ea898b68 100644 --- a/interface/web/sites/form/webdav_user.tform.php +++ b/interface/web/sites/form/webdav_user.tform.php @@ -142,7 +142,7 @@ $form["tabs"]['webdav'] = array ( 'maxlength' => '255' ), //################################# - // ENDE Datatable fields + // END Datatable fields //################################# ) ); -- GitLab From d77b1219c5d1a7968501c135551b8f3887ca2dcc Mon Sep 17 00:00:00 2001 From: Herman van Rink <rink@initfour.nl> Date: Thu, 20 Jun 2019 15:42:26 +0200 Subject: [PATCH 183/215] remove old commented code --- interface/web/mail/form/mail_user_filter.tform.php | 1 - 1 file changed, 1 deletion(-) diff --git a/interface/web/mail/form/mail_user_filter.tform.php b/interface/web/mail/form/mail_user_filter.tform.php index b00aacb9db..c1134c5e41 100644 --- a/interface/web/mail/form/mail_user_filter.tform.php +++ b/interface/web/mail/form/mail_user_filter.tform.php @@ -94,7 +94,6 @@ $form["tabs"]['filter'] = array ( 'datatype' => 'VARCHAR', 'formtype' => 'SELECT', 'default' => '', - //'value' => array('contains'=>'contains_txt','is' => 'Is','begins'=>'Begins with','ends'=>'Ends with') 'value' => array('contains'=>'contains_txt', 'is' => 'is_txt', 'begins'=>'begins_with_txt', 'ends'=>'ends_with_txt') ), 'searchterm' => array ( -- GitLab From e0c9b5c74fb36365fa1b5bbc951a35f6b02f37b7 Mon Sep 17 00:00:00 2001 From: Webslice <webslice@bixels.nl> Date: Fri, 6 Sep 2019 13:00:22 +0200 Subject: [PATCH 184/215] Check explicitly for session username, fixes #5389 --- interface/lib/classes/db_mysql.inc.php | 2 +- server/lib/classes/db_mysql.inc.php | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/interface/lib/classes/db_mysql.inc.php b/interface/lib/classes/db_mysql.inc.php index 7d7b568980..227fab73fa 100644 --- a/interface/lib/classes/db_mysql.inc.php +++ b/interface/lib/classes/db_mysql.inc.php @@ -709,7 +709,7 @@ class db if($diff_num > 0) { $diffstr = serialize($diffrec_full); - if(isset($_SESSION)) { + if(!empty($_SESSION['s']['user']['username'])) { $username = $_SESSION['s']['user']['username']; } else { $username = 'admin'; diff --git a/server/lib/classes/db_mysql.inc.php b/server/lib/classes/db_mysql.inc.php index 7d7b568980..227fab73fa 100644 --- a/server/lib/classes/db_mysql.inc.php +++ b/server/lib/classes/db_mysql.inc.php @@ -709,7 +709,7 @@ class db if($diff_num > 0) { $diffstr = serialize($diffrec_full); - if(isset($_SESSION)) { + if(!empty($_SESSION['s']['user']['username'])) { $username = $_SESSION['s']['user']['username']; } else { $username = 'admin'; -- GitLab From 065d5ff93fb92b2b87a85c9bd3ee690726941fae Mon Sep 17 00:00:00 2001 From: Marius Burkard <m.burkard@pixcept.de> Date: Tue, 10 Sep 2019 15:39:42 +0200 Subject: [PATCH 185/215] - when using pigz tar arguments for backup are in wrong order, fixes #5393 --- server/lib/classes/cron.d/500-backup.inc.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/server/lib/classes/cron.d/500-backup.inc.php b/server/lib/classes/cron.d/500-backup.inc.php index 579e0174ba..f261daf468 100644 --- a/server/lib/classes/cron.d/500-backup.inc.php +++ b/server/lib/classes/cron.d/500-backup.inc.php @@ -135,7 +135,7 @@ class cronjob_backup extends cronjob { //* Create a tar.gz backup as root user $web_backup_file = 'web'.$web_id.'_'.date('Y-m-d_H-i').'.tar.gz'; if ($use_pigz) { - $app->system->exec_safe('tar pcf - --directory ? . --exclude=./backup\*'.$backup_excludes.' | pigz > ?', $web_path, $web_backup_dir.'/'.$web_backup_file); + $app->system->exec_safe('tar pcf - --exclude=./backup\*'.$backup_excludes.' --directory ? . | pigz > ?', $web_path, $web_backup_dir.'/'.$web_backup_file); $retval = $app->system->last_exec_retcode(); } else { $app->system->exec_safe('tar pczf ? --exclude=./backup\*'.$backup_excludes.' --directory ? .', $web_backup_dir.'/'.$web_backup_file, $web_path); -- GitLab From f2ec8695499cee62cc4eeea7e245d09f0463a97e Mon Sep 17 00:00:00 2001 From: Till Brehm <tbrehm@ispconfig.org> Date: Wed, 11 Sep 2019 12:25:37 +0200 Subject: [PATCH 186/215] Set file mode explicitly for rspamd worker-controller.inc config file to not rely on system umask. --- install/lib/installer_base.lib.php | 3 ++- server/plugins-available/postfix_server_plugin.inc.php | 1 + 2 files changed, 3 insertions(+), 1 deletion(-) diff --git a/install/lib/installer_base.lib.php b/install/lib/installer_base.lib.php index dd4fe9c306..4f72c6920b 100644 --- a/install/lib/installer_base.lib.php +++ b/install/lib/installer_base.lib.php @@ -1644,7 +1644,8 @@ class installer_base { $tpl = new tpl(); $tpl->newTemplate('rspamd_worker-controller.inc.master'); $tpl->setVar('rspamd_password', $mail_config['rspamd_password']); - wf('/etc/rspamd/local.d/worker-controller.inc', $tpl->grab()); + wf('/etc/rspamd/local.d/worker-controller.inc', $tpl->grab()); + chmod('/etc/rspamd/local.d/worker-controller.inc', 0644); } public function configure_spamassassin() { diff --git a/server/plugins-available/postfix_server_plugin.inc.php b/server/plugins-available/postfix_server_plugin.inc.php index bec1c5498d..77ac689077 100644 --- a/server/plugins-available/postfix_server_plugin.inc.php +++ b/server/plugins-available/postfix_server_plugin.inc.php @@ -242,6 +242,7 @@ class postfix_server_plugin { $tpl->newTemplate('rspamd_worker-controller.inc.master'); $tpl->setVar('rspamd_password', $rspamd_password); $app->system->file_put_contents('/etc/rspamd/local.d/worker-controller.inc', $tpl->grab()); + chmod('/etc/rspamd/local.d/worker-controller.inc', 0644); $app->services->restartServiceDelayed('rspamd', 'reload'); } -- GitLab From 0d3e2987ce608d3e342f5d3fcab340bc8f615107 Mon Sep 17 00:00:00 2001 From: Marius Burkard <m.burkard@pixcept.de> Date: Thu, 12 Sep 2019 08:55:07 +0200 Subject: [PATCH 187/215] - fixed missing template file for rspamd --- install/tpl/rspamd_users.conf.master | 44 +--------------------------- server/conf/rspamd_users.conf.master | 43 +++++++++++++++++++++++++++ 2 files changed, 44 insertions(+), 43 deletions(-) mode change 100644 => 120000 install/tpl/rspamd_users.conf.master create mode 100644 server/conf/rspamd_users.conf.master diff --git a/install/tpl/rspamd_users.conf.master b/install/tpl/rspamd_users.conf.master deleted file mode 100644 index 73d437d6cb..0000000000 --- a/install/tpl/rspamd_users.conf.master +++ /dev/null @@ -1,43 +0,0 @@ -settings { - authenticated { - priority = 10; - authenticated = yes; - #apply "default" { groups_disabled = ["rbl", "spf"]; } - apply "default" { - #symbols_enabled = []; - symbols_disabled = []; - #groups_enabled = []; - groups_disabled = ["rbl"]; - } - } - whitelist { - priority = 10; - rcpt = "postmaster"; - rcpt = "hostmaster"; - rcpt = "abuse"; - want_spam = yes; - } - whitelist-ip { - priority = 10; -<tmpl_loop name="whitelist_ips"> - ip = "<tmpl_var name='ip'>"; -</tmpl_loop> - - want_spam = yes; - } -# whitelist-timmehosting { -# priority = 20; -# from = "@xxx"; -# from = "@xxx"; -# want_spam = yes; -# } - whitelist-ca { - priority = 20; - from = "@comodo.com"; - from = "@geotrust.com"; - from = "@geotrusteurope.com"; - want_spam = yes; - } - .include(try=true; glob=true) "$LOCAL_CONFDIR/local.d/users/*.conf" - .include(try=true; priority=1,duplicate=merge) "$LOCAL_CONFDIR/local.d/users.local.conf" -} diff --git a/install/tpl/rspamd_users.conf.master b/install/tpl/rspamd_users.conf.master new file mode 120000 index 0000000000..3aa7af3185 --- /dev/null +++ b/install/tpl/rspamd_users.conf.master @@ -0,0 +1 @@ +../../server/conf/rspamd_users.conf.master \ No newline at end of file diff --git a/server/conf/rspamd_users.conf.master b/server/conf/rspamd_users.conf.master new file mode 100644 index 0000000000..73d437d6cb --- /dev/null +++ b/server/conf/rspamd_users.conf.master @@ -0,0 +1,43 @@ +settings { + authenticated { + priority = 10; + authenticated = yes; + #apply "default" { groups_disabled = ["rbl", "spf"]; } + apply "default" { + #symbols_enabled = []; + symbols_disabled = []; + #groups_enabled = []; + groups_disabled = ["rbl"]; + } + } + whitelist { + priority = 10; + rcpt = "postmaster"; + rcpt = "hostmaster"; + rcpt = "abuse"; + want_spam = yes; + } + whitelist-ip { + priority = 10; +<tmpl_loop name="whitelist_ips"> + ip = "<tmpl_var name='ip'>"; +</tmpl_loop> + + want_spam = yes; + } +# whitelist-timmehosting { +# priority = 20; +# from = "@xxx"; +# from = "@xxx"; +# want_spam = yes; +# } + whitelist-ca { + priority = 20; + from = "@comodo.com"; + from = "@geotrust.com"; + from = "@geotrusteurope.com"; + want_spam = yes; + } + .include(try=true; glob=true) "$LOCAL_CONFDIR/local.d/users/*.conf" + .include(try=true; priority=1,duplicate=merge) "$LOCAL_CONFDIR/local.d/users.local.conf" +} -- GitLab From 0a18e943449be72cd9e733602ff2be9fdb2b32e6 Mon Sep 17 00:00:00 2001 From: Marius Burkard <m.burkard@pixcept.de> Date: Wed, 18 Sep 2019 10:59:10 +0200 Subject: [PATCH 188/215] - better log messages on rspamd plugin - ignore @/*@ targets for spamfilter_user in rspamd plugin --- server/plugins-available/rspamd_plugin.inc.php | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/server/plugins-available/rspamd_plugin.inc.php b/server/plugins-available/rspamd_plugin.inc.php index 49eb87165e..cb2af0f8f3 100644 --- a/server/plugins-available/rspamd_plugin.inc.php +++ b/server/plugins-available/rspamd_plugin.inc.php @@ -131,7 +131,11 @@ class rspamd_plugin { $is_domain = false; $email_address = $data[$use_data][$identifier]; $settings_name = $email_address; - if(!$email_address) { + if($email_address === '*@' || $email_address === '@') { + // we will ignore those global targets + $app->log('Ignoring @ spamfilter_user as rspamd does not support it this way.', LOGLEVEL_DEBUG); + return; + } elseif(!$email_address) { // problem reading identifier $app->log('Empty email address in rspamd_plugin from identifier: ' . $use_data . '/' . $identifier, LOGLEVEL_WARN); return; @@ -145,7 +149,7 @@ class rspamd_plugin { if($settings_name == '') { // missing settings file name - $app->log('Empty email address in rspamd_plugin from identifier: ' . $use_data . '/' . $identifier, LOGLEVEL_WARN); + $app->log('Empty rspamd identifier in rspamd_plugin from identifier: ' . $use_data . '/' . $identifier, LOGLEVEL_WARN); return; } -- GitLab From 3b0ec62c98e32af10a4d8b31aca6a749d377e8ed Mon Sep 17 00:00:00 2001 From: Marius Burkard <m.burkard@pixcept.de> Date: Wed, 18 Sep 2019 12:57:28 +0200 Subject: [PATCH 189/215] - fixed problem in rspamd plugin handling deleting of domains or users, fixes #5401 --- server/plugins-available/rspamd_plugin.inc.php | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/server/plugins-available/rspamd_plugin.inc.php b/server/plugins-available/rspamd_plugin.inc.php index cb2af0f8f3..f6bb5d5a8e 100644 --- a/server/plugins-available/rspamd_plugin.inc.php +++ b/server/plugins-available/rspamd_plugin.inc.php @@ -94,10 +94,10 @@ class rspamd_plugin { } $use_data = 'new'; - if(substr($event_name, -7) === 'delete') { + if(substr($event_name, -7) === '_delete') { $mode = 'delete'; $use_data = 'old'; - } elseif(substr($event_name, -7) === 'insert') { + } elseif(substr($event_name, -7) === '_insert') { $mode = 'insert'; } else { $mode = 'update'; -- GitLab From ba8971de0cb5f8ff01f3e943b4787658f4d6b5bb Mon Sep 17 00:00:00 2001 From: Ales Seifert <ales@web4people.com.au> Date: Wed, 18 Sep 2019 17:42:29 +0200 Subject: [PATCH 190/215] Added option to select Local Mail server for remote email accounts import --- interface/web/tools/import_ispconfig.php | 17 ++++++++++++++++- .../web/tools/lib/lang/en_import_ispconfig.lng | 1 + .../web/tools/templates/import_ispconfig.htm | 6 ++++++ 3 files changed, 23 insertions(+), 1 deletion(-) diff --git a/interface/web/tools/import_ispconfig.php b/interface/web/tools/import_ispconfig.php index e2b8bad647..716ed2f934 100644 --- a/interface/web/tools/import_ispconfig.php +++ b/interface/web/tools/import_ispconfig.php @@ -107,6 +107,17 @@ if(isset($_POST['connected'])) { } $app->tpl->setVar("client_group_id", $client_select); + //* Fill the mail server select field + $sql = "SELECT server_id, server_name FROM server WHERE mail_server = 1 and mirror_server_id = 0"; + $mail_servers = $app->db->queryAllRecords($sql); + $mail_server_select = ""; + if(is_array($mail_servers)) { + foreach( $mail_servers as $m_server) { + $selected = @($m_server['server_id'] == $_POST['local_server_id'])?'SELECTED':''; + $mail_server_select .= "<option value='$m_server[server_id]' $selected>$m_server[server_name]</option>\r\n"; + } + } + $app->tpl->setVar("local_server_id", $mail_server_select); try { //* Allow connections to self signed SSL certs @@ -161,6 +172,7 @@ $app->tpl->setVar('connected', $connected); $app->tpl->setVar('remote_session_id', $remote_session_id); $app->tpl->setVar('msg', $msg); $app->tpl->setVar('error', $error); +$app->tpl->setVar('local_server_id', $_POST['local_server_id'], true); //* SET csrf token $csrf_token = $app->auth->csrf_token_get('ispconfig_import'); @@ -188,7 +200,10 @@ function start_domain_import($mail_domain) { $server_id = intval($tmp['server_id']); unset($tmp); if($server_id == 0) $server_id = 1; - + + if (isset($_POST['local_server_id']) && intval($_POST['local_server_id']) !== $server_id){ + $server_id = intval($_POST['local_server_id']); + } //* get the mail domain record $mail_domain_rec = $client->mail_domain_get($remote_session_id, array('domain' => $mail_domain)); if(is_array($mail_domain_rec)) { diff --git a/interface/web/tools/lib/lang/en_import_ispconfig.lng b/interface/web/tools/lib/lang/en_import_ispconfig.lng index 65ea145980..73002f8868 100644 --- a/interface/web/tools/lib/lang/en_import_ispconfig.lng +++ b/interface/web/tools/lib/lang/en_import_ispconfig.lng @@ -20,5 +20,6 @@ $wb['import_alias_txt'] = 'Import email alias'; $wb['import_forward_txt'] = 'Import forward'; $wb['import_user_filter_txt'] = 'Import user filter'; $wb['import_spamfilter_txt'] = 'Import spamfilter'; +$wb['local_server_txt'] = 'Local Mail Server'; ?> \ No newline at end of file diff --git a/interface/web/tools/templates/import_ispconfig.htm b/interface/web/tools/templates/import_ispconfig.htm index 1d63df2a6d..9d845701f6 100644 --- a/interface/web/tools/templates/import_ispconfig.htm +++ b/interface/web/tools/templates/import_ispconfig.htm @@ -36,6 +36,12 @@ {tmpl_var name='client_group_id'} </select></div> </div> + <div class="form-group"> + <label for="local_server_id" class="col-sm-3 control-label">{tmpl_var name='local_server_txt'}</label> + <div class="col-sm-9"><select name="local_server_id" id="local_server_id" class="form-control"> + {tmpl_var name='local_server_id'} + </select></div> + </div> <div class="form-group"> <label class="col-sm-3 control-label">{tmpl_var name="import_mailbox_txt"}</label> <div class="col-sm-9"><input class="form-control" type="checkbox" id="import_mailbox" value="1" name="import_mailbox" checked="checked" /></div> -- GitLab From 6d9985346ad660e36f62805ff3fa4ebf1e0afe6b Mon Sep 17 00:00:00 2001 From: Helmo <rink@initfour.nl> Date: Tue, 24 Sep 2019 10:55:11 +0200 Subject: [PATCH 191/215] More Dutch, mail_user_filter Some form of inheritance might be nice to reduce the amount of duplication in these files. --- .../lib/lang/nl_software_package_list.lng | 2 +- interface/web/mail/lib/lang/nl.lng | 2 +- interface/web/mail/lib/lang/nl_mail_get.lng | 6 +-- interface/web/mail/lib/lang/nl_mail_user.lng | 7 ++-- .../web/mail/lib/lang/nl_mail_user_filter.lng | 30 +++++++-------- .../web/mail/lib/lang/nl_mail_user_list.lng | 4 +- .../web/mail/lib/lang/nl_spamfilter_users.lng | 2 +- interface/web/mailuser/lib/lang/nl.lng | 6 +-- .../lib/lang/nl_mail_user_autoresponder.lng | 22 +++++------ .../mailuser/lib/lang/nl_mail_user_filter.lng | 38 +++++++++---------- 10 files changed, 59 insertions(+), 60 deletions(-) diff --git a/interface/web/admin/lib/lang/nl_software_package_list.lng b/interface/web/admin/lib/lang/nl_software_package_list.lng index 33e66022bc..44aaa563ad 100644 --- a/interface/web/admin/lib/lang/nl_software_package_list.lng +++ b/interface/web/admin/lib/lang/nl_software_package_list.lng @@ -6,7 +6,7 @@ $wb['package_description_txt'] = 'Omschrijving'; $wb['action_txt'] = 'Actie'; $wb['toolsarea_head_txt'] = 'Pakketten'; $wb['repoupdate_txt'] = 'Update pakketlijst'; -$wb['package_id_txt'] = 'locaal App-ID'; +$wb['package_id_txt'] = 'lokaal App-ID'; $wb['no_packages_txt'] = 'No packages available'; $wb['edit_txt'] = 'Edit'; $wb['delete_txt'] = 'Delete'; diff --git a/interface/web/mail/lib/lang/nl.lng b/interface/web/mail/lib/lang/nl.lng index 91d63a7abc..6664809b46 100644 --- a/interface/web/mail/lib/lang/nl.lng +++ b/interface/web/mail/lib/lang/nl.lng @@ -13,7 +13,7 @@ $wb['Spamfilter'] = 'Spamfilter'; $wb['Email Routing'] = 'Email routing'; $wb['Email transport'] = 'Email transport'; $wb['Mailbox'] = 'Mailbox'; -$wb['Autoresponder'] = 'Autoresponder'; +$wb['Autoresponder'] = 'Autobeantwoorden'; $wb['Mail Filter'] = 'Mail filter'; $wb['Custom Rules'] = 'Custom rules'; $wb['Email filter'] = 'E-mail filter'; diff --git a/interface/web/mail/lib/lang/nl_mail_get.lng b/interface/web/mail/lib/lang/nl_mail_get.lng index 5cbeab14e7..738f93e663 100644 --- a/interface/web/mail/lib/lang/nl_mail_get.lng +++ b/interface/web/mail/lib/lang/nl_mail_get.lng @@ -13,7 +13,7 @@ $wb['source_username_error_isempty'] = 'Gebruikersnaam is niet ingvuld.'; $wb['source_password_error_isempty'] = 'Wachtwoord is niet ingvuld.'; $wb['destination_error_isemail'] = 'Geen bestemming geselecteerd.'; $wb['source_server_error_regex'] = 'Pop3/Imap server is geen geldige domeinnaam.'; -$wb['source_read_all_txt'] = 'Retrieve all emails (incl. read mails)'; -$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'] = 'Please check first if email retrieval works, before you activate this option.'; +$wb['source_read_all_txt'] = 'Haal alle berichten op (incl. reeds gelezen)'; +$wb['error_delete_read_all_combination'] = 'Ongeldige combinatie van opties. \\"Verwijder e-mails na ontvangst\\" en \\"Haal alle berichten op (incl. reeds gelezen)\\" werken niet samen.'; +$wb['source_delete_note_txt'] = 'Controleer voor het activeren van deze optie of het ophalen van berichten naar verwachting werkt.'; ?> diff --git a/interface/web/mail/lib/lang/nl_mail_user.lng b/interface/web/mail/lib/lang/nl_mail_user.lng index 94dd018332..65d89a32af 100644 --- a/interface/web/mail/lib/lang/nl_mail_user.lng +++ b/interface/web/mail/lib/lang/nl_mail_user.lng @@ -9,7 +9,6 @@ $wb['email_error_unique'] = 'Duplicaat e-mail adres.'; $wb['autoresponder_text_txt'] = 'Tekst'; $wb['autoresponder_txt'] = 'Actief'; $wb['autoresponder_start_date_txt'] = 'Start op'; -$wb['autoresponder_start_date_ispast'] = 'Start datum mag niet in het verleden liggen.'; $wb['autoresponder_end_date_txt'] = 'Eindigt op'; $wb['autoresponder_end_date_isgreater'] = 'Einddatum moet later zijn dan de startdatum.'; $wb['no_domain_perm'] = 'U heeft geen toestemming voor dit domein.'; @@ -34,11 +33,11 @@ $wb['quota_error_value'] = 'Ongeldige quota waarde. Toegestane waarden zijn: 0 = $wb['move_junk_txt'] = 'Verplaats SPAM e-mails naar junk folder'; $wb['name_txt'] = 'Echte naam'; $wb['name_optional_txt'] = '(Optioneel)'; -$wb['autoresponder_active'] = 'Inschakelen autoresponder'; +$wb['autoresponder_active'] = 'Inschakelen autobeantwoorden'; $wb['cc_txt'] = 'Stuur kopie naar'; $wb['cc_error_isemail'] = 'Het \\"Stuur kopie naar\\" veld bevat geen geldig e-mail adres'; $wb['domain_txt'] = 'Domain'; -$wb['now_txt'] = 'Now'; +$wb['now_txt'] = 'Nu'; $wb['login_error_unique'] = 'Login is already taken.'; $wb['login_error_regex'] = 'Valid characters are A-Z, a-z, 0-9, ., _ and -.'; $wb['login_txt'] = 'Login (optional)'; @@ -58,7 +57,7 @@ $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'] = '(Meerdere e-mail adressen scheiden met een komma)'; $wb['disablesmtp_txt'] = 'Uitschakelen SMTP (versturen)'; -$wb['autoresponder_start_date_is_required'] = 'Start date must be set when Autoresponder is enabled.'; +$wb['autoresponder_start_date_is_required'] = 'Een startdatun is vereist voor het inschakelen van Autobeantwoorden.'; $wb['sender_cc_txt'] = 'Stuur uitgaande kopie aan'; $wb['sender_cc_error_isemail'] = 'Het \\"Stuur uitgaande kopie aan\\" veld bevat geen geldig e-mail adres'; $wb['sender_cc_note_txt'] = '(Meerdere e-mail adressen scheiden met een komma)'; diff --git a/interface/web/mail/lib/lang/nl_mail_user_filter.lng b/interface/web/mail/lib/lang/nl_mail_user_filter.lng index 903b610729..95af45d96e 100644 --- a/interface/web/mail/lib/lang/nl_mail_user_filter.lng +++ b/interface/web/mail/lib/lang/nl_mail_user_filter.lng @@ -7,23 +7,23 @@ $wb['rulename_error_empty'] = 'Naam is niet ingvuld.'; $wb['searchterm_is_empty'] = 'Zoekterm is niet ingvuld.'; $wb['source_txt'] = 'Bron'; $wb['target_error_regex'] = 'Het doel mag alleen de volgende karakters bevatten: a-z, 0-9, -, ., _, en {spatie}'; -$wb['limit_mailfilter_txt'] = 'The max. number of mailfilters is reached.'; -$wb['subject_txt'] = 'Subject'; -$wb['from_txt'] = 'From'; -$wb['to_txt'] = 'To'; -$wb['contains_txt'] = 'Contains'; +$wb['limit_mailfilter_txt'] = 'Het max. aantal e-mail filters voor uw account is bereikt.'; +$wb['subject_txt'] = 'Onderwerp'; +$wb['from_txt'] = 'Afzender'; +$wb['to_txt'] = 'Bestemming'; +$wb['contains_txt'] = 'Bevat'; $wb['is_txt'] = 'Is'; -$wb['begins_with_txt'] = 'Begins with'; -$wb['ends_with_txt'] = 'Ends with'; -$wb['delete_txt'] = 'Delete'; -$wb['move_stop_txt'] = 'Move to'; +$wb['begins_with_txt'] = 'Begint met'; +$wb['ends_with_txt'] = 'Eindigt in'; +$wb['delete_txt'] = 'Verwijderen'; +$wb['move_stop_txt'] = 'Verplaatsen naar'; $wb['header_txt'] = 'Header'; -$wb['size_over_txt'] = 'Email size over (KB)'; -$wb['size_under_txt'] = 'Email size under (KB)'; +$wb['size_over_txt'] = 'Email grootte bove (KB)'; +$wb['size_under_txt'] = 'Email grootte onder (KB)'; $wb['localpart_txt'] = 'Localpart'; -$wb['domain_txt'] = 'Domain'; -$wb['keep_txt'] = 'Keep'; -$wb['reject_txt'] = 'Reject'; +$wb['domain_txt'] = 'Domein'; +$wb['keep_txt'] = 'Behouden'; +$wb['reject_txt'] = 'Afwijzen'; $wb['stop_txt'] = 'Stop'; -$wb['move_to_txt'] = 'Move to'; +$wb['move_to_txt'] = 'Verplaatsen naar'; ?> diff --git a/interface/web/mail/lib/lang/nl_mail_user_list.lng b/interface/web/mail/lib/lang/nl_mail_user_list.lng index e421af0ecc..39125af2e0 100644 --- a/interface/web/mail/lib/lang/nl_mail_user_list.lng +++ b/interface/web/mail/lib/lang/nl_mail_user_list.lng @@ -1,11 +1,11 @@ <?php $wb['list_head_txt'] = 'Mailbox'; $wb['email_txt'] = 'E-mail'; -$wb['autoresponder_txt'] = 'Autoresponder'; +$wb['autoresponder_txt'] = 'Autobeantwoorden'; $wb['add_new_record_txt'] = 'Toevoegen mailbox'; $wb['name_txt'] = 'Echte naam'; $wb['login_txt'] = 'Login'; -$wb['postfix_txt'] = 'Receiving'; +$wb['postfix_txt'] = 'Ontvangen'; $wb['disablesmtp_txt'] = 'SMTP (sending)'; $wb['disableimap_txt'] = 'IMAP'; $wb['disablepop3_txt'] = 'POP3'; diff --git a/interface/web/mail/lib/lang/nl_spamfilter_users.lng b/interface/web/mail/lib/lang/nl_spamfilter_users.lng index 4b7144b1f3..697e130b35 100644 --- a/interface/web/mail/lib/lang/nl_spamfilter_users.lng +++ b/interface/web/mail/lib/lang/nl_spamfilter_users.lng @@ -4,7 +4,7 @@ $wb['priority_txt'] = 'Prioriteit'; $wb['policy_id_txt'] = 'Policy'; $wb['email_txt'] = 'E-mail (Patroon)'; $wb['fullname_txt'] = 'Naam'; -$wb['local_txt'] = 'Locaal'; +$wb['local_txt'] = 'Lokaal'; $wb['email_error_notempty'] = 'The email address must not be empty.'; $wb['fullname_error_notempty'] = 'The name must not be empty.'; $wb['10 - highest'] = '10 - highest'; diff --git a/interface/web/mailuser/lib/lang/nl.lng b/interface/web/mailuser/lib/lang/nl.lng index 114dec9b91..6383a82864 100644 --- a/interface/web/mailuser/lib/lang/nl.lng +++ b/interface/web/mailuser/lib/lang/nl.lng @@ -1,8 +1,8 @@ <?php $wb['Email Account'] = 'Email Account'; -$wb['Overview'] = 'Overview'; -$wb['Password'] = 'Password'; -$wb['Autoresponder'] = 'Autoresponder'; +$wb['Overview'] = 'Overzicht'; +$wb['Password'] = 'Wachtwoord'; +$wb['Autoresponder'] = 'Autobeantwoorden'; $wb['Send copy'] = 'Send copy'; $wb['Spamfilter'] = 'Spamfilter'; $wb['Email Filters'] = 'Email Filters'; diff --git a/interface/web/mailuser/lib/lang/nl_mail_user_autoresponder.lng b/interface/web/mailuser/lib/lang/nl_mail_user_autoresponder.lng index 79f386a7dc..7c8283c838 100644 --- a/interface/web/mailuser/lib/lang/nl_mail_user_autoresponder.lng +++ b/interface/web/mailuser/lib/lang/nl_mail_user_autoresponder.lng @@ -1,13 +1,13 @@ <?php -$wb['mailbox_autoresponder_txt'] = 'Autoresponder'; -$wb['autoresponder_subject'] = 'Out of office reply'; -$wb['autoresponder_text_txt'] = 'Text'; -$wb['autoresponder_txt'] = 'Active'; -$wb['autoresponder_start_date_txt'] = 'Start on'; -$wb['autoresponder_start_date_isfuture'] = 'Start date cannot be in the past.'; -$wb['autoresponder_end_date_txt'] = 'End by'; -$wb['autoresponder_end_date_isgreater'] = 'End date must be set and be later than start date.'; -$wb['autoresponder_active'] = 'Enable the autoresponder'; -$wb['now_txt'] = 'Now'; -$wb['autoresponder_subject_txt'] = 'Betreff'; +$wb['mailbox_autoresponder_txt'] = 'Autobeantwoorden'; +$wb['autoresponder_subject'] = 'Out of office antwoord'; +$wb['autoresponder_text_txt'] = 'Tekst'; +$wb['autoresponder_txt'] = 'Actief'; +$wb['autoresponder_start_date_txt'] = 'Start op'; +$wb['autoresponder_start_date_isfuture'] = 'Startdatum mag niet in het verleden liggen.'; +$wb['autoresponder_end_date_txt'] = 'Eindigt op'; +$wb['autoresponder_end_date_isgreater'] = 'Einddatum moet later zijn dan de startdatum.'; +$wb['autoresponder_active'] = 'Inschakelen autobeantwoorden'; +$wb['now_txt'] = 'Nu'; +$wb['autoresponder_subject_txt'] = 'E-mail onderwerp'; ?> diff --git a/interface/web/mailuser/lib/lang/nl_mail_user_filter.lng b/interface/web/mailuser/lib/lang/nl_mail_user_filter.lng index 4069a15351..0092c288a0 100644 --- a/interface/web/mailuser/lib/lang/nl_mail_user_filter.lng +++ b/interface/web/mailuser/lib/lang/nl_mail_user_filter.lng @@ -1,21 +1,21 @@ <?php -$wb['rulename_txt'] = 'Name'; -$wb['action_txt'] = 'Action'; -$wb['target_txt'] = 'Folder'; -$wb['active_txt'] = 'Active'; -$wb['rulename_error_empty'] = 'Name is empty.'; -$wb['searchterm_is_empty'] = 'Search term is empty.'; -$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['subject_txt'] = 'Subject'; -$wb['from_txt'] = 'From'; -$wb['to_txt'] = 'To'; -$wb['contains_txt'] = 'Contains'; -$wb['is_txt'] = 'Is'; -$wb['begins_with_txt'] = 'Begins with'; -$wb['ends_with_txt'] = 'Ends with'; -$wb['move_to_txt'] = 'Move to'; -$wb['delete_txt'] = 'Delete'; -$wb['mailbox_filter_txt'] = 'Mailbox filter'; +$wb['rulename_txt'] = "Naam"; +$wb['action_txt'] = "Actie"; +$wb['target_txt'] = "Map"; +$wb['active_txt'] = "Actief"; +$wb['rulename_error_empty'] = "Naam is niet ingevuld."; +$wb['searchterm_is_empty'] = "Zoekterm is niet ingvuld."; +$wb['source_txt'] = "Bron"; +$wb['target_error_regex'] = 'Het doel mag alleen de volgende karakters bevatten: a-z, 0-9, -, ., _, en {spatie}'; +$wb['limit_mailfilter_txt'] = "Het max. aantal e-mail filters voor uw account is bereikt."; +$wb['subject_txt'] = "Onderwerp"; +$wb['from_txt'] = "Afzender"; +$wb['to_txt'] = "Bestemming"; +$wb['contains_txt'] = "Bevat"; +$wb['is_txt'] = "Is"; +$wb['begins_with_txt'] = "Begint met"; +$wb['ends_with_txt'] = "Endigt in"; +$wb['move_to_txt'] = "Verplaatsen naar"; +$wb['delete_txt'] = "Verwijderen"; +$wb['mailbox_filter_txt'] = "Mailbox filter"; ?> -- GitLab From 090607b01bc9f4d9674ae3542316ef0e06085159 Mon Sep 17 00:00:00 2001 From: Till Brehm <tbrehm@ispconfig.org> Date: Fri, 27 Sep 2019 17:56:29 +0200 Subject: [PATCH 192/215] Fixes #5410 rspamd mail aliases don't get updated when policy is changed --- .../lib/plugins/mail_mail_domain_plugin.inc.php | 10 ++++++++++ interface/web/mail/spamfilter_policy_edit.php | 14 ++++++++++++++ 2 files changed, 24 insertions(+) diff --git a/interface/lib/plugins/mail_mail_domain_plugin.inc.php b/interface/lib/plugins/mail_mail_domain_plugin.inc.php index df6e3ffeb0..598fe74f09 100644 --- a/interface/lib/plugins/mail_mail_domain_plugin.inc.php +++ b/interface/lib/plugins/mail_mail_domain_plugin.inc.php @@ -116,6 +116,16 @@ class mail_mail_domain_plugin { $app->db->query("UPDATE spamfilter_users SET email=REPLACE(email, ?, ?), sys_userid = ?, sys_groupid = ? WHERE email LIKE ?", $page_form->oldDataRecord['domain'], $domain, $client_user_id, $sys_groupid, "%@" . $page_form->oldDataRecord['domain']); } // end if domain name changed + + //* Force-update the aliases (required for spamfilter changes) + $forwardings = $app->db->queryAllRecords("SELECT * FROM mail_forwarding WHERE source LIKE ? OR destination LIKE ?", "%@" . $domain, "%@" . $domain); + + if(is_array($forwardings)) { + foreach($forwardings as $rec) { + $app->db->datalogUpdate('mail_forwarding', array("source" => $rec['source']), 'forwarding_id', $rec['forwarding_id'],true); + } + } + } } diff --git a/interface/web/mail/spamfilter_policy_edit.php b/interface/web/mail/spamfilter_policy_edit.php index 8226ae6048..572a184020 100644 --- a/interface/web/mail/spamfilter_policy_edit.php +++ b/interface/web/mail/spamfilter_policy_edit.php @@ -105,6 +105,20 @@ class page_action extends tform_actions { if(is_array($spamfilter_users) && !empty($spamfilter_users)){ foreach($spamfilter_users as $spamfilter_user){ $app->db->datalogUpdate('spamfilter_users', $spamfilter_user, 'id', $spamfilter_user["id"], true); + + // check if this is an email domain + if(substr($spamfilter_user['email'],0,1) == '@') { + $domain = substr($spamfilter_user['email'],1); + $forwardings = $app->db->queryAllRecords("SELECT * FROM mail_forwarding WHERE source LIKE ? OR destination LIKE ?", "%@" . $domain, "%@" . $domain); + + // Force-update aliases and forwards + if(is_array($forwardings)) { + foreach($forwardings as $rec) { + $app->db->datalogUpdate('mail_forwarding', array("source" => $rec['source']), 'forwarding_id', $rec['forwarding_id'],true); + } + } + } + } } } -- GitLab From b08a125644ab9b2d48a41a69721d87767ee73312 Mon Sep 17 00:00:00 2001 From: Till Brehm <tbrehm@ispconfig.org> Date: Thu, 3 Oct 2019 16:56:09 +0200 Subject: [PATCH 193/215] Fix for issue #5415 --- interface/lib/classes/auth.inc.php | 23 ++++++++++++++----- .../lib/classes/listform_actions.inc.php | 10 ++++++-- interface/lib/classes/tform_actions.inc.php | 3 +++ .../templates/directive_snippets_list.htm | 2 +- .../web/admin/templates/firewall_list.htm | 2 +- interface/web/admin/templates/groups_list.htm | 2 +- .../web/admin/templates/iptables_list.htm | 2 +- .../admin/templates/server_config_list.htm | 2 +- .../web/admin/templates/server_ip_list.htm | 2 +- .../admin/templates/server_ip_map_list.htm | 2 +- interface/web/admin/templates/server_list.htm | 2 +- .../web/admin/templates/server_php_list.htm | 2 +- .../admin/templates/software_repo_list.htm | 2 +- interface/web/admin/templates/users_list.htm | 2 +- .../client/templates/client_circle_list.htm | 2 +- .../client_message_template_list.htm | 2 +- .../client/templates/client_template_list.htm | 2 +- .../web/client/templates/clients_list.htm | 2 +- .../web/client/templates/domain_list.htm | 2 +- .../templates/message_template_list.htm | 2 +- .../web/client/templates/resellers_list.htm | 2 +- interface/web/dns/templates/dns_a_list.htm | 2 +- .../dns/templates/dns_slave_admin_list.htm | 2 +- .../web/dns/templates/dns_slave_list.htm | 2 +- .../web/dns/templates/dns_soa_admin_list.htm | 2 +- interface/web/dns/templates/dns_soa_list.htm | 2 +- .../web/dns/templates/dns_template_list.htm | 2 +- .../help/templates/support_message_list.htm | 2 +- .../web/mail/templates/mail_alias_list.htm | 2 +- .../mail/templates/mail_aliasdomain_list.htm | 2 +- .../mail/templates/mail_blacklist_list.htm | 2 +- .../templates/mail_content_filter_list.htm | 2 +- .../mail/templates/mail_domain_admin_list.htm | 2 +- .../templates/mail_domain_catchall_list.htm | 2 +- .../web/mail/templates/mail_domain_list.htm | 2 +- .../web/mail/templates/mail_forward_list.htm | 2 +- .../web/mail/templates/mail_get_list.htm | 2 +- .../mail/templates/mail_mailinglist_list.htm | 2 +- .../templates/mail_relay_recipient_list.htm | 2 +- .../mail/templates/mail_transport_list.htm | 2 +- .../mail/templates/mail_user_filter_list.htm | 2 +- .../web/mail/templates/mail_user_list.htm | 2 +- .../mail/templates/mail_whitelist_list.htm | 2 +- .../templates/spamfilter_blacklist_list.htm | 2 +- .../mail/templates/spamfilter_config_list.htm | 2 +- .../mail/templates/spamfilter_policy_list.htm | 2 +- .../mail/templates/spamfilter_users_list.htm | 2 +- .../templates/spamfilter_whitelist_list.htm | 2 +- .../mail/templates/xmpp_domain_admin_list.htm | 2 +- .../web/mail/templates/xmpp_domain_list.htm | 2 +- .../web/mail/templates/xmpp_user_list.htm | 2 +- .../templates/mail_user_filter_list.htm | 2 +- .../web/monitor/templates/datalog_list.htm | 2 +- .../web/monitor/templates/syslog_list.htm | 4 ++-- interface/web/sites/templates/cron_list.htm | 2 +- .../sites/templates/database_admin_list.htm | 2 +- .../web/sites/templates/database_list.htm | 2 +- .../templates/database_user_admin_list.htm | 2 +- .../sites/templates/database_user_list.htm | 2 +- .../web/sites/templates/ftp_user_list.htm | 2 +- .../web/sites/templates/shell_user_list.htm | 2 +- .../sites/templates/web_childdomain_list.htm | 2 +- .../web/sites/templates/web_folder_list.htm | 2 +- .../sites/templates/web_folder_user_list.htm | 2 +- .../templates/web_vhost_domain_admin_list.htm | 2 +- .../sites/templates/web_vhost_domain_list.htm | 2 +- .../web/sites/templates/webdav_user_list.htm | 2 +- interface/web/vm/templates/openvz_ip_list.htm | 2 +- .../vm/templates/openvz_ostemplate_list.htm | 2 +- .../web/vm/templates/openvz_template_list.htm | 2 +- interface/web/vm/templates/openvz_vm_list.htm | 2 +- 71 files changed, 97 insertions(+), 77 deletions(-) diff --git a/interface/lib/classes/auth.inc.php b/interface/lib/classes/auth.inc.php index afe50ac692..2075c7b90d 100644 --- a/interface/lib/classes/auth.inc.php +++ b/interface/lib/classes/auth.inc.php @@ -268,16 +268,27 @@ class auth { return array('csrf_id' => $_csrf_id,'csrf_key' => $_csrf_key); } - public function csrf_token_check() { + public function csrf_token_check($method = 'POST') { global $app; - if(isset($_POST) && is_array($_POST)) { + if($method == 'POST') { + $input_vars = $_POST; + } elseif ($method == 'GET') { + $input_vars = $_GET; + } else { + $app->error('Unknown CSRF verification method.'); + } + + //print_r($input_vars); + //die(print_r($_SESSION['_csrf'])); + + if(isset($input_vars) && is_array($input_vars)) { $_csrf_valid = false; - if(isset($_POST['_csrf_id']) && isset($_POST['_csrf_key'])) { - $_csrf_id = trim($_POST['_csrf_id']); - $_csrf_key = trim($_POST['_csrf_key']); + if(isset($input_vars['_csrf_id']) && isset($input_vars['_csrf_key'])) { + $_csrf_id = trim($input_vars['_csrf_id']); + $_csrf_key = trim($input_vars['_csrf_key']); if(isset($_SESSION['_csrf']) && isset($_SESSION['_csrf'][$_csrf_id]) && isset($_SESSION['_csrf_timeout']) && isset($_SESSION['_csrf_timeout'][$_csrf_id])) { - if($_SESSION['_csrf'][$_csrf_id] === $_csrf_key && $_SESSION['_csrf_timeout'] >= time()) $_csrf_valid = true; + if($_SESSION['_csrf'][$_csrf_id] === $_csrf_key && $_SESSION['_csrf_timeout'][$_csrf_id] >= time()) $_csrf_valid = true; } } if($_csrf_valid !== true) { diff --git a/interface/lib/classes/listform_actions.inc.php b/interface/lib/classes/listform_actions.inc.php index 1b8426b894..4a463fe015 100644 --- a/interface/lib/classes/listform_actions.inc.php +++ b/interface/lib/classes/listform_actions.inc.php @@ -129,13 +129,19 @@ class listform_actions { // Getting Datasets from DB $records = $app->db->queryAllRecords($this->getQueryString($php_sort)); + + $csrf_token = $app->auth->csrf_token_get($app->listform->listDef['name']); + $_csrf_id = $csrf_token['csrf_id']; + $_csrf_key = $csrf_token['csrf_key']; $this->DataRowColor = "#FFFFFF"; $records_new = array(); if(is_array($records)) { $this->idx_key = $app->listform->listDef["table_idx"]; - foreach($records as $rec) { - $records_new[] = $this->prepareDataRow($rec); + foreach($records as $key => $rec) { + $records_new[$key] = $this->prepareDataRow($rec); + $records_new[$key]['csrf_id'] = $_csrf_id; + $records_new[$key]['csrf_key'] = $_csrf_key; } } diff --git a/interface/lib/classes/tform_actions.inc.php b/interface/lib/classes/tform_actions.inc.php index f277c51274..d83ec0d3d7 100644 --- a/interface/lib/classes/tform_actions.inc.php +++ b/interface/lib/classes/tform_actions.inc.php @@ -297,6 +297,9 @@ class tform_actions { */ function onDelete() { global $app, $conf, $list_def_file, $tform_def_file; + + // Check CSRF Token + $app->auth->csrf_token_check('GET'); include_once $list_def_file; diff --git a/interface/web/admin/templates/directive_snippets_list.htm b/interface/web/admin/templates/directive_snippets_list.htm index 602c71a07c..8433282496 100644 --- a/interface/web/admin/templates/directive_snippets_list.htm +++ b/interface/web/admin/templates/directive_snippets_list.htm @@ -40,7 +40,7 @@ <td><a href="#" data-load-content="admin/directive_snippets_edit.php?id={tmpl_var name='id'}">{tmpl_var name="customer_viewable"}</a></td> <td><a href="#" data-load-content="admin/directive_snippets_edit.php?id={tmpl_var name='id'}">{tmpl_var name="master_directive_snippets_id"}</a></td> <td class="text-right"> - <tmpl_if name='is_master'></tmpl_else><a class="btn btn-default formbutton-danger formbutton-narrow" href="javascript: ISPConfig.confirm_action('admin/directive_snippets_del.php?id={tmpl_var name='id'}&phpsessid={tmpl_var name='phpsessid'}','{tmpl_var name='delete_confirmation'}');"><span class="icon icon-delete"></span></a></tmpl_if> + <tmpl_if name='is_master'></tmpl_else><a class="btn btn-default formbutton-danger formbutton-narrow" href="javascript: ISPConfig.confirm_action('admin/directive_snippets_del.php?id={tmpl_var name='id'}&_csrf_id={tmpl_var name='csrf_id'}&_csrf_key={tmpl_var name='csrf_key'}&phpsessid={tmpl_var name='phpsessid'}','{tmpl_var name='delete_confirmation'}');"><span class="icon icon-delete"></span></a></tmpl_if> </td> </tr> </tmpl_loop> diff --git a/interface/web/admin/templates/firewall_list.htm b/interface/web/admin/templates/firewall_list.htm index ac85f7e4fe..b40414a5da 100644 --- a/interface/web/admin/templates/firewall_list.htm +++ b/interface/web/admin/templates/firewall_list.htm @@ -40,7 +40,7 @@ <td><a href="#" data-load-content="admin/firewall_edit.php?id={tmpl_var name='id'}">{tmpl_var name="tcp_port"}</a></td> <td><a href="#" data-load-content="admin/firewall_edit.php?id={tmpl_var name='id'}">{tmpl_var name="udp_port"}</a></td> <td class="text-right"> - <a class="btn btn-default formbutton-danger formbutton-narrow" href="javascript: ISPConfig.confirm_action('admin/firewall_del.php?id={tmpl_var name='id'}&phpsessid={tmpl_var name='phpsessid'}','{tmpl_var name='delete_confirmation'}');"><span class="icon icon-delete"></span></a> + <a class="btn btn-default formbutton-danger formbutton-narrow" href="javascript: ISPConfig.confirm_action('admin/firewall_del.php?id={tmpl_var name='id'}&_csrf_id={tmpl_var name='csrf_id'}&_csrf_key={tmpl_var name='csrf_key'}&phpsessid={tmpl_var name='phpsessid'}','{tmpl_var name='delete_confirmation'}');"><span class="icon icon-delete"></span></a> </td> </tr> </tmpl_loop> diff --git a/interface/web/admin/templates/groups_list.htm b/interface/web/admin/templates/groups_list.htm index d53ee58b24..972ae64144 100644 --- a/interface/web/admin/templates/groups_list.htm +++ b/interface/web/admin/templates/groups_list.htm @@ -35,7 +35,7 @@ <td><a href="#" data-load-content="admin/groups_edit.php?id={tmpl_var name='id'}">{tmpl_var name="name"}</a></td> <td><a href="#" data-load-content="admin/groups_edit.php?id={tmpl_var name='id'}">{tmpl_var name="description"}</a></td> <td class="text-right"> - <a class="btn btn-default formbutton-danger formbutton-narrow" href="javascript: ISPConfig.confirm_action('admin/groups_del.php?id={tmpl_var name='id'}&phpsessid={tmpl_var name='phpsessid'}','{tmpl_var name='delete_confirmation'}');"><span class="icon icon-delete"></span></a> + <a class="btn btn-default formbutton-danger formbutton-narrow" href="javascript: ISPConfig.confirm_action('admin/groups_del.php?id={tmpl_var name='id'}&_csrf_id={tmpl_var name='csrf_id'}&_csrf_key={tmpl_var name='csrf_key'}&phpsessid={tmpl_var name='phpsessid'}','{tmpl_var name='delete_confirmation'}');"><span class="icon icon-delete"></span></a> </td> </tr> </tmpl_loop> diff --git a/interface/web/admin/templates/iptables_list.htm b/interface/web/admin/templates/iptables_list.htm index e1fcb3dc03..2adbd04627 100644 --- a/interface/web/admin/templates/iptables_list.htm +++ b/interface/web/admin/templates/iptables_list.htm @@ -51,7 +51,7 @@ <td><a href="#" data-load-content="admin/iptables_edit.php?id={tmpl_var name='id'}">{tmpl_var name="state"}</a></td> <td><a href="#" data-load-content="admin/iptables_edit.php?id={tmpl_var name='id'}">{tmpl_var name="target"}</a></td> <td class="text-right"> - <a class="btn btn-default formbutton-danger formbutton-narrow" href="javascript: ISPConfig.confirm_action('admin/iptables_del.php?id={tmpl_var name='id'}&phpsessid={tmpl_var name='phpsessid'}','{tmpl_var name='delete_confirmation'}');"><span class="icon icon-delete"></span></a> + <a class="btn btn-default formbutton-danger formbutton-narrow" href="javascript: ISPConfig.confirm_action('admin/iptables_del.php?id={tmpl_var name='id'}&_csrf_id={tmpl_var name='csrf_id'}&_csrf_key={tmpl_var name='csrf_key'}&phpsessid={tmpl_var name='phpsessid'}','{tmpl_var name='delete_confirmation'}');"><span class="icon icon-delete"></span></a> </td> </tr> </tmpl_loop> diff --git a/interface/web/admin/templates/server_config_list.htm b/interface/web/admin/templates/server_config_list.htm index ef0935552a..9284c5c354 100644 --- a/interface/web/admin/templates/server_config_list.htm +++ b/interface/web/admin/templates/server_config_list.htm @@ -24,7 +24,7 @@ <tr> <td><a href="#" data-load-content="admin/server_config_edit.php?id={tmpl_var name='id'}">{tmpl_var name="server_name"}</a></td> <td class="text-right"> - <a class="btn btn-default formbutton-danger formbutton-narrow" href="javascript: ISPConfig.confirm_action('admin/server_config_del.php?id={tmpl_var name='id'}&phpsessid={tmpl_var name='phpsessid'}','{tmpl_var name='delete_confirmation'}');"><span class="icon icon-delete"></span></a> + <a class="btn btn-default formbutton-danger formbutton-narrow" href="javascript: ISPConfig.confirm_action('admin/server_config_del.php?id={tmpl_var name='id'}&_csrf_id={tmpl_var name='csrf_id'}&_csrf_key={tmpl_var name='csrf_key'}&phpsessid={tmpl_var name='phpsessid'}','{tmpl_var name='delete_confirmation'}');"><span class="icon icon-delete"></span></a> </td> </tr> </tmpl_loop> diff --git a/interface/web/admin/templates/server_ip_list.htm b/interface/web/admin/templates/server_ip_list.htm index 892c263f20..c612e1ca64 100644 --- a/interface/web/admin/templates/server_ip_list.htm +++ b/interface/web/admin/templates/server_ip_list.htm @@ -45,7 +45,7 @@ <td><a href="#" data-load-content="admin/server_ip_edit.php?id={tmpl_var name='id'}">{tmpl_var name="virtualhost"}</a></td> <td><a href="#" data-load-content="admin/server_ip_edit.php?id={tmpl_var name='id'}">{tmpl_var name="virtualhost_port"}</a></td> <td class="text-right"> - <a class="btn btn-default formbutton-danger formbutton-narrow" href="javascript: ISPConfig.confirm_action('admin/server_ip_del.php?id={tmpl_var name='id'}&phpsessid={tmpl_var name='phpsessid'}','{tmpl_var name='delete_confirmation'}');"><span class="icon icon-delete"></span></a> + <a class="btn btn-default formbutton-danger formbutton-narrow" href="javascript: ISPConfig.confirm_action('admin/server_ip_del.php?id={tmpl_var name='id'}&_csrf_id={tmpl_var name='csrf_id'}&_csrf_key={tmpl_var name='csrf_key'}&phpsessid={tmpl_var name='phpsessid'}','{tmpl_var name='delete_confirmation'}');"><span class="icon icon-delete"></span></a> </td> </tr> </tmpl_loop> diff --git a/interface/web/admin/templates/server_ip_map_list.htm b/interface/web/admin/templates/server_ip_map_list.htm index a186e49b03..ea23856022 100644 --- a/interface/web/admin/templates/server_ip_map_list.htm +++ b/interface/web/admin/templates/server_ip_map_list.htm @@ -32,7 +32,7 @@ <td><a href="#" data-load-content="admin/server_ip_map_edit.php?id={tmpl_var name='id'}">{tmpl_var name="source_ip"}</a></td> <td><a href="#" data-load-content="admin/server_ip_map_edit.php?id={tmpl_var name='id'}">{tmpl_var name="destination_ip"}</a></td> <td class="text-right"> - <a class="btn btn-default formbutton-danger formbutton-narrow" href="javascript: ISPConfig.confirm_action('admin/server_ip_map_del.php?id={tmpl_var name='id'}&phpsessid={tmpl_var name='phpsessid'}','{tmpl_var name='delete_confirmation'}');"><span class="icon icon-delete"></span></a> + <a class="btn btn-default formbutton-danger formbutton-narrow" href="javascript: ISPConfig.confirm_action('admin/server_ip_map_del.php?id={tmpl_var name='id'}&_csrf_id={tmpl_var name='csrf_id'}&_csrf_key={tmpl_var name='csrf_key'}&phpsessid={tmpl_var name='phpsessid'}','{tmpl_var name='delete_confirmation'}');"><span class="icon icon-delete"></span></a> </td> </tr> </tmpl_loop> diff --git a/interface/web/admin/templates/server_list.htm b/interface/web/admin/templates/server_list.htm index 1152909320..313fad7ff1 100644 --- a/interface/web/admin/templates/server_list.htm +++ b/interface/web/admin/templates/server_list.htm @@ -45,7 +45,7 @@ <td>{tmpl_var name="vserver_server"}</td> <td>{tmpl_var name="xmpp_server"}</td> <td class="text-right"> - <a class="btn btn-default formbutton-danger formbutton-narrow" href="javascript: ISPConfig.confirm_action('admin/server_del.php?id={tmpl_var name='id'}&phpsessid={tmpl_var name='phpsessid'}','{tmpl_var name='delete_confirmation'}');"><span class="icon icon-delete"></span></a> + <a class="btn btn-default formbutton-danger formbutton-narrow" href="javascript: ISPConfig.confirm_action('admin/server_del.php?id={tmpl_var name='id'}&_csrf_id={tmpl_var name='csrf_id'}&_csrf_key={tmpl_var name='csrf_key'}&phpsessid={tmpl_var name='phpsessid'}','{tmpl_var name='delete_confirmation'}');"><span class="icon icon-delete"></span></a> </td> </tr> </tmpl_loop> diff --git a/interface/web/admin/templates/server_php_list.htm b/interface/web/admin/templates/server_php_list.htm index 5a6392eea3..9833eb1e7e 100644 --- a/interface/web/admin/templates/server_php_list.htm +++ b/interface/web/admin/templates/server_php_list.htm @@ -39,7 +39,7 @@ <td><a href="#" data-load-content="admin/server_php_edit.php?id={tmpl_var name='id'}">{tmpl_var name="client_id"}</a></td> <td><a href="#" data-load-content="admin/server_php_edit.php?id={tmpl_var name='id'}">{tmpl_var name="name"}</a></td> <td class="text-right"> - <a class="btn btn-default formbutton-danger formbutton-narrow" href="javascript: ISPConfig.confirm_action('admin/server_php_del.php?id={tmpl_var name='id'}&phpsessid={tmpl_var name='phpsessid'}','{tmpl_var name='delete_confirmation'}');"><span class="icon icon-delete"></span></a> + <a class="btn btn-default formbutton-danger formbutton-narrow" href="javascript: ISPConfig.confirm_action('admin/server_php_del.php?id={tmpl_var name='id'}&_csrf_id={tmpl_var name='csrf_id'}&_csrf_key={tmpl_var name='csrf_key'}&phpsessid={tmpl_var name='phpsessid'}','{tmpl_var name='delete_confirmation'}');"><span class="icon icon-delete"></span></a> </td> </tr> </tmpl_loop> diff --git a/interface/web/admin/templates/software_repo_list.htm b/interface/web/admin/templates/software_repo_list.htm index 8b1a48b562..d408896de6 100644 --- a/interface/web/admin/templates/software_repo_list.htm +++ b/interface/web/admin/templates/software_repo_list.htm @@ -37,7 +37,7 @@ <td><a href="#" data-load-content="admin/software_repo_edit.php?id={tmpl_var name='id'}">{tmpl_var name="repo_name"}</a></td> <td><a href="#" data-load-content="admin/software_repo_edit.php?id={tmpl_var name='id'}">{tmpl_var name="repo_url"}</a></td> <td class="text-right"> - <a class="btn btn-default formbutton-danger formbutton-narrow" href="javascript: ISPConfig.confirm_action('admin/software_repo_del.php?id={tmpl_var name='id'}&phpsessid={tmpl_var name='phpsessid'}','{tmpl_var name='delete_confirmation'}');"><span class="icon icon-delete"></span></a> + <a class="btn btn-default formbutton-danger formbutton-narrow" href="javascript: ISPConfig.confirm_action('admin/software_repo_del.php?id={tmpl_var name='id'}&_csrf_id={tmpl_var name='csrf_id'}&_csrf_key={tmpl_var name='csrf_key'}&phpsessid={tmpl_var name='phpsessid'}','{tmpl_var name='delete_confirmation'}');"><span class="icon icon-delete"></span></a> </td> </tr> </tmpl_loop> diff --git a/interface/web/admin/templates/users_list.htm b/interface/web/admin/templates/users_list.htm index b7872527ff..8db81c6c8d 100644 --- a/interface/web/admin/templates/users_list.htm +++ b/interface/web/admin/templates/users_list.htm @@ -43,7 +43,7 @@ <td class="text-right"> <tmpl_if name="username" op="!=" value="admin"> <a class="btn btn-default formbutton-success formbutton-narrow" data-load-content="login/login_as.php?cid={tmpl_var name='client_id'}"><span class="icon icon-loginas"></span></a> - <a class="btn btn-default formbutton-danger formbutton-narrow" href="javascript: ISPConfig.confirm_action('admin/users_del.php?id={tmpl_var name='id'}&phpsessid={tmpl_var name='phpsessid'}','{tmpl_var name='delete_confirmation'}');"><span class="icon icon-delete"></span></a> + <a class="btn btn-default formbutton-danger formbutton-narrow" href="javascript: ISPConfig.confirm_action('admin/users_del.php?id={tmpl_var name='id'}&_csrf_id={tmpl_var name='csrf_id'}&_csrf_key={tmpl_var name='csrf_key'}&phpsessid={tmpl_var name='phpsessid'}','{tmpl_var name='delete_confirmation'}');"><span class="icon icon-delete"></span></a> </tmpl_if> </td> </tr> diff --git a/interface/web/client/templates/client_circle_list.htm b/interface/web/client/templates/client_circle_list.htm index 56bce62d6c..2cfbdf36e3 100644 --- a/interface/web/client/templates/client_circle_list.htm +++ b/interface/web/client/templates/client_circle_list.htm @@ -40,7 +40,7 @@ <td><a href="#" data-load-content="client/client_circle_edit.php?id={tmpl_var name='id'}">{tmpl_var name="circle_name"}</a></td> <td><a href="#" data-load-content="client/client_circle_edit.php?id={tmpl_var name='id'}">{tmpl_var name="description"}</a></td> <td class="text-right"> - <a class="btn btn-default formbutton-danger formbutton-narrow" href="javascript: ISPConfig.confirm_action('client/client_circle_del.php?id={tmpl_var name='id'}&phpsessid={tmpl_var name='phpsessid'}','{tmpl_var name='delete_confirmation'}');"><span class="icon icon-delete"></span></a> + <a class="btn btn-default formbutton-danger formbutton-narrow" href="javascript: ISPConfig.confirm_action('client/client_circle_del.php?id={tmpl_var name='id'}&_csrf_id={tmpl_var name='csrf_id'}&_csrf_key={tmpl_var name='csrf_key'}&phpsessid={tmpl_var name='phpsessid'}','{tmpl_var name='delete_confirmation'}');"><span class="icon icon-delete"></span></a> </td> </tr> </tmpl_loop> diff --git a/interface/web/client/templates/client_message_template_list.htm b/interface/web/client/templates/client_message_template_list.htm index d83a9f7dec..2f586c1ed7 100644 --- a/interface/web/client/templates/client_message_template_list.htm +++ b/interface/web/client/templates/client_message_template_list.htm @@ -32,7 +32,7 @@ <td><a href="#" data-load-content="client/message_template_edit.php?id={tmpl_var name='id'}">{tmpl_var name="template_name"}</a></td> <td class="text-right"> <div class="buttons icons16"> - <a class="btn btn-default formbutton-danger formbutton-narrow" href="javascript: ISPConfig.confirm_action('client/message_template_del.php?id={tmpl_var name='id'}&phpsessid={tmpl_var name='phpsessid'}','{tmpl_var name='delete_confirmation'}');"><span class="icon icon-delete"></span></a> + <a class="btn btn-default formbutton-danger formbutton-narrow" href="javascript: ISPConfig.confirm_action('client/message_template_del.php?id={tmpl_var name='id'}&_csrf_id={tmpl_var name='csrf_id'}&_csrf_key={tmpl_var name='csrf_key'}&phpsessid={tmpl_var name='phpsessid'}','{tmpl_var name='delete_confirmation'}');"><span class="icon icon-delete"></span></a> </div> </td> </tr> diff --git a/interface/web/client/templates/client_template_list.htm b/interface/web/client/templates/client_template_list.htm index 37564f7197..887072b438 100644 --- a/interface/web/client/templates/client_template_list.htm +++ b/interface/web/client/templates/client_template_list.htm @@ -40,7 +40,7 @@ <td><a href="#" data-load-content="client/client_template_edit.php?id={tmpl_var name='id'}">{tmpl_var name="template_type"}</a></td> <td><a href="#" data-load-content="client/client_template_edit.php?id={tmpl_var name='id'}">{tmpl_var name="template_name"}</a></td> <td class="text-right"> - <a class="btn btn-default formbutton-danger formbutton-narrow" href="javascript: ISPConfig.confirm_action('client/client_template_del.php?id={tmpl_var name='id'}&phpsessid={tmpl_var name='phpsessid'}','{tmpl_var name='delete_confirmation'}');"><span class="icon icon-delete"></span></a> + <a class="btn btn-default formbutton-danger formbutton-narrow" href="javascript: ISPConfig.confirm_action('client/client_template_del.php?id={tmpl_var name='id'}&_csrf_id={tmpl_var name='csrf_id'}&_csrf_key={tmpl_var name='csrf_key'}&phpsessid={tmpl_var name='phpsessid'}','{tmpl_var name='delete_confirmation'}');"><span class="icon icon-delete"></span></a> </td> </tr> </tmpl_loop> diff --git a/interface/web/client/templates/clients_list.htm b/interface/web/client/templates/clients_list.htm index 7a538eba22..2ffd7dfa78 100644 --- a/interface/web/client/templates/clients_list.htm +++ b/interface/web/client/templates/clients_list.htm @@ -68,7 +68,7 @@ <tmpl_elseif name="is_reseller"> <a class="btn btn-default formbutton-success formbutton-narrow" data-load-content="login/login_as.php?cid={tmpl_var name='id'}"><span class="icon icon-loginas"></span></a> </tmpl_if> - <a class="btn btn-default formbutton-danger formbutton-narrow" href="javascript: ISPConfig.confirm_action('client/client_del.php?id={tmpl_var name='id'}&phpsessid={tmpl_var name='phpsessid'}','{tmpl_var name='delete_confirmation'}');"><span class="icon icon-delete"></span></a> + <a class="btn btn-default formbutton-danger formbutton-narrow" href="javascript: ISPConfig.confirm_action('client/client_del.php?id={tmpl_var name='id'}&_csrf_id={tmpl_var name='csrf_id'}&_csrf_key={tmpl_var name='csrf_key'}&phpsessid={tmpl_var name='phpsessid'}','{tmpl_var name='delete_confirmation'}');"><span class="icon icon-delete"></span></a> </td> </tr> </tmpl_loop> diff --git a/interface/web/client/templates/domain_list.htm b/interface/web/client/templates/domain_list.htm index 8dda689cba..818812ddd9 100644 --- a/interface/web/client/templates/domain_list.htm +++ b/interface/web/client/templates/domain_list.htm @@ -32,7 +32,7 @@ <td><a href="#" data-load-content="client/domain_edit.php?id={tmpl_var name='id'}">{tmpl_var name="domain"}</a></td> <td><a href="#" data-load-content="client/domain_edit.php?id={tmpl_var name='id'}">{tmpl_var name="sys_groupid"}</a></td> <td class="text-right"> - <a class="btn btn-default formbutton-danger formbutton-narrow" href="javascript: ISPConfig.confirm_action('client/domain_del.php?id={tmpl_var name='id'}&phpsessid={tmpl_var name='phpsessid'}','{tmpl_var name='delete_confirmation'}');"><span class="icon icon-delete"></span></a> + <a class="btn btn-default formbutton-danger formbutton-narrow" href="javascript: ISPConfig.confirm_action('client/domain_del.php?id={tmpl_var name='id'}&_csrf_id={tmpl_var name='csrf_id'}&_csrf_key={tmpl_var name='csrf_key'}&phpsessid={tmpl_var name='phpsessid'}','{tmpl_var name='delete_confirmation'}');"><span class="icon icon-delete"></span></a> </td> </tr> </tmpl_loop> diff --git a/interface/web/client/templates/message_template_list.htm b/interface/web/client/templates/message_template_list.htm index 5efaf5f23e..71011634f9 100644 --- a/interface/web/client/templates/message_template_list.htm +++ b/interface/web/client/templates/message_template_list.htm @@ -28,7 +28,7 @@ <td><a href="#" data-load-content="billing/invoice_message_template_edit.php?id={tmpl_var name='id'}">{tmpl_var name="template_name"}</a></td> <td class="text-right"> <div class="buttons icons16"> - <a class="btn btn-default formbutton-danger formbutton-narrow" href="javascript: ISPConfig.confirm_action('billing/invoice_message_template_del.php?id={tmpl_var name='id'}&phpsessid={tmpl_var name='phpsessid'}','{tmpl_var name='delete_confirmation'}');"><span class="icon icon-delete"></span></a> + <a class="btn btn-default formbutton-danger formbutton-narrow" href="javascript: ISPConfig.confirm_action('billing/invoice_message_template_del.php?id={tmpl_var name='id'}&_csrf_id={tmpl_var name='csrf_id'}&_csrf_key={tmpl_var name='csrf_key'}&phpsessid={tmpl_var name='phpsessid'}','{tmpl_var name='delete_confirmation'}');"><span class="icon icon-delete"></span></a> </div> </td> </tr> diff --git a/interface/web/client/templates/resellers_list.htm b/interface/web/client/templates/resellers_list.htm index 8edfa08546..1ccaffa07e 100644 --- a/interface/web/client/templates/resellers_list.htm +++ b/interface/web/client/templates/resellers_list.htm @@ -50,7 +50,7 @@ <td><a href="#" data-load-content="client/reseller_edit.php?id={tmpl_var name='id'}"><span class="flags flag-{tmpl_var name="countryiso"}">{tmpl_var name="country"}</span></a></td> <td class="text-right"> <a class="btn btn-default formbutton-success formbutton-narrow" data-load-content="login/login_as.php?cid={tmpl_var name='id'}"><span class="icon icon-loginas"></span></a> - <a class="btn btn-default formbutton-danger formbutton-narrow" href="javascript: ISPConfig.confirm_action('client/reseller_del.php?id={tmpl_var name='id'}&phpsessid={tmpl_var name='phpsessid'}','{tmpl_var name='delete_confirmation'}');"><span class="icon icon-delete"></span></a> + <a class="btn btn-default formbutton-danger formbutton-narrow" href="javascript: ISPConfig.confirm_action('client/reseller_del.php?id={tmpl_var name='id'}&_csrf_id={tmpl_var name='csrf_id'}&_csrf_key={tmpl_var name='csrf_key'}&phpsessid={tmpl_var name='phpsessid'}','{tmpl_var name='delete_confirmation'}');"><span class="icon icon-delete"></span></a> </td> </tr> </tmpl_loop> diff --git a/interface/web/dns/templates/dns_a_list.htm b/interface/web/dns/templates/dns_a_list.htm index 67bf8ac910..5a4a5eeb68 100644 --- a/interface/web/dns/templates/dns_a_list.htm +++ b/interface/web/dns/templates/dns_a_list.htm @@ -75,7 +75,7 @@ <td><a href="#" data-load-content="dns/dns_{tmpl_var name='type_lowercase'}_edit.php?id={tmpl_var name='id'}">{tmpl_var name="aux"}</a></td> <td><a href="#" data-load-content="dns/dns_{tmpl_var name='type_lowercase'}_edit.php?id={tmpl_var name='id'}">{tmpl_var name="ttl"}</a></td> <td class="text-right"> - <a class="btn btn-default formbutton-danger formbutton-narrow" href="javascript: ISPConfig.confirm_action('dns/dns_rr_del.php?id={tmpl_var name='id'}&phpsessid={tmpl_var name='phpsessid'}','{tmpl_var name='delete_confirmation'}');"><span class="icon icon-delete"></span></a> + <a class="btn btn-default formbutton-danger formbutton-narrow" href="javascript: ISPConfig.confirm_action('dns/dns_rr_del.php?id={tmpl_var name='id'}&_csrf_id={tmpl_var name='csrf_id'}&_csrf_key={tmpl_var name='csrf_key'}&phpsessid={tmpl_var name='phpsessid'}','{tmpl_var name='delete_confirmation'}');"><span class="icon icon-delete"></span></a> </td> </tr> </tmpl_loop> diff --git a/interface/web/dns/templates/dns_slave_admin_list.htm b/interface/web/dns/templates/dns_slave_admin_list.htm index f4395849be..3afaa91175 100644 --- a/interface/web/dns/templates/dns_slave_admin_list.htm +++ b/interface/web/dns/templates/dns_slave_admin_list.htm @@ -59,7 +59,7 @@ <td><a href="#" data-load-content="dns/dns_slave_edit.php?id={tmpl_var name='id'}">{tmpl_var name="origin"}</a></td> <td><a href="#" data-load-content="dns/dns_slave_edit.php?id={tmpl_var name='id'}">{tmpl_var name="ns"}</a></td> <td class="text-right"> - <a class="btn btn-default formbutton-danger formbutton-narrow" href="javascript: ISPConfig.confirm_action('dns/dns_slave_del.php?id={tmpl_var name='id'}&phpsessid={tmpl_var name='phpsessid'}','{tmpl_var name='delete_confirmation'}');"><span class="icon icon-delete"></span></a> + <a class="btn btn-default formbutton-danger formbutton-narrow" href="javascript: ISPConfig.confirm_action('dns/dns_slave_del.php?id={tmpl_var name='id'}&_csrf_id={tmpl_var name='csrf_id'}&_csrf_key={tmpl_var name='csrf_key'}&phpsessid={tmpl_var name='phpsessid'}','{tmpl_var name='delete_confirmation'}');"><span class="icon icon-delete"></span></a> </td> </tr> </tmpl_loop> diff --git a/interface/web/dns/templates/dns_slave_list.htm b/interface/web/dns/templates/dns_slave_list.htm index 27916f4b25..799f14ba28 100644 --- a/interface/web/dns/templates/dns_slave_list.htm +++ b/interface/web/dns/templates/dns_slave_list.htm @@ -56,7 +56,7 @@ <td><a href="#" data-load-content="dns/dns_slave_edit.php?id={tmpl_var name='id'}">{tmpl_var name="origin"}</a></td> <td><a href="#" data-load-content="dns/dns_slave_edit.php?id={tmpl_var name='id'}">{tmpl_var name="ns"}</a></td> <td class="text-right"> - <a class="btn btn-default formbutton-danger formbutton-narrow" href="javascript: ISPConfig.confirm_action('dns/dns_slave_del.php?id={tmpl_var name='id'}&phpsessid={tmpl_var name='phpsessid'}','{tmpl_var name='delete_confirmation'}');"><span class="icon icon-delete"></span></a> + <a class="btn btn-default formbutton-danger formbutton-narrow" href="javascript: ISPConfig.confirm_action('dns/dns_slave_del.php?id={tmpl_var name='id'}&_csrf_id={tmpl_var name='csrf_id'}&_csrf_key={tmpl_var name='csrf_key'}&phpsessid={tmpl_var name='phpsessid'}','{tmpl_var name='delete_confirmation'}');"><span class="icon icon-delete"></span></a> </td> </tr> </tmpl_loop> diff --git a/interface/web/dns/templates/dns_soa_admin_list.htm b/interface/web/dns/templates/dns_soa_admin_list.htm index fbdc0398ed..79faa645fe 100644 --- a/interface/web/dns/templates/dns_soa_admin_list.htm +++ b/interface/web/dns/templates/dns_soa_admin_list.htm @@ -64,7 +64,7 @@ <td><a href="#" data-load-content="dns/dns_soa_edit.php?id={tmpl_var name='id'}" data-toggle="tooltip" data-placement="bottom" title="{tmpl_var name='ns'}">{tmpl_var name="ns"}</a></td> <td><a href="#" data-load-content="dns/dns_soa_edit.php?id={tmpl_var name='id'}" data-toggle="tooltip" data-placement="bottom" title="{tmpl_var name='mbox'}">{tmpl_var name="mbox"}</a></td> <td class="text-right"> - <a class="btn btn-default formbutton-danger formbutton-narrow" href="javascript: ISPConfig.confirm_action('dns/dns_soa_del.php?id={tmpl_var name='id'}&phpsessid={tmpl_var name='phpsessid'}','{tmpl_var name='delete_confirmation'}');"><span class="icon icon-delete"></span></a> + <a class="btn btn-default formbutton-danger formbutton-narrow" href="javascript: ISPConfig.confirm_action('dns/dns_soa_del.php?id={tmpl_var name='id'}&_csrf_id={tmpl_var name='csrf_id'}&_csrf_key={tmpl_var name='csrf_key'}&phpsessid={tmpl_var name='phpsessid'}','{tmpl_var name='delete_confirmation'}');"><span class="icon icon-delete"></span></a> </td> </tr> </tmpl_loop> diff --git a/interface/web/dns/templates/dns_soa_list.htm b/interface/web/dns/templates/dns_soa_list.htm index 22cd19484e..df579e852a 100644 --- a/interface/web/dns/templates/dns_soa_list.htm +++ b/interface/web/dns/templates/dns_soa_list.htm @@ -61,7 +61,7 @@ <td><a href="#" data-load-content="dns/dns_soa_edit.php?id={tmpl_var name='id'}" data-toggle="tooltip" data-placement="bottom" title="{tmpl_var name='ns'}">{tmpl_var name="ns"}</a></td> <td><a href="#" data-load-content="dns/dns_soa_edit.php?id={tmpl_var name='id'}" data-toggle="tooltip" data-placement="bottom" title="{tmpl_var name='mbox'}">{tmpl_var name="mbox"}</a></td> <td class="text-right"> - <a class="btn btn-default formbutton-danger formbutton-narrow" href="javascript: ISPConfig.confirm_action('dns/dns_soa_del.php?id={tmpl_var name='id'}&phpsessid={tmpl_var name='phpsessid'}','{tmpl_var name='delete_confirmation'}');"><span class="icon icon-delete"></span></a> + <a class="btn btn-default formbutton-danger formbutton-narrow" href="javascript: ISPConfig.confirm_action('dns/dns_soa_del.php?id={tmpl_var name='id'}&_csrf_id={tmpl_var name='csrf_id'}&_csrf_key={tmpl_var name='csrf_key'}&phpsessid={tmpl_var name='phpsessid'}','{tmpl_var name='delete_confirmation'}');"><span class="icon icon-delete"></span></a> </td> </tr> </tmpl_loop> diff --git a/interface/web/dns/templates/dns_template_list.htm b/interface/web/dns/templates/dns_template_list.htm index f7816cf4d8..7622666940 100644 --- a/interface/web/dns/templates/dns_template_list.htm +++ b/interface/web/dns/templates/dns_template_list.htm @@ -34,7 +34,7 @@ <td><a href="#" data-load-content="dns/dns_template_edit.php?id={tmpl_var name='id'}">{tmpl_var name="visible"}</a></td> <td><a href="#" data-load-content="dns/dns_template_edit.php?id={tmpl_var name='id'}">{tmpl_var name="name"}</a></td> <td class="text-right"> - <a class="btn btn-default formbutton-danger formbutton-narrow" href="javascript: ISPConfig.confirm_action('dns/dns_template_del.php?id={tmpl_var name='id'}&phpsessid={tmpl_var name='phpsessid'}','{tmpl_var name='delete_confirmation'}');"><span class="icon icon-delete"></span></a> + <a class="btn btn-default formbutton-danger formbutton-narrow" href="javascript: ISPConfig.confirm_action('dns/dns_template_del.php?id={tmpl_var name='id'}&_csrf_id={tmpl_var name='csrf_id'}&_csrf_key={tmpl_var name='csrf_key'}&phpsessid={tmpl_var name='phpsessid'}','{tmpl_var name='delete_confirmation'}');"><span class="icon icon-delete"></span></a> </td> </tr> </tmpl_loop> diff --git a/interface/web/help/templates/support_message_list.htm b/interface/web/help/templates/support_message_list.htm index 3094b96728..c0b4b75d74 100644 --- a/interface/web/help/templates/support_message_list.htm +++ b/interface/web/help/templates/support_message_list.htm @@ -37,7 +37,7 @@ <td><a href="#" data-load-content="help/support_message_edit.php?id={tmpl_var name='id'}">{tmpl_var name="subject"}</a></td> <td><a href="#" data-load-content="help/support_message_edit.php?id={tmpl_var name='id'}">{tmpl_var name="tstamp"}</a></td> <td class="text-right"> - <a class="btn btn-default formbutton-danger formbutton-narrow" href="javascript: ISPConfig.confirm_action('help/support_message_del.php?id={tmpl_var name='id'}&phpsessid={tmpl_var name='phpsessid'}','{tmpl_var name='delete_confirmation'}');"><span class="icon icon-delete"></span></a> + <a class="btn btn-default formbutton-danger formbutton-narrow" href="javascript: ISPConfig.confirm_action('help/support_message_del.php?id={tmpl_var name='id'}&_csrf_id={tmpl_var name='csrf_id'}&_csrf_key={tmpl_var name='csrf_key'}&phpsessid={tmpl_var name='phpsessid'}','{tmpl_var name='delete_confirmation'}');"><span class="icon icon-delete"></span></a> </td> </tr> </tmpl_loop> diff --git a/interface/web/mail/templates/mail_alias_list.htm b/interface/web/mail/templates/mail_alias_list.htm index 5f19fba138..f65e40a908 100644 --- a/interface/web/mail/templates/mail_alias_list.htm +++ b/interface/web/mail/templates/mail_alias_list.htm @@ -53,7 +53,7 @@ <td><a href="#" data-load-content="mail/mail_alias_edit.php?id={tmpl_var name='id'}">{tmpl_var name="source"}</a></td> <td><a href="#" data-load-content="mail/mail_alias_edit.php?id={tmpl_var name='id'}">{tmpl_var name="destination"}</a></td> <td class="text-right"> - <a class="btn btn-default formbutton-danger formbutton-narrow" href="javascript: ISPConfig.confirm_action('mail/mail_alias_del.php?id={tmpl_var name='id'}&phpsessid={tmpl_var name='phpsessid'}','{tmpl_var name='delete_confirmation'}');"><span class="icon icon-delete"></span></a> + <a class="btn btn-default formbutton-danger formbutton-narrow" href="javascript: ISPConfig.confirm_action('mail/mail_alias_del.php?id={tmpl_var name='id'}&_csrf_id={tmpl_var name='csrf_id'}&_csrf_key={tmpl_var name='csrf_key'}&_csrf_id={tmpl_var name='csrf_id'}&_csrf_key={tmpl_var name='csrf_key'}&phpsessid={tmpl_var name='phpsessid'}','{tmpl_var name='delete_confirmation'}');"><span class="icon icon-delete"></span></a> </td> </tr> </tmpl_loop> diff --git a/interface/web/mail/templates/mail_aliasdomain_list.htm b/interface/web/mail/templates/mail_aliasdomain_list.htm index 6ce208b48b..06166ae3c4 100644 --- a/interface/web/mail/templates/mail_aliasdomain_list.htm +++ b/interface/web/mail/templates/mail_aliasdomain_list.htm @@ -53,7 +53,7 @@ <td><a href="#" data-load-content="mail/mail_aliasdomain_edit.php?id={tmpl_var name='id'}">{tmpl_var name="source"}</a></td> <td><a href="#" data-load-content="mail/mail_aliasdomain_edit.php?id={tmpl_var name='id'}">{tmpl_var name="destination"}</a></td> <td class="text-right"> - <a class="btn btn-default formbutton-danger formbutton-narrow" href="javascript: ISPConfig.confirm_action('mail/mail_aliasdomain_del.php?id={tmpl_var name='id'}&phpsessid={tmpl_var name='phpsessid'}','{tmpl_var name='delete_confirmation'}');"><span class="icon icon-delete"></span></a> + <a class="btn btn-default formbutton-danger formbutton-narrow" href="javascript: ISPConfig.confirm_action('mail/mail_aliasdomain_del.php?id={tmpl_var name='id'}&_csrf_id={tmpl_var name='csrf_id'}&_csrf_key={tmpl_var name='csrf_key'}&phpsessid={tmpl_var name='phpsessid'}','{tmpl_var name='delete_confirmation'}');"><span class="icon icon-delete"></span></a> </td> </tr> </tmpl_loop> diff --git a/interface/web/mail/templates/mail_blacklist_list.htm b/interface/web/mail/templates/mail_blacklist_list.htm index b023f54042..a52c797e8b 100644 --- a/interface/web/mail/templates/mail_blacklist_list.htm +++ b/interface/web/mail/templates/mail_blacklist_list.htm @@ -56,7 +56,7 @@ <td><a href="#" data-load-content="mail/mail_blacklist_edit.php?id={tmpl_var name='id'}">{tmpl_var name="source"}</a></td> <td><a href="#" data-load-content="mail/mail_blacklist_edit.php?id={tmpl_var name='id'}">{tmpl_var name="type"}</a></td> <td class="text-right"> - <a class="btn btn-default formbutton-danger formbutton-narrow" href="javascript: ISPConfig.confirm_action('mail/mail_blacklist_del.php?id={tmpl_var name='id'}&phpsessid={tmpl_var name='phpsessid'}','{tmpl_var name='delete_confirmation'}');"><span class="icon icon-delete"></span></a> + <a class="btn btn-default formbutton-danger formbutton-narrow" href="javascript: ISPConfig.confirm_action('mail/mail_blacklist_del.php?id={tmpl_var name='id'}&_csrf_id={tmpl_var name='csrf_id'}&_csrf_key={tmpl_var name='csrf_key'}&phpsessid={tmpl_var name='phpsessid'}','{tmpl_var name='delete_confirmation'}');"><span class="icon icon-delete"></span></a> </td> </tr> </tmpl_loop> diff --git a/interface/web/mail/templates/mail_content_filter_list.htm b/interface/web/mail/templates/mail_content_filter_list.htm index 01689aa4d6..5dcd8e7ff9 100644 --- a/interface/web/mail/templates/mail_content_filter_list.htm +++ b/interface/web/mail/templates/mail_content_filter_list.htm @@ -56,7 +56,7 @@ <td><a href="#" data-load-content="mail/mail_content_filter_edit.php?id={tmpl_var name='id'}">{tmpl_var name="pattern"}</a></td> <td><a href="#" data-load-content="mail/mail_content_filter_edit.php?id={tmpl_var name='id'}">{tmpl_var name="action"}</a></td> <td class="text-right"> - <a class="btn btn-default formbutton-danger formbutton-narrow" href="javascript: ISPConfig.confirm_action('mail/mail_content_filter_del.php?id={tmpl_var name='id'}&phpsessid={tmpl_var name='phpsessid'}','{tmpl_var name='delete_confirmation'}');"><span class="icon icon-delete"></span></a> + <a class="btn btn-default formbutton-danger formbutton-narrow" href="javascript: ISPConfig.confirm_action('mail/mail_content_filter_del.php?id={tmpl_var name='id'}&_csrf_id={tmpl_var name='csrf_id'}&_csrf_key={tmpl_var name='csrf_key'}&phpsessid={tmpl_var name='phpsessid'}','{tmpl_var name='delete_confirmation'}');"><span class="icon icon-delete"></span></a> </td> </tr> </tmpl_loop> diff --git a/interface/web/mail/templates/mail_domain_admin_list.htm b/interface/web/mail/templates/mail_domain_admin_list.htm index 1b2b41f392..69680cf308 100644 --- a/interface/web/mail/templates/mail_domain_admin_list.htm +++ b/interface/web/mail/templates/mail_domain_admin_list.htm @@ -39,7 +39,7 @@ <td><a href="#" data-load-content="mail/mail_domain_edit.php?id={tmpl_var name='id'}">{tmpl_var name="server_id"}</a></td> <td><a href="#" data-load-content="mail/mail_domain_edit.php?id={tmpl_var name='id'}">{tmpl_var name="domain"}</a></td> <td class="text-right"> - <a class="btn btn-default formbutton-danger formbutton-narrow" href="javascript: ISPConfig.confirm_action('mail/mail_domain_del.php?id={tmpl_var name='id'}&phpsessid={tmpl_var name='phpsessid'}','{tmpl_var name='delete_confirmation'}');"><span class="icon icon-delete"></span></a> + <a class="btn btn-default formbutton-danger formbutton-narrow" href="javascript: ISPConfig.confirm_action('mail/mail_domain_del.php?id={tmpl_var name='id'}&_csrf_id={tmpl_var name='csrf_id'}&_csrf_key={tmpl_var name='csrf_key'}&phpsessid={tmpl_var name='phpsessid'}','{tmpl_var name='delete_confirmation'}');"><span class="icon icon-delete"></span></a> </td> </tr> </tmpl_loop> diff --git a/interface/web/mail/templates/mail_domain_catchall_list.htm b/interface/web/mail/templates/mail_domain_catchall_list.htm index 29483ae3d0..a9c0d9acd7 100644 --- a/interface/web/mail/templates/mail_domain_catchall_list.htm +++ b/interface/web/mail/templates/mail_domain_catchall_list.htm @@ -53,7 +53,7 @@ <td><a href="#" data-load-content="mail/mail_domain_catchall_edit.php?id={tmpl_var name='id'}">{tmpl_var name="source"}</a></td> <td><a href="#" data-load-content="mail/mail_domain_catchall_edit.php?id={tmpl_var name='id'}">{tmpl_var name="destination"}</a></td> <td class="text-right"> - <a class="btn btn-default formbutton-danger formbutton-narrow" href="javascript: ISPConfig.confirm_action('mail/mail_domain_catchall_del.php?id={tmpl_var name='id'}&phpsessid={tmpl_var name='phpsessid'}','{tmpl_var name='delete_confirmation'}');"><span class="icon icon-delete"></span></a> + <a class="btn btn-default formbutton-danger formbutton-narrow" href="javascript: ISPConfig.confirm_action('mail/mail_domain_catchall_del.php?id={tmpl_var name='id'}&_csrf_id={tmpl_var name='csrf_id'}&_csrf_key={tmpl_var name='csrf_key'}&phpsessid={tmpl_var name='phpsessid'}','{tmpl_var name='delete_confirmation'}');"><span class="icon icon-delete"></span></a> </td> </tr> </tmpl_loop> diff --git a/interface/web/mail/templates/mail_domain_list.htm b/interface/web/mail/templates/mail_domain_list.htm index bb1eba146b..f0d6e532e7 100644 --- a/interface/web/mail/templates/mail_domain_list.htm +++ b/interface/web/mail/templates/mail_domain_list.htm @@ -53,7 +53,7 @@ <td><a href="#" data-load-content="mail/mail_domain_edit.php?id={tmpl_var name='id'}">{tmpl_var name="server_id"}</a></td> <td><a href="#" data-load-content="mail/mail_domain_edit.php?id={tmpl_var name='id'}">{tmpl_var name="domain"}</a></td> <td class="text-right"> - <a class="btn btn-default formbutton-danger formbutton-narrow" href="javascript: ISPConfig.confirm_action('mail/mail_domain_del.php?id={tmpl_var name='id'}&phpsessid={tmpl_var name='phpsessid'}','{tmpl_var name='delete_confirmation'}');"><span class="icon icon-delete"></span></a> + <a class="btn btn-default formbutton-danger formbutton-narrow" href="javascript: ISPConfig.confirm_action('mail/mail_domain_del.php?id={tmpl_var name='id'}&_csrf_id={tmpl_var name='csrf_id'}&_csrf_key={tmpl_var name='csrf_key'}&phpsessid={tmpl_var name='phpsessid'}','{tmpl_var name='delete_confirmation'}');"><span class="icon icon-delete"></span></a> </td> </tr> </tmpl_loop> diff --git a/interface/web/mail/templates/mail_forward_list.htm b/interface/web/mail/templates/mail_forward_list.htm index bb4b95ed12..c4d7e1f60a 100644 --- a/interface/web/mail/templates/mail_forward_list.htm +++ b/interface/web/mail/templates/mail_forward_list.htm @@ -53,7 +53,7 @@ <td><a href="#" data-load-content="mail/mail_forward_edit.php?id={tmpl_var name='id'}">{tmpl_var name="source"}</a></td> <td><a href="#" data-load-content="mail/mail_forward_edit.php?id={tmpl_var name='id'}">{tmpl_var name="destination"}</a></td> <td class="text-right"> - <a class="btn btn-default formbutton-danger formbutton-narrow" href="javascript: ISPConfig.confirm_action('mail/mail_forward_del.php?id={tmpl_var name='id'}&phpsessid={tmpl_var name='phpsessid'}','{tmpl_var name='delete_confirmation'}');"><span class="icon icon-delete"></span></a> + <a class="btn btn-default formbutton-danger formbutton-narrow" href="javascript: ISPConfig.confirm_action('mail/mail_forward_del.php?id={tmpl_var name='id'}&_csrf_id={tmpl_var name='csrf_id'}&_csrf_key={tmpl_var name='csrf_key'}&phpsessid={tmpl_var name='phpsessid'}','{tmpl_var name='delete_confirmation'}');"><span class="icon icon-delete"></span></a> </td> </tr> </tmpl_loop> diff --git a/interface/web/mail/templates/mail_get_list.htm b/interface/web/mail/templates/mail_get_list.htm index 58a550a7d1..747220c2da 100644 --- a/interface/web/mail/templates/mail_get_list.htm +++ b/interface/web/mail/templates/mail_get_list.htm @@ -59,7 +59,7 @@ <td><a href="#" data-load-content="mail/mail_get_edit.php?id={tmpl_var name='id'}">{tmpl_var name="source_username"}</a></td> <td><a href="#" data-load-content="mail/mail_get_edit.php?id={tmpl_var name='id'}">{tmpl_var name="destination"}</a></td> <td class="text-right"> - <a class="btn btn-default formbutton-danger formbutton-narrow" href="javascript: ISPConfig.confirm_action('mail/mail_get_del.php?id={tmpl_var name='id'}&phpsessid={tmpl_var name='phpsessid'}','{tmpl_var name='delete_confirmation'}');"><span class="icon icon-delete"></span></a> + <a class="btn btn-default formbutton-danger formbutton-narrow" href="javascript: ISPConfig.confirm_action('mail/mail_get_del.php?id={tmpl_var name='id'}&_csrf_id={tmpl_var name='csrf_id'}&_csrf_key={tmpl_var name='csrf_key'}&phpsessid={tmpl_var name='phpsessid'}','{tmpl_var name='delete_confirmation'}');"><span class="icon icon-delete"></span></a> </td> </tr> </tmpl_loop> diff --git a/interface/web/mail/templates/mail_mailinglist_list.htm b/interface/web/mail/templates/mail_mailinglist_list.htm index 7e15df3aad..78e216dc08 100644 --- a/interface/web/mail/templates/mail_mailinglist_list.htm +++ b/interface/web/mail/templates/mail_mailinglist_list.htm @@ -52,7 +52,7 @@ <tmpl_if name="mailmailinglist_link"> <a class="btn btn-default formbutton-default formbutton-narrow" href="mail/mailinglist.php?id={tmpl_var name='id'}" target="mailmailinglist"><span class="icon icon-mail"></span></a> </tmpl_if> - <a class="btn btn-default formbutton-danger formbutton-narrow" href="javascript: ISPConfig.confirm_action('mail/mail_mailinglist_del.php?id={tmpl_var name='id'}&phpsessid={tmpl_var name='phpsessid'}','{tmpl_var name='delete_confirmation'}');"><span class="icon icon-delete"></span></a> + <a class="btn btn-default formbutton-danger formbutton-narrow" href="javascript: ISPConfig.confirm_action('mail/mail_mailinglist_del.php?id={tmpl_var name='id'}&_csrf_id={tmpl_var name='csrf_id'}&_csrf_key={tmpl_var name='csrf_key'}&phpsessid={tmpl_var name='phpsessid'}','{tmpl_var name='delete_confirmation'}');"><span class="icon icon-delete"></span></a> </td> </tr> </tmpl_loop> diff --git a/interface/web/mail/templates/mail_relay_recipient_list.htm b/interface/web/mail/templates/mail_relay_recipient_list.htm index 7dac3e7ce5..3aeeb12e6c 100644 --- a/interface/web/mail/templates/mail_relay_recipient_list.htm +++ b/interface/web/mail/templates/mail_relay_recipient_list.htm @@ -52,7 +52,7 @@ <td><a href="#" data-load-content="mail/mail_relay_recipient_edit.php?id={tmpl_var name='id'}">{tmpl_var name="server_id"}</a></td> <td><a href="#" data-load-content="mail/mail_relay_recipient_edit.php?id={tmpl_var name='id'}">{tmpl_var name="source"}</a></td> <td class="text-right"> - <a class="btn btn-default formbutton-danger formbutton-narrow" href="javascript: ISPConfig.confirm_action('mail/mail_relay_recipient_del.php?id={tmpl_var name='id'}&phpsessid={tmpl_var name='phpsessid'}','{tmpl_var name='delete_confirmation'}');"><span class="icon icon-delete"></span></a> + <a class="btn btn-default formbutton-danger formbutton-narrow" href="javascript: ISPConfig.confirm_action('mail/mail_relay_recipient_del.php?id={tmpl_var name='id'}&_csrf_id={tmpl_var name='csrf_id'}&_csrf_key={tmpl_var name='csrf_key'}&phpsessid={tmpl_var name='phpsessid'}','{tmpl_var name='delete_confirmation'}');"><span class="icon icon-delete"></span></a> </td> </tr> </tmpl_loop> diff --git a/interface/web/mail/templates/mail_transport_list.htm b/interface/web/mail/templates/mail_transport_list.htm index 4b4b2d9e53..9795f0093e 100644 --- a/interface/web/mail/templates/mail_transport_list.htm +++ b/interface/web/mail/templates/mail_transport_list.htm @@ -59,7 +59,7 @@ <td><a href="#" data-load-content="mail/mail_transport_edit.php?id={tmpl_var name='id'}">{tmpl_var name="transport"}</a></td> <td><a href="#" data-load-content="mail/mail_transport_edit.php?id={tmpl_var name='id'}">{tmpl_var name="sort_order"}</a></td> <td class="text-right"> - <a class="btn btn-default formbutton-danger formbutton-narrow" href="javascript: ISPConfig.confirm_action('mail/mail_transport_del.php?id={tmpl_var name='id'}&phpsessid={tmpl_var name='phpsessid'}','{tmpl_var name='delete_confirmation'}');"><span class="icon icon-delete"></span></a> + <a class="btn btn-default formbutton-danger formbutton-narrow" href="javascript: ISPConfig.confirm_action('mail/mail_transport_del.php?id={tmpl_var name='id'}&_csrf_id={tmpl_var name='csrf_id'}&_csrf_key={tmpl_var name='csrf_key'}&phpsessid={tmpl_var name='phpsessid'}','{tmpl_var name='delete_confirmation'}');"><span class="icon icon-delete"></span></a> </td> </tr> </tmpl_loop> diff --git a/interface/web/mail/templates/mail_user_filter_list.htm b/interface/web/mail/templates/mail_user_filter_list.htm index 990558bd11..c38df26a8e 100644 --- a/interface/web/mail/templates/mail_user_filter_list.htm +++ b/interface/web/mail/templates/mail_user_filter_list.htm @@ -42,7 +42,7 @@ <tr> <td><a href="#" data-load-content="mail/mail_user_filter_edit.php?id={tmpl_var name='id'}">{tmpl_var name="rulename"}</a></td> <td class="text-right"> - <a class="btn btn-default formbutton-danger formbutton-narrow" href="javascript: ISPConfig.confirm_action('mail/mail_user_filter_del.php?id={tmpl_var name='id'}&phpsessid={tmpl_var name='phpsessid'}','{tmpl_var name='delete_confirmation'}');"><span class="icon icon-delete"></span></a> + <a class="btn btn-default formbutton-danger formbutton-narrow" href="javascript: ISPConfig.confirm_action('mail/mail_user_filter_del.php?id={tmpl_var name='id'}&_csrf_id={tmpl_var name='csrf_id'}&_csrf_key={tmpl_var name='csrf_key'}&phpsessid={tmpl_var name='phpsessid'}','{tmpl_var name='delete_confirmation'}');"><span class="icon icon-delete"></span></a> </td> </tr> </tmpl_loop> diff --git a/interface/web/mail/templates/mail_user_list.htm b/interface/web/mail/templates/mail_user_list.htm index 4e2fedd50c..6d800de57e 100644 --- a/interface/web/mail/templates/mail_user_list.htm +++ b/interface/web/mail/templates/mail_user_list.htm @@ -75,7 +75,7 @@ <tmpl_if name="mailboxlist_webmail_link"> <a class="btn btn-default formbutton-default formbutton-narrow" href="mail/webmailer.php?id={tmpl_var name='id'}" target="webmail"><span class="icon icon-mail"></span></a> </tmpl_if> - <a class="btn btn-default formbutton-danger formbutton-narrow" href="javascript: ISPConfig.confirm_action('mail/mail_user_del.php?id={tmpl_var name='id'}&phpsessid={tmpl_var name='phpsessid'}','{tmpl_var name='delete_confirmation'}');"><span class="icon icon-delete"></span></a> + <a class="btn btn-default formbutton-danger formbutton-narrow" href="javascript: ISPConfig.confirm_action('mail/mail_user_del.php?id={tmpl_var name='id'}&_csrf_id={tmpl_var name='csrf_id'}&_csrf_key={tmpl_var name='csrf_key'}&phpsessid={tmpl_var name='phpsessid'}','{tmpl_var name='delete_confirmation'}');"><span class="icon icon-delete"></span></a> </td> </tr> </tmpl_loop> diff --git a/interface/web/mail/templates/mail_whitelist_list.htm b/interface/web/mail/templates/mail_whitelist_list.htm index cb3b783e7f..dcc018f717 100644 --- a/interface/web/mail/templates/mail_whitelist_list.htm +++ b/interface/web/mail/templates/mail_whitelist_list.htm @@ -40,7 +40,7 @@ <td><a href="#" data-load-content="mail/mail_whitelist_edit.php?id={tmpl_var name='id'}">{tmpl_var name="source"}</a></td> <td><a href="#" data-load-content="mail/mail_whitelist_edit.php?id={tmpl_var name='id'}">{tmpl_var name="type"}</a></td> <td class="text-right"> - <a class="btn btn-default formbutton-danger formbutton-narrow" href="javascript: ISPConfig.confirm_action('mail/mail_whitelist_del.php?id={tmpl_var name='id'}&phpsessid={tmpl_var name='phpsessid'}','{tmpl_var name='delete_confirmation'}');"><span class="icon icon-delete"></span></a> + <a class="btn btn-default formbutton-danger formbutton-narrow" href="javascript: ISPConfig.confirm_action('mail/mail_whitelist_del.php?id={tmpl_var name='id'}&_csrf_id={tmpl_var name='csrf_id'}&_csrf_key={tmpl_var name='csrf_key'}&phpsessid={tmpl_var name='phpsessid'}','{tmpl_var name='delete_confirmation'}');"><span class="icon icon-delete"></span></a> </td> </tr> </tmpl_loop> diff --git a/interface/web/mail/templates/spamfilter_blacklist_list.htm b/interface/web/mail/templates/spamfilter_blacklist_list.htm index 91a45916ba..ae013bdff4 100644 --- a/interface/web/mail/templates/spamfilter_blacklist_list.htm +++ b/interface/web/mail/templates/spamfilter_blacklist_list.htm @@ -43,7 +43,7 @@ <td><a href="#" data-load-content="mail/spamfilter_blacklist_edit.php?id={tmpl_var name='id'}">{tmpl_var name="rid"}</a></td> <td><a href="#" data-load-content="mail/spamfilter_blacklist_edit.php?id={tmpl_var name='id'}">{tmpl_var name="email"}</a></td> <td class="text-right"> - <a class="btn btn-default formbutton-danger formbutton-narrow" href="javascript: ISPConfig.confirm_action('mail/spamfilter_blacklist_del.php?id={tmpl_var name='id'}&phpsessid={tmpl_var name='phpsessid'}','{tmpl_var name='delete_confirmation'}');"><span class="icon icon-delete"></span></a> + <a class="btn btn-default formbutton-danger formbutton-narrow" href="javascript: ISPConfig.confirm_action('mail/spamfilter_blacklist_del.php?id={tmpl_var name='id'}&_csrf_id={tmpl_var name='csrf_id'}&_csrf_key={tmpl_var name='csrf_key'}&phpsessid={tmpl_var name='phpsessid'}','{tmpl_var name='delete_confirmation'}');"><span class="icon icon-delete"></span></a> </td> </tr> </tmpl_loop> diff --git a/interface/web/mail/templates/spamfilter_config_list.htm b/interface/web/mail/templates/spamfilter_config_list.htm index 486a79e6d9..3bcac6767a 100644 --- a/interface/web/mail/templates/spamfilter_config_list.htm +++ b/interface/web/mail/templates/spamfilter_config_list.htm @@ -31,7 +31,7 @@ <tr> <td><a href="#" data-load-content="mail/spamfilter_config_edit.php?id={tmpl_var name='id'}">{tmpl_var name="server_name"}</a></td> <td class="text-right"> - <a class="btn btn-default formbutton-danger formbutton-narrow" href="javascript: ISPConfig.confirm_action('mail/spamfilter_config_del.php?id={tmpl_var name='id'}&phpsessid={tmpl_var name='phpsessid'}','{tmpl_var name='delete_confirmation'}');"><span class="icon icon-delete"></span></a> + <a class="btn btn-default formbutton-danger formbutton-narrow" href="javascript: ISPConfig.confirm_action('mail/spamfilter_config_del.php?id={tmpl_var name='id'}&_csrf_id={tmpl_var name='csrf_id'}&_csrf_key={tmpl_var name='csrf_key'}&phpsessid={tmpl_var name='phpsessid'}','{tmpl_var name='delete_confirmation'}');"><span class="icon icon-delete"></span></a> </td> </tr> </tmpl_loop> diff --git a/interface/web/mail/templates/spamfilter_policy_list.htm b/interface/web/mail/templates/spamfilter_policy_list.htm index 0dd72dee54..665fa613af 100644 --- a/interface/web/mail/templates/spamfilter_policy_list.htm +++ b/interface/web/mail/templates/spamfilter_policy_list.htm @@ -49,7 +49,7 @@ <td><a href="#" data-load-content="mail/spamfilter_policy_edit.php?id={tmpl_var name='id'}">{tmpl_var name="bad_header_lover"}</a></td> </tmpl_if> <td class="text-right"> - <a class="btn btn-default formbutton-danger formbutton-narrow" href="javascript: ISPConfig.confirm_action('mail/spamfilter_policy_del.php?id={tmpl_var name='id'}&phpsessid={tmpl_var name='phpsessid'}','{tmpl_var name='delete_confirmation'}');"><span class="icon icon-delete"></span></a> + <a class="btn btn-default formbutton-danger formbutton-narrow" href="javascript: ISPConfig.confirm_action('mail/spamfilter_policy_del.php?id={tmpl_var name='id'}&_csrf_id={tmpl_var name='csrf_id'}&_csrf_key={tmpl_var name='csrf_key'}&phpsessid={tmpl_var name='phpsessid'}','{tmpl_var name='delete_confirmation'}');"><span class="icon icon-delete"></span></a> </td> </tr> </tmpl_loop> diff --git a/interface/web/mail/templates/spamfilter_users_list.htm b/interface/web/mail/templates/spamfilter_users_list.htm index 5f8ef83bae..d13fe32ccb 100644 --- a/interface/web/mail/templates/spamfilter_users_list.htm +++ b/interface/web/mail/templates/spamfilter_users_list.htm @@ -43,7 +43,7 @@ <td><a href="#" data-load-content="mail/spamfilter_users_edit.php?id={tmpl_var name='id'}">{tmpl_var name="policy_id"}</a></td> <td><a href="#" data-load-content="mail/spamfilter_users_edit.php?id={tmpl_var name='id'}">{tmpl_var name="fullname"}</a></td> <td class="text-right"> - <a class="btn btn-default formbutton-danger formbutton-narrow" href="javascript: ISPConfig.confirm_action('mail/spamfilter_users_del.php?id={tmpl_var name='id'}&phpsessid={tmpl_var name='phpsessid'}','{tmpl_var name='delete_confirmation'}');"><span class="icon icon-delete"></span></a> + <a class="btn btn-default formbutton-danger formbutton-narrow" href="javascript: ISPConfig.confirm_action('mail/spamfilter_users_del.php?id={tmpl_var name='id'}&_csrf_id={tmpl_var name='csrf_id'}&_csrf_key={tmpl_var name='csrf_key'}&phpsessid={tmpl_var name='phpsessid'}','{tmpl_var name='delete_confirmation'}');"><span class="icon icon-delete"></span></a> </td> </tr> </tmpl_loop> diff --git a/interface/web/mail/templates/spamfilter_whitelist_list.htm b/interface/web/mail/templates/spamfilter_whitelist_list.htm index 87ef0bde23..614f2a8f5e 100644 --- a/interface/web/mail/templates/spamfilter_whitelist_list.htm +++ b/interface/web/mail/templates/spamfilter_whitelist_list.htm @@ -43,7 +43,7 @@ <td><a href="#" data-load-content="mail/spamfilter_whitelist_edit.php?id={tmpl_var name='id'}">{tmpl_var name="rid"}</a></td> <td><a href="#" data-load-content="mail/spamfilter_whitelist_edit.php?id={tmpl_var name='id'}">{tmpl_var name="email"}</a></td> <td class="text-right"> - <a class="btn btn-default formbutton-danger formbutton-narrow" href="javascript: ISPConfig.confirm_action('mail/spamfilter_whitelist_del.php?id={tmpl_var name='id'}&phpsessid={tmpl_var name='phpsessid'}','{tmpl_var name='delete_confirmation'}');"><span class="icon icon-delete"></span></button> + <a class="btn btn-default formbutton-danger formbutton-narrow" href="javascript: ISPConfig.confirm_action('mail/spamfilter_whitelist_del.php?id={tmpl_var name='id'}&_csrf_id={tmpl_var name='csrf_id'}&_csrf_key={tmpl_var name='csrf_key'}&phpsessid={tmpl_var name='phpsessid'}','{tmpl_var name='delete_confirmation'}');"><span class="icon icon-delete"></span></button> </td> </tr> </tmpl_loop> diff --git a/interface/web/mail/templates/xmpp_domain_admin_list.htm b/interface/web/mail/templates/xmpp_domain_admin_list.htm index ccda2d5032..c6338037f1 100644 --- a/interface/web/mail/templates/xmpp_domain_admin_list.htm +++ b/interface/web/mail/templates/xmpp_domain_admin_list.htm @@ -39,7 +39,7 @@ <td><a href="#" data-load-content="mail/xmpp_domain_edit.php?id={tmpl_var name='id'}">{tmpl_var name="server_id"}</a></td> <td><a href="#" data-load-content="mail/xmpp_domain_edit.php?id={tmpl_var name='id'}">{tmpl_var name="domain"}</a></td> <td class="text-right"> - <a class="btn btn-default formbutton-danger formbutton-narrow" href="javascript: ISPConfig.confirm_action('mail/xmpp_domain_del.php?id={tmpl_var name='id'}&phpsessid={tmpl_var name='phpsessid'}','{tmpl_var name='delete_confirmation'}');"><span class="icon icon-delete"></span></button> + <a class="btn btn-default formbutton-danger formbutton-narrow" href="javascript: ISPConfig.confirm_action('mail/xmpp_domain_del.php?id={tmpl_var name='id'}&_csrf_id={tmpl_var name='csrf_id'}&_csrf_key={tmpl_var name='csrf_key'}&phpsessid={tmpl_var name='phpsessid'}','{tmpl_var name='delete_confirmation'}');"><span class="icon icon-delete"></span></button> </td> </tr> </tmpl_loop> diff --git a/interface/web/mail/templates/xmpp_domain_list.htm b/interface/web/mail/templates/xmpp_domain_list.htm index 79579142d7..dff0adb399 100644 --- a/interface/web/mail/templates/xmpp_domain_list.htm +++ b/interface/web/mail/templates/xmpp_domain_list.htm @@ -53,7 +53,7 @@ <td><a href="#" data-load-content="mail/xmpp_domain_edit.php?id={tmpl_var name='id'}">{tmpl_var name="server_id"}</a></td> <td><a href="#" data-load-content="mail/xmpp_domain_edit.php?id={tmpl_var name='id'}">{tmpl_var name="domain"}</a></td> <td class="text-right"> - <a class="btn btn-default formbutton-danger formbutton-narrow" href="javascript: ISPConfig.confirm_action('mail/xmpp_domain_del.php?id={tmpl_var name='id'}&phpsessid={tmpl_var name='phpsessid'}','{tmpl_var name='delete_confirmation'}');"><span class="icon icon-delete"></span></button> + <a class="btn btn-default formbutton-danger formbutton-narrow" href="javascript: ISPConfig.confirm_action('mail/xmpp_domain_del.php?id={tmpl_var name='id'}&_csrf_id={tmpl_var name='csrf_id'}&_csrf_key={tmpl_var name='csrf_key'}&phpsessid={tmpl_var name='phpsessid'}','{tmpl_var name='delete_confirmation'}');"><span class="icon icon-delete"></span></button> </td> </tr> </tmpl_loop> diff --git a/interface/web/mail/templates/xmpp_user_list.htm b/interface/web/mail/templates/xmpp_user_list.htm index 68668b4928..bb8e91c6d0 100644 --- a/interface/web/mail/templates/xmpp_user_list.htm +++ b/interface/web/mail/templates/xmpp_user_list.htm @@ -53,7 +53,7 @@ <td><a href="#" data-load-content="mail/xmpp_user_edit.php?id={tmpl_var name='id'}">{tmpl_var name="is_domain_admin"}</a></td> <td><a href="#" data-load-content="mail/xmpp_user_edit.php?id={tmpl_var name='id'}">{tmpl_var name="is_muc_admin"}</a></td> <td class="text-right"> - <a class="btn btn-default formbutton-danger formbutton-narrow" href="javascript: ISPConfig.confirm_action('mail/xmpp_user_del.php?id={tmpl_var name='id'}&phpsessid={tmpl_var name='phpsessid'}','{tmpl_var name='delete_confirmation'}');"><span class="icon icon-delete"></span></button> + <a class="btn btn-default formbutton-danger formbutton-narrow" href="javascript: ISPConfig.confirm_action('mail/xmpp_user_del.php?id={tmpl_var name='id'}&_csrf_id={tmpl_var name='csrf_id'}&_csrf_key={tmpl_var name='csrf_key'}&phpsessid={tmpl_var name='phpsessid'}','{tmpl_var name='delete_confirmation'}');"><span class="icon icon-delete"></span></button> </td> </tr> </tmpl_loop> diff --git a/interface/web/mailuser/templates/mail_user_filter_list.htm b/interface/web/mailuser/templates/mail_user_filter_list.htm index 32d093844e..b81793b631 100644 --- a/interface/web/mailuser/templates/mail_user_filter_list.htm +++ b/interface/web/mailuser/templates/mail_user_filter_list.htm @@ -30,7 +30,7 @@ <tr> <td><a href="#" data-load-content="mailuser/mail_user_filter_edit.php?id={tmpl_var name='id'}">{tmpl_var name="rulename"}</a></td> <td class="text-right"> - <a class="btn btn-default formbutton-danger formbutton-narrow" href="javascript: ISPConfig.confirm_action('mailuser/mail_user_filter_del.php?id={tmpl_var name='id'}&phpsessid={tmpl_var name='phpsessid'}','{tmpl_var name='delete_confirmation'}');"><span class="icon icon-delete"></span></a> + <a class="btn btn-default formbutton-danger formbutton-narrow" href="javascript: ISPConfig.confirm_action('mailuser/mail_user_filter_del.php?id={tmpl_var name='id'}&_csrf_id={tmpl_var name='csrf_id'}&_csrf_key={tmpl_var name='csrf_key'}&phpsessid={tmpl_var name='phpsessid'}','{tmpl_var name='delete_confirmation'}');"><span class="icon icon-delete"></span></a> </td> </tr> </tmpl_loop> diff --git a/interface/web/monitor/templates/datalog_list.htm b/interface/web/monitor/templates/datalog_list.htm index eb79f46b54..53ca89997f 100644 --- a/interface/web/monitor/templates/datalog_list.htm +++ b/interface/web/monitor/templates/datalog_list.htm @@ -33,7 +33,7 @@ <td>{tmpl_var name="action"}</td> <td>{tmpl_var name="dbtable"}</td> <td class="text-right"> - <!--<a class="btn btn-default formbutton-danger formbutton-narrow" href="javascript: ISPConfig.confirm_action('monitor/datalog_del.php?id={tmpl_var name='id'}&phpsessid={tmpl_var name='phpsessid'}','{tmpl_var name='delete_confirmation'}');"><span class="icon icon-delete"></span></a> --> + <!--<a class="btn btn-default formbutton-danger formbutton-narrow" href="javascript: ISPConfig.confirm_action('monitor/datalog_del.php?id={tmpl_var name='id'}&_csrf_id={tmpl_var name='csrf_id'}&_csrf_key={tmpl_var name='csrf_key'}&phpsessid={tmpl_var name='phpsessid'}','{tmpl_var name='delete_confirmation'}');"><span class="icon icon-delete"></span></a> --> </td> </tr> </tmpl_loop> diff --git a/interface/web/monitor/templates/syslog_list.htm b/interface/web/monitor/templates/syslog_list.htm index 8f62422a84..7196e3ab02 100644 --- a/interface/web/monitor/templates/syslog_list.htm +++ b/interface/web/monitor/templates/syslog_list.htm @@ -34,10 +34,10 @@ <td>{tmpl_var name="message"}</td> <td class="text-right"> <tmpl_if name="loglevel" op="==" value="Error"> - <a class="btn btn-default formbutton-danger formbutton-narrow" href="javascript: ISPConfig.confirm_action('monitor/log_del.php?id={tmpl_var name='id'}&phpsessid={tmpl_var name='phpsessid'}','{tmpl_var name='delete_confirmation'}');"><span class="icon icon-delete"></span></a> + <a class="btn btn-default formbutton-danger formbutton-narrow" href="javascript: ISPConfig.confirm_action('monitor/log_del.php?id={tmpl_var name='id'}&_csrf_id={tmpl_var name='csrf_id'}&_csrf_key={tmpl_var name='csrf_key'}&phpsessid={tmpl_var name='phpsessid'}','{tmpl_var name='delete_confirmation'}');"><span class="icon icon-delete"></span></a> </tmpl_if> <tmpl_if name="loglevel" op="==" value="Warning"> - <a class="btn btn-default formbutton-danger formbutton-narrow" href="javascript: ISPConfig.confirm_action('monitor/log_del.php?id={tmpl_var name='id'}&phpsessid={tmpl_var name='phpsessid'}','{tmpl_var name='delete_confirmation'}');"><span class="icon icon-delete"></span></a> + <a class="btn btn-default formbutton-danger formbutton-narrow" href="javascript: ISPConfig.confirm_action('monitor/log_del.php?id={tmpl_var name='id'}&_csrf_id={tmpl_var name='csrf_id'}&_csrf_key={tmpl_var name='csrf_key'}&phpsessid={tmpl_var name='phpsessid'}','{tmpl_var name='delete_confirmation'}');"><span class="icon icon-delete"></span></a> </tmpl_if> </td> </tr> diff --git a/interface/web/sites/templates/cron_list.htm b/interface/web/sites/templates/cron_list.htm index b38a6224a5..fbca26a844 100644 --- a/interface/web/sites/templates/cron_list.htm +++ b/interface/web/sites/templates/cron_list.htm @@ -56,7 +56,7 @@ <td><a href="#" data-load-content="sites/cron_edit.php?id={tmpl_var name='id'}" data-toggle="tooltip" data-placement="bottom" title="{tmpl_var name='command'}">{tmpl_var name="command"}</a></td> <td class="text-right"> <div class="buttons icons16"> - <a class="btn btn-default formbutton-danger formbutton-narrow" href="javascript: ISPConfig.confirm_action('sites/cron_del.php?id={tmpl_var name='id'}&phpsessid={tmpl_var name='phpsessid'}','{tmpl_var name='delete_confirmation'}');"><span class="icon icon-delete"></span></a> + <a class="btn btn-default formbutton-danger formbutton-narrow" href="javascript: ISPConfig.confirm_action('sites/cron_del.php?id={tmpl_var name='id'}&_csrf_id={tmpl_var name='csrf_id'}&_csrf_key={tmpl_var name='csrf_key'}&phpsessid={tmpl_var name='phpsessid'}','{tmpl_var name='delete_confirmation'}');"><span class="icon icon-delete"></span></a> </div> </td> </tr> diff --git a/interface/web/sites/templates/database_admin_list.htm b/interface/web/sites/templates/database_admin_list.htm index aad56db337..724027ca91 100644 --- a/interface/web/sites/templates/database_admin_list.htm +++ b/interface/web/sites/templates/database_admin_list.htm @@ -61,7 +61,7 @@ <a class="btn btn-default formbutton-default formbutton-narrow" href="sites/database_phpmyadmin.php?id={tmpl_var name='id'}" target="phpmyadmin"><span class="icon icon-dbadmin"></span></a> </tmpl_if> <a class="btn btn-default formbutton-default formbutton-narrow" data-load-content="sites/database_edit.php?id={tmpl_var name='id'}"><span class="icon icon-edit"></span></a> - <a class="btn btn-default formbutton-danger formbutton-narrow" href="javascript: ISPConfig.confirm_action('sites/database_del.php?id={tmpl_var name='id'}&phpsessid={tmpl_var name='phpsessid'}','{tmpl_var name='delete_confirmation'}');"><span class="icon icon-delete"></span></a> + <a class="btn btn-default formbutton-danger formbutton-narrow" href="javascript: ISPConfig.confirm_action('sites/database_del.php?id={tmpl_var name='id'}&_csrf_id={tmpl_var name='csrf_id'}&_csrf_key={tmpl_var name='csrf_key'}&phpsessid={tmpl_var name='phpsessid'}','{tmpl_var name='delete_confirmation'}');"><span class="icon icon-delete"></span></a> </td> </tr> </tmpl_loop> diff --git a/interface/web/sites/templates/database_list.htm b/interface/web/sites/templates/database_list.htm index 0d0aaca923..208741ff5a 100644 --- a/interface/web/sites/templates/database_list.htm +++ b/interface/web/sites/templates/database_list.htm @@ -75,7 +75,7 @@ <a class="btn btn-default formbutton-default formbutton-narrow" href="sites/database_phpmyadmin.php?id={tmpl_var name='id'}" target="phpmyadmin"><span class="icon icon-dbadmin"></span></a> </tmpl_if> <a class="btn btn-default formbutton-default formbutton-narrow" data-load-content="sites/database_edit.php?id={tmpl_var name='id'}"><span class="icon icon-edit"></span></a> - <a class="btn btn-default formbutton-danger formbutton-narrow" href="javascript: ISPConfig.confirm_action('sites/database_del.php?id={tmpl_var name='id'}&phpsessid={tmpl_var name='phpsessid'}','{tmpl_var name='delete_confirmation'}');"><span class="icon icon-delete"></span></a> + <a class="btn btn-default formbutton-danger formbutton-narrow" href="javascript: ISPConfig.confirm_action('sites/database_del.php?id={tmpl_var name='id'}&_csrf_id={tmpl_var name='csrf_id'}&_csrf_key={tmpl_var name='csrf_key'}&phpsessid={tmpl_var name='phpsessid'}','{tmpl_var name='delete_confirmation'}');"><span class="icon icon-delete"></span></a> </td> </tr> </tmpl_loop> diff --git a/interface/web/sites/templates/database_user_admin_list.htm b/interface/web/sites/templates/database_user_admin_list.htm index 2d7ece0b87..0b7eb1be09 100644 --- a/interface/web/sites/templates/database_user_admin_list.htm +++ b/interface/web/sites/templates/database_user_admin_list.htm @@ -33,7 +33,7 @@ <td><a href="#" data-load-content="sites/database_user_edit.php?id={tmpl_var name='id'}">{tmpl_var name="sys_groupid"}</a></td> <td class="text-right"> <a class="btn btn-default formbutton-default formbutton-narrow" data-load-content="sites/database_user_edit.php?id={tmpl_var name='id'}"><span class="icon icon-edit"></span></a> - <a class="btn btn-default formbutton-danger formbutton-narrow" href="javascript: ISPConfig.confirm_action('sites/database_user_del.php?id={tmpl_var name='id'}&phpsessid={tmpl_var name='phpsessid'}','{tmpl_var name='delete_confirmation'}');"><span class="icon icon-delete"></span></a> + <a class="btn btn-default formbutton-danger formbutton-narrow" href="javascript: ISPConfig.confirm_action('sites/database_user_del.php?id={tmpl_var name='id'}&_csrf_id={tmpl_var name='csrf_id'}&_csrf_key={tmpl_var name='csrf_key'}&phpsessid={tmpl_var name='phpsessid'}','{tmpl_var name='delete_confirmation'}');"><span class="icon icon-delete"></span></a> </td> </tr> </tmpl_loop> diff --git a/interface/web/sites/templates/database_user_list.htm b/interface/web/sites/templates/database_user_list.htm index b29d5c0600..3cca7ec510 100644 --- a/interface/web/sites/templates/database_user_list.htm +++ b/interface/web/sites/templates/database_user_list.htm @@ -46,7 +46,7 @@ <td><a href="#" data-load-content="sites/database_user_edit.php?id={tmpl_var name='id'}">{tmpl_var name="database_user"}</a></td> <td class="text-right"> <a class="btn btn-default formbutton-default formbutton-narrow" data-load-content="sites/database_user_edit.php?id={tmpl_var name='id'}"><span class="icon icon-edit"></span></a> - <a class="btn btn-default formbutton-danger formbutton-narrow" href="javascript: ISPConfig.confirm_action('sites/database_user_del.php?id={tmpl_var name='id'}&phpsessid={tmpl_var name='phpsessid'}','{tmpl_var name='delete_confirmation'}');"><span class="icon icon-delete"></span></a> + <a class="btn btn-default formbutton-danger formbutton-narrow" href="javascript: ISPConfig.confirm_action('sites/database_user_del.php?id={tmpl_var name='id'}&_csrf_id={tmpl_var name='csrf_id'}&_csrf_key={tmpl_var name='csrf_key'}&phpsessid={tmpl_var name='phpsessid'}','{tmpl_var name='delete_confirmation'}');"><span class="icon icon-delete"></span></a> </td> </tr> </tmpl_loop> diff --git a/interface/web/sites/templates/ftp_user_list.htm b/interface/web/sites/templates/ftp_user_list.htm index 43650dac89..bd807c5072 100644 --- a/interface/web/sites/templates/ftp_user_list.htm +++ b/interface/web/sites/templates/ftp_user_list.htm @@ -59,7 +59,7 @@ <tmpl_if name="webftp_link"> <a class="btn btn-default formbutton-default formbutton-narrow" href="{tmpl_var name='webftp_url'}" target="_blank"><span class="icon icon-dbadmin"></span></button> </tmpl_if> - <a class="btn btn-default formbutton-danger formbutton-narrow" href="javascript: ISPConfig.confirm_action('sites/ftp_user_del.php?id={tmpl_var name='id'}&phpsessid={tmpl_var name='phpsessid'}','{tmpl_var name='delete_confirmation'}');"><span class="icon icon-delete"></span></button> + <a class="btn btn-default formbutton-danger formbutton-narrow" href="javascript: ISPConfig.confirm_action('sites/ftp_user_del.php?id={tmpl_var name='id'}&_csrf_id={tmpl_var name='csrf_id'}&_csrf_key={tmpl_var name='csrf_key'}&phpsessid={tmpl_var name='phpsessid'}','{tmpl_var name='delete_confirmation'}');"><span class="icon icon-delete"></span></button> </td> </tr> </tmpl_loop> diff --git a/interface/web/sites/templates/shell_user_list.htm b/interface/web/sites/templates/shell_user_list.htm index 9be1d8485d..53eb6906fa 100644 --- a/interface/web/sites/templates/shell_user_list.htm +++ b/interface/web/sites/templates/shell_user_list.htm @@ -56,7 +56,7 @@ <td><a href="#" data-load-content="sites/shell_user_edit.php?id={tmpl_var name='id'}">{tmpl_var name="parent_domain_id"}</a></td> <td><a href="#" data-load-content="sites/shell_user_edit.php?id={tmpl_var name='id'}">{tmpl_var name="username"}</a></td> <td class="text-right"> - <a class="btn btn-default formbutton-danger formbutton-narrow" href="javascript: ISPConfig.confirm_action('sites/shell_user_del.php?id={tmpl_var name='id'}&phpsessid={tmpl_var name='phpsessid'}','{tmpl_var name='delete_confirmation'}');"><span class="icon icon-delete"></span></a> + <a class="btn btn-default formbutton-danger formbutton-narrow" href="javascript: ISPConfig.confirm_action('sites/shell_user_del.php?id={tmpl_var name='id'}&_csrf_id={tmpl_var name='csrf_id'}&_csrf_key={tmpl_var name='csrf_key'}&phpsessid={tmpl_var name='phpsessid'}','{tmpl_var name='delete_confirmation'}');"><span class="icon icon-delete"></span></a> </td> </tr> </tmpl_loop> diff --git a/interface/web/sites/templates/web_childdomain_list.htm b/interface/web/sites/templates/web_childdomain_list.htm index 51aadc157a..8aa5dc3447 100644 --- a/interface/web/sites/templates/web_childdomain_list.htm +++ b/interface/web/sites/templates/web_childdomain_list.htm @@ -56,7 +56,7 @@ <td><a href="#" data-load-content="sites/web_childdomain_edit.php?id={tmpl_var name='id'}">{tmpl_var name="parent_domain_id"}</a></td> <td><a href="#" data-load-content="sites/web_childdomain_edit.php?id={tmpl_var name='id'}">{tmpl_var name="domain"}</a></td> <td class="text-right"> - <a class="btn btn-default formbutton-danger formbutton-narrow" href="javascript: ISPConfig.confirm_action('sites/web_childdomain_del.php?id={tmpl_var name='id'}&phpsessid={tmpl_var name='phpsessid'}','{tmpl_var name='delete_confirmation'}');"><span class="icon icon-delete"></span></a> + <a class="btn btn-default formbutton-danger formbutton-narrow" href="javascript: ISPConfig.confirm_action('sites/web_childdomain_del.php?id={tmpl_var name='id'}&_csrf_id={tmpl_var name='csrf_id'}&_csrf_key={tmpl_var name='csrf_key'}&phpsessid={tmpl_var name='phpsessid'}','{tmpl_var name='delete_confirmation'}');"><span class="icon icon-delete"></span></a> </td> </tr> </tmpl_loop> diff --git a/interface/web/sites/templates/web_folder_list.htm b/interface/web/sites/templates/web_folder_list.htm index aaccb48895..e512b8b594 100644 --- a/interface/web/sites/templates/web_folder_list.htm +++ b/interface/web/sites/templates/web_folder_list.htm @@ -55,7 +55,7 @@ <td><a href="#" data-load-content="sites/web_folder_edit.php?id={tmpl_var name='id'}">{tmpl_var name="parent_domain_id"}</a></td> <td><a href="#" data-load-content="sites/web_folder_edit.php?id={tmpl_var name='id'}">{tmpl_var name="path"}</a></td> <td class="text-right"> - <a class="btn btn-default formbutton-danger formbutton-narrow" href="javascript: ISPConfig.confirm_action('sites/web_folder_del.php?id={tmpl_var name='id'}&phpsessid={tmpl_var name='phpsessid'}','{tmpl_var name='delete_confirmation'}');"><span class="icon icon-delete"></span></a> + <a class="btn btn-default formbutton-danger formbutton-narrow" href="javascript: ISPConfig.confirm_action('sites/web_folder_del.php?id={tmpl_var name='id'}&_csrf_id={tmpl_var name='csrf_id'}&_csrf_key={tmpl_var name='csrf_key'}&phpsessid={tmpl_var name='phpsessid'}','{tmpl_var name='delete_confirmation'}');"><span class="icon icon-delete"></span></a> </td> </tr> </tmpl_loop> diff --git a/interface/web/sites/templates/web_folder_user_list.htm b/interface/web/sites/templates/web_folder_user_list.htm index 6b67e0591c..8e1d77e25d 100644 --- a/interface/web/sites/templates/web_folder_user_list.htm +++ b/interface/web/sites/templates/web_folder_user_list.htm @@ -52,7 +52,7 @@ <td><a href="#" data-load-content="sites/web_folder_user_edit.php?id={tmpl_var name='id'}">{tmpl_var name="web_folder_id"}</a></td> <td><a href="#" data-load-content="sites/web_folder_user_edit.php?id={tmpl_var name='id'}">{tmpl_var name="username"}</a></td> <td class="text-right"> - <a class="btn btn-default formbutton-danger formbutton-narrow" href="javascript: ISPConfig.confirm_action('sites/web_folder_user_del.php?id={tmpl_var name='id'}&phpsessid={tmpl_var name='phpsessid'}','{tmpl_var name='delete_confirmation'}');"><span class="icon icon-delete"></span></a> + <a class="btn btn-default formbutton-danger formbutton-narrow" href="javascript: ISPConfig.confirm_action('sites/web_folder_user_del.php?id={tmpl_var name='id'}&_csrf_id={tmpl_var name='csrf_id'}&_csrf_key={tmpl_var name='csrf_key'}&phpsessid={tmpl_var name='phpsessid'}','{tmpl_var name='delete_confirmation'}');"><span class="icon icon-delete"></span></a> </td> </tr> </tmpl_loop> diff --git a/interface/web/sites/templates/web_vhost_domain_admin_list.htm b/interface/web/sites/templates/web_vhost_domain_admin_list.htm index 6f0e8f39ca..1ab14300d0 100644 --- a/interface/web/sites/templates/web_vhost_domain_admin_list.htm +++ b/interface/web/sites/templates/web_vhost_domain_admin_list.htm @@ -47,7 +47,7 @@ <td class="text-right"> <a href="http://{tmpl_var name="domain"}" target="_blank" class="btn btn-default formbutton-default formbutton-narrow"><span class="icon icon-link"></span></a> <a href="http://{tmpl_var name="domain"}/stats/" target="_blank" class="btn btn-default formbutton-default formbutton-narrow"><span class="glyphicon glyphicon-signal"></span></a> - <a class="btn btn-default formbutton-danger formbutton-narrow" href="javascript: ISPConfig.confirm_action('sites/web_vhost_domain_del.php?id={tmpl_var name='id'}&phpsessid={tmpl_var name='phpsessid'}','{tmpl_var name='delete_confirmation'}');"><span class="icon icon-delete"></span></a> + <a class="btn btn-default formbutton-danger formbutton-narrow" href="javascript: ISPConfig.confirm_action('sites/web_vhost_domain_del.php?id={tmpl_var name='id'}&_csrf_id={tmpl_var name='csrf_id'}&_csrf_key={tmpl_var name='csrf_key'}&phpsessid={tmpl_var name='phpsessid'}','{tmpl_var name='delete_confirmation'}');"><span class="icon icon-delete"></span></a> </td> </tr> </tmpl_loop> diff --git a/interface/web/sites/templates/web_vhost_domain_list.htm b/interface/web/sites/templates/web_vhost_domain_list.htm index b784f15965..105dac9399 100644 --- a/interface/web/sites/templates/web_vhost_domain_list.htm +++ b/interface/web/sites/templates/web_vhost_domain_list.htm @@ -61,7 +61,7 @@ <td class="text-right"> <a href="http://{tmpl_var name="domain"}" target="_blank" class="btn btn-default formbutton-default formbutton-narrow"><span class="icon icon-link"></span></button> <a href="http://{tmpl_var name="domain"}/stats/" target="_blank" class="btn btn-default formbutton-default formbutton-narrow"><span class="glyphicon glyphicon-signal"></span></a> - <a class="btn btn-default formbutton-danger formbutton-narrow" href="javascript: ISPConfig.confirm_action('sites/web_vhost_domain_del.php?id={tmpl_var name='id'}&phpsessid={tmpl_var name='phpsessid'}','{tmpl_var name='delete_confirmation'}');"><span class="icon icon-delete"></span></button> + <a class="btn btn-default formbutton-danger formbutton-narrow" href="javascript: ISPConfig.confirm_action('sites/web_vhost_domain_del.php?id={tmpl_var name='id'}&_csrf_id={tmpl_var name='csrf_id'}&_csrf_key={tmpl_var name='csrf_key'}&phpsessid={tmpl_var name='phpsessid'}','{tmpl_var name='delete_confirmation'}');"><span class="icon icon-delete"></span></button> </td> </tr> </tmpl_loop> diff --git a/interface/web/sites/templates/webdav_user_list.htm b/interface/web/sites/templates/webdav_user_list.htm index 01764cc2fe..866bcc9826 100644 --- a/interface/web/sites/templates/webdav_user_list.htm +++ b/interface/web/sites/templates/webdav_user_list.htm @@ -56,7 +56,7 @@ <td><a href="#" data-load-content="sites/webdav_user_edit.php?id={tmpl_var name='id'}">{tmpl_var name="parent_domain_id"}</a></td> <td><a href="#" data-load-content="sites/webdav_user_edit.php?id={tmpl_var name='id'}">{tmpl_var name="username"}</a></td> <td class="text-right"> - <a class="btn btn-default formbutton-danger formbutton-narrow" href="javascript: ISPConfig.confirm_action('sites/webdav_user_del.php?id={tmpl_var name='id'}&phpsessid={tmpl_var name='phpsessid'}','{tmpl_var name='delete_confirmation'}');"><span class="icon icon-delete"></span></a> + <a class="btn btn-default formbutton-danger formbutton-narrow" href="javascript: ISPConfig.confirm_action('sites/webdav_user_del.php?id={tmpl_var name='id'}&_csrf_id={tmpl_var name='csrf_id'}&_csrf_key={tmpl_var name='csrf_key'}&phpsessid={tmpl_var name='phpsessid'}','{tmpl_var name='delete_confirmation'}');"><span class="icon icon-delete"></span></a> </td> </tr> </tmpl_loop> diff --git a/interface/web/vm/templates/openvz_ip_list.htm b/interface/web/vm/templates/openvz_ip_list.htm index fd12694c37..ff98e2df55 100644 --- a/interface/web/vm/templates/openvz_ip_list.htm +++ b/interface/web/vm/templates/openvz_ip_list.htm @@ -39,7 +39,7 @@ <td><a href="#" data-load-content="vm/openvz_ip_edit.php?id={tmpl_var name='id'}">{tmpl_var name="ip_address"}</a></td> <td><a href="#" data-load-content="vm/openvz_ip_edit.php?id={tmpl_var name='id'}">{tmpl_var name="reserved"}</a></td> <td class="text-right"> - <a class="btn btn-default formbutton-danger formbutton-narrow" href="javascript: ISPConfig.confirm_action('vm/openvz_ip_del.php?id={tmpl_var name='id'}&phpsessid={tmpl_var name='phpsessid'}','{tmpl_var name='delete_confirmation'}');"><span class="icon icon-delete"></span></a> + <a class="btn btn-default formbutton-danger formbutton-narrow" href="javascript: ISPConfig.confirm_action('vm/openvz_ip_del.php?id={tmpl_var name='id'}&_csrf_id={tmpl_var name='csrf_id'}&_csrf_key={tmpl_var name='csrf_key'}&phpsessid={tmpl_var name='phpsessid'}','{tmpl_var name='delete_confirmation'}');"><span class="icon icon-delete"></span></a> </td> </tr> </tmpl_loop> diff --git a/interface/web/vm/templates/openvz_ostemplate_list.htm b/interface/web/vm/templates/openvz_ostemplate_list.htm index 85f46e6732..d800686e1c 100644 --- a/interface/web/vm/templates/openvz_ostemplate_list.htm +++ b/interface/web/vm/templates/openvz_ostemplate_list.htm @@ -42,7 +42,7 @@ <td><a href="#" data-load-content="vm/openvz_ostemplate_edit.php?id={tmpl_var name='id'}">{tmpl_var name="server_id"}</a></td> <td><a href="#" data-load-content="vm/openvz_ostemplate_edit.php?id={tmpl_var name='id'}">{tmpl_var name="allservers"}</a></td> <td class="text-right"> - <a class="btn btn-default formbutton-danger formbutton-narrow" href="javascript: ISPConfig.confirm_action('vm/openvz_ostemplate_del.php?id={tmpl_var name='id'}&phpsessid={tmpl_var name='phpsessid'}','{tmpl_var name='delete_confirmation'}');"><span class="icon icon-delete"></span></a> + <a class="btn btn-default formbutton-danger formbutton-narrow" href="javascript: ISPConfig.confirm_action('vm/openvz_ostemplate_del.php?id={tmpl_var name='id'}&_csrf_id={tmpl_var name='csrf_id'}&_csrf_key={tmpl_var name='csrf_key'}&phpsessid={tmpl_var name='phpsessid'}','{tmpl_var name='delete_confirmation'}');"><span class="icon icon-delete"></span></a> </td> </tr> </tmpl_loop> diff --git a/interface/web/vm/templates/openvz_template_list.htm b/interface/web/vm/templates/openvz_template_list.htm index 5ec0cb7913..2c20427901 100644 --- a/interface/web/vm/templates/openvz_template_list.htm +++ b/interface/web/vm/templates/openvz_template_list.htm @@ -33,7 +33,7 @@ <td><a href="#" data-load-content="vm/openvz_template_edit.php?id={tmpl_var name='id'}">{tmpl_var name="active"}</a></td> <td><a href="#" data-load-content="vm/openvz_template_edit.php?id={tmpl_var name='id'}">{tmpl_var name="template_name"}</a></td> <td class="text-right"> - <a class="btn btn-default formbutton-danger formbutton-narrow" href="javascript: ISPConfig.confirm_action('vm/openvz_template_del.php?id={tmpl_var name='id'}&phpsessid={tmpl_var name='phpsessid'}','{tmpl_var name='delete_confirmation'}');"><span class="icon icon-delete"></span></a> + <a class="btn btn-default formbutton-danger formbutton-narrow" href="javascript: ISPConfig.confirm_action('vm/openvz_template_del.php?id={tmpl_var name='id'}&_csrf_id={tmpl_var name='csrf_id'}&_csrf_key={tmpl_var name='csrf_key'}&phpsessid={tmpl_var name='phpsessid'}','{tmpl_var name='delete_confirmation'}');"><span class="icon icon-delete"></span></a> </td> </tr> </tmpl_loop> diff --git a/interface/web/vm/templates/openvz_vm_list.htm b/interface/web/vm/templates/openvz_vm_list.htm index 516b536bb3..ee4084f4d1 100644 --- a/interface/web/vm/templates/openvz_vm_list.htm +++ b/interface/web/vm/templates/openvz_vm_list.htm @@ -49,7 +49,7 @@ <td><a href="#" data-load-content="vm/openvz_vm_edit.php?id={tmpl_var name='id'}">{tmpl_var name="ip_address"}</a></td> <td class="text-right"> <a class="btn btn-default formbutton-default formbutton-narrow" data-load-content="vm/openvz_action.php?id={tmpl_var name='id'}"><span class="icon icon-action"></span></a> - <a class="btn btn-default formbutton-danger formbutton-narrow" href="javascript: ISPConfig.confirm_action('vm/openvz_vm_del.php?id={tmpl_var name='id'}&phpsessid={tmpl_var name='phpsessid'}','{tmpl_var name='delete_confirmation'}');"><span class="icon icon-delete"></span></a> + <a class="btn btn-default formbutton-danger formbutton-narrow" href="javascript: ISPConfig.confirm_action('vm/openvz_vm_del.php?id={tmpl_var name='id'}&_csrf_id={tmpl_var name='csrf_id'}&_csrf_key={tmpl_var name='csrf_key'}&phpsessid={tmpl_var name='phpsessid'}','{tmpl_var name='delete_confirmation'}');"><span class="icon icon-delete"></span></a> </td> </tr> </tmpl_loop> -- GitLab From e958363340da23d59f2dd69bf25bda98b3913850 Mon Sep 17 00:00:00 2001 From: Till Brehm <tbrehm@ispconfig.org> Date: Thu, 3 Oct 2019 16:56:59 +0200 Subject: [PATCH 194/215] Fixedm code typo in nginx_plugin.inc.php --- server/plugins-available/nginx_plugin.inc.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/server/plugins-available/nginx_plugin.inc.php b/server/plugins-available/nginx_plugin.inc.php index 86d5aba14f..a8a3c3bf16 100644 --- a/server/plugins-available/nginx_plugin.inc.php +++ b/server/plugins-available/nginx_plugin.inc.php @@ -694,7 +694,7 @@ class nginx_plugin { //* Copy the web skeleton files only when there is no index.ph or index.html file yet if(!file_exists($data['new']['document_root'].'/'.$web_folder.'/index.html') && !file_exists($data['new']['document_root'].'/'.$web_folder.'/index.php')) { - if (file_exists($conf['rootpath'] . '/conf-custom/index/standard_index.html_'.substr($conf['language']), 0, 2)) { + if (file_exists($conf['rootpath'] . '/conf-custom/index/standard_index.html_'.substr($conf['language'], 0, 2))) { if(!file_exists($data['new']['document_root'].'/' . $web_folder . '/index.html')) $app->system->exec_safe('cp ? ?', $conf['rootpath'] . '/conf-custom/index/standard_index.html_'.substr($conf['language'], 0, 2), $data['new']['document_root'].'/' . $web_folder . '/index.html'); if(is_file($conf['rootpath'] . '/conf-custom/index/favicon.ico')) { -- GitLab From 9d5bde2cf44500d2815a93d7f60deb61ca5db9e2 Mon Sep 17 00:00:00 2001 From: Marius Burkard <m.burkard@pixcept.de> Date: Fri, 4 Oct 2019 10:32:48 +0200 Subject: [PATCH 195/215] - Don't pass password to useradd and use chpasswd with proc_open instead, fixes #5416 --- server/lib/classes/system.inc.php | 27 +++++++++++++++++++ .../shelluser_base_plugin.inc.php | 12 +++++++-- 2 files changed, 37 insertions(+), 2 deletions(-) diff --git a/server/lib/classes/system.inc.php b/server/lib/classes/system.inc.php index c05d5ddf00..525bd7bda1 100644 --- a/server/lib/classes/system.inc.php +++ b/server/lib/classes/system.inc.php @@ -2191,4 +2191,31 @@ class system{ return true; } + + public function pipe_exec($cmd, $stdin, &$retval = null, &$stderr = null) { + $descriptors = array( + 0 => array('pipe', 'r'), + 1 => array('pipe', 'w'), + 2 => array('pipe', 'w') + ); + + $result = ''; + $pipes = null; + $proc = proc_open($cmd, $descriptors, $pipes); + if(is_resource($proc)) { + fwrite($pipes[0], $stdin); + fclose($pipes[0]); + + $result = stream_get_contents($pipes[1]); + $stderr = stream_get_contents($pipes[2]); + fclose($pipes[1]); + fclose($pipes[2]); + + $retval = proc_close($proc); + + return $result; + } else { + return false; + } + } } diff --git a/server/plugins-available/shelluser_base_plugin.inc.php b/server/plugins-available/shelluser_base_plugin.inc.php index b4e47b4e97..9f19c2be58 100755 --- a/server/plugins-available/shelluser_base_plugin.inc.php +++ b/server/plugins-available/shelluser_base_plugin.inc.php @@ -129,12 +129,20 @@ class shelluser_base_plugin { $app->system->chgrp($homedir,$data['new']['pgroup'],false); } $command = 'useradd -d ? -g ? -o'; // non unique - if($data['new']['password'] != '') $command .= ' -p ' . escapeshellarg($data['new']['password']); $command .= ' -s ? -u ? ?'; $app->system->exec_safe($command, $homedir, $data['new']['pgroup'], $data['new']['shell'], $uid, $data['new']['username']); $app->log("Executed command: ".$command, LOGLEVEL_DEBUG); $app->log("Added shelluser: ".$data['new']['username'], LOGLEVEL_DEBUG); - + + if($data['new']['password'] != '') { + $retval = null; + $stderr = ''; + $app->system->pipe_exec('chpasswd -e ' . escapeshellarg($data['new']['username']), $data['new']['username'] . ':' . $data['new']['password'], $retval, $stderr); + if($retval != 0) { + $app->log("Command chpasswd failed for user ".$data['new']['username'] . ' with code ' . $retval . ': ' . $stderr, LOGLEVEL_WARN); + } + } + $app->system->chown($data['new']['dir'],$data['new']['username'],false); $app->system->chgrp($data['new']['dir'],$data['new']['pgroup'],false); -- GitLab From 126290c8e8d4a4bbba21f08b2f5dee4578d9224d Mon Sep 17 00:00:00 2001 From: Marius Burkard <m.burkard@pixcept.de> Date: Fri, 4 Oct 2019 12:05:35 +0200 Subject: [PATCH 196/215] - added possibility to execute mkdirpath, file_put_contents and file_get_contents as unprivileged user, partly implements #5417 --- server/lib/classes/system.inc.php | 78 +++++++++++++++++++++++++++---- 1 file changed, 69 insertions(+), 9 deletions(-) diff --git a/server/lib/classes/system.inc.php b/server/lib/classes/system.inc.php index 525bd7bda1..3db57c510f 100644 --- a/server/lib/classes/system.inc.php +++ b/server/lib/classes/system.inc.php @@ -834,23 +834,55 @@ class system{ } } - function file_put_contents($filename, $data, $allow_symlink = false) { + function file_put_contents($filename, $data, $allow_symlink = false, $run_as_user = null) { global $app; if($allow_symlink == false && $this->checkpath($filename) == false) { $app->log("Action aborted, file is a symlink: $filename", LOGLEVEL_WARN); return false; } - if(file_exists($filename)) unlink($filename); - return file_put_contents($filename, $data); + if($run_as_user !== null && $run_as_user !== 'root') { + if(!$this->check_run_as_user($run_as_user)) { + $app->log("Action aborted, invalid run-as-user: $run_as_user", LOGLEVEL_WARN); + return false; + } + if(file_exists($filename)) { + $cmd = $this->get_sudo_command('rm ' . escapeshellarg($filename), $run_as_user); + $this->exec_safe($cmd); + } + $cmd = $this->get_sudo_command('cat - > ' . escapeshellarg($filename), $run_as_user); + $retval = null; + $stderr = ''; + $this->pipe_exec($cmd, $data, $retval, $stderr); + if($retval > 0) { + $app->log("Safe file_put_contents failed: $stderr", LOGLEVEL_WARN); + return false; + } else { + $size = filesize($filename); + return $size; + } + } else { + if(file_exists($filename)) unlink($filename); + return file_put_contents($filename, $data); + } } - function file_get_contents($filename, $allow_symlink = false) { + function file_get_contents($filename, $allow_symlink = false, $run_as_user = null) { global $app; if($allow_symlink == false && $this->checkpath($filename) == false) { $app->log("Action aborted, file is a symlink: $filename", LOGLEVEL_WARN); return false; } - return file_get_contents($filename, $data); + + if($run_as_user !== null && $run_as_user !== 'root') { + if(!$this->check_run_as_user($run_as_user)) { + $app->log("Action aborted, invalid run-as-user: $run_as_user", LOGLEVEL_WARN); + return false; + } + $cmd = $this->get_sudo_command('cat ' . escapeshellarg($filename), $run_as_user) . ' 2>/dev/null'; + return $this->system_safe($cmd); + } else { + return file_get_contents($filename); + } } function rename($filename, $new_filename, $allow_symlink = false) { @@ -862,13 +894,29 @@ class system{ return rename($filename, $new_filename); } - function mkdir($dirname, $allow_symlink = false, $mode = 0777, $recursive = false) { + function mkdir($dirname, $allow_symlink = false, $mode = 0777, $recursive = false, $run_as_user = null) { global $app; if($allow_symlink == false && $this->checkpath($dirname) == false) { $app->log("Action aborted, file is a symlink: $dirname", LOGLEVEL_WARN); return false; } - if(@mkdir($dirname, $mode, $recursive)) { + if($run_as_user !== null && !$this->check_run_as_user($run_as_user)) { + $app->log("Action aborted, invalid run-as-user: $run_as_user", LOGLEVEL_WARN); + return false; + } + $success = false; + if($run_as_user !== null && $run_as_user !== 'root') { + $cmd = $this->get_sudo_command('mkdir ' . ($recursive ? '-p ' : '') . escapeshellarg($dirname), $run_as_user) . ' >/dev/null 2>&1'; + $this->exec_safe($cmd); + if($this->last_exec_retcode() != 0) { + $success = false; + } else { + $success = true; + } + } else { + $success = @mkdir($dirname, $mode, $recursive); + } + if($success) { return true; } else { $app->log("mkdir failed: $dirname", LOGLEVEL_DEBUG); @@ -1677,14 +1725,14 @@ class system{ } //* Function to create directory paths and chown them to a user and group - function mkdirpath($path, $mode = 0755, $user = '', $group = '') { + function mkdirpath($path, $mode = 0755, $user = '', $group = '', $run_as_user = null) { $path_parts = explode('/', $path); $new_path = ''; if(is_array($path_parts)) { foreach($path_parts as $part) { $new_path .= '/'.$part; if(!@is_dir($new_path)) { - $this->mkdir($new_path); + $this->mkdir($new_path, false, 0777, false, $run_as_user); $this->chmod($new_path, $mode); if($user != '') $this->chown($new_path, $user); if($group != '') $this->chgrp($new_path, $group); @@ -2218,4 +2266,16 @@ class system{ return false; } } + + private function get_sudo_command($cmd, $run_as_user) { + return 'sudo -u ' . escapeshellarg($run_as_user) . ' sh -c ' . escapeshellarg($cmd); + } + + private function check_run_as_user($username) { + if(preg_match('/^[a-zA-Z0-9_\-]+$/', $username)) { + return true; + } else{ + return false; + } + } } -- GitLab From ed8922b48a67f981c44ee933633c403f27a1b882 Mon Sep 17 00:00:00 2001 From: Till Brehm <tbrehm@ispconfig.org> Date: Fri, 4 Oct 2019 14:38:48 +0200 Subject: [PATCH 197/215] For issue #5415 --- interface/web/client/client_del.php | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/interface/web/client/client_del.php b/interface/web/client/client_del.php index 2bddd02a07..d92dc56008 100644 --- a/interface/web/client/client_del.php +++ b/interface/web/client/client_del.php @@ -58,9 +58,14 @@ class page_action extends tform_actions { if(!is_object($app->tform)) $app->uses('tform'); if($_POST["confirm"] == 'yes') { + if(isset($_POST['_csrf_id'])) $_GET['_csrf_id'] = $_POST['_csrf_id']; + if(isset($_POST['_csrf_key'])) $_GET['_csrf_key'] = $_POST['_csrf_key']; parent::onDelete(); } else { + // Check CSRF Token + $app->auth->csrf_token_check('GET'); + $app->uses('tpl'); $app->tpl->newTemplate("form.tpl.htm"); $app->tpl->setInclude('content_tpl', 'templates/client_del.htm'); @@ -100,6 +105,11 @@ class page_action extends tform_actions { $lng_file = 'lib/lang/'.$app->functions->check_language($_SESSION['s']['language']).'_client_del.lng'; include $lng_file; $app->tpl->setVar($wb); + + // get new csrf token + $csrf_token = $app->auth->csrf_token_get('client_del'); + $app->tpl->setVar('_csrf_id', $csrf_token['csrf_id']); + $app->tpl->setVar('_csrf_key', $csrf_token['csrf_key']); $app->tpl_defaults(); $app->tpl->pparse(); -- GitLab From 559c694e648bcf52d7eb057a7b54a95de169738f Mon Sep 17 00:00:00 2001 From: Till Brehm <tbrehm@ispconfig.org> Date: Fri, 4 Oct 2019 17:33:43 +0200 Subject: [PATCH 198/215] Various fixes related to #5415 --- interface/web/sites/aps_do_operation.php | 3 +++ interface/web/sites/aps_install_package.php | 10 ++++++++-- interface/web/sites/aps_installedpackages_list.php | 10 ++++++++-- interface/web/sites/templates/aps_instances_list.htm | 2 +- interface/web/sites/templates/aps_packages_list.htm | 2 +- 5 files changed, 21 insertions(+), 6 deletions(-) diff --git a/interface/web/sites/aps_do_operation.php b/interface/web/sites/aps_do_operation.php index ff0705f9bb..8de3ed4e29 100644 --- a/interface/web/sites/aps_do_operation.php +++ b/interface/web/sites/aps_do_operation.php @@ -64,6 +64,9 @@ if($_GET['action'] == 'change_status') } else if($_GET['action'] == 'delete_instance') { + // Check CSRF Token + $app->auth->csrf_token_check('GET'); + // Make sure a valid package ID is given (also corresponding to the calling user) $client_id = 0; $is_admin = ($_SESSION['s']['user']['typ'] == 'admin') ? true : false; diff --git a/interface/web/sites/aps_install_package.php b/interface/web/sites/aps_install_package.php index 4739e25b8a..1a38190a9f 100644 --- a/interface/web/sites/aps_install_package.php +++ b/interface/web/sites/aps_install_package.php @@ -93,6 +93,9 @@ if(!empty($domains_assoc)) foreach($domains_assoc as $domain) $domains[] = $doma $result['input'] = array(); if(count($_POST) > 1) { + // Check CSRF Token + $app->auth->csrf_token_check(); + $result = $gui->validateInstallerInput($_POST, $details, $domains, $settings); if(empty($result['error'])) { @@ -117,13 +120,16 @@ foreach($details as $key => $value) else if($key == 'Requirements PHP settings') $app->tpl->setLoop('pkg_requirements_php_settings', $details['Requirements PHP settings']); } +// get new csrf token +$csrf_token = $app->auth->csrf_token_get('aps_install_package'); +$app->tpl->setVar('_csrf_id', $csrf_token['csrf_id']); +$app->tpl->setVar('_csrf_key', $csrf_token['csrf_key']); + // Parse the template as far as possible, then do the rest manually $app->tpl_defaults(); $parsed_tpl = $app->tpl->grab(); -// ISPConfig has a very old and functionally limited template engine. We have to style parts on our own... - // Print the domain list $domains_tpl = ''; if(!empty($domains)) diff --git a/interface/web/sites/aps_installedpackages_list.php b/interface/web/sites/aps_installedpackages_list.php index 28f334019f..32849ad740 100644 --- a/interface/web/sites/aps_installedpackages_list.php +++ b/interface/web/sites/aps_installedpackages_list.php @@ -112,12 +112,16 @@ if(!$is_admin) { $records = $app->db->queryAllRecords($query); $app->listform_actions->DataRowColor = '#FFFFFF'; +$csrf_token = $app->auth->csrf_token_get($app->listform->listDef['name']); +$_csrf_id = $csrf_token['csrf_id']; +$_csrf_key = $csrf_token['csrf_key']; + // Re-form all result entries and add extra entries $records_new = array(); if(is_array($records)) { $app->listform_actions->idx_key = $app->listform->listDef["table_idx"]; - foreach($records as $rec) + foreach($records as $key => $rec) { // Set an abbreviated install location to beware the page layout $ils = ''; @@ -129,7 +133,9 @@ if(is_array($records)) if($rec['instance_status'] != INSTANCE_REMOVE && $rec['instance_status'] != INSTANCE_INSTALL) $rec['delete_possible'] = 'true'; - $records_new[] = $app->listform_actions->prepareDataRow($rec); + $records_new[$key] = $app->listform_actions->prepareDataRow($rec); + $records_new[$key]['csrf_id'] = $_csrf_id; + $records_new[$key]['csrf_key'] = $_csrf_key; } } $app->tpl->setLoop('records', $records_new); diff --git a/interface/web/sites/templates/aps_instances_list.htm b/interface/web/sites/templates/aps_instances_list.htm index cfde591b19..ae3d095e7b 100644 --- a/interface/web/sites/templates/aps_instances_list.htm +++ b/interface/web/sites/templates/aps_instances_list.htm @@ -40,7 +40,7 @@ <td><span id="status_content{tmpl_var name='__ROWNUM__'}">{tmpl_var name='instance_status'}</span></td> <td class="text-right"> <tmpl_if name='delete_possible'> - <a class="btn btn-default formbutton-danger formbutton-narrow" href="javascript: ISPConfig.confirm_action('sites/aps_do_operation.php?action=delete_instance&id={tmpl_var name='id'}','{tmpl_var name='pkg_delete_confirmation'}')"><span class="icon icon-delete"></span></button> + <a class="btn btn-default formbutton-danger formbutton-narrow" href="javascript: ISPConfig.confirm_action('sites/aps_do_operation.php?action=delete_instance&id={tmpl_var name='id'}&_csrf_id={tmpl_var name='csrf_id'}&_csrf_key={tmpl_var name='csrf_key'}','{tmpl_var name='pkg_delete_confirmation'}')"><span class="icon icon-delete"></span></button> </tmpl_if> </td> </tr> diff --git a/interface/web/sites/templates/aps_packages_list.htm b/interface/web/sites/templates/aps_packages_list.htm index 501e7aeedd..fa3582ed74 100644 --- a/interface/web/sites/templates/aps_packages_list.htm +++ b/interface/web/sites/templates/aps_packages_list.htm @@ -31,7 +31,7 @@ <td>{tmpl_var name='version'}-{tmpl_var name='release'}</td> <td>{tmpl_var name='category'}</td> <tmpl_if name='is_admin'> - <td><a href="javascript:ISPConfig.loadContentInto('status_content{tmpl_var name='__ROWNUM__'}', 'sites/aps_do_operation.php?action=change_status&id={tmpl_var name='id'}&phpsessid={tmpl_var name='phpsessid'}');"><span id="status_content{tmpl_var name='__ROWNUM__'}">{tmpl_var name='package_status'}</span></a></td> + <td><a href="javascript:ISPConfig.loadContentInto('status_content{tmpl_var name='__ROWNUM__'}', 'sites/aps_do_operation.php?action=change_status&id={tmpl_var name='id'}&_csrf_id={tmpl_var name='csrf_id'}&_csrf_key={tmpl_var name='csrf_key'}&phpsessid={tmpl_var name='phpsessid'}');"><span id="status_content{tmpl_var name='__ROWNUM__'}">{tmpl_var name='package_status'}</span></a></td> </tmpl_if> <td class="text-right"> </td> </tr> -- GitLab From 58b341857c056db03999e9a79404ffcffe153ec4 Mon Sep 17 00:00:00 2001 From: Till Brehm <tbrehm@ispconfig.org> Date: Tue, 8 Oct 2019 18:26:11 +0200 Subject: [PATCH 199/215] Implemented #5420 Improve input filters for Tools > Interface settings --- interface/web/admin/form/users.tform.php | 12 ++++++++++++ interface/web/admin/lib/lang/en_users.lng | 4 ++++ .../web/tools/form/interface_settings.tform.php | 12 ++++++++++++ interface/web/tools/interface_settings.php | 5 +++-- interface/web/tools/lib/lang/en_interface.lng | 4 ++++ 5 files changed, 35 insertions(+), 2 deletions(-) diff --git a/interface/web/admin/form/users.tform.php b/interface/web/admin/form/users.tform.php index 6a23559f12..b7f00b4eef 100644 --- a/interface/web/admin/form/users.tform.php +++ b/interface/web/admin/form/users.tform.php @@ -199,6 +199,12 @@ $form['tabs']['users'] = array ( 'startmodule' => array ( 'datatype' => 'VARCHAR', 'formtype' => 'SELECT', + 'validators' => array ( 0 => array ( 'type' => 'NOTEMPTY', + 'errmsg'=> 'startmodule_empty'), + 1 => array ( 'type' => 'REGEX', + 'regex' => '/^[a-z0-9\_]{0,64}$/', + 'errmsg'=> 'startmodule_regex'), + ), 'regex' => '', 'errmsg' => '', 'default' => '', @@ -212,6 +218,12 @@ $form['tabs']['users'] = array ( 'app_theme' => array ( 'datatype' => 'VARCHAR', 'formtype' => 'RADIO', + 'validators' => array ( 0 => array ( 'type' => 'NOTEMPTY', + 'errmsg'=> 'app_theme_empty'), + 1 => array ( 'type' => 'REGEX', + 'regex' => '/^[a-z0-9\_]{0,64}$/', + 'errmsg'=> 'app_theme_regex'), + ), 'regex' => '', 'errmsg' => '', 'default' => 'default', diff --git a/interface/web/admin/lib/lang/en_users.lng b/interface/web/admin/lib/lang/en_users.lng index 81f3742a35..931c73e8eb 100644 --- a/interface/web/admin/lib/lang/en_users.lng +++ b/interface/web/admin/lib/lang/en_users.lng @@ -33,4 +33,8 @@ $wb['username_error_collision'] = 'The username may not be web or web plus a num $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'; $wb['no_user_insert'] = 'CP-Users of type -user- get added and updated automatically when you add a client or reseller.'; +$wb['startmodule_empty'] = 'Startmodule empty.'; +$wb['startmodule_regex'] = 'Invalid chars in Startmodule.'; +$wb['app_theme_empty'] = 'App theme empty.'; +$wb['app_theme_regex'] = 'Invalid chars in App theme.'; ?> diff --git a/interface/web/tools/form/interface_settings.tform.php b/interface/web/tools/form/interface_settings.tform.php index f213605bf7..9ab49eb0f1 100644 --- a/interface/web/tools/form/interface_settings.tform.php +++ b/interface/web/tools/form/interface_settings.tform.php @@ -144,6 +144,12 @@ $form['tabs']['main'] = array ( 'startmodule' => array ( 'datatype' => 'VARCHAR', 'formtype' => 'SELECT', + 'validators' => array ( 0 => array ( 'type' => 'NOTEMPTY', + 'errmsg'=> 'startmodule_empty'), + 1 => array ( 'type' => 'REGEX', + 'regex' => '/^[a-z0-9\_]{0,64}$/', + 'errmsg'=> 'startmodule_regex'), + ), 'regex' => '', 'errmsg' => '', 'default' => '', @@ -157,6 +163,12 @@ $form['tabs']['main'] = array ( 'app_theme' => array ( 'datatype' => 'VARCHAR', 'formtype' => 'SELECT', + 'validators' => array ( 0 => array ( 'type' => 'NOTEMPTY', + 'errmsg'=> 'app_theme_empty'), + 1 => array ( 'type' => 'REGEX', + 'regex' => '/^[a-z0-9\_]{0,64}$/', + 'errmsg'=> 'app_theme_regex'), + ), 'regex' => '', 'errmsg' => '', 'default' => 'default', diff --git a/interface/web/tools/interface_settings.php b/interface/web/tools/interface_settings.php index d7a1333b59..b14b637375 100644 --- a/interface/web/tools/interface_settings.php +++ b/interface/web/tools/interface_settings.php @@ -81,7 +81,6 @@ class page_action extends tform_actions { if(!in_array($this->dataRecord['startmodule'], $this->dataRecord['modules'])) { $app->tform->errorMessage .= $app->tform->wordbook['startmodule_err']; } - $this->updateSessionTheme(); } function onInsert() { @@ -96,7 +95,6 @@ class page_action extends tform_actions { if(@is_array($this->dataRecord['modules']) && !in_array($this->dataRecord['startmodule'], $this->dataRecord['modules'])) { $app->tform->errorMessage .= $app->tform->wordbook['startmodule_err']; } - $this->updateSessionTheme(); } function updateSessionTheme() { @@ -120,6 +118,9 @@ class page_action extends tform_actions { } function onAfterUpdate() { + + $this->updateSessionTheme(); + if($this->_theme_changed == true) { // not the best way, but it works header('Content-Type: text/html'); diff --git a/interface/web/tools/lib/lang/en_interface.lng b/interface/web/tools/lib/lang/en_interface.lng index b15c7334b2..7cb0e2d8bc 100644 --- a/interface/web/tools/lib/lang/en_interface.lng +++ b/interface/web/tools/lib/lang/en_interface.lng @@ -4,4 +4,8 @@ $wb["interface_desc_txt"] = 'Modify your interface'; $wb["language_txt"] = 'Language'; $wb["startmodule_txt"] = 'Startmodule'; $wb["app_theme_txt"] = 'Design'; +$wb['startmodule_empty'] = 'Startmodule empty.'; +$wb['startmodule_regex'] = 'Invalid chars in Startmodule.'; +$wb['app_theme_empty'] = 'App theme empty.'; +$wb['app_theme_regex'] = 'Invalid chars in App theme.'; ?> \ No newline at end of file -- GitLab From a1d4fd4828408ba33c53dfcfe14b1618f4a68c56 Mon Sep 17 00:00:00 2001 From: Till Brehm <tbrehm@ispconfig.org> Date: Wed, 9 Oct 2019 10:48:24 +0200 Subject: [PATCH 200/215] More fixes for issue #5415 --- interface/web/admin/software_package_del.php | 3 +++ interface/web/admin/software_package_install.php | 7 +++++++ interface/web/admin/software_package_list.php | 7 ++++++- interface/web/admin/templates/software_package_list.htm | 2 +- 4 files changed, 17 insertions(+), 2 deletions(-) diff --git a/interface/web/admin/software_package_del.php b/interface/web/admin/software_package_del.php index 31aeb1c09b..e1387f39c4 100644 --- a/interface/web/admin/software_package_del.php +++ b/interface/web/admin/software_package_del.php @@ -36,6 +36,9 @@ $app->auth->check_module_permissions('admin'); $app->auth->check_security_permissions('admin_allow_software_packages'); if($conf['demo_mode'] == true) $app->error('This function is disabled in demo mode.'); +// Check CSRF Token +$app->auth->csrf_token_check('GET'); + $software_update_inst_id = $app->functions->intval($_GET['software_update_inst_id']); if($software_update_inst_id > 0) { diff --git a/interface/web/admin/software_package_install.php b/interface/web/admin/software_package_install.php index ccbfd73ebe..6a5326d51a 100644 --- a/interface/web/admin/software_package_install.php +++ b/interface/web/admin/software_package_install.php @@ -38,6 +38,13 @@ $app->auth->check_security_permissions('admin_allow_software_packages'); //* This is only allowed for administrators if(!$app->auth->is_admin()) die('only allowed for administrators.'); +// Check CSRF Token +if(count($_POST) > 0) { + $app->auth->csrf_token_check('POST'); +} else { + $app->auth->csrf_token_check('GET'); +} + $package_name = $_REQUEST['package']; $install_server_id = $app->functions->intval($_REQUEST['server_id']); $install_key = trim($_REQUEST['install_key']); diff --git a/interface/web/admin/software_package_list.php b/interface/web/admin/software_package_list.php index b6664d4234..8a21696c7f 100644 --- a/interface/web/admin/software_package_list.php +++ b/interface/web/admin/software_package_list.php @@ -145,6 +145,9 @@ $app->uses('tpl'); $app->tpl->newTemplate("form.tpl.htm"); $app->tpl->setInclude('content_tpl', 'templates/software_package_list.htm'); +$csrf_token = $app->auth->csrf_token_get('software_package_list'); +$_csrf_id = $csrf_token['csrf_id']; +$_csrf_key = $csrf_token['csrf_key']; $servers = $app->db->queryAllRecords('SELECT server_id, server_name FROM server ORDER BY server_name'); $packages = $app->db->queryAllRecords('SELECT * FROM software_package'); @@ -167,12 +170,14 @@ if(is_array($packages) && count($packages) > 0) { if($p['package_installable'] == 'no') { $installed_txt .= $s['server_name'].": ".$app->lng("Package can not be installed.")."<br />"; } else { - $installed_txt .= $s['server_name'].": <a href=\"#\" data-load-content=\"admin/software_package_install.php?package=".$p["package_name"]."&server_id=".$s["server_id"]."\">Install now</a><br />"; + $installed_txt .= $s['server_name'].": <a href=\"#\" data-load-content=\"admin/software_package_install.php?package=".$p["package_name"]."&server_id=".$s["server_id"]."&_csrf_key=".$_csrf_key."&_csrf_id=".$_csrf_id."\">Install now</a><br />"; } } } $packages[$key]['software_update_inst_id'] = intval($inst['software_update_inst_id']); $packages[$key]['installed'] = $installed_txt; + $packages[$key]['csrf_id'] = $_csrf_id; + $packages[$key]['csrf_key'] = $_csrf_key; } $app->tpl->setVar('has_packages', 1); } else { diff --git a/interface/web/admin/templates/software_package_list.htm b/interface/web/admin/templates/software_package_list.htm index 31969c0575..e69e3780af 100644 --- a/interface/web/admin/templates/software_package_list.htm +++ b/interface/web/admin/templates/software_package_list.htm @@ -33,7 +33,7 @@ <td>ispapp{tmpl_var name="package_id"}</td> <td class="text-right"> <a class="btn btn-default formbutton-default formbutton-narrow" data-load-content="admin/software_package_edit.php?id={tmpl_var name='package_id'}"><span class="icon icon-edit"></span></a> - <a class="btn btn-default formbutton-danger formbutton-narrow" href="javascript: ISPConfig.confirm_action('admin/software_package_del.php?software_update_inst_id={tmpl_var name='software_update_inst_id'}','{tmpl_var name='delete_confirmation'}');"><span class="icon icon-delete"></span></a> + <a class="btn btn-default formbutton-danger formbutton-narrow" href="javascript: ISPConfig.confirm_action('admin/software_package_del.php?software_update_inst_id={tmpl_var name='software_update_inst_id'}&_csrf_id={tmpl_var name='csrf_id'}&_csrf_key={tmpl_var name='csrf_key'}','{tmpl_var name='delete_confirmation'}');"><span class="icon icon-delete"></span></a> </td> </tr> </tmpl_if> -- GitLab From 92184cbe2c093ddbcda168e63613e87d593947c4 Mon Sep 17 00:00:00 2001 From: Till Brehm <tbrehm@ispconfig.org> Date: Wed, 9 Oct 2019 16:03:58 +0200 Subject: [PATCH 201/215] Updated Brazilian Portuguese and Turkish language files. --- interface/lib/lang/br.lng | 108 ++-- interface/lib/lang/tr.lng | 127 ++--- interface/web/admin/lib/lang/br.lng | 35 +- .../admin/lib/lang/br_directive_snippets.lng | 10 +- .../lib/lang/br_directive_snippets_list.lng | 4 +- interface/web/admin/lib/lang/br_firewall.lng | 10 +- .../web/admin/lib/lang/br_firewall_list.lng | 2 +- interface/web/admin/lib/lang/br_groups.lng | 2 +- .../web/admin/lib/lang/br_groups_list.lng | 6 +- interface/web/admin/lib/lang/br_iptables.lng | 10 +- .../web/admin/lib/lang/br_iptables_list.lng | 8 +- .../web/admin/lib/lang/br_language_add.lng | 4 +- .../admin/lib/lang/br_language_complete.lng | 2 +- .../web/admin/lib/lang/br_language_edit.lng | 4 +- .../web/admin/lib/lang/br_language_export.lng | 4 +- .../web/admin/lib/lang/br_language_import.lng | 6 +- .../web/admin/lib/lang/br_language_list.lng | 6 +- .../web/admin/lib/lang/br_package_install.lng | 2 +- .../web/admin/lib/lang/br_remote_action.lng | 14 +- .../web/admin/lib/lang/br_remote_user.lng | 96 ++-- .../admin/lib/lang/br_remote_user_list.lng | 6 +- interface/web/admin/lib/lang/br_server.lng | 16 +- .../web/admin/lib/lang/br_server_config.lng | 506 +++++++++--------- interface/web/admin/lib/lang/br_server_ip.lng | 12 +- .../web/admin/lib/lang/br_server_ip_list.lng | 4 +- .../web/admin/lib/lang/br_server_ip_map.lng | 14 +- .../admin/lib/lang/br_server_ip_map_list.lng | 6 +- .../web/admin/lib/lang/br_server_list.lng | 6 +- .../web/admin/lib/lang/br_server_php.lng | 16 +- .../web/admin/lib/lang/br_server_php_list.lng | 4 +- .../lib/lang/br_software_package_list.lng | 8 +- .../web/admin/lib/lang/br_software_repo.lng | 2 +- .../lib/lang/br_software_update_list.lng | 8 +- .../web/admin/lib/lang/br_system_config.lng | 127 +++-- .../admin/lib/lang/br_tpl_default_admin.lng | 22 +- interface/web/admin/lib/lang/br_users.lng | 36 +- .../web/admin/lib/lang/br_users_list.lng | 8 +- interface/web/admin/lib/lang/tr.lng | 30 +- .../admin/lib/lang/tr_directive_snippets.lng | 16 +- .../lib/lang/tr_directive_snippets_list.lng | 10 +- interface/web/admin/lib/lang/tr_firewall.lng | 5 +- interface/web/admin/lib/lang/tr_groups.lng | 2 +- interface/web/admin/lib/lang/tr_iptables.lng | 2 + .../web/admin/lib/lang/tr_iptables_list.lng | 2 + .../web/admin/lib/lang/tr_language_import.lng | 4 +- interface/web/admin/lib/lang/tr_login_as.lng | 12 + .../web/admin/lib/lang/tr_remote_action.lng | 10 +- .../web/admin/lib/lang/tr_remote_user.lng | 48 +- interface/web/admin/lib/lang/tr_server.lng | 6 +- .../web/admin/lib/lang/tr_server_config.lng | 230 ++++---- interface/web/admin/lib/lang/tr_server_ip.lng | 6 +- .../web/admin/lib/lang/tr_server_ip_list.lng | 4 +- .../web/admin/lib/lang/tr_server_ip_map.lng | 20 +- .../admin/lib/lang/tr_server_ip_map_list.lng | 10 +- .../web/admin/lib/lang/tr_server_list.lng | 4 +- .../web/admin/lib/lang/tr_server_php.lng | 2 +- .../web/admin/lib/lang/tr_server_php_list.lng | 2 +- .../admin/lib/lang/tr_software_package.lng | 2 +- .../lib/lang/tr_software_update_list.lng | 2 +- .../web/admin/lib/lang/tr_system_config.lng | 70 ++- interface/web/admin/lib/lang/tr_users.lng | 20 +- .../web/admin/lib/lang/tr_users_list.lng | 2 +- interface/web/client/lib/lang/br.lng | 20 +- interface/web/client/lib/lang/br_client.lng | 258 ++++----- .../web/client/lib/lang/br_client_circle.lng | 4 +- .../client/lib/lang/br_client_circle_list.lng | 6 +- .../web/client/lib/lang/br_client_del.lng | 2 +- .../web/client/lib/lang/br_client_message.lng | 16 +- .../lib/lang/br_client_message_template.lng | 10 +- .../lang/br_client_message_template_list.lng | 2 +- .../client/lib/lang/br_client_template.lng | 179 ++++--- .../lib/lang/br_client_template_list.lng | 8 +- .../web/client/lib/lang/br_clients_list.lng | 10 +- interface/web/client/lib/lang/br_domain.lng | 6 +- interface/web/client/lib/lang/br_reseller.lng | 288 +++++----- .../web/client/lib/lang/br_resellers_list.lng | 2 +- interface/web/client/lib/lang/tr.lng | 17 +- interface/web/client/lib/lang/tr_client.lng | 180 ++++--- .../lib/lang/tr_client_message_template.lng | 12 +- .../lang/tr_client_message_template_list.lng | 4 +- .../client/lib/lang/tr_client_template.lng | 141 ++--- .../lib/lang/tr_client_template_list.lng | 8 +- .../web/client/lib/lang/tr_clients_list.lng | 8 +- interface/web/client/lib/lang/tr_domain.lng | 8 +- .../web/client/lib/lang/tr_domain_list.lng | 6 +- interface/web/client/lib/lang/tr_reseller.lng | 184 +++---- .../web/client/lib/lang/tr_resellers_list.lng | 2 +- interface/web/dashboard/lib/lang/br.lng | 2 +- .../lib/lang/br_dashlet_customer.lng | 2 +- .../lib/lang/br_dashlet_databasequota.lng | 4 +- .../br_dashlet_invoice_client_settings.lng | 2 +- .../lib/lang/br_dashlet_invoices.lng | 8 +- .../dashboard/lib/lang/br_dashlet_limits.lng | 62 +-- .../lib/lang/br_dashlet_mailquota.lng | 4 +- .../dashboard/lib/lang/br_dashlet_modules.lng | 2 +- .../lib/lang/br_dashlet_products.lng | 4 +- .../dashboard/lib/lang/br_dashlet_quota.lng | 4 +- .../dashboard/lib/lang/br_dashlet_shop.lng | 6 +- .../lib/lang/tr_dashlet_customer.lng | 4 +- .../lib/lang/tr_dashlet_databasequota.lng | 10 +- .../dashboard/lib/lang/tr_dashlet_donate.lng | 10 +- .../tr_dashlet_invoice_client_settings.lng | 4 +- .../lib/lang/tr_dashlet_invoices.lng | 32 +- .../dashboard/lib/lang/tr_dashlet_limits.lng | 32 +- .../lib/lang/tr_dashlet_mailquota.lng | 2 +- .../dashboard/lib/lang/tr_dashlet_modules.lng | 2 +- .../lib/lang/tr_dashlet_products.lng | 14 +- .../dashboard/lib/lang/tr_dashlet_quota.lng | 6 +- .../dashboard/lib/lang/tr_dashlet_shop.lng | 12 +- interface/web/dns/lib/lang/br.lng | 10 +- interface/web/dns/lib/lang/br_dns_a.lng | 16 +- interface/web/dns/lib/lang/br_dns_a_list.lng | 8 +- interface/web/dns/lib/lang/br_dns_aaaa.lng | 16 +- interface/web/dns/lib/lang/br_dns_alias.lng | 16 +- interface/web/dns/lib/lang/br_dns_caa.lng | 32 +- interface/web/dns/lib/lang/br_dns_cname.lng | 18 +- interface/web/dns/lib/lang/br_dns_dkim.lng | 14 +- interface/web/dns/lib/lang/br_dns_dmarc.lng | 64 +-- interface/web/dns/lib/lang/br_dns_ds.lng | 17 +- interface/web/dns/lib/lang/br_dns_hinfo.lng | 18 +- interface/web/dns/lib/lang/br_dns_import.lng | 20 +- interface/web/dns/lib/lang/br_dns_loc.lng | 16 +- interface/web/dns/lib/lang/br_dns_mx.lng | 18 +- interface/web/dns/lib/lang/br_dns_ns.lng | 16 +- interface/web/dns/lib/lang/br_dns_ptr.lng | 14 +- interface/web/dns/lib/lang/br_dns_rp.lng | 16 +- interface/web/dns/lib/lang/br_dns_slave.lng | 16 +- .../dns/lib/lang/br_dns_slave_admin_list.lng | 4 +- .../web/dns/lib/lang/br_dns_slave_list.lng | 4 +- interface/web/dns/lib/lang/br_dns_soa.lng | 48 +- .../dns/lib/lang/br_dns_soa_admin_list.lng | 9 +- .../web/dns/lib/lang/br_dns_soa_list.lng | 7 +- interface/web/dns/lib/lang/br_dns_spf.lng | 22 +- interface/web/dns/lib/lang/br_dns_srv.lng | 18 +- .../web/dns/lib/lang/br_dns_template.lng | 4 +- .../web/dns/lib/lang/br_dns_template_list.lng | 4 +- interface/web/dns/lib/lang/br_dns_tlsa.lng | 12 +- interface/web/dns/lib/lang/br_dns_txt.lng | 22 +- interface/web/dns/lib/lang/br_dns_wizard.lng | 44 +- interface/web/dns/lib/lang/tr.lng | 5 +- interface/web/dns/lib/lang/tr_dns_a.lng | 6 +- interface/web/dns/lib/lang/tr_dns_a_list.lng | 2 +- interface/web/dns/lib/lang/tr_dns_aaaa.lng | 8 +- interface/web/dns/lib/lang/tr_dns_alias.lng | 4 +- interface/web/dns/lib/lang/tr_dns_cname.lng | 4 +- interface/web/dns/lib/lang/tr_dns_dkim.lng | 22 +- interface/web/dns/lib/lang/tr_dns_dmarc.lng | 96 ++-- interface/web/dns/lib/lang/tr_dns_ds.lng | 31 +- interface/web/dns/lib/lang/tr_dns_hinfo.lng | 4 +- interface/web/dns/lib/lang/tr_dns_import.lng | 16 +- interface/web/dns/lib/lang/tr_dns_loc.lng | 28 +- interface/web/dns/lib/lang/tr_dns_mx.lng | 10 +- interface/web/dns/lib/lang/tr_dns_ns.lng | 4 +- interface/web/dns/lib/lang/tr_dns_rp.lng | 4 +- interface/web/dns/lib/lang/tr_dns_slave.lng | 2 +- interface/web/dns/lib/lang/tr_dns_soa.lng | 24 +- .../dns/lib/lang/tr_dns_soa_admin_list.lng | 2 +- .../web/dns/lib/lang/tr_dns_soa_list.lng | 4 +- interface/web/dns/lib/lang/tr_dns_spf.lng | 46 +- interface/web/dns/lib/lang/tr_dns_srv.lng | 4 +- .../web/dns/lib/lang/tr_dns_template.lng | 1 - interface/web/dns/lib/lang/tr_dns_tlsa.lng | 28 +- interface/web/dns/lib/lang/tr_dns_txt.lng | 10 +- interface/web/dns/lib/lang/tr_dns_wizard.lng | 32 +- interface/web/help/lib/lang/br.lng | 14 +- interface/web/help/lib/lang/br_faq_form.lng | 6 +- .../lib/lang/br_faq_manage_questions_list.lng | 10 +- .../help/lib/lang/br_faq_sections_form.lng | 2 +- .../lib/lang/br_help_faq_sections_list.lng | 8 +- .../web/help/lib/lang/br_support_message.lng | 20 +- .../help/lib/lang/br_support_message_list.lng | 6 +- interface/web/help/lib/lang/tr.lng | 1 + .../web/help/lib/lang/tr_support_message.lng | 4 +- interface/web/login/lib/lang/br.lng | 8 +- interface/web/login/lib/lang/br_login_as.lng | 14 +- interface/web/login/lib/lang/tr.lng | 16 +- interface/web/login/lib/lang/tr_login_as.lng | 9 +- interface/web/mail/lib/lang/br.lng | 78 +-- .../mail/lib/lang/br_backup_stats_list.lng | 10 +- interface/web/mail/lib/lang/br_mail_alias.lng | 16 +- .../web/mail/lib/lang/br_mail_alias_list.lng | 8 +- .../web/mail/lib/lang/br_mail_aliasdomain.lng | 8 +- .../lib/lang/br_mail_aliasdomain_list.lng | 5 +- .../web/mail/lib/lang/br_mail_backup_list.lng | 20 +- .../web/mail/lib/lang/br_mail_blacklist.lng | 4 +- .../mail/lib/lang/br_mail_blacklist_list.lng | 6 +- .../mail/lib/lang/br_mail_content_filter.lng | 6 +- .../lib/lang/br_mail_content_filter_list.lng | 2 +- .../web/mail/lib/lang/br_mail_domain.lng | 26 +- .../mail/lib/lang/br_mail_domain_catchall.lng | 13 +- .../lib/lang/br_mail_domain_catchall_list.lng | 6 +- .../web/mail/lib/lang/br_mail_forward.lng | 16 +- .../mail/lib/lang/br_mail_forward_list.lng | 6 +- interface/web/mail/lib/lang/br_mail_get.lng | 22 +- .../web/mail/lib/lang/br_mail_get_list.lng | 2 +- .../web/mail/lib/lang/br_mail_mailinglist.lng | 26 +- .../lib/lang/br_mail_mailinglist_list.lng | 2 +- .../mail/lib/lang/br_mail_relay_recipient.lng | 4 +- .../lib/lang/br_mail_relay_recipient_list.lng | 4 +- .../web/mail/lib/lang/br_mail_spamfilter.lng | 18 +- .../mail/lib/lang/br_mail_spamfilter_list.lng | 8 +- .../web/mail/lib/lang/br_mail_transport.lng | 4 +- .../mail/lib/lang/br_mail_transport_list.lng | 4 +- interface/web/mail/lib/lang/br_mail_user.lng | 86 +-- .../web/mail/lib/lang/br_mail_user_filter.lng | 20 +- .../lib/lang/br_mail_user_filter_list.lng | 2 +- .../mail/lib/lang/br_mail_user_stats_list.lng | 2 +- .../web/mail/lib/lang/br_mail_whitelist.lng | 6 +- .../mail/lib/lang/br_mail_whitelist_list.lng | 6 +- .../mail/lib/lang/br_spamfilter_blacklist.lng | 6 +- .../lib/lang/br_spamfilter_blacklist_list.lng | 6 +- .../mail/lib/lang/br_spamfilter_config.lng | 30 +- .../lib/lang/br_spamfilter_config_list.lng | 4 +- .../mail/lib/lang/br_spamfilter_policy.lng | 82 +-- .../lib/lang/br_spamfilter_policy_list.lng | 10 +- .../web/mail/lib/lang/br_spamfilter_users.lng | 2 +- .../lib/lang/br_spamfilter_users_list.lng | 8 +- .../mail/lib/lang/br_spamfilter_whitelist.lng | 6 +- .../lib/lang/br_spamfilter_whitelist_list.lng | 6 +- .../lib/lang/br_user_quota_stats_list.lng | 4 +- .../web/mail/lib/lang/br_xmpp_domain.lng | 74 +-- .../web/mail/lib/lang/br_xmpp_domain_list.lng | 2 +- interface/web/mail/lib/lang/br_xmpp_user.lng | 12 +- .../web/mail/lib/lang/br_xmpp_user_list.lng | 2 +- interface/web/mail/lib/lang/tr.lng | 35 +- .../mail/lib/lang/tr_backup_stats_list.lng | 14 +- interface/web/mail/lib/lang/tr_mail_alias.lng | 12 +- .../web/mail/lib/lang/tr_mail_aliasdomain.lng | 12 +- .../lib/lang/tr_mail_aliasdomain_list.lng | 5 +- .../web/mail/lib/lang/tr_mail_backup_list.lng | 28 +- .../web/mail/lib/lang/tr_mail_blacklist.lng | 2 +- .../mail/lib/lang/tr_mail_blacklist_list.lng | 2 +- .../mail/lib/lang/tr_mail_content_filter.lng | 4 +- .../web/mail/lib/lang/tr_mail_domain.lng | 34 +- .../lib/lang/tr_mail_domain_admin_list.lng | 6 +- .../mail/lib/lang/tr_mail_domain_catchall.lng | 10 +- .../lib/lang/tr_mail_domain_catchall_list.lng | 4 +- .../web/mail/lib/lang/tr_mail_domain_list.lng | 6 +- .../web/mail/lib/lang/tr_mail_forward.lng | 12 +- interface/web/mail/lib/lang/tr_mail_get.lng | 8 +- .../web/mail/lib/lang/tr_mail_mailinglist.lng | 14 +- .../lib/lang/tr_mail_mailinglist_list.lng | 4 +- .../mail/lib/lang/tr_mail_relay_recipient.lng | 2 +- .../web/mail/lib/lang/tr_mail_spamfilter.lng | 6 +- .../mail/lib/lang/tr_mail_spamfilter_list.lng | 4 +- .../web/mail/lib/lang/tr_mail_transport.lng | 4 +- .../mail/lib/lang/tr_mail_transport_list.lng | 2 +- interface/web/mail/lib/lang/tr_mail_user.lng | 52 +- .../web/mail/lib/lang/tr_mail_user_filter.lng | 4 +- .../web/mail/lib/lang/tr_mail_user_list.lng | 6 +- .../mail/lib/lang/tr_mail_user_stats_list.lng | 2 +- .../web/mail/lib/lang/tr_mail_whitelist.lng | 2 +- .../mail/lib/lang/tr_mail_whitelist_list.lng | 2 +- .../lib/lang/tr_spamfilter_blacklist_list.lng | 2 +- .../mail/lib/lang/tr_spamfilter_config.lng | 12 +- .../lib/lang/tr_spamfilter_config_list.lng | 2 +- .../mail/lib/lang/tr_spamfilter_policy.lng | 71 +-- .../lib/lang/tr_spamfilter_policy_list.lng | 6 +- .../lib/lang/tr_spamfilter_users_list.lng | 4 +- .../lib/lang/tr_spamfilter_whitelist_list.lng | 2 +- .../lib/lang/tr_user_quota_stats_list.lng | 2 +- .../web/mail/lib/lang/tr_xmpp_domain.lng | 120 ++--- .../lib/lang/tr_xmpp_domain_admin_list.lng | 12 +- .../web/mail/lib/lang/tr_xmpp_domain_list.lng | 10 +- interface/web/mail/lib/lang/tr_xmpp_user.lng | 26 +- .../web/mail/lib/lang/tr_xmpp_user_list.lng | 12 +- interface/web/mailuser/lib/lang/br.lng | 10 +- interface/web/mailuser/lib/lang/br_index.lng | 10 +- .../lib/lang/br_mail_user_autoresponder.lng | 14 +- .../web/mailuser/lib/lang/br_mail_user_cc.lng | 10 +- .../mailuser/lib/lang/br_mail_user_filter.lng | 14 +- .../lib/lang/br_mail_user_filter_list.lng | 2 +- .../lib/lang/br_mail_user_password.lng | 10 +- .../lib/lang/br_mail_user_spamfilter.lng | 2 +- interface/web/mailuser/lib/lang/tr.lng | 2 +- interface/web/mailuser/lib/lang/tr_index.lng | 8 +- .../mailuser/lib/lang/tr_mail_user_filter.lng | 4 +- .../lib/lang/tr_mail_user_filter_list.lng | 2 +- .../lib/lang/tr_mail_user_password.lng | 8 +- .../lib/lang/tr_mail_user_spamfilter.lng | 4 +- interface/web/monitor/lib/lang/br.lng | 225 ++++---- .../web/monitor/lib/lang/br_datalog_list.lng | 4 +- .../lib/lang/br_dataloghistory_list.lng | 12 +- .../lib/lang/br_dataloghistory_undo.lng | 10 +- .../lib/lang/br_dataloghistory_view.lng | 46 +- .../web/monitor/lib/lang/br_syslog_list.lng | 6 +- interface/web/monitor/lib/lang/tr.lng | 69 ++- interface/web/sites/lib/lang/br.lng | 21 +- interface/web/sites/lib/lang/br_aps.lng | 76 +-- .../sites/lib/lang/br_aps_instances_list.lng | 2 +- .../sites/lib/lang/br_aps_packages_list.lng | 2 +- .../lib/lang/br_aps_update_packagelist.lng | 4 +- .../sites/lib/lang/br_backup_stats_list.lng | 10 +- interface/web/sites/lib/lang/br_cron.lng | 28 +- interface/web/sites/lib/lang/br_cron_list.lng | 10 +- interface/web/sites/lib/lang/br_database.lng | 54 +- .../sites/lib/lang/br_database_admin_list.lng | 6 +- .../web/sites/lib/lang/br_database_list.lng | 6 +- .../lib/lang/br_database_quota_stats_list.lng | 8 +- .../web/sites/lib/lang/br_database_user.lng | 20 +- .../lib/lang/br_database_user_admin_list.lng | 4 +- .../sites/lib/lang/br_database_user_list.lng | 4 +- .../lib/lang/br_ftp_sites_stats_list.lng | 4 +- interface/web/sites/lib/lang/br_ftp_user.lng | 39 +- .../web/sites/lib/lang/br_shell_user.lng | 46 +- .../web/sites/lib/lang/br_shell_user_list.lng | 2 +- .../lib/lang/br_user_quota_stats_list.lng | 6 +- .../web/sites/lib/lang/br_web_aliasdomain.lng | 134 ++--- .../lib/lang/br_web_aliasdomain_list.lng | 10 +- .../web/sites/lib/lang/br_web_backup_list.lng | 27 +- .../web/sites/lib/lang/br_web_childdomain.lng | 148 ++--- .../lib/lang/br_web_childdomain_list.lng | 14 +- .../web/sites/lib/lang/br_web_domain.lng | 179 +++---- .../web/sites/lib/lang/br_web_folder.lng | 2 +- .../web/sites/lib/lang/br_web_folder_user.lng | 10 +- .../lib/lang/br_web_folder_user_list.lng | 4 +- .../web/sites/lib/lang/br_web_subdomain.lng | 34 +- .../sites/lib/lang/br_web_vhost_domain.lng | 199 +++---- .../lang/br_web_vhost_domain_admin_list.lng | 4 +- .../lib/lang/br_web_vhost_domain_list.lng | 6 +- .../sites/lib/lang/br_web_vhost_subdomain.lng | 159 +++--- .../web/sites/lib/lang/br_webdav_user.lng | 18 +- interface/web/sites/lib/lang/tr.lng | 12 +- interface/web/sites/lib/lang/tr_aps.lng | 23 +- .../sites/lib/lang/tr_aps_instances_list.lng | 4 +- .../sites/lib/lang/tr_backup_stats_list.lng | 14 +- interface/web/sites/lib/lang/tr_cron.lng | 6 +- interface/web/sites/lib/lang/tr_database.lng | 30 +- .../sites/lib/lang/tr_database_admin_list.lng | 8 +- .../web/sites/lib/lang/tr_database_list.lng | 2 +- .../lib/lang/tr_database_quota_stats_list.lng | 14 +- .../web/sites/lib/lang/tr_database_user.lng | 12 +- .../lib/lang/tr_ftp_sites_stats_list.lng | 16 +- interface/web/sites/lib/lang/tr_ftp_user.lng | 7 +- .../web/sites/lib/lang/tr_shell_user.lng | 4 +- .../web/sites/lib/lang/tr_shell_user_list.lng | 6 +- .../lib/lang/tr_user_quota_stats_list.lng | 2 +- .../web/sites/lib/lang/tr_web_aliasdomain.lng | 66 +-- .../lib/lang/tr_web_aliasdomain_list.lng | 16 +- .../web/sites/lib/lang/tr_web_backup_list.lng | 15 +- .../web/sites/lib/lang/tr_web_childdomain.lng | 178 +++--- .../lib/lang/tr_web_childdomain_list.lng | 20 +- .../lib/lang/tr_web_directive_snippets.lng | 2 +- .../web/sites/lib/lang/tr_web_domain.lng | 80 +-- .../lib/lang/tr_web_domain_admin_list.lng | 2 +- .../web/sites/lib/lang/tr_web_domain_list.lng | 2 +- .../web/sites/lib/lang/tr_web_folder_user.lng | 4 +- .../lib/lang/tr_web_sites_stats_list.lng | 2 +- .../web/sites/lib/lang/tr_web_subdomain.lng | 38 +- .../sites/lib/lang/tr_web_subdomain_list.lng | 6 +- .../sites/lib/lang/tr_web_vhost_domain.lng | 123 ++--- .../lang/tr_web_vhost_domain_admin_list.lng | 24 +- .../lib/lang/tr_web_vhost_domain_list.lng | 14 +- .../sites/lib/lang/tr_web_vhost_subdomain.lng | 77 +-- .../lib/lang/tr_web_vhost_subdomain_list.lng | 6 +- .../web/sites/lib/lang/tr_webdav_user.lng | 4 +- .../lib/lang/br_strengthmeter.lng | 4 +- interface/web/tools/lib/lang/br.lng | 12 +- .../tools/lib/lang/br_import_ispconfig.lng | 26 +- .../web/tools/lib/lang/br_import_vpopmail.lng | 9 +- interface/web/tools/lib/lang/br_index.lng | 2 +- interface/web/tools/lib/lang/br_interface.lng | 6 +- interface/web/tools/lib/lang/br_resync.lng | 72 +-- .../web/tools/lib/lang/br_tpl_default.lng | 4 +- .../web/tools/lib/lang/br_usersettings.lng | 12 +- interface/web/tools/lib/lang/tr.lng | 10 +- .../tools/lib/lang/tr_import_ispconfig.lng | 37 +- .../web/tools/lib/lang/tr_import_vpopmail.lng | 11 +- interface/web/tools/lib/lang/tr_index.lng | 2 +- interface/web/tools/lib/lang/tr_interface.lng | 2 +- interface/web/tools/lib/lang/tr_resync.lng | 98 ++-- .../web/tools/lib/lang/tr_usersettings.lng | 6 +- interface/web/vm/lib/lang/br.lng | 6 +- .../web/vm/lib/lang/br_openvz_action.lng | 18 +- interface/web/vm/lib/lang/br_openvz_ip.lng | 6 +- .../web/vm/lib/lang/br_openvz_ip_list.lng | 2 +- .../web/vm/lib/lang/br_openvz_ostemplate.lng | 6 +- .../vm/lib/lang/br_openvz_ostemplate_list.lng | 6 +- .../web/vm/lib/lang/br_openvz_template.lng | 146 ++--- .../vm/lib/lang/br_openvz_template_list.lng | 4 +- interface/web/vm/lib/lang/br_openvz_vm.lng | 43 +- .../web/vm/lib/lang/br_openvz_vm_list.lng | 6 +- interface/web/vm/lib/lang/tr.lng | 6 +- .../web/vm/lib/lang/tr_openvz_action.lng | 15 +- interface/web/vm/lib/lang/tr_openvz_ip.lng | 2 +- .../vm/lib/lang/tr_openvz_ostemplate_list.lng | 2 +- .../web/vm/lib/lang/tr_openvz_template.lng | 22 +- interface/web/vm/lib/lang/tr_openvz_vm.lng | 20 +- .../web/vm/lib/lang/tr_openvz_vm_list.lng | 4 +- 389 files changed, 4516 insertions(+), 4450 deletions(-) create mode 100644 interface/web/admin/lib/lang/tr_login_as.lng diff --git a/interface/lib/lang/br.lng b/interface/lib/lang/br.lng index 7db654bd05..60a0dcf910 100644 --- a/interface/lib/lang/br.lng +++ b/interface/lib/lang/br.lng @@ -1,45 +1,48 @@ <?php -$wb['conf_format_dateshort'] = 'd/m/Y'; +$wb['conf_format_dateshort'] = 'd-m-Y'; +$wb['conf_format_dateshort_human_readable'] = 'dd-mm-yyyy'; $wb['conf_format_datelong'] = 'l dS de F Y'; $wb['conf_format_timeshort'] = 'H:i'; $wb['conf_format_timelong'] = 'H:i:s'; -$wb['conf_format_datetime'] = 'd/m/Y H:i'; +$wb['conf_format_datetime'] = 'd-m-Y H:i'; $wb['number_format_decimals'] = '4'; $wb['number_format_decimals_client'] = '2'; $wb['number_format_dec_point'] = '.'; $wb['number_format_thousands_sep'] = '.'; $wb['error_301'] = 'Módulo não permitido para o usuário atual.'; -$wb['error_302'] = 'Módulo é inválido.'; -$wb['error_1001'] = 'Usuário ou senha em branco!'; -$wb['error_1002'] = 'Usuário ou senha incorretos!'; -$wb['error_1003'] = 'Usuário inativo!'; -$wb['delete_confirmation'] = 'Tem certeza de que deseja remover este registro?'; -$wb['error_no_view_permission'] = 'Você não tem permissão para visualizar este registro ou o mesmo não existe!'; +$wb['error_302'] = 'Módulo inválido.'; +$wb['error_1001'] = 'Usuário e/ou senha está em branco!'; +$wb['error_1002'] = 'Usuário e/ou senha incorretos!'; +$wb['error_1003'] = 'Usuário desabilitado!'; +$wb['delete_confirmation'] = 'Você tem certeza que deseja remover o registro?'; +$wb['error_no_view_permission'] = 'Você não tem permissão para visualizar este registro ou o registro não existe!'; $wb['error_no_delete_permission'] = 'Você não tem permissão para remover este registro!'; $wb['page_txt'] = 'Página'; $wb['page_of_txt'] = 'de'; -$wb['page_next_txt'] = 'Próximo'; -$wb['page_back_txt'] = 'Voltar'; +$wb['page_and_txt'] = 'e'; +$wb['page_next_txt'] = 'Próxima'; +$wb['page_back_txt'] = 'Anterior'; $wb['delete_txt'] = 'Remover'; $wb['filter_txt'] = 'Filtrar'; $wb['add_new_record_txt'] = 'Adicionar novo registro'; $wb['btn_save_txt'] = 'Salvar'; -$wb['btn_cancel_txt'] = 'Voltar'; -$wb['toolsarea_head_txt'] = 'Extras'; -$wb['page_and_txt'] = 'e'; +$wb['btn_cancel_txt'] = 'Cancelar'; $wb['top_menu_system'] = 'Sistema'; $wb['top_menu_client'] = 'Clientes'; -$wb['top_menu_email'] = 'e-Mails'; +$wb['top_menu_email'] = 'e-Mail'; $wb['top_menu_monitor'] = 'Monitor'; $wb['top_menu_sites'] = 'Sites'; $wb['top_menu_dns'] = 'DNS'; -$wb['top_menu_tools'] = 'Extras'; +$wb['top_menu_tools'] = 'Ferramentas'; $wb['top_menu_help'] = 'Ajuda'; -$wb['top_menu_billing'] = 'Faturas'; +$wb['top_menu_billing'] = 'Faturamento'; +$wb['top_menu_mailuser'] = 'Contas de e-mail'; $wb['top_menu_domain'] = 'DomÃnios'; $wb['top_menu_dashboard'] = 'InÃcio'; -$wb['latest_news_txt'] = 'Últimas notÃcias'; $wb['top_menu_vm'] = 'VPS'; +$wb['toolsarea_head_txt'] = 'Ferramentas'; +$wb['latest_news_txt'] = 'Novidades'; +$wb['logout_txt'] = 'Sair'; $wb['daynamesmin_su'] = 'Do'; $wb['daynamesmin_mo'] = 'Se'; $wb['daynamesmin_tu'] = 'Te'; @@ -68,27 +71,24 @@ $wb['monthnamesshort_nov'] = 'Nov'; $wb['monthnamesshort_dec'] = 'Dez'; $wb['datepicker_nextText'] = 'Próximo'; $wb['datepicker_prevText'] = 'Anterior'; -$wb['logout_txt'] = 'Sair'; -$wb['conf_format_dateshort_human_readable'] = 'dd-mm-aaaa'; -$wb['submit_confirmation'] = 'Você tem certeza que gostaria de executar esta ação?'; -$wb['top_menu_mailuser'] = 'e-Mails'; +$wb['submit_confirmation'] = 'Você tem certeza que deseja realizar esta ação?'; $wb['globalsearch_resultslimit_of_txt'] = 'de'; $wb['globalsearch_resultslimit_results_txt'] = 'resultados'; $wb['globalsearch_noresults_text_txt'] = 'Sem resultados.'; $wb['globalsearch_noresults_limit_txt'] = '0 resultados'; $wb['globalsearch_searchfield_watermark_txt'] = 'Pesquisar'; $wb['globalsearch_suggestions_text_txt'] = 'Sugestões'; -$wb['global_tabchange_warning_txt'] = 'As alterações efetuadas nesta aba terão efeito após você pressionar OK. Se cancelar, as alterações serão descartadas.'; -$wb['global_tabchange_discard_txt'] = 'Você não salvou as alterações nesta aba. As alterações serão descartadas se continuar.'; -$wb['datalog_changes_txt'] = 'As seguintes alterações ainda não foram realizadas em todos os servidores.'; -$wb['datalog_changes_end_txt'] = 'Gravar as atualizações pode demorar alguns minutos. Por favor, seja paciente.'; +$wb['global_tabchange_warning_txt'] = 'Para alterar dados nesta aba clique OK. Cancelar descarta todas as alterações.'; +$wb['global_tabchange_discard_txt'] = 'Você não salvou as alterações nesta aba. Todas as alterações serão descartadas caso prossiga.'; +$wb['datalog_changes_txt'] = 'As alterações ainda não propagaram em todos os servidores:'; +$wb['datalog_changes_end_txt'] = 'Gravar alterações pode levar alguns minutos. Por favor, seja paciente.'; $wb['datalog_status_i_web_database'] = 'Adicionar novo banco de dados'; $wb['datalog_status_u_web_database'] = 'Atualizar banco de dados'; $wb['datalog_status_d_web_database'] = 'Remover banco de dados'; -$wb['datalog_status_i_web_database_user'] = 'Adicionar usuário do banco de dados'; -$wb['datalog_status_u_web_database_user'] = 'Atualizar usuário do banco de dados'; -$wb['datalog_status_d_web_database_user'] = 'Remover usuário do banco de dados'; -$wb['datalog_status_i_web_domain'] = 'Adicionar novo site'; +$wb['datalog_status_i_web_database_user'] = 'Adicionar novo usuário de banco de dados'; +$wb['datalog_status_u_web_database_user'] = 'Atualizar usuário de banco de dados'; +$wb['datalog_status_d_web_database_user'] = 'Remover usuário de banco de dados'; +$wb['datalog_status_i_web_domain'] = 'Adicionar site'; $wb['datalog_status_u_web_domain'] = 'Atualizar site'; $wb['datalog_status_d_web_domain'] = 'Remover site'; $wb['datalog_status_i_ftp_user'] = 'Adicionar usuário ftp'; @@ -100,9 +100,12 @@ $wb['datalog_status_d_mail_domain'] = 'Remover domÃnio de e-mail'; $wb['datalog_status_i_mail_user'] = 'Adicionar conta de e-mail'; $wb['datalog_status_u_mail_user'] = 'Atualizar conta de e-mail'; $wb['datalog_status_d_mail_user'] = 'Remover conta de e-mail'; -$wb['datalog_status_i_mail_forwarding'] = 'Adicionar encaminhamento de e-mail'; -$wb['datalog_status_u_mail_forwarding'] = 'Atualizar encaminhamento de e-mail'; -$wb['datalog_status_d_mail_forwarding'] = 'Remover encaminhamento de e-mail'; +$wb['datalog_status_i_spamfilter_users'] = 'Adicionar filtros anti-spam'; +$wb['datalog_status_u_spamfilter_users'] = 'Atualizar filtros anti-spam'; +$wb['datalog_status_d_spamfilter_users'] = 'Remover filtros anti-spam'; +$wb['datalog_status_i_mail_forwarding'] = 'Adicionar endereço de e-mail'; +$wb['datalog_status_u_mail_forwarding'] = 'Atualizar endereço de e-mail'; +$wb['datalog_status_d_mail_forwarding'] = 'Remover endereço de e-mail'; $wb['datalog_status_i_dns_rr'] = 'Adicionar registro dns'; $wb['datalog_status_u_dns_rr'] = 'Atualizar registro dns'; $wb['datalog_status_d_dns_rr'] = 'Remover registro dns'; @@ -112,50 +115,47 @@ $wb['datalog_status_d_dns_soa'] = 'Remover zona dns'; $wb['datalog_status_i_cron'] = 'Adicionar tarefa no cron'; $wb['datalog_status_u_cron'] = 'Atualizar tarefa no cron'; $wb['datalog_status_d_cron'] = 'Remover tarefa no cron'; -$wb['datalog_status_i_mail_get'] = 'Adicionar conta de busca de e-mails'; -$wb['datalog_status_u_mail_get'] = 'Atualizar conta de busca de e-mails'; -$wb['datalog_status_d_mail_get'] = 'Remover conta de busca de e-mails'; +$wb['datalog_status_i_mail_get'] = 'Adicionar conta de busca de e-mail'; +$wb['datalog_status_u_mail_get'] = 'Atualizar conta de busca de e-mail'; +$wb['datalog_status_d_mail_get'] = 'Remover conta de busca de e-mail'; $wb['datalog_status_i_mail_mailinglist'] = 'Adicionar lista de e-mails'; $wb['datalog_status_u_mail_mailinglist'] = 'Atualizar lista de e-mails'; $wb['datalog_status_d_mail_mailinglist'] = 'Remover lista de e-mails'; -$wb['datalog_status_i_shell_user'] = 'Adicionar usuário shell'; -$wb['datalog_status_u_shell_user'] = 'Atualizar usuário shell'; -$wb['datalog_status_d_shell_user'] = 'Remover usuário shell'; +$wb['datalog_status_i_shell_user'] = 'Adicionar usuário do shell'; +$wb['datalog_status_u_shell_user'] = 'Atualizar usuário do shell'; +$wb['datalog_status_d_shell_user'] = 'Remover usuário do shell'; $wb['datalog_status_i_web_folder'] = 'Adicionar pasta protegida'; $wb['datalog_status_u_web_folder'] = 'Atualizar pasta protegida'; $wb['datalog_status_d_web_folder'] = 'Remover pasta protegida'; $wb['datalog_status_i_web_folder_user'] = 'Adicionar usuário de pasta protegida'; $wb['datalog_status_u_web_folder_user'] = 'Atualizar usuário de pasta protegida'; $wb['datalog_status_d_web_folder_user'] = 'Remover usuário de pasta protegida'; -$wb['datalog_status_i_spamfilter_users'] = 'Adicionar configurações de filtro anti-spam'; -$wb['datalog_status_u_spamfilter_users'] = 'Atualizar configurações de filtro anti-spam'; -$wb['datalog_status_d_spamfilter_users'] = 'Remover configurações de filtro anti-spam'; +$wb['datalog_status_i_xmpp_domain'] = 'Adicionar domÃnio xmpp'; +$wb['datalog_status_u_xmpp_domain'] = 'Atualizar domÃnio xmpp'; +$wb['datalog_status_d_xmpp_domain'] = 'Remover domÃnio xmpp'; +$wb['datalog_status_i_xmpp_user'] = 'Adicionar usuário xmpp'; +$wb['datalog_status_u_xmpp_user'] = 'Atualizar usuário xmpp'; +$wb['datalog_status_d_xmpp_user'] = 'Remover usuário xmpp'; +$wb['err_csrf_attempt_blocked'] = 'Tentativa de CSRF bloqueada.'; $wb['login_as_txt'] = 'Acessar como'; $wb['no_domain_perm'] = 'Você não tem permissão para este domÃnio.'; $wb['no_destination_perm'] = 'Você não tem permissão para este destino.'; -$wb['client_you_are_locked'] = 'Você não tem permissão para alterar quaisquer configurações.'; +$wb['client_you_are_locked'] = 'Você não tem permissão para alterar nenhuma configuração.'; $wb['gender_m_txt'] = 'Sr.'; $wb['gender_f_txt'] = 'Sra.'; $wb['client_cannot_be_deleted_because_of_billing_module_txt'] = 'Este cliente possui registros no módulo de faturamento, portanto não pode ser removido.'; $wb['yes_txt'] = 'Sim'; $wb['no_txt'] = 'Não'; +$wb['None'] = 'Nenhum'; $wb['strength_1'] = 'Fraca'; $wb['strength_2'] = 'Razoável'; $wb['strength_3'] = 'Boa'; $wb['strength_4'] = 'Forte'; $wb['strength_5'] = 'Muito Forte'; -$wb['weak_password_txt'] = 'A senha escolhida não corresponde à s diretrizes de segurança. São necessários no mÃnimo {chars} caracteres e dificuldade {strength}.'; -$wb['weak_password_length_txt'] = 'A senha escolhida não corresponde à s diretrizes de segurança. São necessários no mÃnimo {chars} caracteres.'; -$wb['security_check1_txt'] = 'Verifique se há permissão de segurança:'; -$wb['security_check2_txt'] = 'falha'; -$wb['err_csrf_attempt_blocked'] = 'CSRF temporariamente bloqueado.'; +$wb['weak_password_txt'] = 'A senha configurada não obedece as diretivas de segurança. A senha deve possuir ao menos {chars} caracteres e ao menos um caractere maiúsculoe um caractere especial e dificuldade "{strength}".'; +$wb['weak_password_length_txt'] = 'A senha configurada não obedece as diretivas de segurança. A senha deve possuir ao menos {chars} de comprimento.'; +$wb['security_check1_txt'] = 'Verifique as permissões de segurança:'; +$wb['security_check2_txt'] = 'falhou.'; $wb['select_directive_snippet_txt'] = 'Diretiva de trechos de código'; $wb['select_master_directive_snippet_txt'] = 'Diretiva mestre de trechos de código'; -$wb['None'] = 'Nenhum'; -$wb['datalog_status_i_xmpp_domain'] = 'Adicionar domÃnio XMPP'; -$wb['datalog_status_u_xmpp_domain'] = 'Atualizar domÃnio XMPP'; -$wb['datalog_status_d_xmpp_domain'] = 'Remover domÃnio XMPP'; -$wb['datalog_status_i_xmpp_user'] = 'Adicionar usuário XMPP'; -$wb['datalog_status_u_xmpp_user'] = 'Atualizar usuário XMPP'; -$wb['datalog_status_d_xmpp_user'] = 'Remover usuário XMPP'; ?> diff --git a/interface/lib/lang/tr.lng b/interface/lib/lang/tr.lng index 115bc890bb..cf4491ad5d 100644 --- a/interface/lib/lang/tr.lng +++ b/interface/lib/lang/tr.lng @@ -36,10 +36,10 @@ $wb['top_menu_dns'] = 'DNS'; $wb['top_menu_tools'] = 'Araçlar'; $wb['top_menu_help'] = 'Yardım'; $wb['top_menu_billing'] = 'Faturalama'; -$wb['top_menu_mailuser'] = 'Posta Kullanıcısı'; +$wb['top_menu_mailuser'] = 'E-posta Kullanıcısı'; $wb['top_menu_domain'] = 'Alan Adları'; $wb['top_menu_dashboard'] = 'Açılış'; -$wb['top_menu_vm'] = 'SSunucu'; +$wb['top_menu_vm'] = 'sSunucu'; $wb['toolsarea_head_txt'] = 'Araçlar'; $wb['latest_news_txt'] = 'Haberler'; $wb['logout_txt'] = 'Oturumu Kapat'; @@ -74,65 +74,72 @@ $wb['datepicker_prevText'] = 'Önceki'; $wb['submit_confirmation'] = 'Bu iÅŸlemi yapmak istiyor musunuz?'; $wb['globalsearch_resultslimit_of_txt'] = '/'; $wb['globalsearch_resultslimit_results_txt'] = 'sonuç'; -$wb['globalsearch_noresults_text_txt'] = 'Sonuç yok.'; +$wb['globalsearch_noresults_text_txt'] = 'Uygun bir sonuç bulunamadı.'; $wb['globalsearch_noresults_limit_txt'] = '0 sonuç'; $wb['globalsearch_searchfield_watermark_txt'] = 'Arama'; $wb['globalsearch_suggestions_text_txt'] = 'Öneriler'; -$wb['global_tabchange_warning_txt'] = 'Bu sekmedeki deÄŸiÅŸiklikler Tamam düğmesine tıklandığında kaydedilir. Ä°ptal düğmesine tıklandığında yoksayılır.'; -$wb['global_tabchange_discard_txt'] = 'Bu sekmede kaydedilmemiÅŸ deÄŸiÅŸiklikler var. Devam ederseniz deÄŸiÅŸiklikler yoksayılacak.'; +$wb['global_tabchange_warning_txt'] = 'Bu sekmedeki deÄŸiÅŸiklikler Tamam düğmesine tıklandığında kaydedilir. Ä°ptal düğmesine tıklandığında yok sayılır.'; +$wb['global_tabchange_discard_txt'] = 'Bu sekmede kaydedilmemiÅŸ deÄŸiÅŸiklikler var. Devam ederseniz deÄŸiÅŸiklikler yok sayılacak.'; + $wb['datalog_changes_txt'] = 'Åžu deÄŸiÅŸiklikler henüz tüm sunuculara dağıtılmadı:'; $wb['datalog_changes_end_txt'] = 'Güncellemelerin kaydedilmesi bir dakika kadar sürecek. Lütfen bekleyin.'; -$wb['datalog_status_i_web_database'] = 'Veritabanı ekle'; -$wb['datalog_status_u_web_database'] = 'Veritabanını güncelle'; -$wb['datalog_status_d_web_database'] = 'Veritabanını sil'; -$wb['datalog_status_i_web_database_user'] = 'Veritabanı kullanıcısı ekle'; -$wb['datalog_status_u_web_database_user'] = 'Veritabanı kullanıcısını güncelle'; -$wb['datalog_status_d_web_database_user'] = 'Veritabanı kullanıcısını sil'; -$wb['datalog_status_i_web_domain'] = 'Web sitesi ekle'; -$wb['datalog_status_u_web_domain'] = 'Web sitesi ayarlarını güncelle'; -$wb['datalog_status_d_web_domain'] = 'Web sitesini sil'; -$wb['datalog_status_i_ftp_user'] = 'FTP kullanıcısı ekle'; -$wb['datalog_status_u_ftp_user'] = 'FTP kullanıcısını güncelle'; -$wb['datalog_status_d_ftp_user'] = 'FTP kullanıcısını sil'; -$wb['datalog_status_i_mail_domain'] = 'E-posta alan adı ekle'; -$wb['datalog_status_u_mail_domain'] = 'E-posta alan adını güncelle'; -$wb['datalog_status_d_mail_domain'] = 'E-posta alan adını sil'; -$wb['datalog_status_i_mail_user'] = 'E-posta kullanıcısı ekle'; -$wb['datalog_status_u_mail_user'] = 'E-posta kullanıcısını güncelle'; -$wb['datalog_status_d_mail_user'] = 'E-posta kullanıcısını sil'; -$wb['datalog_status_i_spamfilter_users'] = 'Spam süzgeci ayarları ekle'; -$wb['datalog_status_u_spamfilter_users'] = 'Spam süzgeci ayarlarını güncelle'; -$wb['datalog_status_d_spamfilter_users'] = 'Spam süzgeci ayarlarını sil'; -$wb['datalog_status_i_mail_forwarding'] = 'E-posta adresi ekle'; -$wb['datalog_status_u_mail_forwarding'] = 'E-posta adresini güncelle'; -$wb['datalog_status_d_mail_forwarding'] = 'E-posta adresini sil'; -$wb['datalog_status_i_dns_rr'] = 'DNS kaydı ekle'; -$wb['datalog_status_u_dns_rr'] = 'DNS kaydını güncelle'; -$wb['datalog_status_d_dns_rr'] = 'DNS kaydını sil'; -$wb['datalog_status_i_dns_soa'] = 'DNS bölgesi ekle'; -$wb['datalog_status_u_dns_soa'] = 'DNS bölgesini güncelle'; -$wb['datalog_status_d_dns_soa'] = 'DNS bölgesini sil'; -$wb['datalog_status_i_cron'] = 'Zamanlanmış görev ekle'; -$wb['datalog_status_u_cron'] = 'Zamanlanmış görevi güncelle'; -$wb['datalog_status_d_cron'] = 'Zamanlanmış görevi sil'; -$wb['datalog_status_i_mail_get'] = 'E-posta alma hesabı ekle'; -$wb['datalog_status_u_mail_get'] = 'E-posta alma hesabını güncelle'; -$wb['datalog_status_d_mail_get'] = 'E-posta alma hesabını sil'; -$wb['datalog_status_i_mail_mailinglist'] = 'E-posta listesi ekle'; -$wb['datalog_status_u_mail_mailinglist'] = 'E-posta listesini güncelle'; -$wb['datalog_status_d_mail_mailinglist'] = 'E-posta listesini sil'; -$wb['datalog_status_i_shell_user'] = 'Kabuk kullanıcısı ekle'; -$wb['datalog_status_u_shell_user'] = 'Kabuk kullanıcısını güncelle'; -$wb['datalog_status_d_shell_user'] = 'Kabuk kullanıcısını sil'; -$wb['datalog_status_i_web_folder'] = 'Klasör koruması ekle'; -$wb['datalog_status_u_web_folder'] = 'Klasör korumasını güncelle'; -$wb['datalog_status_d_web_folder'] = 'Klasör korumasını sil'; -$wb['datalog_status_i_web_folder_user'] = 'Klasör koruma kullanıcısı ekle'; -$wb['datalog_status_u_web_folder_user'] = 'Klasör koruma kullanıcısını güncelle'; -$wb['datalog_status_d_web_folder_user'] = 'Klasör koruma kullanıcısını sil'; +$wb['datalog_status_i_web_database'] = 'Veritabanı Ekle'; +$wb['datalog_status_u_web_database'] = 'Veritabanını Güncelle'; +$wb['datalog_status_d_web_database'] = 'Veritabanını Sil'; +$wb['datalog_status_i_web_database_user'] = 'Veritabanı Kullanıcısı Ekle'; +$wb['datalog_status_u_web_database_user'] = 'Veritabanı Kullanıcısını Güncelle'; +$wb['datalog_status_d_web_database_user'] = 'Veritabanı Kullanıcısını Sil'; +$wb['datalog_status_i_web_domain'] = 'Web Sitesi Ekle'; +$wb['datalog_status_u_web_domain'] = 'Web Sitesi Ayarlarını Güncelle'; +$wb['datalog_status_d_web_domain'] = 'Web Sitesini Sil'; +$wb['datalog_status_i_ftp_user'] = 'FTP Kullanıcısı Ekle'; +$wb['datalog_status_u_ftp_user'] = 'FTP Kullanıcısını Güncelle'; +$wb['datalog_status_d_ftp_user'] = 'FTP Kullanıcısını Sil'; +$wb['datalog_status_i_mail_domain'] = 'E-posta Etki Alanı Ekle'; +$wb['datalog_status_u_mail_domain'] = 'E-posta Etki Alanını Güncelle'; +$wb['datalog_status_d_mail_domain'] = 'E-posta Etki Alanını Sil'; +$wb['datalog_status_i_mail_user'] = 'E-posta Kullanıcısı Ekle'; +$wb['datalog_status_u_mail_user'] = 'E-posta Kullanıcısını Güncelle'; +$wb['datalog_status_d_mail_user'] = 'E-posta Kullanıcısını Sil'; +$wb['datalog_status_i_spamfilter_users'] = 'Spam Süzgeci Ayarları Ekle'; +$wb['datalog_status_u_spamfilter_users'] = 'Spam Süzgeci Ayarlarını Güncelle'; +$wb['datalog_status_d_spamfilter_users'] = 'Spam Süzgeci Ayarlarını Sil'; +$wb['datalog_status_i_mail_forwarding'] = 'E-posta Adresi Ekle'; +$wb['datalog_status_u_mail_forwarding'] = 'E-posta Adresini Güncelle'; +$wb['datalog_status_d_mail_forwarding'] = 'E-posta Adresini Sil'; +$wb['datalog_status_i_dns_rr'] = 'DNS Kaydı Ekle'; +$wb['datalog_status_u_dns_rr'] = 'DNS Kaydını Güncelle'; +$wb['datalog_status_d_dns_rr'] = 'DNS Kaydını Sil'; +$wb['datalog_status_i_dns_soa'] = 'DNS Bölgesi Ekle'; +$wb['datalog_status_u_dns_soa'] = 'DNS Bölgesini Güncelle'; +$wb['datalog_status_d_dns_soa'] = 'DNS Bölgesini Sil'; +$wb['datalog_status_i_cron'] = 'Zamanlanmış Görev Ekle'; +$wb['datalog_status_u_cron'] = 'Zamanlanmış Görevi Güncelle'; +$wb['datalog_status_d_cron'] = 'Zamanlanmış Görevi Sil'; +$wb['datalog_status_i_mail_get'] = 'E-posta Alma Hesabı Ekle'; +$wb['datalog_status_u_mail_get'] = 'E-posta Alma Hesabını Güncelle'; +$wb['datalog_status_d_mail_get'] = 'E-posta Alma Hesabını Sil'; +$wb['datalog_status_i_mail_mailinglist'] = 'E-posta Listesi Ekle'; +$wb['datalog_status_u_mail_mailinglist'] = 'E-posta Listesini Güncelle'; +$wb['datalog_status_d_mail_mailinglist'] = 'E-posta Listesini Sil'; +$wb['datalog_status_i_shell_user'] = 'Kabuk Kullanıcısı Ekle'; +$wb['datalog_status_u_shell_user'] = 'Kabuk Kullanıcısını Güncelle'; +$wb['datalog_status_d_shell_user'] = 'Kabuk Kullanıcısını Sil'; +$wb['datalog_status_i_web_folder'] = 'Klasör Koruması Ekle'; +$wb['datalog_status_u_web_folder'] = 'Klasör Korumasını Güncelle'; +$wb['datalog_status_d_web_folder'] = 'Klasör Korumasını Sil'; +$wb['datalog_status_i_web_folder_user'] = 'Klasör Koruma Kullanıcısı Ekle'; +$wb['datalog_status_u_web_folder_user'] = 'Klasör Koruma Kullanıcısını Güncelle'; +$wb['datalog_status_d_web_folder_user'] = 'Klasör Koruma Kullanıcısını Sil'; +$wb['datalog_status_i_xmpp_domain'] = 'XMPP etki alanı ekle'; +$wb['datalog_status_u_xmpp_domain'] = 'XMPP etki alanını düzenle'; +$wb['datalog_status_d_xmpp_domain'] = 'XMPP etki alanını sil'; +$wb['datalog_status_i_xmpp_user'] = 'XMPP kullanıcısı ekle'; +$wb['datalog_status_u_xmpp_user'] = 'XMPP kullanıcısını güncelle'; +$wb['datalog_status_d_xmpp_user'] = 'XMPP kullanıcısını sil'; $wb['err_csrf_attempt_blocked'] = 'CSRF giriÅŸimi engellendi.'; $wb['login_as_txt'] = 'Müşteri adıyla oturum aç'; -$wb['no_domain_perm'] = 'Bu alan adı için izniniz yok.'; +$wb['no_domain_perm'] = 'Bu etki alanı için izniniz yok.'; $wb['no_destination_perm'] = 'Bu hedef için izniniz yok.'; $wb['client_you_are_locked'] = 'Herhangi bir ayarı deÄŸiÅŸtirme izniniz yok.'; $wb['gender_m_txt'] = 'Bay'; @@ -146,16 +153,10 @@ $wb['strength_2'] = 'Yeterli'; $wb['strength_3'] = 'Ä°yi'; $wb['strength_4'] = 'Güçlü'; $wb['strength_5'] = 'Çok Güçlü'; -$wb['weak_password_txt'] = 'Yazdığınız parola güvenlik ilkesine uygun deÄŸil. Parola en az {chars} karakter uzunluÄŸunda ve \\"{strength}\\" güçlüğünde olmalı.'; +$wb['weak_password_txt'] = 'Yazdığınız parola güvenlik ilkesine uygun deÄŸil. Parola en az {chars} karakter uzunluÄŸunda ve "{strength}" güçlüğünde olmalı.'; $wb['weak_password_length_txt'] = 'Yazdığınız parola güvenlik ilkesine uygun deÄŸil. Parola en az {chars} karakter uzunluÄŸunda olmalı.'; $wb['security_check1_txt'] = 'Güvenlik iznini denetle:'; $wb['security_check2_txt'] = 'baÅŸarısız.'; -$wb['select_directive_snippet_txt'] = 'Directive Snippets'; -$wb['select_master_directive_snippet_txt'] = 'Master Directive Snippets'; -$wb['datalog_status_i_xmpp_domain'] = 'Create XMPP domain'; -$wb['datalog_status_u_xmpp_domain'] = 'Update XMPP domain'; -$wb['datalog_status_d_xmpp_domain'] = 'Delete XMPP domain'; -$wb['datalog_status_i_xmpp_user'] = 'Create XMPP user'; -$wb['datalog_status_u_xmpp_user'] = 'Update XMPP user'; -$wb['datalog_status_d_xmpp_user'] = 'Delete XMPP user'; +$wb['select_directive_snippet_txt'] = 'Yönerge Kod Parçaları'; +$wb['select_master_directive_snippet_txt'] = 'Ana Komut Parçaları'; ?> diff --git a/interface/web/admin/lib/lang/br.lng b/interface/web/admin/lib/lang/br.lng index c4df3fe58b..b558a1510e 100644 --- a/interface/web/admin/lib/lang/br.lng +++ b/interface/web/admin/lib/lang/br.lng @@ -1,8 +1,8 @@ <?php -$wb['1001'] = 'Usuário ou senha está em branco.'; -$wb['1002'] = 'Usuário ou senha errados.'; +$wb['error_1001'] = 'Usuário ou senha está em branco.'; +$wb['error_1002'] = 'Usuário ou senha é inválido.'; $wb['Groups'] = 'Grupos'; -$wb['groups_description'] = 'Edição dos grupos de usuários do sistema'; +$wb['groups_description'] = 'Editar grupos e usuários do sistema.'; $wb['Servers'] = 'Servidores'; $wb['Config'] = 'Configuração'; $wb['Add user'] = 'Adicionar usuário'; @@ -11,30 +11,36 @@ $wb['Add group'] = 'Adicionar grupo'; $wb['Edit group'] = 'Editar grupo'; $wb['Edit server'] = 'Editar servidor'; $wb['Sync. Now'] = 'Sincronizar agora'; -$wb['DB Sync.'] = 'Sincronizar banco de dados'; -$wb['User Management'] = 'Gerenciamento de usuários'; -$wb['CP Users'] = 'Usuários do painel'; +$wb['DB Sync.'] = 'Sincronização do BD.'; +$wb['User Management'] = 'Gerência de usuário'; +$wb['CP Users'] = 'Usuários ISPConfig'; $wb['Remote Users'] = 'Usuários remotos'; $wb['System'] = 'Sistema'; $wb['Server Services'] = 'Serviços do servidor'; $wb['Services'] = 'Serviços'; $wb['Server Config'] = 'Configuração do servidor'; -$wb['Mail'] = 'E-mails'; +$wb['Server'] = 'Servidor'; +$wb['Mail'] = 'e-Mail'; $wb['Getmail'] = 'Getmail'; -$wb['Web'] = 'Sites'; +$wb['Web'] = 'Web'; $wb['FastCGI'] = 'FastCGI'; $wb['Jailkit'] = 'Jailkit'; $wb['Rescue'] = 'Manutenção'; -$wb['Server IP addresses'] = 'Endereço IP do servidor'; +$wb['Server IP addresses'] = 'Endereços IP do servidor'; +$wb['Server IPv4 mapping'] = 'Mapeamento IPv4 do servidor'; $wb['Additional PHP Versions'] = 'Versões adicionais do php'; +$wb['Directive Snippets'] = 'Diretiva de trechos de código'; $wb['Firewall'] = 'Firewall'; $wb['Interface'] = 'Interface'; $wb['Interface Config'] = 'Configuração principal'; +$wb['Sites'] = 'Sites'; +$wb['DNS'] = 'DNS'; $wb['Domains'] = 'DomÃnios'; $wb['Misc'] = 'Diversos'; -$wb['Software'] = 'Software'; +$wb['Software'] = 'APPs e complementos'; $wb['Repositories'] = 'Repositórios'; $wb['Packages'] = 'Pacotes'; +$wb['Updates'] = 'Atualizações'; $wb['Language Editor'] = 'Editor de idiomas'; $wb['Languages'] = 'Idiomas'; $wb['New Language'] = 'Novo idioma'; @@ -42,11 +48,6 @@ $wb['Merge'] = 'Mesclar'; $wb['Export'] = 'Exportar'; $wb['Import'] = 'Importar'; $wb['Remote Actions'] = 'Ações remotas'; -$wb['Do OS-Update'] = 'Atualização do SO'; -$wb['Do ISPConfig-Update'] = 'Atualização do ISPConfig'; -$wb['Directive Snippets'] = 'Diretivas de trechos de código'; -$wb['Sites'] = 'Sites'; -$wb['DNS'] = 'DNS'; -$wb['Server'] = 'Servidor'; -$wb['Updates'] = 'Atualizações'; +$wb['Do OS-Update'] = 'Atualizar sistema operacional'; +$wb['Do ISPConfig-Update'] = 'Atualizar o ISPConfig'; ?> diff --git a/interface/web/admin/lib/lang/br_directive_snippets.lng b/interface/web/admin/lib/lang/br_directive_snippets.lng index ae56153844..43c46c69b9 100644 --- a/interface/web/admin/lib/lang/br_directive_snippets.lng +++ b/interface/web/admin/lib/lang/br_directive_snippets.lng @@ -2,11 +2,11 @@ $wb['Directive Snippets'] = 'Diretiva de trechos de código'; $wb['name_txt'] = 'Nome da diretiva'; $wb['type_txt'] = 'Tipo'; -$wb['snippet_txt'] = 'Diretiva'; +$wb['snippet_txt'] = 'Trecho de código'; $wb['active_txt'] = 'Ativo'; -$wb['directive_snippets_name_empty'] = 'Por favor, insira um nome para a diretiva'; -$wb['directive_snippets_name_error_unique'] = 'Já existe uma diretiva de trechos de código com este nome.'; +$wb['directive_snippets_name_empty'] = 'Por favor, insira um nome para a diretiva.'; +$wb['directive_snippets_name_error_unique'] = 'Já existe uma diretiva com este nome.'; $wb['variables_txt'] = 'Variáveis'; -$wb['customer_viewable_txt'] = 'Visualizada pelo cliente'; -$wb['required_php_snippets_txt'] = 'Diretiva obrigatória para PHP'; +$wb['customer_viewable_txt'] = 'Visualização personalizada'; +$wb['required_php_snippets_txt'] = 'Trecho de código exige php'; ?> diff --git a/interface/web/admin/lib/lang/br_directive_snippets_list.lng b/interface/web/admin/lib/lang/br_directive_snippets_list.lng index 8e08580ad2..70af844dd6 100644 --- a/interface/web/admin/lib/lang/br_directive_snippets_list.lng +++ b/interface/web/admin/lib/lang/br_directive_snippets_list.lng @@ -1,8 +1,8 @@ <?php -$wb['list_head_txt'] = 'Diretivas de trechos de código'; +$wb['list_head_txt'] = 'Diretiva de trechos de código'; $wb['active_txt'] = 'Ativo'; $wb['name_txt'] = 'Nome da diretiva'; $wb['type_txt'] = 'Tipo'; -$wb['add_new_record_txt'] = 'Adicionar nova diretiva'; +$wb['add_new_record_txt'] = 'Adicionar diretiva'; $wb['customer_viewable_txt'] = 'VisÃvel para o cliente'; ?> diff --git a/interface/web/admin/lib/lang/br_firewall.lng b/interface/web/admin/lib/lang/br_firewall.lng index 0bd3cdc74f..da0936b007 100644 --- a/interface/web/admin/lib/lang/br_firewall.lng +++ b/interface/web/admin/lib/lang/br_firewall.lng @@ -1,11 +1,11 @@ <?php $wb['server_id_txt'] = 'Servidor'; -$wb['tcp_port_txt'] = 'Portas TCP abertas'; -$wb['udp_port_txt'] = 'Portas UDP abertas'; +$wb['tcp_port_txt'] = 'Portas tcp abertas'; +$wb['udp_port_txt'] = 'Portas udp abertas'; $wb['tcp_port_help_txt'] = 'Separado por vÃrgula'; $wb['udp_port_help_txt'] = 'Separado por vÃrgula'; $wb['active_txt'] = 'Ativo'; -$wb['firewall_error_unique'] = 'Já existe uma regra de firewall para este servidor!'; -$wb['tcp_ports_error_regex'] = 'Caractere não permitido para definição de porta tcp. São permitidos somente números, \':\' e \',\'.'; -$wb['udp_ports_error_regex'] = 'Caractere não permitido para definição de porta udp. São permitidos somente números, \':\' e \',\'.'; +$wb['firewall_error_unique'] = 'Já existe uma regra de firewall idêntica para este servidor.'; +$wb['tcp_ports_error_regex'] = 'Caractere não permitido para configuração de porta tcp: Caracteres permitidos são números, ":" e ",".'; +$wb['udp_ports_error_regex'] = 'Caractere não permitido para configuração de porta udp: Caracteres permitidos são números, ":" e ",".'; ?> diff --git a/interface/web/admin/lib/lang/br_firewall_list.lng b/interface/web/admin/lib/lang/br_firewall_list.lng index 8ff52ee241..94ef3aab7d 100644 --- a/interface/web/admin/lib/lang/br_firewall_list.lng +++ b/interface/web/admin/lib/lang/br_firewall_list.lng @@ -4,5 +4,5 @@ $wb['active_txt'] = 'Ativo'; $wb['server_id_txt'] = 'Servidor'; $wb['tcp_port_txt'] = 'Portas tcp abertas'; $wb['udp_port_txt'] = 'Portas udp abertas'; -$wb['add_new_record_txt'] = 'Adicionar regra de firewall'; +$wb['add_new_record_txt'] = 'Adicionar nova regra'; ?> diff --git a/interface/web/admin/lib/lang/br_groups.lng b/interface/web/admin/lib/lang/br_groups.lng index 735bd864a9..22a1a5c63d 100644 --- a/interface/web/admin/lib/lang/br_groups.lng +++ b/interface/web/admin/lib/lang/br_groups.lng @@ -1,5 +1,5 @@ <?php $wb['description_txt'] = 'Descrição'; $wb['name_txt'] = 'Grupo'; -$wb['name_err'] = 'O nome do grupo deve conter de 1 a 30 caracteres!'; +$wb['name_err'] = 'O grupo deve conter no mÃnimo 1 e no máximo 30 caracteres.'; ?> diff --git a/interface/web/admin/lib/lang/br_groups_list.lng b/interface/web/admin/lib/lang/br_groups_list.lng index f31a85d126..74a414f52d 100644 --- a/interface/web/admin/lib/lang/br_groups_list.lng +++ b/interface/web/admin/lib/lang/br_groups_list.lng @@ -1,7 +1,7 @@ <?php -$wb['list_head_txt'] = 'Grupos de usuários do sistema'; +$wb['list_head_txt'] = 'Grupos'; $wb['description_txt'] = 'Descrição'; $wb['name_txt'] = 'Grupo'; -$wb['add_new_record_txt'] = 'Adicionar novo Grupo'; -$wb['warning_txt'] = '<b>AVISO:</b> Não modifique ou edite qualquer configuração de usuário aqui. Use o módulo de clientes ou revendas. Modificar ou alterar usuários e grupos aqui pode ocasionar perda de dados!'; +$wb['add_new_record_txt'] = 'Adicionar novo grupo'; +$wb['warning_txt'] = '<b>ALERTA:</b> Não editar ou alterar qualquer configuração de usuário aqui. Use o módulo de clientes e revendas para isso. Editar ou alterar usuários ou grupos aqui pode causar perda de dados!'; ?> diff --git a/interface/web/admin/lib/lang/br_iptables.lng b/interface/web/admin/lib/lang/br_iptables.lng index e44fcf1e68..f899d53178 100644 --- a/interface/web/admin/lib/lang/br_iptables.lng +++ b/interface/web/admin/lib/lang/br_iptables.lng @@ -1,13 +1,13 @@ <?php $wb['server_id_txt'] = 'Servidor'; -$wb['multiport_txt'] = 'Múltiplas portas'; -$wb['singleport_txt'] = 'Porta simples'; +$wb['multiport_txt'] = 'Multi-portas'; +$wb['singleport_txt'] = 'Portas simples'; $wb['protocol_txt'] = 'Protocolo'; $wb['table_txt'] = 'Tabela'; $wb['target_txt'] = 'Alvo'; $wb['state_txt'] = 'Estado'; -$wb['destination_ip_txt'] = 'Endereço IP de destino'; -$wb['source_ip_txt'] = 'Endereço IP de origem'; +$wb['destination_ip_txt'] = 'Endereço de destino'; +$wb['source_ip_txt'] = 'Endereço de origem'; $wb['active_txt'] = 'Ativo'; -$wb['iptables_error_unique'] = 'Já existe um registro de firewall igual para este servidor.'; +$wb['iptables_error_unique'] = 'Já existe uma regra de firewall idêntica para este servidor.'; ?> diff --git a/interface/web/admin/lib/lang/br_iptables_list.lng b/interface/web/admin/lib/lang/br_iptables_list.lng index 2cd7fdfb53..3326ac060a 100644 --- a/interface/web/admin/lib/lang/br_iptables_list.lng +++ b/interface/web/admin/lib/lang/br_iptables_list.lng @@ -1,6 +1,6 @@ <?php $wb['list_head_txt'] = 'Firewall'; -$wb['add_new_rule_txt'] = 'Adicionar nova regra'; +$wb['add_new_rule_txt'] = 'Adicionar regra de firewall'; $wb['server_id_txt'] = 'Servidor'; $wb['multiport_txt'] = 'Multi portas'; $wb['singleport_txt'] = 'Porta simples'; @@ -8,8 +8,8 @@ $wb['protocol_txt'] = 'Protocolo'; $wb['table_txt'] = 'Tabela'; $wb['target_txt'] = 'Alvo'; $wb['state_txt'] = 'Estado'; -$wb['destination_ip_txt'] = 'Endereço IP de destino'; -$wb['source_ip_txt'] = 'Endereço IP de origem'; +$wb['destination_ip_txt'] = 'Endereço de destino'; +$wb['source_ip_txt'] = 'Endereço de origem'; $wb['active_txt'] = 'Ativo'; -$wb['iptables_error_unique'] = 'Já existe um registro de firewall igual para este servidor.'; +$wb['iptables_error_unique'] = 'Já existe uma regra idêntica para este servidor.'; ?> diff --git a/interface/web/admin/lib/lang/br_language_add.lng b/interface/web/admin/lib/lang/br_language_add.lng index eaa0808199..f63441c55d 100644 --- a/interface/web/admin/lib/lang/br_language_add.lng +++ b/interface/web/admin/lib/lang/br_language_add.lng @@ -1,8 +1,8 @@ <?php $wb['list_head_txt'] = 'Adicionar novo idioma'; -$wb['language_select_txt'] = 'Selecionar o idioma base'; +$wb['language_select_txt'] = 'Selecionar idioma base'; $wb['language_new_txt'] = 'Novo idioma'; -$wb['language_new_hint_txt'] = '2 letras código ISO 639-1 (veja http://en.wikipedia.org/wiki/List_of_ISO_639-1_codes)'; +$wb['language_new_hint_txt'] = '2 caracteres ISO 639-1 para o código do idioma (veja em http://en.wikipedia.org/wiki/List_of_ISO_639-1_codes)'; $wb['btn_save_txt'] = 'Adicionar novo conjunto de idiomas'; $wb['btn_cancel_txt'] = 'Voltar'; ?> diff --git a/interface/web/admin/lib/lang/br_language_complete.lng b/interface/web/admin/lib/lang/br_language_complete.lng index 84d5e3393c..cb0ea2eb24 100644 --- a/interface/web/admin/lib/lang/br_language_complete.lng +++ b/interface/web/admin/lib/lang/br_language_complete.lng @@ -1,5 +1,5 @@ <?php -$wb['list_head_txt'] = 'Mesclar idioma'; +$wb['list_head_txt'] = 'Mesclar idiomas'; $wb['list_desc_txt'] = 'Mesclar o arquivo de idioma selecionado com o arquivo de idioma principal (em inglês). <br />Isto permite completar qualquer falha de tradução, com o arquivo principal original em inglês.'; $wb['language_select_txt'] = 'Selecionar idioma'; $wb['btn_save_txt'] = 'Mesclar arquivos agora'; diff --git a/interface/web/admin/lib/lang/br_language_edit.lng b/interface/web/admin/lib/lang/br_language_edit.lng index 887080b6d5..ed0e6bb84d 100644 --- a/interface/web/admin/lib/lang/br_language_edit.lng +++ b/interface/web/admin/lib/lang/br_language_edit.lng @@ -1,6 +1,6 @@ <?php -$wb['list_head_txt'] = 'Editor de idiomas'; -$wb['language_select_txt'] = 'Selecione o idioma'; +$wb['list_head_txt'] = 'Editor de arquivos de idiomas'; +$wb['language_select_txt'] = 'Selecionar idioma'; $wb['module_txt'] = 'Módulo'; $wb['lang_file_txt'] = 'Arquivo de idioma'; $wb['btn_save_txt'] = 'Salvar'; diff --git a/interface/web/admin/lib/lang/br_language_export.lng b/interface/web/admin/lib/lang/br_language_export.lng index d484661389..7d75f7b6dd 100644 --- a/interface/web/admin/lib/lang/br_language_export.lng +++ b/interface/web/admin/lib/lang/br_language_export.lng @@ -1,6 +1,6 @@ <?php $wb['list_head_txt'] = 'Exportar arquivos de idioma'; -$wb['language_select_txt'] = 'Selecione o idioma'; -$wb['btn_save_txt'] = 'Exportar idioma selecionado para um arquivo'; +$wb['language_select_txt'] = 'Selecionar idioma'; +$wb['btn_save_txt'] = 'Exportar arquivo de idioma selecionado'; $wb['btn_cancel_txt'] = 'Voltar'; ?> diff --git a/interface/web/admin/lib/lang/br_language_import.lng b/interface/web/admin/lib/lang/br_language_import.lng index e99756b376..99db339812 100644 --- a/interface/web/admin/lib/lang/br_language_import.lng +++ b/interface/web/admin/lib/lang/br_language_import.lng @@ -1,9 +1,9 @@ <?php $wb['list_head_txt'] = 'Importar arquivo de idioma'; -$wb['language_import_txt'] = 'Buscar arquivo de idioma'; +$wb['list_desc_txt'] = 'ALERTA: Não importe arquivos de idioma de origem desconhecida.'; +$wb['language_import_txt'] = 'Selecionar arquivo de idioma'; $wb['btn_save_txt'] = 'Importar arquivo de idioma selecionado'; -$wb['language_overwrite_txt'] = 'Sobrescrever o arquivo se existir.'; +$wb['language_overwrite_txt'] = 'Sobrescrever arquivo, se existir.'; $wb['btn_cancel_txt'] = 'Voltar'; $wb['ignore_version_txt'] = 'Ignorar verificação da versão do ISPConfig'; -$wb['list_desc_txt'] = 'ATENÇÃO: Não importe arquivos de idioma de fontes desconhecidas.'; ?> diff --git a/interface/web/admin/lib/lang/br_language_list.lng b/interface/web/admin/lib/lang/br_language_list.lng index cd00833419..37941c4472 100644 --- a/interface/web/admin/lib/lang/br_language_list.lng +++ b/interface/web/admin/lib/lang/br_language_list.lng @@ -1,7 +1,7 @@ <?php -$wb['list_head_txt'] = 'Editor de arquivo de idioma'; -$wb['language_select_txt'] = 'Selecione o idioma'; +$wb['list_head_txt'] = 'Editor de arquivos de idioma'; +$wb['language_select_txt'] = 'Selecionar idioma'; $wb['module_txt'] = 'Módulo'; -$wb['lang_file_txt'] = 'Arquido de idioma'; +$wb['lang_file_txt'] = 'Arquivo de idioma'; $wb['lang_file_date_txt'] = 'Última modificação'; ?> diff --git a/interface/web/admin/lib/lang/br_package_install.lng b/interface/web/admin/lib/lang/br_package_install.lng index 5b54c3080a..bbe518549a 100644 --- a/interface/web/admin/lib/lang/br_package_install.lng +++ b/interface/web/admin/lib/lang/br_package_install.lng @@ -1,7 +1,7 @@ <?php $wb['repo_name_txt'] = 'Repositório'; $wb['repo_url_txt'] = 'URL'; -$wb['repo_username_txt'] = 'Usuário (opcional)'; +$wb['repo_username_txt'] = 'Usário (opcional)'; $wb['repo_password_txt'] = 'Senha (opcional)'; $wb['active_txt'] = 'Ativo'; ?> diff --git a/interface/web/admin/lib/lang/br_remote_action.lng b/interface/web/admin/lib/lang/br_remote_action.lng index e06a6382b9..80d3a05c53 100644 --- a/interface/web/admin/lib/lang/br_remote_action.lng +++ b/interface/web/admin/lib/lang/br_remote_action.lng @@ -1,12 +1,12 @@ <?php -$wb['select_server_txt'] = 'Selecione o Servidor'; +$wb['select_server_txt'] = 'Selecionar servidor'; $wb['btn_do_txt'] = 'Executar ação'; -$wb['do_osupdate_caption'] = 'Atualização do sistema operacional no servidor'; -$wb['do_osupdate_desc'] = 'Este comando fará um aptitude -y upgrade no servidor selecionado.<br><br><strong>UTILIZE POR SUA CONTA E RISCO!</strong>'; -$wb['do_ispcupdate_caption'] = 'Atualização do ISPConfig 3 no servidor'; -$wb['do_ispcupdate_desc'] = 'Esta ação fará uma atualização do ISPConfig3 no servidor selecionado.<br><br><strong>UTILIZE POR SUA CONTA E RISCO!</strong>'; -$wb['action_scheduled'] = 'Esta ação está agendada para execução'; +$wb['do_osupdate_caption'] = 'Atualizar sistema operacional no servidor remoto'; +$wb['do_osupdate_desc'] = 'Esta ação fará o comando \'aptitude -y upgrade\' no servidor selecionado.<br><br><strong>UTILIZE POR SUA CONTA E RISCO!</strong>'; +$wb['do_ispcupdate_caption'] = 'Atualizar ISPConfig 3 - Atualizar o servidor remoto'; +$wb['do_ispcupdate_desc'] = 'Esta ação atualizará o ISPConfig3 no servidor selecionado.<br><br><strong>UTILIZE POR SUA CONTA E RISCO!</strong>'; +$wb['action_scheduled'] = 'A ação foi agendada.'; $wb['select_all_server'] = 'Todos os servidores'; $wb['ispconfig_update_title'] = 'Instruções de atualização do ISPConfig'; -$wb['ispconfig_update_text'] = 'Acesse como root no shell do seu servidor e execute os seguintes comandos<br /><br /> <strong>ispconfig_update.sh</strong><br /><br />para iniciar a atualização do ISPConfig.<br /><br /><a href=http://www.faqforge.com/linux/controlpanels/ispconfig3/how-to-update-ispconfig-3/ target=_blank>Clique aqui para instruções detalhadas sobre atualização</a>'; +$wb['ispconfig_update_text'] = 'Acesse com o usuário root no shell do servidor e execute o comando<br /><br /> <strong>ispconfig_update.sh</strong><br /><br />para iniciar a atualização do ISPConfig.<br /><br /><a href=\'http://www.faqforge.com/linux/controlpanels/ispconfig3/how-to-update-ispconfig-3/\' target=\'_blank\'>Clique aqui para instruções detalhadas</a>'; ?> diff --git a/interface/web/admin/lib/lang/br_remote_user.lng b/interface/web/admin/lib/lang/br_remote_user.lng index 95657a283d..fcaa6732c8 100644 --- a/interface/web/admin/lib/lang/br_remote_user.lng +++ b/interface/web/admin/lib/lang/br_remote_user.lng @@ -1,50 +1,68 @@ <?php -$wb['username_txt'] = 'Nome do usuário'; +$wb['username_txt'] = 'Usuário'; $wb['password_txt'] = 'Senha'; $wb['function_txt'] = 'Funções'; -$wb['username_error_unique'] = 'O nome de usuário deve ser exclusivo'; -$wb['username_error_empty'] = 'O nome de usuário não pode estar em branco'; -$wb['password_error_empty'] = 'A senha não pode estar em branco'; +$wb['username_error_unique'] = 'Nome do usuário deve ser exclusivo.'; +$wb['username_error_empty'] = 'Nome do usuário está em branco.'; +$wb['password_error_empty'] = 'Senha do usuário está em branco.'; $wb['password_strength_txt'] = 'Dificuldade da senha'; +$wb['Server functions'] = 'Funções de servidor'; +$wb['Record permission changes'] = 'Permissões de alteração de registros'; +$wb['Domaintool functions'] = 'Funções ferramentas de domÃnios'; +$wb['Quota functions'] = 'Funções de cotas'; $wb['Mail domain functions'] = 'Funções de domÃnios de e-mail'; -$wb['Mail user functions'] = 'Funções de usuários de e-mail'; -$wb['Mail alias functions'] = 'Funções de apelidos de domÃnio de e-mail'; -$wb['Mail forward functions'] = 'Funções de encaminhamento de e-mail'; -$wb['Mail catchall functions'] = 'Funções de de contas cata tudo'; -$wb['Mail transport functions'] = 'Funções de transporte de e-mail'; -$wb['Mail whitelist functions'] = 'Funções de lista branca de e-mail'; -$wb['Mail blacklist functions'] = 'Funções de lista negra de e-mail'; -$wb['Mail spamfilter user functions'] = 'Funções de filtros anti-spam para contas de e-mail'; -$wb['Mail spamfilter policy functions'] = 'Funções de polÃtica de anti-spam para contas de e-mail'; +$wb['Mail domain alias functions'] = 'Funções de alias de domÃnios de e-mail'; +$wb['Mail mailinglist functions'] = 'Funções de lista de e-mails'; +$wb['Mail user functions'] = 'Funções de contas de e-mails'; +$wb['Mail alias functions'] = 'Funções de alias de e-mails'; +$wb['Mail forward functions'] = 'Funções de encaminhamento de e-mails'; +$wb['Mail relay functions'] = 'Funções de retransmissão de e-mails'; +$wb['Mail catchall functions'] = 'Funções de contas cata-tudo'; +$wb['Mail transport functions'] = 'Funções de transporte de e-mails'; +$wb['Mail whitelist functions'] = 'Funções de lista branca'; +$wb['Mail blacklist functions'] = 'Funções de lista negra'; +$wb['Mail spamfilter user functions'] = 'Funções de filtros anti-spam'; +$wb['Mail spamfilter policy functions'] = 'Funções de polÃticas anti-spam'; $wb['Mail fetchmail functions'] = 'Funções de contas de busca de e-mails'; -$wb['Mail user filter functions'] = 'Funções de filtro de e-mails para contas de e-mail'; -$wb['Mail filter functions'] = 'Funções de filtros de e-mail'; +$wb['Mail spamfilter whitelist functions'] = 'Funções de lista branca de e-mails'; +$wb['Mail spamfilter blacklist functions'] = 'Funções de lista negra de e-mails'; +$wb['Mail user filter functions'] = 'Funções de filtros de e-mails para contas de e-mails'; +$wb['Mail Backup functions'] = 'Funções de backup de e-mails'; +$wb['Mail filter functions'] = 'Funções de filtros de e-mails'; +$wb['Monitor functions'] = 'Funções de monitoramento'; $wb['Client functions'] = 'Funções de cliente'; -$wb['Sites cron functions'] = 'Funções de tarefas no cron para sites'; -$wb['Sites database functions'] = 'Funções de banco de dados para sites'; -$wb['Sites FTP-User functions'] = 'Funções de usuários ftp para sites'; -$wb['Sites Shell-User functions'] = 'Funções de usuários shell para sites'; +$wb['Sites cron functions'] = 'Funções de tarefas no cron'; +$wb['Sites database functions'] = 'Funções de banco de dados'; +$wb['Sites Protected folder functions'] = 'Funções de pastas protegidas'; +$wb['Sites FTP-User functions'] = 'Funções de usuários ftp'; +$wb['Sites Shell-User functions'] = 'Funções de usuários do shell'; $wb['Sites Domain functions'] = 'Funções de domÃnios de sites'; -$wb['Sites Aliasdomain functions'] = 'Função de apelidos de domÃnio de sites'; -$wb['Sites Subdomain functions'] = 'Função de subdomÃnio de sites'; -$wb['DNS zone functions'] = 'Funções de zona dns'; +$wb['Sites Backup functions'] = 'Funções de backup de sites'; +$wb['Sites Aliasdomain functions'] = 'Funções de alias de domÃnios de sites'; +$wb['Sites Subdomain functions'] = 'Funções de subdomÃnios de sites'; +$wb['Sites APS functions'] = 'Funções de apps e complementos'; +$wb['Sites WebDAV-User functions'] = 'Funções de usuários webdav'; +$wb['DNS zone functions'] = 'Funções de zonas dns'; $wb['DNS a functions'] = 'Funções de registro A dns'; $wb['DNS aaaa functions'] = 'Funções de registro AAAA dns'; -$wb['DNS alias functions'] = 'Funções de registro Alias dns'; -$wb['DNS cname functions'] = 'Funções de registro CNAME dns'; -$wb['DNS hinfo functions'] = 'Funções de registro HINFO dns'; -$wb['DNS mx functions'] = 'Funções de registro MX dns'; -$wb['DNS ns functions'] = 'Funções de registro NS dns'; -$wb['DNS ptr functions'] = 'Funções de registro PTR dns'; -$wb['DNS rp functions'] = 'Funções de registro RP dns'; -$wb['DNS srv functions'] = 'Funções de registro SRV dns'; -$wb['DNS txt functions'] = 'Funções de registro TXT dns'; -$wb['generate_password_txt'] = 'Gerar senha'; -$wb['repeat_password_txt'] = 'Repetir senha'; -$wb['password_mismatch_txt'] = 'A senhas não coincidem.'; -$wb['password_match_txt'] = 'A senhas coincidem.'; -$wb['remote_access_txt'] = 'Acesso remoto'; -$wb['remote_ips_txt'] = 'Endereço(s) IPs ou nome do servidor com acesso remoto (separado por vÃrgula ou em branco para qualquer <i>um</i>)'; -$wb['remote_user_error_ips'] = 'Ao menos um endereço IP ou nome do servidor é inválido.'; -$wb['Mail mailing list functions'] = 'Mail mailinglist functions'; +$wb['DNS alias functions'] = 'Funções de ALIAS dns'; +$wb['DNS cname functions'] = 'Funções de CNAME dns'; +$wb['DNS hinfo functions'] = 'Funções de HINFO dns'; +$wb['DNS mx functions'] = 'Funções de MX dns'; +$wb['DNS ns functions'] = 'Funções de NS dns'; +$wb['DNS ptr functions'] = 'Funções de PTR dns'; +$wb['DNS rp functions'] = 'Funções de RP dns'; +$wb['DNS srv functions'] = 'Funções de SVR dns'; +$wb['DNS txt functions'] = 'Funções de TXT dns'; +$wb['DNS ds functions'] = 'Funções de DS dns'; +$wb['DNS loc functions'] = 'Funções de LOC dns'; +$wb['DNS tlsa functions'] = 'Funções de TLSA dns'; +$wb['OpenVZ VM functions'] = 'Funções do openvz'; +$wb['generate_password_txt'] = 'Gerar Senha'; +$wb['repeat_password_txt'] = 'Repetir Senha'; +$wb['password_mismatch_txt'] = 'As senhas não coincidem.'; +$wb['password_match_txt'] = 'As senhas coincidem.'; +$wb['remote_access_txt'] = 'Acesso Remoto'; +$wb['remote_ips_txt'] = 'Endereços IPs ou nome(s) do(s) host(s) para acesso remoto (separado por vÃrgula e deixar em branco para <i>qualquer um</i>)'; +$wb['remote_user_error_ips'] = 'Ao menos um endereço IP ou nome do host informado é inválido.'; ?> diff --git a/interface/web/admin/lib/lang/br_remote_user_list.lng b/interface/web/admin/lib/lang/br_remote_user_list.lng index f95d782ce6..0f0381a6f4 100644 --- a/interface/web/admin/lib/lang/br_remote_user_list.lng +++ b/interface/web/admin/lib/lang/br_remote_user_list.lng @@ -1,7 +1,7 @@ <?php $wb['list_head_txt'] = 'Usuários remotos'; -$wb['list_desc_txt'] = ''; +$wb['list_desc_txt'] = 'Usuário remoto'; $wb['add_new_record_txt'] = 'Adicionar novo usuário'; -$wb['parent_remote_userid_txt'] = 'ID'; -$wb['username_txt'] = 'Nome do usuário'; +$wb['parent_remote_userid_txt'] = 'ID do usuário'; +$wb['username_txt'] = 'Nome'; ?> diff --git a/interface/web/admin/lib/lang/br_server.lng b/interface/web/admin/lib/lang/br_server.lng index 930b990f42..a896d0b49a 100644 --- a/interface/web/admin/lib/lang/br_server.lng +++ b/interface/web/admin/lib/lang/br_server.lng @@ -2,15 +2,15 @@ $wb['config_txt'] = 'Configuração'; $wb['server_name_txt'] = 'Nome do servidor'; $wb['mail_server_txt'] = 'Servidor de e-mails'; -$wb['web_server_txt'] = 'Servidor de páginas'; +$wb['web_server_txt'] = 'Servidor web'; $wb['dns_server_txt'] = 'Servidor dns'; -$wb['file_server_txt'] = 'Servidor de arquivo'; +$wb['file_server_txt'] = 'Servidor ftp'; $wb['db_server_txt'] = 'Servidor de banco de dados'; -$wb['vserver_server_txt'] = 'Servidor virtual'; -$wb['active_txt'] = 'Ativo'; -$wb['mirror_server_id_txt'] = 'É um espelho de servidor?'; -$wb['- None -'] = '- Nenhum -'; +$wb['vserver_server_txt'] = 'Servidor de virtualização'; $wb['proxy_server_txt'] = 'Servidor proxy'; -$wb['firewall_server_txt'] = 'Servidor de firewall'; -$wb['xmpp_server_txt'] = 'Servidor XMPP'; +$wb['firewall_server_txt'] = 'Servidor firewall'; +$wb['active_txt'] = 'Ativo'; +$wb['mirror_server_id_txt'] = 'É um espelho de servidor'; +$wb['- None -'] = '-Nenhum-'; +$wb['xmpp_server_txt'] = 'Servidor xmpp'; ?> diff --git a/interface/web/admin/lib/lang/br_server_config.lng b/interface/web/admin/lib/lang/br_server_config.lng index 25ffb06996..f57a2310f2 100644 --- a/interface/web/admin/lib/lang/br_server_config.lng +++ b/interface/web/admin/lib/lang/br_server_config.lng @@ -1,303 +1,303 @@ <?php -$wb['jailkit_chroot_home_txt'] = 'Raiz do chroot jailkit'; -$wb['jailkit_chroot_app_sections_txt'] = 'Aplicações no jailkit chroot (sessões)'; -$wb['jailkit_chroot_app_programs_txt'] = 'Aplicações no jailkit em ambiente chroot'; +$wb['ufw_enable_txt'] = 'Habilitar'; +$wb['ufw_manage_builtins_txt'] = 'Gerenciar regras embutidas'; +$wb['ufw_ipv6_txt'] = 'Habilitar IPv6'; +$wb['ufw_default_input_policy_txt'] = 'PolÃtica de entrada padrão'; +$wb['ufw_default_output_policy_txt'] = 'PolÃtica de saÃda padrão'; +$wb['ufw_default_forward_policy_txt'] = 'PolÃtica de encaminhamento padrão'; +$wb['ufw_default_application_policy_txt'] = 'PolÃtica de aplicações padrão'; +$wb['ufw_log_level_txt'] = 'NÃvel do log'; +$wb['jailkit_chroot_home_txt'] = 'Diretório em chroot do jailkit'; +$wb['jailkit_chroot_app_sections_txt'] = 'Seções de aplicações em chroot no jailkit'; +$wb['jailkit_chroot_app_programs_txt'] = 'Aplicações em chroot no jailkit'; +$wb['jailkit_chroot_cron_programs_txt'] = 'Tarefas de aplicações em chroot no jailkit'; $wb['website_path_txt'] = 'Caminho do site'; -$wb['website_symlinks_txt'] = 'Site symlinks: links simbólicos'; -$wb['website_symlinks_rel_txt'] = 'Criar links simbólicos relativos'; -$wb['website_basedir_txt'] = 'Site basedir: Diretório base '; -$wb['vhost_conf_dir_txt'] = 'Diretório de configuração para vhost'; -$wb['vhost_conf_enabled_dir_txt'] = 'Diretório de configuração para vhost ativo'; +$wb['website_symlinks_txt'] = 'Links simbólicos de sites'; +$wb['website_symlinks_rel_txt'] = 'Adicionar links simbólicos relativos'; +$wb['website_basedir_txt'] = 'Diretório base - site'; +$wb['website_autoalias_txt'] = 'Auto alias - site'; +$wb['website_autoalias_note_txt'] = 'Ãrea reservada:'; +$wb['vhost_conf_dir_txt'] = 'Diretório de configuração vhost'; +$wb['vhost_conf_enabled_dir_txt'] = 'Diretório de configuração vhost habilitado'; $wb['getmail_config_dir_txt'] = 'Diretório de configuração do getmail'; -$wb['fastcgi_starter_path_txt'] = 'FastCGI: Caminho do diretório do scritp de inicialização'; -$wb['fastcgi_starter_script_txt'] = 'FastCGI: Script de inicialização'; -$wb['fastcgi_alias_txt'] = 'FastCGI: Alias (apelido)'; -$wb['fastcgi_phpini_path_txt'] = 'FastCGI: Caminho do php.ini '; -$wb['fastcgi_children_txt'] = 'FastCGI: Filhos'; -$wb['fastcgi_max_requests_txt'] = 'FastCGI: Limite de requisições'; -$wb['fastcgi_bin_txt'] = 'Binário do FastCGI'; +$wb['fastcgi_starter_path_txt'] = 'Caminho de inicialização do FastCGI'; +$wb['fastcgi_starter_script_txt'] = 'Script de inicialização do FastCGI'; +$wb['fastcgi_alias_txt'] = 'Alias FastCGI'; +$wb['fastcgi_phpini_path_txt'] = 'Caminho do php.ini FastCGI'; +$wb['fastcgi_children_txt'] = 'Processos filhos do FastCGI'; +$wb['fastcgi_max_requests_txt'] = 'Limite de requisições do FastCGI'; +$wb['fastcgi_bin_txt'] = 'Binário FastCGI'; $wb['module_txt'] = 'Módulo'; -$wb['maildir_path_txt'] = 'Caminho do diretório maildir'; +$wb['maildir_path_txt'] = 'Caminho do maildir'; $wb['maildir_format_txt'] = 'Formato do maildir'; -$wb['homedir_path_txt'] = 'Caminho do diretório home'; +$wb['homedir_path_txt'] = 'Caminho do homedir'; +$wb['dkim_path_txt'] = 'Caminho do DKIM'; $wb['mailuser_uid_txt'] = 'UID do mailuser'; $wb['mailuser_gid_txt'] = 'GID do mailuser'; $wb['mailuser_name_txt'] = 'Nome do mailuser'; -$wb['mailuser_group_txt'] = 'Grupo do mailuser'; -$wb['mailbox_virtual_uidgid_maps_txt'] = 'Mapear UID Linux de sites para mailbox'; -$wb['mailbox_virtual_uidgid_maps_info_txt'] = 'Configuração única para sites e servidor de e-mails permitida apenas em configuração de servidor individual'; -$wb['mailbox_virtual_uidgid_maps_error_nosingleserver'] = 'UID não pode ser mapeado em uma configuração multiservidor.'; -$wb['mailbox_virtual_uidgid_maps_error_nodovecot'] = 'Mapeamento de UID só pode ser usada com o dovecot.'; -$wb['mailbox_virtual_uidgid_maps_error_alreadyusers'] = 'Mapeamento de UID não pode ser modificada se já existirem e-mails cadastrados.'; +$wb['mailuser_group_txt'] = 'Grupo do maildir'; +$wb['mailbox_virtual_uidgid_maps_txt'] = 'Usar uid linux para sites e conta de e-mail'; +$wb['mailbox_virtual_uidgid_maps_info_txt'] = 'Permitido apenas para configuração de servidor único.'; +$wb['mailbox_virtual_uidgid_maps_error_nosingleserver'] = 'O uid linux não pode ser mapeado em configuração multi-servidor.'; +$wb['mailbox_virtual_uidgid_maps_error_nodovecot'] = 'O uid linux não pode ser usado com o dovecot.'; +$wb['mailbox_virtual_uidgid_maps_error_alreadyusers'] = 'O uid não pode ser alterado se já existir contas de e-mail.'; $wb['relayhost_txt'] = 'Servidor de retransmissão'; -$wb['relayhost_user_txt'] = 'Usuário do servidor de retransmissão'; -$wb['relayhost_password_txt'] = 'Senha do servidor de retransmissão'; -$wb['reject_sender_login_mismatch_txt'] = 'Rejeitar remetente e acesso com erros'; -$wb['mailbox_size_limit_txt'] = 'Limite da conta de e-mail'; -$wb['message_size_limit_txt'] = 'Limite do tamanho máximo das mensagens'; +$wb['relayhost_user_txt'] = 'Usuário de retransmissão'; +$wb['relayhost_password_txt'] = 'Senha do usuário de retransmissão'; +$wb['reject_sender_login_mismatch_txt'] = 'Rejeitar acesso com erro de usuário e/ou senha'; +$wb['mailbox_size_limit_txt'] = 'Limite do tamanho da conta de e-mail'; +$wb['message_size_limit_txt'] = 'Limite do tamanho da mensagem'; $wb['ip_address_txt'] = 'Endereço IP'; -$wb['netmask_txt'] = 'Máscara de rede'; +$wb['netmask_txt'] = 'Máscara'; $wb['gateway_txt'] = 'Gateway'; -$wb['hostname_txt'] = 'Servidor'; -$wb['nameservers_txt'] = 'Servidores dns'; +$wb['hostname_txt'] = 'Nome do host'; +$wb['nameservers_txt'] = 'Servidor(es) dns'; $wb['auto_network_configuration_txt'] = 'Configuração de rede'; -$wb['ip_address_error_wrong'] = 'Endereço IP inválido!'; -$wb['netmask_error_wrong'] = 'Máscara de rede inválida!'; -$wb['gateway_error_wrong'] = 'Gateway inválido!'; -$wb['hostname_error_empty'] = 'Por favor, insira o servidor.'; -$wb['nameservers_error_empty'] = 'Por favor, insira o servidor dns.'; -$wb['jailkit_chroot_cron_programs_txt'] = 'Tarefas do cron para aplicações no Jailkit em ambiente chroot'; -$wb['config_dir_txt'] = 'Diretório de configuração'; +$wb['ip_address_error_wrong'] = 'Endereço IP com formato inválido.'; +$wb['netmask_error_wrong'] = 'Máscara de rede com formato inválido.'; +$wb['gateway_error_wrong'] = 'Gateway da rede com formado inválido.'; +$wb['hostname_error_empty'] = 'O nome do host está em branco.'; +$wb['hostname_error_regex'] = 'O nome do host é inválido.'; +$wb['nameservers_error_empty'] = 'O servidor(es) dns está em branco.'; +$wb['config_dir_txt'] = 'Diretório de configurações'; $wb['init_script_txt'] = 'Nome do script de inicialização do cron'; -$wb['crontab_dir_txt'] = 'Caminho para tabelas de tarefas individuais no cron'; -$wb['wget_txt'] = 'Caminho para o wget'; -$wb['web_user_txt'] = 'Usuário apache'; -$wb['web_group_txt'] = 'Grupo apache'; +$wb['crontab_dir_txt'] = 'Caminho para crontabs individuais.'; +$wb['wget_txt'] = 'Caminho do binário wget'; +$wb['web_user_txt'] = 'Usuário do apache'; +$wb['web_group_txt'] = 'Grupo do apache'; $wb['security_level_txt'] = 'NÃvel de segurança'; -$wb['loglevel_txt'] = 'NÃvel do log (Loglevel)'; -$wb['apps_vhost_port_txt'] = 'Porta para apps-vhost'; -$wb['apps_vhost_ip_txt'] = 'IP para apps-vhost'; -$wb['apps_vhost_servername_txt'] = 'DomÃnio para apps-vhost'; -$wb['bind_user_txt'] = 'Usuário bind'; -$wb['bind_group_txt'] = 'Grupo bind'; -$wb['bind_zonefiles_dir_txt'] = 'Diretório de arquivos de zona do bind'; +$wb['loglevel_txt'] = 'NÃvel do log'; +$wb['apps_vhost_port_txt'] = 'Porta dos apps-vhost'; +$wb['apps_vhost_ip_txt'] = 'IP dos apps-vhost'; +$wb['apps_vhost_servername_txt'] = 'DomÃnio dos apps-vhost'; +$wb['bind_user_txt'] = 'Usuário do bind'; +$wb['bind_group_txt'] = 'Grupo do bind'; +$wb['bind_zonefiles_dir_txt'] = 'Diretório de zonas'; $wb['named_conf_path_txt'] = 'Caminho do named.conf'; $wb['bind_user_error_empty'] = 'Usuário do bind está em branco.'; $wb['bind_group_error_empty'] = 'Grupo do bind está em branco.'; -$wb['bind_zonefiles_dir_error_empty'] = 'Diretório de arquivos de zona está em branco.'; -$wb['named_conf_path_error_empty'] = 'Caminho do named.conf.'; +$wb['bind_zonefiles_dir_error_empty'] = 'Diretório de zonas está em branco.'; +$wb['named_conf_path_error_empty'] = 'Caminho do named.conf está em branco.'; $wb['named_conf_local_path_error_empty'] = 'Caminho do named.conf.local está em branco.'; -$wb['mail_filter_syntax_txt'] = 'Sintaxe do mailfilter'; -$wb['pop3_imap_daemon_txt'] = 'Serviço POP3/IMAP'; -$wb['php_open_basedir_txt'] = 'Diretório PHP open_basedir'; -$wb['php_open_basedir_error_empty'] = 'Diretório PHP open_basedir está em branco.'; +$wb['mail_filter_syntax_txt'] = 'Sintaxe do filtro de e-mail'; +$wb['pop3_imap_daemon_txt'] = 'Daemon POP3/IMAP'; +$wb['php_open_basedir_txt'] = 'Diretório open_basedir do php'; +$wb['php_open_basedir_error_empty'] = 'O diretório do open_basedir PHP está em branco.'; $wb['htaccess_allow_override_txt'] = 'Diretiva .htaccess AllowOverride'; $wb['htaccess_allow_override_error_empty'] = 'Diretiva .htaccess AllowOverride está em branco.'; -$wb['awstats_conf_dir_txt'] = 'Diretório de configuração do awstats'; -$wb['awstats_data_dir_txt'] = 'Diretório de dados do awstats'; +$wb['awstats_conf_dir_txt'] = 'Pasta de configuração do awstats'; +$wb['awstats_data_dir_txt'] = 'Pasta de dados do awstats'; $wb['awstats_pl_txt'] = 'Script awstats.pl'; $wb['awstats_buildstaticpages_pl_txt'] = 'Script awstats_buildstaticpages.pl'; $wb['backup_dir_txt'] = 'Diretório de backup'; +$wb['backup_tmp_txt'] = 'Diretório para backup temporário quando utilizado zip'; $wb['named_conf_local_path_txt'] = 'Caminho do named.conf.local'; -$wb['php_ini_path_cgi_txt'] = 'Caminho do php.ini CGI'; -$wb['php_ini_path_apache_txt'] = 'Caminho do php.ini apache'; -$wb['check_apache_config_txt'] = 'Testar a configuração do apache ao reiniciar'; -$wb['network_config_warning_txt'] = 'A configuração de rede só está disponÃvel para servidores Debian e Ubuntu. Não ative esta configuração se a adaptadora de rede no sistema for diferente de eth0.'; -$wb['CA_path_txt'] = 'Caminho do CA'; -$wb['CA_pass_txt'] = 'Senha do CA'; -$wb['ufw_enable_txt'] = 'Habilitar'; -$wb['ufw_manage_builtins_txt'] = 'Gerenciar regras embutidas'; -$wb['ufw_ipv6_txt'] = 'Habilitar IPv6'; -$wb['ufw_default_input_policy_txt'] = 'PolÃtica padrão para entrada'; -$wb['ufw_default_output_policy_txt'] = 'PolÃtica padrão para saÃda'; -$wb['ufw_default_forward_policy_txt'] = 'PolÃtica padrão para encaminhamento'; -$wb['ufw_default_application_policy_txt'] = 'PolÃtica padrão para aplicações'; -$wb['ufw_log_level_txt'] = 'NÃvel do log'; -$wb['fastcgi_config_syntax_txt'] = 'Sintaxe das configurações FastCGI'; -$wb['server_type_txt'] = 'Tipo de servidor'; -$wb['nginx_vhost_conf_dir_txt'] = 'Diretório de configuração do vhost nginx'; -$wb['nginx_vhost_conf_enabled_dir_txt'] = 'Configuração do diretório do vhost nginx habilitada'; +$wb['php_ini_path_cgi_txt'] = 'Caminho do php.ini do cgi'; +$wb['php_ini_path_apache_txt'] = 'Caminho do php.ini do apache'; +$wb['check_apache_config_txt'] = 'Verificar as configurações do apache quando reiniciar'; +$wb['network_config_warning_txt'] = 'A configuração de rede está disponÃvel apenas para servidores Debian e Ubuntu. Não habilite esta opção se a interface de rede for diferente de eth0.'; +$wb['CA_path_txt'] = 'Caminho da CA'; +$wb['CA_pass_txt'] = 'Senha da CA'; +$wb['fastcgi_config_syntax_txt'] = 'Sintaxe das configurações do FastCGI'; +$wb['backup_mode_txt'] = 'Modo do backup'; +$wb['backup_mode_userzip'] = 'Arquivos de backup com propriedade do usuário web e compactados como zip'; +$wb['backup_mode_rootgz'] = 'Todos os arquivos no diretório web com proprietário root'; +$wb['tmpdir_path_error_empty'] = 'Caminho do diretório temporário está em branco.'; +$wb['tmpdir_path_error_regex'] = 'Caminho do diretório temporário é inválido.'; +$wb['backup_time_txt'] = 'Hora do backup'; +$wb['server_type_txt'] = 'Tipo do servidor'; +$wb['nginx_vhost_conf_dir_txt'] = 'Diretório de configurações vhost do nginx'; +$wb['nginx_vhost_conf_enabled_dir_txt'] = 'Diretório de configurações vhost do nginx habilitado'; $wb['nginx_user_txt'] = 'Usuário nginx'; -$wb['nginx_group_txt'] = 'Grupo nginx'; -$wb['nginx_cgi_socket_txt'] = 'Soquete CGI nginx'; +$wb['nginx_group_txt'] = 'Grupo do nginx'; +$wb['nginx_cgi_socket_txt'] = 'Socket CGI do nginx'; $wb['backup_dir_error_empty'] = 'Diretório de backup está em branco.'; $wb['maildir_path_error_empty'] = 'Caminho do maildir está em branco.'; $wb['homedir_path_error_empty'] = 'Caminho do homedir está em branco.'; -$wb['mailuser_uid_error_empty'] = 'UID do mailuser está em branco.'; -$wb['mailuser_gid_error_empty'] = 'GID do mailuser está em branco.'; -$wb['mailuser_name_error_empty'] = 'Nome do mailuser está em branco.'; -$wb['mailuser_group_error_empty'] = 'Grupo do mailuser está em branco.'; -$wb['getmail_config_dir_error_empty'] = 'Configuração do diretório getmail está em branco.'; -$wb['website_basedir_error_empty'] = 'Diretório padrão (basedir) do site está em branco.'; -$wb['website_path_error_empty'] = 'Caminho do diretório base (basedir) do site está em branco.'; -$wb['website_symlinks_error_empty'] = 'Links simbólicos para site está em branco.'; -$wb['vhost_conf_dir_error_empty'] = 'Configuração do diretório para vhost está em branco.'; -$wb['vhost_conf_enabled_dir_error_empty'] = 'Configuração habilitada do diretório vhost está em branco.'; -$wb['nginx_vhost_conf_dir_error_empty'] = 'Configuração do diretório vhost do nginx está em branco.'; -$wb['nginx_vhost_conf_enabled_dir_error_empty'] = 'Configuração habilitada do diretório vhost do nginx está em branco.'; -$wb['apache_user_error_empty'] = 'Usuário apache está em branco.'; -$wb['apache_group_error_empty'] = 'Grupo apache está em branco.'; -$wb['nginx_user_error_empty'] = 'Usuário nginx está em branco.'; -$wb['nginx_group_error_empty'] = 'Grupo nginx está em branco.'; -$wb['php_ini_path_apache_error_empty'] = 'Caminho do php.ini apache está em branco.'; +$wb['mailuser_uid_error_empty'] = 'UID do mailuser UID está em branco.'; +$wb['mailuser_gid_error_empty'] = 'GID do mailuser GID está em branco.'; +$wb['mailuser_name_error_empty'] = 'Usuário do mailuser está em branco.'; +$wb['mailuser_group_error_empty'] = 'Grupo do mailuser Group está em branco.'; +$wb['getmail_config_dir_error_empty'] = 'Diretório de configurações do getmail está em branco.'; +$wb['website_basedir_error_empty'] = 'Diretório basedir de sites está em branco.'; +$wb['website_path_error_empty'] = 'Caminho do site está em branco.'; +$wb['website_symlinks_error_empty'] = 'Links simbólicos de site está em branco.'; +$wb['vhost_conf_dir_error_empty'] = 'Diretório de configurações do vhost está em branco.'; +$wb['vhost_conf_enabled_dir_error_empty'] = 'Diretório de configurações vhost habilitadas está em branco.'; +$wb['nginx_vhost_conf_dir_error_empty'] = 'Diretório de configurações vhost do nginx está em branco.'; +$wb['nginx_vhost_conf_enabled_dir_error_empty'] = 'Diretório de configurações vhost habilitadas do nginx está em branco.'; +$wb['apache_user_error_empty'] = 'Usuário do apache está em branco.'; +$wb['apache_group_error_empty'] = 'Grupo do apache está em branco.'; +$wb['nginx_user_error_empty'] = 'Usuário do nginx está em branco.'; +$wb['nginx_group_error_empty'] = 'Grupo do nginx está em branco.'; +$wb['php_ini_path_apache_error_empty'] = 'Caminho do php.ini do apache está em branco.'; $wb['php_ini_path_cgi_error_empty'] = 'Caminho do php.ini CGI está em branco.'; -$wb['nginx_cgi_socket_empty'] = 'Soquete do CGI nginx está em branco.'; -$wb['apps_vhost_port_error_empty'] = 'Porta de apps-vhost está em branco.'; -$wb['apps_vhost_ip_error_empty'] = 'IP para apps-vhost está em branco.'; -$wb['fastcgi_starter_path_error_empty'] = 'Caminho do programa de inicialização do FastCGI está em branco.'; +$wb['nginx_cgi_socket_empty'] = 'O socket CGI do nginx está em branco.'; +$wb['apps_vhost_port_error_empty'] = 'Portas de apps-vhost está em branco.'; +$wb['apps_vhost_ip_error_empty'] = 'IP do apps-vhost está em branco.'; +$wb['fastcgi_starter_path_error_empty'] = 'Caminho do script de inicialização do FastCGI está em branco.'; $wb['fastcgi_starter_script_error_empty'] = 'Script de inicialização do FastCGI está em branco.'; -$wb['fastcgi_alias_error_empty'] = 'Alias (apelido) do FastCGI está em branco.'; -$wb['fastcgi_phpini_path_error_empty'] = 'Caminho do php.ini do FastCGI está em branco.'; -$wb['fastcgi_children_error_empty'] = 'Filhos do FastCGI está em branco.'; -$wb['fastcgi_max_requests_error_empty'] = 'Limite de requisições do FastCGI está em branco.'; -$wb['fastcgi_bin_error_empty'] = 'Binário do FastCGI está em branco.'; -$wb['jailkit_chroot_home_error_empty'] = 'Diretório raiz do jailkit está em branco.'; -$wb['jailkit_chroot_app_sections_error_empty'] = 'Aplicações no jailkit chroot (sessões) está em branco.'; -$wb['jailkit_chroot_app_programs_error_empty'] = 'Aplicações no jailkit em ambiente chroot está em branco.'; -$wb['jailkit_chroot_cron_programs_error_empty'] = 'Tarefas no cron de aplicações no jailkit em ambiente chroot está em branco.'; -$wb['vlogger_config_dir_error_empty'] = 'Diretório de configurações está em branco.'; -$wb['cron_init_script_error_empty'] = 'Nome do script de inicialização do cron está em branco.'; -$wb['crontab_dir_error_empty'] = 'Caminho para tabelas de tarefas individuais no cron está em branco.'; -$wb['cron_wget_error_empty'] = 'Caminho do programa wget está em branco.'; -$wb['php_fpm_init_script_txt'] = 'Script de inicialização do PHP-FPM'; -$wb['php_fpm_init_script_error_empty'] = 'Script de inicialização do PHP-FPM está em branco.'; -$wb['php_fpm_ini_path_txt'] = 'Caminho do php.ini do PHP-FPM'; -$wb['php_fpm_ini_path_error_empty'] = 'Caminho do php.ini do PHP-FPM está em branco.'; -$wb['php_fpm_pool_dir_txt'] = 'Diretório de faixas (pool) do PHP-FPM'; -$wb['php_fpm_pool_dir_error_empty'] = 'Diretório de faixas (pool) do PHP-FPM está em branco.'; -$wb['php_fpm_start_port_txt'] = 'Porta de inicialização do PHP-FPM'; -$wb['php_fpm_start_port_error_empty'] = 'Porta de inicialização do PHP-FPM está em branco.'; -$wb['php_fpm_socket_dir_txt'] = 'Diretório do soquete PHP-FPM'; -$wb['php_fpm_socket_dir_error_empty'] = 'Diretório do soquete PHP-FPM está em branco.'; -$wb['try_rescue_txt'] = 'Habilitar serviço de monitoramento e reiniciar em caso de falha'; -$wb['do_not_try_rescue_mysql_txt'] = 'Desabilitar monitoramento do MySQL'; -$wb['do_not_try_rescue_mail_txt'] = 'Desabilitar monitoramento do servidor de e-mails'; -$wb['rescue_description_txt'] = '<b>Informação:</b> Se você deseja desligar o MySQL deverá selecionar \'Desabilitar monitoramento do MySQL\' e aguardar em torno de 2 a 3 minutos...<br>se não aguardar em torno de 2 a 3 minutos, o serviço tentará reiniciar o MySQL!'; +$wb['fastcgi_alias_error_empty'] = 'Alias do FastCGI está em branco.'; +$wb['fastcgi_phpini_path_error_empty'] = 'O caminho do php.ini do FastCGI está em branco.'; +$wb['fastcgi_children_error_empty'] = 'Os processos filhos do FastCGI está em branco.'; +$wb['fastcgi_max_requests_error_empty'] = 'O limite de requisições FastCGI está em branco.'; +$wb['fastcgi_bin_error_empty'] = 'O binário do FastCGI está em branco.'; +$wb['jailkit_chroot_home_error_empty'] = 'O home em chroot do jailkit está em branco.'; +$wb['jailkit_chroot_app_sections_error_empty'] = 'Seções de aplicações no jailkit está em branco.'; +$wb['jailkit_chroot_app_programs_error_empty'] = 'Aplicações no jailkit está em branco.'; +$wb['jailkit_chroot_cron_programs_error_empty'] = 'Tarefas de aplicações no jailkit está em branco.'; +$wb['vlogger_config_dir_error_empty'] = 'Diretório de configuração está em branco.'; +$wb['cron_init_script_error_empty'] = 'Script de inicialização do cron está em branco.'; +$wb['crontab_dir_error_empty'] = 'Caminho para tarefas individuais no cron está em branco.'; +$wb['cron_wget_error_empty'] = 'Caminho do binário wget está em branco.'; +$wb['php_fpm_init_script_txt'] = 'Script de inicialização do php-fpm'; +$wb['php_fpm_init_script_error_empty'] = 'Script de inicialização do php-fpm está em branco.'; +$wb['php_fpm_ini_path_txt'] = 'Caminho do php.ini do php-fpm'; +$wb['php_fpm_ini_path_error_empty'] = 'Caminho do php.ini do php-fpm está em branco.'; +$wb['php_fpm_pool_dir_txt'] = 'Diretório de faixas do php-fpm'; +$wb['php_fpm_pool_dir_error_empty'] = 'Diretório de faixas do php-fpm está em branco.'; +$wb['php_fpm_start_port_txt'] = 'Porta do php-fpm'; +$wb['php_fpm_start_port_error_empty'] = 'Porta do php-fpm está em branco.'; +$wb['php_fpm_socket_dir_txt'] = 'Diretório do socket php-fpm'; +$wb['php_fpm_socket_dir_error_empty'] = 'O diretório do socket php-fpm está em branco.'; +$wb['try_rescue_txt'] = 'Habilitar monitoramento de reiniciar em caso de falha'; +$wb['do_not_try_rescue_httpd_txt'] = 'Desabilitar monitoramento do httpd'; +$wb['do_not_try_rescue_mongodb_txt'] = 'Desabilitar monitoramento do mongodb'; +$wb['do_not_try_rescue_mysql_txt'] = 'Desabilitar monitoramento do mysql'; +$wb['do_not_try_rescue_mail_txt'] = 'Desabilitar monitoramento de e-mail'; +$wb['rescue_description_txt'] = '<b>Informação:</b> Se o serviço mysql for desligado e estiver selecionado "Desabilitar monitoramento do mysql" aguarde entre 2 e 3 minutos sem abandonar a aba. <br>Se não aguardar o sistema de recuperação de falhas tentará reiniciar o mysql!'; $wb['enable_sni_txt'] = 'Habilitar SNI'; -$wb['do_not_try_rescue_httpd_txt'] = 'Desabilitar monitoramento do HTTPD'; -$wb['set_folder_permissions_on_update_txt'] = 'Configurar permissões de pasta na atualização'; -$wb['add_web_users_to_sshusers_group_txt'] = 'Adicionar usuários de site (web) para grupo -sshusers-'; -$wb['connect_userid_to_webid_txt'] = 'Mapear userID Linux para webID'; -$wb['connect_userid_to_webid_start_txt'] = 'Iniciar ID para userID/webID se conectar'; -$wb['website_autoalias_txt'] = 'Auto apelido (alias) para sites'; -$wb['website_autoalias_note_txt'] = 'Ãrea reservada:'; -$wb['backup_mode_txt'] = 'Modo do backup'; -$wb['backup_mode_userzip'] = 'Arquivos de backup com propriedade do usuário web e compactados como zip'; -$wb['backup_mode_rootgz'] = 'Todos os arquivos no diretório web com proprietário root'; -$wb['realtime_blackhole_list_txt'] = 'RBL em tempo real'; -$wb['realtime_blackhole_list_note_txt'] = '(Separar RBL\'s por vÃrgulas)'; +$wb['set_folder_permissions_on_update_txt'] = 'Configurar permissões de pasta quando atualizar'; +$wb['add_web_users_to_sshusers_group_txt'] = 'Adicionar novos usuários web para o grupo ssh'; +$wb['connect_userid_to_webid_txt'] = 'Conectar o UID do usuário no sistema para webID'; +$wb['connect_userid_to_webid_start_txt'] = 'Conexão do ID inicial do usuário com o webID'; +$wb['realtime_blackhole_list_txt'] = 'Lista RBL em tempo real'; +$wb['realtime_blackhole_list_note_txt'] = '(separar as RBLs com vÃrgulas)'; $wb['ssl_settings_txt'] = 'Configurações SSL'; $wb['permissions_txt'] = 'Permissões'; -$wb['php_settings_txt'] = 'Configurações PHP'; -$wb['apps_vhost_settings_txt'] = 'Configurações apps-vhost'; -$wb['awstats_settings_txt'] = 'Configurações awstats'; +$wb['php_settings_txt'] = 'Configurações php'; +$wb['apps_vhost_settings_txt'] = 'Configurações de apps vhost'; +$wb['awstats_settings_txt'] = 'Configurações do awstats'; $wb['firewall_txt'] = 'Firewall'; -$wb['mailbox_quota_stats_txt'] = 'EstatÃsticas de cota das contas de e-mail'; -$wb['enable_ip_wildcard_txt'] = 'Habilitar curingas (*) para IP'; +$wb['mailbox_quota_stats_txt'] = 'EstatÃsticas das cotas das contas de e-mail'; +$wb['enable_ip_wildcard_txt'] = 'Habilitar curingas de IP (*)'; $wb['web_folder_protection_txt'] = 'Tornar pastas web imutáveis (atributos estendidos)'; -$wb['overtraffic_notify_admin_txt'] = 'Enviar notificação de cota de tráfego excedida para o administrador'; -$wb['overtraffic_notify_client_txt'] = 'Enviar notificação de cota de tráfego excedida para o cliente'; -$wb['rbl_error_regex'] = 'Por favor, insira um nome de servidor válido para RBL.'; -$wb['overquota_notify_admin_txt'] = 'Enviar alertas de cota para o administrador'; -$wb['overquota_notify_client_txt'] = 'Enviar alertas de cota para o cliente'; -$wb['overquota_notify_onok_txt'] = 'Enviar mensagem de cota OK para o cliente'; -$wb['overquota_notify_freq_txt'] = 'Enviar alertas de cota a cada N dias'; -$wb['overquota_notify_freq_note_txt'] = '0 = enviar mensagem apenas uma vez, não repetir'; -$wb['admin_notify_events_txt'] = 'Enviar e-mail para o admin quando iniciando com o seguinte nÃvel'; -$wb['no_notifications_txt'] = 'Sem Notificações'; -$wb['monit_url_txt'] = 'URL do Monit'; -$wb['monit_user_txt'] = 'Usuário do Monit'; -$wb['monit_password_txt'] = 'Senha do Monit'; -$wb['monit_url_error_regex'] = 'URL do Monit inválida.'; +$wb['overtraffic_notify_admin_txt'] = 'Enviar notificação de tráfego excedido para o administrador'; +$wb['overtraffic_notify_client_txt'] = 'Enviar notificação de tráfego excedido para o cliente'; +$wb['rbl_error_regex'] = 'Por favor, nomes de host válidos para RBLs.'; +$wb['overquota_notify_admin_txt'] = 'Enviar alerta da cota para o administrador'; +$wb['overquota_notify_client_txt'] = 'Enviar alerta da cota para o cliente'; +$wb['overquota_notify_onok_txt'] = 'Enviar mensagem da cota para o cliente'; +$wb['overquota_notify_freq_txt'] = 'Enviar alerta da cota a cada X dias'; +$wb['overquota_notify_freq_note_txt'] = '0 = enviar mensagem apenas uma vez, sem repetir'; +$wb['admin_notify_events_txt'] = 'Enviar e-mail para o administrador iniciando com o seguinte nÃvel'; +$wb['no_notifications_txt'] = 'Sem notificações'; +$wb['monit_url_txt'] = 'URL de monitoramento do monit'; +$wb['monit_user_txt'] = 'Usuário do monit'; +$wb['monit_password_txt'] = 'Senha do monit'; +$wb['monit_url_error_regex'] = 'URL do monit é inválida'; $wb['monit_url_note_txt'] = 'Ãrea reservada:'; -$wb['munin_url_txt'] = 'URL do Munin'; -$wb['munin_user_txt'] = 'Usuário do Munin'; -$wb['munin_password_txt'] = 'Senha do Munin'; -$wb['munin_url_error_regex'] = 'URL do Munin inválida.'; +$wb['munin_url_txt'] = 'URL do munin'; +$wb['munin_user_txt'] = 'Usuário do munin'; +$wb['munin_password_txt'] = 'Senda do munin'; +$wb['munin_url_error_regex'] = 'URL do munin e inválida'; $wb['munin_url_note_txt'] = 'Ãrea reservada:'; -$wb['dkim_path_txt'] = 'Caminho do DKIM'; -$wb['backup_delete_txt'] = 'Remover backups do domÃnio/site'; $wb['v6_prefix_txt'] = 'Prefixo IPv6'; -$wb['vhost_rewrite_v6_txt'] = 'Reescrever prefixo IPv6 no espelho'; -$wb['v6_prefix_length'] = 'Prefixo longo definido de acordo com IPv6'; -$wb['backup_dir_is_mount_txt'] = 'Diretório de backup está montado?'; -$wb['monitor_system_updates_txt'] = 'Verificar por atualizações Linux'; -$wb['hostname_error_regex'] = 'Nome do servidor é inválido.'; -$wb['invalid_apache_user_txt'] = 'Usuário do Apache é inválido.'; -$wb['invalid_apache_group_txt'] = 'Grupo do Apache é inválido.'; +$wb['vhost_rewrite_v6_txt'] = 'Reescrever IPv6 no espelho'; +$wb['v6_prefix_length'] = 'O prefixo é muito longo de acordo com as definições IPv6.'; +$wb['backup_dir_is_mount_txt'] = 'O diretório de backup está montando?'; +$wb['backup_dir_mount_cmd_txt'] = 'Comando mount, se o diretório não está montado'; +$wb['backup_delete_txt'] = 'Remover backups de domÃnios/site'; +$wb['overquota_db_notify_admin_txt'] = 'Enviar alerta da cota do banco de dados para o administrador'; +$wb['overquota_db_notify_client_txt'] = 'Enviar alerta da cota do banco de dados para o cliente'; +$wb['monitor_system_updates_txt'] = 'Verificar por atualizações do sistema'; +$wb['php_handler_txt'] = 'Manipulador padrão do php'; +$wb['php_fpm_incron_reload_txt'] = 'Instale o arquivo de disparo do incron para recarregar o php-fpm.'; +$wb['disabled_txt'] = 'Desabilitado'; +$wb['dkim_strength_txt'] = 'Dificuldade do DKIM'; +$wb['monitor_system_updates_txt'] = 'Verificar por atualizações do sistema'; +$wb['invalid_apache_user_txt'] = 'Usuário do apache é inválido.'; +$wb['invalid_apache_group_txt'] = 'Grupo do apache é inválido.'; $wb['backup_dir_error_regex'] = 'Diretório de backup é inválido.'; -$wb['maildir_path_error_regex'] = 'Caminho do Maildir é inválido.'; -$wb['homedir_path_error_regex'] = 'Caminho do Home é inválido.'; -$wb['mailuser_name_error_regex'] = 'Nome do Mailuser é inválido.'; -$wb['mailuser_group_name_error_regex'] = 'Grupo do Mailuser é inválido.'; -$wb['mailuser_uid_error_range'] = 'A UID do Mailuser deve ser >= 2000'; -$wb['mailuser_gid_error_range'] = 'A GID do Mailuser deve ser >= 2000'; -$wb['getmail_config_dir_error_regex'] = 'Configuração do diretório do getmail inválida.'; -$wb['website_basedir_error_regex'] = 'Diretório base (basedir) para sites é inválido.'; -$wb['website_symlinks_error_regex'] = 'Links simbólicos para sites é inválido.'; -$wb['vhost_conf_dir_error_regex'] = 'Diretório de configurações para vhost é inválido.'; -$wb['vhost_conf_enabled_dir_error_regex'] = 'Diretório de configurações para vhost habilitado é inválido.'; +$wb['maildir_path_error_regex'] = 'Caminho do maildir é inválido.'; +$wb['homedir_path_error_regex'] = 'Caminho do homedir é inválido.'; +$wb['mailuser_name_error_regex'] = 'Caminho do mailuser é inválido.'; +$wb['mailuser_group_name_error_regex'] = 'Grupo do mailuser é inválido.'; +$wb['mailuser_uid_error_range'] = 'A UID do mailuser deve ser >= 2000.'; +$wb['mailuser_gid_error_range'] = 'A GID do mailuser deve ser >= 2000.'; +$wb['getmail_config_dir_error_regex'] = 'Diretório de configurações do getmail é inválido.'; +$wb['website_basedir_error_regex'] = 'Caminho do basedir para sites é inválido. Comprimento mÃnimo 5 caracteres.'; +$wb['website_symlinks_error_regex'] = 'Links simbólicos para site são inválidos.'; +$wb['vhost_conf_dir_error_regex'] = 'Diretório de configurações vhost é inválido.'; +$wb['vhost_conf_enabled_dir_error_regex'] = 'Diretório de configuração vhost habilitado é inválido.'; $wb['nginx_vhost_conf_dir_error_regex'] = 'Diretório de configurações do nginx é inválido.'; -$wb['nginx_vhost_conf_enabled_dir_error_regex'] = 'Diretório de configurações nginx habilitado é inválido.'; -$wb['ca_path_error_regex'] = 'Caminho do CA é inválido.'; +$wb['nginx_vhost_conf_enabled_dir_error_regex'] = 'Diretório de configurações do nginx habilitado é inválido.'; +$wb['ca_path_error_regex'] = 'Caminho da CA é inválido.'; $wb['invalid_nginx_user_txt'] = 'Usuário do nginx é inválido.'; $wb['invalid_nginx_group_txt'] = 'Grupo do nginx é inválido.'; -$wb['php_ini_path_apache_error_regex'] = 'Caminho do php.ini apache é inválido.'; -$wb['php_ini_path_cgi_error_regex'] = 'Caminho do php.ini CGI é inválido.'; -$wb['php_fpm_init_script_error_regex'] = 'Caminho do script de inicialização do PHP-FPM é inválido.'; -$wb['php_fpm_ini_path_error_regex'] = 'Caminho do php.ini PHP-FPM é inválido.'; -$wb['php_fpm_pool_dir_error_regex'] = 'Diretório de faixas (pool) PHP-FPM é inválido.'; -$wb['php_fpm_socket_dir_error_regex'] = 'Diretório do sqouete PHP-FPM é inválido.'; -$wb['php_open_basedir_error_regex'] = 'Diretório base (open_basedir) PHP é inválido.'; -$wb['awstats_data_dir_empty'] = 'Diretório de dados do awstats está em branco.'; -$wb['awstats_data_dir_error_regex'] = 'Diretório de dados do do awstats é inválido.'; -$wb['awstats_pl_empty'] = 'Configuração do script awstats.pl está em branco.'; -$wb['awstats_pl_error_regex'] = 'Caminho do script awstats.pl é inválido.'; -$wb['awstats_buildstaticpages_pl_empty'] = 'Script awstats_buildstaticpages.pl está em branco.'; -$wb['awstats_buildstaticpages_pl_error_regex'] = 'Camindho do script awstats_buildstaticpages.pl é inválido.'; -$wb['invalid_bind_user_txt'] = 'Usuário bind é inválido.'; -$wb['invalid_bind_group_txt'] = 'Grupo bind é inválido.'; -$wb['bind_zonefiles_dir_error_regex'] = 'Diretório de zonas do bind é inválido.'; -$wb['named_conf_path_error_regex'] = 'Caminho do named.conf é inválido.'; -$wb['named_conf_local_path_error_regex'] = 'Caminho do named.conf.local é inválido.'; -$wb['fastcgi_starter_path_error_regex'] = 'Caminho do scritp de inicialização FASTCGI é inválido.'; -$wb['fastcgi_starter_script_error_regex'] = 'Script de inicizalização FASTCGI é inválido.'; -$wb['fastcgi_alias_error_regex'] = 'Apelido (alias) do FASTCGI é inválido.'; -$wb['fastcgi_phpini_path_error_regex'] = 'Caminho do FASTCGI é inválido.'; -$wb['fastcgi_bin_error_regex'] = 'Binário do FASTCGI é inválido.'; -$wb['jailkit_chroot_home_error_regex'] = 'Raiz do chroot jailkit inválida.'; -$wb['jailkit_chroot_app_sections_error_regex'] = 'Aplicações no jailkit chroot (sessões) são inválidas.'; -$wb['jailkit_chroot_app_programs_error_regex'] = 'Aplicações no jailkit em ambiente chroot são inválidas.'; -$wb['jailkit_chroot_cron_programs_error_regex'] = 'Programas no cron em ambiente chroot jailkit são inválidos.'; -$wb['vlogger_config_dir_error_regex'] = 'Diretório de configuração do vlogger é inválido.'; -$wb['cron_init_script_error_regex'] = 'Script de inicialização do Cron é inválido.'; -$wb['crontab_dir_error_regex'] = 'Diretório para tabelas de tarefas individuais no cron é inválido.'; -$wb['cron_wget_error_regex'] = 'Caminho do wget para cron é inválido.'; +$wb['php_ini_path_apache_error_regex'] = 'Caminho do php.ini do apache é inválido.'; +$wb['php_ini_path_cgi_error_regex'] = 'Caminho do php.ini do cgi é inválido.'; +$wb['php_fpm_init_script_error_regex'] = 'Script de inicialização do php-fpm é inválido.'; +$wb['php_fpm_ini_path_error_regex'] = 'Caminho de inicialização do php-fpm é inválido.'; +$wb['php_fpm_pool_dir_error_regex'] = 'Caminho do diretório de faixas do php-fpm é inválido.'; +$wb['php_fpm_socket_dir_error_regex'] = 'Caminho do diretório de socket do php-fpm é inválido.'; +$wb['php_open_basedir_error_regex'] = 'Caminho do open_basedir do php é inválido.'; +$wb['awstats_data_dir_empty'] = 'O diretório de dados do awstats está em branco.'; +$wb['awstats_data_dir_error_regex'] = 'O diretório de dados do awstats é inválido.'; +$wb['awstats_pl_empty'] = 'A configuração do awstats.pl está em branco.'; +$wb['awstats_pl_error_regex'] = 'O caminho do awstats.pl é inválido.'; +$wb['awstats_buildstaticpages_pl_empty'] = 'O awstats_buildstaticpages.pl está em branco'; +$wb['awstats_buildstaticpages_pl_error_regex'] = 'O caminho do awstats_buildstaticpages.pl é inválido.'; +$wb['invalid_bind_user_txt'] = 'O usuário do bind é inválido.'; +$wb['invalid_bind_group_txt'] = 'O grupo do bind é inválido.'; +$wb['bind_zonefiles_dir_error_regex'] = 'O diretório de zonas do bind é inválido.'; +$wb['named_conf_path_error_regex'] = 'O caminho do named.conf é inválido.'; +$wb['named_conf_local_path_error_regex'] = 'O caminho do named.conf.local é inválido.'; +$wb['fastcgi_starter_path_error_regex'] = 'O caminho do script de inicialização do fastcgi é inválido.'; +$wb['fastcgi_starter_script_error_regex'] = 'O script de inicialização do fastcgi é inválido.'; +$wb['fastcgi_alias_error_regex'] = 'O alias do fastcgi é inválido.'; +$wb['fastcgi_phpini_path_error_regex'] = 'O caminho do fastcgi é inválido.'; +$wb['fastcgi_bin_error_regex'] = 'O binário do fastcgi é inválido.'; +$wb['jailkit_chroot_home_error_regex'] = 'O diretório home em chroot do jailkit é inválido.'; +$wb['jailkit_chroot_app_sections_error_regex'] = 'As seções de aplicações no jaikit são inválidas.'; +$wb['jailkit_chroot_app_programs_error_regex'] = 'As aplicações em chroot no jailkit são inválidas.'; +$wb['jailkit_chroot_cron_programs_error_regex'] = 'As tarefas de aplicações em chroot no jailkit são inválidas.'; +$wb['vlogger_config_dir_error_regex'] = 'Diretório de configurações do vlogger é inválido.'; +$wb['cron_init_script_error_regex'] = 'Script de inicialização do cron é inválido.'; +$wb['crontab_dir_error_regex'] = 'Diretório do cron é inválido.'; +$wb['cron_wget_error_regex'] = 'Caminho do wget no cron é inválido.'; $wb['network_filesystem_txt'] = 'Sistema de arquivos de rede'; -$wb['disable_bind_log_txt'] = 'Desabilitar mensagens de alerta no log para bind9.'; -$wb['apps_vhost_enabled_txt'] = 'Habilitar apps-vhost'; -$wb['do_not_try_rescue_mongodb_txt'] = 'Desabilitar monitoramento do MongoDB'; -$wb['backup_dir_mount_cmd_txt'] = 'Usar o comando mount, se o diretório de backups não estiver montado'; -$wb['overquota_db_notify_admin_txt'] = 'Enviar mensagens de alerta de cota do banco de dados para o administrador'; -$wb['overquota_db_notify_client_txt'] = 'Enviar mensagens de alerta de cota do banco de dados para o cliente'; -$wb['php_handler_txt'] = 'Manipulador padrão PHP'; -$wb['php_fpm_incron_reload_txt'] = 'Install incron trigger file to reload PHP-FPM'; -$wb['disabled_txt'] = 'Desabilitado'; -$wb['dkim_strength_txt'] = 'Dificuldade do DKIM'; -$wb['php_ini_check_minutes_txt'] = 'Verificar modificações do php.ini a cada N minutos'; -$wb['php_ini_check_minutes_error_empty'] = 'Por favor, insira um valor de quantas vezes o php.ini deve ser verificado por modificações.'; -$wb['php_ini_check_minutes_info_txt'] = '0 = sem verificação'; +$wb['php_ini_check_minutes_txt'] = 'Verificar alterações no php.ini a cada X minutos'; +$wb['php_ini_check_minutes_error_empty'] = 'Por favor, insira um valor para verificação de alterações no php.ini.'; +$wb['php_ini_check_minutes_info_txt'] = '0 = sem verificações'; $wb['enable_spdy_txt'] = 'Tornar SPDY/HTTP2 disponÃvel'; -$wb['web_settings_txt'] = 'Servidor de páginas'; -$wb['xmpp_server_txt'] = 'Servidor XMPP'; +$wb['web_settings_txt'] = 'Servidor web'; +$wb['xmpp_server_txt'] = 'Servidor xmpp'; $wb['xmpp_use_ipv6_txt'] = 'Usar IPv6'; -$wb['xmpp_bosh_max_inactivity_txt'] = 'O limite de tempo para falta de atividade BOSH'; -$wb['xmpp_bosh_timeout_range_wrong'] = 'Por favor, insira uma faixa de tempo - entre 15 e 360 - para verificar falta de atividade BOSH.'; -$wb['xmpp_module_saslauth'] = 'saslauth'; +$wb['xmpp_bosh_max_inactivity_txt'] = 'Tempo de inatividade do BOSH'; +$wb['xmpp_bosh_timeout_range_wrong'] = 'Por favor, insira um valor para o timeout do bosh entre 15 e 360.'; +$wb['xmpp_module_saslauth'] = 'Autenticação SASL'; $wb['xmpp_server_admins_txt'] = 'Administradores do servidor (JIDs)'; -$wb['xmpp_modules_enabled_txt'] = 'Habilitar plugins no lado servidor (um por linha)'; +$wb['xmpp_modules_enabled_txt'] = 'Plugins habilitados no servidor (um por linha)'; $wb['xmpp_ports_txt'] = 'Portas dos componentes'; -$wb['xmpp_port_http_txt'] = 'HTTP'; -$wb['xmpp_port_https_txt'] = 'HTTPS'; +$wb['xmpp_port_http_txt'] = 'http'; +$wb['xmpp_port_https_txt'] = 'https'; $wb['xmpp_port_pastebin_txt'] = 'Pastebin'; $wb['xmpp_port_bosh_txt'] = 'BOSH'; -$wb['backup_time_txt'] = 'Hora do backup'; +$wb['disable_bind_log_txt'] = 'Desabilitar mensagens de alerta do bind9'; +$wb['apps_vhost_enabled_txt'] = 'Habilitar apps-vhost'; $wb['skip_le_check_txt'] = 'Ignorar verificação do Lets Encrypt'; -$wb['migration_mode_txt'] = 'Habilitar modo de migração do servidor'; -$wb['nginx_enable_pagespeed_txt'] = 'Makes Pagespeed available'; -$wb['backup_tmp_txt'] = 'Backup tmp directory for zip'; -$wb['tmpdir_path_error_empty'] = 'tmp-dir Path is empty.'; -$wb['tmpdir_path_error_regex'] = 'Invalid tmp-dir path.'; -$wb['logging_txt'] = 'Store website access and error logs'; -$wb['logging_desc_txt'] = 'Use Tools > Resync to apply changes to existing sites. For Apache, access and error log can be anonymized. For nginx, only the access log is anonymized, the error log will contain IP addresses.'; -$wb['log_retention_txt'] = 'Log retention (days)'; -$wb['log_retention_error_ispositive'] = 'Log retention must be a number > 0'; -$wb['php_default_name_txt'] = 'Description Default PHP-Version'; -$wb['error_mailbox_message_size_txt'] = 'Mailbox size must be larger or equal to message size'; -$wb['php_default_name_error_empty'] = 'Description Default PHP-Version must not be empty'; -$wb['php_fpm_reload_mode_txt'] = 'PHP-FPM reload mode'; -$wb['content_filter_txt'] = 'Content Filter'; -$wb['rspamd_url_txt'] = 'Rspamd URL'; -$wb['rspamd_user_txt'] = 'Rspamd User'; -$wb['rspamd_password_txt'] = 'Rspamd Password'; -?> +$wb['migration_mode_txt'] = 'Modo migração de servidor'; +$wb['nginx_enable_pagespeed_txt'] = 'Tornar pagespeed disponÃvel'; +$wb['logging_txt'] = 'Gravar logs de acesso e erros de sites'; +$wb['logging_desc_txt'] = 'Usar Ferramentas > Sicronizar para aplicar mudanças em sites existentes. Para o Apache, os logs de acesso e erros podem ser anonimizados. Para o nginx, apenas o log de acesso é anonimizado, o log de erros conterá endereços IP.'; +$wb['log_retention_txt'] = 'Tempo de retenção do log (dias)'; +$wb['log_retention_error_ispositive'] = 'O tempo de retenção do log deve ser um número > 0.'; +$wb['php_default_name_txt'] = 'Descrição da versão padrão do php'; +$wb['php_default_name_error_empty'] = 'A descrição da versão padrão do php está em branco.'; +$wb['error_mailbox_message_size_txt'] = 'O tamanho da cota da conta de e-mail deve ser maior ou igual o tamanho da cota de mensagens.'; +$wb['php_fpm_reload_mode_txt'] = 'Modo da recarga do php-fpm'; +$wb['content_filter_txt'] = 'Filtro de conteúdo'; +$wb['rspamd_url_txt'] = 'URL do rspamd'; +$wb['rspamd_user_txt'] = 'Usuário do rspamd'; +$wb['rspamd_password_txt'] = 'Senha do rspamd'; diff --git a/interface/web/admin/lib/lang/br_server_ip.lng b/interface/web/admin/lib/lang/br_server_ip.lng index b921578940..b9bbd47949 100644 --- a/interface/web/admin/lib/lang/br_server_ip.lng +++ b/interface/web/admin/lib/lang/br_server_ip.lng @@ -1,11 +1,11 @@ <?php $wb['server_id_txt'] = 'Servidor'; -$wb['ip_address_txt'] = 'Endereço IP'; -$wb['virtualhost_txt'] = 'Nome do virtualHost http'; -$wb['ip_error_wrong'] = 'Endereço IP inválido!'; -$wb['ip_error_unique'] = 'O endereço IP deve ser exclusivo.'; $wb['client_id_txt'] = 'Cliente'; $wb['ip_type_txt'] = 'Tipo'; -$wb['virtualhost_port_txt'] = 'Portas http'; -$wb['error_port_syntax'] = 'Caracteres inválidos no campo -portas http-, insira somente números separados por vÃrgula. Exemplo: 80,443'; +$wb['ip_address_txt'] = 'Endereço IP'; +$wb['virtualhost_txt'] = 'Nome do vhost http'; +$wb['virtualhost_port_txt'] = 'Porta http'; +$wb['ip_error_wrong'] = 'O endereço IP é inválido.'; +$wb['ip_error_unique'] = 'O endereço IP deve ser exclusivo.'; +$wb['error_port_syntax'] = 'Caracteres inválidos para porta http, por favor, insira apenas uma porta ou separe portas por vÃrgula. Exemplo: 80,443.'; ?> diff --git a/interface/web/admin/lib/lang/br_server_ip_list.lng b/interface/web/admin/lib/lang/br_server_ip_list.lng index c7b22097bf..0ae892af87 100644 --- a/interface/web/admin/lib/lang/br_server_ip_list.lng +++ b/interface/web/admin/lib/lang/br_server_ip_list.lng @@ -1,10 +1,10 @@ <?php $wb['list_head_txt'] = 'Endereço IP'; $wb['server_id_txt'] = 'Servidor'; +$wb['client_id_txt'] = 'Cliente'; $wb['ip_address_txt'] = 'Endereço IP'; $wb['add_new_record_txt'] = 'Adicionar novo endereço IP'; -$wb['client_id_txt'] = 'Cliente'; -$wb['virtualhost_txt'] = 'Vhost http'; +$wb['virtualhost_txt'] = 'Virtual host http'; $wb['virtualhost_port_txt'] = 'Portas http'; $wb['ip_type_txt'] = 'Tipo'; ?> diff --git a/interface/web/admin/lib/lang/br_server_ip_map.lng b/interface/web/admin/lib/lang/br_server_ip_map.lng index 44b7648277..81a2bb4b96 100644 --- a/interface/web/admin/lib/lang/br_server_ip_map.lng +++ b/interface/web/admin/lib/lang/br_server_ip_map.lng @@ -1,12 +1,12 @@ <?php -$wb['server_id_txt'] = 'Servidor'; +$wb['server_id_txt'] = 'Servidor para mapeamento IP'; $wb['source_txt'] = 'Endereço IP de origem'; $wb['destination_txt'] = 'Endereço IP de destino'; $wb['active_txt'] = 'Ativo'; -$wb['ip_error_wrong'] = 'Endereço IP é inválido.'; -$wb['destination_ip_empty'] = 'Endereço IP de destino está em branco.'; -$wb['source_ip_empty'] = 'Endereço IP de origem está em branco.'; -$wb['server_empty_error'] = 'Servidor está em branco.'; -$wb['duplicate_mapping_error'] = 'Mapeamento já existe.'; -$wb['ip_mapping_error'] = 'Endereço IP de origem não pode ser um endereço IP do servidor.'; +$wb['ip_error_wrong'] = 'O endereço IP de destino é inválido.'; +$wb['destination_ip_empty'] = 'O endereço IP de destino está em branco.'; +$wb['source_ip_empty'] = 'O endereço IP de origem está em branco.'; +$wb['server_empty_error'] = 'O servidor está em branco.'; +$wb['duplicate_mapping_error'] = 'Este mapeamento IP já existe.'; +$wb['ip_mapping_error'] = 'Endereço IP de origem não pode ser o mesmo IP do servidor para o mapeamento.'; ?> diff --git a/interface/web/admin/lib/lang/br_server_ip_map_list.lng b/interface/web/admin/lib/lang/br_server_ip_map_list.lng index f5682f31ac..8cb0a1e20f 100644 --- a/interface/web/admin/lib/lang/br_server_ip_map_list.lng +++ b/interface/web/admin/lib/lang/br_server_ip_map_list.lng @@ -1,7 +1,7 @@ <?php -$wb['list_head_txt'] = 'Mapeamento IPv4 - servidor web'; +$wb['list_head_txt'] = 'Mapeamento IPv4'; $wb['server_id_txt'] = 'Servidor'; -$wb['source_ip_txt'] = 'IP de origem'; -$wb['destination_ip_txt'] = 'IP de destino'; +$wb['source_ip_txt'] = 'Endereço de origem'; +$wb['destination_ip_txt'] = 'Endereço de destino'; $wb['active_txt'] = 'Ativo'; ?> diff --git a/interface/web/admin/lib/lang/br_server_list.lng b/interface/web/admin/lib/lang/br_server_list.lng index b4a1fcafc6..ae3bb52810 100644 --- a/interface/web/admin/lib/lang/br_server_list.lng +++ b/interface/web/admin/lib/lang/br_server_list.lng @@ -1,14 +1,14 @@ <?php $wb['list_head_txt'] = 'Servidor'; $wb['server_name_txt'] = 'Nome'; -$wb['mail_server_txt'] = 'e-Mails'; -$wb['web_server_txt'] = 'Sites'; +$wb['mail_server_txt'] = 'E-MAIL'; +$wb['web_server_txt'] = 'SITES'; $wb['dns_server_txt'] = 'DNS'; $wb['file_server_txt'] = 'FTP'; $wb['db_server_txt'] = 'BD'; $wb['vserver_server_txt'] = 'VPS'; -$wb['add_new_record_txt'] = 'Adicionar novo servidor'; $wb['proxy_server_txt'] = 'Proxy'; $wb['firewall_server_txt'] = 'Firewall'; +$wb['add_new_record_txt'] = 'Adicionar novo servidor'; $wb['xmpp_server_txt'] = 'XMPP'; ?> diff --git a/interface/web/admin/lib/lang/br_server_php.lng b/interface/web/admin/lib/lang/br_server_php.lng index 459b4d9e0c..377763ce45 100644 --- a/interface/web/admin/lib/lang/br_server_php.lng +++ b/interface/web/admin/lib/lang/br_server_php.lng @@ -1,17 +1,17 @@ <?php $wb['server_id_txt'] = 'Servidor'; $wb['client_id_txt'] = 'Cliente'; -$wb['name_txt'] = 'Nome do php'; +$wb['name_txt'] = 'Nome da versão do php'; $wb['Name'] = 'Nome'; $wb['FastCGI Settings'] = 'Configurações FastCGI'; $wb['PHP-FPM Settings'] = 'Configurações PHP-FPM'; $wb['Additional PHP Versions'] = 'Versões adicionais do php'; -$wb['Form to edit additional PHP versions'] = 'Formulário de edição de versões adicionais do php'; -$wb['server_php_name_error_empty'] = 'Nome está em branco.'; -$wb['php_fastcgi_binary_txt'] = 'Caminho do binário FastCGI'; -$wb['php_fastcgi_ini_dir_txt'] = 'Caminho do diretório do php.ini'; -$wb['php_fpm_init_script_txt'] = 'Caminho do script de inicialização do PHP-FPM'; +$wb['Form to edit additional PHP versions'] = 'Editar verões adicionais do php'; +$wb['server_php_name_error_empty'] = 'O campo nome está em branco.'; +$wb['php_fastcgi_binary_txt'] = 'Caminho do binário do FastCGI'; +$wb['php_fastcgi_ini_dir_txt'] = 'Diretório do php.ini'; +$wb['php_fpm_init_script_txt'] = 'Caminho do script de inicialização do php-fpm'; $wb['php_fpm_ini_dir_txt'] = 'Caminho do diretório do php.ini'; -$wb['php_fpm_pool_dir_txt'] = 'Caminho do diretório de faixas (pool) do PHP-FPM'; -$wb['active_txt'] = 'Active'; +$wb['php_fpm_pool_dir_txt'] = 'Caminho do diretório pool do php-fpm'; +$wb['active_txt'] = 'Ativo'; ?> diff --git a/interface/web/admin/lib/lang/br_server_php_list.lng b/interface/web/admin/lib/lang/br_server_php_list.lng index 88f1e38d21..38ebdd3568 100644 --- a/interface/web/admin/lib/lang/br_server_php_list.lng +++ b/interface/web/admin/lib/lang/br_server_php_list.lng @@ -3,6 +3,6 @@ $wb['list_head_txt'] = 'Versões adicionais do php'; $wb['server_id_txt'] = 'Servidor'; $wb['add_new_record_txt'] = 'Adicionar nova versão do php'; $wb['client_id_txt'] = 'Cliente'; -$wb['name_txt'] = 'Nome da versão do php'; -$wb['active_txt'] = 'Active'; +$wb['name_txt'] = 'Nome da versão'; +$wb['active_txt'] = 'Ativo'; ?> diff --git a/interface/web/admin/lib/lang/br_software_package_list.lng b/interface/web/admin/lib/lang/br_software_package_list.lng index 093f52bca3..de62e3d305 100644 --- a/interface/web/admin/lib/lang/br_software_package_list.lng +++ b/interface/web/admin/lib/lang/br_software_package_list.lng @@ -1,13 +1,13 @@ <?php -$wb['list_head_txt'] = 'Pacotes de software'; +$wb['list_head_txt'] = 'Pacotes de APPs e complementos'; $wb['installed_txt'] = 'Estado'; $wb['package_title_txt'] = 'Pacote'; $wb['package_description_txt'] = 'Descrição'; -$wb['action_txt'] = 'Acão'; +$wb['action_txt'] = 'Ação'; $wb['toolsarea_head_txt'] = 'Pacotes'; $wb['repoupdate_txt'] = 'Atualizar lista de pacotes'; -$wb['package_id_txt'] = 'ID local do app'; -$wb['no_packages_txt'] = 'Nenhum pacote disponÃvel'; +$wb['package_id_txt'] = 'ID local do APP'; +$wb['no_packages_txt'] = 'Nenhum pacote disponÃvel.'; $wb['edit_txt'] = 'Editar'; $wb['delete_txt'] = 'Remover'; ?> diff --git a/interface/web/admin/lib/lang/br_software_repo.lng b/interface/web/admin/lib/lang/br_software_repo.lng index b535850138..dbc14e2032 100644 --- a/interface/web/admin/lib/lang/br_software_repo.lng +++ b/interface/web/admin/lib/lang/br_software_repo.lng @@ -4,5 +4,5 @@ $wb['repo_url_txt'] = 'URL'; $wb['repo_username_txt'] = 'Usuário (opcional)'; $wb['repo_password_txt'] = 'Senha (opcional)'; $wb['active_txt'] = 'Ativo'; -$wb['Software Repository which may contain addons or updates'] = 'Repositório de softwares podem conter complementos ou atualizações'; +$wb['Software Repository which may contain addons or updates'] = 'Repositório de software pode conter complementos ou atualizações'; ?> diff --git a/interface/web/admin/lib/lang/br_software_update_list.lng b/interface/web/admin/lib/lang/br_software_update_list.lng index 0592ca7f26..0dff3a245c 100644 --- a/interface/web/admin/lib/lang/br_software_update_list.lng +++ b/interface/web/admin/lib/lang/br_software_update_list.lng @@ -1,9 +1,9 @@ <?php -$wb['list_head_txt'] = 'Atualizações de programas'; -$wb['server_select_txt'] = 'Selecione o servidor'; -$wb['installed_txt'] = 'Ações'; +$wb['list_head_txt'] = 'Atualizações de Software'; +$wb['server_select_txt'] = 'Selecionar o servidor'; +$wb['installed_txt'] = 'Ação'; $wb['update_title_txt'] = 'Atualizar'; $wb['version_txt'] = 'Versão'; $wb['action_txt'] = 'Ação'; -$wb['no_updates_txt'] = 'Nenhuma atualização disponÃvel'; +$wb['no_updates_txt'] = 'Nenhuma atualização disponÃvel.'; ?> diff --git a/interface/web/admin/lib/lang/br_system_config.lng b/interface/web/admin/lib/lang/br_system_config.lng index 8688ca53aa..98bd4c9614 100644 --- a/interface/web/admin/lib/lang/br_system_config.lng +++ b/interface/web/admin/lib/lang/br_system_config.lng @@ -1,58 +1,58 @@ <?php -$wb['system_config_desc_txt'] = ''; +$wb['system_config_desc_txt'] = 'Configurações do Sistema'; +$wb['smtp_missing_admin_mail_txt'] = 'Por favor, insira um nome e e-mail do administrador se você usar smtp para envio dos e-mails do sistema.'; +$wb['dashboard_atom_url_admin_txt'] = 'URL do Dashboard atom (admin)'; +$wb['dashboard_atom_url_reseller_txt'] = 'URL do Dashboard atom (revendas)'; +$wb['dashboard_atom_url_client_txt'] = 'URL do Dashboard atom (clientes)'; $wb['warning'] = 'Edite estes valores com cuidado! Não remova os prefixos em um sistema com mais de um cliente!'; -$wb['dbname_prefix_txt'] = 'Prefixo do banco de dados'; -$wb['dbuser_prefix_txt'] = 'Prefixo do usuário do banco de dados'; -$wb['shelluser_prefix_txt'] = 'Prefixo do usuário shell'; -$wb['ftpuser_prefix_txt'] = 'Prefixo do usuário ftp'; -$wb['dbname_prefix_error_regex'] = 'Caractere não permitido para o prefixo do banco de dados!'; -$wb['dbuser_prefix_error_regex'] = 'Caractere não permitido para o prefixo do usuário do banco de dados!'; -$wb['ftpuser_prefix_error_regex'] = 'Caractere não permitido para o prefixo do usuário ftp!'; -$wb['shelluser_prefix_error_regex'] = 'Caractere não permitido para o prefixo do usuário shell!'; +$wb['tab_change_discard_txt'] = 'Descartar alterações nesta aba'; +$wb['tab_change_warning_txt'] = 'Alerta de alterações'; +$wb['tab_change_warning_note_txt'] = 'Exibir alertas de alterações nesta aba se qualquer dado for alterado pelo usuário.'; +$wb['dbname_prefix_txt'] = 'Prefixo de banco de dados'; +$wb['dbuser_prefix_txt'] = 'Prefixo de usuário de banco de dados'; +$wb['shelluser_prefix_txt'] = 'Prefixo de usuário do shell'; +$wb['webdavuser_prefix_txt'] = 'Prefixo de usuário webdav'; +$wb['ftpuser_prefix_txt'] = 'Prefixo de usuário ftp'; +$wb['vhost_subdomains_txt'] = 'Adicionar subdomÃnios como um site'; +$wb['vhost_subdomains_note_txt'] = 'Você não pode desabilitar esta configuração enquanto existirem subdomÃnios vhost no sistema!'; +$wb['vhost_aliasdomains_txt'] = 'Adicionar alias de domÃnio como um site'; +$wb['vhost_aliasdomains_note_txt'] = 'Você não pode desabilitar esta configuração enquanto existirem alias de domÃnios vhost no sistema!'; +$wb['dbname_prefix_error_regex'] = 'Caractere não permitido para o prefixo de banco de dados.'; +$wb['dbuser_prefix_error_regex'] = 'Caractere não permitido para o prefixo de usuário de banco de dados.'; +$wb['ftpuser_prefix_error_regex'] = 'Caractere não permitido para o prefixo de usuário ftp.'; +$wb['shelluser_prefix_error_regex'] = 'Caractere não permitido para o prefixo de usuário do shell.'; +$wb['webdavuser_prefix_error_regex'] = 'Caractere não permitido para o prefixo de usuários webdav.'; $wb['dblist_phpmyadmin_link_txt'] = 'Link para o phpmyadmin'; +$wb['enable_custom_login_txt'] = 'Permitir nome de usuário personalizado'; $wb['mailboxlist_webmail_link_txt'] = 'Link para o webmail'; +$wb['mailbox_show_autoresponder_tab_txt'] = 'Exibir aba de auto-resposta nos detalhes da conta de e-mail'; +$wb['mailbox_show_mail_filter_tab_txt'] = 'Exibir aba de filtro de e-mails nos detalhes da conta de e-mail'; +$wb['mailbox_show_custom_rules_tab_txt'] = 'Exibir aba de filtros personalizados de e-mail nos detalhes da conta de e-mail'; $wb['webmail_url_txt'] = 'URL do webmail'; -$wb['phpmyadmin_url_txt'] = 'URL do phpmyadmin'; -$wb['use_domain_module_txt'] = 'Use o módulo domÃnios para adicionar novos domÃnios'; -$wb['use_domain_module_hint'] = 'Se você usar este módulo, os clientes podem selecionar apenas um dos domÃnios que o administrador cria para eles. Eles não podem editar o campo domÃnio livremente. Você deve sair e acessar novamente depois de alterar este valor para que as mudanças sejam visÃveis.'; -$wb['new_domain_txt'] = 'HTML para criar um novo domÃnio'; -$wb['dashboard_atom_url_admin_txt'] = 'URL do Dashboard atom (admin)'; -$wb['dashboard_atom_url_reseller_txt'] = 'URL do Dashboard atom (revendas)'; -$wb['dashboard_atom_url_client_txt'] = 'URL do Dashboard atom (clientes)'; -$wb['webdavuser_prefix_txt'] = 'Prefixo do usuário webdav'; -$wb['webdavuser_prefix_error_regex'] = 'Caractere não permitido no prefixo do usuário webdav.'; -$wb['webftp_url_txt'] = 'URL do webFTP'; -$wb['mailmailinglist_link_txt'] = 'Link para lista de e-mails'; -$wb['mailmailinglist_url_txt'] = 'URL para lista de e-mails'; -$wb['admin_mail_txt'] = 'e-Mail do administrador'; +$wb['mailmailinglist_link_txt'] = 'Link para lista de e-mails na lista de e-mails'; +$wb['mailmailinglist_url_txt'] = 'URL da lista de e-mails'; +$wb['phpmyadmin_url_txt'] = 'URL do phpMyAdmin'; +$wb['use_domain_module_txt'] = 'Use o módulo de cliente para adicionar novos domÃnios'; +$wb['use_domain_module_hint'] = 'Se você usar este módulo, os clientes podem selecionar apenas um dos domÃnios que o administrador adicionar para eles. Eles não podem editar o campo domÃnio livremente. Você deve sair e acessar novamente após alterar este valor para que as mudanças sejam aplicadas.'; +$wb['new_domain_txt'] = 'Código HTML para criar um novo domÃnio'; +$wb['webftp_url_txt'] = 'URL do FTPweb'; +$wb['admin_mail_txt'] = 'Administrador(es) de e-mails'; +$wb['monitor_key_txt'] = 'Palavras reservadas a monitorar'; $wb['admin_name_txt'] = 'Nome do administrador'; -$wb['enable_custom_login_txt'] = 'Permite nome de acesso personalizado'; -$wb['monitor_key_txt'] = 'Monitorar palavra reservada'; $wb['maintenance_mode_txt'] = 'Modo manutenção'; -$wb['smtp_enabled_txt'] = 'Usar SMPT para enviar e-mails do sistema'; -$wb['smtp_host_txt'] = 'Servidor SMTP'; -$wb['smtp_port_txt'] = 'Porta'; -$wb['smtp_user_txt'] = 'Usuário'; -$wb['smtp_pass_txt'] = 'Senha'; -$wb['smtp_crypt_txt'] = 'Usar criptografia SSL/TLS para conexões SMTP'; -$wb['smtp_missing_admin_mail_txt'] = 'Por favor, insira um nome e e-mail do administrador se você usar smtp para envio dos e-mails do sistema.'; -$wb['tab_change_discard_txt'] = 'Descartar modificações nesta aba'; -$wb['tab_change_warning_txt'] = 'Alerta de modificações'; -$wb['tab_change_warning_note_txt'] = 'Exibir alertas de modificações nesta aba se qualquer dados for modificado pelo usuário.'; -$wb['vhost_subdomains_txt'] = 'Adicionar subdomÃnios vhost como site'; -$wb['vhost_subdomains_note_txt'] = 'Você não pode desabilitar esta configuração enquanto existirem subdomÃnios vhost no sistema!'; -$wb['vhost_aliasdomains_txt'] = 'Adicionar apelidos de domÃnios vhost como site'; -$wb['vhost_aliasdomains_note_txt'] = 'Você nao pode desabilitar esta configuração enquanto existirem apelidos de domÃnio vhost no sistema!'; -$wb['phpmyadmin_url_error_regex'] = 'URL do phpmyadmin inválida.'; -$wb['use_combobox_txt'] = 'Usar jQuery UI Combobox'; +$wb['smtp_enabled_txt'] = 'Usar SMTP para enviar e-mails do sistema'; +$wb['smtp_host_txt'] = 'Host SMTP'; +$wb['smtp_port_txt'] = 'Porta SMTP'; +$wb['smtp_user_txt'] = 'Usuário SMTP'; +$wb['smtp_pass_txt'] = 'Senha do SMTP'; +$wb['smtp_crypt_txt'] = 'Usar conexão criptografada SSL/TLS para o SMTP'; +$wb['phpmyadmin_url_error_regex'] = 'URL do phpmyadmin é inválida.'; +$wb['use_combobox_txt'] = 'Usar combobox jQuery UI'; $wb['use_loadindicator_txt'] = 'Usar indicador de carga'; $wb['f5_to_reload_js_txt'] = 'Se você modificar esta configuração, talvez será necessário pressionar F5 no seu navegador para recarregar as bibliotecas do JavaScript ou esvaziar o cache.'; -$wb['client_username_web_check_disabled_txt'] = 'Desabilitar verificação da palavra reservada \'web\' para nome do usuário (não recomendado!).'; -$wb['backups_include_into_web_quota_txt'] = 'Incluir arquivos de backup na cota para site.'; -$wb['mailbox_show_autoresponder_tab_txt'] = 'Exir aba autoresposta nos detalhes da conta de e-mail'; -$wb['mailbox_show_mail_filter_tab_txt'] = 'Exibir aba filtros de e-mail nos detalhes da conta de e-mail'; -$wb['mailbox_show_custom_rules_tab_txt'] = 'Exibir aba filtros de e-mail personalizados nos detalhes da conta de e-mail'; -$wb['webmail_url_error_regex'] = 'URL do webmail inválida'; +$wb['client_username_web_check_disabled_txt'] = 'Desabilitar verificação da palavra reservada "web" para o nome de usuário (não recomendado!).'; +$wb['backups_include_into_web_quota_txt'] = 'Incluir arquivos de backup na cota do site.'; +$wb['webmail_url_error_regex'] = 'URL do webmail é inválida.'; $wb['phpmyadmin_url_note_txt'] = 'Ãrea reservada:'; $wb['webmail_url_note_txt'] = 'Ãrea reservada:'; $wb['available_dashlets_note_txt'] = 'Dashlets disponÃveis:'; @@ -64,30 +64,29 @@ $wb['client_dashlets_left_txt'] = 'Restrições de dashlets para clientes'; $wb['client_dashlets_right_txt'] = 'Permissões de dashlets para clientes'; $wb['customer_no_template_txt'] = 'No. do gabarito do cliente'; $wb['customer_no_template_error_regex_txt'] = 'O número do gabarito do cliente contém caracteres inválidos.'; -$wb['customer_no_start_txt'] = 'Valor inicial do código do cliente'; -$wb['customer_no_counter_txt'] = 'Contador de código do cliente'; +$wb['customer_no_start_txt'] = 'Valor inicial do código de cliente'; +$wb['customer_no_counter_txt'] = 'Contador do código de cliente'; $wb['session_timeout_txt'] = 'Duração da sessão (minutos)'; -$wb['session_allow_endless_txt'] = 'Habilitar \\"Manter-me conectado\\"'; +$wb['session_allow_endless_txt'] = 'Habilitar "Manter-me conectado"'; +$wb['No'] = 'Não'; $wb['min_password_length_txt'] = 'Comprimento mÃnimo da senha'; $wb['min_password_strength_txt'] = 'Dificuldade mÃnima da senha'; -$wb['company_name_txt'] = 'Nome da empresa no tÃtulo da página'; -$wb['reseller_can_use_options_txt'] = 'Revendas podem usar o menu sites'; -$wb['custom_login_text_txt'] = 'Texto personalizado para página de acesso'; -$wb['custom_login_link_txt'] = 'Link personalizado para página de acesso'; -$wb['login_link_error_regex'] = 'Link personalizado para acesso inválido'; $wb['default_mailserver_txt'] = 'Servidor de e-mails padrão'; $wb['default_webserver_txt'] = 'Servidor web padrão'; $wb['default_dnsserver_txt'] = 'Servidor dns padrão'; $wb['default_slave_dnsserver_txt'] = 'Servidor dns secundário padrão'; -$wb['ca_name_txt'] = 'Name'; -$wb['ca_issue_txt'] = 'Issue'; -$wb['ca_wildcard_txt'] = 'Use Wildcard'; -$wb['ca_critical_txt'] = 'Strict Check'; -$wb['ca_iodef_txt'] = 'iodef'; -$wb['active_txt'] = 'Aktive'; -$wb['btn_save_txt'] = 'Save'; -$wb['btn_cancel_txt'] = 'Cancel'; $wb['default_dbserver_txt'] = 'Servidor de banco de dados padrão'; -$wb['No'] = 'Não'; -$wb['web_php_options_txt'] = 'PHP Handler (Apache only)'; +$wb['company_name_txt'] = 'Nome da empresa para tÃtulo da página'; +$wb['reseller_can_use_options_txt'] = 'Revendas podem utilizar o menu sites'; +$wb['custom_login_text_txt'] = 'Texto personalizado para a página de acesso'; +$wb['custom_login_link_txt'] = 'Link personalizado para página de acesso'; +$wb['login_link_error_regex'] = 'Link personalizado para acesso inválido'; +$wb['ca_name_txt'] = 'Nome'; +$wb['ca_issue_txt'] = 'Questão'; +$wb['ca_wildcard_txt'] = 'Usar curingas'; +$wb['ca_iodef_txt'] = 'Definições de E/S'; +$wb['active_txt'] = 'Ativo'; +$wb['btn_save_txt'] = 'Salvar'; +$wb['btn_cancel_txt'] = 'Cancelar'; +$wb['web_php_options_txt'] = 'Manipulador do php (Somente apache)'; ?> diff --git a/interface/web/admin/lib/lang/br_tpl_default_admin.lng b/interface/web/admin/lib/lang/br_tpl_default_admin.lng index 0a53752e4b..dbad6b1766 100644 --- a/interface/web/admin/lib/lang/br_tpl_default_admin.lng +++ b/interface/web/admin/lib/lang/br_tpl_default_admin.lng @@ -1,18 +1,18 @@ <?php -$wb['tpl_default_admin_head_txt'] = 'Configurações de tema global padrão'; -$wb['tpl_default_admin_desc_txt'] = ''; +$wb['tpl_default_admin_head_txt'] = 'Configurações globais do tema padrão'; +$wb['tpl_default_admin_desc_txt'] = 'Descrição'; $wb['server_id_txt'] = 'Servidor'; $wb['client_id_txt'] = 'Cliente'; -$wb['name_txt'] = 'Nome do PHP'; +$wb['name_txt'] = 'Nome da versão do php'; $wb['Name'] = 'Nome'; -$wb['FastCGI Settings'] = 'Configurações do FastCGI'; -$wb['PHP-FPM Settings'] = 'Configurações do PHP-FPM'; +$wb['FastCGI Settings'] = 'Configurações FastCGI'; +$wb['PHP-FPM Settings'] = 'Configurações PHP-FPM'; $wb['Additional PHP Versions'] = 'Versões adicionais do php'; -$wb['Form to edit additional PHP versions'] = 'Formulário de edição de versões adicionais do php'; -$wb['server_php_name_error_empty'] = 'Nome está em branco.'; -$wb['php_fastcgi_binary_txt'] = 'Caminho do binário FastCGI'; +$wb['Form to edit additional PHP versions'] = 'Editar versões adicionais do php'; +$wb['server_php_name_error_empty'] = 'O nome está em branco.'; +$wb['php_fastcgi_binary_txt'] = 'Caminho do binário do FastCGI'; $wb['php_fastcgi_ini_dir_txt'] = 'Caminho do diretório do php.ini'; -$wb['php_fpm_init_script_txt'] = 'Caminho do script de inicialização PHP-FPM'; -$wb['php_fpm_ini_dir_txt'] = 'Caminho do diretório php.ini'; -$wb['php_fpm_pool_dir_txt'] = 'Caminho do diretório de faixas (pool) do PHP-FPM'; +$wb['php_fpm_init_script_txt'] = 'Caminho do script de inicialização php-fpm'; +$wb['php_fpm_ini_dir_txt'] = 'Caminho do diretório do php.ini'; +$wb['php_fpm_pool_dir_txt'] = 'Caminho do diretório de faixas php-fpm'; ?> diff --git a/interface/web/admin/lib/lang/br_users.lng b/interface/web/admin/lib/lang/br_users.lng index d16bcf1cb1..6d71a39e4c 100644 --- a/interface/web/admin/lib/lang/br_users.lng +++ b/interface/web/admin/lib/lang/br_users.lng @@ -1,36 +1,36 @@ <?php $wb['username_txt'] = 'Usuário'; -$wb['username_err'] = 'O nome do usuário é muito longo ou contém caracteres inválidos!'; -$wb['username_empty'] = 'Por favor, entre com o nome do usuário.'; -$wb['username_unique'] = 'Já existe um usuário com este nome!'; +$wb['username_err'] = 'O nome do usuário é muito longo ou contém caracteres inválidos.'; +$wb['username_empty'] = 'O nome do usuário está em branco.'; +$wb['username_unique'] = 'Já existe um usuário com este nome.'; $wb['passwort_txt'] = 'Senha'; $wb['password_strength_txt'] = 'Dificuldade da senha'; -$wb['modules_txt'] = 'Módulos'; -$wb['startmodule_txt'] = 'Módulo Inicial'; +$wb['modules_txt'] = 'Módulo'; +$wb['startmodule_txt'] = 'Módulo inicial'; $wb['app_theme_txt'] = 'Tema'; $wb['typ_txt'] = 'Tipo'; $wb['active_txt'] = 'Ativo'; $wb['language_txt'] = 'Idioma'; $wb['name_txt'] = 'Nome'; -$wb['vorname_txt'] = 'Sobrenome'; +$wb['vorname_txt'] = 'Segundo nome'; $wb['unternehmen_txt'] = 'Empresa'; $wb['strasse_txt'] = 'Endereço'; $wb['ort_txt'] = 'Cidade'; $wb['plz_txt'] = 'CEP'; $wb['land_txt'] = 'PaÃs'; -$wb['email_txt'] = 'e-mail'; -$wb['url_txt'] = 'Site'; +$wb['email_txt'] = 'e-Mail'; +$wb['url_txt'] = 'URL'; $wb['telefon_txt'] = 'Telefone'; $wb['fax_txt'] = 'Fax'; $wb['groups_txt'] = 'Grupos'; -$wb['default_group_txt'] = 'Grupo Padrão'; -$wb['startmodule_err'] = 'O módulo inicial não está contido nos módulos.'; -$wb['generate_password_txt'] = 'Gerar senha'; -$wb['repeat_password_txt'] = 'Repetir senha'; -$wb['password_mismatch_txt'] = 'A senhas não coincidem.'; -$wb['password_match_txt'] = 'A senhas coincidem.'; -$wb['username_error_collision'] = 'O nome do usuário não pode conter as palavras reservadas -web- ou -web- seguidas por um número.'; -$wb['client_not_admin_err'] = 'Um usuário definido como cliente não pode ser configurado com o tipo: admin (administrador).'; -$wb['lost_password_function_txt'] = 'Função reconfigurar senha perdida disponÃvel'; -$wb['no_user_insert'] = 'CP-Users of type -user- get added and updated automatically when you add a client or reseller.'; +$wb['default_group_txt'] = 'Grupo padrão'; +$wb['startmodule_err'] = 'Módulo inicial não está dentro de módulos.'; +$wb['generate_password_txt'] = 'Gerar Senha'; +$wb['repeat_password_txt'] = 'Repetir Senha'; +$wb['password_mismatch_txt'] = 'As senhas não coincidem.'; +$wb['password_match_txt'] = 'As senhas coincidem.'; +$wb['username_error_collision'] = 'O nome de usuário não pode conter a palavra "web" ou "web" seguida de um número."'; +$wb['client_not_admin_err'] = 'Um usuário que pertence a um cliente não pode ser configurado para: admin.'; +$wb['lost_password_function_txt'] = 'Função de senha esquecida disponÃvel'; +$wb['no_user_insert'] = 'Os usuários do Painel de Controle (ISPC) do tipo -user- são adicionados e atualizados automaticamente quando você adiciona um cliente ou revenda.'; ?> diff --git a/interface/web/admin/lib/lang/br_users_list.lng b/interface/web/admin/lib/lang/br_users_list.lng index 3422f78355..26910186c5 100644 --- a/interface/web/admin/lib/lang/br_users_list.lng +++ b/interface/web/admin/lib/lang/br_users_list.lng @@ -1,9 +1,9 @@ <?php $wb['list_head_txt'] = 'Usuários'; -$wb['username_txt'] = 'Nome do usuário'; -$wb['client_id_txt'] = 'ID do cliente'; +$wb['username_txt'] = 'Usuário'; +$wb['client_id_txt'] = 'ID do usuário'; $wb['active_txt'] = 'Ativo'; -$wb['add_new_record_txt'] = 'Adicionar novo usuário'; -$wb['warning_txt'] = '<b>AVISO:</b> Não modifique ou edite qualquer configuração de usuário aqui. Use o módulo de clientes ou revendas. Modificar ou alterar usuários e grupos nesta aba pode ocasionar perda de dados!'; $wb['groups_txt'] = 'Grupos'; +$wb['add_new_record_txt'] = 'Adicionar novo usuário'; +$wb['warning_txt'] = '<b>ALERTA:</b> Não editar ou alterar qualquer configuração de usuário aqui. Use o módulo de clientes e revendas para isso. Editar ou alterar usuários ou grupos aqui pode causar perda de dados!'; ?> diff --git a/interface/web/admin/lib/lang/tr.lng b/interface/web/admin/lib/lang/tr.lng index 23dbc45a49..9b0dfc59ec 100644 --- a/interface/web/admin/lib/lang/tr.lng +++ b/interface/web/admin/lib/lang/tr.lng @@ -1,20 +1,26 @@ <?php $wb['1001'] = 'Kullanıcı adı ya da parola boÅŸ.'; $wb['1002'] = 'Kullanıcı adı ya da parola hatalı.'; + $wb['Groups'] = 'Gruplar'; $wb['groups_description'] = 'Sistem kullanıcısı gruplarını düzenleme formu.'; + $wb['Servers'] = 'Sunucular'; $wb['Config'] = 'Ayarlar'; -$wb['Add user'] = 'Kullanıcı ekle'; -$wb['Edit user'] = 'Kullanıcıyı düzenle'; -$wb['Add group'] = 'Grup ekle'; -$wb['Edit group'] = 'Grubu düzenle'; -$wb['Edit server'] = 'Sunucuyu düzenle'; -$wb['Sync. Now'] = 'Åžimdi EÅŸleÅŸtir'; -$wb['DB Sync.'] = 'Veritabanı EÅŸleÅŸtirme'; + +$wb['Add user'] = 'Kullanıcı Ekle'; +$wb['Edit user'] = 'Kullanıcıyı Düzenle'; +$wb['Add group'] = 'Grup Ekle'; +$wb['Edit group'] = 'Grubu Düzenle'; +$wb['Edit server'] = 'Sunucuyu Düzenle'; + +$wb['Sync. Now'] = 'Åžimdi EÅŸitle'; +$wb['DB Sync.'] = 'Veritabanı EÅŸitleme'; + $wb['User Management'] = 'Kullanıcı Yönetimi'; $wb['CP Users'] = 'Panel Kullanıcıları'; $wb['Remote Users'] = 'Uzak Kullanıcılar'; + $wb['System'] = 'Sistem'; $wb['Server Services'] = 'Sunucu Hizmetleri'; $wb['Services'] = 'Hizmetler'; @@ -28,25 +34,29 @@ $wb['Jailkit'] = 'Jailkit'; $wb['Rescue'] = 'Kurtarma'; $wb['Server IP addresses'] = 'Sunucu IP Adresleri'; $wb['Additional PHP Versions'] = 'DiÄŸer PHP Sürümleri'; -$wb['Directive Snippets'] = 'Yönerge Parçacıkları'; +$wb['Directive Snippets'] = 'Yönerge Kod Parçaları'; $wb['Firewall'] = 'Güvenlik Duvarı'; + $wb['Interface'] = 'Arayüz'; $wb['Interface Config'] = 'Temel Ayarlar'; +$wb['Sites'] = 'Siteler'; +$wb['DNS'] = 'DNS'; $wb['Domains'] = 'Alan Adları'; $wb['Misc'] = 'ÇeÅŸitli'; + $wb['Software'] = 'Uygulama ve Eklentiler'; $wb['Repositories'] = 'Depolar'; $wb['Packages'] = 'Paketler'; $wb['Updates'] = 'Güncellemeler'; + $wb['Language Editor'] = 'Dil Ä°ÅŸlemleri'; $wb['Languages'] = 'Dil Dosyaları'; $wb['New Language'] = 'Dil Ekleme'; $wb['Merge'] = 'Dil BirleÅŸtirme'; $wb['Export'] = 'Dil Ä°ndirme'; $wb['Import'] = 'Dil Yükleme'; + $wb['Remote Actions'] = 'Uzak Ä°ÅŸlemler'; $wb['Do OS-Update'] = 'Ä°ÅŸletim Sistemi Güncelleme'; $wb['Do ISPConfig-Update'] = 'ISPConfig Güncelleme'; -$wb['Sites'] = 'Sites'; -$wb['DNS'] = 'DNS'; ?> diff --git a/interface/web/admin/lib/lang/tr_directive_snippets.lng b/interface/web/admin/lib/lang/tr_directive_snippets.lng index f503486528..448d453672 100644 --- a/interface/web/admin/lib/lang/tr_directive_snippets.lng +++ b/interface/web/admin/lib/lang/tr_directive_snippets.lng @@ -1,12 +1,12 @@ <?php -$wb['Directive Snippets'] = 'Yönerge Parçacıkları'; -$wb['name_txt'] = 'Parçacık Adı'; -$wb['type_txt'] = 'Tip'; -$wb['snippet_txt'] = 'Parçacık'; +$wb['Directive Snippets'] = 'Yönerge Kod Parçaları'; +$wb['name_txt'] = 'Kod Parçası Adı'; +$wb['type_txt'] = 'Tür'; +$wb['snippet_txt'] = 'Kod Parçası'; $wb['active_txt'] = 'Etkin'; -$wb['directive_snippets_name_empty'] = 'Parçacık adı boÅŸ olamaz.'; -$wb['directive_snippets_name_error_unique'] = 'Aynı adlı bir yönerge parçacığı zaten var.'; +$wb['directive_snippets_name_empty'] = 'Kod Parçası adı boÅŸ olamaz.'; +$wb['directive_snippets_name_error_unique'] = 'Aynı adlı bir yönerge kod parçası zaten var.'; $wb['variables_txt'] = 'DeÄŸiÅŸkenler'; -$wb['customer_viewable_txt'] = 'Customer viewable'; -$wb['required_php_snippets_txt'] = 'Requiered PHP Snippet'; +$wb['customer_viewable_txt'] = 'Müşteri görebilir'; +$wb['required_php_snippets_txt'] = 'Gerekli PHP Parçası'; ?> diff --git a/interface/web/admin/lib/lang/tr_directive_snippets_list.lng b/interface/web/admin/lib/lang/tr_directive_snippets_list.lng index 766a194dc1..4a1fb954a5 100644 --- a/interface/web/admin/lib/lang/tr_directive_snippets_list.lng +++ b/interface/web/admin/lib/lang/tr_directive_snippets_list.lng @@ -1,8 +1,8 @@ <?php -$wb['list_head_txt'] = 'Yönerge Parçacıkları'; +$wb['list_head_txt'] = 'Yönerge Kod Parçaları'; $wb['active_txt'] = 'Etkin'; -$wb['name_txt'] = 'Parçacık Adı'; -$wb['type_txt'] = 'Tip'; -$wb['add_new_record_txt'] = 'Yönerge Parçacığı Ekle'; -$wb['customer_viewable_txt'] = 'Customer viewable'; +$wb['name_txt'] = 'Kod Parçası Adı'; +$wb['type_txt'] = 'Tür'; +$wb['add_new_record_txt'] = 'Yönerge Kod Parçası Ekle'; +$wb['customer_viewable_txt'] = 'Müşteri Görebilsin'; ?> diff --git a/interface/web/admin/lib/lang/tr_firewall.lng b/interface/web/admin/lib/lang/tr_firewall.lng index a45998d4e1..9e853c7bde 100644 --- a/interface/web/admin/lib/lang/tr_firewall.lng +++ b/interface/web/admin/lib/lang/tr_firewall.lng @@ -6,6 +6,7 @@ $wb['tcp_port_help_txt'] = 'Virgül ile ayırarak yazın'; $wb['udp_port_help_txt'] = 'Virgül ile ayırarak yazın'; $wb['active_txt'] = 'Etkin'; $wb['firewall_error_unique'] = 'Bu sunucu için bir güvenlik duvarı kaydı zaten var.'; -$wb['tcp_ports_error_regex'] = 'TCP kapı açıklamasında karakter kullanılamaz. Yalnız rakam, \\":\\" ve \\",\\" karakterleri kullanılabilir.'; -$wb['udp_ports_error_regex'] = 'UDP kapı açıklamasında karakter kullanılamaz. Yalnız rakam, \\":\\" ve \\",\\" karakterleri kullanılabilir.'; +$wb['active_txt'] = 'Etkin'; +$wb['tcp_ports_error_regex'] = 'TCP kapı açıklamasında karakter kullanılamaz. Yalnız rakam, ":" ve "," karakterleri kullanılabilir.'; +$wb['udp_ports_error_regex'] = 'UDP kapı açıklamasında karakter kullanılamaz. Yalnız rakam, ":" ve "," karakterleri kullanılabilir.'; ?> diff --git a/interface/web/admin/lib/lang/tr_groups.lng b/interface/web/admin/lib/lang/tr_groups.lng index d41fcace9d..4bf60a284b 100644 --- a/interface/web/admin/lib/lang/tr_groups.lng +++ b/interface/web/admin/lib/lang/tr_groups.lng @@ -1,5 +1,5 @@ <?php $wb['description_txt'] = 'Açıklama'; $wb['name_txt'] = 'Grup'; -$wb['name_err'] = 'Grup 1-30 karakter arasında olmalı.'; +$wb['name_err'] = 'Grup 1 ile 30 karakter arasında olmalı.'; ?> diff --git a/interface/web/admin/lib/lang/tr_iptables.lng b/interface/web/admin/lib/lang/tr_iptables.lng index dcec556485..970bc23931 100644 --- a/interface/web/admin/lib/lang/tr_iptables.lng +++ b/interface/web/admin/lib/lang/tr_iptables.lng @@ -1,4 +1,5 @@ <?php + $wb['server_id_txt'] = 'Sunucu'; $wb['multiport_txt'] = 'Çok Kapı'; $wb['singleport_txt'] = 'Tek Kapı'; @@ -10,4 +11,5 @@ $wb['destination_ip_txt'] = 'Hedef Adresi'; $wb['source_ip_txt'] = 'Kaynak Adresi'; $wb['active_txt'] = 'Etkin'; $wb['iptables_error_unique'] = 'Bu sunucu için zaten bir güvenlik duvarı kaydı var.'; + ?> diff --git a/interface/web/admin/lib/lang/tr_iptables_list.lng b/interface/web/admin/lib/lang/tr_iptables_list.lng index a884ef7f78..ba8a1345fe 100644 --- a/interface/web/admin/lib/lang/tr_iptables_list.lng +++ b/interface/web/admin/lib/lang/tr_iptables_list.lng @@ -1,4 +1,5 @@ <?php + $wb['list_head_txt'] = 'IPTables'; $wb['add_new_rule_txt'] = 'IPTables Kuralı Ekle'; $wb['server_id_txt'] = 'Sunucu'; @@ -12,4 +13,5 @@ $wb['destination_ip_txt'] = 'Hedef Adresi'; $wb['source_ip_txt'] = 'Kaynak Adresi'; $wb['active_txt'] = 'Etkin'; $wb['iptables_error_unique'] = 'Bu sunucu için zaten bir güvenlik duvarı kaydı var.'; + ?> diff --git a/interface/web/admin/lib/lang/tr_language_import.lng b/interface/web/admin/lib/lang/tr_language_import.lng index 581fcb5974..be319837dd 100644 --- a/interface/web/admin/lib/lang/tr_language_import.lng +++ b/interface/web/admin/lib/lang/tr_language_import.lng @@ -3,7 +3,7 @@ $wb['list_head_txt'] = 'Dil Paketi Yükleme'; $wb['list_desc_txt'] = 'UYARI: Güvenilmeyen kaynaklardan aldığınız dil paketlerini yüklemeyin.'; $wb['language_import_txt'] = 'Yüklenecek Dil Dosyası'; $wb['btn_save_txt'] = 'Dil Paketini Yükle'; -$wb['language_overwrite_txt'] = 'Var olan dosyaları deÄŸiÅŸtir'; +$wb['language_overwrite_txt'] = 'Var Olan Dosyalar DeÄŸiÅŸtirilsin'; $wb['btn_cancel_txt'] = 'Geri'; -$wb['ignore_version_txt'] = 'ISPConfig sürümüne bakma'; +$wb['ignore_version_txt'] = 'ISPConfig Sürümü Denetlenmesin'; ?> diff --git a/interface/web/admin/lib/lang/tr_login_as.lng b/interface/web/admin/lib/lang/tr_login_as.lng new file mode 100644 index 0000000000..b7fc8ff987 --- /dev/null +++ b/interface/web/admin/lib/lang/tr_login_as.lng @@ -0,0 +1,12 @@ +<?php +$wb['login_1_txt'] = 'Bu kullanıcı olarak oturum açmak ister misiniz'; +$wb['login_2_txt'] = '"Geri dönmek" için oturumu kapat üzerine tıklayın.'; +$wb['btn_yes_txt'] = 'Evet, Müşteri olarak oturum aç'; +$wb['btn_back_txt'] = 'Hayır, listeye geri dön'; +$wb['udp_port_help_txt'] = 'Virgül ile ayırarak yazın'; +$wb['active_txt'] = 'Etkin'; +$wb['firewall_error_unique'] = 'Bu sunucu için bir güvenlik duvarı kaydı zaten var.'; +$wb['active_txt'] = 'Etkin'; +$wb['tcp_ports_error_regex'] = 'TCP kapı açıklamasında karakter kullanılamaz. Yalnız rakam, ":" ve "," karakterleri kullanılabilir.'; +$wb['udp_ports_error_regex'] = 'UDP kapı açıklamasında karakter kullanılamaz. Yalnız rakam, ":" ve "," karakterleri kullanılabilir.'; +?> diff --git a/interface/web/admin/lib/lang/tr_remote_action.lng b/interface/web/admin/lib/lang/tr_remote_action.lng index c067f67e88..b2ed0a6da7 100644 --- a/interface/web/admin/lib/lang/tr_remote_action.lng +++ b/interface/web/admin/lib/lang/tr_remote_action.lng @@ -1,12 +1,12 @@ <?php $wb['select_server_txt'] = 'Sunucu Seçin'; -$wb['btn_do_txt'] = 'Ä°ÅŸlemi BaÅŸlatın'; -$wb['do_osupdate_caption'] = 'Uzak sunucudaki iÅŸletim sistemini güncelleyin'; -$wb['do_osupdate_desc'] = 'Bu iÅŸlem seçilmiÅŸ sunucuda \\"aptitude -y upgrade\\" komutunu yürütür.<br><br><strong>OLUÅžABÄ°LECEK RÄ°SKLER SÄ°ZE AÄ°TTÄ°R!</strong>'; -$wb['do_ispcupdate_caption'] = 'Uzak sunucudaki ISPConfig 3 - sürümünü güncelleyin'; +$wb['btn_do_txt'] = 'Ä°ÅŸlemi BaÅŸlat'; +$wb['do_osupdate_caption'] = 'Uzak sunucudaki iÅŸletim sistemini güncelle'; +$wb['do_osupdate_desc'] = 'Bu iÅŸlem seçilmiÅŸ sunucuda komutunu yürütür.<br><br><strong>OLUÅžABÄ°LECEK RÄ°SKLER SÄ°ZE AÄ°TTÄ°R!</strong>'; +$wb['do_ispcupdate_caption'] = 'Uzak sunucudaki ISPConfig 3 - sürümünü güncelle'; $wb['do_ispcupdate_desc'] = 'Bu iÅŸlem seçilmiÅŸ sunucuda ISPConfig3 güncellemesini yürütür.<br><br><strong>OLUÅžABÄ°LECEK RÄ°SKLER SÃœZE AÄ°TTÄ°R!</strong>'; $wb['action_scheduled'] = 'Ä°ÅŸlem yürütülmek üzere zamanlandı'; $wb['select_all_server'] = 'Tüm Sunucularda'; $wb['ispconfig_update_title'] = 'ISPConfig güncelleme yönergeleri'; -$wb['ispconfig_update_text'] = 'Sunucunuzda root kullanıcısı ile bir kabuk oturumu açın ve ISPConfig güncellemesini baÅŸlatmak için<br /><br /> <strong>ispconfig_update.sh</strong><br /><br />komutunu yürütün.<br /><br /><a href=\\"http://www.faqforge.com/linux/controlpanels/ispconfig3/how-to-update-ispconfig-3/\\" target=\\"_blank\\">Ayrıntılı güncelleme bilgilerine bakmak için buraya tıklayın</a>'; +$wb['ispconfig_update_text'] = 'Sunucunuzda root kullanıcısı ile bir kabuk oturumu açın ve ISPConfig güncellemesini baÅŸlatmak için<br /><br /> <strong>ispconfig_update.sh</strong><br /><br />komutunu yürütün.<br /><br /><a href= target=>Ayrıntılı güncelleme bilgilerine bakmak için buraya tıklayın</a>'; ?> diff --git a/interface/web/admin/lib/lang/tr_remote_user.lng b/interface/web/admin/lib/lang/tr_remote_user.lng index d9e11f8308..a713cad0d4 100644 --- a/interface/web/admin/lib/lang/tr_remote_user.lng +++ b/interface/web/admin/lib/lang/tr_remote_user.lng @@ -1,37 +1,37 @@ <?php -$wb['username_txt'] = 'Kullanıcı adı:'; +$wb['username_txt'] = 'Kullanıcı Adı:'; $wb['password_txt'] = 'Parola:'; $wb['function_txt'] = 'Ä°ÅŸlevler:'; $wb['username_error_unique'] = 'Bu kullanıcı adı zaten var'; $wb['username_error_empty'] = 'Kullanıcı adı boÅŸ olamaz'; $wb['password_error_empty'] = 'Parola boÅŸ olamaz'; -$wb['password_strength_txt'] = 'Parola Güçlüğü:'; -$wb['Mail domain functions'] = 'Posta alan adı iÅŸlevleri'; -$wb['Mail mailing list functions'] = 'Posta posta listesi iÅŸlevleri'; -$wb['Mail user functions'] = 'Posta kullanıcı iÅŸlevleri'; -$wb['Mail alias functions'] = 'Posta takma ad iÅŸlevleri'; -$wb['Mail forward functions'] = 'Posta yönlendirme iÅŸlevleri'; -$wb['Mail catchall functions'] = 'Posta tümünü al iÅŸlevleri'; -$wb['Mail transport functions'] = 'Posta aktarım iÅŸlevleri'; -$wb['Mail whitelist functions'] = 'Posta beyaz liste iÅŸlevleri'; -$wb['Mail blacklist functions'] = 'Posta kara liste iÅŸlevleri'; -$wb['Mail spamfilter user functions'] = 'Posta önemsiz posta süzgeci kullanıcı iÅŸlevleri'; -$wb['Mail spamfilter policy functions'] = 'Posta önemsiz posta süzgeci kuralları iÅŸlevleri'; -$wb['Mail fetchmail functions'] = 'Posta posta alma iÅŸlevleri'; -$wb['Mail user filter functions'] = 'Posta kullanıcı ve süzgeç iÅŸlevleri'; -$wb['Mail filter functions'] = 'Posta süzgeç iÅŸlevleri'; +$wb['password_strength_txt'] = 'Parola ZorluÄŸu:'; +$wb['Mail domain functions'] = 'E-posta etki alanı iÅŸlevleri'; +$wb['Mail mailing list functions'] = 'E-posta e-posta listesi iÅŸlevleri'; +$wb['Mail user functions'] = 'E-posta kullanıcı iÅŸlevleri'; +$wb['Mail alias functions'] = 'E-posta takma ad iÅŸlevleri'; +$wb['Mail forward functions'] = 'E-posta yönlendirme iÅŸlevleri'; +$wb['Mail catchall functions'] = 'E-posta tümünü al iÅŸlevleri'; +$wb['Mail transport functions'] = 'E-posta aktarım iÅŸlevleri'; +$wb['Mail whitelist functions'] = 'E-posta beyaz liste iÅŸlevleri'; +$wb['Mail blacklist functions'] = 'E-posta kara liste iÅŸlevleri'; +$wb['Mail spamfilter user functions'] = 'E-posta önemsiz ileti süzgeci kullanıcı iÅŸlevleri'; +$wb['Mail spamfilter policy functions'] = 'E-posta önemsiz ileti süzgeci kuralları iÅŸlevleri'; +$wb['Mail fetchmail functions'] = 'E-posta e-posta alma iÅŸlevleri'; +$wb['Mail user filter functions'] = 'E-posta kullanıcı ve süzgeç iÅŸlevleri'; +$wb['Mail filter functions'] = 'E-posta süzgeç iÅŸlevleri'; $wb['Client functions'] = 'Müşteri iÅŸlevleri'; $wb['Sites cron functions'] = 'Sitelerin zamanlanmış görev iÅŸlevleri'; $wb['Sites database functions'] = 'Sitelerin veritabanı iÅŸlevleri'; $wb['Sites FTP-User functions'] = 'Sitelerin FTP kullanıcısı iÅŸlevleri'; $wb['Sites Shell-User functions'] = 'Sitelerin kabuk kullanıcısı iÅŸlevleri'; -$wb['Sites Domain functions'] = 'Sitelerin alan adı iÅŸlevleri'; -$wb['Sites Aliasdomain functions'] = 'Sitelerin takma alan adı iÅŸlevleri'; -$wb['Sites Subdomain functions'] = 'Sitelerin alt alan adı iÅŸlevleri'; +$wb['Sites Domain functions'] = 'Sitelerin etki alanı iÅŸlevleri'; +$wb['Sites Aliasdomain functions'] = 'Sitelerin takma etki alanı iÅŸlevleri'; +$wb['Sites Subdomain functions'] = 'Sitelerin alt etki alanı iÅŸlevleri'; $wb['DNS zone functions'] = 'DNS bölgesi iÅŸlevleri'; $wb['DNS a functions'] = 'DNS a iÅŸlevleri'; $wb['DNS aaaa functions'] = 'DNS aaaa iÅŸlevleri'; -$wb['DNS alias functions'] = 'DNS takma ad iÅŸlevleri'; +$wb['DNS alias functions'] = 'DNS alias iÅŸlevleri'; $wb['DNS cname functions'] = 'DNS cname iÅŸlevleri'; $wb['DNS hinfo functions'] = 'DNS hinfo iÅŸlevleri'; $wb['DNS mx functions'] = 'DNS mx iÅŸlevleri'; @@ -40,11 +40,11 @@ $wb['DNS ptr functions'] = 'DNS ptr iÅŸlevleri'; $wb['DNS rp functions'] = 'DNS rp iÅŸlevleri'; $wb['DNS srv functions'] = 'DNS srv iÅŸlevleri'; $wb['DNS txt functions'] = 'DNS txt iÅŸlevleri'; -$wb['generate_password_txt'] = 'Parola OluÅŸtur'; +$wb['generate_password_txt'] = 'Parola Ãœret'; $wb['repeat_password_txt'] = 'Parola Onayı'; $wb['password_mismatch_txt'] = 'Parola ile onayı aynı deÄŸil.'; $wb['password_match_txt'] = 'Parola ile onayı aynı.'; -$wb['remote_access_txt'] = 'Remote Access'; -$wb['remote_ips_txt'] = 'Remote Access IPs / Hostnames (separate by , and leave blank for <i>any</i>)'; -$wb['remote_user_error_ips'] = 'At least one of the entered ip addresses or hostnames is invalid.'; +$wb['remote_access_txt'] = 'Uzaktan EriÅŸim'; +$wb['remote_ips_txt'] = 'Uzaktan EriÅŸim IP Adresleri / Sunucu Adları (, ile ayırarak yazın ve <i>tümü</i> için boÅŸ bırakın)'; +$wb['remote_user_error_ips'] = 'Yazılmış IP adresi ya da sunucu adlarından en az biri geçersiz.'; ?> diff --git a/interface/web/admin/lib/lang/tr_server.lng b/interface/web/admin/lib/lang/tr_server.lng index 61e0b7dd6b..bdc70761e1 100644 --- a/interface/web/admin/lib/lang/tr_server.lng +++ b/interface/web/admin/lib/lang/tr_server.lng @@ -1,16 +1,16 @@ <?php $wb['config_txt'] = 'Ayarlar'; $wb['server_name_txt'] = 'Sunucu Adı'; -$wb['mail_server_txt'] = 'Posta Sunucusu'; +$wb['mail_server_txt'] = 'E-posta Sunucusu'; $wb['web_server_txt'] = 'Web Sunucusu'; $wb['dns_server_txt'] = 'DNS Sunucusu'; $wb['file_server_txt'] = 'Dosya Sunucusu'; $wb['db_server_txt'] = 'Veritabanı Sunucusu'; -$wb['vserver_server_txt'] = 'SSunucu Sunucusu'; +$wb['vserver_server_txt'] = 'sSunucu Sunucusu'; $wb['proxy_server_txt'] = 'Vekil Sunucu'; $wb['firewall_server_txt'] = 'Güvenlik Duvarı Sunucusu'; $wb['active_txt'] = 'Etkin'; $wb['mirror_server_id_txt'] = 'Sunucunun Yansısı'; $wb['- None -'] = '- Hiçbiri -'; -$wb['xmpp_server_txt'] = 'XMPP Server'; +$wb['xmpp_server_txt'] = 'XMPP Sunucusu'; ?> diff --git a/interface/web/admin/lib/lang/tr_server_config.lng b/interface/web/admin/lib/lang/tr_server_config.lng index efe24bf3a4..3b63e881f9 100644 --- a/interface/web/admin/lib/lang/tr_server_config.lng +++ b/interface/web/admin/lib/lang/tr_server_config.lng @@ -13,13 +13,13 @@ $wb['jailkit_chroot_app_programs_txt'] = 'Jailkit chroot Uygulamaları'; $wb['jailkit_chroot_cron_programs_txt'] = 'Jailkit Zamanlanmış Görev chroot Uygulamaları'; $wb['website_path_txt'] = 'Web Sitesi Yolu'; $wb['website_symlinks_txt'] = 'Web Sitesi Sembolik BaÄŸlantıları'; -$wb['website_symlinks_rel_txt'] = 'Sembolik BaÄŸlantılar Bağıl Olsun'; +$wb['website_symlinks_rel_txt'] = 'Sembolik BaÄŸlantılar Göreli Olsun'; $wb['website_basedir_txt'] = 'Web Sitesi Klasörü'; $wb['website_autoalias_txt'] = 'Otomatik Web Sitesi Takma Adı'; $wb['website_autoalias_note_txt'] = 'Kodlar:'; -$wb['vhost_conf_dir_txt'] = 'SSunucu Ayar Klasörü'; -$wb['vhost_conf_enabled_dir_txt'] = 'Etkin SSunucu Ayar Klasörü'; -$wb['getmail_config_dir_txt'] = 'Getmail Ayar Klasörü'; +$wb['vhost_conf_dir_txt'] = 'Sanal Sunucu Ayarları Klasörü'; +$wb['vhost_conf_enabled_dir_txt'] = 'Etkin Sanal Sunucu Ayarları Klasörü'; +$wb['getmail_config_dir_txt'] = 'Getmail Ayarları Klasörü'; $wb['fastcgi_starter_path_txt'] = 'FastCGI BaÅŸlatıcı Yolu'; $wb['fastcgi_starter_script_txt'] = 'FastCGI BaÅŸlatıcı BetiÄŸi'; $wb['fastcgi_alias_txt'] = 'FastCGI Takma Adı'; @@ -28,16 +28,24 @@ $wb['fastcgi_children_txt'] = 'FastCGI ÇocuÄŸu'; $wb['fastcgi_max_requests_txt'] = 'FastCGI En Fazla Ä°stek'; $wb['fastcgi_bin_txt'] = 'FastCGI Bin'; $wb['module_txt'] = 'Modül'; -$wb['maildir_path_txt'] = 'Posta Klasörü Yolu'; +$wb['maildir_path_txt'] = 'E-posta Klasörü Yolu'; +$wb['maildir_format_txt'] = 'E-posta Klasörü Biçimi'; $wb['homedir_path_txt'] = 'Kullanıcı Klasörü Yolu'; -$wb['mailuser_uid_txt'] = 'Posta Kullanıcısı UID'; -$wb['mailuser_gid_txt'] = 'Posta Kullanıcısı GID'; -$wb['mailuser_name_txt'] = 'Posta Kullanıcısı Adı'; -$wb['mailuser_group_txt'] = 'Posta Kullanıcısı Grubu'; +$wb['dkim_path_txt'] = 'DKIM Yolu'; +$wb['mailuser_uid_txt'] = 'E-posta Kullanıcısı UID'; +$wb['mailuser_gid_txt'] = 'E-posta Kullanıcısı GID'; +$wb['mailuser_name_txt'] = 'E-posta Kullanıcısı Adı'; +$wb['mailuser_group_txt'] = 'E-posta Kullanıcısı Grubu'; +$wb['mailbox_virtual_uidgid_maps_txt'] = 'E-posta Kutusunda Web Sitesinin Linux Kullanıcı Kodu Kullanılsın'; +$wb['mailbox_virtual_uidgid_maps_info_txt'] = 'Yalnız tek bir web ve e-posta sunucusu kurulumunda'; +$wb['mailbox_virtual_uidgid_maps_error_nosingleserver'] = 'Çoklu sunucu kurulumunda UID eÅŸleÅŸtirilemez.'; +$wb['mailbox_virtual_uidgid_maps_error_nodovecot'] = 'UID eÅŸleÅŸtirmesi yalnız dovecot ile kullanılabilir.'; +$wb['mailbox_virtual_uidgid_maps_error_alreadyusers'] = 'Daha önce oluÅŸturulmuÅŸ e-posta kullanıcıları varsa UID eÅŸleÅŸtirme deÄŸiÅŸtirilemez.'; $wb['relayhost_txt'] = 'Aktarım Sunucusu'; $wb['relayhost_user_txt'] = 'Aktarım Sunucu Kullanıcı Adı'; $wb['relayhost_password_txt'] = 'Aktarım Sunucu Parolası'; -$wb['mailbox_size_limit_txt'] = 'Posta Kutusu Boyutu Sınırı'; +$wb['reject_sender_login_mismatch_txt'] = 'Gönderen ile Oturum Açmış Kullanıcı EÅŸleÅŸmiyorsa Reddedilsin'; +$wb['mailbox_size_limit_txt'] = 'E-posta Kutusu Boyutu Sınırı'; $wb['message_size_limit_txt'] = 'Ä°leti Boyutu Sınırı'; $wb['ip_address_txt'] = 'IP Adresi'; $wb['netmask_txt'] = 'AÄŸ Maskesi'; @@ -51,69 +59,73 @@ $wb['gateway_error_wrong'] = 'AÄŸ geçidi biçimi geçersiz.'; $wb['hostname_error_empty'] = 'Sunucu adı boÅŸ olamaz.'; $wb['hostname_error_regex'] = 'Sunucu adı geçersiz.'; $wb['nameservers_error_empty'] = 'Ad sunucusu boÅŸ olamaz.'; -$wb['config_dir_txt'] = 'Ayar Klasörü'; +$wb['config_dir_txt'] = 'Ayarlar Klasörü'; $wb['init_script_txt'] = 'Zamanlanmış Görev BaÅŸlatma BetiÄŸinin Adı'; $wb['crontab_dir_txt'] = 'Bireysel Zamanlanmış Görevler Yolu'; -$wb['wget_txt'] = 'wget Yazılımının Yolu'; +$wb['wget_txt'] = 'wget Uygulamasının Yolu'; $wb['web_user_txt'] = 'Apache Kullanıcı Adı'; $wb['web_group_txt'] = 'Apache Grubu'; $wb['security_level_txt'] = 'Güvenlik Düzeyi'; $wb['loglevel_txt'] = 'Günlükleme Düzeyi'; -$wb['apps_vhost_port_txt'] = 'Apps-vhost Kapısı'; -$wb['apps_vhost_ip_txt'] = 'Apps-vhost IP Adresi'; -$wb['apps_vhost_servername_txt'] = 'Apps-vhost Alan Adı'; +$wb['apps_vhost_port_txt'] = 'Uygulama Sanal Sunucusu Kapısı'; +$wb['apps_vhost_ip_txt'] = 'Uygulama Sanal Sunucusu IP Adresi'; +$wb['apps_vhost_servername_txt'] = 'Uygulama Sanal Sunucusu Etki Alanı'; $wb['bind_user_txt'] = 'BIND Kullanıcı Adı'; $wb['bind_group_txt'] = 'BIND Grubu'; -$wb['bind_zonefiles_dir_txt'] = 'BIND zonefiles Klasörü'; +$wb['bind_zonefiles_dir_txt'] = 'BIND Bölge Dosyaları Klasörü'; $wb['named_conf_path_txt'] = 'BIND named.conf Dosyası Yolu'; $wb['bind_user_error_empty'] = 'BIND kullanıcı adı boÅŸ olamaz.'; $wb['bind_group_error_empty'] = 'BIND grubu boÅŸ olamaz.'; -$wb['bind_zonefiles_dir_error_empty'] = 'BIND zonefiles klasörü boÅŸ olamaz.'; +$wb['bind_zonefiles_dir_error_empty'] = 'BIND bölge dosyaları klasörü boÅŸ olamaz.'; $wb['named_conf_path_error_empty'] = 'BIND named.conf dosyası yolu boÅŸ olamaz.'; $wb['named_conf_local_path_error_empty'] = 'BIND named.conf.local dosyasının yolu boÅŸ olamaz.'; -$wb['mail_filter_syntax_txt'] = 'Posta Süzgeci Yazımı'; +$wb['mail_filter_syntax_txt'] = 'E-posta Süzgeci Yazımı'; $wb['pop3_imap_daemon_txt'] = 'POP3/IMAP Sunucusu'; $wb['php_open_basedir_txt'] = 'PHP open_basedir'; $wb['php_open_basedir_error_empty'] = 'PHP open_basedir boÅŸ olamaz.'; $wb['htaccess_allow_override_txt'] = '.htaccess AllowOverride'; $wb['htaccess_allow_override_error_empty'] = '.htaccess AllowOverride boÅŸ olamaz.'; -$wb['awstats_conf_dir_txt'] = 'Awstats Ayar Klasörü'; +$wb['awstats_conf_dir_txt'] = 'Awstats Ayarları Klasörü'; $wb['awstats_data_dir_txt'] = 'Awstats Veri Klasörü'; $wb['awstats_pl_txt'] = 'awstats.pl BetiÄŸi'; $wb['awstats_buildstaticpages_pl_txt'] = 'awstats_buildstaticpages.pl BetiÄŸi'; $wb['backup_dir_txt'] = 'Yedek Klasörü'; +$wb['backup_tmp_txt'] = 'Geçici Zip Yedek Klasörü'; $wb['named_conf_local_path_txt'] = 'BIND named.conf.local Yolu'; $wb['php_ini_path_cgi_txt'] = 'CGI php.ini Yolu'; $wb['php_ini_path_apache_txt'] = 'Apache php.ini Yolu'; -$wb['check_apache_config_txt'] = 'Yeniden baÅŸlatıldığında apache ayarları denetlensin'; -$wb['network_config_warning_txt'] = 'AÄŸ ayarlama seçeneÄŸi yalnız Debian ve Ubuntu sunucularda kullanılabilir. AÄŸ arayüzünüz eth0 deÄŸil ise bu seçeneÄŸi etkinleÅŸtirmeyin.'; +$wb['check_apache_config_txt'] = 'Apache Ayarları Yeniden BaÅŸlatmalarda Denetlensin'; +$wb['network_config_warning_txt'] = 'AÄŸ ayarlama seçeneÄŸi yalnız Debian ve Ubuntu sunucularda kullanılabilir. AÄŸ arayüzü eth0 deÄŸil ise bu seçeneÄŸi etkinleÅŸtirmeyin.'; $wb['CA_path_txt'] = 'CA Yolu'; -$wb['CA_pass_txt'] = 'CA parolası'; +$wb['CA_pass_txt'] = 'CA Parolası'; $wb['fastcgi_config_syntax_txt'] = 'FastCGI Ayar Yazımı'; $wb['backup_mode_txt'] = 'Yedekleme Kipi'; $wb['backup_mode_userzip'] = 'Web kullanıcısına ait web dosyaları ZIP biçiminde yedeklensin'; $wb['backup_mode_rootgz'] = 'Web klasöründeki tüm dosyalar root kullanıcısı olarak yedeklensin'; -$wb['server_type_txt'] = 'Sunucu Tipi'; -$wb['nginx_vhost_conf_dir_txt'] = 'Nginx Vhost ayar klasörü'; -$wb['nginx_vhost_conf_enabled_dir_txt'] = 'Nginx Vhost etkin ayar klasörü'; +$wb['tmpdir_path_error_empty'] = 'tmp klasörü yolu boÅŸ olamaz.'; +$wb['tmpdir_path_error_regex'] = 'tmp klasörü yolu geçersiz.'; +$wb['backup_time_txt'] = 'Yedekleme Zamanı'; +$wb['server_type_txt'] = 'Sunucu Türü'; +$wb['nginx_vhost_conf_dir_txt'] = 'Nginx Sanal Sunucu Ayarları Klasörü'; +$wb['nginx_vhost_conf_enabled_dir_txt'] = 'Etkin Nginx sanal sunucu ayarları klasörü'; $wb['nginx_user_txt'] = 'Nginx kullanıcı adı'; $wb['nginx_group_txt'] = 'Nginx grubu'; $wb['nginx_cgi_socket_txt'] = 'Nginx CGI Soketi'; $wb['backup_dir_error_empty'] = 'Yedekleme klasörü boÅŸ olamaz.'; -$wb['maildir_path_error_empty'] = 'Posta klasörü yolu boÅŸ olamaz.'; +$wb['maildir_path_error_empty'] = 'E-posta klasörü yolu boÅŸ olamaz.'; $wb['homedir_path_error_empty'] = 'Kullanıcı klasörü yolu boÅŸ olamaz.'; -$wb['mailuser_uid_error_empty'] = 'Posta kullanıcısı UID boÅŸ olamaz.'; -$wb['mailuser_gid_error_empty'] = 'Posta kullanıcısı GID boÅŸ olamaz.'; -$wb['mailuser_name_error_empty'] = 'Posta kullanıcısı adı boÅŸ olamaz.'; -$wb['mailuser_group_error_empty'] = 'Posta kullanıcısı grubu boÅŸ olamaz.'; -$wb['getmail_config_dir_error_empty'] = 'Getmail ayar klasörü boÅŸ olamaz.'; +$wb['mailuser_uid_error_empty'] = 'E-posta kullanıcısı UID boÅŸ olamaz.'; +$wb['mailuser_gid_error_empty'] = 'E-posta kullanıcısı GID boÅŸ olamaz.'; +$wb['mailuser_name_error_empty'] = 'E-posta kullanıcısı adı boÅŸ olamaz.'; +$wb['mailuser_group_error_empty'] = 'E-posta kullanıcısı grubu boÅŸ olamaz.'; +$wb['getmail_config_dir_error_empty'] = 'Getmail ayarları klasörü boÅŸ olamaz.'; $wb['website_basedir_error_empty'] = 'Web sitesi kök klasörü boÅŸ olamaz.'; $wb['website_path_error_empty'] = 'Web sitesi yolu boÅŸ olamaz.'; $wb['website_symlinks_error_empty'] = 'Web sitesi sembolik baÄŸlantısı boÅŸ olamaz.'; -$wb['vhost_conf_dir_error_empty'] = 'Vhost ayar klasörü boÅŸ olamaz.'; -$wb['vhost_conf_enabled_dir_error_empty'] = 'Vhost etkin ayar klasörü boÅŸ olamaz.'; -$wb['nginx_vhost_conf_dir_error_empty'] = 'Nginx Vhost ayar klasörü boÅŸ olamaz.'; -$wb['nginx_vhost_conf_enabled_dir_error_empty'] = 'Nginx Vhost etkin ayar klasörü boÅŸ olamaz.'; +$wb['vhost_conf_dir_error_empty'] = 'Sanal sunucu ayarları klasörü boÅŸ olamaz.'; +$wb['vhost_conf_enabled_dir_error_empty'] = 'Etkin sanal sunucu ayarları klasörü boÅŸ olamaz.'; +$wb['nginx_vhost_conf_dir_error_empty'] = 'Nginx sanal sunucu ayarları klasörü boÅŸ olamaz.'; +$wb['nginx_vhost_conf_enabled_dir_error_empty'] = 'Etkin nginx sanal sunucu ayarları klasörü boÅŸ olamaz.'; $wb['apache_user_error_empty'] = 'Apache kullanıcısı boÅŸ olamaz.'; $wb['apache_group_error_empty'] = 'Apache grubu boÅŸ olamaz.'; $wb['nginx_user_error_empty'] = 'Nginx kullanıcısı boÅŸ olamaz.'; @@ -121,8 +133,8 @@ $wb['nginx_group_error_empty'] = 'Nginx grubu boÅŸ olamaz.'; $wb['php_ini_path_apache_error_empty'] = 'Apache php.ini yolu boÅŸ olamaz.'; $wb['php_ini_path_cgi_error_empty'] = 'CGI php.ini yolu boÅŸ olamaz.'; $wb['nginx_cgi_socket_empty'] = 'Nginx CGI soketi boÅŸ olamaz.'; -$wb['apps_vhost_port_error_empty'] = 'Apps-vhost kapısı boÅŸ olamaz.'; -$wb['apps_vhost_ip_error_empty'] = 'Apps-vhost IP adresi boÅŸ olamaz.'; +$wb['apps_vhost_port_error_empty'] = 'Uygulama sanal sunucusu kapısı boÅŸ olamaz.'; +$wb['apps_vhost_ip_error_empty'] = 'Uygulama sanal sunucusu IP adresi boÅŸ olamaz.'; $wb['fastcgi_starter_path_error_empty'] = 'FastCGI baÅŸlatıcı yolu boÅŸ olamaz.'; $wb['fastcgi_starter_script_error_empty'] = 'FastCGI baÅŸlatıcı betiÄŸi boÅŸ olamaz.'; $wb['fastcgi_alias_error_empty'] = 'FastCGI takma adı boÅŸ olamaz.'; @@ -137,7 +149,7 @@ $wb['jailkit_chroot_cron_programs_error_empty'] = 'Jailkit zamanlanmış görev $wb['vlogger_config_dir_error_empty'] = 'Ayarlar klasörü boÅŸ olamaz.'; $wb['cron_init_script_error_empty'] = 'Zamanlanmış görevler baÅŸlatma betiÄŸi adı boÅŸ olamaz.'; $wb['crontab_dir_error_empty'] = 'Bireysel zamanlanmış görev yolu boÅŸ olamaz.'; -$wb['cron_wget_error_empty'] = 'wget yazılımı yolu boÅŸ olamaz.'; +$wb['cron_wget_error_empty'] = 'wget uygulaması yolu boÅŸ olamaz.'; $wb['php_fpm_init_script_txt'] = 'PHP-FPM BaÅŸlatma BetiÄŸi'; $wb['php_fpm_init_script_error_empty'] = 'PHP-FPM baÅŸlatma betiÄŸi boÅŸ olamaz.'; $wb['php_fpm_ini_path_txt'] = 'PHP-FPM php.ini Yolu'; @@ -148,11 +160,12 @@ $wb['php_fpm_start_port_txt'] = 'PHP-FPM BaÅŸlangıç Kapısı'; $wb['php_fpm_start_port_error_empty'] = 'PHP-FPM baÅŸlangıç kapısı boÅŸ olamaz.'; $wb['php_fpm_socket_dir_txt'] = 'PHP-FPM Soket Klasörü'; $wb['php_fpm_socket_dir_error_empty'] = 'PHP-FPM soket klasörü boÅŸ olamaz.'; -$wb['try_rescue_txt'] = 'Hizmetler izlensin ve sorun çıktığında yeniden baÅŸlatılsın'; -$wb['do_not_try_rescue_httpd_txt'] = 'HTTPD izlenmesin'; -$wb['do_not_try_rescue_mysql_txt'] = 'MySQL izlenmesin'; -$wb['do_not_try_rescue_mail_txt'] = 'E-posta izlenmesin'; -$wb['rescue_description_txt'] = '<b>Uyarı:</b> mysql sunucusunu kapatmak istiyorsanız \\"MySQL izlenmesin\\" seçeneÄŸini iÅŸaretleyip 2-3 dakika bekleyin.<br>2-3 dakika beklemezseniz, kurtarma iÅŸlemi mysql sunucusunu yeniden baÅŸlatmaya çalışır!'; +$wb['try_rescue_txt'] = 'Hizmetler Ä°zlensin ve Sorun Çıktığında Yeniden BaÅŸlatılsın'; +$wb['do_not_try_rescue_httpd_txt'] = 'HTTPD Ä°zlenmesin'; +$wb['do_not_try_rescue_mongodb_txt'] = 'MongoDB Ä°zlenmesin'; +$wb['do_not_try_rescue_mysql_txt'] = 'MySQL Ä°zlenmesin'; +$wb['do_not_try_rescue_mail_txt'] = 'E-posta Ä°zlenmesin'; +$wb['rescue_description_txt'] = '<b>Uyarı:</b> mysql sunucusunu kapatmak istiyorsanız "MySQL Ä°zlenmesin" seçeneÄŸini etkinleÅŸtirip 2-3 dakika bekleyin.<br>2-3 dakika beklemezseniz, kurtarma iÅŸlemi mysql sunucusunu yeniden baÅŸlatmaya çalışır!'; $wb['enable_sni_txt'] = 'SNI Kullanılsın'; $wb['set_folder_permissions_on_update_txt'] = 'Güncellenirken klasör izinleri ayarlansın'; $wb['add_web_users_to_sshusers_group_txt'] = 'Web kullanıcıları -sshusers- grubuna eklensin'; @@ -163,20 +176,20 @@ $wb['realtime_blackhole_list_note_txt'] = '(RBL adlarını virgül ile ayırarak $wb['ssl_settings_txt'] = 'SSL Ayarları'; $wb['permissions_txt'] = 'Ä°zinler'; $wb['php_settings_txt'] = 'PHP Ayarları'; -$wb['apps_vhost_settings_txt'] = 'Uygulama SSunucu Ayarları'; +$wb['apps_vhost_settings_txt'] = 'Uygulama Sanal Sunucu Ayarları'; $wb['awstats_settings_txt'] = 'AWStats Ayarları'; $wb['firewall_txt'] = 'Güvenlik Duvarı'; -$wb['mailbox_quota_stats_txt'] = 'Posta Kutusu Kota Ä°statistikleri'; -$wb['enable_ip_wildcard_txt'] = 'IP genel karakteri (*) kullanılsın'; +$wb['mailbox_quota_stats_txt'] = 'E-posta Kutusu Kota Ä°statistikleri'; +$wb['enable_ip_wildcard_txt'] = 'IP Genel Karakteri (*) Kullanılsın'; $wb['web_folder_protection_txt'] = 'Web klasörleri ayarlanamasın (geniÅŸletilmiÅŸ öznitelikler)'; -$wb['overtraffic_notify_admin_txt'] = 'Yöneticiye aşırı trafik bildirimi gönderilsin'; -$wb['overtraffic_notify_client_txt'] = 'Müşteriye aşırı trafik bildirimi gönderilsin'; +$wb['overtraffic_notify_admin_txt'] = 'Trafik Aşımı Bildirimi Yöneticiye Gönderilsin'; +$wb['overtraffic_notify_client_txt'] = 'Trafik Aşımı Bildirimi Müşteriye Gönderilsin'; $wb['rbl_error_regex'] = 'Lütfen geçerli RBL sunucu adları yazın.'; -$wb['overquota_notify_admin_txt'] = 'Yöneticiye kota uyarıları gönderilsin'; -$wb['overquota_notify_client_txt'] = 'Müşteriye kota uyarıları gönderilsin'; -$wb['overquota_notify_onok_txt'] = 'Müşteriye kota tamam iletisi gönderilsin'; -$wb['overquota_notify_freq_txt'] = 'Kota uyarılarının kaç günde bir gönderileceÄŸi'; -$wb['overquota_notify_freq_note_txt'] = '0 = ileti yalnız bir kez gönderilir, yinelenmez'; +$wb['overquota_notify_admin_txt'] = 'Kota Uyarıları Yöneticiye Gönderilsin'; +$wb['overquota_notify_client_txt'] = 'Kota Uyarıları Müşteriye Gönderilsin'; +$wb['overquota_notify_onok_txt'] = 'Kota Tamam Ä°letisi Müşteriye Gönderilsin'; +$wb['overquota_notify_freq_txt'] = 'Kota Uyarısı Gönderim Sıklığı (Gün)'; +$wb['overquota_notify_freq_note_txt'] = '0 yazıldığında ileti yalnız bir kez gönderilir, yinelenmez'; $wb['admin_notify_events_txt'] = 'Yönetici Bildirim Düzeyi'; $wb['no_notifications_txt'] = 'Bildirim Gönderilmesin'; $wb['monit_url_txt'] = 'Monit Adresi'; @@ -189,24 +202,35 @@ $wb['munin_user_txt'] = 'Munin Kullanıcı Adı'; $wb['munin_password_txt'] = 'Munin Parolası'; $wb['munin_url_error_regex'] = 'Munin adresi geçersiz'; $wb['munin_url_note_txt'] = 'Kod:'; +$wb['v6_prefix_txt'] = 'IPv6 Ön Eki'; +$wb['vhost_rewrite_v6_txt'] = 'Yansı Ãœzerinde IPv6 Yeniden Yazılsın'; +$wb['v6_prefix_length'] = 'Ön ek tanımlanmış IPv6 adresine göre çok uzun '; $wb['backup_dir_is_mount_txt'] = 'Yedek Klasörü Takılı mı?'; +$wb['backup_dir_mount_cmd_txt'] = 'Mount komutu, yedek klasörü takılı deÄŸil ise'; +$wb['backup_delete_txt'] = 'Etki alanı ya da web sitesi silindiÄŸinde yedekler de silinsin'; +$wb['overquota_db_notify_admin_txt'] = 'Veritabanı Kotası Bildirimleri Yöneticiye Gönderilsin'; +$wb['overquota_db_notify_client_txt'] = 'Veritabanı Kotası Bildirimleri Müşteriye Gönderilsin'; +$wb['monitor_system_updates_txt'] = 'Linux Güncellemeleri Denetlensin'; +$wb['php_handler_txt'] = 'Varsayılan PHP Ä°ÅŸleyici'; +$wb['disabled_txt'] = 'Devre Dışı'; +$wb['dkim_strength_txt'] = 'DKIM zorluÄŸu'; $wb['monitor_system_updates_txt'] = 'Linux Güncelleme Denetimi'; $wb['invalid_apache_user_txt'] = 'Apache kullanıcısı geçersiz.'; $wb['invalid_apache_group_txt'] = 'Apache grubu geçersiz.'; $wb['backup_dir_error_regex'] = 'Yedek klasörü geçersiz.'; -$wb['maildir_path_error_regex'] = 'Posta klasörü yolu geçersiz.'; +$wb['maildir_path_error_regex'] = 'E-posta klasörü yolu geçersiz.'; $wb['homedir_path_error_regex'] = 'Kullanıcı klasörü yolu geçersiz.'; -$wb['mailuser_name_error_regex'] = 'Posta kullanıcısı adı geçersiz.'; -$wb['mailuser_group_name_error_regex'] = 'Posta kullanıcısı grup adı geçersiz.'; -$wb['mailuser_uid_error_range'] = 'Posta kullanıcısı UID deÄŸeri >= 2000 olmalıdır'; -$wb['mailuser_gid_error_range'] = 'Posta kullanıcısı GID deÄŸeri >= 2000 olmalıdır'; -$wb['getmail_config_dir_error_regex'] = 'Getmail ayar klasörü geçersiz.'; +$wb['mailuser_name_error_regex'] = 'E-posta kullanıcısı adı geçersiz.'; +$wb['mailuser_group_name_error_regex'] = 'E-posta kullanıcısı grup adı geçersiz.'; +$wb['mailuser_uid_error_range'] = 'E-posta kullanıcısı UID deÄŸeri >= 2000 olmalıdır'; +$wb['mailuser_gid_error_range'] = 'E-posta kullanıcısı GID deÄŸeri >= 2000 olmalıdır'; +$wb['getmail_config_dir_error_regex'] = 'Getmail ayarları klasörü geçersiz.'; $wb['website_basedir_error_regex'] = 'Web sitesi kök klasörü geçersiz.'; $wb['website_symlinks_error_regex'] = 'Web sitesi sembolik baÄŸlantıları geçersiz.'; -$wb['vhost_conf_dir_error_regex'] = 'Vhost ayar klasörü geçersiz.'; -$wb['vhost_conf_enabled_dir_error_regex'] = 'Etkin vhost ayar klasörü geçersiz.'; -$wb['nginx_vhost_conf_dir_error_regex'] = 'Nginx ayar klasörü geçersiz.'; -$wb['nginx_vhost_conf_enabled_dir_error_regex'] = 'Etkin nginx ayar klasörü geçersiz.'; +$wb['vhost_conf_dir_error_regex'] = 'Sanal sunucu ayarları klasörü geçersiz.'; +$wb['vhost_conf_enabled_dir_error_regex'] = 'Etkin sanal sunucu ayarları klasörü geçersiz.'; +$wb['nginx_vhost_conf_dir_error_regex'] = 'Nginx ayarları klasörü geçersiz.'; +$wb['nginx_vhost_conf_enabled_dir_error_regex'] = 'Etkin nginx ayarları klasörü geçersiz.'; $wb['ca_path_error_regex'] = 'CA yolu geçersiz.'; $wb['invalid_nginx_user_txt'] = 'nginx kullanıcısı geçersiz.'; $wb['invalid_nginx_group_txt'] = 'nginx grubu geçersiz.'; @@ -225,7 +249,7 @@ $wb['awstats_buildstaticpages_pl_empty'] = 'awstats_buildstaticpages.pl boÅŸ ola $wb['awstats_buildstaticpages_pl_error_regex'] = 'awstats_buildstaticpages.pl yolu geçersiz.'; $wb['invalid_bind_user_txt'] = 'BIND kullanıcısı geçersiz.'; $wb['invalid_bind_group_txt'] = 'BIND grubu geçersiz.'; -$wb['bind_zonefiles_dir_error_regex'] = 'BIND zonefiles klasörü geçersiz.'; +$wb['bind_zonefiles_dir_error_regex'] = 'BIND bölge dosyaları klasörü geçersiz.'; $wb['named_conf_path_error_regex'] = 'named.conf yolu geçersiz.'; $wb['named_conf_local_path_error_regex'] = 'named.conf.local yolu geçersiz.'; $wb['fastcgi_starter_path_error_regex'] = 'fastcgi baÅŸlatıcı yolu geçersiz.'; @@ -237,67 +261,37 @@ $wb['jailkit_chroot_home_error_regex'] = 'Jailkit chroot kök klasörü geçersi $wb['jailkit_chroot_app_sections_error_regex'] = 'Jailkit chroot bölümleri geçersiz.'; $wb['jailkit_chroot_app_programs_error_regex'] = 'Jailkit chroot app uygulama yazılımları geçersiz.'; $wb['jailkit_chroot_cron_programs_error_regex'] = 'Jailkit chroot zamanlanmış görev yazılımları geçersiz.'; -$wb['vlogger_config_dir_error_regex'] = 'Vlogger ayar klasörü geçersiz.'; +$wb['vlogger_config_dir_error_regex'] = 'Vlogger ayarları klasörü geçersiz.'; $wb['cron_init_script_error_regex'] = 'Zamanlanmış görev baÅŸlatma betiÄŸi geçersiz.'; $wb['crontab_dir_error_regex'] = 'Zamanlanmış görev klasörü geçersiz.'; $wb['cron_wget_error_regex'] = 'Zamanlanmış görev wget yolu geçersiz.'; $wb['network_filesystem_txt'] = 'AÄŸ Dosya Sistemi'; -$wb['maildir_format_txt'] = 'Maildir Format'; -$wb['dkim_path_txt'] = 'DKIM Path'; -$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['backup_time_txt'] = 'Backup time'; -$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['php_fpm_incron_reload_txt'] = 'Install incron trigger file to reload PHP-FPM'; -$wb['disabled_txt'] = 'Disabled'; -$wb['dkim_strength_txt'] = 'DKIM strength'; -$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'; -$wb['enable_spdy_txt'] = 'Makes SPDY/HTTP2 available'; -$wb['web_settings_txt'] = 'Web Server'; -$wb['xmpp_server_txt'] = 'XMPP Server'; -$wb['xmpp_use_ipv6_txt'] = 'Use IPv6'; -$wb['xmpp_bosh_max_inactivity_txt'] = 'Max. BOSH inactivity time'; -$wb['xmpp_bosh_timeout_range_wrong'] = 'Please enter a bosh timeout range between 15 - 360'; +$wb['php_ini_check_minutes_txt'] = 'Her X dakikada php.ini dosyasındaki deÄŸiÅŸiklikler denetlensin'; +$wb['php_ini_check_minutes_error_empty'] = 'php.ini dosyasındaki deÄŸiÅŸikliklerin kaç dakikada bir denetleneceÄŸini yazın.'; +$wb['php_ini_check_minutes_info_txt'] = '0 = denetim yapılmaz'; +$wb['enable_spdy_txt'] = 'SPDY/HTTP2 Kullanılsın'; +$wb['web_settings_txt'] = 'Web Sunucu'; +$wb['xmpp_server_txt'] = 'XMPP Sunucu'; +$wb['xmpp_use_ipv6_txt'] = 'IPv6 Kullanılsın'; +$wb['xmpp_bosh_max_inactivity_txt'] = 'BOSH için en uzun iÅŸlem yapılmama süresi'; +$wb['xmpp_bosh_timeout_range_wrong'] = '15 ile 360 arasında bir bosh zaman aşımı süresi yazın'; $wb['xmpp_module_saslauth'] = 'saslauth'; -$wb['xmpp_server_admins_txt'] = 'Server Admins (JIDs)'; -$wb['xmpp_modules_enabled_txt'] = 'Serverwide enabled plugins (one per line)'; -$wb['xmpp_ports_txt'] = 'Component ports'; +$wb['xmpp_server_admins_txt'] = 'Sunucu Yöneticileri (JID)'; +$wb['xmpp_modules_enabled_txt'] = 'Sunucu genelinde etkinleÅŸtirilecek uygulama ekleri (her satıra bir tane yazın)'; +$wb['xmpp_ports_txt'] = 'BileÅŸen Kapı Numaraları'; $wb['xmpp_port_http_txt'] = 'HTTP'; $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['skip_le_check_txt'] = 'Skip Lets Encrypt Check'; -$wb['migration_mode_txt'] = 'Server Migration Mode'; -$wb['nginx_enable_pagespeed_txt'] = 'Makes Pagespeed available'; -$wb['backup_tmp_txt'] = 'Backup tmp directory for zip'; -$wb['tmpdir_path_error_empty'] = 'tmp-dir Path is empty.'; -$wb['tmpdir_path_error_regex'] = 'Invalid tmp-dir path.'; -$wb['logging_txt'] = 'Store website access and error logs'; -$wb['logging_desc_txt'] = 'Use Tools > Resync to apply changes to existing sites. For Apache, access and error log can be anonymized. For nginx, only the access log is anonymized, the error log will contain IP addresses.'; -$wb['log_retention_txt'] = 'Log retention (days)'; -$wb['log_retention_error_ispositive'] = 'Log retention must be a number > 0'; -$wb['php_default_name_txt'] = 'Description Default PHP-Version'; -$wb['php_default_name_error_empty'] = 'Description Default PHP-Version must not be empty'; -$wb['error_mailbox_message_size_txt'] = 'Mailbox size must be larger or equal to message size'; -$wb['php_fpm_reload_mode_txt'] = 'PHP-FPM reload mode'; -$wb['content_filter_txt'] = 'Content Filter'; -$wb['rspamd_url_txt'] = 'Rspamd URL'; -$wb['rspamd_user_txt'] = 'Rspamd User'; -$wb['rspamd_password_txt'] = 'Rspamd Password'; +$wb['disable_bind_log_txt'] = 'UYARI günlük düzeyi iletileri için bind9 iletileri devre dışı bırakılsın'; +$wb['apps_vhost_enabled_txt'] = 'Uygulama Sanal Sunucusu Kullanılsın'; +$wb['skip_le_check_txt'] = 'Lets Encrypt Denetimi Atlansın'; +$wb['migration_mode_txt'] = 'Sunucu Aktarımı Kipi'; +$wb['nginx_enable_pagespeed_txt'] = 'Pagespeed uygulamasını etkinleÅŸtirir'; +$wb['logging_txt'] = 'Web Sitesi EriÅŸim ve Hata Günlükleri Kaydedilsin'; +$wb['logging_desc_txt'] = 'DeÄŸiÅŸiklikleri var olan sitelere uygulamak için Araçlar > Yeniden EÅŸitle komutunu kullanın. Apache için, eriÅŸim ve hata günlükleri anonimleÅŸtirilebilir. nginx için, only eriÅŸim günlüğü anonimleÅŸtirilebilir, hata günlüğüne IP adresleri kaydedilir.'; +$wb['log_retention_txt'] = 'Günlük Tutma Süresi (Gün)'; +$wb['log_retention_error_ispositive'] = 'Günlük tutma süresi 0 deÄŸerinden büyük bir sayı olmalıdır'; +$wb['php_default_name_txt'] = 'Varsayılan PHP Sürümü Açıklaması'; +$wb['php_default_name_error_empty'] = 'Varsayılan PHP sürümü açıklaması boÅŸ olamaz'; ?> diff --git a/interface/web/admin/lib/lang/tr_server_ip.lng b/interface/web/admin/lib/lang/tr_server_ip.lng index 3ebdbd0830..4b2cb1187d 100644 --- a/interface/web/admin/lib/lang/tr_server_ip.lng +++ b/interface/web/admin/lib/lang/tr_server_ip.lng @@ -1,10 +1,10 @@ <?php $wb['server_id_txt'] = 'Sunucu'; $wb['client_id_txt'] = 'Müşteri'; -$wb['ip_type_txt'] = 'Tip'; +$wb['ip_type_txt'] = 'Tür'; $wb['ip_address_txt'] = 'IP Adresi'; -$wb['virtualhost_txt'] = 'HTTP NameVirtualHost'; -$wb['virtualhost_port_txt'] = 'HTTP Kapıları'; +$wb['virtualhost_txt'] = 'HTTP sSunucu Adı'; +$wb['virtualhost_port_txt'] = 'HTTP Kapı Numaraları'; $wb['ip_error_wrong'] = 'IP adresi geçersiz'; $wb['ip_error_unique'] = 'Aynı IP adresi zaten var'; $wb['error_port_syntax'] = 'Kapı alanında geçersiz karakterler var. Lütfen yalnız virgül ile ayrılmış sayılar yazın. Örnek: 80,443'; diff --git a/interface/web/admin/lib/lang/tr_server_ip_list.lng b/interface/web/admin/lib/lang/tr_server_ip_list.lng index 9b25c605e7..d252da3df4 100644 --- a/interface/web/admin/lib/lang/tr_server_ip_list.lng +++ b/interface/web/admin/lib/lang/tr_server_ip_list.lng @@ -4,7 +4,7 @@ $wb['server_id_txt'] = 'Sunucu'; $wb['client_id_txt'] = 'Müşteri'; $wb['ip_address_txt'] = 'IP Adresi'; $wb['add_new_record_txt'] = 'IP Adresi Ekle'; -$wb['virtualhost_txt'] = 'HTTP SSunucu'; +$wb['virtualhost_txt'] = 'HTTP sSunucu'; $wb['virtualhost_port_txt'] = 'HTTP Kapıları'; -$wb['ip_type_txt'] = 'Tip'; +$wb['ip_type_txt'] = 'Tür'; ?> diff --git a/interface/web/admin/lib/lang/tr_server_ip_map.lng b/interface/web/admin/lib/lang/tr_server_ip_map.lng index 68b196fb23..c05e19c4b1 100644 --- a/interface/web/admin/lib/lang/tr_server_ip_map.lng +++ b/interface/web/admin/lib/lang/tr_server_ip_map.lng @@ -1,12 +1,12 @@ <?php -$wb['server_id_txt'] = 'Rewrite on Server'; -$wb['source_txt'] = 'Source IP'; -$wb['destination_txt'] = 'Destination IP'; -$wb['active_txt'] = 'Active'; -$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.'; -$wb['server_empty_error'] = 'The Server is empty.'; -$wb['duplicate_mapping_error'] = 'Mapping already exists.'; -$wb['ip_mapping_error'] = 'Source IP can not be an IP of the Rewrite-Server'; +$wb['server_id_txt'] = 'Sunucuda Yeniden Yazma'; +$wb['source_txt'] = 'Kaynak IP'; +$wb['destination_txt'] = 'Hedef IP'; +$wb['active_txt'] = 'Etkin'; +$wb['ip_error_wrong'] = 'Hedef IP adresi geçersiz'; +$wb['destination_ip_empty'] = 'Hedef IP adresi boÅŸ olamaz.'; +$wb['source_ip_empty'] = 'Kaynak IP adresi boÅŸ olamaz.'; +$wb['server_empty_error'] = 'Sunucu boÅŸ olamaz.'; +$wb['duplicate_mapping_error'] = 'EÅŸleÅŸme zaten var.'; +$wb['ip_mapping_error'] = 'Kaynak IP adresi Yeniden yazma sunucusunun IP adreslerinden biri olamaz'; ?> diff --git a/interface/web/admin/lib/lang/tr_server_ip_map_list.lng b/interface/web/admin/lib/lang/tr_server_ip_map_list.lng index 1fedc10b2e..e0ee9a9729 100644 --- a/interface/web/admin/lib/lang/tr_server_ip_map_list.lng +++ b/interface/web/admin/lib/lang/tr_server_ip_map_list.lng @@ -1,7 +1,7 @@ <?php -$wb['list_head_txt'] = 'IP Mappings'; -$wb['server_id_txt'] = 'Server'; -$wb['source_ip_txt'] = 'Source IP'; -$wb['destination_ip_txt'] = 'Destination IP'; -$wb['active_txt'] = 'Active'; +$wb['list_head_txt'] = 'IP EÅŸleÅŸtirmeleri'; +$wb['server_id_txt'] = 'Sunucu'; +$wb['source_ip_txt'] = 'Kaynak IP'; +$wb['destination_ip_txt'] = 'Hedef IP'; +$wb['active_txt'] = 'Etkin'; ?> diff --git a/interface/web/admin/lib/lang/tr_server_list.lng b/interface/web/admin/lib/lang/tr_server_list.lng index 9f791f78a1..8e22a526c8 100644 --- a/interface/web/admin/lib/lang/tr_server_list.lng +++ b/interface/web/admin/lib/lang/tr_server_list.lng @@ -1,12 +1,12 @@ <?php $wb['list_head_txt'] = 'Sunucu'; $wb['server_name_txt'] = 'Ad'; -$wb['mail_server_txt'] = 'Posta'; +$wb['mail_server_txt'] = 'E-posta'; $wb['web_server_txt'] = 'Web'; $wb['dns_server_txt'] = 'DNS'; $wb['file_server_txt'] = 'Dosya'; $wb['db_server_txt'] = 'Veritabanı'; -$wb['vserver_server_txt'] = 'SSunucu'; +$wb['vserver_server_txt'] = 'sSunucu'; $wb['proxy_server_txt'] = 'Vekil Sunucu'; $wb['firewall_server_txt'] = 'Güvenlik Duvarı'; $wb['add_new_record_txt'] = 'Sunucu Ekle'; diff --git a/interface/web/admin/lib/lang/tr_server_php.lng b/interface/web/admin/lib/lang/tr_server_php.lng index 8728444f13..e0437e94b3 100644 --- a/interface/web/admin/lib/lang/tr_server_php.lng +++ b/interface/web/admin/lib/lang/tr_server_php.lng @@ -13,5 +13,5 @@ $wb['php_fastcgi_ini_dir_txt'] = 'php.ini Klasörünün Yolu'; $wb['php_fpm_init_script_txt'] = 'PHP-FPM BaÅŸlatma BetiÄŸinin Yolu'; $wb['php_fpm_ini_dir_txt'] = 'php.ini Klasörünün Yolu'; $wb['php_fpm_pool_dir_txt'] = 'PHP-FPM Havuz Klasörünün Yolu'; -$wb['active_txt'] = 'Active'; +$wb['active_txt'] = 'Etkin'; ?> diff --git a/interface/web/admin/lib/lang/tr_server_php_list.lng b/interface/web/admin/lib/lang/tr_server_php_list.lng index dd3d6b730c..06319e9855 100644 --- a/interface/web/admin/lib/lang/tr_server_php_list.lng +++ b/interface/web/admin/lib/lang/tr_server_php_list.lng @@ -4,5 +4,5 @@ $wb['server_id_txt'] = 'Sunucu'; $wb['add_new_record_txt'] = 'PHP Sürümü Ekle'; $wb['client_id_txt'] = 'Müşteri'; $wb['name_txt'] = 'PHP Adı'; -$wb['active_txt'] = 'Active'; +$wb['active_txt'] = 'Etkin'; ?> diff --git a/interface/web/admin/lib/lang/tr_software_package.lng b/interface/web/admin/lib/lang/tr_software_package.lng index dfd4981832..addda60195 100644 --- a/interface/web/admin/lib/lang/tr_software_package.lng +++ b/interface/web/admin/lib/lang/tr_software_package.lng @@ -2,5 +2,5 @@ $wb['package_title_txt'] = 'Paket BaÅŸlığı'; $wb['package_key_txt'] = 'Paket Anahtarı'; $wb['Software Package'] = 'Yazılım Paketi'; -$wb['Modify software package details'] = 'Yazılım paketi ayrıntılarını düzenleyin'; +$wb['Modify software package details'] = 'Yazılım paketi bilgilerini düzenle'; ?> diff --git a/interface/web/admin/lib/lang/tr_software_update_list.lng b/interface/web/admin/lib/lang/tr_software_update_list.lng index 4ee824a6e1..a462d90faa 100644 --- a/interface/web/admin/lib/lang/tr_software_update_list.lng +++ b/interface/web/admin/lib/lang/tr_software_update_list.lng @@ -1,6 +1,6 @@ <?php $wb['list_head_txt'] = 'Yazılım Güncellemeleri'; -$wb['server_select_txt'] = 'Sunucu seçin'; +$wb['server_select_txt'] = 'Sunucu Seçin'; $wb['installed_txt'] = 'Ä°ÅŸlem'; $wb['update_title_txt'] = 'Güncelleme'; $wb['version_txt'] = 'Sürüm'; diff --git a/interface/web/admin/lib/lang/tr_system_config.lng b/interface/web/admin/lib/lang/tr_system_config.lng index c52893f6b4..3ef8e26875 100644 --- a/interface/web/admin/lib/lang/tr_system_config.lng +++ b/interface/web/admin/lib/lang/tr_system_config.lng @@ -1,11 +1,11 @@ <?php $wb['system_config_desc_txt'] = ''; -$wb['smtp_missing_admin_mail_txt'] = 'SMTP posta göndermesini kullanmak için yönetici adı ve yönetici e-posta adresini yazmalısınız.'; +$wb['smtp_missing_admin_mail_txt'] = 'SMTP e-posta gönderimini kullanmak için yönetici adı ve yönetici e-posta adresini yazmalısınız.'; $wb['dashboard_atom_url_admin_txt'] = 'Panel Atom akışının Ä°nternet adresi (yönetici)'; $wb['dashboard_atom_url_reseller_txt'] = 'Panel Atom akışının Ä°nternet adresi (bayi)'; $wb['dashboard_atom_url_client_txt'] = 'Panel Atom akışının Ä°nternet adresi (müşteri)'; $wb['warning'] = 'Bu deÄŸerleri deÄŸiÅŸtirirken dikkatli olun! Sistemde birden fazla müşteri varsa, ön ekleri kaldırmayın.'; -$wb['tab_change_discard_txt'] = 'Sekme deÄŸiÅŸtirildiÄŸinde deÄŸiÅŸiklikler yoksayılsın'; +$wb['tab_change_discard_txt'] = 'Sekme deÄŸiÅŸtirildiÄŸinde deÄŸiÅŸiklikler yok sayılsın'; $wb['tab_change_warning_txt'] = 'Sekme deÄŸiÅŸtirme uyarısı'; $wb['tab_change_warning_note_txt'] = 'Formlardaki veriler düzenlenirken, kullanıcı bir deÄŸiÅŸiklik yapmışsa sekme deÄŸiÅŸtirilmek istendiÄŸinde bir uyarı görüntülenir.'; $wb['dbname_prefix_txt'] = 'Veritabanı adı ön eki'; @@ -13,8 +13,10 @@ $wb['dbuser_prefix_txt'] = 'Veritabanı kullanıcısı ön eki'; $wb['shelluser_prefix_txt'] = 'Kabuk kullanıcısı ön eki'; $wb['webdavuser_prefix_txt'] = 'Webdav kullanıcısı ön eki'; $wb['ftpuser_prefix_txt'] = 'FTP kullanıcısı ön eki'; -$wb['vhost_subdomains_txt'] = 'Alt alanlar web sitesi ÅŸeklinde oluÅŸturulsun'; -$wb['vhost_subdomains_note_txt'] = 'Sistemde SSunucu alt alan adları varken bu seçenek devre dışı bırakılamaz!'; +$wb['vhost_subdomains_txt'] = 'Etki alanları web sitesi ÅŸeklinde oluÅŸturulsun'; +$wb['vhost_subdomains_note_txt'] = 'Sistemde sanal sunucu alt etki alanları varken bu seçenek devre dışı bırakılamaz!'; +$wb['vhost_aliasdomains_txt'] = 'Takma etki alanı web sitesi olarak eklensin'; +$wb['vhost_aliasdomains_note_txt'] = 'Sistemde sanal sunucu takma etki alanları varken bu seçenek devre dışı bırakılamaz!'; $wb['dbname_prefix_error_regex'] = 'Veritabanı adı ön ekinde izin verilmeyen karakterler var'; $wb['dbuser_prefix_error_regex'] = 'Veritabanı kullanıcısı ön ekinde izin verilmeyen karakterler var'; $wb['ftpuser_prefix_error_regex'] = 'FTP kullanıcısı ön ekinde izin verilmeyen karakterler var'; @@ -22,20 +24,23 @@ $wb['shelluser_prefix_error_regex'] = 'Kabuk kullanıcısı ön ekinde izin veri $wb['webdavuser_prefix_error_regex'] = 'Webdav kullanıcısı ön ekinde izin verilmeyen karakterler var.'; $wb['dblist_phpmyadmin_link_txt'] = 'Veritabanı listesinde phpMyAdmin baÄŸlantısı'; $wb['enable_custom_login_txt'] = 'Özel oturum açma kullanıcı adı kullanılabilsin'; -$wb['mailboxlist_webmail_link_txt'] = 'Posta kutusu listesinde Webmail baÄŸlantısı'; +$wb['mailboxlist_webmail_link_txt'] = 'E-posta kutusu listesinde Webmail baÄŸlantısı'; +$wb['mailbox_show_autoresponder_tab_txt'] = 'E-posta hesabı ayrıntılarında otoyanıtlayıcı sekmesi görüntülensin'; +$wb['mailbox_show_mail_filter_tab_txt'] = 'E-posta hesabı ayrıntılarında e-posta süzgeci sekmesi görüntülensin'; +$wb['mailbox_show_custom_rules_tab_txt'] = 'E-posta hesabı ayrıntılarında isteÄŸe baÄŸlı e-posta süzgeci sekmesi görüntülensin'; $wb['webmail_url_txt'] = 'Webmail Adresi'; -$wb['mailmailinglist_link_txt'] = 'Posta Listeleri listesinde Posta Listesi baÄŸlantısı'; -$wb['mailmailinglist_url_txt'] = 'Posta Listesi Adresi'; +$wb['mailmailinglist_link_txt'] = 'E-posta Listeleri listesinde E-posta Listesi baÄŸlantısı'; +$wb['mailmailinglist_url_txt'] = 'E-posta Listesi Adresi'; $wb['phpmyadmin_url_txt'] = 'phpMyAdmin Adresi'; -$wb['use_domain_module_txt'] = 'Alan adı eklemek için alan adı modülü kullanılsın'; -$wb['use_domain_module_hint'] = 'Bu modül kullanıldığında, müşteriler yalnız yöneticinin oluÅŸturduÄŸu alan adlarından birini seçebilir. Alan adı alanını özgürce düzenleyemez. Bu deÄŸeri deÄŸiÅŸtirdikten sonra deÄŸiÅŸikliklerin geçerli olması için oturumu kapatıp yeniden açmalısınız.'; -$wb['new_domain_txt'] = 'Yeni alan adı oluÅŸturma HTML kodu'; +$wb['use_domain_module_txt'] = 'Etki alanı eklemek için etki alanı modülü kullanılsın'; +$wb['use_domain_module_hint'] = 'Bu modül kullanıldığında, müşteriler yalnız yöneticinin oluÅŸturduÄŸu etki alanlarından birini seçebilir. Etki alanını istediÄŸi gibi yazamaz. Bu deÄŸeri deÄŸiÅŸtirdikten sonra deÄŸiÅŸikliklerin geçerli olması için oturumu kapatıp yeniden açmalısınız.'; +$wb['new_domain_txt'] = 'Yeni etki alanı oluÅŸturma HTML kodu'; $wb['webftp_url_txt'] = 'WebFTP Adresi'; $wb['admin_mail_txt'] = 'Yönetici E-posta Adresi'; $wb['monitor_key_txt'] = 'Ä°zlenecek Kelime'; $wb['admin_name_txt'] = 'Yönetici Adı'; $wb['maintenance_mode_txt'] = 'Bakım Kipi'; -$wb['smtp_enabled_txt'] = 'Sistem postaları SMTP ile gönderilsin'; +$wb['smtp_enabled_txt'] = 'Sistem e-postaları SMTP ile gönderilsin'; $wb['smtp_host_txt'] = 'SMTP Sunucusu'; $wb['smtp_port_txt'] = 'SMTP Kapısı'; $wb['smtp_user_txt'] = 'SMTP Kullanıcı Adı'; @@ -46,9 +51,10 @@ $wb['use_combobox_txt'] = 'jQuery Açılan Kutusu Kullanılsın'; $wb['use_loadindicator_txt'] = 'Yük Göstergesi Kullanılsın'; $wb['f5_to_reload_js_txt'] = 'Bu deÄŸer deÄŸiÅŸtirildiÄŸinde, web tarayıcının JavaScript kitaplıklarını yeniden yüklemesi için F5 tuÅŸuna basmalı ya da web tarayıcının ön belleÄŸini temizlemelisiniz.'; $wb['client_username_web_check_disabled_txt'] = 'Müşteri kullanıcı adında \'web\' sözcüğü denetimi devre dışı bırakılsın.'; -$wb['mailbox_show_autoresponder_tab_txt'] = 'Posta hesabı ayrıntılarında otoyanıtlayıcı sekmesi görüntülensin'; -$wb['mailbox_show_mail_filter_tab_txt'] = 'Posta hesabı ayrıntılarında posta süzgeci sekmesi görüntülensin'; -$wb['mailbox_show_custom_rules_tab_txt'] = 'Posta hesabı ayrıntılarında isteÄŸe baÄŸlı posta süzgeci sekmesi görüntülensin'; +$wb['backups_include_into_web_quota_txt'] = 'Yedek dosyaları web kotasına katılsın.'; +$wb['mailbox_show_autoresponder_tab_txt'] = 'E-posta hesabı ayrıntılarında otoyanıtlayıcı sekmesi görüntülensin'; +$wb['mailbox_show_mail_filter_tab_txt'] = 'E-posta hesabı ayrıntılarında e-posta süzgeci sekmesi görüntülensin'; +$wb['mailbox_show_custom_rules_tab_txt'] = 'E-posta hesabı ayrıntılarında isteÄŸe baÄŸlı e-posta süzgeci sekmesi görüntülensin'; $wb['webmail_url_error_regex'] = 'Webmail adresi geçersiz'; $wb['phpmyadmin_url_note_txt'] = 'Kod:'; $wb['webmail_url_note_txt'] = 'Kod:'; @@ -64,30 +70,18 @@ $wb['customer_no_template_error_regex_txt'] = 'Müşteri no kalıbında geçersi $wb['customer_no_start_txt'] = 'Müşteri No BaÅŸlangıç DeÄŸeri'; $wb['customer_no_counter_txt'] = 'Müşteri No Sayacı'; $wb['session_timeout_txt'] = 'Oturum Zaman Aşımı (dakika)'; -$wb['session_allow_endless_txt'] = '\\"Oturum açık kalsın\\" kullanılabilsin'; +$wb['session_allow_endless_txt'] = '"Oturum açık kalsın" kullanılabilsin'; $wb['No'] = 'No'; $wb['min_password_length_txt'] = 'En Az Parola UzunluÄŸu'; -$wb['min_password_strength_txt'] = 'En Az Parola Güçlüğü'; -$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'] = '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['company_name_txt'] = 'Company Name for the page title'; -$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['ca_name_txt'] = 'Name'; -$wb['ca_issue_txt'] = 'Issue'; -$wb['ca_wildcard_txt'] = 'Use Wildcard'; -$wb['ca_critical_txt'] = 'Strict Check'; -$wb['ca_iodef_txt'] = 'iodef'; -$wb['active_txt'] = 'Aktive'; -$wb['btn_save_txt'] = 'Save'; -$wb['btn_cancel_txt'] = 'Cancel'; -$wb['web_php_options_txt'] = 'PHP Handler (Apache only)'; +$wb['min_password_strength_txt'] = 'En Az Parola ZorluÄŸu'; +$wb['default_mailserver_txt'] = 'Varsayılan E-posta Sunucusu'; +$wb['default_webserver_txt'] = 'Varsayılan Web Sunucusu'; +$wb['default_dnsserver_txt'] = 'Varsayılan Birincil DNS Sunucusu'; +$wb['default_slave_dnsserver_txt'] = 'Varsayılan Ä°kincil DNS Sunucusu'; +$wb['default_dbserver_txt'] = 'Varsayılan Veritabanı Sunucusu'; +$wb['company_name_txt'] = 'Sayfa baÅŸlığı için kurum adı'; +$wb['reseller_can_use_options_txt'] = 'Bayi web siteleri için seçenek sekmesini kullanabilsin'; +$wb['custom_login_text_txt'] = 'Oturum Açma Sayfası Metni'; +$wb['custom_login_link_txt'] = 'Oturum Açma Sayfası BaÄŸlantısı'; +$wb['login_link_error_regex'] = 'Oturum Açma BaÄŸlantısı Geçersiz'; ?> diff --git a/interface/web/admin/lib/lang/tr_users.lng b/interface/web/admin/lib/lang/tr_users.lng index 0029214773..72aa9d1813 100644 --- a/interface/web/admin/lib/lang/tr_users.lng +++ b/interface/web/admin/lib/lang/tr_users.lng @@ -1,22 +1,22 @@ <?php -$wb['username_txt'] = 'Kullanıcı adı'; +$wb['username_txt'] = 'Kullanıcı Adı'; $wb['username_err'] = 'Kullanıcı adı çok uzun ya da geçersiz karakterler içeriyor.'; $wb['username_empty'] = 'Kullanıcı adı boÅŸ olamaz.'; $wb['username_unique'] = 'Bu adla bir kullanıcı zaten var.'; $wb['passwort_txt'] = 'Parola'; -$wb['password_strength_txt'] = 'Parola Güçlüğü'; +$wb['password_strength_txt'] = 'Parola ZorluÄŸu'; $wb['modules_txt'] = 'Modül'; $wb['startmodule_txt'] = 'BaÅŸlangıç modülü'; $wb['app_theme_txt'] = 'Tasarım'; -$wb['typ_txt'] = 'Tip'; +$wb['typ_txt'] = 'Tür'; $wb['active_txt'] = 'Etkin'; $wb['language_txt'] = 'Dil'; $wb['name_txt'] = 'Ad'; $wb['vorname_txt'] = 'Takma ad'; -$wb['unternehmen_txt'] = 'Kurum'; +$wb['unternehmen_txt'] = 'KuruluÅŸ'; $wb['strasse_txt'] = 'Adres'; $wb['ort_txt'] = 'Ä°l'; -$wb['plz_txt'] = 'Posta kodu'; +$wb['plz_txt'] = 'Posta Kodu'; $wb['land_txt'] = 'Ãœlke'; $wb['email_txt'] = 'E-posta'; $wb['url_txt'] = 'Ä°nternet Adresi'; @@ -25,12 +25,12 @@ $wb['fax_txt'] = 'Faks'; $wb['groups_txt'] = 'Gruplar'; $wb['default_group_txt'] = 'Varsayılan Grup'; $wb['startmodule_err'] = 'BaÅŸlangıç modülü, modüllerin arasında deÄŸil.'; -$wb['generate_password_txt'] = 'Parola OluÅŸtur'; +$wb['generate_password_txt'] = 'Parola Ãœret'; $wb['repeat_password_txt'] = 'Parola Onayı'; $wb['password_mismatch_txt'] = 'Parola ile onayı aynı deÄŸil.'; $wb['password_match_txt'] = 'Parola ile onayı aynı.'; -$wb['username_error_collision'] = 'Kullanıcı adı -web- ya da -web- sözcüğünü izleyen bir sayı ile baÅŸlayamaz.\\"'; -$wb['client_not_admin_err'] = 'Bir müşteriye ait bir kullanıcının tipi admin olarak atanamaz'; -$wb['lost_password_function_txt'] = 'Forgot password function is available'; -$wb['no_user_insert'] = 'CP-Users of type -user- get added and updated automatically when you add a client or reseller.'; +$wb['username_error_collision'] = 'Kullanıcı adı -web- ya da -web- sözcüğünü izleyen bir sayı ile baÅŸlayamaz."'; +$wb['client_not_admin_err'] = 'Bir müşteriye ait bir kullanıcının türü admin olarak atanamaz'; +$wb['lost_password_function_txt'] = 'Parolamı unuttum özelliÄŸi kullanılabilir'; +$wb['no_user_insert'] = 'Bir müşteri ya da bayi eklediÄŸinizde -user- türündeki kontrol panosu kullanıcıları otomatik olarak eklenir ve güncellenir .'; ?> diff --git a/interface/web/admin/lib/lang/tr_users_list.lng b/interface/web/admin/lib/lang/tr_users_list.lng index 31dbee7000..182ab3ca7c 100644 --- a/interface/web/admin/lib/lang/tr_users_list.lng +++ b/interface/web/admin/lib/lang/tr_users_list.lng @@ -1,6 +1,6 @@ <?php $wb['list_head_txt'] = 'Kullanıcılar'; -$wb['username_txt'] = 'Kullanıcı adı'; +$wb['username_txt'] = 'Kullanıcı Adı'; $wb['client_id_txt'] = 'Müşteri Kodu'; $wb['active_txt'] = 'Etkin'; $wb['groups_txt'] = 'Gruplar'; diff --git a/interface/web/client/lib/lang/br.lng b/interface/web/client/lib/lang/br.lng index 2228cf3e21..538a3e2e85 100644 --- a/interface/web/client/lib/lang/br.lng +++ b/interface/web/client/lib/lang/br.lng @@ -10,20 +10,20 @@ $wb['Limit-Templates'] = 'Gabaritos de limites'; $wb['Add Reseller'] = 'Adicionar revenda'; $wb['Edit Reseller'] = 'Editar revenda'; $wb['Resellers'] = 'Revendas'; -$wb['error_has_clients'] = 'Esta revenda possui clientes. Você deve remover os clientes primeiro.'; +$wb['error_has_clients'] = 'Esta revenda possui clientes associados. Certifique-se de remover os clientes associados a mesma antes de removê-la.'; $wb['add_additional_template_txt'] = 'Adicionar gabarito personalizado'; $wb['delete_additional_template_txt'] = 'Remover gabarito personalizado'; -$wb['Messaging'] = 'CÃrculos'; +$wb['Messaging'] = 'Mensagens'; $wb['Send email'] = 'Enviar e-mail'; -$wb['Edit Client Circle'] = 'Editar cÃrculo'; +$wb['Edit Client Circle'] = 'Editar cÃrculo de clientes'; $wb['Domains'] = 'DomÃnios'; $wb['domain_txt'] = 'DomÃnio'; $wb['client_txt'] = 'Cliente'; -$wb['error_domain_in mailuse'] = 'Este domÃnio não pode ser removido porque está em uso como um domÃnio de e-mail.'; -$wb['error_domain_in webuse'] = 'Este domÃnio não pode ser removido porque está em uso como um domÃnio de site.'; -$wb['error_client_can_not_add_domain'] = 'Você não pode adicionar um novo domÃnio.'; -$wb['error_client_group_id_empty'] = 'Você deve selecionar um cliente<br>'; -$wb['error_domain_in dnsuse'] = 'Este domÃnio não pode ser removido porque está em uso como uma zona dns.'; -$wb['error_domain_in dnsslaveuse'] = 'Este domÃnio não pode ser removido porque está em uso como uma zona dns secundária.'; -$wb['Email-Templates'] = 'Gabaritos de e-mails'; +$wb['error_domain_in dnsuse'] = 'Este domÃnio não pode ser removido pois é utilizado em uma zona dns.'; +$wb['error_domain_in dnsslaveuse'] = 'Este domÃnio não pode ser removido pois é utilizado em uma zona dns secundária.'; +$wb['error_domain_in mailuse'] = 'Este domÃnio não pode ser removido pois é utilizado como um domÃnio de e-mail.'; +$wb['error_domain_in webuse'] = 'Este domÃnio não pode ser removido pois é utilizado como um domÃnio de site.'; +$wb['error_client_can_not_add_domain'] = 'Você não tem permissão para adicionar novos domÃnios.'; +$wb['error_client_group_id_empty'] = 'Você deve selecionar um cliente.'; +$wb['Email-Templates'] = 'Gabaritos de e-mail'; ?> diff --git a/interface/web/client/lib/lang/br_client.lng b/interface/web/client/lib/lang/br_client.lng index 992c1ea2ca..c640be54fb 100644 --- a/interface/web/client/lib/lang/br_client.lng +++ b/interface/web/client/lib/lang/br_client.lng @@ -1,26 +1,29 @@ <?php $wb['limit_maildomain_txt'] = 'Limite de domÃnios de e-mail'; -$wb['limit_mailbox_txt'] = 'Limite de caixas postais'; -$wb['limit_mailalias_txt'] = 'Limite de apelidos de domÃnio de e-mail'; -$wb['limit_mailforward_txt'] = 'Limite de redirecionamentos de e-mail'; -$wb['limit_mailcatchall_txt'] = 'Limite de contas cata tudo'; -$wb['limit_mailrouting_txt'] = 'Limite de transportes de e-mail'; +$wb['limit_mailmailinglist_txt'] = 'Limite de listas de e-mail'; +$wb['limit_mailbox_txt'] = 'Limite de contas de e-mail'; +$wb['limit_mailalias_txt'] = 'Limite de alias de e-mail'; +$wb['limit_mailaliasdomain_txt'] = 'Limite de alias de domÃnios'; +$wb['limit_mailforward_txt'] = 'Limite de encaminhamentos de e-mail'; +$wb['limit_mailcatchall_txt'] = 'Limite de contas cata-tudo'; +$wb['limit_mailrouting_txt'] = 'Limite de rotas de e-mail'; $wb['limit_mailfilter_txt'] = 'Limite de filtros de e-mail'; $wb['limit_fetchmail_txt'] = 'Limite de contas de busca'; -$wb['limit_mailquota_txt'] = 'Cota de e-mail'; -$wb['limit_spamfilter_wblist_txt'] = 'Limite de filtros anti-spam lista branca/negra'; -$wb['limit_spamfilter_user_txt'] = 'Limite de usuários de filtros anti-spam'; +$wb['limit_mailquota_txt'] = 'Cota da conta de e-mail'; +$wb['limit_spamfilter_wblist_txt'] = 'Limite de filtros anti-spam "lista branca/negra"'; +$wb['limit_spamfilter_user_txt'] = 'Limite de filtros anti-spam por conta de e-mail'; $wb['limit_spamfilter_policy_txt'] = 'Limite de polÃticas anti-spam'; -$wb['default_mailserver_txt'] = 'Servidor de e-mails padrão'; +$wb['default_mailserver_txt'] = 'Servidor de e-mail padrão'; $wb['company_name_txt'] = 'Empresa'; $wb['contact_firstname_txt'] = 'Nome do contato'; -$wb['contact_name_txt'] = 'Sobrenome do contato'; -$wb['username_txt'] = 'Nome do usuário'; +$wb['contact_name_txt'] = 'Contato'; +$wb['username_txt'] = 'Usuário'; $wb['password_txt'] = 'Senha'; +$wb['password_click_to_set_txt'] = 'Clique para configurar'; $wb['password_strength_txt'] = 'Dificuldade da senha'; $wb['language_txt'] = 'Idioma'; $wb['usertheme_txt'] = 'Tema'; -$wb['street_txt'] = 'Rua'; +$wb['street_txt'] = 'Endereço'; $wb['zip_txt'] = 'CEP'; $wb['city_txt'] = 'Cidade'; $wb['state_txt'] = 'Estado'; @@ -28,177 +31,174 @@ $wb['country_txt'] = 'PaÃs'; $wb['telephone_txt'] = 'Telefone'; $wb['mobile_txt'] = 'Celular'; $wb['fax_txt'] = 'Fax'; -$wb['email_txt'] = 'e-mail'; +$wb['email_txt'] = 'e-Mail'; $wb['internet_txt'] = 'Internet'; -$wb['icq_txt'] = 'Skype/Telegram'; +$wb['icq_txt'] = 'Redes sociais'; $wb['notes_txt'] = 'Notas'; $wb['company_txt'] = 'Empresa'; -$wb['title_txt'] = 'TÃtulo'; +$wb['title_txt'] = 'Cargo'; $wb['firstname_txt'] = 'Nome'; $wb['surname_txt'] = 'Sobrenome'; $wb['limit_domain_txt'] = 'Limite de domÃnios'; $wb['limit_subdomain_txt'] = 'Limite de subdomÃnios'; -$wb['limit_webquota_txt'] = 'Limite da cota de site'; +$wb['limit_webquota_txt'] = 'Limite da cota de sites'; $wb['limit_database_txt'] = 'Limite de banco de dados'; +$wb['limit_cron_txt'] = 'Limite de tarefas no cron'; +$wb['limit_cron_type_txt'] = 'Limite de tipos de tarefa no cron (chroot e url implÃcitas)'; +$wb['limit_cron_frequency_txt'] = 'Tempo de espera entre as execuções'; $wb['ip_address_txt'] = 'Endereço IP'; $wb['limit_client_error_notint'] = 'Limite de clientes deve ser um número.'; $wb['firstname_error_empty'] = 'Nome está em branco.'; $wb['contact_error_empty'] = 'Contato está em branco.'; -$wb['default_webserver_txt'] = 'Servidor de páginas padrão'; -$wb['limit_web_domain_txt'] = 'Limite de de domÃnios de site'; -$wb['limit_web_aliasdomain_txt'] = 'Limite de apelidos de domÃnio'; -$wb['limit_web_subdomain_txt'] = 'Limite de subdomÃnios'; +$wb['default_webserver_txt'] = 'Servidor web padrão'; +$wb['limit_web_domain_txt'] = 'Limite de domÃnios de site'; +$wb['limit_web_aliasdomain_txt'] = 'Limite de alias de domÃnios de site'; +$wb['limit_web_subdomain_txt'] = 'Limite de subdomÃnios de site'; $wb['limit_ftp_user_txt'] = 'Limite de usuários ftp'; $wb['default_dnsserver_txt'] = 'Servidor dns padrão'; $wb['limit_dns_zone_txt'] = 'Limite de zonas dns'; $wb['limit_dns_slave_zone_txt'] = 'Limite de zonas dns secundárias'; $wb['limit_dns_record_txt'] = 'Limite de registros dns'; -$wb['limit_shell_user_txt'] = 'Limite de usuários shell'; +$wb['limit_shell_user_txt'] = 'Limite de usuários do shell'; +$wb['limit_webdav_user_txt'] = 'Limite de usuários webdav'; +$wb['limit_backup_txt'] = 'Função de backup disponÃvel'; $wb['limit_client_txt'] = 'Limite de clientes'; $wb['username_error_empty'] = 'Nome do usuário está em branco.'; $wb['username_error_unique'] = 'O nome do usuário deve ser exclusivo.'; -$wb['limit_maildomain_error_notint'] = 'Limite de contas de e-mail deve ser um número.'; -$wb['limit_mailbox_error_notint'] = 'Limite da contas de e-mail deve ser um número.'; -$wb['limit_mailalias_error_notint'] = 'Limite do apelidos de e-mail deve ser um número.'; -$wb['limit_mailforward_error_notint'] = 'Limite de redirecionamentos de e-mail deve ser um número.'; -$wb['limit_mailcatchall_error_notint'] = 'Limite de contas cata tudo deve ser um número.'; -$wb['limit_mailrouting_error_notint'] = 'Limite de transportes de e-mail deve ser um número.'; -$wb['limit_mailfilter_error_notint'] = 'Limite de filtros de e-mail deve ser um número.'; -$wb['limit_mailfetchmail_error_notint'] = 'Limite de contas de busca deve ser um número.'; -$wb['limit_mailquota_error_notint'] = 'A cota de e-mail deve ser um número.'; -$wb['limit_spamfilter_wblist_error_notint'] = 'Limite de filtros anti-spam lista branca/negra deve ser um número.'; -$wb['limit_spamfilter_user_error_notint'] = 'Limite de filtros anti-spam por usuário deve ser um número.'; -$wb['limit_spamfilter_policy_error_notint'] = 'Limite de polÃticas de filtros anti-spam deve ser um número.'; -$wb['limit_web_domain_error_notint'] = 'Limite de sites deve ser um número.'; -$wb['limit_web_aliasdomain_error_notint'] = 'Limite de apelidos de domÃnios deve ser um número.'; -$wb['limit_web_subdomain_error_notint'] = 'Limite de subdomÃnios deve ser um número.'; -$wb['limit_ftp_user_error_notint'] = 'Limite de usuários ftp deve ser um número.'; -$wb['limit_shell_user_error_notint'] = 'Limite de usuários shell deve ser um número.'; -$wb['limit_dns_zone_error_notint'] = 'Limite de registros dns deve ser um número.'; -$wb['limit_dns_slave_zone_error_notint'] = 'Limite de zonas dns secundárias deve ser um número.'; +$wb['limit_maildomain_error_notint'] = 'O limite de domÃnios de e-mail deve ser um número.'; +$wb['limit_mailmailinglist_error_notint'] = 'O limite de listas de e-mail deve ser um número.'; +$wb['limit_mailbox_error_notint'] = 'O limite de contas de e-mail deve ser um número.'; +$wb['limit_mailalias_error_notint'] = 'O limite de alias de e-mail deve ser um número.'; +$wb['limit_mailaliasdomain_error_notint'] = 'O limite de alias de domÃnios de e-mail deve ser um número.'; +$wb['limit_mailforward_error_notint'] = 'O limite de encaminhamentos de e-mail deve ser um número.'; +$wb['limit_mailcatchall_error_notint'] = 'O limite de contas cata-tudo deve ser um número.'; +$wb['limit_mailrouting_error_notint'] = 'O limite de rotas de e-mail deve ser um número.'; +$wb['limit_mailfilter_error_notint'] = 'O limite de filtros de e-mail deve ser um número.'; +$wb['limit_mailfetchmail_error_notint'] = 'O limite de contas de busca deve ser um número.'; +$wb['limit_mailquota_error_notint'] = 'O limite das cotas de e-mail deve ser um número.'; +$wb['limit_spamfilter_wblist_error_notint'] = 'O limite de filtros anti-spam "lista branca/negra" deve ser um número.'; +$wb['limit_spamfilter_user_error_notint'] = 'O limite de filtros anti-spam por conta de e-mail deve ser um número.'; +$wb['limit_spamfilter_policy_error_notint'] = 'O limite de polÃticas anti-spam deve ser um número.'; +$wb['limit_web_domain_error_notint'] = 'O limite de domÃnios de site deve ser um número.'; +$wb['limit_web_aliasdomain_error_notint'] = 'O limite de alias de domÃnios de site deve ser um número.'; +$wb['limit_web_subdomain_error_notint'] = 'O limite de subdomÃnios de site deve ser um número.'; +$wb['limit_ftp_user_error_notint'] = 'O limite de usuários ftp deve ser um número.'; +$wb['limit_shell_user_error_notint'] = 'O limite de usuários do shell deve ser um número.'; +$wb['limit_webdav_user_error_notint'] = 'O limite de usuários webdav deve ser um número.'; +$wb['limit_dns_zone_error_notint'] = 'O limite de zonas dns deve ser um número.'; +$wb['limit_dns_slave_zone_error_notint'] = 'O limite de zonas dns secundárias deve ser um número.'; +$wb['limit_dns_record_error_notint'] = 'O limite de registros dns deve ser um número.'; $wb['default_dbserver_txt'] = 'Servidor de banco de dados padrão'; -$wb['limit_database_error_notint'] = 'Limite de banco de dados deve ser um número.'; +$wb['limit_database_error_notint'] = 'O limite de banco de dados deve ser um número.'; +$wb['limit_cron_error_notint'] = 'O limite de tarefas no cron deve ser um número.'; +$wb['limit_cron_error_frequency'] = 'O limite de frequência de tarefas no cron deve ser um número.'; $wb['username_error_regex'] = 'O nome de usuário contém caracteres inválidos.'; -$wb['template_master_txt'] = 'Gabarito principal'; +$wb['template_master_txt'] = 'Gabarito mestre'; $wb['template_additional_txt'] = 'Gabarito personalizado'; -$wb['ssh_chroot_txt'] = 'Opções do SSH Chroot'; -$wb['web_php_options_txt'] = 'Opções do PHP'; -$wb['limit_client_error'] = 'O limite de clientes foi alcançado.'; -$wb['limit_cron_txt'] = 'Limite de tarefas no cron.'; -$wb['limit_cron_type_txt'] = 'Limite de tipos de tarefas no cron (em chroot e url completas)'; -$wb['limit_cron_frequency_txt'] = 'Intervalo mÃnimo entre as execuções'; -$wb['limit_cron_error_notint'] = 'Limite do cron deve ser um número.'; -$wb['limit_cron_error_frequency'] = 'Limite de frequência do cron deve ser um número.'; -$wb['limit_mailaliasdomain_txt'] = 'Limite de apelidos de domÃnios'; -$wb['limit_mailaliasdomain_error_notint'] = 'Limite de apelidos de domÃnio deve ser um número.'; -$wb['limit_web_quota_txt'] = 'Cota de site'; -$wb['limit_traffic_quota_txt'] = 'Cota de tráfego'; -$wb['limit_trafficquota_error_notint'] = 'A cota de tráfego dever ser um número.'; -$wb['limit_webdav_user_txt'] = 'Limite de usuários webdav'; -$wb['limit_webdav_user_error_notint'] = 'Limite de usuários webdav deve ser um número.'; -$wb['limit_backup_txt'] = 'Função de backup disponÃvel'; -$wb['customer_no_txt'] = 'Código do cliente'; -$wb['vat_id_txt'] = 'VAT ID'; -$wb['required_fields_txt'] = '*Campos obrigatórios'; -$wb['limit_mailmailinglist_txt'] = 'Limite de listas de e-mail'; -$wb['limit_mailmailinglist_error_notint'] = 'Limite do listas de e-mail deve ser um número.'; -$wb['company_id_txt'] = 'ID da Empresa'; -$wb['limit_openvz_vm_txt'] = 'Limite de servidores virtuais'; -$wb['limit_openvz_vm_template_id_txt'] = 'Forçar gabarito de servidor virtual'; -$wb['limit_openvz_vm_error_notint'] = 'Limite de servidores virtuais deve ser um número.'; -$wb['web_php_options_notempty'] = 'Nenhuma opção PHP selecionada. Selecione ao menos uma opção.'; -$wb['ssh_chroot_notempty'] = 'Nenhuma opção de SSH chroot selecionada. Selecione ao menos uma opção.'; -$wb['username_error_collision'] = 'O usuário não pode ter como iniciais as palavras -web- ou -web- seguida por um número.'; +$wb['active_template_additional_txt'] = 'Ativar gabarito personalizado'; $wb['add_additional_template_txt'] = 'Adicionar gabarito personalizado'; $wb['delete_additional_template_txt'] = 'Remover gabarito personalizado'; +$wb['ssh_chroot_txt'] = 'Opções SSH-Chroot'; +$wb['web_php_options_txt'] = 'Opções PHP'; $wb['limit_cgi_txt'] = 'CGI disponÃvel'; $wb['limit_ssi_txt'] = 'SSI disponÃvel'; $wb['limit_perl_txt'] = 'Perl disponÃvel'; $wb['limit_ruby_txt'] = 'Ruby disponÃvel'; $wb['limit_python_txt'] = 'Python disponÃvel'; $wb['force_suexec_txt'] = 'Forçar SuEXEC'; -$wb['limit_hterror_txt'] = 'Custom error docs disponÃvel'; -$wb['limit_wildcard_txt'] = 'Curingas de subdomÃnios disponÃveis'; +$wb['limit_hterror_txt'] = 'Custom errordocs disponÃvel'; +$wb['limit_wildcard_txt'] = 'Curingas de subdomÃnio disponÃvel'; $wb['limit_ssl_txt'] = 'SSL disponÃvel'; -$wb['bank_account_number_txt'] = 'Conta corrente no.'; +$wb['limit_ssl_letsencrypt_txt'] = 'Let\'s Encrypt disponÃvel'; +$wb['limit_client_error'] = 'O limite de clientes foi alcançado.'; +$wb['limit_web_quota_txt'] = 'Cota de site'; +$wb['limit_traffic_quota_txt'] = 'Cota de tráfego'; +$wb['limit_trafficquota_error_notint'] = 'Cota de tráfego deve ser um número.'; +$wb['customer_no_txt'] = 'Código do cliente.'; +$wb['vat_id_txt'] = 'VAT ID'; +$wb['required_fields_txt'] = '*Campos obrigatórios'; +$wb['company_id_txt'] = 'Código da empresa'; +$wb['limit_openvz_vm_txt'] = 'Limite de máquinas virtuais'; +$wb['limit_openvz_vm_template_id_txt'] = 'Forçar gabarito de máquina virtual'; +$wb['limit_openvz_vm_error_notint'] = 'O limite de máquinas virtuais deve ser um número.'; +$wb['web_php_options_notempty'] = 'Nenhuma opção php selecionada. Selecione ao menos uma opção.'; +$wb['ssh_chroot_notempty'] = 'Nenhuma opção ssh chroot selecionada. Selecione ao menos uma opção.'; +$wb['username_error_collision'] = 'O nome de usuário não pode conter as palavras "web" ou "web" seguida de um número.'; +$wb['bank_account_number_txt'] = 'Conta corrente'; +$wb['bank_account_owner_txt'] = 'Proprietário da conta corrente'; $wb['bank_code_txt'] = 'Código do banco'; $wb['bank_name_txt'] = 'Nome do banco'; $wb['bank_account_iban_txt'] = 'IBAN'; $wb['bank_account_swift_txt'] = 'BIC/Swift'; -$wb['web_limits_txt'] = 'Limites web'; -$wb['email_limits_txt'] = 'Limites de e-mails'; +$wb['web_limits_txt'] = 'Limites de site'; +$wb['email_limits_txt'] = 'Limites de e-mail'; +$wb['xmpp_limits_txt'] = 'Limites xmpp'; $wb['database_limits_txt'] = 'Limites de banco de dados'; $wb['cron_job_limits_txt'] = 'Limites de tarefas no cron'; -$wb['dns_limits_txt'] = 'Limites de DNS'; -$wb['virtualization_limits_txt'] = 'Limites de virtualização'; -$wb['generate_password_txt'] = 'Gerar senha'; -$wb['repeat_password_txt'] = 'Repetir senha'; -$wb['password_mismatch_txt'] = 'A senhas não coincidem.'; -$wb['password_match_txt'] = 'A senhas coincidem.'; -$wb['active_template_additional_txt'] = 'Complementos ativos'; -$wb['bank_account_owner_txt'] = 'Proprietário da conta corrente'; -$wb['email_error_isemail'] = 'Por favor, insira um e-mail válido.'; -$wb['customer_no_error_unique'] = 'O código do cliente deve ser exclusivo (ou em branco).'; +$wb['dns_limits_txt'] = 'Limites de registros dns'; +$wb['virtualization_limits_txt'] = 'Limites de máquinas virtuais'; +$wb['generate_password_txt'] = 'Gerar Senha'; +$wb['repeat_password_txt'] = 'Repetir Senha'; +$wb['password_mismatch_txt'] = 'As senhas não coincidem.'; +$wb['password_match_txt'] = 'As senhas coincidem.'; +$wb['email_error_isemail'] = 'Por favor, insira um endereço de e-mail válido.'; +$wb['customer_no_error_unique'] = 'O código do cliente deve ser exclusivo ou não pode estar está em branco.'; $wb['paypal_email_error_isemail'] = 'Por favor, insira um e-mail do PayPal válido.'; -$wb['paypal_email_txt'] = 'e-mail do PayPal'; -$wb['err_msg_master_tpl_set'] = 'Todos as configurações de limites personalizadas são ignoradas se qualquer gabarito mestre ou algum gabarito \\"personalizado\\" for selecionado.'; -$wb['aps_limits_txt'] = 'Limites de apps instalados'; -$wb['limit_aps_txt'] = 'Limite de instâncias de apps'; -$wb['limit_aps_error_notint'] = 'Limite de instâncias de apps deve ser um número.'; +$wb['paypal_email_txt'] = 'e-Mail do PayPal'; +$wb['err_msg_master_tpl_set'] = 'Todas as configurações de limites serão ignoradas se for selecionado a opção de gabarito personalizado.'; +$wb['aps_limits_txt'] = 'Limites de instalações de APPs'; +$wb['limit_aps_txt'] = 'Limite de instâncias de APPs'; +$wb['limit_aps_error_notint'] = 'O limite de instâncias de APPs deve ser um número.'; $wb['default_slave_dnsserver_txt'] = 'Servidor dns secundário padrão'; -$wb['locked_txt'] = 'Bloqueado (web desabilitado)'; -$wb['canceled_txt'] = 'Cancelado (acesso do cliente desabilitado)'; +$wb['locked_txt'] = 'Bloqueado (desabilita todos os sites, etc.)'; +$wb['canceled_txt'] = 'Cancelado (desabilita o acesso do cliente.)'; $wb['gender_txt'] = 'TÃtulo'; $wb['gender_m_txt'] = 'Sr.'; $wb['gender_f_txt'] = 'Sra.'; -$wb['added_by_txt'] = 'Cadastrado por'; -$wb['added_date_txt'] = 'Data do cadastro'; -$wb['parent_client_id_txt'] = 'Cliente da revenda'; -$wb['none_txt'] = 'nenhum'; -$wb['email_error_empty'] = 'e-mail está em branco.'; -$wb['xmpp_limits_txt'] = 'Limites XMPP'; $wb['web_servers_txt'] = 'Servidores web'; -$wb['web_servers_placeholder'] = 'Selecionar servidores web'; -$wb['no_web_server_error'] = 'Ao menos um servidor de páginas deve ser selecionado.'; -$wb['web_servers_used'] = 'O servidor que você está tentando remover para este cliente é usado como um servidor de páginas. Tenha certeza que este servidor não é usado por este cliente antes de removê-lo.'; -$wb['dns_servers_txt'] = 'Servidores dns'; -$wb['dns_servers_placeholder'] = 'Selecionar servidores dns'; -$wb['no_dns_server_error'] = 'Ao menos um servidor dns deve ser selecionado.'; -$wb['dns_servers_used'] = 'O servidor que você está tentando remover para este cliente é usado como um servidor dns. Tenha certeza que este servidor não é usado por este cliente antes de removê-lo.'; -$wb['db_servers_txt'] = 'Servidor de banco de dados'; -$wb['db_servers_placeholder'] = 'Selecione o servidor de banco de dados'; +$wb['web_servers_placeholder'] = 'Selecione os servidores web'; +$wb['no_web_server_error'] = 'Ao menos um servidor web deve ser selecionado.'; +$wb['web_servers_used'] = 'O servidor web que você está tentando remover para este cliente é utilizado pelo mesmo. Certifique-se que este servidor não esteja em uso pelo cliente antes de removê-lo.'; +$wb['dns_servers_txt'] = 'Servidores DNS'; +$wb['dns_servers_placeholder'] = 'Selecione os servidores dns'; +$wb['no_dns_server_error'] = 'Ao menos um servidor DNS deve ser selecionado.'; +$wb['dns_servers_used'] = 'O servidor dns que você está tentando remover para este cliente é utilizado pelo mesmo. Certifique-se que este servidor não esteja em uso pelo cliente antes de removê-lo.'; +$wb['db_servers_txt'] = 'Servidores de banco de dados'; +$wb['db_servers_placeholder'] = 'Selecione os servidores de banco de dados'; $wb['no_db_server_error'] = 'Ao menos um servidor de banco de dados deve ser selecionado.'; -$wb['db_servers_used'] = 'O servidor que você está tentando remover para este cliente é usado como um servidor de banco de dados. Tenha certeza que este servidor não é usado por este cliente antes de removê-lo.'; +$wb['db_servers_used'] = 'O servidor de banco de dados que você está tentando remover para este cliente é utilizado pelo mesmo. Certifique-se que este servidor não esteja em uso pelo cliente antes de removê-lo.'; $wb['mail_servers_txt'] = 'Servidores de e-mail'; $wb['mail_servers_placeholder'] = 'Selecione os servidores de e-mail'; -$wb['no_mail_server_error'] = 'Ao menos um servidor de e-mail deve ser selecionado'; -$wb['mail_servers_used'] = 'O servidor que você está tentando remover para este cliente é usado como um servidor de e-mail. Tenha certeza que este servidor não é usado por este cliente antes de removê-lo.'; +$wb['no_mail_server_error'] = 'Ao menos um servidor de e-mail deve ser selecionado.'; +$wb['mail_servers_used'] = 'O servidor de e-mail que você está tentando remover para este cliente é utilizado pelo mesmo. Certifique-se que este servidor não esteja em uso pelo cliente antes de removê-lo.'; $wb['xmpp_servers_txt'] = 'Servidores XMPP'; -$wb['xmpp_servers_placeholder'] = 'Selecione os servidores XMPP'; -$wb['no_xmpp_server_error'] = 'Ao menos um servidor XMPP deve ser selecionado.'; -$wb['xmpp_servers_used'] = 'O servidor que você está tentando remover para este cliente é usado como um servidor XMPP. Tenha certeza que este servidor não é usado por este cliente antes de removê-lo.'; -$wb['limit_xmpp_domain_error_notint'] = 'Limite de domÃnios XMPP deve ser um número.'; -$wb['limit_xmpp_user_error_notint'] = 'Limite de usuários XMPP deve ser um número.'; -$wb['limit_xmpp_domain_txt'] = 'Limite de domÃnios XMPP'; -$wb['limit_xmpp_user_txt'] = 'Limite de contas XMPP'; -$wb['limit_xmpp_muc_txt'] = 'Chat multiusuário disponÃvel'; +$wb['xmpp_servers_placeholder'] = 'Selecione o(s) servidor(es) xmpp'; +$wb['no_xmpp_server_error'] = 'Ao menos um servidor xmpp deve ser selecionado.'; +$wb['xmpp_servers_used'] = 'O servidor xmpp que você está tentando remover para este cliente é utilizado pelo mesmo. Certifique-se que este servidor não esteja em uso pelo cliente antes de removê-lo.'; +$wb['limit_xmpp_domain_error_notint'] = 'O limite de domÃnios xmpp deve ser um número.'; +$wb['limit_xmpp_user_error_notint'] = 'O limite de usuários xmpp deve ser um número.'; +$wb['limit_xmpp_domain_txt'] = 'Limite de domÃnios xmpp'; +$wb['limit_xmpp_user_txt'] = 'Limite de usuários xmpp'; +$wb['limit_xmpp_muc_txt'] = 'Chat multiusuário (MUC) disponÃvel'; $wb['limit_xmpp_pastebin_txt'] = 'Pastebin para MUC disponÃvel'; -$wb['limit_xmpp_httparchive_txt'] = 'Arquivo HTTP para MUC disponÃvel'; +$wb['limit_xmpp_httparchive_txt'] = 'Arquivos http para MUC disponÃvel'; $wb['limit_xmpp_anon_txt'] = 'Host anônimo disponÃvel'; -$wb['limit_xmpp_vjud_txt'] = 'Diretório de usuário VJUD disponÃvel'; +$wb['limit_xmpp_vjud_txt'] = 'Diretório de usuários VJUD disponÃvel'; $wb['limit_xmpp_proxy_txt'] = 'Proxy Bytestream disponÃvel'; $wb['limit_xmpp_status_txt'] = 'Estado do host disponÃvel'; -$wb['limit_database_quota_txt'] = 'Cota para banco de dados'; -$wb['limit_database_quota_error_notint'] = 'A cota para banco de dados deve ser um número.'; +$wb['added_by_txt'] = 'Cadastrado por'; +$wb['added_date_txt'] = 'Data do cadastro'; +$wb['parent_client_id_txt'] = 'Cliente da revenda'; +$wb['none_txt'] = 'nenhum'; +$wb['limit_database_quota_txt'] = 'Cota do banco de dados'; +$wb['limit_database_quota_error_notint'] = 'O limite da cota de banco de dados deve ser um número.'; +$wb['limit_database_user_txt'] = 'Limite de usuários do banco de dados'; +$wb['limit_database_user_error_notint'] = 'O limite de usuários do banco de dados deve ser um número.'; $wb['reseller_txt'] = 'Revenda'; $wb['btn_save_txt'] = 'Salvar'; $wb['btn_cancel_txt'] = 'Cancelar'; -$wb['invalid_vat_id'] = 'O VAT ID é inválido.'; -$wb['limit_database_user_txt'] = 'Limite de usuários de banco de dados'; -$wb['limit_database_user_error_notint'] = 'Limite de usuários de banco de dados deve ser um número.'; -$wb['limit_ssl_letsencrypt_txt'] = 'Let\'s Encrypt disponÃvel'; -$wb['limit_directive_snippets_txt'] = 'Exibir seleção de configurações do servidor de páginas'; -$wb['password_click_to_set_txt'] = 'Selecionar para configurar'; -$wb['limit_dns_record_error_notint'] = 'O limite de registros dns deve ser um número.'; +$wb['invalid_vat_id'] = 'O ID do VAT é inválido.'; +$wb['email_error_empty'] = 'O e-mail está em branco'; +$wb['limit_directive_snippets_txt'] = 'Exibir configurações de seleção do servidor web'; $wb['Limits'] = 'Limites'; ?> diff --git a/interface/web/client/lib/lang/br_client_circle.lng b/interface/web/client/lib/lang/br_client_circle.lng index 364172f1ae..6c6cb13271 100644 --- a/interface/web/client/lib/lang/br_client_circle.lng +++ b/interface/web/client/lib/lang/br_client_circle.lng @@ -1,6 +1,6 @@ <?php -$wb['Client Circle'] = 'CÃrculo de cliente'; -$wb['Circle'] = 'CÃrculo'; +$wb['Client Circle'] = 'CÃrculos de clientes'; +$wb['Circle'] = 'CÃrculos'; $wb['circle_txt'] = 'CÃrculo'; $wb['circle_name_txt'] = 'Nome do cÃrculo'; $wb['client_ids_txt'] = 'Clientes/Revendas'; diff --git a/interface/web/client/lib/lang/br_client_circle_list.lng b/interface/web/client/lib/lang/br_client_circle_list.lng index 857984f892..1c1a43f49a 100644 --- a/interface/web/client/lib/lang/br_client_circle_list.lng +++ b/interface/web/client/lib/lang/br_client_circle_list.lng @@ -1,7 +1,7 @@ <?php -$wb['list_head_txt'] = 'CÃrculos de Clientes'; -$wb['circle_id_txt'] = 'ID do CÃrculo'; -$wb['circle_name_txt'] = 'Nome do CÃrculo'; +$wb['list_head_txt'] = 'CÃrculo de clientes'; +$wb['circle_id_txt'] = 'ID do cÃrculo'; +$wb['circle_name_txt'] = 'Nome do cÃrculo'; $wb['description_txt'] = 'Descrição'; $wb['add_new_record_txt'] = 'Adicionar novo cÃrculo'; $wb['filter_txt'] = 'Filtro'; diff --git a/interface/web/client/lib/lang/br_client_del.lng b/interface/web/client/lib/lang/br_client_del.lng index 6c3e4e668a..880c12c36a 100644 --- a/interface/web/client/lib/lang/br_client_del.lng +++ b/interface/web/client/lib/lang/br_client_del.lng @@ -1,6 +1,6 @@ <?php $wb['confirm_action_txt'] = 'Confirmar ação'; -$wb['delete_explanation'] = 'Atenção: está ação removerá todos os objetos associados ao cliente!'; +$wb['delete_explanation'] = 'Esta ação removerá os seguintes registros associados a este cliente.'; $wb['btn_save_txt'] = 'Remover o cliente'; $wb['btn_cancel_txt'] = 'Cancelar sem remover o cliente'; $wb['confirm_client_delete_txt'] = 'Você tem certeza que deseja remover este cliente?'; diff --git a/interface/web/client/lib/lang/br_client_message.lng b/interface/web/client/lib/lang/br_client_message.lng index 802dcca368..75aa3480c5 100644 --- a/interface/web/client/lib/lang/br_client_message.lng +++ b/interface/web/client/lib/lang/br_client_message.lng @@ -1,16 +1,16 @@ <?php +$wb['page_head_txt'] = 'Enviar informações do cliente'; $wb['btn_send_txt'] = 'Enviar e-mail'; $wb['btn_cancel_txt'] = 'Cancelar'; -$wb['sender_txt'] = 'Remetente'; +$wb['sender_txt'] = 'e-Mail do remetente'; $wb['subject_txt'] = 'Assunto'; $wb['message_txt'] = 'Mensagem'; -$wb['form_legend_client_txt'] = 'Enviar mensagem a todos os clientes.'; -$wb['form_legend_admin_txt'] = 'Enviar mensagem a todos clientes e revendas.'; -$wb['sender_invalid_error'] = 'O e-mail do remetente é é inválido.'; -$wb['subject_invalid_error'] = 'O assunto está em branco.'; -$wb['message_invalid_error'] = 'A mensagem está em branco.'; -$wb['email_sent_to_txt'] = 'Enviar e-mail para:'; -$wb['page_head_txt'] = 'Enviar informações aos clientes'; +$wb['form_legend_client_txt'] = 'Enviar e-mail para clientes.'; +$wb['form_legend_admin_txt'] = 'Enviar e-mail para clientes e revendas.'; +$wb['sender_invalid_error'] = 'Remetente inválido.'; +$wb['subject_invalid_error'] = 'Assunto está em branco.'; +$wb['message_invalid_error'] = 'Mensagem está em branco.'; +$wb['email_sent_to_txt'] = 'e-Mail enviado para:'; $wb['recipient_txt'] = 'Destinatário'; $wb['all_clients_resellers_txt'] = 'Todos os clientes e revendas'; $wb['all_clients_txt'] = 'Todos os clientes'; diff --git a/interface/web/client/lib/lang/br_client_message_template.lng b/interface/web/client/lib/lang/br_client_message_template.lng index eb3c0b9938..8fb0934837 100644 --- a/interface/web/client/lib/lang/br_client_message_template.lng +++ b/interface/web/client/lib/lang/br_client_message_template.lng @@ -4,10 +4,10 @@ $wb['template_name_txt'] = 'Nome do gabarito'; $wb['subject_txt'] = 'Assunto'; $wb['message_txt'] = 'Mensagem'; $wb['Email template'] = 'Gabarito do e-mail'; -$wb['Settings'] = 'Configuração'; +$wb['Settings'] = 'Configurações'; $wb['variables_txt'] = 'Variáveis'; -$wb['variables_description_txt'] = '(As variáveis usuário e senha estão disponÃveis apenas em e-mails de boas vindas.)'; -$wb['duplicate_welcome_error'] = 'DisponÃvel apenas para o gabarito padrão de e-mail de boas vindas. Por favor edite o gabarito existente ou adicione um novo gabarito.'; -$wb['subject_error_empty'] = 'Subject is empty'; -$wb['message_error_empty'] = 'Message is empty'; +$wb['variables_description_txt'] = '(Variáveis de usuário e senha só estão disponÃveis em e-mail de boas-vindas.)'; +$wb['duplicate_welcome_error'] = 'Só pode existir apenas um gabarito de e-mail de boas-vindas. Edite o modelo existente ao invés de adicionar um novo.'; +$wb['subject_error_empty'] = 'Assunto está em branco.'; +$wb['message_error_empty'] = 'Mensagem está em branco.'; ?> diff --git a/interface/web/client/lib/lang/br_client_message_template_list.lng b/interface/web/client/lib/lang/br_client_message_template_list.lng index 9853a71ad3..3673769354 100644 --- a/interface/web/client/lib/lang/br_client_message_template_list.lng +++ b/interface/web/client/lib/lang/br_client_message_template_list.lng @@ -1,5 +1,5 @@ <?php -$wb['list_head_txt'] = 'Gabarito de e-mails'; +$wb['list_head_txt'] = 'Gabaritos de e-mail'; $wb['template_type_txt'] = 'Mensagem de'; $wb['template_name_txt'] = 'Nome do gabarito'; ?> diff --git a/interface/web/client/lib/lang/br_client_template.lng b/interface/web/client/lib/lang/br_client_template.lng index 4b2ce6555b..c09c622bb2 100644 --- a/interface/web/client/lib/lang/br_client_template.lng +++ b/interface/web/client/lib/lang/br_client_template.lng @@ -1,123 +1,126 @@ <?php -$wb['limit_client_error_notint'] = 'Limite de clientes não é um número.'; +$wb['template_type_txt'] = 'Tipo de gabarito'; +$wb['template_name_txt'] = 'Nome do gabarito'; +$wb['limit_client_error_notint'] = 'Limite de cliente não é um número.'; +$wb['default_mailserver_txt'] = 'Servidor de e-mail padrão'; $wb['limit_maildomain_txt'] = 'Limite de domÃnios de e-mail'; -$wb['limit_mailbox_txt'] = 'Limite de caixas postais'; -$wb['limit_mailalias_txt'] = 'Limite de apelidos de e-mail'; -$wb['limit_mailforward_txt'] = 'Limite de redirecionamentos de e-mail'; -$wb['limit_mailcatchall_txt'] = 'Limite de contas cata tudo'; -$wb['limit_mailrouting_txt'] = 'Limite de transportes de e-mails'; +$wb['limit_mailbox_txt'] = 'Limite de contas de e-mail'; +$wb['limit_mailalias_txt'] = 'Limite de alias de e-mail'; +$wb['limit_mailaliasdomain_txt'] = 'Limite de alias de domÃnios de e-mail'; +$wb['limit_mailmailinglist_txt'] = 'Limite de listas de e-mail'; +$wb['limit_mailforward_txt'] = 'Limite de encaminhamentos de e-mail'; +$wb['limit_mailcatchall_txt'] = 'Limite de contas cata-tudo'; +$wb['limit_mailrouting_txt'] = 'Limite de rotas de e-mail'; $wb['limit_mailfilter_txt'] = 'Limite de filtros de e-mail'; $wb['limit_fetchmail_txt'] = 'Limite de contas de busca'; -$wb['limit_mailquota_txt'] = 'Espaço da caixa postal'; -$wb['limit_spamfilter_wblist_txt'] = 'Limite de filtros anti-spam permitidos lista branca/negra'; -$wb['limit_spamfilter_user_txt'] = 'Limite de usuários de filtros anti-spam'; +$wb['limit_mailquota_txt'] = 'Cota da conta de e-mail'; +$wb['limit_spamfilter_wblist_txt'] = 'Limite de filtros anti-spam "lista branca/negra"'; +$wb['limit_spamfilter_user_txt'] = 'Limite de filtros anti-spam para conta de e-mail'; $wb['limit_spamfilter_policy_txt'] = 'Limite de polÃticas anti-spam'; $wb['limit_domain_txt'] = 'Limite de domÃnios'; -$wb['limit_subdomain_txt'] = 'Limite de subdomÃnios'; -$wb['limit_webquota_txt'] = 'Cota de site'; +$wb['limit_subdomain_txt'] = 'Limite de sub-domÃnios'; +$wb['limit_webquota_txt'] = 'Limite da cota de site'; $wb['limit_database_txt'] = 'Limite de banco de dados'; +$wb['limit_cron_txt'] = 'Limite de tarefas no cron'; +$wb['limit_cron_type_txt'] = 'Limite de tipos de tarefa no cron (chroot e url implÃcitas)'; +$wb['limit_cron_frequency_txt'] = 'Tempo de espera entre as execuções'; +$wb['default_webserver_txt'] = 'Servidor web padrão'; $wb['limit_web_domain_txt'] = 'Limite de domÃnios de site'; -$wb['limit_web_aliasdomain_txt'] = 'Limite de apelidos de domÃnio de site'; -$wb['limit_web_subdomain_txt'] = 'Limite de subdomÃnios de site'; -$wb['limit_ftp_user_txt'] = 'Limite de usuários ftp'; -$wb['limit_dns_zone_txt'] = 'Limite de zonas dns primárias'; +$wb['limit_web_aliasdomain_txt'] = 'Limite de alias de domÃnios de site'; +$wb['limit_web_subdomain_txt'] = 'Limite de sud-domÃnios de site'; +$wb['limit_ftp_user_txt'] = 'Limite de usuário FTP'; +$wb['default_dnsserver_txt'] = 'Servidor DNS padrão'; +$wb['limit_dns_zone_txt'] = 'Limite de zonas dns'; +$wb['default_slave_dnsserver_txt'] = 'Servidor DNS secundário'; $wb['limit_dns_slave_zone_txt'] = 'Limite de zonas dns secundárias'; $wb['limit_dns_record_txt'] = 'Limite de registros dns'; -$wb['limit_shell_user_txt'] = 'Limite de usuários shell'; +$wb['limit_shell_user_txt'] = 'Limite de usuários do shell'; +$wb['limit_webdav_user_txt'] = 'Limite de usuário Webdav'; +$wb['limit_backup_txt'] = 'Funções de backup disponÃvel'; $wb['limit_client_txt'] = 'Limite de clientes'; -$wb['limit_maildomain_error_notint'] = 'Limite de e-mails deve ser um número'; -$wb['limit_mailbox_error_notint'] = 'Limite de caixas postais deve ser um número'; -$wb['limit_mailalias_error_notint'] = 'Limite de apelidos de domÃnio de e-mails deve ser um número'; -$wb['limit_mailforward_error_notint'] = 'Limite de redirecionamentos de e-mail deve ser um número'; -$wb['limit_mailcatchall_error_notint'] = 'Limite de contas cata tudo deve ser um número'; -$wb['limit_mailrouting_error_notint'] = 'Limite de transportes de e-mails deve ser um número'; -$wb['limit_mailfilter_error_notint'] = 'Limite de filtros de e-mails deve ser um número.'; -$wb['limit_mailfetchmail_error_notint'] = 'Limite de contas de busca deve ser um número.'; -$wb['limit_mailquota_error_notint'] = 'Cota de e-mail deve ser um número.'; -$wb['limit_spamfilter_wblist_error_notint'] = 'Limite de filtros anti-spam lista branca/negra deve ser um número'; -$wb['limit_spamfilter_user_error_notint'] = 'Limite de filtros anti-spam deve ser um número.'; -$wb['limit_spamfilter_policy_error_notint'] = 'Limite de polÃticas anti-spam deve ser um número.'; -$wb['limit_web_domain_error_notint'] = 'Limite de sites deve ser um número'; -$wb['limit_web_aliasdomain_error_notint'] = 'Limite de apelidos de domÃnio de site deve ser um número'; -$wb['limit_web_subdomain_error_notint'] = 'Limite de subdomÃnios de site deve ser um número'; -$wb['limit_ftp_user_error_notint'] = 'Limite de contas FTP deve ser um número'; -$wb['limit_shell_user_error_notint'] = 'Limite de contas shell deve ser um número'; -$wb['limit_dns_zone_error_notint'] = 'Limite de zonas DNS primárias deve ser um número'; -$wb['limit_dns_slave_zone_error_notint'] = 'Limite de zonas DNS secundárias deve ser um número.'; -$wb['limit_dns_record_error_notint'] = 'Limite de registros DNS deve ser um número.'; -$wb['limit_database_error_notint'] = 'Limite de banco de dados deve ser um número'; -$wb['error_template_name_empty'] = 'Por favor insira o nome do gabarito'; -$wb['limit_cron_txt'] = 'Limite de tarefas no cron'; -$wb['limit_cron_type_txt'] = 'Limite de tipos de tarefas no cron (em chroot e url completas)'; -$wb['limit_cron_frequency_txt'] = 'Intervalo mÃnimo entre as execuções'; -$wb['limit_cron_error_notint'] = 'Limite do cron deve ser um número.'; -$wb['limit_cron_error_frequency'] = 'Limite de frequência do cron deve ser um número.'; -$wb['limit_mailaliasdomain_txt'] = 'Limite de apelidos de domÃnio de e-mails'; -$wb['limit_mailaliasdomain_error_notint'] = 'Limite de apelidos de domÃnio de e-mails deve ser um número.'; +$wb['limit_maildomain_error_notint'] = 'O limite de domÃnios de e-mail deve ser um número.'; +$wb['limit_mailmailinglist_error_notint'] = 'O limite de listas de e-mail deve ser um número.'; +$wb['limit_mailbox_error_notint'] = 'O limite de contas de e-mail deve ser um número.'; +$wb['limit_mailalias_error_notint'] = 'O limite de alias de e-mail deve ser um número.'; +$wb['limit_mailaliasdomain_error_notint'] = 'O limite de alias de domÃnios deve ser um número.'; +$wb['limit_mailforward_error_notint'] = 'O limite de encaminhamento de e-mails deve ser um número.'; +$wb['limit_mailcatchall_error_notint'] = 'O limite de contas cata-tudo deve ser um número.'; +$wb['limit_mailrouting_error_notint'] = 'O limite de rotas de e-mail deve ser um número.'; +$wb['limit_mailfilter_error_notint'] = 'O limite de filtros de e-mail deve ser um número.'; +$wb['limit_mailfetchmail_error_notint'] = 'O limite de contas de busca deve ser um número.'; +$wb['limit_mailquota_error_notint'] = 'O limite da cota de e-mails deve ser um número.'; +$wb['limit_spamfilter_wblist_error_notint'] = 'O limite de filtros anti-spam "lista branca/negra" deve ser um número.'; +$wb['limit_spamfilter_user_error_notint'] = 'O limite de filtros anti-spam por conta de e-mail deve ser um número.'; +$wb['limit_spamfilter_policy_error_notint'] = 'O limite de polÃticas anti-spam deve ser um número.'; +$wb['limit_web_domain_error_notint'] = 'O limite de sites deve ser um número.'; +$wb['limit_web_aliasdomain_error_notint'] = 'O limite de alias de domÃnio para sites deve ser um número.'; +$wb['limit_web_subdomain_error_notint'] = 'O limite de sub-domÃnios para site deve ser um número.'; +$wb['limit_ftp_user_error_notint'] = 'O limite de usuários ftp deve ser um número.'; +$wb['limit_shell_user_error_notint'] = 'O limite de usuários do shell deve ser um número.'; +$wb['limit_webdav_user_error_notint'] = 'O limite de usuários webdav deve ser um número.'; +$wb['limit_dns_zone_error_notint'] = 'O limite de zonas dns deve ser um número.'; +$wb['limit_dns_slave_zone_error_notint'] = 'O limite de zonas dns secundárias deve ser um número.'; +$wb['limit_dns_record_error_notint'] = 'O limite de registros dns deve ser um número.'; +$wb['default_dbserver_txt'] = 'Servidor de banco de dados padrão'; +$wb['limit_database_txt'] = 'Limite de banco de dados'; +$wb['limit_database_error_notint'] = 'O limite de banco de dados deve ser um número.'; +$wb['limit_cron_error_notint'] = 'O limite de tarefas no cron deve ser um número.'; +$wb['limit_cron_error_frequency'] = 'O limite de execuções no cron deve ser um número.'; +$wb['error_template_name_empty'] = 'Por favor, insira um nome para o gabarito'; $wb['limit_web_quota_txt'] = 'Cota de site'; -$wb['limit_traffic_quota_txt'] = 'Cota de Tráfego'; -$wb['limit_trafficquota_error_notint'] = 'A cota de tráfego deve ser um número.'; -$wb['template_del_aborted_txt'] = 'Remoção abortada. Ainda existem clientes com o gabarito selecionado.'; -$wb['limit_webdav_user_txt'] = 'Limite de usuários webdav'; -$wb['limit_webdav_user_error_notint'] = 'Limite de usuários webdav deve ser um número.'; -$wb['limit_backup_txt'] = 'Funções de backup disponÃveis'; -$wb['limit_mailmailinglist_txt'] = 'Limite de listas de e-mails'; -$wb['limit_mailmailinglist_error_notint'] = 'Limite de listas de e-mails deve ser um número.'; -$wb['limit_openvz_vm_txt'] = 'Limite de servidores virtuais'; -$wb['limit_openvz_vm_template_id_txt'] = 'Forçar gabarito de servidor virtual'; -$wb['limit_openvz_vm_error_notint'] = 'Limite de servidores virtuais deve ser um número.'; -$wb['ssh_chroot_txt'] = 'Opções SSH-Chroot'; +$wb['limit_traffic_quota_txt'] = 'Cota de tráfego'; +$wb['limit_trafficquota_error_notint'] = 'Cota de tráfego deve ser um número.'; +$wb['template_del_aborted_txt'] = 'Remover cancelado. Ainda existe algum cliente com este gabarito em uso.'; +$wb['limit_openvz_vm_txt'] = 'Limite de máquinas virtuais'; +$wb['limit_openvz_vm_template_id_txt'] = 'Forçar gabarito para máquina virtual'; +$wb['limit_openvz_vm_error_notint'] = 'O limite de máquinas virtuais deve ser um número.'; +$wb['ssh_chroot_txt'] = 'Opções de SSH-Chroot'; $wb['web_php_options_txt'] = 'Opções PHP'; -$wb['template_type_txt'] = 'Tipo de Gabarito'; -$wb['template_name_txt'] = 'Nome do Gabarito'; $wb['limit_cgi_txt'] = 'CGI disponÃvel'; $wb['limit_ssi_txt'] = 'SSI disponÃvel'; $wb['limit_perl_txt'] = 'Perl disponÃvel'; $wb['limit_ruby_txt'] = 'Ruby disponÃvel'; $wb['limit_python_txt'] = 'Python disponÃvel'; $wb['force_suexec_txt'] = 'Forçar SuEXEC'; -$wb['limit_hterror_txt'] = 'Diretório \\"Custom error docs\\" disponÃvel'; -$wb['limit_wildcard_txt'] = 'Curingas de subdomÃnios disponÃveis'; +$wb['limit_hterror_txt'] = 'Custom-error-docs disponÃvel'; +$wb['limit_wildcard_txt'] = 'Curingas de sub-domÃnio disponÃvel'; $wb['limit_ssl_txt'] = 'SSL disponÃvel'; -$wb['web_limits_txt'] = 'Limites web'; -$wb['email_limits_txt'] = 'Limites de e-mail'; +$wb['limit_ssl_letsencrypt_txt'] = 'Let'; +$wb['web_limits_txt'] = 'Limites de site'; +$wb['email_limits_txt'] = 'Limites de e-mails'; $wb['database_limits_txt'] = 'Limites de banco de dados'; -$wb['cron_job_limits_txt'] = 'Limites de tarefas no cron'; +$wb['cron_job_limits_txt'] = 'Limite de tarefas no cron'; $wb['dns_limits_txt'] = 'Limites de DNS'; $wb['virtualization_limits_txt'] = 'Limites de virtualização'; -$wb['aps_limits_txt'] = 'Limites de instalações de apps'; -$wb['limit_aps_txt'] = 'Limites de instâncias de apps'; -$wb['limit_aps_error_notint'] = 'Limite de instâncias de apps deve ser um número.'; +$wb['aps_limits_txt'] = 'Limites de instalações de aplicações - APPs'; +$wb['limit_aps_txt'] = 'Limite de instâncias para APPs'; +$wb['limit_aps_error_notint'] = 'O limite de instância para APPs deve ser um número.'; $wb['limit_domainmodule_txt'] = 'Limites de módulos de domÃnio'; $wb['client_limits_txt'] = 'Limites de clientes'; -$wb['default_mailserver_txt'] = 'Servidor de e-mails padrão'; -$wb['default_webserver_txt'] = 'Servidor de páginas padrão'; -$wb['default_dnsserver_txt'] = 'Servidor DNS padrão'; -$wb['default_slave_dnsserver_txt'] = 'Servidor DNS secundário padrão'; -$wb['default_dbserver_txt'] = 'Servidor de banco de dados padrão'; -$wb['limit_database_quota_txt'] = 'Cota para banco de dados'; -$wb['limit_database_quota_error_notint'] = 'Limite da cota para banco de dados deve ser um número.'; -$wb['xmpp_limits_txt'] = 'Limites XMPP'; -$wb['xmpp_servers_txt'] = 'Servidores XMPP'; -$wb['xmpp_servers_placeholder'] = 'Selecionar servidores XMPP'; -$wb['no_xmpp_server_error'] = 'Ao menos um servidor XMPP deve ser selecionado.'; -$wb['xmpp_servers_used'] = 'O servidor que você está tentando remover para este cliente é usado como um servidor XMPP. Tenha certeza que este servidor não é usando por este cliente antes de removê-lo.'; -$wb['limit_xmpp_domain_error_notint'] = 'Limite de domÃnios XMPP deve ser um número.'; -$wb['limit_xmpp_user_error_notint'] = 'Limite de usuários XMPP deve ser um número.'; -$wb['limit_xmpp_domain_txt'] = 'Limite de domÃnios XMPP'; -$wb['limit_xmpp_user_txt'] = 'Limite de contas XMPP'; +$wb['limit_database_quota_txt'] = 'Cotas de banco de dados'; +$wb['limit_database_quota_error_notint'] = 'O limite das cotas de banco de dados deve ser um número.'; +$wb['xmpp_limits_txt'] = 'Limites de xmpp'; +$wb['xmpp_servers_txt'] = 'Servidores xmpp'; +$wb['xmpp_servers_placeholder'] = 'Selecione o(s) servidor(es) xmpp'; +$wb['no_xmpp_server_error'] = 'Ao menos um servidor xmpp deve ser selecionado.'; +$wb['xmpp_servers_used'] = 'O servidor que você está tentando remover para este cliente é usado como um servidor xmpp. Garanta que este servidor não é usado por este cliente antes de removê-lo.'; +$wb['limit_xmpp_domain_error_notint'] = 'O limite de domÃnios xmpp deve ser um número.'; +$wb['limit_xmpp_user_error_notint'] = 'O limite de usuários xmpp deve ser um número.'; +$wb['limit_xmpp_domain_txt'] = 'Limite de domÃnios xmpp'; +$wb['limit_xmpp_user_txt'] = 'Limite de usuários xmpp'; $wb['limit_xmpp_muc_txt'] = 'Chat multiusuário disponÃvel'; $wb['limit_xmpp_pastebin_txt'] = 'Pastebin para MUC disponÃvel'; -$wb['limit_xmpp_httparchive_txt'] = 'Arquivo HTTP para MUC disponÃvel'; +$wb['limit_xmpp_httparchive_txt'] = 'Arquivos http para MUC disponÃvel'; $wb['limit_xmpp_anon_txt'] = 'Host anônimo disponÃvel'; $wb['limit_xmpp_vjud_txt'] = 'Diretório de usuário VJUD disponÃvel'; $wb['limit_xmpp_proxy_txt'] = 'Proxy Bytestream disponÃvel'; $wb['limit_xmpp_status_txt'] = 'Estado do host disponÃvel'; -$wb['dns_servers_txt'] = 'Servidores DNS'; -$wb['limit_ssl_letsencrypt_txt'] = 'Let\'s Encrypt disponÃvel'; -$wb['limit_directive_snippets_txt'] = 'Exibir seleção de configuração do servidor de páginas'; -$wb['limit_database_user_txt'] = 'Limite de usuários de banco de dados'; +$wb['dns_servers_txt'] = 'Servidores dns'; +$wb['limit_directive_snippets_txt'] = 'Exibir seleção de configurações do servidor web'; +$wb['limit_database_user_txt'] = 'Limite de usuários do banco de dados'; $wb['web_servers_txt'] = 'Servidores web'; +$wb['dns_servers_txt'] = 'Servidores dns'; +$wb['xmpp_servers_txt'] = 'Servidores xmpp'; $wb['db_servers_txt'] = 'Servidores de banco de dados'; $wb['mail_servers_txt'] = 'Servidores de e-mail'; $wb['Limits'] = 'Limites'; diff --git a/interface/web/client/lib/lang/br_client_template_list.lng b/interface/web/client/lib/lang/br_client_template_list.lng index db73df8efd..47bd2e5779 100644 --- a/interface/web/client/lib/lang/br_client_template_list.lng +++ b/interface/web/client/lib/lang/br_client_template_list.lng @@ -1,7 +1,7 @@ <?php -$wb['list_head_txt'] = 'Gabarito de limites para clientes'; +$wb['list_head_txt'] = 'Gabaritos de clientes e revendas'; $wb['template_type_txt'] = 'Tipo'; -$wb['template_name_txt'] = 'Nome do Gabarito'; -$wb['template_id_txt'] = 'ID do Gabarito'; -$wb['sys_groupid_txt'] = 'Reseller'; +$wb['template_name_txt'] = 'Nome do gabarito'; +$wb['template_id_txt'] = 'ID do gabarito'; +$wb['sys_groupid_txt'] = 'Revenda'; ?> diff --git a/interface/web/client/lib/lang/br_clients_list.lng b/interface/web/client/lib/lang/br_clients_list.lng index 7470bd27c4..8016151a9b 100644 --- a/interface/web/client/lib/lang/br_clients_list.lng +++ b/interface/web/client/lib/lang/br_clients_list.lng @@ -3,12 +3,12 @@ $wb['list_head_txt'] = 'Clientes'; $wb['client_id_txt'] = 'ID'; $wb['company_name_txt'] = 'Empresa'; $wb['contact_name_txt'] = 'Contato'; +$wb['username_txt'] = 'Usuário'; $wb['city_txt'] = 'Cidade'; $wb['country_txt'] = 'PaÃs'; $wb['add_new_record_txt'] = 'Adicionar novo cliente'; -$wb['username_txt'] = 'Usuário'; -$wb['customer_no_txt'] = 'Código do Cliente'; -$wb['locked_txt'] = 'Locked'; -$wb['yes_txt'] = 'Yes'; -$wb['no_txt'] = 'No'; +$wb['customer_no_txt'] = 'Código do cliente'; +$wb['locked_txt'] = 'Bloqueado'; +$wb['yes_txt'] = 'Sim'; +$wb['no_txt'] = 'Não'; ?> diff --git a/interface/web/client/lib/lang/br_domain.lng b/interface/web/client/lib/lang/br_domain.lng index 26c205a56b..988976d2ce 100644 --- a/interface/web/client/lib/lang/br_domain.lng +++ b/interface/web/client/lib/lang/br_domain.lng @@ -1,6 +1,6 @@ <?php -$wb['domain_error_empty'] = 'Nome do domÃnio está em branco.'; -$wb['domain_error_unique'] = 'Nome do domÃnio já existe.'; -$wb['domain_error_regex'] = 'Nome do domÃnio não é permitido.'; +$wb['domain_error_empty'] = 'O domÃnio está em branco.'; +$wb['domain_error_unique'] = 'O domÃnio já existe.'; +$wb['domain_error_regex'] = 'O nome do domÃnio não é permitido.'; $wb['Domain'] = 'DomÃnio'; ?> diff --git a/interface/web/client/lib/lang/br_reseller.lng b/interface/web/client/lib/lang/br_reseller.lng index d90d3b15a2..12a8a2953f 100644 --- a/interface/web/client/lib/lang/br_reseller.lng +++ b/interface/web/client/lib/lang/br_reseller.lng @@ -1,26 +1,29 @@ <?php -$wb['limit_maildomain_txt'] = 'Limite de domÃnios de e-mails'; -$wb['limit_mailbox_txt'] = 'Limite de contas de e-mails'; -$wb['limit_mailalias_txt'] = 'Limite de apelidos de domÃnio de e-mails'; -$wb['limit_mailforward_txt'] = 'Limite de encaminhamentos de e-mails'; -$wb['limit_mailcatchall_txt'] = 'Limite de contas cata tudo'; -$wb['limit_mailrouting_txt'] = 'Limite de transportes de e-mails'; -$wb['limit_mailfilter_txt'] = 'Limite de filtros de e-mails'; -$wb['limit_fetchmail_txt'] = 'Limite de contas de busca '; -$wb['limit_mailquota_txt'] = 'Cota de e-mail'; -$wb['limit_spamfilter_wblist_txt'] = 'Limite de filtros anti-spam lista branca/negra'; -$wb['limit_spamfilter_user_txt'] = 'Limite de usuários de filtros anti-spam'; +$wb['limit_maildomain_txt'] = 'Limite de domÃnios de e-mail'; +$wb['limit_mailmailinglist_txt'] = 'Limite de listas de e-mail'; +$wb['limit_mailbox_txt'] = 'Limite de contas de e-mail'; +$wb['limit_mailalias_txt'] = 'Limite de alias de e-mail'; +$wb['limit_mailaliasdomain_txt'] = 'Limite de alias de domÃnios'; +$wb['limit_mailforward_txt'] = 'Limite de encaminhamentos de e-mail'; +$wb['limit_mailcatchall_txt'] = 'Limite de contas cata-tudo'; +$wb['limit_mailrouting_txt'] = 'Limite de rotas de e-mail'; +$wb['limit_mailfilter_txt'] = 'Limite de filtros de e-mail'; +$wb['limit_fetchmail_txt'] = 'Limite de contas de busca'; +$wb['limit_mailquota_txt'] = 'Cota de contas de e-mail'; +$wb['limit_spamfilter_wblist_txt'] = 'Limite de filtros anti-spam "lista branca/negra"'; +$wb['limit_spamfilter_user_txt'] = 'Limite de filtros anti-spam por usuário'; $wb['limit_spamfilter_policy_txt'] = 'Limite de polÃticas anti-spam'; -$wb['default_mailserver_txt'] = 'Servidor de e-mails padrão'; +$wb['default_mailserver_txt'] = 'Servidor de e-mail padrão'; $wb['company_name_txt'] = 'Empresa'; -$wb['contact_firstname_txt'] = 'Nome do contato'; -$wb['contact_name_txt'] = 'Sobrenome do contato'; +$wb['contact_firstname_txt'] = 'Contato'; +$wb['contact_name_txt'] = 'Nome do contato'; $wb['username_txt'] = 'Usuário'; $wb['password_txt'] = 'Senha'; +$wb['password_click_to_set_txt'] = 'Clique para configurar'; $wb['password_strength_txt'] = 'Dificuldade da senha'; $wb['language_txt'] = 'Idioma'; $wb['usertheme_txt'] = 'Tema'; -$wb['street_txt'] = 'Rua'; +$wb['street_txt'] = 'Endereço'; $wb['zip_txt'] = 'CEP'; $wb['city_txt'] = 'Cidade'; $wb['state_txt'] = 'Estado'; @@ -28,180 +31,177 @@ $wb['country_txt'] = 'PaÃs'; $wb['telephone_txt'] = 'Telefone'; $wb['mobile_txt'] = 'Celular'; $wb['fax_txt'] = 'Fax'; -$wb['email_txt'] = 'e-mail'; -$wb['internet_txt'] = 'Internet'; -$wb['icq_txt'] = 'Skype/Telegram'; -$wb['notes_txt'] = 'Notas'; +$wb['email_txt'] = 'e-Mail'; +$wb['internet_txt'] = 'Site'; +$wb['icq_txt'] = 'Redes Sociais'; +$wb['notes_txt'] = 'Observações'; $wb['company_txt'] = 'Empresa'; $wb['title_txt'] = 'TÃtulo'; $wb['firstname_txt'] = 'Nome'; $wb['surname_txt'] = 'Sobrenome'; $wb['limit_domain_txt'] = 'Limite de domÃnios'; $wb['limit_subdomain_txt'] = 'Limite de subdomÃnios'; -$wb['limit_webquota_txt'] = 'Cota de site'; +$wb['limit_webquota_txt'] = 'Cota de sites'; $wb['limit_database_txt'] = 'Limite de banco de dados'; +$wb['limit_database_user_txt'] = 'Limite de usuários do banco de dados'; $wb['limit_cron_txt'] = 'Limite de tarefas no cron'; -$wb['limit_cron_type_txt'] = 'Limites de tarefas no cron (em chroot e url completas)'; -$wb['limit_cron_frequency_txt'] = 'Limite de tempo entre as execuções'; +$wb['limit_cron_type_txt'] = 'Limite de tipos de tarefa no cron (chrooted e url implÃcitas)'; +$wb['limit_cron_frequency_txt'] = 'Tempo de espera entre as execuções'; $wb['ip_address_txt'] = 'Endereço IP'; -$wb['limit_client_error_notint'] = 'Limite de clientes para revenda deve ser um número.'; +$wb['limit_client_error_notint'] = 'O limite de clientes deve ser um número.'; $wb['firstname_error_empty'] = 'Nome está em branco.'; $wb['contact_error_empty'] = 'Contato está em branco.'; -$wb['default_webserver_txt'] = 'Servidor de páginas padrão'; +$wb['default_webserver_txt'] = 'Servidor web padrão'; $wb['limit_web_domain_txt'] = 'Limite de domÃnios de site'; -$wb['limit_web_aliasdomain_txt'] = 'Limite de apelidos'; -$wb['limit_web_subdomain_txt'] = 'Limite de subdomÃnios'; +$wb['limit_web_aliasdomain_txt'] = 'Limite de alias de domÃnios de site'; +$wb['limit_web_subdomain_txt'] = 'Limite subdomÃnios de site'; $wb['limit_ftp_user_txt'] = 'Limite de usuários ftp'; -$wb['default_dnsserver_txt'] = 'Servidor dns Padrão'; -$wb['limit_dns_zone_txt'] = 'Limite de de zonas dns'; +$wb['default_dnsserver_txt'] = 'Servidor dns padrão'; +$wb['limit_dns_zone_txt'] = 'Limite de zonas dns'; $wb['limit_dns_slave_zone_txt'] = 'Limite de zonas dns secundárias'; $wb['limit_dns_record_txt'] = 'Limite de registros dns'; -$wb['limit_shell_user_txt'] = 'Limite de usuários shell'; +$wb['limit_shell_user_txt'] = 'Limite de usuários do shell'; +$wb['limit_webdav_user_txt'] = 'Limite de usuários webdav'; +$wb['limit_backup_txt'] = 'Função de backup disponÃvel'; $wb['limit_client_txt'] = 'Limite de clientes'; -$wb['username_error_empty'] = 'Nome do usuário está em branco.'; -$wb['username_error_unique'] = 'O nome do usuário deve ser exclusivo.'; -$wb['limit_maildomain_error_notint'] = 'Limite de domÃnios de e-mails deve ser um número.'; -$wb['limit_mailbox_error_notint'] = 'Limite de contas de e-mails deve ser um número.'; -$wb['limit_mailalias_error_notint'] = 'Limite de apelidos de domÃnio de e-mails deve ser um número.'; -$wb['limit_mailforward_error_notint'] = 'Limite de encaminhamentos de e-mails deve ser um número.'; -$wb['limit_mailcatchall_error_notint'] = 'Limite de contas cata tudo deve ser um número.'; -$wb['limit_mailrouting_error_notint'] = 'Limite de transportes de e-mails deve ser um número.'; -$wb['limit_mailfilter_error_notint'] = 'Limite de filtros de e-mails deve ser um número.'; -$wb['limit_mailfetchmail_error_notint'] = 'Limite de contas de busca deve ser um número.'; -$wb['limit_mailquota_error_notint'] = 'A cota de e-mail deve ser um número.'; -$wb['limit_spamfilter_wblist_error_notint'] = 'Limite de filtros anti-spam lista branca/negra deve ser um número.'; -$wb['limit_spamfilter_user_error_notint'] = 'Limite de usuários de filtros anti-spam deve ser um número.'; -$wb['limit_spamfilter_policy_error_notint'] = 'Limite de polÃticas anti-spam deve ser um número.'; -$wb['limit_web_domain_error_notint'] = 'Limite de sites deve ser um número.'; -$wb['limit_web_aliasdomain_error_notint'] = 'Limite de apelidos de domÃnio de site deve ser um número.'; -$wb['limit_web_subdomain_error_notint'] = 'Limite de subdomÃnios de site deve ser um número.'; -$wb['limit_ftp_user_error_notint'] = 'Limite de usuários ftp deve ser um número.'; -$wb['limit_shell_user_error_notint'] = 'Limite de usuários shell deve ser um número.'; -$wb['limit_dns_zone_error_notint'] = 'Limite de registros dns deve ser um número.'; -$wb['limit_dns_slave_zone_error_notint'] = 'Limite de zonas dns secundárias deve ser um número.'; -$wb['limit_dns_record_error_notint'] = 'Limite de registros dns deve ser um número.'; +$wb['username_error_empty'] = 'Usuário está em branco.'; +$wb['username_error_unique'] = 'O nome de usuário deve ser exclusivo.'; +$wb['limit_maildomain_error_notint'] = 'O limite de domÃnios de e-mail deve ser um número.'; +$wb['limit_mailmailinglist_error_notint'] = 'O limite de registro de listas de e-mail deve ser um número.'; +$wb['limit_mailbox_error_notint'] = 'O limite de contas de e-mail deve ser um número.'; +$wb['limit_mailalias_error_notint'] = 'O limite de alias de e-mail deve ser um número.'; +$wb['limit_mailforward_error_notint'] = 'O limite de encaminhamentos deve ser um número.'; +$wb['limit_mailcatchall_error_notint'] = 'O limite de contas cata-tudo deve ser um número.'; +$wb['limit_mailrouting_error_notint'] = 'O limite de rotas de e-mail deve ser um número.'; +$wb['limit_mailfilter_error_notint'] = 'O limite de filtros de e-mail deve ser um número.'; +$wb['limit_mailfetchmail_error_notint'] = 'O limite de contas de busca deve ser um número.'; +$wb['limit_mailquota_error_notint'] = 'O limite das cotas de e-mail deve ser um número.'; +$wb['limit_spamfilter_wblist_error_notint'] = 'O limite de filtros anti-spam "lista branca/negra" deve ser um número.'; +$wb['limit_spamfilter_user_error_notint'] = 'O limite de filtros anti-spam por conta de e-mail deve ser um número.'; +$wb['limit_spamfilter_policy_error_notint'] = 'O limite de polÃticas anti-spam deve ser um número.'; +$wb['limit_web_domain_error_notint'] = 'O limite de sites deve ser um número.'; +$wb['limit_web_aliasdomain_error_notint'] = 'O limite de alias de domÃnios de site deve ser um número.'; +$wb['limit_web_subdomain_error_notint'] = 'O limite de subdomÃnios de site deve ser um número.'; +$wb['limit_ftp_user_error_notint'] = 'O limite de usuários ftp deve ser um número.'; +$wb['limit_webdav_user_error_notint'] = 'O limite de usuários webdav deve ser um número.'; +$wb['limit_shell_user_error_notint'] = 'O limite de usuários do shell deve ser um número.'; +$wb['limit_dns_zone_error_notint'] = 'O limite de zonas dns deve ser um número.'; +$wb['limit_dns_slave_zone_error_notint'] = 'O limite de zonas dns secundárias deve ser um número.'; +$wb['limit_dns_record_error_notint'] = 'O limite de registros dns deve ser um número.'; $wb['default_dbserver_txt'] = 'Servidor de banco de dados padrão'; -$wb['limit_database_error_notint'] = 'Limite de banco de dados deve ser um número.'; -$wb['limit_cron_error_notint'] = 'Limite de tarefas no cron deve ser um número.'; -$wb['limit_cron_error_frequency'] = 'Limite de frequência no cron deve ser um número.'; +$wb['limit_database_error_notint'] = 'O limite de banco de dados deve ser um número.'; +$wb['limit_cron_error_notint'] = 'O limite de tarefas no cron deve ser um número.'; +$wb['limit_cron_error_frequency'] = 'O limite da frequência de execuções no cron deve ser um número.'; $wb['username_error_regex'] = 'O nome do usuário contém caracteres inválidos.'; -$wb['template_master_txt'] = 'Gabarito mestre'; -$wb['template_additional_txt'] = 'Gabarito personalizado'; -$wb['ssh_chroot_txt'] = 'Opções do Chroot SSH'; -$wb['web_php_options_txt'] = 'Opções do PHP'; -$wb['limit_client_error'] = 'Limite de clientes foi alcançado.'; -$wb['limit_client_error_positive_or_unlimited'] = 'Limite de clientes deve ser > 0'; -$wb['limit_web_quota_txt'] = 'Cota de site'; -$wb['limit_traffic_quota_txt'] = 'Cota de tráfego'; -$wb['limit_trafficquota_error_notint'] = 'A cota de tráfego deve ser um número.'; -$wb['customer_no_txt'] = 'Código do cliente.'; -$wb['vat_id_txt'] = 'VAT ID'; -$wb['required_fields_txt'] = '*Campos obrigatórios'; -$wb['limit_mailmailinglist_txt'] = 'Limite de listas de e-mails'; -$wb['limit_mailmailinglist_error_notint'] = 'Limite de listas de e-mails deve ser um número.'; -$wb['limit_webdav_user_txt'] = 'Limite de usuário webdav'; -$wb['limit_webdav_user_error_notint'] = 'Limite de usuários webdav deve ser um número.'; -$wb['limit_backup_txt'] = 'Função de backup disponÃvel'; -$wb['limit_mailaliasdomain_txt'] = 'Limite de apelidos de domÃnio de e-mails'; -$wb['limit_openvz_vm_txt'] = 'Limite de servidores virtuais'; -$wb['limit_openvz_vm_template_id_txt'] = 'Forçar gabarito de servidor virtual'; -$wb['limit_openvz_vm_error_notint'] = 'Limite de servidores virtuais deve ser um número.'; -$wb['web_php_options_notempty'] = 'Nenhuma opção do php selecionada. Selecione ao menos uma opção.'; -$wb['ssh_chroot_notempty'] = 'Nenhuma opção do ssh-chroot selecionada. Selecione ao menos uma opção.'; -$wb['username_error_collision'] = 'O nome do usuário não pode iniciar com a palavra -web- ou -web- seguida de um número.'; +$wb['template_master_txt'] = 'Gabarito Mestre'; +$wb['template_additional_txt'] = 'Gabarito Personalizado'; $wb['add_additional_template_txt'] = 'Adicionar gabarito personalizado'; $wb['delete_additional_template_txt'] = 'Remover gabarito personalizado'; +$wb['ssh_chroot_txt'] = 'Opções SSH-Chroot'; +$wb['web_php_options_txt'] = 'Opções PHP'; $wb['limit_cgi_txt'] = 'CGI disponÃvel'; $wb['limit_ssi_txt'] = 'SSI disponÃvel'; $wb['limit_perl_txt'] = 'Perl disponÃvel'; $wb['limit_ruby_txt'] = 'Ruby disponÃvel'; $wb['limit_python_txt'] = 'Python disponÃvel'; -$wb['force_suexec_txt'] = 'SuEXEC forced'; +$wb['force_suexec_txt'] = 'Forçar SuEXEC'; $wb['limit_hterror_txt'] = 'Custom error docs disponÃvel'; -$wb['limit_wildcard_txt'] = 'Curingas de subdomÃnios disponÃveis'; +$wb['limit_wildcard_txt'] = 'Curingas de subdomÃnios disponÃvel'; $wb['limit_ssl_txt'] = 'SSL disponÃvel'; -$wb['web_limits_txt'] = 'Limites web'; -$wb['email_limits_txt'] = 'Limites de e-mails'; -$wb['database_limits_txt'] = 'Limites de banco de dados'; -$wb['cron_job_limits_txt'] = 'Limites de tarefas no cron'; -$wb['dns_limits_txt'] = 'Limites de dns'; -$wb['virtualization_limits_txt'] = 'Limites de virtualização'; -$wb['generate_password_txt'] = 'Gerar senha'; -$wb['repeat_password_txt'] = 'Repetir senha'; -$wb['password_mismatch_txt'] = 'A senhas não coincidem.'; -$wb['password_match_txt'] = 'A senhas coincidem.'; +$wb['limit_ssl_letsencrypt_txt'] = 'Let\'s Encrypt disponÃvel'; +$wb['limit_client_error'] = 'O limite de clientes para esta conta foi alcançado.'; +$wb['limit_client_error_positive_or_unlimited'] = 'O número de clientes deve ser > 0 ou -1 (ilimitado)'; +$wb['limit_web_quota_txt'] = 'Cota web'; +$wb['limit_traffic_quota_txt'] = 'Cota de tráfego'; +$wb['limit_trafficquota_error_notint'] = 'Cota de tráfego deve ser um número.'; +$wb['customer_no_txt'] = 'Código do cliente'; +$wb['vat_id_txt'] = 'VAT ID'; +$wb['required_fields_txt'] = '*Campos obrigatórios'; +$wb['limit_openvz_vm_txt'] = 'Limite de máquinas virtuais'; +$wb['limit_openvz_vm_template_id_txt'] = 'Forçar gabarito para máquina virtual'; +$wb['limit_openvz_vm_error_notint'] = 'O limite de máquinas virtuais deve ser um número.'; +$wb['web_php_options_notempty'] = 'Nenhuma opção PHP selecionado. Selecione ao menos uma opção PHP.'; +$wb['ssh_chroot_notempty'] = 'Nenhuma opção SSH chroot selecionada. Selecione ao menos uma opção SSH chroot.'; +$wb['username_error_collision'] = 'O nome de usuário não pode iniciar com -web- ou -web- seguida de um número.'; +$wb['web_limits_txt'] = 'Limite de site'; +$wb['email_limits_txt'] = 'Limites de e-mail'; +$wb['database_limits_txt'] = 'Limite de banco de dados'; +$wb['cron_job_limits_txt'] = 'Limites de tarefa no Cron'; +$wb['dns_limits_txt'] = 'Limites de DNS'; +$wb['virtualization_limits_txt'] = 'Limites de máquinas virtuais'; +$wb['generate_password_txt'] = 'Gerar Senha'; +$wb['repeat_password_txt'] = 'Repetir Senha'; +$wb['password_mismatch_txt'] = 'As senhas não coincidem.'; +$wb['password_match_txt'] = 'As senhas coincidem.'; $wb['email_error_isemail'] = 'Por favor, insira um e-mail válido.'; -$wb['customer_no_error_unique'] = 'O código do cliente deve ser exclusivo (ou deixe em branco).'; +$wb['customer_no_error_unique'] = 'O código do cliente deve ser exclusivo e não pode estar está em branco.'; $wb['paypal_email_error_isemail'] = 'Por favor, insira um e-mail do PayPal válido.'; -$wb['paypal_email_txt'] = 'e-mail do PayPal'; -$wb['company_id_txt'] = 'ID da empresa'; -$wb['bank_account_number_txt'] = 'Conta corrente'; -$wb['bank_account_owner_txt'] = 'Proprietário'; -$wb['bank_code_txt'] = 'Codigo do banco'; +$wb['paypal_email_txt'] = 'e-Mail PayPal'; +$wb['company_id_txt'] = 'Código da Empresa'; +$wb['bank_account_number_txt'] = 'Conta bancária'; +$wb['bank_account_owner_txt'] = 'Proprietário da conta bancária'; +$wb['bank_code_txt'] = 'Código do banco'; $wb['bank_name_txt'] = 'Nome do banco'; $wb['bank_account_iban_txt'] = 'IBAN'; $wb['bank_account_swift_txt'] = 'BIC/Swift'; -$wb['aps_limits_txt'] = 'Limites de instalações de apps'; -$wb['limit_aps_txt'] = 'Limites de instâncias de apps'; -$wb['limit_aps_error_notint'] = 'Limite de instâncias de apps deve ser um número.'; -$wb['default_slave_dnsserver_txt'] = 'Servidor dns secundário padrão'; +$wb['aps_limits_txt'] = 'Limites de instaladores de APPs'; +$wb['limit_aps_txt'] = 'Limite de instâncias de APPs'; +$wb['limit_aps_error_notint'] = 'O limite de instâncias de APPs deve ser um número.'; +$wb['default_slave_dnsserver_txt'] = 'Servidor DNS secundário padrão'; $wb['locked_txt'] = 'Bloqueado'; $wb['canceled_txt'] = 'Cancelado'; $wb['gender_m_txt'] = 'Sr.'; $wb['gender_f_txt'] = 'Sra.'; $wb['gender_txt'] = 'TÃtulo'; -$wb['customer_no_template_txt'] = 'No. do gabarito do cliente'; -$wb['customer_no_template_error_regex_txt'] = 'O número do gabarito contém caracteres inválidos.'; -$wb['customer_no_start_txt'] = 'Valor inicial do código do cliente'; -$wb['customer_no_counter_txt'] = 'Contador de código do cliente'; -$wb['added_by_txt'] = 'Cadastrado por'; -$wb['added_date_txt'] = 'Data do cadastro'; -$wb['limit_domainmodule_error_notint'] = 'Limite de módulos de domÃnio deve ser um número.'; -$wb['limit_domainmodule_txt'] = 'Limites de módulos de domÃnio'; -$wb['client_limits_txt'] = 'Limite de clientes'; -$wb['err_msg_master_tpl_set'] = 'Todas as configurações personalizadas de limites serão ignoradas se um gabarito mestre ou \\"personalizado\\" for selecionado.'; -$wb['btn_save_txt'] = 'Salvar'; -$wb['btn_cancel_txt'] = 'Cancelar'; -$wb['email_error_empty'] = 'e-mail está em branco.'; -$wb['web_servers_txt'] = 'Servidores web'; -$wb['web_servers_placeholder'] = 'Selecionar servidores web'; -$wb['no_web_server_error'] = 'Ao menos um servidor de páginas deve ser selecionado.'; -$wb['web_servers_used'] = 'O servidor que você está tentando remover para este cliente é utilizado como um servidor de páginas. Certifique-se de que este servidor não é usado por este cliente antes de removê-lo.'; -$wb['dns_servers_txt'] = 'Servidores dns'; -$wb['dns_servers_placeholder'] = 'Selecione os servidores dns'; -$wb['no_dns_server_error'] = 'Ao menos um servidor dns deve ser selecionado.'; -$wb['dns_servers_used'] = 'O servidor que você está tentando remover para este cliente é utilizado como um servidor dns. Certifique-se de que este servidor não é usado por este cliente antes de removê-lo.'; -$wb['db_servers_txt'] = 'Servidores de banco de dados'; -$wb['db_servers_placeholder'] = 'Selecione os servidores de banco de dados.'; +$wb['web_servers_txt'] = 'Servidores Web'; +$wb['web_servers_placeholder'] = 'Selecione o(s) servidor(es) web'; +$wb['no_web_server_error'] = 'Ao menos um servidor web deve ser selecionado.'; +$wb['web_servers_used'] = 'O servidor web que você está tentando remover para este cliente é usado pelo mesmo. Certifique-se que este servidor não esteja em uso para este cliente antes de removê-lo.'; +$wb['dns_servers_txt'] = 'Servidor DNS'; +$wb['dns_servers_placeholder'] = 'Selecione os servidores DNS'; +$wb['no_dns_server_error'] = 'Ao menos um servidor DNS deve ser selecionado.'; +$wb['dns_servers_used'] = 'O servidor DNS que você está tentando remover para este cliente é usado pelo mesmo. Certifique-se que este servidor não esteja em uso para este cliente antes de removê-lo.'; +$wb['db_servers_txt'] = 'Servidor de banco de dados'; +$wb['db_servers_placeholder'] = 'Selecione os servidores de banco de dados'; $wb['no_db_server_error'] = 'Ao menos um servidor de banco de dados deve ser selecionado.'; -$wb['db_servers_used'] = 'O servidor que você está tentando remover para este cliente é utilizado como um servidor de banco de dados. Certifique-se de que este servidor não é usado por este cliente antes de removê-lo.'; -$wb['mail_servers_txt'] = 'Servidores de e-mails'; -$wb['mail_servers_placeholder'] = 'Selecionar servidores de e-mails'; +$wb['db_servers_used'] = 'O servidor de banco de dados que você está tentando remover para este cliente é usado pelo mesmo. Certifique-se que este servidor não esteja em uso para este cliente antes de removê-lo.'; +$wb['mail_servers_txt'] = 'Servidores de e-mail'; +$wb['mail_servers_placeholder'] = 'Selecione os servidores de e-mail'; $wb['no_mail_server_error'] = 'Ao menos um servidor de e-mail deve ser selecionado.'; -$wb['mail_servers_used'] = 'O servidor que você está tentando remover para este cliente é utilizado como um servidor de e-mails. Certifique-se de que este servidor não é usado por este cliente antes de removê-lo.'; -$wb['xmpp_limits_txt'] = 'Limites XMPP'; -$wb['xmpp_servers_txt'] = 'Servidores XMPP'; -$wb['xmpp_servers_placeholder'] = 'Selecione os servidores XMPP'; -$wb['no_xmpp_server_error'] = 'Ao menos um servidor XMPP deve ser selecionado.'; -$wb['xmpp_servers_used'] = 'O servidor que você está tentando remover para este cliente é utilizado como um servidor xmpp. Certifique-se de que este servidor não é usado por este cliente antes de removê-lo.'; -$wb['limit_xmpp_domain_error_notint'] = 'Limite de domÃnios xmpp deve ser um número.'; -$wb['limit_xmpp_user_error_notint'] = 'Limite de usuários xmpp deve ser um número.'; +$wb['mail_servers_used'] = 'O servidor de e-mails que você está tentando remover para este cliente é usado pelo mesmo. Certifique-se que este servidor não esteja em uso para este cliente antes de removê-lo.'; +$wb['customer_no_template_txt'] = 'Código do gabarito de clientes'; +$wb['customer_no_template_error_regex_txt'] = 'O código de gabarito de clientes possui caracteres inválidos.'; +$wb['customer_no_start_txt'] = 'Iniciar código de clientes em'; +$wb['customer_no_counter_txt'] = 'Contador de código do cliente'; +$wb['xmpp_limits_txt'] = 'Limites xmpp'; +$wb['xmpp_servers_txt'] = 'Servidores xmpp'; +$wb['xmpp_servers_placeholder'] = 'Selecione os servidores xmpp'; +$wb['no_xmpp_server_error'] = 'Ao menos um servidor xmpp deve ser selecionado.'; +$wb['xmpp_servers_used'] = 'O servidor xmpp que você está tentando remover para este cliente é usado pelo mesmo. Certifique-se que este servidor não esteja em uso para este cliente antes de removê-lo.'; +$wb['limit_xmpp_domain_error_notint'] = 'O limite de domÃnios xmpp deve ser um número.'; +$wb['limit_xmpp_user_error_notint'] = 'O limite de usuários xmpp deve ser um número.'; $wb['limit_xmpp_domain_txt'] = 'Limite de domÃnios xmpp'; $wb['limit_xmpp_user_txt'] = 'Limite de usuários xmpp'; -$wb['limit_xmpp_muc_txt'] = 'Chat multiusuário disponÃvel'; +$wb['limit_xmpp_muc_txt'] = 'Chat multiusuário (MUC) disponÃvel'; $wb['limit_xmpp_pastebin_txt'] = 'Pastebin para MUC disponÃvel'; $wb['limit_xmpp_httparchive_txt'] = 'Arquivo HTTP para MUC disponÃvel'; $wb['limit_xmpp_anon_txt'] = 'Host anônimo disponÃvel'; $wb['limit_xmpp_vjud_txt'] = 'Diretório de usuário VJUD disponÃvel'; -$wb['limit_xmpp_proxy_txt'] = 'Proxy bytestream disponÃvel'; +$wb['limit_xmpp_proxy_txt'] = 'Proxy Bytestream disponÃvel'; $wb['limit_xmpp_status_txt'] = 'Estado do host disponÃvel'; -$wb['invalid_vat_id'] = 'O VAT ID é é inválido.'; -$wb['limit_database_user_txt'] = 'Limite de usuários de banco de dados'; -$wb['limit_database_user_error_notint'] = 'Limite de usuários de banco de dados deve ser um número.'; -$wb['limit_database_quota_txt'] = 'Cota para banco de dados'; -$wb['limit_database_quota_error_notint'] = 'A cota para banco de dados deve ser um número.'; -$wb['limit_ssl_letsencrypt_txt'] = 'Let\'s Encrypt disponÃvel'; -$wb['limit_directive_snippets_txt'] = 'Exibir seleção das configurações do servidor de páginas'; -$wb['password_click_to_set_txt'] = 'Configurar'; +$wb['added_by_txt'] = 'Cadastrado por'; +$wb['added_date_txt'] = 'Data do cadastro'; +$wb['limit_domainmodule_error_notint'] = 'Limite de módulos de domÃnio deve ser um número.'; +$wb['limit_domainmodule_txt'] = 'Limite de módulos de domÃnio'; +$wb['client_limits_txt'] = 'Limite de clientes'; +$wb['err_msg_master_tpl_set'] = 'Todas as configurações de limites serão ignoradas se qualquer gabarito mestre ou personalizado for selecionado.'; +$wb['invalid_vat_id'] = 'O ID do VAT é inválido.'; +$wb['btn_save_txt'] = 'Salvar'; +$wb['btn_cancel_txt'] = 'Cancelar'; +$wb['email_error_empty'] = 'O endereço de e-mail está em branco.'; +$wb['limit_directive_snippets_txt'] = 'Exibir seleção de configuração do servidor web'; +$wb['limit_database_user_error_notint'] = 'O limite de usuários do banco de dados deve ser um número.'; +$wb['limit_database_quota_txt'] = 'Cota do banco de dados'; +$wb['limit_database_quota_error_notint'] = 'A cota do banco de dados deve ser um número.'; $wb['Limits'] = 'Limites'; ?> diff --git a/interface/web/client/lib/lang/br_resellers_list.lng b/interface/web/client/lib/lang/br_resellers_list.lng index 5a64358af9..1f67e7f593 100644 --- a/interface/web/client/lib/lang/br_resellers_list.lng +++ b/interface/web/client/lib/lang/br_resellers_list.lng @@ -6,6 +6,6 @@ $wb['contact_name_txt'] = 'Contato'; $wb['city_txt'] = 'Cidade'; $wb['country_txt'] = 'PaÃs'; $wb['add_new_record_txt'] = 'Adicionar nova revenda'; -$wb['customer_no_txt'] = 'Código do Cliente'; +$wb['customer_no_txt'] = 'Código do cliente'; $wb['username_txt'] = 'Usuário'; ?> diff --git a/interface/web/client/lib/lang/tr.lng b/interface/web/client/lib/lang/tr.lng index 0f3df4d7a3..cc2e8aa022 100644 --- a/interface/web/client/lib/lang/tr.lng +++ b/interface/web/client/lib/lang/tr.lng @@ -16,14 +16,15 @@ $wb['delete_additional_template_txt'] = 'Ek Kalıbı Sil'; $wb['Messaging'] = 'Ä°letiÅŸim'; $wb['Send email'] = 'E-posta Gönderimi'; $wb['Edit Client Circle'] = 'Müşteri Grubu Düzenleme'; -$wb['Domains'] = 'Alan Adları'; -$wb['domain_txt'] = 'Alan Adı'; +$wb['Domains'] = 'Etki Alanları'; +$wb['domain_txt'] = 'Etki Alanı'; $wb['client_txt'] = 'Müşteri'; -$wb['error_domain_in mailuse'] = 'Bu alan adı e-posta alan adı olarak kullanıldığından silinemez'; -$wb['error_domain_in webuse'] = 'Bu alan adı web alan adı olarak kullanıldığından silinemez'; -$wb['error_client_can_not_add_domain'] = 'Yeni bir alan adı ekleyemezsiniz'; +$wb['error_domain_in dnsuse'] = 'Bu etki alanı birincil DNS bölgesi olarak kullanıldığından silinemez'; +$wb['error_domain_in dnsslaveuse'] = 'Bu etki alanı ikincil DNS bölgesi olarak kullanıldığından silinemez'; +$wb['error_domain_in mailuse'] = 'Bu etki alanı e-posta etki alanı olarak kullanıldığından silinemez'; +$wb['error_domain_in webuse'] = 'Bu etki alanı web etki alanı olarak kullanıldığından silinemez'; +$wb['error_client_can_not_add_domain'] = 'Yeni bir etki alanı ekleyemezsiniz'; +$wb['domain_txt'] = 'Etki Alanı'; $wb['error_client_group_id_empty'] = 'Bir müşteri seçmelisiniz<br>'; -$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'; -$wb['Email-Templates'] = 'Email-Templates'; +$wb['Email-Templates'] = 'E-posta Kalıpları'; ?> diff --git a/interface/web/client/lib/lang/tr_client.lng b/interface/web/client/lib/lang/tr_client.lng index 765d9f1980..f071170966 100644 --- a/interface/web/client/lib/lang/tr_client.lng +++ b/interface/web/client/lib/lang/tr_client.lng @@ -1,24 +1,26 @@ <?php -$wb['limit_maildomain_txt'] = 'En Fazla E-posta Alan Adı Sayısı'; -$wb['limit_mailmailinglist_txt'] = 'En Fazla Posta Listesi Sayısı'; -$wb['limit_mailbox_txt'] = 'En Fazla Posta Kutusu Sayısı'; +$wb['limit_maildomain_txt'] = 'En Fazla E-posta Etki Alanı Sayısı'; +$wb['limit_mailmailinglist_txt'] = 'En Fazla E-posta Listesi Sayısı'; +$wb['limit_mailbox_txt'] = 'En Fazla E-posta Kutusu Sayısı'; $wb['limit_mailalias_txt'] = 'En Fazla Takma E-posta Sayısı'; -$wb['limit_mailaliasdomain_txt'] = 'En Fazla Takma Alan Adı Sayısı'; +$wb['limit_mailaliasdomain_txt'] = 'En Fazla Takma Etki Alanı Sayısı'; $wb['limit_mailforward_txt'] = 'En Fazla E-posta Yönlendirme Sayısı'; $wb['limit_mailcatchall_txt'] = 'En Fazla Tümünü Al Hesabı Sayısı'; $wb['limit_mailrouting_txt'] = 'En Fazla E-posta Yöneltici Sayısı'; $wb['limit_mailfilter_txt'] = 'En Fazla E-posta Süzgeci Sayısı'; -$wb['limit_fetchmail_txt'] = 'En Fazla Posta Alma Hesabı Sayısı'; -$wb['limit_mailquota_txt'] = 'Posta Kutusu Kotası'; -$wb['limit_spamfilter_wblist_txt'] = 'En Fazla Önemsiz Posta Beyaz/Kara Liste Süzgeci Sayısı'; -$wb['limit_spamfilter_user_txt'] = 'En Fazla Önemsiz Posta Süzgeci Kullanıcısı Sayısı'; -$wb['limit_spamfilter_policy_txt'] = 'En Fazla Önemsiz Posta Süzgeci Kuralı Sayısı'; -$wb['default_mailserver_txt'] = 'Varsayılan Posta Sunucusu'; -$wb['company_name_txt'] = 'Kurum Adı'; +$wb['limit_fetchmail_txt'] = 'En Fazla E-posta Alma Hesabı Sayısı'; +$wb['limit_mailquota_txt'] = 'E-posta Kutusu Kotası'; +$wb['limit_spamfilter_wblist_txt'] = 'En Fazla Önemsiz Ä°leti Beyaz/Kara Liste Süzgeci Sayısı'; +$wb['limit_spamfilter_user_txt'] = 'En Fazla Önemsiz Ä°leti Süzgeci Kullanıcısı Sayısı'; +$wb['limit_spamfilter_policy_txt'] = 'En Fazla Önemsiz Ä°leti Süzgeci Kuralı Sayısı'; +$wb['default_mailserver_txt'] = 'Varsayılan E-posta Sunucusu'; +$wb['company_name_txt'] = 'KuruluÅŸ Adı'; +$wb['contact_firstname_txt'] = 'Ä°lgili Adı'; $wb['contact_name_txt'] = 'Ä°lgili Adı'; $wb['username_txt'] = 'Kullanıcı Adı'; $wb['password_txt'] = 'Parola'; -$wb['password_strength_txt'] = 'Parola Güçlüğü'; +$wb['password_click_to_set_txt'] = 'Ayarlamak için tıklayın'; +$wb['password_strength_txt'] = 'Parola ZorluÄŸu'; $wb['language_txt'] = 'Dil'; $wb['usertheme_txt'] = 'Tema'; $wb['street_txt'] = 'Adres'; @@ -33,8 +35,8 @@ $wb['email_txt'] = 'E-posta'; $wb['internet_txt'] = 'Ä°nternet'; $wb['icq_txt'] = 'ICQ'; $wb['notes_txt'] = 'Notlar'; -$wb['company_txt'] = 'Kurum'; -$wb['title_txt'] = 'Ãœnvan'; +$wb['company_txt'] = 'KuruluÅŸ'; +$wb['title_txt'] = 'Unvan'; $wb['firstname_txt'] = 'Ad'; $wb['surname_txt'] = 'Soyad'; $wb['limit_domain_txt'] = 'limit_domain'; @@ -42,16 +44,16 @@ $wb['limit_subdomain_txt'] = 'limit_subdomain'; $wb['limit_webquota_txt'] = 'limit_webquota'; $wb['limit_database_txt'] = 'En Fazla Veritabanı Sayısı'; $wb['limit_cron_txt'] = 'En Fazla Zamanlanmış Görev Sayısı'; -$wb['limit_cron_type_txt'] = 'En Fazla Zamanlanmış Görev Tipi Sayısı (chroot ve tam Ä°nternet adresi uygulama)'; +$wb['limit_cron_type_txt'] = 'En Fazla Zamanlanmış Görev Türü Sayısı (chroot ve tam Ä°nternet adresi uygulama)'; $wb['limit_cron_frequency_txt'] = 'Ä°ki Çalıştırma Arasındaki Süre'; $wb['ip_address_txt'] = 'ip_address'; $wb['limit_client_error_notint'] = 'Alt müşteri sınırı bir sayı olmalıdır.'; $wb['firstname_error_empty'] = 'Ad boÅŸ olamaz.'; $wb['contact_error_empty'] = 'Ä°lgili adı boÅŸ olamaz.'; $wb['default_webserver_txt'] = 'Varsayılan Web Sunucusu'; -$wb['limit_web_domain_txt'] = 'En Fazla Alan Adı Sayısı'; -$wb['limit_web_aliasdomain_txt'] = 'En Fazla Takma Alan Adı Sayısı'; -$wb['limit_web_subdomain_txt'] = 'En Fazla Alt Alan Adı Sayısı'; +$wb['limit_web_domain_txt'] = 'En Fazla Etki Alanı Sayısı'; +$wb['limit_web_aliasdomain_txt'] = 'En Fazla Takma Etki Alanı Sayısı'; +$wb['limit_web_subdomain_txt'] = 'En Fazla Alt Etki Alanı Sayısı'; $wb['limit_ftp_user_txt'] = 'En Fazla FTP Kullanıcısı Sayısı'; $wb['default_dnsserver_txt'] = 'Varsayılan DNS Sunucusu'; $wb['limit_dns_zone_txt'] = 'En Fazla DNS Bölgesi Sayısı'; @@ -59,32 +61,35 @@ $wb['limit_dns_slave_zone_txt'] = 'En Fazla Ä°kincil DNS Bölgesi Sayısı'; $wb['limit_dns_record_txt'] = 'En Fazla DNS Kaydı Sayısı'; $wb['limit_shell_user_txt'] = 'En Fazla Kabuk Kullanıcısı Sayısı'; $wb['limit_webdav_user_txt'] = 'En Fazla Webdav Kullanıcısı Sayısı'; +$wb['limit_backup_txt'] = 'Yedekleme ÖzelliÄŸi Kullanılsın'; $wb['limit_client_txt'] = 'En Fazla Müşteri Sayısı'; $wb['username_error_empty'] = 'Kullanıcı adı boÅŸ olamaz.'; $wb['username_error_unique'] = 'Bu kullanıcı adı zaten var.'; -$wb['limit_maildomain_error_notint'] = 'E-posta alan adı sınırı bir sayı olmalıdır.'; -$wb['limit_mailmailinglist_error_notint'] = 'Posta listesi kaydı sınırı bir sayı olmalıdır.'; -$wb['limit_mailbox_error_notint'] = 'Posta kutusu sınırı bir sayı olmalıdır.'; +$wb['limit_maildomain_error_notint'] = 'E-posta etki alanı sınırı bir sayı olmalıdır.'; +$wb['limit_mailmailinglist_error_notint'] = 'E-posta listesi kaydı sınırı bir sayı olmalıdır.'; +$wb['limit_mailbox_error_notint'] = 'E-posta kutusu sınırı bir sayı olmalıdır.'; $wb['limit_mailalias_error_notint'] = 'Takma e-posta sınırı bir sayı olmalıdır.'; -$wb['limit_mailaliasdomain_error_notint'] = 'E-posta takma alan adı sınırı bir sayı olmalıdır.'; +$wb['limit_mailaliasdomain_error_notint'] = 'E-posta takma etki alanı sınırı bir sayı olmalıdır.'; $wb['limit_mailforward_error_notint'] = 'E-posta yönlendirme sınırı bir sayı olmalıdır.'; $wb['limit_mailcatchall_error_notint'] = 'E-posta tümünü al hesabı sınırı bir sayı olmalıdır.'; $wb['limit_mailrouting_error_notint'] = 'E-posta yöneltici sınırı bir sayı olmalıdır.'; $wb['limit_mailfilter_error_notint'] = 'E-posta süzgeci sınırı bir sayı olmalıdır.'; $wb['limit_mailfetchmail_error_notint'] = 'E-posta alma sınırı bir sayı olmalıdır.'; $wb['limit_mailquota_error_notint'] = 'E-posta kota sınırı bir sayı olmalıdır.'; -$wb['limit_spamfilter_wblist_error_notint'] = 'Önemsiz posta süzgeci beyaz/kara liste sınırı bir sayı olmalıdır.'; -$wb['limit_spamfilter_user_error_notint'] = 'Önemsiz posta süzgeci kullanıcısı sınırı bir sayı olmalıdır.'; -$wb['limit_spamfilter_policy_error_notint'] = 'Önemsiz posta süzgeci kuralı sınırı bir sayı olmalıdır.'; +$wb['limit_spamfilter_wblist_error_notint'] = 'Önemsiz ileti süzgeci beyaz/kara liste sınırı bir sayı olmalıdır.'; +$wb['limit_spamfilter_user_error_notint'] = 'Önemsiz ileti süzgeci kullanıcısı sınırı bir sayı olmalıdır.'; +$wb['limit_spamfilter_policy_error_notint'] = 'Önemsiz ileti süzgeci kuralı sınırı bir sayı olmalıdır.'; $wb['limit_web_domain_error_notint'] = 'Web sitesi sınırı bir sayı olmalıdır.'; -$wb['limit_web_aliasdomain_error_notint'] = 'Web sitesi takma alan adı sınırı bir sayı olmalıdır.'; -$wb['limit_web_subdomain_error_notint'] = 'Web sitesi alt alan adı sınırı bir sayı olmalıdır.'; +$wb['limit_web_aliasdomain_error_notint'] = 'Web sitesi takma etki alanı sınırı bir sayı olmalıdır.'; +$wb['limit_web_subdomain_error_notint'] = 'Web sitesi alt etki alanı sınırı bir sayı olmalıdır.'; $wb['limit_ftp_user_error_notint'] = 'FTP kullanıcısı sınırı bir sayı olmalıdır.'; $wb['limit_shell_user_error_notint'] = 'Kabuk kullanıcısı sınırı bir sayı olmalıdır.'; $wb['limit_webdav_user_error_notint'] = 'Webdav kullanıcısı sınırı bir sayı olmalıdır.'; -$wb['limit_dns_zone_error_notint'] = 'DNS kaydı sınırı bir sayı olmalıdır.'; +$wb['limit_dns_zone_error_notint'] = 'Birincil DNS kaydı sınırı bir sayı olmalıdır.'; $wb['limit_dns_slave_zone_error_notint'] = 'Ä°kincil DNS bölgesi sınırı bir sayı olmalıdır.'; +$wb['limit_dns_record_error_notint'] = 'DNS kaydı sınırı bir sayı olmalıdır.'; $wb['default_dbserver_txt'] = 'Varsayılan Veritabanı Sunucusu'; +$wb['limit_database_txt'] = 'Veritabanı Sayısı'; $wb['limit_database_error_notint'] = 'Veritabanı sınırı bir sayı olmalıdır.'; $wb['limit_cron_error_notint'] = 'Zamanlanmış Görev sınırı bir sayı olmalıdır.'; $wb['limit_cron_error_frequency'] = 'Zamanlanmış Görev sıklığı sınırı bir sayı olmalıdır.'; @@ -96,15 +101,16 @@ $wb['add_additional_template_txt'] = 'Ek Kalıbı Ekle'; $wb['delete_additional_template_txt'] = 'Ek Kalıbı Sil'; $wb['ssh_chroot_txt'] = 'SSH-Chroot Ayarları'; $wb['web_php_options_txt'] = 'PHP Ayarları'; -$wb['limit_cgi_txt'] = 'CGI Kullanılabilir'; -$wb['limit_ssi_txt'] = 'SSI Kullanılabilir'; -$wb['limit_perl_txt'] = 'Perl Kullanılabilir'; -$wb['limit_ruby_txt'] = 'Ruby Kullanılabilir'; -$wb['limit_python_txt'] = 'Python Kullanılabilir'; -$wb['force_suexec_txt'] = 'SuEXEC Dayatılmış'; -$wb['limit_hterror_txt'] = 'Özel Hata Sayfaları Kullanılabilir'; -$wb['limit_wildcard_txt'] = 'Genel Alt Alan Adı Kullanılabilir'; -$wb['limit_ssl_txt'] = 'SSL Kullanılabilir'; +$wb['limit_cgi_txt'] = 'CGI Kullanılsın'; +$wb['limit_ssi_txt'] = 'SSI Kullanılsın'; +$wb['limit_perl_txt'] = 'Perl Kullanılsın'; +$wb['limit_ruby_txt'] = 'Ruby Kullanılsın'; +$wb['limit_python_txt'] = 'Python Kullanılsın'; +$wb['force_suexec_txt'] = 'SuEXEC Dayatılsın'; +$wb['limit_hterror_txt'] = 'Özel Hata Sayfaları Kullanılsın'; +$wb['limit_wildcard_txt'] = 'Genel Alt Etki Alanı Kullanılsın'; +$wb['limit_ssl_txt'] = 'SSL Kullanılsın'; +$wb['limit_ssl_letsencrypt_txt'] = 'Let\'s Encrypt Kullanılsın'; $wb['limit_client_error'] = 'Hesabınıza ekleyebileceÄŸiniz en fazla müşteri sınırına ulaÅŸtınız.'; $wb['limit_web_quota_txt'] = 'Web Kotası'; $wb['limit_traffic_quota_txt'] = 'Trafik Kotası'; @@ -127,11 +133,12 @@ $wb['bank_account_iban_txt'] = 'IBAN'; $wb['bank_account_swift_txt'] = 'BIC / Swift'; $wb['web_limits_txt'] = 'Web Sınırları'; $wb['email_limits_txt'] = 'E-posta Sınırları'; +$wb['xmpp_limits_txt'] = 'XMPP Sınırları'; $wb['database_limits_txt'] = 'Veritabanı Sınırları'; $wb['cron_job_limits_txt'] = 'Zamanlanmış Görev Sınırları'; $wb['dns_limits_txt'] = 'DNS Sınırları'; $wb['virtualization_limits_txt'] = 'SanallaÅŸtırma Sınırları'; -$wb['generate_password_txt'] = 'Parola OluÅŸtur'; +$wb['generate_password_txt'] = 'Parola Ãœret'; $wb['repeat_password_txt'] = 'Parola Onayı'; $wb['password_mismatch_txt'] = 'Parola ile onayı aynı deÄŸil.'; $wb['password_match_txt'] = 'Parola ile onayı aynı.'; @@ -139,66 +146,61 @@ $wb['email_error_isemail'] = 'Lütfen geçerli bir e-posta adresi yazın.'; $wb['customer_no_error_unique'] = 'Müşteri numarası eÅŸsiz (ya da boÅŸ) olmalıdır.'; $wb['paypal_email_error_isemail'] = 'Lütfen geçerli bir PayPal e-posta adresi yazın.'; $wb['paypal_email_txt'] = 'PayPal E-posta Adresi'; -$wb['err_msg_master_tpl_set'] = '\\"Özel\\" kalıptan baÅŸka bir ana kalıp seçilirse, tüm özel sınırlama ayarları yoksayılır.'; +$wb['err_msg_master_tpl_set'] = '"Özel" kalıptan baÅŸka bir ana kalıp seçilirse, tüm özel sınırlama ayarları yok sayılır.'; $wb['aps_limits_txt'] = 'APS Yükleyici Sınırları'; $wb['limit_aps_txt'] = 'En Fazla APS Kopyası Sayısı'; $wb['limit_aps_error_notint'] = 'APS kopya sayısı sınırı bir sayı olmalıdır.'; $wb['default_slave_dnsserver_txt'] = 'Varsayılan Ä°kincil DNS Sunucusu'; $wb['locked_txt'] = 'Kilitli<br/>(tüm web vb. devre dışı)'; $wb['canceled_txt'] = 'Ä°ptal<br/>(müşteri oturumu devre dışı)'; -$wb['gender_txt'] = 'Ãœnvan'; +$wb['gender_txt'] = 'Unvan'; $wb['gender_m_txt'] = 'Bay'; $wb['gender_f_txt'] = 'Bayan'; +$wb['web_servers_txt'] = 'Web Sunucuları'; +$wb['web_servers_placeholder'] = 'Web Sunucularını Seçin'; +$wb['no_web_server_error'] = 'En az bir web sunucusu seçilmelidir.'; +$wb['web_servers_used'] = 'Bu müşteriden kaldırmaya çalıştığınız sunucu bir web sunucusu olarak kullanılıyor. Kaldırmadan önce bu sunucunun bu müşteri tarafından kullanılmadığından emin olun.'; +$wb['dns_servers_txt'] = 'DNS Sunucular'; +$wb['dns_servers_placeholder'] = 'DNS Sunucuları Seçin'; +$wb['no_dns_server_error'] = 'En az bir DNS sunucusu seçilmelidir.'; +$wb['dns_servers_used'] = 'Bu müşteriden kaldırmaya çalıştığınız sunucu bir DNS sunucusu olarak kullanılıyor. Kaldırmadan önce bu sunucunun bu müşteri tarafından kullanılmadığından emin olun'; +$wb['db_servers_txt'] = 'Veritabanı Sunucuları'; +$wb['db_servers_placeholder'] = 'Veritabanı Sunucularını Seçin'; +$wb['no_db_server_error'] = 'En az bir veritabanı sunucusu seçilmelidir.'; +$wb['db_servers_used'] = 'Bu müşteriden kaldırmaya çalıştığınız sunucu bir veritabanı sunucusu olarak kullanılıyor. Kaldırmadan önce bu sunucunun bu müşteri tarafından kullanılmadığından emin olun.'; +$wb['mail_servers_txt'] = 'E-posta Sunucuları'; +$wb['mail_servers_placeholder'] = 'E-posta Sunucularını Seçin'; +$wb['no_mail_server_error'] = 'En az bir e-posta sunucusu seçilmelidir.'; +$wb['mail_servers_used'] = 'Bu müşteriden kaldırmaya çalıştığınız sunucu bir e-posta sunucusu olarak kullanılıyor. Kaldırmadan önce bu sunucunun bu müşteri tarafından kullanılmadığından emin olun.'; + +$wb['xmpp_servers_txt'] = 'XMPP Sunucular'; +$wb['xmpp_servers_placeholder'] = 'XMPP Sunucuları Seçin'; +$wb['no_xmpp_server_error'] = 'En az bir XMPP sunucusu seçilmelidir.'; +$wb['xmpp_servers_used'] = 'Bu müşteriden kaldırmaya çalıştığınız sunucu bir XMPP sunucusu olarak kullanılıyor. Kaldırmadan önce bu sunucunun bu müşteri tarafından kullanılmadığından emin olun.'; +$wb['limit_xmpp_domain_error_notint'] = 'XMPP etki alanı sınırı bir sayı olmalıdır.'; +$wb['limit_xmpp_user_error_notint'] = 'XMPP kullanıcı sınırı bir sayı olmalıdır.'; +$wb['limit_xmpp_domain_txt'] = 'En Fazla XMPP Etki Alanı Sayısı'; +$wb['limit_xmpp_user_txt'] = 'En Fazla XMPP Hesabı Sayısı'; +$wb['limit_xmpp_muc_txt'] = 'Çok Kullanıcılı Sohbet (ÇKS) Kullanılsın'; +$wb['limit_xmpp_pastebin_txt'] = 'ÇKS için Pastebin Kullanılsın'; +$wb['limit_xmpp_httparchive_txt'] = 'ÇKS için HTTP ArÅŸivi Kullanılsın'; +$wb['limit_xmpp_anon_txt'] = 'Adsız Sunucu Kullanılsın'; +$wb['limit_xmpp_vjud_txt'] = 'VJUD Kullanıcı Klasörü Kullanılsın'; +$wb['limit_xmpp_proxy_txt'] = 'Bytestream Vekil Sunucusu Kullanılsın'; +$wb['limit_xmpp_status_txt'] = 'Durum Sunucusu Kullanılsın'; $wb['added_by_txt'] = 'Ekleyen'; $wb['added_date_txt'] = 'EklendiÄŸi Tarih'; $wb['parent_client_id_txt'] = 'Bayi Müşterisi'; -$wb['none_txt'] = 'yok'; -$wb['contact_firstname_txt'] = 'Contact firstname'; -$wb['password_click_to_set_txt'] = 'Click to set'; -$wb['limit_backup_txt'] = 'Backupfunction available'; -$wb['limit_ssl_letsencrypt_txt'] = 'Let\'s Encrypt available'; -$wb['xmpp_limits_txt'] = 'XMPP Limits'; -$wb['web_servers_txt'] = 'Webservers'; -$wb['web_servers_placeholder'] = 'Select webservers'; -$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'; -$wb['dns_servers_placeholder'] = 'Select DNS servers'; -$wb['no_dns_server_error'] = 'At least one DNS server must be selected.'; -$wb['dns_servers_used'] = 'The server you are trying to remove from this client is used as a DNS server. Be sure that this server is not used by this client before you remove it.'; -$wb['db_servers_txt'] = 'Database servers'; -$wb['db_servers_placeholder'] = 'Select database servers'; -$wb['no_db_server_error'] = 'At least one Database server must be selected.'; -$wb['db_servers_used'] = 'The server you are trying to remove from this client is used as a Database server. Be sure that this server is not used by this client before you remove it.'; -$wb['mail_servers_txt'] = 'Mailservers'; -$wb['mail_servers_placeholder'] = 'Select mailservers'; -$wb['no_mail_server_error'] = 'At least one mailserver must be selected.'; -$wb['mail_servers_used'] = 'The server you are trying to remove from this client is used as a Mailserver. Be sure that this server is not used by this client before you remove it.'; -$wb['xmpp_servers_txt'] = 'XMPP Servers'; -$wb['xmpp_servers_placeholder'] = 'Select XMPP Servers'; -$wb['no_xmpp_server_error'] = 'At least one XMPP Server must be selected.'; -$wb['xmpp_servers_used'] = 'The server you are trying to remove from this client is used as a XMPP Server. Be sure that this server is not used by this client before you remove it.'; -$wb['limit_xmpp_domain_error_notint'] = 'The XMPP domain limit must be a number.'; -$wb['limit_xmpp_user_error_notint'] = 'The XMPP user limit must be a number.'; -$wb['limit_xmpp_domain_txt'] = 'Max. number of XMPP domains'; -$wb['limit_xmpp_user_txt'] = 'Max. number of XMPP accounts'; -$wb['limit_xmpp_muc_txt'] = 'Multiuser chat available'; -$wb['limit_xmpp_pastebin_txt'] = 'Pastebin for MUC available'; -$wb['limit_xmpp_httparchive_txt'] = 'HTTP archive for MUC available'; -$wb['limit_xmpp_anon_txt'] = 'Anonymous host available'; -$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_error_notint'] = 'The database quota limit must be a number.'; -$wb['limit_database_user_txt'] = 'Max. Database users'; -$wb['limit_database_user_error_notint'] = 'The database user limit must be a number.'; -$wb['reseller_txt'] = 'Reseller'; -$wb['btn_save_txt'] = 'Save'; -$wb['btn_cancel_txt'] = 'Cancel'; -$wb['invalid_vat_id'] = 'The VAT ID is invalid.'; -$wb['email_error_empty'] = 'Email is empty'; -$wb['limit_directive_snippets_txt'] = 'Show web server config selection'; -$wb['limit_dns_record_error_notint'] = 'The dns record limit must be a number.'; -$wb['Limits'] = 'Limits'; +$wb['none_txt'] = 'Yok'; +$wb['limit_database_quota_txt'] = 'Veritabanı Kotası'; +$wb['limit_database_quota_error_notint'] = 'Veritabanı kotası sınırı bir sayı olmalıdır.'; +$wb['limit_database_user_txt'] = 'En Fazla Veritabanı Kullanıcısı Sayısı'; +$wb['limit_database_user_error_notint'] = 'Veritabanı kullanıcı sınırı bir sayı olmalıdır.'; +$wb['reseller_txt'] = 'Bayi'; +$wb['btn_save_txt'] = 'Kaydet'; +$wb['btn_cancel_txt'] = 'Ä°ptal'; +$wb['invalid_vat_id'] = 'Vergi numarası geçersiz.'; +$wb['email_error_empty'] = 'E-posta boÅŸ olamaz.'; +$wb['limit_directive_snippets_txt'] = 'Web Sunucu Yapılandırma Seçimi Görüntülensin'; +$wb['Limits'] = 'Sınırlar'; ?> diff --git a/interface/web/client/lib/lang/tr_client_message_template.lng b/interface/web/client/lib/lang/tr_client_message_template.lng index 885e2afc86..2b2994c557 100644 --- a/interface/web/client/lib/lang/tr_client_message_template.lng +++ b/interface/web/client/lib/lang/tr_client_message_template.lng @@ -1,13 +1,13 @@ <?php -$wb['template_type_txt'] = 'E-posta tipi'; -$wb['template_name_txt'] = 'Kalıp adı'; +$wb['template_type_txt'] = 'E-posta Türü'; +$wb['template_name_txt'] = 'Kalıp Adı'; $wb['subject_txt'] = 'Konu'; $wb['message_txt'] = 'Ä°leti'; -$wb['Email template'] = 'E-posta kalıbı'; +$wb['Email template'] = 'E-posta Kalıbı'; $wb['Settings'] = 'Ayarlar'; $wb['variables_txt'] = 'DeÄŸiÅŸkenler'; $wb['variables_description_txt'] = '(Kullanıcı adı ve parola deÄŸiÅŸkenleri yalnız hoÅŸgeldiniz e-postalarında kullanılabilir.)'; -$wb['duplicate_welcome_error'] = 'Yalnız bir varsayılan hoÅŸgeldiniz e-postası kalıbı bulunabilir. Lütfen yeni bir tema eklemek yerine varolan temayı düzenlemeyi deneyin.'; -$wb['subject_error_empty'] = 'Subject is empty'; -$wb['message_error_empty'] = 'Message is empty'; +$wb['duplicate_welcome_error'] = 'Yalnız bir varsayılan hoÅŸgeldiniz e-postası kalıbı bulunabilir. Lütfen yeni bir tema eklemek yerine var olan temayı düzenlemeyi deneyin.'; +$wb['subject_error_empty'] = 'Konu boÅŸ olamaz'; +$wb['message_error_empty'] = 'Ä°leti boÅŸ olamaz'; ?> diff --git a/interface/web/client/lib/lang/tr_client_message_template_list.lng b/interface/web/client/lib/lang/tr_client_message_template_list.lng index d0f50c7fea..fb7fd944fe 100644 --- a/interface/web/client/lib/lang/tr_client_message_template_list.lng +++ b/interface/web/client/lib/lang/tr_client_message_template_list.lng @@ -1,5 +1,5 @@ <?php $wb['list_head_txt'] = 'E-posta Kalıpları'; -$wb['template_type_txt'] = 'Ä°leti grubu'; -$wb['template_name_txt'] = 'Kalıp adı'; +$wb['template_type_txt'] = 'Ä°leti Grubu'; +$wb['template_name_txt'] = 'Kalıp Adı'; ?> diff --git a/interface/web/client/lib/lang/tr_client_template.lng b/interface/web/client/lib/lang/tr_client_template.lng index da9f19f794..3091176448 100644 --- a/interface/web/client/lib/lang/tr_client_template.lng +++ b/interface/web/client/lib/lang/tr_client_template.lng @@ -1,61 +1,68 @@ <?php -$wb['template_type_txt'] = 'Kalıp Tipi'; +$wb['template_type_txt'] = 'Kalıp Türü'; $wb['template_name_txt'] = 'Kalıp Adı'; -$wb['limit_client_error_notint'] = 'Müşteri sınırı bir sayı olmalı.'; -$wb['limit_maildomain_txt'] = 'En Fazla E-posta Alan Adı Sayısı'; -$wb['limit_mailbox_txt'] = 'En Fazla Posta Kutusu Sayısı'; +$wb['limit_client_error_notint'] = 'Müşteri sınırı bir sayı olmalıdır.'; +$wb['default_mailserver_txt'] = 'Varsayılan E-posta Sunucusu'; +$wb['limit_maildomain_txt'] = 'En Fazla E-posta Etki Alanı Sayısı'; +$wb['limit_mailbox_txt'] = 'En Fazla E-posta Kutusu Sayısı'; $wb['limit_mailalias_txt'] = 'En Fazla Takma E-posta Sayısı'; -$wb['limit_mailaliasdomain_txt'] = 'En Fazla Takma Alan Adı Sayısı'; -$wb['limit_mailmailinglist_txt'] = 'En Fazla Posta Listesi Sayısı'; +$wb['limit_mailaliasdomain_txt'] = 'En Fazla Takma Etki Alanı Sayısı'; +$wb['limit_mailmailinglist_txt'] = 'En Fazla E-posta Listesi Sayısı'; $wb['limit_mailforward_txt'] = 'En Fazla E-posta Yönlendirici Sayısı'; $wb['limit_mailcatchall_txt'] = 'En Fazla Tümünü Al Hesabı Sayısı'; $wb['limit_mailrouting_txt'] = 'En Fazla E-posta Yöneltici Sayısı'; $wb['limit_mailfilter_txt'] = 'En Fazla E-posta Süzgeci Sayısı'; -$wb['limit_fetchmail_txt'] = 'En Fazla Posta Alma Hesabı Sayısı'; -$wb['limit_mailquota_txt'] = 'Posta Kutusu Kotası'; -$wb['limit_spamfilter_wblist_txt'] = 'En Fazla Önemsiz Posta Beyaz/Kara Liste Süzgeci Sayısı'; -$wb['limit_spamfilter_user_txt'] = 'En Fazla Önemsiz Posta Süzgeci Kullanıcı Sayısı'; -$wb['limit_spamfilter_policy_txt'] = 'En Fazla Önemsiz Posta Süzgeci Kuralı Sayısı'; +$wb['limit_fetchmail_txt'] = 'En Fazla E-posta Alma Hesabı Sayısı'; +$wb['limit_mailquota_txt'] = 'E-posta Kutusu Kotası'; +$wb['limit_spamfilter_wblist_txt'] = 'En Fazla Önemsiz Ä°leti Beyaz/Kara Liste Süzgeci Sayısı'; +$wb['limit_spamfilter_user_txt'] = 'En Fazla Önemsiz Ä°leti Süzgeci Kullanıcı Sayısı'; +$wb['limit_spamfilter_policy_txt'] = 'En Fazla Önemsiz Ä°leti Süzgeci Kuralı Sayısı'; $wb['limit_domain_txt'] = 'limit_domain'; $wb['limit_subdomain_txt'] = 'limit_subdomain'; $wb['limit_webquota_txt'] = 'limit_webquota'; $wb['limit_database_txt'] = 'En Fazla Veritabanı Sayısı'; $wb['limit_cron_txt'] = 'En Fazla Zamanlanmış Görev Sayısı'; -$wb['limit_cron_type_txt'] = 'En Fazla Zamanlanmış Görev Tipi (chroot ve tam Ä°nternet adresi uygulanan)'; +$wb['limit_cron_type_txt'] = 'En Fazla Zamanlanmış Görev Türü (chroot ve tam Ä°nternet adresi uygulanan)'; $wb['limit_cron_frequency_txt'] = 'Ä°ki çalıştırma arasındaki süre'; -$wb['limit_web_domain_txt'] = 'En Fazla Alan Adı Sayısı'; -$wb['limit_web_aliasdomain_txt'] = 'En Fazla Takma Alan Adı Sayısı'; -$wb['limit_web_subdomain_txt'] = 'En Fazla Alt Alan Adı Sayısı'; +$wb['default_webserver_txt'] = 'Varsayılan Web Sunucusu'; +$wb['limit_web_domain_txt'] = 'En Fazla Etki Alanı Sayısı'; +$wb['limit_web_aliasdomain_txt'] = 'En Fazla Takma Etki Alanı Sayısı'; +$wb['limit_web_subdomain_txt'] = 'En Fazla Alt Etki Alanı Sayısı'; $wb['limit_ftp_user_txt'] = 'En Fazla FTP Kullanıcısı Sayısı'; +$wb['default_dnsserver_txt'] = 'Varsayılan Birincil DNS Sunucusu'; $wb['limit_dns_zone_txt'] = 'En Fazla DNS Bölgesi Sayısı'; -$wb['limit_dns_slave_zone_txt'] = 'En Fazla Ä°kinci DNS Bölgesi Sayısı'; +$wb['default_slave_dnsserver_txt'] = 'Varsayılan Ä°kincil DNS Sunucusu'; +$wb['limit_dns_slave_zone_txt'] = 'En Fazla Ä°kincil DNS Bölgesi Sayısı'; $wb['limit_dns_record_txt'] = 'En Fazla DNS Kaydı Sayısı'; $wb['limit_shell_user_txt'] = 'En Fazla Kabuk Kullanıcısı Sayısı'; $wb['limit_webdav_user_txt'] = 'En Fazla Webdav Kullanıcısı Sayısı'; +$wb['limit_backup_txt'] = 'Yedekleme ÖzelliÄŸi Kullanılsın'; $wb['limit_client_txt'] = 'En Fazla Müşteri Sayısı'; -$wb['limit_maildomain_error_notint'] = 'E-posta alan adı sınırı bir sayı olmalıdır.'; -$wb['limit_mailmailinglist_error_notint'] = 'Posta listesi kaydı sınırı bir sayı olmalıdır.'; -$wb['limit_mailbox_error_notint'] = 'Posta kutusu sınırı bir sayı olmalıdır.'; +$wb['limit_maildomain_error_notint'] = 'E-posta etki alanı sınırı bir sayı olmalıdır.'; +$wb['limit_mailmailinglist_error_notint'] = 'E-posta listesi kaydı sınırı bir sayı olmalıdır.'; +$wb['limit_mailbox_error_notint'] = 'E-posta kutusu sınırı bir sayı olmalıdır.'; $wb['limit_mailalias_error_notint'] = 'Takma e-posta sınırı bir sayı olmalıdır.'; -$wb['limit_mailaliasdomain_error_notint'] = 'Takma e-posta alan adı sınırı bir sayı olmalıdır.'; +$wb['limit_mailaliasdomain_error_notint'] = 'Takma e-posta etki alanı sınırı bir sayı olmalıdır.'; $wb['limit_mailforward_error_notint'] = 'E-posta yönlendirme sınırı bir sayı olmalıdır.'; $wb['limit_mailcatchall_error_notint'] = 'E-posta tümünü al sınırı bir sayı olmalıdır.'; $wb['limit_mailrouting_error_notint'] = 'E-posta yöneltici sınırı bir sayı olmalıdır.'; $wb['limit_mailfilter_error_notint'] = 'E-posta süzgeci sınırı bir sayı olmalıdır.'; -$wb['limit_mailfetchmail_error_notint'] = 'Posta alma sınırı bir sayı olmalıdır.'; +$wb['limit_mailfetchmail_error_notint'] = 'E-posta alma sınırı bir sayı olmalıdır.'; $wb['limit_mailquota_error_notint'] = 'E-posta kotası sınırı bir sayı olmalıdır.'; -$wb['limit_spamfilter_wblist_error_notint'] = 'Önemsiz posta süzgeci beyaz/kara liste sınırı bir sayı olmalıdır.'; -$wb['limit_spamfilter_user_error_notint'] = 'Önemsiz posta süzgeci kullanıcı sınırı bir sayı olmalıdır.'; -$wb['limit_spamfilter_policy_error_notint'] = 'Önemsiz posta süzgeci kural sınırı bir sayı olmalıdır.'; +$wb['limit_spamfilter_wblist_error_notint'] = 'Önemsiz ileti süzgeci beyaz/kara liste sınırı bir sayı olmalıdır.'; +$wb['limit_spamfilter_user_error_notint'] = 'Önemsiz ileti süzgeci kullanıcı sınırı bir sayı olmalıdır.'; +$wb['limit_spamfilter_policy_error_notint'] = 'Önemsiz ileti süzgeci kural sınırı bir sayı olmalıdır.'; $wb['limit_web_domain_error_notint'] = 'Web sitesi sınırı bir sayı olmalıdır.'; -$wb['limit_web_aliasdomain_error_notint'] = 'Web sitesi takma alan adı sınırı bir sayı olmalıdır.'; -$wb['limit_web_subdomain_error_notint'] = 'Web sitesi alt alan sınırı bir sayı olmalıdır.'; +$wb['limit_web_aliasdomain_error_notint'] = 'Web sitesi takma etki alanı sınırı bir sayı olmalıdır.'; +$wb['limit_web_subdomain_error_notint'] = 'Web sitesi alt etki alanı sınırı bir sayı olmalıdır.'; $wb['limit_ftp_user_error_notint'] = 'FTP kullanıcı sınırı bir sayı olmalıdır.'; $wb['limit_shell_user_error_notint'] = 'Kabuk kullanıcı sınırı bir sayı olmalıdır.'; $wb['limit_webdav_user_error_notint'] = 'Webdav kullanıcı sınırı bir sayı olmalıdır.'; -$wb['limit_dns_zone_error_notint'] = 'DNS kaydı sınırı bir sayı olmalıdır.'; +$wb['limit_dns_zone_error_notint'] = 'Birincil DNS kaydı sınırı bir sayı olmalıdır.'; $wb['limit_dns_slave_zone_error_notint'] = 'Ä°kinci DNS bölgesi sınırı bir sayı olmalıdır.'; $wb['limit_dns_record_error_notint'] = 'DNS kaydı sınırı bir sayı olmalıdır.'; +$wb['default_dbserver_txt'] = 'Varsayılan Veritabanı Sunucusu'; +$wb['limit_database_txt'] = 'En Fazla Veritabanı Sayısı'; $wb['limit_database_error_notint'] = 'Veritabanı sınırı bir sayı olmalıdır.'; $wb['limit_cron_error_notint'] = 'Zamanlanmış Görev sınırı bir sayı olmalıdır.'; $wb['limit_cron_error_frequency'] = 'Zamanlanmış Görev sıklığı sınırı bir sayı olmalıdır.'; @@ -69,15 +76,16 @@ $wb['limit_openvz_vm_template_id_txt'] = 'Dayatılacak Sanal Sunucu Kalıbı'; $wb['limit_openvz_vm_error_notint'] = 'Sanal sunucu sınırı bir sayı olmalıdır.'; $wb['ssh_chroot_txt'] = 'SSH-Chroot Ayarları'; $wb['web_php_options_txt'] = 'PHP Ayarları'; -$wb['limit_cgi_txt'] = 'CGI Kullanılabilir'; -$wb['limit_ssi_txt'] = 'SSI Kullanılabilir'; -$wb['limit_perl_txt'] = 'Perl Kullanılabilir'; -$wb['limit_ruby_txt'] = 'Ruby Kullanılabilir'; -$wb['limit_python_txt'] = 'Python Kullanılabilir'; -$wb['force_suexec_txt'] = 'SuEXEC Dayatılmış'; -$wb['limit_hterror_txt'] = 'Özel Hata Sayfaları Kullanılabilir'; -$wb['limit_wildcard_txt'] = 'Genel Alt Alan Adı Kullanılabilir'; -$wb['limit_ssl_txt'] = 'SSL Kullanılabilir'; +$wb['limit_cgi_txt'] = 'CGI Kullanılsın'; +$wb['limit_ssi_txt'] = 'SSI Kullanılsın'; +$wb['limit_perl_txt'] = 'Perl Kullanılsın'; +$wb['limit_ruby_txt'] = 'Ruby Kullanılsın'; +$wb['limit_python_txt'] = 'Python Kullanılsın'; +$wb['force_suexec_txt'] = 'SuEXEC Dayatılsın'; +$wb['limit_hterror_txt'] = 'Özel Hata Sayfaları Kullanılsın'; +$wb['limit_wildcard_txt'] = 'Genel Alt Etki Alanı Kullanılsın'; +$wb['limit_ssl_txt'] = 'SSL Kullanılsın'; +$wb['limit_ssl_letsencrypt_txt'] = 'Let\'s Encrypt Kullanılsın'; $wb['web_limits_txt'] = 'Web Sınırları'; $wb['email_limits_txt'] = 'E-posta Sınırları'; $wb['database_limits_txt'] = 'Veritabanı Sınırları'; @@ -87,38 +95,33 @@ $wb['virtualization_limits_txt'] = 'SanallaÅŸtırma Sınırları'; $wb['aps_limits_txt'] = 'APS Yükleyici Sınırları'; $wb['limit_aps_txt'] = 'En fazla APS kopyası sayısı'; $wb['limit_aps_error_notint'] = 'APS kopyaları sınırı bir sayı olmalıdır.'; -$wb['limit_domainmodule_txt'] = 'Alan Adı Modülü Sınırı'; +$wb['limit_domainmodule_txt'] = 'Etki Alanı Modülü Sınırı'; $wb['client_limits_txt'] = 'Müşteri Sınırları'; -$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['limit_backup_txt'] = 'Backupfunction available'; -$wb['default_dbserver_txt'] = 'Default Database Server'; -$wb['limit_ssl_letsencrypt_txt'] = 'Let\'s Encrypt available'; -$wb['limit_database_quota_txt'] = 'Database quota'; -$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'; -$wb['xmpp_servers_placeholder'] = 'Select XMPP Servers'; -$wb['no_xmpp_server_error'] = 'At least one XMPP Server must be selected.'; -$wb['xmpp_servers_used'] = 'The server you are trying to remove from this client is used as a XMPP Server. Be sure that this server is not used by this client before you remove it.'; -$wb['limit_xmpp_domain_error_notint'] = 'The XMPP domain limit must be a number.'; -$wb['limit_xmpp_user_error_notint'] = 'The XMPP user limit must be a number.'; -$wb['limit_xmpp_domain_txt'] = 'Max. number of XMPP domains'; -$wb['limit_xmpp_user_txt'] = 'Max. number of XMPP accounts'; -$wb['limit_xmpp_muc_txt'] = 'Multiuser chat available'; -$wb['limit_xmpp_pastebin_txt'] = 'Pastebin for MUC available'; -$wb['limit_xmpp_httparchive_txt'] = 'HTTP archive for MUC available'; -$wb['limit_xmpp_anon_txt'] = 'Anonymous host available'; -$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['dns_servers_txt'] = 'DNS servers'; -$wb['limit_directive_snippets_txt'] = 'Show web server config selection'; -$wb['limit_database_user_txt'] = 'Max. Database users'; -$wb['web_servers_txt'] = 'Webservers'; -$wb['db_servers_txt'] = 'Database servers'; -$wb['mail_servers_txt'] = 'Mailservers'; -$wb['Limits'] = 'Limits'; +$wb['limit_database_quota_txt'] = 'Veritabanı Kotası'; +$wb['limit_database_quota_error_notint'] = 'Veritabanı kotası sınırı deÄŸeri bir sayı olmalıdır.'; +$wb['xmpp_limits_txt'] = 'XMPP Sınırları'; +$wb['xmpp_servers_txt'] = 'XMPP Sunucuları'; +$wb['xmpp_servers_placeholder'] = 'XMPP Sunucularını Seçin'; +$wb['no_xmpp_server_error'] = 'En az bir XMPP sunucusu seçilmelidir.'; +$wb['xmpp_servers_used'] = 'Bu müşteriden kaldırmaya çalıştığınız sunucu bir XMPP sunucusu olarak kullanılıyor. Kaldırmadan önce bu sunucunun bu müşteri tarafından kullanılmadığından emin olun.'; +$wb['limit_xmpp_domain_error_notint'] = 'XMPP etki alanı sınırı bir sayı olmalıdır.'; +$wb['limit_xmpp_user_error_notint'] = 'XMPP kullanıcı sınırı bir sayı olmalıdır.'; +$wb['limit_xmpp_domain_txt'] = 'En fazla XMPP etki alanı sayısı'; +$wb['limit_xmpp_user_txt'] = 'En fazla XMPP hesabı sayısı'; +$wb['limit_xmpp_muc_txt'] = 'Çok Kullanıcılı Sohbet (ÇKS) Kullanılsın'; +$wb['limit_xmpp_pastebin_txt'] = 'ÇKS için Pastebin Kullanılsın'; +$wb['limit_xmpp_httparchive_txt'] = 'ÇKS için HTTP ArÅŸivi Kullanılsın'; +$wb['limit_xmpp_anon_txt'] = 'Adsız Sunucu Kullanılsın'; +$wb['limit_xmpp_vjud_txt'] = 'VJUD Kullanıcı Klasörü Kullanılsın'; +$wb['limit_xmpp_proxy_txt'] = 'Bytestream Vekil Sunucusu Kullanılsın'; +$wb['limit_xmpp_status_txt'] = 'Durum Sunucusu Kullanılsın'; +$wb['dns_servers_txt'] = 'DNS Sunucular'; +$wb['limit_directive_snippets_txt'] = 'Web Sunucu Yapılandırma Seçimi Görüntülensin'; +$wb['limit_database_user_txt'] = 'En Fazla Veritabanı Kullanıcısı Sayısı'; +$wb['web_servers_txt'] = 'Web Sunucuları'; +$wb['db_servers_txt'] = 'Veritabanı Sunucuları'; +$wb['xmpp_servers_txt'] = 'XMPP Sunucuları'; +$wb['db_servers_txt'] = 'Veritabanı Sunucuları'; +$wb['mail_servers_txt'] = 'E-posta Sunucuları'; +$wb['Limits'] = 'Sınırlar'; ?> diff --git a/interface/web/client/lib/lang/tr_client_template_list.lng b/interface/web/client/lib/lang/tr_client_template_list.lng index fbe35efc9e..cab3f906a4 100644 --- a/interface/web/client/lib/lang/tr_client_template_list.lng +++ b/interface/web/client/lib/lang/tr_client_template_list.lng @@ -1,7 +1,7 @@ <?php $wb['list_head_txt'] = 'Müşteri ve Bayi Kalıpları'; -$wb['template_type_txt'] = 'Tip'; -$wb['template_name_txt'] = 'Kalıp adı'; -$wb['template_id_txt'] = 'Kalıp kodu'; -$wb['sys_groupid_txt'] = 'Reseller'; +$wb['template_type_txt'] = 'Tür'; +$wb['template_name_txt'] = 'Kalıp Adı'; +$wb['template_id_txt'] = 'Kalıp Kodu'; +$wb['sys_groupid_txt'] = 'Bayi'; ?> diff --git a/interface/web/client/lib/lang/tr_clients_list.lng b/interface/web/client/lib/lang/tr_clients_list.lng index d59411a3d1..8b13f1c81b 100644 --- a/interface/web/client/lib/lang/tr_clients_list.lng +++ b/interface/web/client/lib/lang/tr_clients_list.lng @@ -1,14 +1,14 @@ <?php $wb['list_head_txt'] = 'Müşteriler'; $wb['client_id_txt'] = 'Kod'; -$wb['company_name_txt'] = 'Kurum Adı'; +$wb['company_name_txt'] = 'KuruluÅŸ Adı'; $wb['contact_name_txt'] = 'Ä°lgili Adı'; $wb['username_txt'] = 'Kullanıcı Adı'; $wb['city_txt'] = 'Ä°l'; $wb['country_txt'] = 'Ãœlke'; $wb['add_new_record_txt'] = 'Müşteri Ekle'; $wb['customer_no_txt'] = 'Müşteri No'; -$wb['locked_txt'] = 'Locked'; -$wb['yes_txt'] = 'Yes'; -$wb['no_txt'] = 'No'; +$wb['locked_txt'] = 'Kilitli'; +$wb['yes_txt'] = 'Evet'; +$wb['no_txt'] = 'Hayır'; ?> diff --git a/interface/web/client/lib/lang/tr_domain.lng b/interface/web/client/lib/lang/tr_domain.lng index ba5dab700d..d0b4e228da 100644 --- a/interface/web/client/lib/lang/tr_domain.lng +++ b/interface/web/client/lib/lang/tr_domain.lng @@ -1,6 +1,6 @@ <?php -$wb['domain_error_empty'] = 'Alan adı boÅŸ olamaz'; -$wb['domain_error_unique'] = 'Aynı alan adı zaten var'; -$wb['domain_error_regex'] = 'Bu alan adına izin verilmiyor'; -$wb['Domain'] = 'Alan Adı'; +$wb['domain_error_empty'] = 'Etki alanı boÅŸ olamaz'; +$wb['domain_error_unique'] = 'Aynı etki alanı zaten var'; +$wb['domain_error_regex'] = 'Bu etki alanına izin verilmiyor'; +$wb['Domain'] = 'Etki Alanı'; ?> diff --git a/interface/web/client/lib/lang/tr_domain_list.lng b/interface/web/client/lib/lang/tr_domain_list.lng index d422ef3d5d..8b6f75be84 100644 --- a/interface/web/client/lib/lang/tr_domain_list.lng +++ b/interface/web/client/lib/lang/tr_domain_list.lng @@ -1,6 +1,6 @@ <?php -$wb['list_head_txt'] = 'Alan Adları'; -$wb['add_new_record_txt'] = 'Alan Adı Ekle'; -$wb['domain_txt'] = 'Alan Adı'; +$wb['list_head_txt'] = 'Etki Alanları'; +$wb['add_new_record_txt'] = 'Etki Alanı Ekle'; +$wb['domain_txt'] = 'Etki Alanı'; $wb['user_txt'] = 'Müşteri'; ?> diff --git a/interface/web/client/lib/lang/tr_reseller.lng b/interface/web/client/lib/lang/tr_reseller.lng index 4906a894c0..e042301400 100644 --- a/interface/web/client/lib/lang/tr_reseller.lng +++ b/interface/web/client/lib/lang/tr_reseller.lng @@ -1,28 +1,30 @@ <?php -$wb['limit_maildomain_txt'] = 'En Fazla Alan Adı Sayısı'; -$wb['limit_mailmailinglist_txt'] = 'En Fazla Posta Listesi Sayısı'; -$wb['limit_mailbox_txt'] = 'En Fazla Posta Kutusu Sayısı'; +$wb['limit_maildomain_txt'] = 'En Fazla Etki Alanı Sayısı'; +$wb['limit_mailmailinglist_txt'] = 'En Fazla E-posta Listesi Sayısı'; +$wb['limit_mailbox_txt'] = 'En Fazla E-posta Kutusu Sayısı'; $wb['limit_mailalias_txt'] = 'En Fazla Takma E-posta Sayısı'; -$wb['limit_mailaliasdomain_txt'] = 'En Fazla Takma Alan Adı Sayısı'; +$wb['limit_mailaliasdomain_txt'] = 'En Fazla Takma Etki Alanı Sayısı'; $wb['limit_mailforward_txt'] = 'En Fazla E-posta Yönlendirici Sayısı'; $wb['limit_mailcatchall_txt'] = 'En Fazla E-posta Tümünü Al Hesabı Sayısı'; $wb['limit_mailrouting_txt'] = 'En Fazla E-posta Yöneltici Sayısı'; $wb['limit_mailfilter_txt'] = 'En Fazla E-posta Süzgeci Sayısı'; -$wb['limit_fetchmail_txt'] = 'En Fazla Posta Alma Hesabı Sayısı'; -$wb['limit_mailquota_txt'] = 'Posta Kutusu Kotası'; -$wb['limit_spamfilter_wblist_txt'] = 'En Fazla Önemsiz Posta Beyaz/Kara Liste Süzgeci Sayısı'; -$wb['limit_spamfilter_user_txt'] = 'En Fazla Önemsiz Posta Kullanıcısı Sayısı'; -$wb['limit_spamfilter_policy_txt'] = 'En Fazla Önemsiz Posta Kuralı Sayısı'; -$wb['default_mailserver_txt'] = 'Varsayılan Posta Sunucusu'; -$wb['company_name_txt'] = 'Kurum Adı'; +$wb['limit_fetchmail_txt'] = 'En Fazla E-posta Alma Hesabı Sayısı'; +$wb['limit_mailquota_txt'] = 'E-posta Kutusu Kotası'; +$wb['limit_spamfilter_wblist_txt'] = 'En Fazla Önemsiz Ä°leti Beyaz/Kara Liste Süzgeci Sayısı'; +$wb['limit_spamfilter_user_txt'] = 'En Fazla Önemsiz Ä°leti Kullanıcısı Sayısı'; +$wb['limit_spamfilter_policy_txt'] = 'En Fazla Önemsiz Ä°leti Kuralı Sayısı'; +$wb['default_mailserver_txt'] = 'Varsayılan E-posta Sunucusu'; +$wb['company_name_txt'] = 'KuruluÅŸ Adı'; +$wb['contact_firstname_txt'] = 'Ä°lgili Adı'; $wb['contact_name_txt'] = 'Ä°lgili Adı'; $wb['username_txt'] = 'Kullanıcı Adı'; $wb['password_txt'] = 'Parola'; -$wb['password_strength_txt'] = 'Parola Güçlüğü'; +$wb['password_click_to_set_txt'] = 'Ayarlamak için tıklayın'; +$wb['password_strength_txt'] = 'Parola ZorluÄŸu'; $wb['language_txt'] = 'Dil'; $wb['usertheme_txt'] = 'Tema'; $wb['street_txt'] = 'Adres'; -$wb['zip_txt'] = 'Posta kodu'; +$wb['zip_txt'] = 'Posta Kodu'; $wb['city_txt'] = 'Ä°lçe'; $wb['state_txt'] = 'Ä°l'; $wb['country_txt'] = 'Ãœlke'; @@ -33,25 +35,26 @@ $wb['email_txt'] = 'E-posta'; $wb['internet_txt'] = 'Ä°nternet'; $wb['icq_txt'] = 'ICQ'; $wb['notes_txt'] = 'Notlar'; -$wb['company_txt'] = 'Kurum'; -$wb['title_txt'] = 'Ãœnvan'; +$wb['company_txt'] = 'KuruluÅŸ'; +$wb['title_txt'] = 'Unvan'; $wb['firstname_txt'] = 'Adı'; $wb['surname_txt'] = 'Soyadı'; $wb['limit_domain_txt'] = 'limit_domain'; $wb['limit_subdomain_txt'] = 'limit_subdomain'; $wb['limit_webquota_txt'] = 'limit_webquota'; $wb['limit_database_txt'] = 'En Fazla Veritabanı Sayısı'; +$wb['limit_database_user_txt'] = 'En Fazla Veritabanı Kullanıcısı Sayısı'; $wb['limit_cron_txt'] = 'En Fazla Zamanlanmış Görev Sayısı'; -$wb['limit_cron_type_txt'] = 'En Fazla Zamanlanmış Görev Tipi (chroot ve tam Ä°nternet adresi uygulaması)'; +$wb['limit_cron_type_txt'] = 'En Fazla Zamanlanmış Görev Türü (chroot ve tam Ä°nternet adresi uygulaması)'; $wb['limit_cron_frequency_txt'] = 'Ä°ki Çalıştırma Arasındaki Süre'; $wb['ip_address_txt'] = 'ip_adresi'; $wb['limit_client_error_notint'] = 'Alt müşteri sınırı bir sayı olmalıdır.'; $wb['firstname_error_empty'] = 'Adı boÅŸ olamaz.'; $wb['contact_error_empty'] = 'Ä°lgili adı boÅŸ olamaz.'; $wb['default_webserver_txt'] = 'Varsayılan Web Sunucusu'; -$wb['limit_web_domain_txt'] = 'En Fazla Alan Adı Sayısı'; -$wb['limit_web_aliasdomain_txt'] = 'En Fazla Takma Alan Adı Sayısı'; -$wb['limit_web_subdomain_txt'] = 'En Fazla Alt Alan Adı Sayısı'; +$wb['limit_web_domain_txt'] = 'En Fazla Etki Alanı Sayısı'; +$wb['limit_web_aliasdomain_txt'] = 'En Fazla Takma Etki Alanı Sayısı'; +$wb['limit_web_subdomain_txt'] = 'En Fazla Alt Etki Alanı Sayısı'; $wb['limit_ftp_user_txt'] = 'En Fazla FTP Kullanıcı Sayısı'; $wb['default_dnsserver_txt'] = 'Varsayılan DNS Sunucusu'; $wb['limit_dns_zone_txt'] = 'En Fazla DNS Bölgesi Sayısı'; @@ -59,32 +62,35 @@ $wb['limit_dns_slave_zone_txt'] = 'En Fazla Ä°kincil DNS Bölgesi Sayısı'; $wb['limit_dns_record_txt'] = 'En Fazla DNS Kaydı Sayısı'; $wb['limit_shell_user_txt'] = 'En Fazla Kabuk Kullanıcısı Sayısı'; $wb['limit_webdav_user_txt'] = 'En Fazla Webdav Kullanıcısı Sayısı'; +$wb['limit_backup_txt'] = 'Yedekleme ÖzelliÄŸi Kullanılsın'; $wb['limit_client_txt'] = 'En Fazla Müşteri Sayısı'; $wb['username_error_empty'] = 'Kullanıcı adı boÅŸ olamaz.'; $wb['username_error_unique'] = 'Bu kullanıcı adı zaten var.'; -$wb['limit_maildomain_error_notint'] = 'E-posta alan adı sınırı bir sayı olmalıdır.'; -$wb['limit_mailmailinglist_error_notint'] = 'Posta listesi kaydı sınırı bir sayı olmalıdır.'; -$wb['limit_mailbox_error_notint'] = 'Posta kutusu sınırı bir sayı olmalıdır.'; +$wb['limit_maildomain_error_notint'] = 'E-posta etki alanı sınırı bir sayı olmalıdır.'; +$wb['limit_mailmailinglist_error_notint'] = 'E-posta listesi kaydı sınırı bir sayı olmalıdır.'; +$wb['limit_mailbox_error_notint'] = 'E-posta kutusu sınırı bir sayı olmalıdır.'; $wb['limit_mailalias_error_notint'] = 'Takma e-posta sınırı bir sayı olmalıdır.'; $wb['limit_mailforward_error_notint'] = 'E-posta yönlendirici sınırı bir sayı olmalıdır.'; $wb['limit_mailcatchall_error_notint'] = 'E-posta tümünü al hesabı sınırı bir sayı olmalıdır.'; $wb['limit_mailrouting_error_notint'] = 'E-posta yöneltici sınırı bir sayı olmalıdır.'; $wb['limit_mailfilter_error_notint'] = 'E-posta süzgeci sınırı bir sayı olmalıdır.'; -$wb['limit_mailfetchmail_error_notint'] = 'Posta alıcısı sınırı bir sayı olmalıdır.'; +$wb['limit_mailfetchmail_error_notint'] = 'E-posta alıcısı sınırı bir sayı olmalıdır.'; $wb['limit_mailquota_error_notint'] = 'E-posta kota sınırı bir sayı olmalıdır.'; -$wb['limit_spamfilter_wblist_error_notint'] = 'Önemsiz posta beyaz/kara liste süzgeci sınırı bir sayı olmalıdır.'; -$wb['limit_spamfilter_user_error_notint'] = 'Önemsiz posta süzgeci kullanıcısı sınırı bir sayı olmalıdır.'; -$wb['limit_spamfilter_policy_error_notint'] = 'Önemsiz posta süzgeci kuralı sınırı bir sayı olmalıdır.'; +$wb['limit_spamfilter_wblist_error_notint'] = 'Önemsiz ileti beyaz/kara liste süzgeci sınırı bir sayı olmalıdır.'; +$wb['limit_spamfilter_user_error_notint'] = 'Önemsiz ileti süzgeci kullanıcısı sınırı bir sayı olmalıdır.'; +$wb['limit_spamfilter_policy_error_notint'] = 'Önemsiz ileti süzgeci kuralı sınırı bir sayı olmalıdır.'; $wb['limit_web_domain_error_notint'] = 'Web sitesi sınırı bir sayı olmalıdır.'; -$wb['limit_web_aliasdomain_error_notint'] = 'Web sitesi takma alan adı sınırı bir sayı olmalıdır.'; -$wb['limit_web_subdomain_error_notint'] = 'Web sitesi alt alan adı sınırı bir sayı olmalıdır.'; +$wb['limit_web_aliasdomain_error_notint'] = 'Web sitesi takma etki alanı sınırı bir sayı olmalıdır.'; +$wb['limit_web_subdomain_error_notint'] = 'Web sitesi alt etki alanı sınırı bir sayı olmalıdır.'; $wb['limit_ftp_user_error_notint'] = 'FTP kullanıcı sınırı bir sayı olmalıdır.'; $wb['limit_webdav_user_error_notint'] = 'Webdav kullanıcısı sınırı bir sayı olmalıdır.'; $wb['limit_shell_user_error_notint'] = 'Kabuk kullanıcısı sınırı bir sayı olmalıdır.'; -$wb['limit_dns_zone_error_notint'] = 'DNS bölgesi sınırı bir sayı olmalıdır.'; +$wb['limit_dns_zone_error_notint'] = 'Birincil DNS bölgesi sınırı bir sayı olmalıdır.'; $wb['limit_dns_slave_zone_error_notint'] = 'Ä°kincil DNS bölgesi sınırı bir sayı olmalıdır.'; $wb['limit_dns_record_error_notint'] = 'DNS kaydı sınırı bir sayı olmalıdır.'; +$wb['limit_client_error_notint'] = 'Müşteri sınırı bir sayı olmalıdır.'; $wb['default_dbserver_txt'] = 'Varsayılan Veritabanı Sunucusu'; +$wb['limit_database_txt'] = 'En Fazla Veritabanı Sayısı'; $wb['limit_database_error_notint'] = 'Veritabanı sınırı bir sayı olmalıdır.'; $wb['limit_cron_error_notint'] = 'Zamanlanmış görev sınırı bir sayı olmalıdır.'; $wb['limit_cron_error_frequency'] = 'Zamanlanmış görev sıklığı sınırı bir sayı olmalıdır.'; @@ -95,16 +101,18 @@ $wb['add_additional_template_txt'] = 'Ek Kalıbı Ekle'; $wb['delete_additional_template_txt'] = 'Ek Kalıbı Sil'; $wb['ssh_chroot_txt'] = 'SSH-Chroot Ayarları'; $wb['web_php_options_txt'] = 'PHP Ayarları'; -$wb['limit_cgi_txt'] = 'CGI Kullanılabilir'; -$wb['limit_ssi_txt'] = 'SSI Kullanılabilir'; -$wb['limit_perl_txt'] = 'Perl Kullanılabilir'; -$wb['limit_ruby_txt'] = 'Ruby Kullanılabilir'; -$wb['limit_python_txt'] = 'Python Kullanılabilir'; -$wb['force_suexec_txt'] = 'SuEXEC Dayatılmış'; -$wb['limit_hterror_txt'] = 'Özel Hata Sayfaları Kullanılabilir'; -$wb['limit_wildcard_txt'] = 'Genel Alt Alan Kullanılabilir'; -$wb['limit_ssl_txt'] = 'SSL Kullanılabilir'; +$wb['limit_cgi_txt'] = 'CGI Kullanılsın'; +$wb['limit_ssi_txt'] = 'SSI Kullanılsın'; +$wb['limit_perl_txt'] = 'Perl Kullanılsın'; +$wb['limit_ruby_txt'] = 'Ruby Kullanılsın'; +$wb['limit_python_txt'] = 'Python Kullanılsın'; +$wb['force_suexec_txt'] = 'SuEXEC Dayatılsın'; +$wb['limit_hterror_txt'] = 'Özel Hata Sayfaları Kullanılsın'; +$wb['limit_wildcard_txt'] = 'Genel Alt Etki Alanı Kullanılsın'; +$wb['limit_ssl_txt'] = 'SSL Kullanılsın'; +$wb['limit_ssl_letsencrypt_txt'] = 'Let\'s Encrypt Kullanılsın'; $wb['limit_client_error'] = 'Hesabınıza ekleyebileceÄŸiniz en fazla müşteri sayısına ulaÅŸtınız.'; +$wb['limit_client_error_positive_or_unlimited'] = 'Müşteri sayısı > 0 ya da -1 (sınırsız) olmalıdır'; $wb['limit_web_quota_txt'] = 'Web Kotası'; $wb['limit_traffic_quota_txt'] = 'Trafik Kotası'; $wb['limit_trafficquota_error_notint'] = 'Trafik kotası bir sayı olmalıdır.'; @@ -123,7 +131,7 @@ $wb['database_limits_txt'] = 'Veritabanı Sınırları'; $wb['cron_job_limits_txt'] = 'Zamanlanmış Görev Sınırları'; $wb['dns_limits_txt'] = 'DNS Sınırları'; $wb['virtualization_limits_txt'] = 'SanallaÅŸtırma Sınırları'; -$wb['generate_password_txt'] = 'Parola OluÅŸtur'; +$wb['generate_password_txt'] = 'Parola Ãœret'; $wb['repeat_password_txt'] = 'Parola Onayı'; $wb['password_mismatch_txt'] = 'Parola ile onayı aynı deÄŸil.'; $wb['password_match_txt'] = 'Parola ile onayı aynı.'; @@ -146,62 +154,58 @@ $wb['locked_txt'] = 'Kilitli'; $wb['canceled_txt'] = 'Ä°ptal edilmiÅŸ'; $wb['gender_m_txt'] = 'Bay'; $wb['gender_f_txt'] = 'Bayan'; -$wb['gender_txt'] = 'Ãœnvan'; +$wb['gender_txt'] = 'Unvan'; +$wb['web_servers_txt'] = 'Web Sunucuları'; +$wb['web_servers_placeholder'] = 'Web Sunucularını Seçin'; +$wb['no_web_server_error'] = 'En az bir web sunucusu seçilmelidir.'; +$wb['web_servers_used'] = 'Bu müşteriden kaldırmaya çalıştığınız sunucu bir web sunucusu olarak kullanılıyor. Kaldırmadan önce bu sunucunun bu müşteri tarafından kullanılmadığından emin olun.'; +$wb['dns_servers_txt'] = 'DNS Sunucular'; +$wb['dns_servers_placeholder'] = 'DNS Sunucuları Seçin'; +$wb['no_dns_server_error'] = 'En az bir DNS sunucusu seçilmelidir.'; +$wb['dns_servers_used'] = 'Bu müşteriden kaldırmaya çalıştığınız sunucu bir DNS sunucusu olarak kullanılıyor. Kaldırmadan önce bu sunucunun bu müşteri tarafından kullanılmadığından emin olun'; +$wb['db_servers_txt'] = 'Veritabanı Sunucuları'; +$wb['db_servers_placeholder'] = 'Veritabanı Sunucularını Seçin'; +$wb['no_db_server_error'] = 'En az bir veritabanı sunucusu seçilmelidir.'; +$wb['db_servers_used'] = 'Bu müşteriden kaldırmaya çalıştığınız sunucu bir veritabanı sunucusu olarak kullanılıyor. Kaldırmadan önce bu sunucunun bu müşteri tarafından kullanılmadığından emin olun.'; +$wb['mail_servers_txt'] = 'E-posta Sunucuları'; +$wb['mail_servers_placeholder'] = 'E-posta Sunucularını Seçin'; +$wb['no_mail_server_error'] = 'En az bir e-posta sunucusu seçilmelidir.'; +$wb['mail_servers_used'] = 'Bu müşteriden kaldırmaya çalıştığınız sunucu bir e-posta sunucusu olarak kullanılıyor. Kaldırmadan önce bu sunucunun bu müşteri tarafından kullanılmadığından emin olun.'; $wb['customer_no_template_txt'] = 'Müşteri No Kalıbı'; $wb['customer_no_template_error_regex_txt'] = 'Müşteri no kalıbında geçersiz karakterler var'; $wb['customer_no_start_txt'] = 'Müşteri No BaÅŸlangıç DeÄŸeri'; $wb['customer_no_counter_txt'] = 'Müşteri No Sayacı'; + +$wb['xmpp_limits_txt'] = 'XMPP Sınırları'; +$wb['xmpp_servers_txt'] = 'XMPP Sunucular'; +$wb['xmpp_servers_placeholder'] = 'XMPP Sunucuları Seçin'; +$wb['no_xmpp_server_error'] = 'En az bir XMPP sunucusu seçilmelidir.'; +$wb['xmpp_servers_used'] = 'Bu müşteriden kaldırmaya çalıştığınız sunucu bir XMPP sunucusu olarak kullanılıyor. Kaldırmadan önce bu sunucunun bu müşteri tarafından kullanılmadığından emin olun.'; +$wb['limit_xmpp_domain_error_notint'] = 'XMPP etki alanı sınırı bir sayı olmalıdır.'; +$wb['limit_xmpp_user_error_notint'] = 'XMPP kullanıcı sınırı bir sayı olmalıdır.'; +$wb['limit_xmpp_domain_txt'] = 'En Fazla XMPP Etki Alanı Sayısı'; +$wb['limit_xmpp_user_txt'] = 'En Fazla XMPP Hesabı Sayısı'; +$wb['limit_xmpp_muc_txt'] = 'Çok Kullanıcılı Sohbet (ÇKS) Kullanılsın'; +$wb['limit_xmpp_pastebin_txt'] = 'ÇKS için Pastebin Kullanılsın'; +$wb['limit_xmpp_httparchive_txt'] = 'ÇKS için HTTP ArÅŸivi Kullanılsın'; +$wb['limit_xmpp_anon_txt'] = 'Adsız Sunucu Kullanılsın'; +$wb['limit_xmpp_vjud_txt'] = 'VJUD Kullanıcı Klasörü Kullanılsın'; +$wb['limit_xmpp_proxy_txt'] = 'Bytestream Vekil Sunucusu Kullanılsın'; +$wb['limit_xmpp_status_txt'] = 'Durum Sunucusu Kullanılsın'; $wb['added_by_txt'] = 'Ekleyen'; $wb['added_date_txt'] = 'EklendiÄŸi Tarih'; -$wb['limit_domainmodule_error_notint'] = 'Alan adı modülü sınırı bir sayı olmalıdır.'; -$wb['limit_domainmodule_txt'] = 'Alan Adı Modülü Sınırı'; +$wb['limit_domainmodule_error_notint'] = 'Etki alanı modülü sınırı bir sayı olmalıdır.'; +$wb['limit_domainmodule_txt'] = 'Etki Alanı Modülü Sınırı'; $wb['client_limits_txt'] = 'Müşteri Sınırları'; -$wb['err_msg_master_tpl_set'] = '\\"Özel\\" kalıptan baÅŸka bir ana kalıp seçilirse, tüm özel sınırlama ayarları yoksayılır.'; -$wb['contact_firstname_txt'] = 'Contact firstname'; -$wb['password_click_to_set_txt'] = 'Click to set'; -$wb['limit_database_user_txt'] = 'Max. Database users'; -$wb['limit_backup_txt'] = 'Backupfunction available'; -$wb['limit_ssl_letsencrypt_txt'] = 'Let\'s Encrypt available'; -$wb['limit_client_error_positive_or_unlimited'] = 'The number of clients must be > 0 or -1 (unlimited)'; -$wb['web_servers_txt'] = 'Webservers'; -$wb['web_servers_placeholder'] = 'Select Webservers'; -$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'; -$wb['dns_servers_placeholder'] = 'Select DNS Servers'; -$wb['no_dns_server_error'] = 'At least one DNS server must be selected.'; -$wb['dns_servers_used'] = 'The server you are trying to remove from this client is used as a DNS server. Be sure that this server is not used by this client before to remove it.'; -$wb['db_servers_txt'] = 'Database Server'; -$wb['db_servers_placeholder'] = 'Select Database Servers'; -$wb['no_db_server_error'] = 'At least one Database server must be selected.'; -$wb['db_servers_used'] = 'The server you are trying to remove from this client is used as a Database server. Be sure that this server is not used by this client before to remove it.'; -$wb['mail_servers_txt'] = 'Mailservers'; -$wb['mail_servers_placeholder'] = 'Select Mailservers'; -$wb['no_mail_server_error'] = 'At least one Mailserver must be selected.'; -$wb['mail_servers_used'] = 'The server you are trying to remove from this client is used as a Mailserver. Be sure that this server is not used by this client before to remove it.'; -$wb['xmpp_limits_txt'] = 'XMPP Limits'; -$wb['xmpp_servers_txt'] = 'XMPP Servers'; -$wb['xmpp_servers_placeholder'] = 'Select XMPP Servers'; -$wb['no_xmpp_server_error'] = 'At least one XMPP Server must be selected.'; -$wb['xmpp_servers_used'] = 'The server you are trying to remove from this client is used as a XMPP Server. Be sure that this server is not used by this client before you remove it.'; -$wb['limit_xmpp_domain_error_notint'] = 'The XMPP domain limit must be a number.'; -$wb['limit_xmpp_user_error_notint'] = 'The XMPP user limit must be a number.'; -$wb['limit_xmpp_domain_txt'] = 'Max. number of XMPP domains'; -$wb['limit_xmpp_user_txt'] = 'Max. number of XMPP accounts'; -$wb['limit_xmpp_muc_txt'] = 'Multiuser chat available'; -$wb['limit_xmpp_pastebin_txt'] = 'Pastebin for MUC available'; -$wb['limit_xmpp_httparchive_txt'] = 'HTTP archive for MUC available'; -$wb['limit_xmpp_anon_txt'] = 'Anonymous host available'; -$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['invalid_vat_id'] = 'The VAT ID is invalid.'; -$wb['btn_save_txt'] = 'Save'; -$wb['btn_cancel_txt'] = 'Cancel'; -$wb['email_error_empty'] = 'Email is empty'; -$wb['limit_directive_snippets_txt'] = 'Show web server config selection'; -$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_error_notint'] = 'The database quota limit must be a number.'; -$wb['Limits'] = 'Limits'; +$wb['err_msg_master_tpl_set'] = '"Özel" kalıptan baÅŸka bir ana kalıp seçilirse, tüm özel sınırlama ayarları yok sayılır.'; +$wb['invalid_vat_id'] = 'Vergi numarası geçersiz.'; +$wb['btn_save_txt'] = 'Kaydet'; +$wb['btn_cancel_txt'] = 'Ä°ptal'; +$wb['email_error_empty'] = 'E-posta boÅŸ olamaz.'; +$wb['limit_directive_snippets_txt'] = 'Web Sunucu Yapılandırma Seçimi Görüntülensin'; +$wb['limit_database_user_txt'] = 'En Fazla Veritabanı Kullanıcısı Sayısı'; +$wb['limit_database_user_error_notint'] = 'Veritabanı kullanıcı sınırı bir sayı olmalıdır.'; +$wb['limit_database_quota_txt'] = 'Veritabanı Kotası'; +$wb['limit_database_quota_error_notint'] = 'Veritabanı kotası sınırı bir sayı olmalıdır.'; +$wb['Limits'] = 'Sınırlar'; ?> diff --git a/interface/web/client/lib/lang/tr_resellers_list.lng b/interface/web/client/lib/lang/tr_resellers_list.lng index 2cb388b96e..62116103c1 100644 --- a/interface/web/client/lib/lang/tr_resellers_list.lng +++ b/interface/web/client/lib/lang/tr_resellers_list.lng @@ -1,7 +1,7 @@ <?php $wb['list_head_txt'] = 'Bayiler'; $wb['client_id_txt'] = 'Kod'; -$wb['company_name_txt'] = 'Kurum Adı'; +$wb['company_name_txt'] = 'KuruluÅŸ Adı'; $wb['contact_name_txt'] = 'Ä°lgili Adı'; $wb['city_txt'] = 'Ä°l'; $wb['country_txt'] = 'Ãœlke'; diff --git a/interface/web/dashboard/lib/lang/br.lng b/interface/web/dashboard/lib/lang/br.lng index 05935493bb..4ad7fc9c3c 100644 --- a/interface/web/dashboard/lib/lang/br.lng +++ b/interface/web/dashboard/lib/lang/br.lng @@ -1,4 +1,4 @@ <?php $wb['welcome_user_txt'] = 'Bem-vindo %s'; -$wb['available_modules_txt'] = 'Módulos DisponÃveis'; +$wb['available_modules_txt'] = 'Módulos disponÃveis'; ?> diff --git a/interface/web/dashboard/lib/lang/br_dashlet_customer.lng b/interface/web/dashboard/lib/lang/br_dashlet_customer.lng index 5e73e41ff9..8c110cc29b 100644 --- a/interface/web/dashboard/lib/lang/br_dashlet_customer.lng +++ b/interface/web/dashboard/lib/lang/br_dashlet_customer.lng @@ -1,4 +1,4 @@ <?php -$wb['customerdata_txt'] = 'Meus Dados'; +$wb['customerdata_txt'] = 'Meus dados'; $wb['edit_txt'] = 'Editar'; ?> diff --git a/interface/web/dashboard/lib/lang/br_dashlet_databasequota.lng b/interface/web/dashboard/lib/lang/br_dashlet_databasequota.lng index de92eef6bf..9279d2230a 100644 --- a/interface/web/dashboard/lib/lang/br_dashlet_databasequota.lng +++ b/interface/web/dashboard/lib/lang/br_dashlet_databasequota.lng @@ -1,6 +1,6 @@ <?php -$wb['databasequota_txt'] = 'Cota para banco de dados'; -$wb['database_txt'] = 'Nome do banco de dados'; +$wb['databasequota_txt'] = 'Cota do banco de dados'; +$wb['database_txt'] = 'Banco de dados'; $wb['used_txt'] = 'Espaço utilizado'; $wb['quota_txt'] = 'Cota'; $wb['no_database_accounts_txt'] = 'Nenhum banco de dados encontrado.'; diff --git a/interface/web/dashboard/lib/lang/br_dashlet_invoice_client_settings.lng b/interface/web/dashboard/lib/lang/br_dashlet_invoice_client_settings.lng index 413177c83d..1ac4ee2fae 100644 --- a/interface/web/dashboard/lib/lang/br_dashlet_invoice_client_settings.lng +++ b/interface/web/dashboard/lib/lang/br_dashlet_invoice_client_settings.lng @@ -1,4 +1,4 @@ <?php -$wb['invoice_client_settings_txt'] = 'Configuração de Faturas do Cliente'; +$wb['invoice_client_settings_txt'] = 'Configurações de fatura de clientes'; $wb['edit_txt'] = 'Editar'; ?> diff --git a/interface/web/dashboard/lib/lang/br_dashlet_invoices.lng b/interface/web/dashboard/lib/lang/br_dashlet_invoices.lng index 2a5a0d9bcc..545c6994a6 100644 --- a/interface/web/dashboard/lib/lang/br_dashlet_invoices.lng +++ b/interface/web/dashboard/lib/lang/br_dashlet_invoices.lng @@ -1,18 +1,18 @@ <?php $wb['invoices_txt'] = 'Faturas'; -$wb['invoice_no_txt'] = 'No. da Fatura'; +$wb['invoice_no_txt'] = 'No. da fatura'; $wb['amount_txt'] = 'Quantidade'; $wb['date_txt'] = 'Data'; $wb['invoice_status_txt'] = 'Estado'; $wb['no_invoices_txt'] = 'Nenhuma fatura disponÃvel.'; $wb['paid_txt'] = 'Pago'; -$wb['unpaid_txt'] = 'Aberto'; +$wb['unpaid_txt'] = 'A pagar'; $wb['paynow_txt'] = 'pagar agora'; $wb['proforma_txt'] = 'Proforma'; $wb['refunded_txt'] = 'Devolvido'; -$wb['not_refunded_txt'] = 'Sem devolução'; +$wb['not_refunded_txt'] = 'Não reembolsado'; $wb['invoice_type_invoice_txt'] = 'Fatura'; $wb['invoice_type_proforma_txt'] = 'Proforma'; -$wb['invoice_type_refund_txt'] = 'Devolver'; +$wb['invoice_type_refund_txt'] = 'Reembolso'; $wb['invoice_type_reminder_txt'] = 'Lembrar'; ?> diff --git a/interface/web/dashboard/lib/lang/br_dashlet_limits.lng b/interface/web/dashboard/lib/lang/br_dashlet_limits.lng index 04c59b8835..72558f5797 100644 --- a/interface/web/dashboard/lib/lang/br_dashlet_limits.lng +++ b/interface/web/dashboard/lib/lang/br_dashlet_limits.lng @@ -1,34 +1,34 @@ <?php -$wb['limits_txt'] = 'Limites das contas'; +$wb['limits_txt'] = 'Limites de contas'; $wb['of_txt'] = 'de'; -$wb['unlimited_txt'] = 'ilimitado'; -$wb['limit_maildomain_txt'] = 'Limite de domÃnios de e-mail'; -$wb['limit_mailbox_txt'] = 'Limite de contas de e-mail'; -$wb['limit_mailalias_txt'] = 'Limite de apelidos de domÃnio de e-mail'; -$wb['limit_mailaliasdomain_txt'] = 'Limite de subdomÃnios para e-mail'; -$wb['limit_mailforward_txt'] = 'Limite de redirecionamentos de e-mail'; -$wb['limit_mailcatchall_txt'] = 'Limite de contas cata tudo'; -$wb['limit_mailrouting_txt'] = 'Limite de transporte de e-mail'; -$wb['limit_mailfilter_txt'] = 'Limite de filtros de e-mail'; -$wb['limit_fetchmail_txt'] = 'Limite de contas de busca'; -$wb['limit_spamfilter_wblist_txt'] = 'Limite de filtros anti-spam lista branca/negra'; -$wb['limit_spamfilter_user_txt'] = 'Limite de usuários para filtros anti-spam'; -$wb['limit_spamfilter_policy_txt'] = 'Limite de polÃticas anti-spam'; -$wb['limit_cron_txt'] = 'Limite de tarefas no cron'; -$wb['limit_web_domain_txt'] = 'Limite de domÃnios de site'; -$wb['limit_web_aliasdomain_txt'] = 'Limite de apelidos de domÃnios de site'; -$wb['limit_web_subdomain_txt'] = 'Limite de subdomÃnios de site'; -$wb['limit_ftp_user_txt'] = 'Limite de contas ftp'; -$wb['limit_dns_zone_txt'] = 'Limite de zonas dns primárias'; -$wb['limit_dns_slave_zone_txt'] = 'Limite de zonas dns secundárias'; -$wb['limit_dns_record_txt'] = 'Limite de registros dns'; -$wb['limit_shell_user_txt'] = 'Limite de usuários shell'; -$wb['limit_webdav_user_txt'] = 'Limite de usuários webdav'; -$wb['limit_client_txt'] = 'Limite de clientes'; -$wb['limit_database_txt'] = 'Limite de banco de dados'; -$wb['limit_mailmailinglist_txt'] = 'Limite de listas de e-mails'; -$wb['limit_domain_txt'] = 'Limite de domÃnios'; -$wb['limit_mailquota_txt'] = 'Assigned mailbox quota'; -$wb['limit_web_quota_txt'] = 'Assigned web quota'; -$wb['limit_database_quota_txt'] = 'Assigned database quota'; +$wb['unlimited_txt'] = 'Ilimitado'; +$wb['limit_maildomain_txt'] = 'Número de domÃnios de e-mail'; +$wb['limit_mailmailinglist_txt'] = 'Número de listas de e-mail'; +$wb['limit_mailbox_txt'] = 'Número de contas de e-mail'; +$wb['limit_mailalias_txt'] = 'Número de alias de e-mail'; +$wb['limit_mailaliasdomain_txt'] = 'Número de alias de domÃnios de e-mail'; +$wb['limit_mailforward_txt'] = 'Número de encaminhamentos de e-mail'; +$wb['limit_mailcatchall_txt'] = 'Número de contas cata-tudo'; +$wb['limit_mailrouting_txt'] = 'Número de rotas de e-mail'; +$wb['limit_mailfilter_txt'] = 'Número de filtros de e-mail'; +$wb['limit_fetchmail_txt'] = 'Número de contas de busca'; +$wb['limit_spamfilter_wblist_txt'] = 'Número de filtros anti-spam "lista branca/negra"'; +$wb['limit_spamfilter_user_txt'] = 'Número de filtros anti-spam'; +$wb['limit_spamfilter_policy_txt'] = 'Número de polÃticas anti-spam'; +$wb['limit_cron_txt'] = 'Número de tarefas no cron'; +$wb['limit_web_domain_txt'] = 'Número de domÃnios de site'; +$wb['limit_web_aliasdomain_txt'] = 'Número de alias de domÃnios de site'; +$wb['limit_web_subdomain_txt'] = 'Número de subdomÃnios de site'; +$wb['limit_ftp_user_txt'] = 'Número de usuários ftp'; +$wb['limit_dns_zone_txt'] = 'Número de zonas dns'; +$wb['limit_dns_slave_zone_txt'] = 'Número de zonas dns secundárias'; +$wb['limit_dns_record_txt'] = 'Número de registros dns'; +$wb['limit_shell_user_txt'] = 'Número de usuários do shell'; +$wb['limit_webdav_user_txt'] = 'Número de usuários webdav'; +$wb['limit_client_txt'] = 'Número de clientes'; +$wb['limit_database_txt'] = 'Número de banco de dados'; +$wb['limit_domain_txt'] = 'Número de domÃnios'; +$wb['limit_mailquota_txt'] = 'Cotas atribuÃdas para contas de e-mail'; +$wb['limit_web_quota_txt'] = 'Cotas atribuÃdas para sites'; +$wb['limit_database_quota_txt'] = 'Cotas atribuÃdas para banco de dados'; ?> diff --git a/interface/web/dashboard/lib/lang/br_dashlet_mailquota.lng b/interface/web/dashboard/lib/lang/br_dashlet_mailquota.lng index 8aa300dffa..d164a35661 100644 --- a/interface/web/dashboard/lib/lang/br_dashlet_mailquota.lng +++ b/interface/web/dashboard/lib/lang/br_dashlet_mailquota.lng @@ -1,6 +1,6 @@ <?php -$wb['mailquota_txt'] = 'Cota para contas de e-mail'; -$wb['email_txt'] = 'e-mail'; +$wb['mailquota_txt'] = 'Cota de contas de e-mail'; +$wb['email_txt'] = 'Endereço de e-mail'; $wb['name_txt'] = 'Nome'; $wb['used_txt'] = 'Espaço utilizado'; $wb['quota_txt'] = 'Cota'; diff --git a/interface/web/dashboard/lib/lang/br_dashlet_modules.lng b/interface/web/dashboard/lib/lang/br_dashlet_modules.lng index 80af885820..905d3d6007 100644 --- a/interface/web/dashboard/lib/lang/br_dashlet_modules.lng +++ b/interface/web/dashboard/lib/lang/br_dashlet_modules.lng @@ -1,4 +1,4 @@ <?php -$wb['available_modules_txt'] = 'Módulos DisponÃveis'; +$wb['available_modules_txt'] = 'Módulos disponÃveis'; $wb['go_to_txt'] = 'Ir para'; ?> diff --git a/interface/web/dashboard/lib/lang/br_dashlet_products.lng b/interface/web/dashboard/lib/lang/br_dashlet_products.lng index 129b144801..c750052ad7 100644 --- a/interface/web/dashboard/lib/lang/br_dashlet_products.lng +++ b/interface/web/dashboard/lib/lang/br_dashlet_products.lng @@ -1,8 +1,8 @@ <?php -$wb['products_txt'] = 'Meus Produtos'; +$wb['products_txt'] = 'Meus produtos'; $wb['name_txt'] = 'Nome'; $wb['price_txt'] = 'Preço'; -$wb['next_payment_date_txt'] = 'Próxima Fatura'; +$wb['next_payment_date_txt'] = 'Próxima fatura'; $wb['no_products_txt'] = 'Nenhum produto encontrado.'; $wb['edit_txt'] = 'Editar'; $wb['cancellation_date_txt'] = 'Cancelado por'; diff --git a/interface/web/dashboard/lib/lang/br_dashlet_quota.lng b/interface/web/dashboard/lib/lang/br_dashlet_quota.lng index 080e45d4e7..589e3dca3e 100644 --- a/interface/web/dashboard/lib/lang/br_dashlet_quota.lng +++ b/interface/web/dashboard/lib/lang/br_dashlet_quota.lng @@ -1,8 +1,8 @@ <?php -$wb['quota_txt'] = 'Cota para sites'; +$wb['quota_txt'] = 'Cota de site (disco)'; $wb['domain_txt'] = 'DomÃnio/Site'; $wb['used_txt'] = 'Espaço utilizado'; -$wb['hard_txt'] = 'Limite'; +$wb['hard_txt'] = 'Limite para bloqueio'; $wb['soft_txt'] = 'Limite para alerta'; $wb['no_sites_txt'] = 'Nenhum site encontrado.'; ?> diff --git a/interface/web/dashboard/lib/lang/br_dashlet_shop.lng b/interface/web/dashboard/lib/lang/br_dashlet_shop.lng index 48847abff4..9fd37d5250 100644 --- a/interface/web/dashboard/lib/lang/br_dashlet_shop.lng +++ b/interface/web/dashboard/lib/lang/br_dashlet_shop.lng @@ -1,8 +1,8 @@ <?php -$wb['shop_txt'] = 'Pedido'; +$wb['shop_txt'] = 'Ordem'; $wb['name_txt'] = 'Nome'; $wb['price_txt'] = 'Preço'; -$wb['setup_fee_txt'] = 'Taxa Inicial'; +$wb['setup_fee_txt'] = 'Taxa criada'; $wb['no_products_txt'] = 'Nenhum produto encontrado.'; -$wb['order_txt'] = 'Pedir'; +$wb['order_txt'] = 'Ordem'; ?> diff --git a/interface/web/dashboard/lib/lang/tr_dashlet_customer.lng b/interface/web/dashboard/lib/lang/tr_dashlet_customer.lng index 4fe6cb0ef7..4902a83a09 100644 --- a/interface/web/dashboard/lib/lang/tr_dashlet_customer.lng +++ b/interface/web/dashboard/lib/lang/tr_dashlet_customer.lng @@ -1,4 +1,4 @@ <?php -$wb['customerdata_txt'] = 'My Data'; -$wb['edit_txt'] = 'Edit'; +$wb['customerdata_txt'] = 'Bilgilerim'; +$wb['edit_txt'] = 'Düzenle'; ?> diff --git a/interface/web/dashboard/lib/lang/tr_dashlet_databasequota.lng b/interface/web/dashboard/lib/lang/tr_dashlet_databasequota.lng index bd2402dbf6..d8e8dfb89a 100644 --- a/interface/web/dashboard/lib/lang/tr_dashlet_databasequota.lng +++ b/interface/web/dashboard/lib/lang/tr_dashlet_databasequota.lng @@ -1,7 +1,7 @@ <?php -$wb['databasequota_txt'] = 'Database Quota'; -$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'] = 'Veritabanı Kotası'; +$wb['database_txt'] = 'Veritabanı Adı'; +$wb['used_txt'] = 'Kullanılan Alan'; +$wb['quota_txt'] = 'Kota'; +$wb['no_database_accounts_txt'] = 'Henüz bir veritabanı yok.'; ?> diff --git a/interface/web/dashboard/lib/lang/tr_dashlet_donate.lng b/interface/web/dashboard/lib/lang/tr_dashlet_donate.lng index e41c374cde..7324cb840d 100644 --- a/interface/web/dashboard/lib/lang/tr_dashlet_donate.lng +++ b/interface/web/dashboard/lib/lang/tr_dashlet_donate.lng @@ -1,7 +1,7 @@ <?php -$wb['donate_txt'] = 'The ISPConfig Hosting Control Panel is free software. Maybe you are aware, that it takes a lot of time and effort to develop, maintain and support a software project of this complexity. If you want to support the further development of ISPConfig, please consider making a donation. As a bonus you will get a copy of the current ISPConfig Manual.'; -$wb['donate2_txt'] = 'The donation amount can be 5 EUR or more, the amount is chosen during checkout. The payment method is PayPal. You will receive an receipt as PDF from ISPConfig UG.'; -$wb['hide_btn_txt'] = 'Hide'; -$wb['donate_btn_txt'] = 'Support ISPConfig and get the Manual'; -$wb['more_btn_txt'] = 'More'; +$wb['donate_txt'] = 'ISPConfig Hosting Control Panel uygulaması ücretsiz dağıtılmaktadır. Belki bu düzeyde bir yazılımı geliÅŸtirmek, güncellemek ve desteklemek için çok fazla zaman ve emek harcandığının farkındasınızdır. ISPConfig uygulamasının geliÅŸtirmesine destek olmak için bağış yapmak isteyebilirsiniz. Hediye olarak ISPConfig kılavuzunu alacaksınız.'; +$wb['donate2_txt'] = 'Bağış tutarı en az 5 EUR ya da ödeme sırasında seçeceÄŸiniz baÅŸka bir tutar olabilir. Ödemeleri PayPal üzerinden alıyoruz. PDF alındısında ISPConfig UG yazar.'; +$wb['hide_btn_txt'] = 'Gizle'; +$wb['donate_btn_txt'] = 'ISPConfig uygulamasını destekleyerek kılavuzu edinin'; +$wb['more_btn_txt'] = 'Ayrıntılar'; ?> diff --git a/interface/web/dashboard/lib/lang/tr_dashlet_invoice_client_settings.lng b/interface/web/dashboard/lib/lang/tr_dashlet_invoice_client_settings.lng index 8cae3dfb4f..b6b47cae90 100644 --- a/interface/web/dashboard/lib/lang/tr_dashlet_invoice_client_settings.lng +++ b/interface/web/dashboard/lib/lang/tr_dashlet_invoice_client_settings.lng @@ -1,4 +1,4 @@ <?php -$wb['invoice_client_settings_txt'] = 'Invoice Client Settings'; -$wb['edit_txt'] = 'Edit'; +$wb['invoice_client_settings_txt'] = 'Müşteri Fatura Ayarları'; +$wb['edit_txt'] = 'Düzenle'; ?> diff --git a/interface/web/dashboard/lib/lang/tr_dashlet_invoices.lng b/interface/web/dashboard/lib/lang/tr_dashlet_invoices.lng index a680daa8f6..db24326749 100644 --- a/interface/web/dashboard/lib/lang/tr_dashlet_invoices.lng +++ b/interface/web/dashboard/lib/lang/tr_dashlet_invoices.lng @@ -1,18 +1,18 @@ <?php -$wb['invoices_txt'] = 'Invoices'; -$wb['invoice_no_txt'] = 'Invoice No.'; -$wb['amount_txt'] = 'Amount'; -$wb['date_txt'] = 'Date'; -$wb['invoice_status_txt'] = 'Status'; -$wb['no_invoices_txt'] = 'No Invoices available.'; -$wb['paid_txt'] = 'Paid'; -$wb['unpaid_txt'] = 'Unpaid'; -$wb['paynow_txt'] = 'pay now'; -$wb['proforma_txt'] = 'Proforma'; -$wb['refunded_txt'] = 'Refunded'; -$wb['not_refunded_txt'] = 'Not refunded'; -$wb['invoice_type_invoice_txt'] = 'Invoice'; -$wb['invoice_type_proforma_txt'] = 'Proforma'; -$wb['invoice_type_refund_txt'] = 'Refund'; -$wb['invoice_type_reminder_txt'] = 'Reminder'; +$wb['invoices_txt'] = 'Faturalar'; +$wb['invoice_no_txt'] = 'Fatura No'; +$wb['amount_txt'] = 'Tutar'; +$wb['date_txt'] = 'Tarih'; +$wb['invoice_status_txt'] = 'Durum'; +$wb['no_invoices_txt'] = 'Henüz bir fatura yok.'; +$wb['paid_txt'] = 'Ödendi'; +$wb['unpaid_txt'] = 'Ödenmedi'; +$wb['paynow_txt'] = 'Åžimdi Öde'; +$wb['proforma_txt'] = 'Teklif'; +$wb['refunded_txt'] = 'Geri Ödendi'; +$wb['not_refunded_txt'] = 'Geri Ödenmedi'; +$wb['invoice_type_invoice_txt'] = 'Fatura'; +$wb['invoice_type_proforma_txt'] = 'Teklif'; +$wb['invoice_type_refund_txt'] = 'Geri Ödeme'; +$wb['invoice_type_reminder_txt'] = 'Anımsatıcı'; ?> diff --git a/interface/web/dashboard/lib/lang/tr_dashlet_limits.lng b/interface/web/dashboard/lib/lang/tr_dashlet_limits.lng index a8869328f9..9fa1fb5b90 100644 --- a/interface/web/dashboard/lib/lang/tr_dashlet_limits.lng +++ b/interface/web/dashboard/lib/lang/tr_dashlet_limits.lng @@ -2,33 +2,33 @@ $wb['limits_txt'] = 'Hesap Sınırları'; $wb['of_txt'] = '/'; $wb['unlimited_txt'] = 'Sınırsız'; -$wb['limit_maildomain_txt'] = 'E-posta Alan Adı Sayısı'; -$wb['limit_mailmailinglist_txt'] = 'Posta Listesi Sayısı'; -$wb['limit_mailbox_txt'] = 'Posta Kutusu Sayısı'; +$wb['limit_maildomain_txt'] = 'E-posta Etki Alanı Sayısı'; +$wb['limit_mailmailinglist_txt'] = 'E-posta Listesi Sayısı'; +$wb['limit_mailbox_txt'] = 'E-posta Kutusu Sayısı'; $wb['limit_mailalias_txt'] = 'Takma E-posta Sayısı'; -$wb['limit_mailaliasdomain_txt'] = 'Takma Alan Adı Sayısı'; +$wb['limit_mailaliasdomain_txt'] = 'Takma Etki Alanı Sayısı'; $wb['limit_mailforward_txt'] = 'E-posta Yönlendirici Sayısı'; $wb['limit_mailcatchall_txt'] = 'E-posta Tümünü Al Hesabı Sayısı'; $wb['limit_mailrouting_txt'] = 'E-posta Yöneltici Sayısı'; $wb['limit_mailfilter_txt'] = 'E-posta Süzgeci Sayısı'; -$wb['limit_fetchmail_txt'] = 'Posta Alma Hesabı Sayısı'; -$wb['limit_spamfilter_wblist_txt'] = 'Önemsiz Posta Beyaz/Kara Liste Sayısı'; -$wb['limit_spamfilter_user_txt'] = 'Önemsiz Posta Süzgeci Kullanıcı Sayısı'; -$wb['limit_spamfilter_policy_txt'] = 'Önemsiz Posta Kuralı Sayısı'; +$wb['limit_fetchmail_txt'] = 'E-posta Alma Hesabı Sayısı'; +$wb['limit_spamfilter_wblist_txt'] = 'Önemsiz Ä°leti Beyaz/Kara Liste Sayısı'; +$wb['limit_spamfilter_user_txt'] = 'Önemsiz Ä°leti Süzgeci Kullanıcı Sayısı'; +$wb['limit_spamfilter_policy_txt'] = 'Önemsiz Ä°letia Kuralı Sayısı'; $wb['limit_cron_txt'] = 'Zamanlanmış Görev Sayısı'; -$wb['limit_web_domain_txt'] = 'Web Alan Adı Sayısı'; -$wb['limit_web_aliasdomain_txt'] = 'Web Takma Alan Adı Sayısı'; -$wb['limit_web_subdomain_txt'] = 'Web Alt Alan Adı Sayısı'; +$wb['limit_web_domain_txt'] = 'Web Etki Alanı Sayısı'; +$wb['limit_web_aliasdomain_txt'] = 'Web Takma Etki Alanı Sayısı'; +$wb['limit_web_subdomain_txt'] = 'Web Alt Etki Alanı Sayısı'; $wb['limit_ftp_user_txt'] = 'FTP Kullanıcı Sayısı'; $wb['limit_dns_zone_txt'] = 'DNS Bölgesi Sayısı'; -$wb['limit_dns_slave_zone_txt'] = 'Ä°kinci DNS Bölgesi Sayısı'; +$wb['limit_dns_slave_zone_txt'] = 'Ä°kincil DNS Bölgesi Sayısı'; $wb['limit_dns_record_txt'] = 'DNS Kayıtları Sayısı'; $wb['limit_shell_user_txt'] = 'Kabuk Kullanıcısı Sayısı'; $wb['limit_webdav_user_txt'] = 'Webdav Kullanıcı Sayısı'; $wb['limit_client_txt'] = 'Müşteri Sayısı'; $wb['limit_database_txt'] = 'Veritabanı Sayısı'; -$wb['limit_domain_txt'] = 'Alan Adı Sayısı'; -$wb['limit_mailquota_txt'] = 'Assigned mailbox quota'; -$wb['limit_web_quota_txt'] = 'Assigned web quota'; -$wb['limit_database_quota_txt'] = 'Assigned database quota'; +$wb['limit_domain_txt'] = 'Etki Alanı Sayısı'; +$wb['limit_mailquota_txt'] = 'E-posta Kutusu Alanı Kotası'; +$wb['limit_web_quota_txt'] = 'Web Sitesi Alanı Kotası'; +$wb['limit_database_quota_txt'] = 'Veritabanı Alanı Kotası'; ?> diff --git a/interface/web/dashboard/lib/lang/tr_dashlet_mailquota.lng b/interface/web/dashboard/lib/lang/tr_dashlet_mailquota.lng index bee7e8677f..67888a818e 100644 --- a/interface/web/dashboard/lib/lang/tr_dashlet_mailquota.lng +++ b/interface/web/dashboard/lib/lang/tr_dashlet_mailquota.lng @@ -1,5 +1,5 @@ <?php -$wb['mailquota_txt'] = 'Posta Kutusu Kotası'; +$wb['mailquota_txt'] = 'E-posta Kutusu Kotası'; $wb['email_txt'] = 'E-posta Adresi'; $wb['name_txt'] = 'Ad'; $wb['used_txt'] = 'Kullanılan Alan'; diff --git a/interface/web/dashboard/lib/lang/tr_dashlet_modules.lng b/interface/web/dashboard/lib/lang/tr_dashlet_modules.lng index c551510a50..ce75e96210 100644 --- a/interface/web/dashboard/lib/lang/tr_dashlet_modules.lng +++ b/interface/web/dashboard/lib/lang/tr_dashlet_modules.lng @@ -1,4 +1,4 @@ <?php $wb['available_modules_txt'] = 'Kullanılabilecek Modüller'; -$wb['go_to_txt'] = 'Go to'; +$wb['go_to_txt'] = ''; ?> diff --git a/interface/web/dashboard/lib/lang/tr_dashlet_products.lng b/interface/web/dashboard/lib/lang/tr_dashlet_products.lng index a69b61d2fb..11aa2e519d 100644 --- a/interface/web/dashboard/lib/lang/tr_dashlet_products.lng +++ b/interface/web/dashboard/lib/lang/tr_dashlet_products.lng @@ -1,9 +1,9 @@ <?php -$wb['products_txt'] = 'My Products'; -$wb['name_txt'] = 'Name'; -$wb['price_txt'] = 'Price'; -$wb['next_payment_date_txt'] = 'Next Invoice'; -$wb['no_products_txt'] = 'No products found.'; -$wb['edit_txt'] = 'Edit'; -$wb['cancellation_date_txt'] = 'Cancelled by'; +$wb['products_txt'] = 'Ãœrünlerim'; +$wb['name_txt'] = 'Ad'; +$wb['price_txt'] = 'Fiyat'; +$wb['next_payment_date_txt'] = 'Sonraki Fatura'; +$wb['no_products_txt'] = 'Henüz bir ürün yok.'; +$wb['edit_txt'] = 'Düzenle'; +$wb['cancellation_date_txt'] = 'Ä°ptal eden:'; ?> diff --git a/interface/web/dashboard/lib/lang/tr_dashlet_quota.lng b/interface/web/dashboard/lib/lang/tr_dashlet_quota.lng index 5a757be6f7..c49fcba522 100644 --- a/interface/web/dashboard/lib/lang/tr_dashlet_quota.lng +++ b/interface/web/dashboard/lib/lang/tr_dashlet_quota.lng @@ -1,8 +1,8 @@ <?php $wb['quota_txt'] = 'Web Sitesi Disk Kotası'; -$wb['domain_txt'] = 'Alan Adı / Web Sitesi'; +$wb['domain_txt'] = 'Etki Alanı / Web Sitesi'; $wb['used_txt'] = 'Kullanılan Alan'; -$wb['hard_txt'] = 'Donanım sınırı'; -$wb['soft_txt'] = 'Yazılım sınırı'; +$wb['hard_txt'] = 'Donanım Sınırı'; +$wb['soft_txt'] = 'Yazılım Sınırı'; $wb['no_sites_txt'] = 'Henüz bir web sitesi yok.'; ?> diff --git a/interface/web/dashboard/lib/lang/tr_dashlet_shop.lng b/interface/web/dashboard/lib/lang/tr_dashlet_shop.lng index 1e0b5361d7..59e629889f 100644 --- a/interface/web/dashboard/lib/lang/tr_dashlet_shop.lng +++ b/interface/web/dashboard/lib/lang/tr_dashlet_shop.lng @@ -1,8 +1,8 @@ <?php -$wb['shop_txt'] = 'Order'; -$wb['name_txt'] = 'Name'; -$wb['price_txt'] = 'Price'; -$wb['setup_fee_txt'] = 'Setup Fee'; -$wb['no_products_txt'] = 'No products found.'; -$wb['order_txt'] = 'Order'; +$wb['shop_txt'] = 'SipariÅŸ'; +$wb['name_txt'] = 'Ad'; +$wb['price_txt'] = 'Fiyat'; +$wb['setup_fee_txt'] = 'Kurulum Ãœcreti'; +$wb['no_products_txt'] = 'Herhangi bir ürün bulunamadı.'; +$wb['order_txt'] = 'SipariÅŸ'; ?> diff --git a/interface/web/dns/lib/lang/br.lng b/interface/web/dns/lib/lang/br.lng index b45d1575af..9228373fdf 100644 --- a/interface/web/dns/lib/lang/br.lng +++ b/interface/web/dns/lib/lang/br.lng @@ -1,4 +1,5 @@ <?php + $wb['DNS'] = 'DNS'; $wb['Zones'] = 'Zonas'; $wb['DNS A'] = 'A'; @@ -9,14 +10,15 @@ $wb['DNS mx'] = 'MX'; $wb['DNS ns'] = 'NS'; $wb['DNS ptr'] = 'PTR'; $wb['DNS RP'] = 'RP'; -$wb['DNS Zone'] = 'Zona'; +$wb['DNS Zone'] = 'ZONA'; $wb['Records'] = 'Registros'; $wb['DNS SRV'] = 'SRV'; $wb['DNS TXT Record'] = 'Registro TXT'; $wb['DNS TXT'] = 'TXT'; -$wb['DNS Wizard'] = 'Assistente dns'; -$wb['Add DNS Zone'] = 'Adicionar nova zona'; -$wb['Import Zone File'] = 'Importar arquivo de zona'; +$wb['DNS Wizard'] = 'Assistente DNS'; +$wb['Add DNS Zone'] = 'Adicionar zona dns'; $wb['Templates'] = 'Gabaritos'; +$wb['Secondary DNS'] = 'DNS secundário'; $wb['Secondary Zones'] = 'Zonas secundárias'; +$wb['Import Zone File'] = 'Importar arquivo de zona'; ?> diff --git a/interface/web/dns/lib/lang/br_dns_a.lng b/interface/web/dns/lib/lang/br_dns_a.lng index 93704528e2..f96cf551e6 100644 --- a/interface/web/dns/lib/lang/br_dns_a.lng +++ b/interface/web/dns/lib/lang/br_dns_a.lng @@ -1,17 +1,17 @@ <?php $wb['server_id_txt'] = 'Servidor'; $wb['zone_txt'] = 'Zona'; -$wb['name_txt'] = 'Nome'; +$wb['name_txt'] = 'Nome do host'; $wb['type_txt'] = 'Tipo'; $wb['data_txt'] = 'Endereço IP'; $wb['ttl_txt'] = 'TTL'; $wb['active_txt'] = 'Ativo'; -$wb['limit_dns_record_txt'] = 'O limite de zonas dns para esta conta foi alcançado.'; -$wb['no_zone_perm'] = 'Você não tem permissão para adicionar registros a esta zona dns.'; -$wb['name_error_empty'] = 'Nome está em branco.'; -$wb['name_error_regex'] = 'Nome é inválido.'; +$wb['limit_dns_record_txt'] = 'O limite de registros dns para esta conta foi alcançado.'; +$wb['no_zone_perm'] = 'Você não tem permissão para adicionar registros dns nesta zona.'; +$wb['name_error_empty'] = 'O nome do host está em branco.'; +$wb['name_error_regex'] = 'O nome do host possui formato inválido (somente nomes canônicos são suportados).'; $wb['data_error_empty'] = 'Endereço IP está em branco.'; -$wb['ip_error_wrong'] = 'Endereço IP é inválido.'; -$wb['data_error_duplicate'] = 'Registro A duplicado.'; -$wb['ttl_range_error'] = 'O ttl mÃnimo são 60 segundos.'; +$wb['ip_error_wrong'] = 'Endereço IP inválido.'; +$wb['data_error_duplicate'] = 'Registro A ou CNAME duplicado.'; +$wb['ttl_range_error'] = 'O TTL mÃnimo são 60 segundos.'; ?> diff --git a/interface/web/dns/lib/lang/br_dns_a_list.lng b/interface/web/dns/lib/lang/br_dns_a_list.lng index 0abaf5493d..6387c14cbe 100644 --- a/interface/web/dns/lib/lang/br_dns_a_list.lng +++ b/interface/web/dns/lib/lang/br_dns_a_list.lng @@ -1,14 +1,14 @@ <?php -$wb['list_head_txt'] = 'Registro (A)'; +$wb['list_head_txt'] = 'Registro A'; $wb['active_txt'] = 'Ativo'; $wb['server_id_txt'] = 'Servidor'; $wb['zone_txt'] = 'Zona'; $wb['name_txt'] = 'Nome'; -$wb['data_txt'] = 'Data'; +$wb['data_txt'] = 'Dados'; $wb['aux_txt'] = 'Prioridade'; -$wb['type_txt'] = 'Tipo'; $wb['ttl_txt'] = 'TTL'; -$wb['add_new_record_txt'] = 'Adicionar um novo registro (A)'; +$wb['type_txt'] = 'Tipo'; +$wb['add_new_record_txt'] = 'Adicionar novo registro A'; $wb['page_txt'] = 'Página'; $wb['page_of_txt'] = 'de'; $wb['delete_confirmation'] = 'Tem certeza que deseja remover este registro?'; diff --git a/interface/web/dns/lib/lang/br_dns_aaaa.lng b/interface/web/dns/lib/lang/br_dns_aaaa.lng index 5f0b463275..1a3cfb2d27 100644 --- a/interface/web/dns/lib/lang/br_dns_aaaa.lng +++ b/interface/web/dns/lib/lang/br_dns_aaaa.lng @@ -1,16 +1,16 @@ <?php $wb['server_id_txt'] = 'Servidor'; $wb['zone_txt'] = 'Zona'; -$wb['name_txt'] = 'Nome'; +$wb['name_txt'] = 'Nome do host'; $wb['type_txt'] = 'Tipo'; $wb['data_txt'] = 'Endereço IPv6'; $wb['ttl_txt'] = 'TTL'; $wb['active_txt'] = 'Ativo'; -$wb['limit_dns_record_txt'] = 'O limite de zonas dns para esta conta foi alcançado.'; -$wb['no_zone_perm'] = 'Você não tem permissão para adicionar registros a esta zona dns.'; -$wb['name_error_empty'] = 'O nome está em branco.'; -$wb['name_error_regex'] = 'O nome é inválido.'; -$wb['data_error_empty'] = 'Endereço IP está em branco.'; -$wb['ip_error_wrong'] = 'Endereço IP é inválido.'; -$wb['ttl_range_error'] = 'O ttl mÃnimo são 60 segundos.'; +$wb['limit_dns_record_txt'] = 'O limite de registros dns para esta conta foi alcançado.'; +$wb['no_zone_perm'] = 'Você não tem permissão para adicionar registros dns nesta zona.'; +$wb['name_error_empty'] = 'O nome do host está em branco.'; +$wb['name_error_regex'] = 'O nome do host possui formato inválido (somente nomes canônicos são suportados).'; +$wb['data_error_empty'] = 'Endereço IPv6 está em branco.'; +$wb['ip_error_wrong'] = 'O endereço IPv6 possui formato inválido.'; +$wb['ttl_range_error'] = 'O TTL mÃnimo são 60 segundos.'; ?> diff --git a/interface/web/dns/lib/lang/br_dns_alias.lng b/interface/web/dns/lib/lang/br_dns_alias.lng index b303a662ba..46821ee1ae 100644 --- a/interface/web/dns/lib/lang/br_dns_alias.lng +++ b/interface/web/dns/lib/lang/br_dns_alias.lng @@ -1,16 +1,16 @@ <?php $wb['server_id_txt'] = 'Servidor'; $wb['zone_txt'] = 'Zona'; -$wb['name_txt'] = 'Nome'; +$wb['name_txt'] = 'Nome do host'; $wb['type_txt'] = 'Tipo'; -$wb['data_txt'] = 'Servidor de destino'; +$wb['data_txt'] = 'Alvo do host'; $wb['ttl_txt'] = 'TTL'; $wb['active_txt'] = 'Ativo'; $wb['limit_dns_record_txt'] = 'O limite de registros dns para esta conta foi alcançado.'; -$wb['no_zone_perm'] = 'Você não tem permissão para adicionar registros a esta zona dns.'; -$wb['name_error_empty'] = 'O nome está em branco.'; -$wb['name_error_regex'] = 'O nome é inválido.'; -$wb['data_error_empty'] = 'O servidor de destino está em branco.'; -$wb['data_error_regex'] = 'O servidor de destino é inválido.'; -$wb['ttl_range_error'] = 'O ttl mÃnimo são 60 segundos.'; +$wb['no_zone_perm'] = 'Você não tem permissão para adicionar registros dns nesta zona.'; +$wb['name_error_empty'] = 'O nome do host está em branco.'; +$wb['name_error_regex'] = 'O nome do host possui formato inválido (somente nomes canônicos são suportados).'; +$wb['data_error_empty'] = 'O alvo do host está em branco.'; +$wb['data_error_regex'] = 'O formato do alvo do host é inválido.'; +$wb['ttl_range_error'] = 'O TTL mÃnimo são 60 segundos.'; ?> diff --git a/interface/web/dns/lib/lang/br_dns_caa.lng b/interface/web/dns/lib/lang/br_dns_caa.lng index 973a97ceb6..16bf267862 100644 --- a/interface/web/dns/lib/lang/br_dns_caa.lng +++ b/interface/web/dns/lib/lang/br_dns_caa.lng @@ -1,19 +1,19 @@ <?php -$wb['ca_list_txt'] = 'Certifiction Authority'; -$wb['ca_domain_txt'] = 'Domain'; -$wb['ca_hostname_txt'] = 'Additional Hostnamen'; -$wb['ca_hostname_note_txt'] = '(Sepearated list with commas - empty for all hostnames)'; -$wb['ca_options_txt'] = 'Additional Options'; -$wb['ca_options_note_txt'] = 'requested by the CA (Sepearated list with commas)'; -$wb['ca_wildcard_txt'] = 'Use Wildcard SSL'; -$wb['ca_critical_txt'] = 'Strict check'; +$wb['ca_list_txt'] = 'Autoridade Certificadora - CA'; +$wb['ca_domain_txt'] = 'DomÃnio'; +$wb['ca_hostname_txt'] = 'Nome de hosts adicionais'; +$wb['ca_hostname_note_txt'] = '(separado por vÃrgulas - em branco para todos os hosts)'; +$wb['ca_options_txt'] = 'Opções adicionais'; +$wb['ca_options_note_txt'] = 'solicitado pela CA (lista separado por vÃrgulas)'; +$wb['ca_wildcard_txt'] = 'Usar curingas SSL'; +$wb['ca_critical_txt'] = 'Verificação estrita'; $wb['ttl_txt'] = 'TTL'; -$wb['active_txt'] = 'Active'; -$wb['select_txt'] = 'Select Certifiction Authority'; -$wb['no_zone_perm'] = 'You do not have the permission to add a record to this DNS zone.'; -$wb['limit_dns_record_txt'] = 'The max. number of DNS records for your account is reached.'; -$wb['ca_error_txt'] = 'No Certifiction Authority selected'; -$wb['caa_exists_error'] = 'CAA Record already exists'; -$wb['ca_option_error'] = 'Invalid format for additional options; OPTION=VALUE'; -$wb['ttl_range_error'] = 'Min. TTL time is 60 seconds.'; +$wb['active_txt'] = 'Ativo'; +$wb['select_txt'] = 'Selecionar autoridade certificadora'; +$wb['no_zone_perm'] = 'Você não tem permissão para adicionar registros dns nesta zona.'; +$wb['limit_dns_record_txt'] = 'O limite de registros dns para esta conta foi alcançado.'; +$wb['ca_error_txt'] = 'Nenhuma autoridade certificadora selecionada.'; +$wb['caa_exists_error'] = 'Registro CAA já existe.'; +$wb['ca_option_error'] = 'Formato inválido para opções adicionais; OPÇÃO=VALOR'; +$wb['ttl_range_error'] = 'O TTL mÃnimo são 60 segundos.'; ?> diff --git a/interface/web/dns/lib/lang/br_dns_cname.lng b/interface/web/dns/lib/lang/br_dns_cname.lng index cbba03cdaf..c4fb0df260 100644 --- a/interface/web/dns/lib/lang/br_dns_cname.lng +++ b/interface/web/dns/lib/lang/br_dns_cname.lng @@ -1,17 +1,17 @@ <?php $wb['server_id_txt'] = 'Servidor'; $wb['zone_txt'] = 'Zona'; -$wb['name_txt'] = 'Nome'; +$wb['name_txt'] = 'Nome do host'; $wb['type_txt'] = 'Tipo'; -$wb['data_txt'] = 'Nome de destino'; +$wb['data_txt'] = 'Alvo do host'; $wb['ttl_txt'] = 'TTL'; $wb['active_txt'] = 'Ativo'; $wb['limit_dns_record_txt'] = 'O limite de registros dns para esta conta foi alcançado.'; -$wb['no_zone_perm'] = 'Você não tem permissão para adicionar registros a esta zona dns.'; -$wb['name_error_empty'] = 'Nome está em branco.'; -$wb['name_error_regex'] = 'Nome é inválido.'; -$wb['data_error_empty'] = 'Nome de destino está em branco.'; -$wb['data_error_regex'] = 'Nome de destino é inválido.'; -$wb['data_error_duplicate'] = 'Registros A ou CNAME duplicados.'; -$wb['ttl_range_error'] = 'O ttl mÃnimo são 60 segundos.'; +$wb['no_zone_perm'] = 'Você não tem permissão para adicionar registros dns nesta zona.'; +$wb['name_error_empty'] = 'O nome do host está em branco.'; +$wb['name_error_regex'] = 'O nome do host possui formato inválido (somente nomes canônicos são suportados).'; +$wb['data_error_empty'] = 'O alvo do host está em branco.'; +$wb['data_error_regex'] = 'O alvo do host possui formato inválido.'; +$wb['data_error_duplicate'] = 'Registro A ou CNAME duplicado.'; +$wb['ttl_range_error'] = 'O TTL mÃnimo são 60 segundos.'; ?> diff --git a/interface/web/dns/lib/lang/br_dns_dkim.lng b/interface/web/dns/lib/lang/br_dns_dkim.lng index 1ec851a216..a24976194d 100644 --- a/interface/web/dns/lib/lang/br_dns_dkim.lng +++ b/interface/web/dns/lib/lang/br_dns_dkim.lng @@ -1,13 +1,13 @@ <?php -$wb['public_key_txt'] = 'Chave pública'; +$wb['public_key_txt'] = 'Chave Pública'; $wb['ttl_txt'] = 'TTL'; $wb['active_txt'] = 'Ativo'; -$wb['record_exists_txt'] = 'Registro dns já existe.'; -$wb['dkim_disabled_txt'] = 'DKIM desabilitado para este domÃnio.'; +$wb['record_exists_txt'] = 'Este registro dns já existe.'; +$wb['dkim_disabled_txt'] = 'Chave DKIM está desabilitada para este domÃnio de e-mail.'; $wb['limit_dns_record_txt'] = 'O limite de registros dns para esta conta foi alcançado.'; -$wb['no_zone_perm'] = 'Você não tem permissão para adicionar registros a esta zona dns.'; -$wb['ttl_range_error'] = 'O ttl mÃnimo são 60 segundos.'; +$wb['no_zone_perm'] = 'Você não tem permissão para adicionar registros dns nesta zona.'; +$wb['ttl_range_error'] = 'O TTL mÃnimo são 60 segundos.'; $wb['selector_txt'] = 'Seletor DKIM'; -$wb['data_error_empty'] = 'Public-Key missing'; -$wb['dkim_selector_empty_txt'] = 'DKIM-Selector is empty'; +$wb['data_error_empty'] = 'Chave pública ausente.'; +$wb['dkim_selector_empty_txt'] = 'Seletor DKIM está em branco.'; ?> diff --git a/interface/web/dns/lib/lang/br_dns_dmarc.lng b/interface/web/dns/lib/lang/br_dns_dmarc.lng index 8bb35318f8..bacd3af25f 100644 --- a/interface/web/dns/lib/lang/br_dns_dmarc.lng +++ b/interface/web/dns/lib/lang/br_dns_dmarc.lng @@ -1,50 +1,50 @@ <?php $wb['data_txt'] = 'Registro DMARC'; $wb['domain_txt'] = 'DomÃnio'; -$wb['dmarc_policy_txt'] = 'PolÃtica de recepção de e-mails'; -$wb['dmarc_policy_note_txt'] = 'Como os \\"ISPs\\" devem tratar as mensagens SPF ou DKIM com falha (DMARC).'; -$wb['dmarc_policy_none_txt'] = 'não fazer nada'; +$wb['dmarc_policy_txt'] = 'PolÃtica para recepção de e-mails'; +$wb['dmarc_policy_note_txt'] = 'Como os ISPs devem manipular as mensagens que falharam para SPF ou DKIM (DMARC).'; +$wb['dmarc_policy_none_txt'] = 'nenhuma'; $wb['dmarc_policy_quarantine_txt'] = 'quarentena'; $wb['dmarc_policy_reject_txt'] = 'rejeitar'; -$wb['dmarc_rua_txt'] = 'Agregrar os dados por endereço'; -$wb['dmarc_rua_note_txt'] = 'Endereços de e-mail para receber relatórios do sistema sobre mensagens com falha e controles DMARC do domÃnio (separados por espaço em branco)'; -$wb['dmarc_ruf_txt'] = 'Relatório forense de dados por endereço'; -$wb['dmarc_ruf_note_txt'] = 'Endereços de e-mail para receber amostras de mensagens com falha e controles DMARC do domÃnio (separados por espaço em branco)'; +$wb['dmarc_rua_txt'] = 'Relatório de dados de endereços sumarizado'; +$wb['dmarc_rua_note_txt'] = 'Endereços de e-mail para receber relatórios dos ISPs sobre mensagens de falhas DMARC para este domÃnio (separado por espaço).'; +$wb['dmarc_ruf_txt'] = 'Endereço para relatório de dados forense'; +$wb['dmarc_ruf_note_txt'] = 'Endereços de e-mail para receber mensagens simples sobre falhas DMARC para este domÃnio (separado por espaço).'; $wb['dmarc_fo_txt'] = 'Opções de relatório forense'; -$wb['dmarc_fo0_txt'] = 'Gerar relatórios se todos os mecanismos de autenticação subjacentes deixarem de produzir um resultado DMARC \\"pass\\".'; -$wb['dmarc_fo1_txt'] = 'Gerar relatório se algum mecanismo falhar.'; -$wb['dmarc_fod_txt'] = 'Gerar relatório se assinatura DKIM falhar na verificação.'; -$wb['dmarc_fos_txt'] = 'Gerar relatório se o SPF falhar.'; -$wb['dmarc_adkim_txt'] = 'Parametrização do identificador DKIM'; -$wb['dmarc_adkim_note_txt'] = 'Modo \\"strict\\" exige combinação exata entre o DKIM do domÃnio e e-mails'; +$wb['dmarc_fo0_txt'] = 'Gerar relatório se todos os mecanismos de autenticação falharem em produzir um resultado \'pass\' do DMARC.'; +$wb['dmarc_fo1_txt'] = 'Gerar relatório se qualquer mecanismo falhar.'; +$wb['dmarc_fod_txt'] = 'Gerar relatório se a assinatura DKIM falhar na verificação.'; +$wb['dmarc_fos_txt'] = 'Gerar relatório se a consulta SPF falhar.'; +$wb['dmarc_adkim_txt'] = 'Alinhamento do identificador DKIM'; +$wb['dmarc_adkim_note_txt'] = '\'strict\' requer combinação exata entre DKIM do domÃnio e oremetente do e-mail'; $wb['dmarc_adkim_r_txt'] = 'relaxed'; $wb['dmarc_adkim_s_txt'] = 'strict'; -$wb['dmarc_aspf_txt'] = 'Parametrização do identificador SPF'; -$wb['dmarc_aspf_note_txt'] = 'Modo \\"strict\\" exige combinação exata entre o SPF do domÃnio e e-mails'; +$wb['dmarc_aspf_txt'] = 'Alinhamento do identificador SPF'; +$wb['dmarc_aspf_note_txt'] = '\'strict\' requer combinação exata o SPF do domÃnio e oremetente do e-mail'; $wb['dmarc_aspf_r_txt'] = 'relaxed'; $wb['dmarc_aspf_s_txt'] = 'strict'; -$wb['dmarc_rf_txt'] = 'Formatação do relatório'; -$wb['dmarc_rf_afrf_txt'] = 'Falha de autenticação para formatação do relatório'; -$wb['dmarc_rf_iodef_txt'] = 'Formato da descrição de troca objeto de incidentes'; -$wb['dmarc_pct_txt'] = 'Aplicar polÃticas para este percentual'; -$wb['dmarc_pct_note_txt'] = '% (100 padrão). Percentual de mensagens do domÃnio que serão verificadas.'; -$wb['dmarc_ri_txt'] = 'Intervalo de relatórios'; -$wb['dmarc_ri_note_txt'] = 'Segundos (padrão=86400). Valor em segundos que os relatórios de agregação serão gerados (86400 representa 1 dia).'; -$wb['dmarc_sp_txt'] = 'PolÃticas de subdomÃnio (padrão é o mesmo do domÃnio).'; +$wb['dmarc_rf_txt'] = 'Formato do Relatório'; +$wb['dmarc_rf_afrf_txt'] = 'Formato do relatório de falhas de autenticação'; +$wb['dmarc_rf_iodef_txt'] = 'Formato da descrição de incidentes de objetos de troca'; +$wb['dmarc_pct_txt'] = 'Aplicar polÃtica para este percentual'; +$wb['dmarc_pct_note_txt'] = '% (100 padrão). Percentual de mensagens para este domÃnio a serem verificadas.'; +$wb['dmarc_ri_txt'] = 'Intervalo de geração do relatório'; +$wb['dmarc_ri_note_txt'] = 'Segundos (padrão=86400). Intervalo, em segundos, para gerar relatórios sumarizados (86400 equivale a 1 dia).'; +$wb['dmarc_sp_txt'] = 'PolÃtica para subdomÃnio (padrão é o mesmo do domÃnio).'; $wb['dmarc_sp_same_txt'] = 'mesmo do domÃnio'; -$wb['dmarc_sp_none_txt'] = 'nenhum'; +$wb['dmarc_sp_none_txt'] = 'nenhuma'; $wb['dmarc_sp_quarantine_txt'] = 'quarentena'; $wb['dmarc_sp_reject_txt'] = 'rejeitar'; $wb['ttl_txt'] = 'TTL'; $wb['active_txt'] = 'Ativo'; -$wb['dmarc_policy_error_txt'] = 'Somente a polÃtica \\"nenhum\\" é permitida para e-mails sem assinatura DKIM.'; +$wb['dmarc_policy_error_txt'] = 'A polÃtica \'nenhuma\' é permitida apenas para e-mails sem assinatura DKIM.'; $wb['dmarc_no_dkim_txt'] = 'Nenhum registro DKIM ativo.'; $wb['dmarc_no_spf_txt'] = 'Nenhum registro SPF ativo.'; -$wb['dmarc_more_spf_txt'] = 'Mais de um registro SPF ativo.'; -$wb['dmarc_invalid_email_txt'] = 'e-mail é inválido.'; -$wb['dmarc_empty_txt'] = 'Registro DMARC em branco - especifique ao menos um'; -$wb['record_exists_txt'] = 'Registro dns já existe.'; -$wb['limit_dns_record_txt'] = 'O limite de registros dns para esta foi alcançado.'; -$wb['no_zone_perm'] = 'Você não tem permissão para adicionar registros a esta zona dns.'; -$wb['ttl_range_error'] = 'O ttl mÃnimo são 60 segundos.'; +$wb['dmarc_more_spf_txt'] = 'Existe mais de um registro SPF ativo'; +$wb['dmarc_invalid_email_txt'] = 'Endereço de e-mail inválido'; +$wb['dmarc_empty_txt'] = 'Registro DMARC em branco - especifique ao menos uma opção'; +$wb['record_exists_txt'] = 'Registro dns já existe'; +$wb['limit_dns_record_txt'] = 'O limite de registros dns para esta conta foi alcançado.'; +$wb['no_zone_perm'] = 'Você não tem permissão para adicionar registros dns nesta zona.'; +$wb['ttl_range_error'] = 'TTL mÃnimo são 60 segundos.'; ?> diff --git a/interface/web/dns/lib/lang/br_dns_ds.lng b/interface/web/dns/lib/lang/br_dns_ds.lng index 38b2183ead..843338a943 100644 --- a/interface/web/dns/lib/lang/br_dns_ds.lng +++ b/interface/web/dns/lib/lang/br_dns_ds.lng @@ -1,17 +1,18 @@ <?php $wb['server_id_txt'] = 'Servidor'; $wb['zone_txt'] = 'Zona'; -$wb['name_txt'] = 'Nome'; +$wb['name_txt'] = 'Nome do host'; $wb['type_txt'] = 'Tipo'; $wb['data_txt'] = 'Dados'; $wb['ttl_txt'] = 'TTL'; $wb['active_txt'] = 'Ativo'; $wb['limit_dns_record_txt'] = 'O limite de registros dns para esta conta foi alcançado.'; -$wb['no_zone_perm'] = 'Você não tem permissão para adicionar registros a esta zona dns.'; -$wb['name_error_empty'] = 'Nome está em branco.'; -$wb['name_error_regex'] = 'Nome é inválido.'; -$wb['data_error_empty'] = 'Dados está em branco.'; -$wb['data_error_regex'] = 'Dados é inválido.'; -$wb['ttl_range_error'] = 'O ttl mÃnimo são 60 segundos.'; -$wb['invalid_type_ds'] = 'Registro DS é inválido.'; +$wb['no_zone_perm'] = 'Você não tem permissão para adicionar registros dns nesta zona.'; +$wb['name_error_empty'] = 'O nome do host está em branco.'; +$wb['name_error_regex'] = 'O nome do host possui formato inválido (somente nomes canônicos são suportados).'; +$wb['data_error_empty'] = 'O campo texto (Text) em branco'; +$wb['data_error_regex'] = 'O campo texto (Text) possui formato inválido.'; +$wb['ttl_range_error'] = 'O TTL mÃnimo são 60 segundos.'; +$wb['invalid_type_ds'] = 'O registro DS possui formato inválido.'; + ?> diff --git a/interface/web/dns/lib/lang/br_dns_hinfo.lng b/interface/web/dns/lib/lang/br_dns_hinfo.lng index bf7b7f33d4..e7bdfa2f4c 100644 --- a/interface/web/dns/lib/lang/br_dns_hinfo.lng +++ b/interface/web/dns/lib/lang/br_dns_hinfo.lng @@ -1,16 +1,16 @@ <?php $wb['server_id_txt'] = 'Servidor'; $wb['zone_txt'] = 'Zona'; -$wb['name_txt'] = 'Nome'; +$wb['name_txt'] = 'Nome do host'; $wb['type_txt'] = 'Tipo'; -$wb['data_txt'] = 'Servidor'; +$wb['data_txt'] = 'Informação do host'; $wb['ttl_txt'] = 'TTL'; $wb['active_txt'] = 'Ativo'; -$wb['limit_dns_record_txt'] = 'O limite de zonas dns para esta conta foi alcançado.'; -$wb['no_zone_perm'] = 'Você não tem permissão para adicionar registros a esta zona dns.'; -$wb['name_error_empty'] = 'O nome está em branco.'; -$wb['name_error_regex'] = 'O nome é inválido.'; -$wb['data_error_empty'] = 'Endereço IP está em branco.'; -$wb['data_error_regex'] = 'Endereço IP é inválido.'; -$wb['ttl_range_error'] = 'O ttl mÃnimo são 60 segundos.'; +$wb['limit_dns_record_txt'] = 'O limite de registros dns para esta conta foi alcançado.'; +$wb['no_zone_perm'] = 'Você não tem permissão para adicionar registros dns nesta zona.'; +$wb['name_error_empty'] = 'O nome do host está em branco.'; +$wb['name_error_regex'] = 'O nome do host possui formato inválido (somente nomes canônicos são suportados).'; +$wb['data_error_empty'] = 'Informação do host está em branco.'; +$wb['data_error_regex'] = 'Informação do host possui formato inválido.'; +$wb['ttl_range_error'] = 'O TTL mÃnimo são 60 segundos.'; ?> diff --git a/interface/web/dns/lib/lang/br_dns_import.lng b/interface/web/dns/lib/lang/br_dns_import.lng index e26b20a3f3..ffcef7d743 100644 --- a/interface/web/dns/lib/lang/br_dns_import.lng +++ b/interface/web/dns/lib/lang/br_dns_import.lng @@ -1,16 +1,16 @@ <?php +$wb['zone_file_import_txt'] = 'Importar arquivo de zona'; $wb['server_id_txt'] = 'Servidor'; $wb['client_txt'] = 'Cliente'; -$wb['btn_save_txt'] = 'Salvar'; +$wb['btn_save_txt'] = 'Importar arquivo de zona'; $wb['btn_cancel_txt'] = 'Cancelar'; $wb['domain_txt'] = 'DomÃnio'; -$wb['zone_file_successfully_imported_txt'] = 'O arquivo de zona foi importado com sucesso!'; -$wb['error_no_valid_zone_file_txt'] = 'Este arquivo não parece ser um arquivo de zona válido!'; -$wb['zonefile_to_import_txt'] = 'Arquivo de zona'; -$wb['domain_field_desc_txt'] = 'Pode ficar em branco caso o domÃnio é o mesmo nome do arquivo ou faz parte do conteúdo do mesmo.'; -$wb['title'] = 'Importar arquivos de zonas'; -$wb['no_file_uploaded_error'] = 'Nenhum arquivo de zona importado.'; -$wb['zone_file_import_txt'] = 'Importar arquivo de zona'; -$wb['error_no_server_id'] = 'Nenhum servidor informado.'; -$wb['error_not_allowed_server_id'] = 'O servidor selecionado não tem permissão para esta conta.'; +$wb['zone_file_successfully_imported_txt'] = 'O arquivo de zona dns foi importado com sucesso!'; +$wb['error_no_valid_zone_file_txt'] = 'Aparentemente este não é um arquivo de zona dns válido!'; +$wb['zonefile_to_import_txt'] = 'Arquivo de Zona'; +$wb['domain_field_desc_txt'] = 'Pode ficar em branco caso o domÃnio seja o mesmo nome do arquivo ou faz parte do conteúdo do mesmo.'; +$wb['title'] = 'Importar arquivo de zona'; +$wb['no_file_uploaded_error'] = 'Nenhum arquivo de zona dns foi carregado.'; +$wb['error_no_server_id'] = 'Nenhum servidor foi informado.'; +$wb['error_not_allowed_server_id'] = 'O servidor selecionado não é permitido nesta conta.'; ?> diff --git a/interface/web/dns/lib/lang/br_dns_loc.lng b/interface/web/dns/lib/lang/br_dns_loc.lng index 838fdcf12b..f84c2af034 100644 --- a/interface/web/dns/lib/lang/br_dns_loc.lng +++ b/interface/web/dns/lib/lang/br_dns_loc.lng @@ -1,16 +1,16 @@ <?php $wb['server_id_txt'] = 'Servidor'; $wb['zone_txt'] = 'Zona'; -$wb['name_txt'] = 'Nome'; +$wb['name_txt'] = 'Nome do host'; $wb['type_txt'] = 'Tipo'; -$wb['data_txt'] = 'Dados'; +$wb['data_txt'] = 'Texto'; $wb['ttl_txt'] = 'TTL'; $wb['active_txt'] = 'Ativo'; $wb['limit_dns_record_txt'] = 'O limite de registros dns para esta conta foi alcançado.'; -$wb['no_zone_perm'] = 'Upload (pastebin) para MUC'; -$wb['name_error_empty'] = 'Nome está em branco.'; -$wb['name_error_regex'] = 'Nome é inválido.'; -$wb['data_error_empty'] = 'Dados está em branco.'; -$wb['data_error_regex'] = 'Dados é inválido.'; -$wb['ttl_range_error'] = 'O ttl mÃnimo são 60 segundos.'; +$wb['no_zone_perm'] = 'Você não tem permissão para adicionar registros dns nesta zona.'; +$wb['name_error_empty'] = 'O nome do host está em branco.'; +$wb['name_error_regex'] = 'O nome do host possui formato inválido (somente nomes canônicos são suportados).'; +$wb['data_error_empty'] = 'Texto está em branco.'; +$wb['data_error_regex'] = 'Texto possui formato inválido.'; +$wb['ttl_range_error'] = 'O TTL mÃnimo são 60 segundos.'; ?> diff --git a/interface/web/dns/lib/lang/br_dns_mx.lng b/interface/web/dns/lib/lang/br_dns_mx.lng index 30116f16b2..45b721c1a8 100644 --- a/interface/web/dns/lib/lang/br_dns_mx.lng +++ b/interface/web/dns/lib/lang/br_dns_mx.lng @@ -1,18 +1,18 @@ <?php $wb['server_id_txt'] = 'Servidor'; $wb['zone_txt'] = 'Zona'; -$wb['name_txt'] = 'Nome'; +$wb['name_txt'] = 'Nome do host'; $wb['type_txt'] = 'Tipo'; -$wb['data_txt'] = 'Nome do servidor de e-mails'; +$wb['data_txt'] = 'Nome do servidor de e-mail'; $wb['aux_txt'] = 'Prioridade'; $wb['ttl_txt'] = 'TTL'; $wb['active_txt'] = 'Ativo'; -$wb['limit_dns_record_txt'] = 'O limite de zonas dns para esta conta foi alcançado.'; -$wb['no_zone_perm'] = 'Você não tem permissão para adicionar registros a esta zona dns.'; -$wb['name_error_empty'] = 'Nome está em branco.'; -$wb['name_error_regex'] = 'Nome é inválido.'; -$wb['data_error_empty'] = 'Nome do servidor de e-mails está em branco.'; -$wb['data_error_regex'] = 'Nome do servidor de e-mails é inválido.'; +$wb['limit_dns_record_txt'] = 'O limite de registros dns para esta conta foi alcançado.'; +$wb['no_zone_perm'] = 'Você não tem permissão para adicionar registros dns nesta zona.'; +$wb['name_error_empty'] = 'O nome do host está em branco.'; +$wb['name_error_regex'] = 'O nome do host possui formato inválido (somente nomes canônicos são suportados).'; +$wb['data_error_empty'] = 'O nome do servidor de e-mails está em branco.'; +$wb['data_error_regex'] = 'O nome do servidor de e-mails possui formato inválido.'; $wb['duplicate_mx_record_txt'] = 'Registro MX duplicado.'; -$wb['ttl_range_error'] = 'O ttl minÃmo são 60 segundos.'; +$wb['ttl_range_error'] = 'O TTL mÃnimo são 60 segundos.'; ?> diff --git a/interface/web/dns/lib/lang/br_dns_ns.lng b/interface/web/dns/lib/lang/br_dns_ns.lng index 5b3b03a809..d83d0f7b8a 100644 --- a/interface/web/dns/lib/lang/br_dns_ns.lng +++ b/interface/web/dns/lib/lang/br_dns_ns.lng @@ -3,14 +3,14 @@ $wb['server_id_txt'] = 'Servidor'; $wb['zone_txt'] = 'Zona'; $wb['name_txt'] = 'Zona'; $wb['type_txt'] = 'Tipo'; -$wb['data_txt'] = 'Servidor de nomes'; +$wb['data_txt'] = 'Nome do servidor'; $wb['ttl_txt'] = 'TTL'; $wb['active_txt'] = 'Ativo'; -$wb['limit_dns_record_txt'] = 'O limite de zonas dns para esta conta foi alcançado.'; -$wb['no_zone_perm'] = 'Você não tem permissão para adicionar registros a esta zona dns.'; -$wb['name_error_empty'] = 'Zona está em branco.'; -$wb['name_error_regex'] = 'Zona inválida.'; -$wb['data_error_empty'] = 'Nome está em branco.'; -$wb['data_error_regex'] = 'Nome é inválido.'; -$wb['ttl_range_error'] = 'O ttl mÃnimo são 60 segundos.'; +$wb['limit_dns_record_txt'] = 'O limite de registros dns para esta conta foi alcançado.'; +$wb['no_zone_perm'] = 'Você não tem permissão para adicionar registros dns nesta zona.'; +$wb['name_error_empty'] = 'A zona está em branco.'; +$wb['name_error_regex'] = 'A zona possui formato inválido.'; +$wb['data_error_empty'] = 'Nome do servidor está em branco.'; +$wb['data_error_regex'] = 'Nome do servidor possui formato inválido.'; +$wb['ttl_range_error'] = 'O TTL mÃnimo são 60 segundos.'; ?> diff --git a/interface/web/dns/lib/lang/br_dns_ptr.lng b/interface/web/dns/lib/lang/br_dns_ptr.lng index cfb7eddd7f..b6214a62e8 100644 --- a/interface/web/dns/lib/lang/br_dns_ptr.lng +++ b/interface/web/dns/lib/lang/br_dns_ptr.lng @@ -3,14 +3,14 @@ $wb['server_id_txt'] = 'Servidor'; $wb['zone_txt'] = 'Zona'; $wb['name_txt'] = 'Nome'; $wb['type_txt'] = 'Tipo'; -$wb['data_txt'] = 'Nome reverso'; +$wb['data_txt'] = 'Nome canônico para o nome do host'; $wb['ttl_txt'] = 'TTL'; $wb['active_txt'] = 'Ativo'; -$wb['limit_dns_record_txt'] = 'O limite de zonas dns para esta conta foi alcançado.'; -$wb['no_zone_perm'] = 'Você não tem permissão para adicionar registros a esta zona dns.'; +$wb['limit_dns_record_txt'] = 'O limite de registros dns para esta conta foi alcançado.'; +$wb['no_zone_perm'] = 'Você não tem permissão para adicionar registros dns nesta zona.'; $wb['name_error_empty'] = 'O nome está em branco.'; -$wb['name_error_regex'] = 'O nome é inválido.'; -$wb['data_error_empty'] = 'Endereço IP está em branco.'; -$wb['data_error_regex'] = 'Endereço IP é inválido.'; -$wb['ttl_range_error'] = 'O ttl mÃnimo são 60 segundos.'; +$wb['name_error_regex'] = 'O nome possui formato inválido.'; +$wb['data_error_empty'] = 'O nome canônico está em branco.'; +$wb['data_error_regex'] = 'O nome canônico possui formato inválido.'; +$wb['ttl_range_error'] = 'O TTL mÃnimo são 60 segundos.'; ?> diff --git a/interface/web/dns/lib/lang/br_dns_rp.lng b/interface/web/dns/lib/lang/br_dns_rp.lng index d8f1cad2a5..4f782fb4a0 100644 --- a/interface/web/dns/lib/lang/br_dns_rp.lng +++ b/interface/web/dns/lib/lang/br_dns_rp.lng @@ -1,16 +1,16 @@ <?php $wb['server_id_txt'] = 'Servidor'; $wb['zone_txt'] = 'Zona'; -$wb['name_txt'] = 'Nome'; +$wb['name_txt'] = 'Nome do host'; $wb['type_txt'] = 'Tipo'; -$wb['data_txt'] = 'Responsável'; +$wb['data_txt'] = 'Responsável técnico'; $wb['ttl_txt'] = 'TTL'; $wb['active_txt'] = 'Ativo'; $wb['limit_dns_record_txt'] = 'O limite de registros dns para esta conta foi alcançado.'; -$wb['no_zone_perm'] = 'Você não tem permissão para adicionar registros a esta zona dns.'; -$wb['name_error_empty'] = 'Nome está em branco.'; -$wb['name_error_regex'] = 'Nome é inválido.'; -$wb['data_error_empty'] = 'Responsável está em branco.'; -$wb['data_error_regex'] = 'Responsável é inválido.'; -$wb['ttl_range_error'] = 'O ttl mÃnimo são 60 segundos.'; +$wb['no_zone_perm'] = 'Você não tem permissão para adicionar registros dns nesta zona.'; +$wb['name_error_empty'] = 'O nome do host está em branco.'; +$wb['name_error_regex'] = 'O nome do host possui formato inválido (somente nomes canônicos são suportados).'; +$wb['data_error_empty'] = 'Responsável técnico está em branco.'; +$wb['data_error_regex'] = 'Responsável técnico possui formato inválido.'; +$wb['ttl_range_error'] = 'O TTL mÃnimo são 60 segundos.'; ?> diff --git a/interface/web/dns/lib/lang/br_dns_slave.lng b/interface/web/dns/lib/lang/br_dns_slave.lng index 336164442c..a71e64c4f2 100644 --- a/interface/web/dns/lib/lang/br_dns_slave.lng +++ b/interface/web/dns/lib/lang/br_dns_slave.lng @@ -1,17 +1,17 @@ <?php $wb['server_id_txt'] = 'Servidor'; -$wb['origin_txt'] = 'Zona dns'; -$wb['ns_txt'] = 'NS'; +$wb['origin_txt'] = 'Zona DNS'; +$wb['secondary_zone_txt'] = 'Zona DNS secundária'; +$wb['ns_txt'] = 'NS (Endereço IP)'; $wb['active_txt'] = 'Ativo'; $wb['limit_dns_slave_zone_txt'] = 'O limite de zonas dns secundárias para esta conta foi alcançado.'; $wb['client_txt'] = 'Cliente'; -$wb['xfer_txt'] = 'Permitir transferência da zona para estes IPs (IPs separados por vÃrgulas)'; +$wb['xfer_txt'] = 'Permitir transferência de zonas para <br />Endereço(s) IP(s) (lista de endereços, separados por vÃrgula)'; $wb['server_id_error_empty'] = 'Nenhum servidor selecionado.'; $wb['origin_error_empty'] = 'Zona está em branco.'; -$wb['origin_error_unique'] = 'Já existe um registro igual para esta zona.'; -$wb['origin_error_regex'] = 'Zona inválida.'; -$wb['ns_error_regex'] = 'Registro NS é inválido.'; +$wb['origin_error_unique'] = 'Já existe este registro dns nesta zona.'; +$wb['origin_error_regex'] = 'Zona possui um formato inválido.'; +$wb['ns_error_regex'] = 'O NS possui formato inválido.'; $wb['eg_domain_tld'] = 'ex.: dominio.com.br.'; -$wb['ipv4_form_txt'] = 'Separar múltiplos endereços IP por vÃrgulas'; -$wb['secondary_zone_txt'] = 'Zona dns secundária'; +$wb['ipv4_form_txt'] = 'Separar múltiplos IPs com vÃrgulas.'; ?> diff --git a/interface/web/dns/lib/lang/br_dns_slave_admin_list.lng b/interface/web/dns/lib/lang/br_dns_slave_admin_list.lng index b691471041..9b4c7e07ef 100644 --- a/interface/web/dns/lib/lang/br_dns_slave_admin_list.lng +++ b/interface/web/dns/lib/lang/br_dns_slave_admin_list.lng @@ -1,10 +1,10 @@ <?php -$wb['list_head_txt'] = 'Zonas dns secundárias'; +$wb['list_head_txt'] = 'Zonas DNS Secundárias'; $wb['active_txt'] = 'Ativo'; $wb['server_id_txt'] = 'Servidor'; $wb['origin_txt'] = 'Zona'; $wb['ns_txt'] = 'NS'; -$wb['add_new_record_txt'] = 'Adicionar nova zona'; +$wb['add_new_record_txt'] = 'Adicionar nova zona dns secundária'; $wb['eg_domain_tld'] = 'ex.: dominio.com.br.'; $wb['sys_groupid_txt'] = 'Cliente'; ?> diff --git a/interface/web/dns/lib/lang/br_dns_slave_list.lng b/interface/web/dns/lib/lang/br_dns_slave_list.lng index 5ff54311a8..adf14dfdc7 100644 --- a/interface/web/dns/lib/lang/br_dns_slave_list.lng +++ b/interface/web/dns/lib/lang/br_dns_slave_list.lng @@ -1,9 +1,9 @@ <?php -$wb['list_head_txt'] = 'Zonas dns secundárias'; +$wb['list_head_txt'] = 'Zonas secundárias'; $wb['active_txt'] = 'Ativo'; $wb['server_id_txt'] = 'Servidor'; $wb['origin_txt'] = 'Zona'; $wb['ns_txt'] = 'NS'; -$wb['add_new_record_txt'] = 'Adicionar nova zona'; +$wb['add_new_record_txt'] = 'Adicionar nova zona dns secundária'; $wb['eg_domain_tld'] = 'ex.: dominio.com.br.'; ?> diff --git a/interface/web/dns/lib/lang/br_dns_soa.lng b/interface/web/dns/lib/lang/br_dns_soa.lng index fcad62b44d..f5385c4706 100644 --- a/interface/web/dns/lib/lang/br_dns_soa.lng +++ b/interface/web/dns/lib/lang/br_dns_soa.lng @@ -2,43 +2,43 @@ $wb['server_id_txt'] = 'Servidor'; $wb['origin_txt'] = 'Zona (SOA)'; $wb['ns_txt'] = 'NS'; -$wb['mbox_txt'] = 'e-mail'; +$wb['mbox_txt'] = 'e-Mail'; $wb['serial_txt'] = 'Serial'; $wb['refresh_txt'] = 'Atualizar'; $wb['retry_txt'] = 'Repetir'; $wb['expire_txt'] = 'Expirar'; -$wb['minimum_txt'] = 'MinÃmo'; +$wb['minimum_txt'] = 'MÃnimo'; $wb['ttl_txt'] = 'TTL'; -$wb['xfer_txt'] = 'Permitir transferências de zona para estes IPs (IPs separados por vÃrgula).'; +$wb['xfer_txt'] = 'Permitir transferências de zonas para <br />Endereço(s) IP(s) (lista de endereços, separados por vÃrgula)'; $wb['active_txt'] = 'Ativo'; +$wb['dnssec_info_txt'] = 'O campo DS DNSSEC para o registro'; +$wb['dnssec_wanted_txt'] = 'Zona assinada (DNSSEC)'; +$wb['dnssec_wanted_info'] = 'Ao desativar o DNSSEC as chaves não serão excluÃdas se o DNSSEC tiver sido ativado anteriormente e as chaves já tiverem sido geradas, mas a zona não será mais entregue no formato assinado posteriormente. Se você usa o PowerDNS, as chaves serão excluÃdas!'; $wb['limit_dns_zone_txt'] = 'O limite de zonas dns para esta conta foi alcançado.'; $wb['client_txt'] = 'Cliente'; -$wb['no_zone_perm'] = 'Você não tem permissão para adicionar registros a esta zona dns.'; -$wb['server_id_error_empty'] = 'Servidor não selecionado.'; +$wb['no_zone_perm'] = 'Você não tem permissão para adicionar registros dns nesta zona.'; +$wb['server_id_error_empty'] = 'Nenhum servidor selecionado'; $wb['origin_error_empty'] = 'Zona está em branco.'; -$wb['origin_error_unique'] = 'Este registro já existe nesta zona.'; -$wb['origin_error_regex'] = 'Zona inválida.'; -$wb['ns_error_regex'] = 'NS é inválido.'; -$wb['mbox_error_empty'] = 'Endereço de e-mail está em branco.'; -$wb['mbox_error_regex'] = 'Endereço de e-mail é inválido.'; +$wb['origin_error_unique'] = 'Já existe este registro dns nesta zona.'; +$wb['origin_error_regex'] = 'A zona dns possui formato inválido.'; +$wb['ns_error_regex'] = 'O registro NS possui formato inválido.'; +$wb['mbox_error_empty'] = 'O e-mail está em branco.'; +$wb['mbox_error_regex'] = 'O e-mail possui formato inválido.'; $wb['also_notify_txt'] = 'Também notificar'; -$wb['also_notify_error_regex'] = 'Por favor, insira um endereço IP.'; +$wb['also_notify_error_regex'] = 'Também notificar: Por favor, use um endereço IP.'; +$wb['xfer_error_regex'] = 'Xfer: Por favor use um ou mais endereço(s) IP, separado por vÃrgula ou use a palavra reservada: any'; $wb['update_acl_txt'] = 'Atualizar ACL'; $wb['seconds_txt'] = 'Segundos'; $wb['eg_domain_tld'] = 'ex.: dominio.com.br'; $wb['eg_ns1_domain_tld'] = 'ex.: ns1.dominio.com.br'; -$wb['eg_webmaster_domain_tld'] = 'ex.: postmaster@dominio.com.br'; -$wb['The Domain can not be changed. Please ask your Administrator if you want to change the domain name.'] = 'O domÃnio não pode ser modificado. Por favor, entre em contato com o administrador do sistema se você deseja modificar este domÃnio.'; -$wb['refresh_range_error'] = 'Tempo mÃnimo de atualizações (refresh) são 60 segundos.'; -$wb['retry_range_error'] = 'Tempo mÃnimo de repetições (retry) são 60 segundos.'; -$wb['expire_range_error'] = 'Tempo mÃnimo para expirar (expire) são 60 segundos.'; -$wb['minimum_range_error'] = 'Tempo mÃnimo (minimum) são 60 segundos.'; -$wb['ttl_range_error'] = 'O ttl mÃnimo são 60 segundos.'; -$wb['xfer_error_regex'] = 'Também notificar: Por favor, insira um endereço IP.'; -$wb['dnssec_info_txt'] = 'Registro para DNSSEC (DS-Data)'; -$wb['dnssec_wanted_txt'] = 'Zona assinada (DNSSEC)'; -$wb['dnssec_wanted_info'] = 'Quando desabilitar o DNSSEC as chaves não são eliminadas mas a zona não será disponibilizada assinada. Se você usar o PowerDNS, as chaves serão excluÃdas!'; -$wb['error_not_allowed_server_id'] = 'O servidor selecionado não tem permissão para esta conta.'; -$wb['soa_cannot_be_changed_txt'] = 'A zona SOA não pode ser modificada. Entre em contato com o administrador para alterar esta zona.'; +$wb['eg_webmaster_domain_tld'] = 'ex.: hostmaster@dominio.com.br'; +$wb['The Domain can not be changed. Please ask your Administrator if you want to change the domain name.'] = 'O domÃnio não pode ser alterado. Por favor contate o administrador se deseja alterar o domÃnio.'; +$wb['refresh_range_error'] = 'Intervalo mÃnimo entre as atualizações são 60 segundos.'; +$wb['retry_range_error'] = 'Intervalo mÃnimo entre as repetições são 60 segundos.'; +$wb['expire_range_error'] = 'Intervalo mÃnimo para expirar são 60 segundos.'; +$wb['minimum_range_error'] = 'Intervalo mÃnimo são 60 segundos.'; +$wb['ttl_range_error'] = 'Intervalo mÃnimo do TTL são 60 segundos.'; +$wb['error_not_allowed_server_id'] = 'O servidor selecionado não é permitido para esta conta.'; +$wb['soa_cannot_be_changed_txt'] = 'A zona (SOA) não pode ser alterada. Por favor, contate o administrador se deseja alterar esta zona.'; $wb['configuration_error_txt'] = 'ERRO DE CONFIGURAÇÃO'; ?> diff --git a/interface/web/dns/lib/lang/br_dns_soa_admin_list.lng b/interface/web/dns/lib/lang/br_dns_soa_admin_list.lng index dd3169a830..26e8062d53 100644 --- a/interface/web/dns/lib/lang/br_dns_soa_admin_list.lng +++ b/interface/web/dns/lib/lang/br_dns_soa_admin_list.lng @@ -1,11 +1,12 @@ <?php -$wb['list_head_txt'] = 'Zonas dns'; +$wb['list_head_txt'] = 'Zonas DNS'; $wb['active_txt'] = 'Ativo'; $wb['server_id_txt'] = 'Servidor'; $wb['origin_txt'] = 'Zona'; $wb['ns_txt'] = 'NS'; -$wb['mbox_txt'] = 'e-mail'; -$wb['add_new_record_wizard_txt'] = 'Adicionar nova zona dns através do assistente'; -$wb['add_new_record_txt'] = 'Adicionar nova zona dns manualmente'; +$wb['mbox_txt'] = 'e-Mail'; +$wb['add_new_record_wizard_txt'] = 'Adicionar zona dns através do assistente'; +$wb['add_new_record_txt'] = 'Adicionar zona dns manualmente'; +$wb['zone_file_import_txt'] = 'Importar arquivo de zona'; $wb['sys_groupid_txt'] = 'Cliente'; ?> diff --git a/interface/web/dns/lib/lang/br_dns_soa_list.lng b/interface/web/dns/lib/lang/br_dns_soa_list.lng index ddb24697e3..969df1d2a9 100644 --- a/interface/web/dns/lib/lang/br_dns_soa_list.lng +++ b/interface/web/dns/lib/lang/br_dns_soa_list.lng @@ -1,11 +1,10 @@ <?php -$wb['list_head_txt'] = 'Zonas dns'; +$wb['list_head_txt'] = 'Zonas DNS'; $wb['active_txt'] = 'Ativo'; $wb['server_id_txt'] = 'Servidor'; $wb['origin_txt'] = 'Zona'; $wb['ns_txt'] = 'NS'; -$wb['mbox_txt'] = 'e-mail'; -$wb['add_new_record_txt'] = 'Adicionar nova zona dns'; +$wb['mbox_txt'] = 'e-Mail'; $wb['add_new_record_wizard_txt'] = 'Adicionar nova zona dns através do assistente'; -$wb['import_zone_file_txt'] = 'Importar arquivo de zona'; +$wb['add_new_record_txt'] = 'Adicionar nova zona dns manualmente'; ?> diff --git a/interface/web/dns/lib/lang/br_dns_spf.lng b/interface/web/dns/lib/lang/br_dns_spf.lng index 0c56cd32ed..739e59cf41 100644 --- a/interface/web/dns/lib/lang/br_dns_spf.lng +++ b/interface/web/dns/lib/lang/br_dns_spf.lng @@ -1,25 +1,25 @@ <?php $wb['data_txt'] = 'Registro SPF'; $wb['spf_mechanism_txt'] = 'Mecanismo SPF'; -$wb['spf_mechanism_pass_txt'] = 'Pass - permite e-mail de outros remetentes'; -$wb['spf_mechanism_fail_txt'] = 'Fail - rejeita e-mails de outros remetentes'; +$wb['spf_mechanism_pass_txt'] = 'Pass - permitir e-mails de outros remetentes'; +$wb['spf_mechanism_fail_txt'] = 'Fail - rejeitar e-mails de outros remetentes'; $wb['spf_mechanism_softfail_txt'] = 'SoftFail - permite e-mails de outros remetentes mas marca os mesmos'; $wb['spf_mechanism_neutral_txt'] = 'Neutral - não faz nada'; $wb['spf_mx_txt'] = 'Permite servidores listados como MX enviar e-mail deste domÃnio'; $wb['spf_a_txt'] = 'Permite o endereço IP atual do domÃnio enviar e-mails deste domÃnio'; $wb['spf_ip_txt'] = 'Endereço IP adicional no formato CIDR pode entregar ou retransmitir e-mails para este domÃnio'; -$wb['spf_ip_note_txt'] = '(endereços IPs separados por espaços em branco)'; -$wb['spf_invalid_ip_txt'] = 'Endereço IP é inválido.'; +$wb['spf_ip_note_txt'] = '(endereços IPs separados por espaços)'; +$wb['spf_invalid_ip_txt'] = 'Endereço IP inválido.'; $wb['spf_hostname_txt'] = 'Qualquer outro servidor pode entregar ou retransmitir e-mails para este domÃnio'; -$wb['spf_hostname_note_txt'] = '(servidors separados por espaço em branco)'; -$wb['spf_invalid_hostname_txt'] = 'Hospedeiro inválido'; +$wb['spf_hostname_note_txt'] = '(servidores separados por espaço)'; +$wb['spf_invalid_hostname_txt'] = 'O nome do host é inválido.'; $wb['spf_domain_txt'] = 'Qualquer domÃnio pode entregar ou retransmitir e-mails para este domÃnio'; -$wb['spf_domain_note_txt'] = '(domÃnios separados por espaço em branco)'; -$wb['spf_invalid_domain_txt'] = 'DomÃnio é inválido.'; +$wb['spf_domain_note_txt'] = '(domÃnios separados por espaço)'; +$wb['spf_invalid_domain_txt'] = 'O domÃnio é inválido.'; $wb['ttl_txt'] = 'TTL'; $wb['active_txt'] = 'Ativo'; -$wb['record_exists_txt'] = 'Registro DS já existe.'; +$wb['record_exists_txt'] = 'Registro dns já existe.'; $wb['limit_dns_record_txt'] = 'O limite de registros dns para esta conta foi alcançado.'; -$wb['no_zone_perm'] = 'Você não tem permissão para adicionar registros a esta zona dns.'; -$wb['ttl_range_error'] = 'O ttl mÃnimo são 60 segundos.'; +$wb['no_zone_perm'] = 'Você não tem permissão para adicionar registros dns nesta zona.'; +$wb['ttl_range_error'] = 'O TTL mÃnimo são 60 segundos.'; ?> diff --git a/interface/web/dns/lib/lang/br_dns_srv.lng b/interface/web/dns/lib/lang/br_dns_srv.lng index fefec736ee..97d2604896 100644 --- a/interface/web/dns/lib/lang/br_dns_srv.lng +++ b/interface/web/dns/lib/lang/br_dns_srv.lng @@ -1,20 +1,20 @@ <?php $wb['server_id_txt'] = 'Servidor'; $wb['zone_txt'] = 'Zona'; -$wb['name_txt'] = 'Nome'; +$wb['name_txt'] = 'Nome do host'; $wb['type_txt'] = 'Tipo'; $wb['target_txt'] = 'Alvo'; $wb['weight_txt'] = 'Peso'; $wb['port_txt'] = 'Porta'; $wb['ttl_txt'] = 'TTL'; $wb['active_txt'] = 'Ativo'; -$wb['limit_dns_record_txt'] = 'O limite de zonas dns para esta conta foi alcançado.'; -$wb['no_zone_perm'] = 'Você não tem permissão para adicionar registros a esta zona dns.'; -$wb['name_error_empty'] = 'Nome está em branco.'; -$wb['name_error_regex'] = 'Nome é inválido.'; -$wb['data_error_empty'] = 'Servidor está em branco.'; -$wb['data_error_regex'] = 'Servidor é inválido.'; -$wb['srv_error_regex'] = 'Registro do servidor é inválido. São necessários 3 textos separados por espaços.'; $wb['aux_txt'] = 'Prioridade'; -$wb['ttl_range_error'] = 'O ttl mÃnimo são 60 segundos.'; +$wb['limit_dns_record_txt'] = 'O limite de registros dns para esta conta foi alcançado.'; +$wb['no_zone_perm'] = 'Você não tem permissão para adicionar registros dns nesta zona.'; +$wb['name_error_empty'] = 'O nome do host está em branco.'; +$wb['name_error_regex'] = 'O nome do host possui formato inválido (somente nomes canônicos são suportados).'; +$wb['data_error_empty'] = 'Registro SVR está em branco.'; +$wb['data_error_regex'] = 'Registro SVR possui formato inválido.'; +$wb['srv_error_regex'] = 'O formato do registro SVR é inválido. O registro SVR deve conter 3 cadeias de texto separados por espaços.'; +$wb['ttl_range_error'] = 'O TTL mÃnimo são 60 segundos.'; ?> diff --git a/interface/web/dns/lib/lang/br_dns_template.lng b/interface/web/dns/lib/lang/br_dns_template.lng index 8b099ceb14..81a8f190ed 100644 --- a/interface/web/dns/lib/lang/br_dns_template.lng +++ b/interface/web/dns/lib/lang/br_dns_template.lng @@ -1,7 +1,7 @@ <?php $wb['name_txt'] = 'Nome'; -$wb['fields_txt'] = 'Campos'; +$wb['fields_txt'] = 'O campos'; $wb['template_txt'] = 'Gabarito'; $wb['visible_txt'] = 'VisÃvel'; -$wb['placeholder_txt'] = 'Placeholder'; +$wb['placeholder_txt'] = 'Ãrea Reservada'; ?> diff --git a/interface/web/dns/lib/lang/br_dns_template_list.lng b/interface/web/dns/lib/lang/br_dns_template_list.lng index f6455314d6..8ec480d727 100644 --- a/interface/web/dns/lib/lang/br_dns_template_list.lng +++ b/interface/web/dns/lib/lang/br_dns_template_list.lng @@ -1,6 +1,6 @@ <?php -$wb['list_head_txt'] = 'Assistente de gabaritos dns'; +$wb['list_head_txt'] = 'Gabarito do Assistente DNS'; $wb['visible_txt'] = 'VisÃvel'; $wb['name_txt'] = 'Nome'; -$wb['add_new_record_txt'] = 'Adicionar novo gabarito'; +$wb['add_new_record_txt'] = 'Adicionar novo registro'; ?> diff --git a/interface/web/dns/lib/lang/br_dns_tlsa.lng b/interface/web/dns/lib/lang/br_dns_tlsa.lng index 5e1bf2256e..4037ebe595 100644 --- a/interface/web/dns/lib/lang/br_dns_tlsa.lng +++ b/interface/web/dns/lib/lang/br_dns_tlsa.lng @@ -1,16 +1,16 @@ <?php $wb['server_id_txt'] = 'Servidor'; $wb['zone_txt'] = 'Zona'; -$wb['name_txt'] = 'Descritor de serviço'; +$wb['name_txt'] = 'Descritor do serviço'; $wb['type_txt'] = 'Tipo'; $wb['data_txt'] = 'Dados TLSA'; $wb['ttl_txt'] = 'TTL'; $wb['active_txt'] = 'Ativo'; $wb['limit_dns_record_txt'] = 'O limite de registros dns para esta conta foi alcançado.'; -$wb['no_zone_perm'] = 'Você não tem permissão para adicionar registros a esta zona dns.'; -$wb['name_error_empty'] = 'Descritor de serviço está em branco.'; -$wb['name_error_regex'] = 'Descritor de serviço é inválido. Formato correto: \\"_<port>._(tcp|udp).<hostname>\\".'; +$wb['no_zone_perm'] = 'Você não tem permissão para adicionar registros dns nesta zona.'; +$wb['name_error_empty'] = 'O nome do host está em branco.'; +$wb['name_error_regex'] = 'O nome do host possui formato inválido (somente nomes canônicos são suportados). Correto: _<port>._(tcp|udp).<hostname>'; $wb['data_error_empty'] = 'Dados TLSA está em branco.'; -$wb['data_error_regex'] = 'Dados TLSA são inválidos. Formato correto: \\"n n n HASH\\".'; -$wb['ttl_range_error'] = 'O ttl mÃnimo são 60 segundos.'; +$wb['data_error_regex'] = 'Formato dos dados TLSA inválido. Correto: n n n HASH'; +$wb['ttl_range_error'] = 'O TTL mÃnimo são 60 segundos.'; ?> diff --git a/interface/web/dns/lib/lang/br_dns_txt.lng b/interface/web/dns/lib/lang/br_dns_txt.lng index 356bbfa5f2..641cb9f2e1 100644 --- a/interface/web/dns/lib/lang/br_dns_txt.lng +++ b/interface/web/dns/lib/lang/br_dns_txt.lng @@ -1,19 +1,19 @@ <?php $wb['server_id_txt'] = 'Servidor'; $wb['zone_txt'] = 'Zona'; -$wb['name_txt'] = 'Nome'; +$wb['name_txt'] = 'Nome do host'; $wb['type_txt'] = 'Tipo'; $wb['data_txt'] = 'Texto'; $wb['ttl_txt'] = 'TTL'; $wb['active_txt'] = 'Ativo'; -$wb['limit_dns_record_txt'] = 'O limite de zonas dns para esta conta foi alcançado.'; -$wb['no_zone_perm'] = 'Você não tem permissão para adicionar registros a esta zona dns.'; -$wb['name_error_empty'] = 'Nome está em branco.'; -$wb['name_error_regex'] = 'Nome é inválido.'; -$wb['data_error_empty'] = 'Endereço IP está em branco.'; -$wb['data_error_regex'] = 'Endereço IP é inválido.'; -$wb['ttl_range_error'] = 'O ttl mÃnimo são 60 segundos.'; -$wb['invalid_type_dkim'] = 'DKIM não permitido. Use o botão DKIM.'; -$wb['invalid_type_dmarc'] = 'DMARC não permitido. Use o botão DMARC.'; -$wb['invalid_type_spf'] = 'SPF não permitido. Use o botão SPF.'; +$wb['limit_dns_record_txt'] = 'O limite de registros dns para esta conta foi alcançado.'; +$wb['no_zone_perm'] = 'Você não tem permissão para adicionar registros dns nesta zona.'; +$wb['name_error_empty'] = 'O nome do host está em branco.'; +$wb['name_error_regex'] = 'O nome do host possui formato inválido (somente nomes canônicos são suportados).'; +$wb['data_error_empty'] = 'O texto está em branco.'; +$wb['data_error_regex'] = 'O texto é inválido.'; +$wb['ttl_range_error'] = 'O TTL mÃnimo são 60 segundos.'; +$wb['invalid_type_dkim'] = 'Sem permissão para DKIM. Use o botão DKIM.'; +$wb['invalid_type_dmarc'] = 'Sem permissão para DMARC. Use o botão DMARC.'; +$wb['invalid_type_spf'] = 'Sem permissão para SPF. Use o botão SPF.'; ?> diff --git a/interface/web/dns/lib/lang/br_dns_wizard.lng b/interface/web/dns/lib/lang/br_dns_wizard.lng index 5e20f05593..d132d4646b 100644 --- a/interface/web/dns/lib/lang/br_dns_wizard.lng +++ b/interface/web/dns/lib/lang/br_dns_wizard.lng @@ -1,45 +1,45 @@ <?php +$wb['list_head_txt'] = 'Assistente de zona dns'; +$wb['list_desc_txt'] = 'Adicionar zona dns através do assistente'; +$wb['dns_zone_txt'] = 'Zona DNS'; $wb['template_id_txt'] = 'Gabarito'; $wb['server_id_txt'] = 'Servidor'; $wb['client_txt'] = 'Cliente'; -$wb['btn_save_txt'] = 'Salvar'; +$wb['btn_save_txt'] = 'Adicionar zona dns'; $wb['btn_cancel_txt'] = 'Cancelar'; $wb['domain_txt'] = 'DomÃnio'; -$wb['email_txt'] = 'e-mail'; +$wb['email_txt'] = 'e-Mail'; +$wb['dkim_txt'] = 'DKIM'; +$wb['dnssec_txt'] = 'Assinar zona (DNSSEC)'; $wb['ns1_txt'] = 'NS 1'; $wb['ns2_txt'] = 'NS 2'; $wb['ip_txt'] = 'Endereço IP'; $wb['ipv6_txt'] = 'Endereço IPv6'; -$wb['error_origin_empty'] = 'Origem está em branco.'; +$wb['error_origin_empty'] = 'Origin está em branco.'; $wb['error_ns_empty'] = 'NS está em branco.'; -$wb['error_mbox_empty'] = 'Endereço de e-mail está em branco.'; -$wb['error_refresh_empty'] = 'Atualizar está em branco.'; -$wb['error_retry_empty'] = 'Atualizar está em branco.'; -$wb['error_expire_empty'] = 'Expirar está em branco.'; -$wb['error_minimum_empty'] = 'MinÃmo está em branco.'; -$wb['error_ttl_empty'] = 'TTL está em branco.'; +$wb['error_mbox_empty'] = 'conta de e-mail (mbox) está em branco.'; +$wb['error_refresh_empty'] = 'Atualizar (refresh) está em branco.'; +$wb['error_retry_empty'] = 'Repetir (retry) está em branco.'; +$wb['error_expire_empty'] = 'Expirar (expire) está em branco.'; +$wb['error_minimum_empty'] = 'MÃnimo (minimum) está em branco.'; +$wb['error_ttl_empty'] = 'Tempo (TTL) está em branco.'; $wb['error_domain_empty'] = 'DomÃnio está em branco.'; -$wb['error_ip_empty'] = 'IP está em branco.'; -$wb['error_ipv6_empty'] = 'IPv6 está em branco.'; +$wb['error_ip_empty'] = 'Endereço IP está em branco.'; +$wb['error_ipv6_empty'] = 'Endereço IPv6 está em branco.'; $wb['error_ns1_empty'] = 'NS1 está em branco.'; $wb['error_ns2_empty'] = 'NS2 está em branco.'; $wb['error_email_empty'] = 'Endereço de e-mail está em branco.'; -$wb['error_domain_regex'] = 'DomÃnio contém caracteres inválidos.'; -$wb['error_ns1_regex'] = 'NS1 contém caracteres inválidos.'; -$wb['error_ns2_regex'] = 'NS2 contém caracteres inválidos.'; -$wb['error_email_regex'] = 'Endereço de e-mail é inválido.'; -$wb['dns_zone_txt'] = 'Zona dns'; +$wb['error_domain_regex'] = 'O domÃnio possui caracteres inválidos.'; +$wb['error_ns1_regex'] = 'NS1 possui caracteres inválidos.'; +$wb['error_ns2_regex'] = 'NS2 possui caracteres inválidos.'; +$wb['error_email_regex'] = 'O endereço de e-mail não possui um endereço válido.'; $wb['globalsearch_resultslimit_of_txt'] = 'de'; $wb['globalsearch_resultslimit_results_txt'] = 'resultados'; -$wb['globalsearch_noresults_text_txt'] = 'Sem resultados'; -$wb['globalsearch_noresults_limit_txt'] = '0 resultados'; +$wb['globalsearch_noresults_text_txt'] = 'Sem resultados.'; +$wb['globalsearch_noresults_limit_txt'] = '0 resultado(s)'; $wb['globalsearch_searchfield_watermark_txt'] = 'Pesquisar'; $wb['globalsearch_suggestions_text_txt'] = 'Sugestões'; -$wb['list_head_txt'] = 'Assistente de zona dns'; -$wb['list_desc_txt'] = 'Adicionar zona dns através do assistente'; -$wb['dkim_txt'] = 'DKIM ativo'; $wb['error_no_server_id'] = 'Nenhum servidor selecionado.'; $wb['error_not_allowed_server_id'] = 'O servidor selecionado não é permitido para esta conta.'; -$wb['dnssec_txt'] = 'Zona assinada (DNSSEC)'; $wb['limit_dns_zone_txt'] = 'O limite de zonas dns para esta conta foi alcançado.'; ?> diff --git a/interface/web/dns/lib/lang/tr.lng b/interface/web/dns/lib/lang/tr.lng index a101cf7b2b..a291a5af08 100644 --- a/interface/web/dns/lib/lang/tr.lng +++ b/interface/web/dns/lib/lang/tr.lng @@ -1,4 +1,5 @@ <?php + $wb['DNS'] = 'DNS'; $wb['Zones'] = 'Bölgeler'; $wb['DNS A'] = 'DNS A'; @@ -17,6 +18,6 @@ $wb['DNS TXT'] = 'DNS TXT'; $wb['DNS Wizard'] = 'DNS Yardımcısı'; $wb['Add DNS Zone'] = 'DNS Bölgesi Ekle'; $wb['Templates'] = 'Kalıplar'; -$wb['Secondary Zones'] = 'Ä°kincil Bölgeler'; -$wb['Import Zone File'] = 'Bölge Dosyası Alma'; +$wb['Secondary Zones'] = 'Ä°kincil DNS Bölgeleri'; +$wb['Import Zone File'] = 'Bölge Dosyası İçe Aktarma'; ?> diff --git a/interface/web/dns/lib/lang/tr_dns_a.lng b/interface/web/dns/lib/lang/tr_dns_a.lng index 0cf1414fd8..905ff04744 100644 --- a/interface/web/dns/lib/lang/tr_dns_a.lng +++ b/interface/web/dns/lib/lang/tr_dns_a.lng @@ -2,16 +2,16 @@ $wb['server_id_txt'] = 'Sunucu'; $wb['zone_txt'] = 'Bölge'; $wb['name_txt'] = 'Sunucu Adı'; -$wb['type_txt'] = 'Tip'; +$wb['type_txt'] = 'Tür'; $wb['data_txt'] = 'IP Adresi'; $wb['ttl_txt'] = 'TTL Süresi'; $wb['active_txt'] = 'Etkin'; $wb['limit_dns_record_txt'] = 'Hesabınıza ekleyebileceÄŸiniz en fazla DNS kaydı sınırına ulaÅŸtınız.'; -$wb['no_zone_perm'] = 'Bu DNS bölgesi kaydını ekleme izniniz yok.'; +$wb['no_zone_perm'] = 'Bu DNS bölgesine kayıt ekleme izniniz yok.'; $wb['name_error_empty'] = 'Sunucu adı boÅŸ olamaz.'; $wb['name_error_regex'] = 'Sunucu adı biçimi geçersiz.'; $wb['data_error_empty'] = 'IP Adresi boÅŸ olamaz'; $wb['data_error_duplicate'] = 'Bu A DNS kaydı zaten var'; $wb['ttl_range_error'] = 'En düşük TTL süresi 60 saniyedir.'; -$wb['ip_error_wrong'] = 'IP-Address format invalid'; +$wb['ip_error_wrong'] = 'IP adresi biçimi geçersiz'; ?> diff --git a/interface/web/dns/lib/lang/tr_dns_a_list.lng b/interface/web/dns/lib/lang/tr_dns_a_list.lng index 129b32fdb2..61a4e2a7d3 100644 --- a/interface/web/dns/lib/lang/tr_dns_a_list.lng +++ b/interface/web/dns/lib/lang/tr_dns_a_list.lng @@ -7,7 +7,7 @@ $wb['name_txt'] = 'Ad'; $wb['data_txt'] = 'Veri'; $wb['aux_txt'] = 'Öncelik'; $wb['ttl_txt'] = 'TTL Süresi'; -$wb['type_txt'] = 'Tip'; +$wb['type_txt'] = 'Tür'; $wb['add_new_record_txt'] = 'DNS A Kaydı Ekle'; $wb['page_txt'] = 'Sayfa'; $wb['page_of_txt'] = '/'; diff --git a/interface/web/dns/lib/lang/tr_dns_aaaa.lng b/interface/web/dns/lib/lang/tr_dns_aaaa.lng index b0c28aed41..1726f80a8f 100644 --- a/interface/web/dns/lib/lang/tr_dns_aaaa.lng +++ b/interface/web/dns/lib/lang/tr_dns_aaaa.lng @@ -2,15 +2,15 @@ $wb['server_id_txt'] = 'Sunucu'; $wb['zone_txt'] = 'Bölge'; $wb['name_txt'] = 'Sunucu Adı'; -$wb['type_txt'] = 'Tip'; +$wb['type_txt'] = 'Tür'; $wb['data_txt'] = 'IPv6 Adresleri'; $wb['ttl_txt'] = 'TTL Süresi'; $wb['active_txt'] = 'Etkin'; $wb['limit_dns_record_txt'] = 'Hesabınıza ekleyebileceÄŸiniz en fazla DNS kaydı sınırına ulaÅŸtınız.'; -$wb['no_zone_perm'] = 'Bu DNS bölgesi kaydını ekleme izniniz yok.'; +$wb['no_zone_perm'] = 'Bu DNS bölgesine kayıt ekleme izniniz yok.'; $wb['name_error_empty'] = 'Sunucu adı boÅŸ olamaz.'; -$wb['name_error_regex'] = 'Sunucu adı biçimi geçersiz.'; +$wb['name_error_regex'] = 'Sunucu adının biçimi geçersiz.'; $wb['data_error_empty'] = 'IP Adresi boÅŸ olamaz'; +$wb['ip_error_wrong'] = 'IP adresinin biçimi geçersiz'; $wb['ttl_range_error'] = 'En düşük TTL süresi 60 saniyedir.'; -$wb['ip_error_wrong'] = 'IP-Address format invalid'; ?> diff --git a/interface/web/dns/lib/lang/tr_dns_alias.lng b/interface/web/dns/lib/lang/tr_dns_alias.lng index 9bd6e72ce6..ce78fcf303 100644 --- a/interface/web/dns/lib/lang/tr_dns_alias.lng +++ b/interface/web/dns/lib/lang/tr_dns_alias.lng @@ -2,12 +2,12 @@ $wb['server_id_txt'] = 'Sunucu'; $wb['zone_txt'] = 'Bölge'; $wb['name_txt'] = 'Sunucu Adı'; -$wb['type_txt'] = 'Tip'; +$wb['type_txt'] = 'Tür'; $wb['data_txt'] = 'Hedef Sunucu Adı'; $wb['ttl_txt'] = 'TTL Süresi'; $wb['active_txt'] = 'Etkin'; $wb['limit_dns_record_txt'] = 'Hesabınıza ekleyebileceÄŸiniz en fazla DNS kaydı sınırına ulaÅŸtınız.'; -$wb['no_zone_perm'] = 'Bu DNS bölgesi kaydını ekleme izniniz yok.'; +$wb['no_zone_perm'] = 'Bu DNS bölgesine kayıt ekleme izniniz yok.'; $wb['name_error_empty'] = 'Sunucu adı boÅŸ olamaz.'; $wb['name_error_regex'] = 'Sunucu adının biçimi geçersiz.'; $wb['data_error_empty'] = 'Hedef sunucu adı boÅŸ olamaz'; diff --git a/interface/web/dns/lib/lang/tr_dns_cname.lng b/interface/web/dns/lib/lang/tr_dns_cname.lng index 00366b9695..fa9a497e12 100644 --- a/interface/web/dns/lib/lang/tr_dns_cname.lng +++ b/interface/web/dns/lib/lang/tr_dns_cname.lng @@ -2,12 +2,12 @@ $wb['server_id_txt'] = 'Sunucu'; $wb['zone_txt'] = 'Bölge'; $wb['name_txt'] = 'Sunucu Adı'; -$wb['type_txt'] = 'Tip'; +$wb['type_txt'] = 'Tür'; $wb['data_txt'] = 'Hedef Sunucu Adı'; $wb['ttl_txt'] = 'TTL Süresi'; $wb['active_txt'] = 'Etkin'; $wb['limit_dns_record_txt'] = 'Hesabınıza ekleyebileceÄŸiniz en fazla DNS kaydı sınırına ulaÅŸtınız.'; -$wb['no_zone_perm'] = 'Bu DNS bölge kaydını ekleme izniniz yok.'; +$wb['no_zone_perm'] = 'Bu DNS bölgesine kayıt ekleme izniniz yok.'; $wb['name_error_empty'] = 'Sunucu adı boÅŸ olamaz.'; $wb['name_error_regex'] = 'Sunucu adı biçimi geçersiz.'; $wb['data_error_empty'] = 'Hedef sunucu adı boÅŸ olamaz'; diff --git a/interface/web/dns/lib/lang/tr_dns_dkim.lng b/interface/web/dns/lib/lang/tr_dns_dkim.lng index 4d45fb4fe9..b7ffb1930f 100644 --- a/interface/web/dns/lib/lang/tr_dns_dkim.lng +++ b/interface/web/dns/lib/lang/tr_dns_dkim.lng @@ -1,13 +1,13 @@ <?php -$wb['public_key_txt'] = 'Public-Key'; -$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['data_error_empty'] = 'Public-Key missing'; -$wb['dkim_selector_empty_txt'] = 'DKIM-Selector is empty'; +$wb['public_key_txt'] = 'Herkese Açık Anahtar'; +$wb['ttl_txt'] = 'TTL Süresi'; +$wb['active_txt'] = 'Etkin'; +$wb['record_exists_txt'] = 'DNS kaydı zaten var'; +$wb['dkim_disabled_txt'] = 'Bu e-posta etki alanı için DKIM devre dışı bırakılmış.'; +$wb['limit_dns_record_txt'] = 'Hesabınıza ekleyebileceÄŸiniz en fazla DNS kaydı sınırına ulaÅŸtınız.'; +$wb['no_zone_perm'] = 'Bu DNS bölgesine kayıt ekleme izniniz yok.'; +$wb['ttl_range_error'] = 'En düşük TTL süresi 60 saniyedir.'; +$wb['selector_txt'] = 'DKIM Seçici'; +$wb['data_error_empty'] = 'Herkese açık anahtar eksik'; +$wb['dkim_selector_empty_txt'] = 'DKIM Seçici boÅŸ olamaz'; ?> diff --git a/interface/web/dns/lib/lang/tr_dns_dmarc.lng b/interface/web/dns/lib/lang/tr_dns_dmarc.lng index cf78bb8eed..6e98e94663 100644 --- a/interface/web/dns/lib/lang/tr_dns_dmarc.lng +++ b/interface/web/dns/lib/lang/tr_dns_dmarc.lng @@ -1,50 +1,50 @@ <?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['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_r_txt'] = 'relaxed'; -$wb['dmarc_aspf_s_txt'] = 'strict'; -$wb['dmarc_rf_txt'] = 'Report Format'; -$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['ttl_txt'] = 'TTL'; -$wb['active_txt'] = 'Active'; -$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_more_spf_txt'] = 'More than one active SPF Record'; -$wb['dmarc_invalid_email_txt'] = 'Invalid Email'; -$wb['dmarc_empty_txt'] = 'DMARC Record empty - specify at least one option'; -$wb['record_exists_txt'] = 'DNS-Record already exists'; -$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['data_txt'] = 'DMARC Kaydı'; +$wb['domain_txt'] = 'Etki Alanı'; +$wb['dmarc_policy_txt'] = 'E-posta Alma Ä°lkesi'; +$wb['dmarc_policy_note_txt'] = 'SPF ya da DKIM (DMARC) doÄŸrulaması yapılamadığında Ä°nternet Hizmeti SaÄŸlayıcıların iletileri nasıl iÅŸleyeceÄŸi.'; +$wb['dmarc_policy_none_txt'] = 'iÅŸlem yapılmasın'; +$wb['dmarc_policy_quarantine_txt'] = 'karantinaya alınsın'; +$wb['dmarc_policy_reject_txt'] = 'reddedilsin'; +$wb['dmarc_rua_txt'] = 'Verilerin BildirileceÄŸi Adres'; +$wb['dmarc_rua_note_txt'] = 'Etki alanı için DMARC doÄŸrulamasını geçemeyen iletiler hakkında Ä°nternet Hizmeti SaÄŸlayıcılardan gelen bildirimlerin alınacağı e-posta adresleri (boÅŸluk ile ayırarak yazın).'; +$wb['dmarc_ruf_txt'] = 'Adli BiliÅŸim Verilerinin BildirileceÄŸi Adres'; +$wb['dmarc_ruf_note_txt'] = 'Etki alanı için DMARC doÄŸrulamasını geçemeyen örnek iletilerin alınacağı e-posta adresleri (boÅŸluk ile ayırarak yazın).'; +$wb['dmarc_fo_txt'] = 'Adli biliÅŸim bildirim seçenekleri'; +$wb['dmarc_fo0_txt'] = 'Belirtilen hiç bir kimlik doÄŸrulama yöntemi bir DMARC sonucu alamazsa bildirimler üretilsin.'; +$wb['dmarc_fo1_txt'] = 'Yöntemlerden biri doÄŸrulama yapamazsa bildirimler üretilsin.'; +$wb['dmarc_fod_txt'] = 'DKIM imzası doÄŸrulanamazsa bildirim üretilsin.'; +$wb['dmarc_fos_txt'] = 'SPF baÅŸarısız olursa bildirim gönderilsin.'; +$wb['dmarc_adkim_txt'] = 'DKIM belirteci deÄŸerlendirmesi'; +$wb['dmarc_adkim_note_txt'] = ' seçeneÄŸinde DKIM etki alanı ile e-postanın geldiÄŸi etki alanının bire bir eÅŸleÅŸmesi gerekir'; +$wb['dmarc_adkim_r_txt'] = 'gevÅŸek'; +$wb['dmarc_adkim_s_txt'] = 'sıkı'; +$wb['dmarc_aspf_txt'] = 'SPF belirteci deÄŸerlendirmesi'; +$wb['dmarc_aspf_note_txt'] = ' seçeneÄŸinde SPF etki alanı ile e-postanın geldiÄŸi etki alanının bire bir eÅŸleÅŸmesi gerekir'; +$wb['dmarc_aspf_r_txt'] = 'gevÅŸek'; +$wb['dmarc_aspf_s_txt'] = 'sıkı'; +$wb['dmarc_rf_txt'] = 'Bildirim Biçimi'; +$wb['dmarc_rf_afrf_txt'] = 'Kimlik DoÄŸrulama Sorunlarını Bildirme Biçimi'; +$wb['dmarc_rf_iodef_txt'] = 'Olay Nesnesi Açıklama DeÄŸiÅŸimi Biçimi'; +$wb['dmarc_pct_txt'] = 'Ä°lkenin Uygulanacağı Yüzde'; +$wb['dmarc_pct_note_txt'] = 'Ä°nternet Hizmeti saÄŸlayıcı tarafından denetlenmesini istediÄŸiniz iletilerin yüzdesi (varsayılan %100).'; +$wb['dmarc_ri_txt'] = 'Bildirim Sıklığı'; +$wb['dmarc_ri_note_txt'] = 'Saniye cinsinden bildirim raporlarının üretilme sıklığı (varsayılan deÄŸer, bir güne karşılık 86400).'; +$wb['dmarc_sp_txt'] = 'Alt Etki Alanı Ä°lkesi (Varsayılan deÄŸerler etki alanı ile aynıdır).'; +$wb['dmarc_sp_same_txt'] = 'etki alanı ile aynı'; +$wb['dmarc_sp_none_txt'] = 'iÅŸlem yapılmasın'; +$wb['dmarc_sp_quarantine_txt'] = 'karantiya atılsın'; +$wb['dmarc_sp_reject_txt'] = 'reddedilsin'; +$wb['ttl_txt'] = 'TTL Süresi'; +$wb['active_txt'] = 'Etkin'; +$wb['dmarc_policy_error_txt'] = 'DKIM ile imzalanmış e-postalar için yalnız ilkesi seçilebilir.'; +$wb['dmarc_no_dkim_txt'] = 'Etkin bir DKIM kaydı yok.'; +$wb['dmarc_no_spf_txt'] = 'Etkin bir SPF kaydı yok.'; +$wb['dmarc_more_spf_txt'] = 'Birden çok etkin SPF kaydı var'; +$wb['dmarc_invalid_email_txt'] = 'E-posta Adresi Geçersiz'; +$wb['dmarc_empty_txt'] = 'DMARC kaydı boÅŸ - en az bir seçenek seçin'; +$wb['record_exists_txt'] = 'DNS kaydı zaten var'; +$wb['limit_dns_record_txt'] = 'Hesabınıza ekleyebileceÄŸiniz en fazla DNS kaydı sınırına ulaÅŸtınız.'; +$wb['no_zone_perm'] = 'Bu DNS bölgesine kayıt ekleme izniniz yok.'; +$wb['ttl_range_error'] = 'En düşük TTL süresi 60 saniyedir.'; ?> diff --git a/interface/web/dns/lib/lang/tr_dns_ds.lng b/interface/web/dns/lib/lang/tr_dns_ds.lng index c3622dc5b5..4ab7447d0a 100644 --- a/interface/web/dns/lib/lang/tr_dns_ds.lng +++ b/interface/web/dns/lib/lang/tr_dns_ds.lng @@ -1,17 +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['invalid_type_ds'] = 'DS-Record has a wrong format.'; +$wb['server_id_txt'] = 'Sunucu'; +$wb['zone_txt'] = 'Bölge'; +$wb['name_txt'] = 'Sunucu Adı'; +$wb['type_txt'] = 'tür'; +$wb['data_txt'] = 'Veri'; +$wb['ttl_txt'] = 'TTL Süresi'; +$wb['active_txt'] = 'Etkin'; +$wb['limit_dns_record_txt'] = 'Hesabınıza ekleyebileceÄŸiniz en fazla DNS kaydı sınırına ulaÅŸtınız.'; +$wb['no_zone_perm'] = 'Bu DNS bölgesine kayıt ekleme izniniz yok.'; +$wb['name_error_empty'] = 'Sunucu adı boÅŸ olamaz.'; +$wb['name_error_regex'] = 'Sunucu adının biçimi hatalı.'; +$wb['data_error_empty'] = 'Metin boÅŸ olamaz'; +$wb['data_error_regex'] = 'Metin biçimi geçersiz'; +$wb['ttl_range_error'] = 'En düşük TTL süresi 60 saniyedir.'; +$wb['invalid_type_ds'] = 'DS kaydının biçimi hatalı.'; + ?> diff --git a/interface/web/dns/lib/lang/tr_dns_hinfo.lng b/interface/web/dns/lib/lang/tr_dns_hinfo.lng index 9082420e04..c47718c63c 100644 --- a/interface/web/dns/lib/lang/tr_dns_hinfo.lng +++ b/interface/web/dns/lib/lang/tr_dns_hinfo.lng @@ -2,12 +2,12 @@ $wb['server_id_txt'] = 'Sunucu'; $wb['zone_txt'] = 'Bölge'; $wb['name_txt'] = 'Sunucu Adı'; -$wb['type_txt'] = 'Tip'; +$wb['type_txt'] = 'Tür'; $wb['data_txt'] = 'Sunucu Bilgisi'; $wb['ttl_txt'] = 'TTL Süresi'; $wb['active_txt'] = 'Etkin'; $wb['limit_dns_record_txt'] = 'Hesabınıza ekleyebileceÄŸiniz en fazla DNS kaydı sınırına ulaÅŸtınız.'; -$wb['no_zone_perm'] = 'Bu DNS bölgesi kaydını ekleme izniniz yok.'; +$wb['no_zone_perm'] = 'Bu DNS bölgesine kayıt ekleme izniniz yok.'; $wb['name_error_empty'] = 'Sunucu adı boÅŸ olamaz.'; $wb['name_error_regex'] = 'Sunucu adı biçimi geçersiz.'; $wb['data_error_empty'] = 'Sunucu bilgisi boÅŸ olamaz'; diff --git a/interface/web/dns/lib/lang/tr_dns_import.lng b/interface/web/dns/lib/lang/tr_dns_import.lng index 64073d2b49..0f95a3131f 100644 --- a/interface/web/dns/lib/lang/tr_dns_import.lng +++ b/interface/web/dns/lib/lang/tr_dns_import.lng @@ -1,16 +1,16 @@ <?php -$wb['zone_file_import_txt'] = 'Bölge Dosyası Alma'; +$wb['zone_file_import_txt'] = 'Bölge Dosyası İçe Aktarma'; $wb['server_id_txt'] = 'Sunucu'; $wb['client_txt'] = 'Müşteri'; -$wb['btn_save_txt'] = 'Bölge Dosyasını Al'; +$wb['btn_save_txt'] = 'Bölge Dosyasını İçe Aktar'; $wb['btn_cancel_txt'] = 'Geri'; -$wb['domain_txt'] = 'Alan Adı'; -$wb['zone_file_successfully_imported_txt'] = 'Bölge dosyası alındı!'; +$wb['domain_txt'] = 'Etki Alanı'; +$wb['zone_file_successfully_imported_txt'] = 'Bölge dosyası içe aktarıldı!'; $wb['error_no_valid_zone_file_txt'] = 'Bu bölge dosyası geçersiz görünüyor!'; $wb['zonefile_to_import_txt'] = 'Bölge Dosyası'; -$wb['domain_field_desc_txt'] = 'Alan adı dosya adında ya da bölge dosyasının içeriÄŸinde bulunuyor ise boÅŸ bırakılabilir.'; -$wb['title'] = 'Bölge Dosyalarını Al'; +$wb['domain_field_desc_txt'] = 'Etki alanı dosya adında ya da bölge dosyasının içeriÄŸinde bulunuyor ise boÅŸ bırakılabilir.'; +$wb['title'] = 'Bölge Dosyalarını İçe Aktar'; $wb['no_file_uploaded_error'] = 'Hiçbir bölge dosyası yüklenmedi'; -$wb['error_no_server_id'] = 'No server provided.'; -$wb['error_not_allowed_server_id'] = 'The selected server is not allowed for this account.'; +$wb['error_no_server_id'] = 'Sunucu belirtilmemiÅŸ.'; +$wb['error_not_allowed_server_id'] = 'SeçilmiÅŸ sunucuda bu hesap kullanılamaz.'; ?> diff --git a/interface/web/dns/lib/lang/tr_dns_loc.lng b/interface/web/dns/lib/lang/tr_dns_loc.lng index dc9ad9a006..25350c9aa8 100644 --- a/interface/web/dns/lib/lang/tr_dns_loc.lng +++ b/interface/web/dns/lib/lang/tr_dns_loc.lng @@ -1,16 +1,16 @@ <?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'] = 'Sunucu'; +$wb['zone_txt'] = 'Bölge'; +$wb['name_txt'] = 'Sunucu Adı'; +$wb['type_txt'] = 'Tür'; +$wb['data_txt'] = 'Veri'; +$wb['ttl_txt'] = 'TTL Süresi'; +$wb['active_txt'] = 'Etkin'; +$wb['limit_dns_record_txt'] = 'Hesabınıza ekleyebileceÄŸiniz en fazla DNS kaydı sınırına ulaÅŸtınız.'; +$wb['no_zone_perm'] = 'Bu DNS bölgesine kayıt ekleme izniniz yok.'; +$wb['name_error_empty'] = 'Sunucu adı boÅŸ olamaz.'; +$wb['name_error_regex'] = 'Sunucu adı biçimi geçersiz.'; +$wb['data_error_empty'] = 'Metin boÅŸ'; +$wb['data_error_regex'] = 'Metin biçimi geçersiz'; +$wb['ttl_range_error'] = 'En düşük TTL süresi 60 saniyedir.'; ?> diff --git a/interface/web/dns/lib/lang/tr_dns_mx.lng b/interface/web/dns/lib/lang/tr_dns_mx.lng index b3efeab1bb..6f39e991bc 100644 --- a/interface/web/dns/lib/lang/tr_dns_mx.lng +++ b/interface/web/dns/lib/lang/tr_dns_mx.lng @@ -2,17 +2,17 @@ $wb['server_id_txt'] = 'Sunucu'; $wb['zone_txt'] = 'Bölge'; $wb['name_txt'] = 'Sunucu Adı'; -$wb['type_txt'] = 'Tip'; -$wb['data_txt'] = 'Posta sunucusu adı'; +$wb['type_txt'] = 'Tür'; +$wb['data_txt'] = 'E-posta Sunucusu Adı'; $wb['aux_txt'] = 'Öncelik'; $wb['ttl_txt'] = 'TTL Süresi'; $wb['active_txt'] = 'Etkin'; $wb['limit_dns_record_txt'] = 'Hesabınıza ekleyebileceÄŸiniz en fazla DNS kaydı sınırına ulaÅŸtınız.'; -$wb['no_zone_perm'] = 'Bu DNS bölgesi kaydını ekleme izniniz yok.'; +$wb['no_zone_perm'] = 'Bu DNS bölgesine kayıt ekleme izniniz yok.'; $wb['name_error_empty'] = 'Sunucu adı boÅŸ olamaz.'; $wb['name_error_regex'] = 'Sunucu adı biçimi geçersiz.'; -$wb['data_error_empty'] = 'Posta sunucusu adı boÅŸ olamaz'; -$wb['data_error_regex'] = 'Posta sunucusu adı biçimi geçersiz'; +$wb['data_error_empty'] = 'E-posta sunucusu adı boÅŸ olamaz'; +$wb['data_error_regex'] = 'E-posta sunucusu adı biçimi geçersiz'; $wb['duplicate_mx_record_txt'] = 'Bu MX kaydı zaten var.'; $wb['ttl_range_error'] = 'En düşük TTL süresi 60 saniyedir.'; ?> diff --git a/interface/web/dns/lib/lang/tr_dns_ns.lng b/interface/web/dns/lib/lang/tr_dns_ns.lng index 03975af5fa..e32b086091 100644 --- a/interface/web/dns/lib/lang/tr_dns_ns.lng +++ b/interface/web/dns/lib/lang/tr_dns_ns.lng @@ -2,12 +2,12 @@ $wb['server_id_txt'] = 'Sunucu'; $wb['zone_txt'] = 'Bölge'; $wb['name_txt'] = 'Bölge'; -$wb['type_txt'] = 'Tip'; +$wb['type_txt'] = 'tür'; $wb['data_txt'] = 'Ad Sunucusu Adı'; $wb['ttl_txt'] = 'TTL Süresi'; $wb['active_txt'] = 'Etkin'; $wb['limit_dns_record_txt'] = 'Hesabınıza ekleyebileceÄŸiniz en fazla DNS kaydı sınırına ulaÅŸtınız.'; -$wb['no_zone_perm'] = 'Bu DNS bölgesi kaydını ekleme izniniz yok.'; +$wb['no_zone_perm'] = 'Bu DNS bölgesine kayıt ekleme izniniz yok.'; $wb['name_error_empty'] = 'Bölge boÅŸ olamaz.'; $wb['name_error_regex'] = 'Bölge biçimi geçersiz.'; $wb['data_error_empty'] = 'Ad sunucusu boÅŸ olamaz'; diff --git a/interface/web/dns/lib/lang/tr_dns_rp.lng b/interface/web/dns/lib/lang/tr_dns_rp.lng index 0a01c2dbe8..56c10cb7e4 100644 --- a/interface/web/dns/lib/lang/tr_dns_rp.lng +++ b/interface/web/dns/lib/lang/tr_dns_rp.lng @@ -2,12 +2,12 @@ $wb['server_id_txt'] = 'Sunucu'; $wb['zone_txt'] = 'Bölge'; $wb['name_txt'] = 'Sunucu Adı'; -$wb['type_txt'] = 'Tip'; +$wb['type_txt'] = 'Tür'; $wb['data_txt'] = 'Ä°lgili KiÅŸi'; $wb['ttl_txt'] = 'TTL Süresi'; $wb['active_txt'] = 'Etkin'; $wb['limit_dns_record_txt'] = 'Hesabınıza ekleyebileceÄŸiniz en fazla DNS kaydı sınırına ulaÅŸtınız.'; -$wb['no_zone_perm'] = 'Bu DNS bölgesi kaydını ekleme izniniz yok.'; +$wb['no_zone_perm'] = 'Bu DNS bölgesine kayıt ekleme izniniz yok.'; $wb['name_error_empty'] = 'Sunucu adı boÅŸ olamaz.'; $wb['name_error_regex'] = 'Sunucu adı biçimi geçersiz.'; $wb['data_error_empty'] = 'Ä°lgili kiÅŸi boÅŸ olamaz'; diff --git a/interface/web/dns/lib/lang/tr_dns_slave.lng b/interface/web/dns/lib/lang/tr_dns_slave.lng index d6c83a92fa..8c83c1591c 100644 --- a/interface/web/dns/lib/lang/tr_dns_slave.lng +++ b/interface/web/dns/lib/lang/tr_dns_slave.lng @@ -13,5 +13,5 @@ $wb['origin_error_unique'] = 'Bu bölge için zaten bir kayıt var.'; $wb['origin_error_regex'] = 'Bölge biçimi geçersiz.'; $wb['ns_error_regex'] = 'NS biçimi geçersiz.'; $wb['eg_domain_tld'] = 'Örnek: domain.tld.'; -$wb['ipv4_form_txt'] = 'Separate multiple IPs with commas'; +$wb['ipv4_form_txt'] = 'Birden çok IP adresini virgül ile ayırarak yazın'; ?> diff --git a/interface/web/dns/lib/lang/tr_dns_soa.lng b/interface/web/dns/lib/lang/tr_dns_soa.lng index 02e325e427..fd39de04f5 100644 --- a/interface/web/dns/lib/lang/tr_dns_soa.lng +++ b/interface/web/dns/lib/lang/tr_dns_soa.lng @@ -9,11 +9,14 @@ $wb['retry_txt'] = 'Yinelenme'; $wb['expire_txt'] = 'Sona erme'; $wb['minimum_txt'] = 'En düşük'; $wb['ttl_txt'] = 'TTL Süresi'; -$wb['xfer_txt'] = 'Åžu IP adreslerine (virgülle ayrılmış)<br />bölge aktarımı yapılabilsin'; +$wb['xfer_txt'] = 'Åžu IP adreslerine (virgül ile ayrırak yazın)<br />bölge aktarımı yapılabilsin'; $wb['active_txt'] = 'Etkin'; +$wb['dnssec_info_txt'] = 'Kayıt defteri için DNSSEC DS verisi'; +$wb['dnssec_wanted_txt'] = 'Ä°mza bölgesi (DNSSEC)'; +$wb['dnssec_wanted_info'] = 'Devre dışı bırakıldığında DNSSEC daha önce etkinleÅŸtirilmiÅŸ ve anahtarlar üretilmiÅŸ ise DNSSEC anahtarları silinir. Ancak bölge bundan sonra imzalanmış biçimde aktarılmaz.'; $wb['limit_dns_zone_txt'] = 'Hesabınıza ekleyebileceÄŸiniz en fazla DNS bölgesi sayısına ulaÅŸtınız.'; $wb['client_txt'] = 'Müşteri'; -$wb['no_zone_perm'] = 'Bu DNS bölgesi kaydını ekleme izniniz yok.'; +$wb['no_zone_perm'] = 'Bu DNS bölgesine kayıt ekleme izniniz yok.'; $wb['server_id_error_empty'] = 'Sunucu seçilmemiÅŸ'; $wb['origin_error_empty'] = 'Bölge boÅŸ olamaz.'; $wb['origin_error_unique'] = 'Bu bölge için bir kayıt zaten var.'; @@ -21,24 +24,21 @@ $wb['origin_error_regex'] = 'Bölge biçimi geçersiz.'; $wb['ns_error_regex'] = 'NS geçersiz formatta.'; $wb['mbox_error_empty'] = 'E-posta boÅŸ olamaz.'; $wb['mbox_error_regex'] = 'E-posta biçimi geçersiz.'; -$wb['also_notify_txt'] = 'Ayrıca Bildir'; -$wb['also_notify_error_regex'] = 'Lütfen bir IP adresi kullanın.'; -$wb['xfer_error_regex'] = 'Ayrıca bildir: Lütfen bir IP adresi kullanın.'; +$wb['also_notify_txt'] = 'Ayrıca Bildirilsin'; +$wb['also_notify_error_regex'] = 'Ayrıca Bildirilsin: Lütfen bir IP adresi kullanın.'; +$wb['xfer_error_regex'] = 'Aktarılsın: Bir ya da , ile ayrılmış birkaç IP adresi ya da any sözcüğünü kullanın.'; $wb['update_acl_txt'] = 'EDL Güncelle'; $wb['seconds_txt'] = 'Saniye'; $wb['eg_domain_tld'] = 'Örnek: domain.tld'; $wb['eg_ns1_domain_tld'] = 'Örnek: ns1.domain.tld'; $wb['eg_webmaster_domain_tld'] = 'Örnek: webmaster@domain.tld'; -$wb['The Domain can not be changed. Please ask your Administrator if you want to change the domain name.'] = 'Alan adı deÄŸiÅŸtirilemedi. Lütfen alan adını deÄŸiÅŸtirmek için sistem yöneticisi ile görüşün.'; +$wb['The Domain can not be changed. Please ask your Administrator if you want to change the domain name.'] = 'Etki alanı deÄŸiÅŸtirilemedi. Lütfen etki alanını deÄŸiÅŸtirmek için sistem yöneticisi ile görüşün.'; $wb['refresh_range_error'] = 'En kısa yenilenme süresi 60 saniyedir.'; $wb['retry_range_error'] = 'En kısa yinelenme süresi 60 saniyedir.'; $wb['expire_range_error'] = 'En kısa sona erme süresi 60 saniyedir.'; $wb['minimum_range_error'] = 'En kısa en kısa süre 60 saniyedir.'; $wb['ttl_range_error'] = 'En düşük TTL süresi 60 saniyedir.'; -$wb['dnssec_info_txt'] = 'DNSSEC DS-Data for registry'; -$wb['dnssec_wanted_txt'] = 'Sign zone (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 delivered in signed format afterwards. If you use PowerDNS, keys WILL be deleted!'; -$wb['error_not_allowed_server_id'] = 'The selected server is not allowed for this account.'; -$wb['soa_cannot_be_changed_txt'] = 'The Zone (SOA) can not be changed. Please contact your administrator to change the zone.'; -$wb['configuration_error_txt'] = 'CONFIGURATION ERROR'; +$wb['error_not_allowed_server_id'] = 'SeçilmiÅŸ sunucuda bu hesap kullanılamaz.'; +$wb['soa_cannot_be_changed_txt'] = 'Bölge (SOA) deÄŸiÅŸtirilemez. Lütfen bölgeyi deÄŸiÅŸtirmek için yöneticiniz ile görüşün.'; +$wb['configuration_error_txt'] = 'YAPILANDIRMA SORUNU'; ?> diff --git a/interface/web/dns/lib/lang/tr_dns_soa_admin_list.lng b/interface/web/dns/lib/lang/tr_dns_soa_admin_list.lng index d8e56c17ee..490cdc7b4f 100644 --- a/interface/web/dns/lib/lang/tr_dns_soa_admin_list.lng +++ b/interface/web/dns/lib/lang/tr_dns_soa_admin_list.lng @@ -5,7 +5,7 @@ $wb['server_id_txt'] = 'Sunucu'; $wb['origin_txt'] = 'Bölge'; $wb['ns_txt'] = 'Ad Sunucusu'; $wb['mbox_txt'] = 'E-posta'; -$wb['add_new_record_wizard_txt'] = 'Yardımcı ile DNS bölgesi ekle'; +$wb['add_new_record_wizard_txt'] = 'Yardımcı ile DNS Bölgesi Ekle'; $wb['add_new_record_txt'] = 'El ile DNS Bölgesi Ekle'; $wb['sys_groupid_txt'] = 'Müşteri'; ?> diff --git a/interface/web/dns/lib/lang/tr_dns_soa_list.lng b/interface/web/dns/lib/lang/tr_dns_soa_list.lng index 8f7ed985ee..831ff6afd7 100644 --- a/interface/web/dns/lib/lang/tr_dns_soa_list.lng +++ b/interface/web/dns/lib/lang/tr_dns_soa_list.lng @@ -5,7 +5,7 @@ $wb['server_id_txt'] = 'Sunucu'; $wb['origin_txt'] = 'Bölge'; $wb['ns_txt'] = 'Ad Sunucusu'; $wb['mbox_txt'] = 'E-posta'; -$wb['add_new_record_wizard_txt'] = 'Yardımcı ile DNS bölgesi ekle'; +$wb['add_new_record_wizard_txt'] = 'Yardımcı ile DNS Bölgesi Ekle'; $wb['add_new_record_txt'] = 'DNS Bölgesi (SOA) Ekle'; -$wb['import_zone_file_txt'] = 'Import Zone File'; +$wb['import_zone_file_txt'] = 'Bölge Dosyasını İçe Aktar'; ?> diff --git a/interface/web/dns/lib/lang/tr_dns_spf.lng b/interface/web/dns/lib/lang/tr_dns_spf.lng index df8d1fe145..40cad402a4 100644 --- a/interface/web/dns/lib/lang/tr_dns_spf.lng +++ b/interface/web/dns/lib/lang/tr_dns_spf.lng @@ -1,25 +1,25 @@ <?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['ttl_txt'] = 'TTL'; -$wb['active_txt'] = 'Active'; -$wb['record_exists_txt'] = 'DNS-Record already exists'; -$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['data_txt'] = 'SPF Kaydı'; +$wb['spf_mechanism_txt'] = 'SPF Yöntemi'; +$wb['spf_mechanism_pass_txt'] = 'Kabul - DiÄŸer göndericilerden gelen e-postalar kabul edilsin'; +$wb['spf_mechanism_fail_txt'] = 'Red - DiÄŸer göndericilerden gelen e-postalar reddedilsin'; +$wb['spf_mechanism_softfail_txt'] = 'Yazılımsal Red - DiÄŸer göndericilerden gelen e-postalar kabul edilsin ancak e-posta iÅŸaretlensin'; +$wb['spf_mechanism_neutral_txt'] = 'Tepkisiz - Hiç bir ÅŸey yapılmasın'; +$wb['spf_mx_txt'] = 'MX olarak listelenen sunucular bu etki alanı adına e-posta gönderebilsin'; +$wb['spf_a_txt'] = 'Etki alanının geçerli IP adresleri bu etki alanı adına e-posta gönderebilsin'; +$wb['spf_ip_txt'] = 'CIDR biçiminde, bu etki alanı için e-posta gönderebilecek ya da aktarabilecek IP adresleri'; +$wb['spf_ip_note_txt'] = '(IP adreslerini boÅŸluk ile ayırarak yazın)'; +$wb['spf_invalid_ip_txt'] = 'IP adresi geçersiz'; +$wb['spf_hostname_txt'] = 'Bu etki alanı için e-posta gönderebilecek ya da aktarabilecek diÄŸer sunucuların adları'; +$wb['spf_hostname_note_txt'] = '(Sunucu adlarını boÅŸluk ile ayırarak yazın)'; +$wb['spf_invalid_hostname_txt'] = 'Sunucu adı geçersiz'; +$wb['spf_domain_txt'] = 'Bu etki alanı için e-posta gönderebilecek ya da aktarabilecek etki alanı adları'; +$wb['spf_domain_note_txt'] = '(Etki alanı adlarını boÅŸluk ile ayırarak yazın)'; +$wb['spf_invalid_domain_txt'] = 'Etki alanı adı geçersiz'; +$wb['ttl_txt'] = 'TTL Süresi'; +$wb['active_txt'] = 'Etkin'; +$wb['record_exists_txt'] = 'DNS kaydı zaten var'; +$wb['limit_dns_record_txt'] = 'Hesabınıza ekleyebileceÄŸiniz en fazla DNS kaydı sınırına ulaÅŸtınız.'; +$wb['no_zone_perm'] = 'Bu DNS bölgesine kayıt ekleme izniniz yok.'; +$wb['ttl_range_error'] = 'En düşük TTL süresi 60 saniyedir.'; ?> diff --git a/interface/web/dns/lib/lang/tr_dns_srv.lng b/interface/web/dns/lib/lang/tr_dns_srv.lng index c7ad55a852..8af151db87 100644 --- a/interface/web/dns/lib/lang/tr_dns_srv.lng +++ b/interface/web/dns/lib/lang/tr_dns_srv.lng @@ -2,7 +2,7 @@ $wb['server_id_txt'] = 'Sunucu'; $wb['zone_txt'] = 'Bölge'; $wb['name_txt'] = 'Sunucu Adı'; -$wb['type_txt'] = 'Tip'; +$wb['type_txt'] = 'Tür'; $wb['target_txt'] = 'Hedef'; $wb['weight_txt'] = 'Ağırlık'; $wb['port_txt'] = 'Kapı'; @@ -10,7 +10,7 @@ $wb['ttl_txt'] = 'TTL Süresi'; $wb['active_txt'] = 'Etkin'; $wb['aux_txt'] = 'Öncelik'; $wb['limit_dns_record_txt'] = 'Hesabınıza ekleyebileceÄŸiniz en fazla DNS kaydı sınırına ulaÅŸtınız.'; -$wb['no_zone_perm'] = 'Bu DNS Bölgesi kaydını ekleme izniniz yok.'; +$wb['no_zone_perm'] = 'Bu DNS bölgesine kayıt ekleme izniniz yok.'; $wb['name_error_empty'] = 'Sunucu adı boÅŸ olamaz.'; $wb['name_error_regex'] = 'Sunucu adı biçimi geçersiz.'; $wb['data_error_empty'] = 'Sunucu kaydı boÅŸ olamaz'; diff --git a/interface/web/dns/lib/lang/tr_dns_template.lng b/interface/web/dns/lib/lang/tr_dns_template.lng index 3ca594f62e..37ba3b5883 100644 --- a/interface/web/dns/lib/lang/tr_dns_template.lng +++ b/interface/web/dns/lib/lang/tr_dns_template.lng @@ -3,5 +3,4 @@ $wb['name_txt'] = 'Ad'; $wb['fields_txt'] = 'Alanlar'; $wb['template_txt'] = 'Kalıp'; $wb['visible_txt'] = 'Görünür'; -$wb['placeholder_txt'] = 'Placeholder'; ?> diff --git a/interface/web/dns/lib/lang/tr_dns_tlsa.lng b/interface/web/dns/lib/lang/tr_dns_tlsa.lng index 3b87e2ad59..1fe0310d3a 100644 --- a/interface/web/dns/lib/lang/tr_dns_tlsa.lng +++ b/interface/web/dns/lib/lang/tr_dns_tlsa.lng @@ -1,16 +1,16 @@ <?php -$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: _<port>._(tcp|udp).<hostname>'; -$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.'; +$wb['server_id_txt'] = 'Sunucu'; +$wb['zone_txt'] = 'Bölge'; +$wb['name_txt'] = 'Hizmet Belirteci'; +$wb['type_txt'] = 'tür'; +$wb['data_txt'] = 'TLSA Verisi'; +$wb['ttl_txt'] = 'TTL Süresi'; +$wb['active_txt'] = 'Etkin'; +$wb['limit_dns_record_txt'] = 'Hesabınıza ekleyebileceÄŸiniz en fazla DNS kaydı sınırına ulaÅŸtınız.'; +$wb['no_zone_perm'] = 'Bu DNS bölgesine kayıt ekleme izniniz yok.'; +$wb['name_error_empty'] = 'Sunucu adı boÅŸ olamaz.'; +$wb['name_error_regex'] = 'Sunucu adının biçimi hatalı. DoÄŸru biçim: _<kapı>._(tcp|udp).<sunucuadı>'; +$wb['data_error_empty'] = 'TLSA verisi boÅŸ olamaz.'; +$wb['data_error_regex'] = 'TLSA veri biçimi hatalı. DoÄŸru biçim: n n n HASH'; +$wb['ttl_range_error'] = 'En düşük TTL süresi 60 saniyedir.'; ?> diff --git a/interface/web/dns/lib/lang/tr_dns_txt.lng b/interface/web/dns/lib/lang/tr_dns_txt.lng index 7b77bae7f9..632b1e7b69 100644 --- a/interface/web/dns/lib/lang/tr_dns_txt.lng +++ b/interface/web/dns/lib/lang/tr_dns_txt.lng @@ -2,18 +2,18 @@ $wb['server_id_txt'] = 'Sunucu'; $wb['zone_txt'] = 'Bölge'; $wb['name_txt'] = 'Sunucu Adı'; -$wb['type_txt'] = 'Tip'; +$wb['type_txt'] = 'Tür'; $wb['data_txt'] = 'Metin'; $wb['ttl_txt'] = 'TTL Süresi'; $wb['active_txt'] = 'Etkin'; $wb['limit_dns_record_txt'] = 'Hesabınıza ekleyebileceÄŸiniz en fazla DNS kaydı sınırına ulaÅŸtınız.'; -$wb['no_zone_perm'] = 'Bu DNS bölgesi kaydını ekleme izniniz yok.'; +$wb['no_zone_perm'] = 'Bu DNS bölgesine kayıt ekleme izniniz yok.'; $wb['name_error_empty'] = 'Sunucu adı boÅŸ olamaz.'; $wb['name_error_regex'] = 'Sunucu adı biçimi geçersiz.'; $wb['data_error_empty'] = 'Metin boÅŸ olamaz'; $wb['data_error_regex'] = 'Metin biçimi geçersiz'; $wb['ttl_range_error'] = 'En düşük TTL süresi 60 saniyedir.'; -$wb['invalid_type_dkim'] = 'DKIM is not allowed. Use the DKIM button'; -$wb['invalid_type_dmarc'] = 'DMARC is not allowed. Use the DMARC button'; -$wb['invalid_type_spf'] = 'SPF is not allowed. Use the SPF button.'; +$wb['invalid_type_dkim'] = 'DKIM yazılamaz. DKIM düğmesini kullanın'; +$wb['invalid_type_dmarc'] = 'DMARC yazılamaz. DMARC düğmesini kullanın'; +$wb['invalid_type_spf'] = 'SPF yazılamaz. SPF düğmesini kullanın.'; ?> diff --git a/interface/web/dns/lib/lang/tr_dns_wizard.lng b/interface/web/dns/lib/lang/tr_dns_wizard.lng index 1a96393914..f0a8b38980 100644 --- a/interface/web/dns/lib/lang/tr_dns_wizard.lng +++ b/interface/web/dns/lib/lang/tr_dns_wizard.lng @@ -7,11 +7,14 @@ $wb['server_id_txt'] = 'Sunucu'; $wb['client_txt'] = 'Müşteri'; $wb['btn_save_txt'] = 'DNS Kaydı Ekle'; $wb['btn_cancel_txt'] = 'Geri'; -$wb['domain_txt'] = 'Alan Adı'; +$wb['domain_txt'] = 'Etki Alanı'; $wb['email_txt'] = 'E-posta'; -$wb['ns1_txt'] = 'Ad Sunucusu 1'; -$wb['ns2_txt'] = 'Ad Sunucusu 2'; +$wb['dkim_txt'] = 'DKIM'; +$wb['dnssec_txt'] = 'Ä°mza bölgesi (DNSSEC)'; +$wb['ns1_txt'] = '1. Ad Sunucusu'; +$wb['ns2_txt'] = '2. Ad Sunucusu'; $wb['ip_txt'] = 'IP Adresi'; +$wb['ipv6_txt'] = 'IPv6 Adresi'; $wb['error_origin_empty'] = 'Kaynak boÅŸ olamaz.'; $wb['error_ns_empty'] = 'Ad sunucusu boÅŸ olamaz.'; $wb['error_mbox_empty'] = 'Mbox boÅŸ olamaz.'; @@ -20,14 +23,15 @@ $wb['error_retry_empty'] = 'Yinelenme boÅŸ olamaz.'; $wb['error_expire_empty'] = 'Sona erme boÅŸ olamaz.'; $wb['error_minimum_empty'] = 'En az boÅŸ olamaz.'; $wb['error_ttl_empty'] = 'TTL süresi boÅŸ olamaz.'; -$wb['error_domain_empty'] = 'Alan adı boÅŸ olamaz'; +$wb['error_domain_empty'] = 'Etki alanı boÅŸ olamaz'; $wb['error_ip_empty'] = 'IP boÅŸ olamaz.'; -$wb['error_ns1_empty'] = 'As Sunucusu 1 boÅŸ olamaz.'; -$wb['error_ns2_empty'] = 'Ad Sunucusu 2 boÅŸ olamaz.'; +$wb['error_ipv6_empty'] = 'IPv6 boÅŸ olamaz.'; +$wb['error_ns1_empty'] = '1. Ad Sunucusu boÅŸ olamaz.'; +$wb['error_ns2_empty'] = '2. Ad Sunucusu boÅŸ olamaz.'; $wb['error_email_empty'] = 'E-posta boÅŸ olamaz.'; -$wb['error_domain_regex'] = 'Alan adında geçersiz karakterler var.'; -$wb['error_ns1_regex'] = 'Ad Sunucusu 1 adında geçersiz karakterler var.'; -$wb['error_ns2_regex'] = 'Ad Sunucusu 2 adında geçersiz karakterler var.'; +$wb['error_domain_regex'] = 'Etki alanı adında geçersiz karakterler var.'; +$wb['error_ns1_regex'] = '1. Ad Sunucusu adında geçersiz karakterler var.'; +$wb['error_ns2_regex'] = '2. Ad Sunucusu adında geçersiz karakterler var.'; $wb['error_email_regex'] = 'E-posta adresi geçersiz.'; $wb['globalsearch_resultslimit_of_txt'] = '/'; $wb['globalsearch_resultslimit_results_txt'] = 'sonuç'; @@ -35,11 +39,7 @@ $wb['globalsearch_noresults_text_txt'] = 'Sonuç yok.'; $wb['globalsearch_noresults_limit_txt'] = '0 sonuç'; $wb['globalsearch_searchfield_watermark_txt'] = 'Arama'; $wb['globalsearch_suggestions_text_txt'] = 'Öneriler'; -$wb['dkim_txt'] = 'DKIM'; -$wb['dnssec_txt'] = 'Sign zone (DNSSEC)'; -$wb['ipv6_txt'] = 'IPv6 Address'; -$wb['error_ipv6_empty'] = 'IPv6 empty.'; -$wb['error_no_server_id'] = 'No server provided.'; -$wb['error_not_allowed_server_id'] = 'The selected server is not allowed for this account.'; -$wb['limit_dns_zone_txt'] = 'The max. number of DNS zones for your account is reached.'; +$wb['error_no_server_id'] = 'Bir sunucu belirtilmemiÅŸ.'; +$wb['error_not_allowed_server_id'] = 'SeçilmiÅŸ sunucuda bu hesap kullanılamaz.'; +$wb['limit_dns_zone_txt'] = 'Hesabınıza ekleyebileceÄŸiniz en fazla DNS bölgesi sayısına ulaÅŸtınız.'; ?> diff --git a/interface/web/help/lib/lang/br.lng b/interface/web/help/lib/lang/br.lng index a745e60960..217d3afa14 100644 --- a/interface/web/help/lib/lang/br.lng +++ b/interface/web/help/lib/lang/br.lng @@ -1,14 +1,14 @@ <?php -$wb['Support Message'] = 'Mensagem do suporte'; +$wb['Support Message'] = 'Mensagem de suporte'; $wb['Message'] = 'Mensagem'; $wb['Send message'] = 'Enviar mensagem'; -$wb['View messages'] = 'Visualizar mensagem'; +$wb['View messages'] = 'Visualizar mensagens'; $wb['Support'] = 'Suporte'; $wb['About ISPConfig'] = 'Sobre o ISPConfig'; $wb['Version'] = 'Versão'; -$wb['Frequently Asked Questions'] = 'Perguntas frequentes (FAQ)'; -$wb['FAQ Sections'] = 'Sessões FAQ'; -$wb['Manage Sections'] = 'Gerenciar sessões'; -$wb['Add a Question & Answer Pair'] = 'Adicionar par pergunta/resposta'; -$wb['Manage Questions'] = 'Gerenciar perguntas'; +$wb['Frequently Asked Questions'] = 'Questões Frequentes - FAQ'; +$wb['FAQ Sections'] = 'Seções FAQ'; +$wb['Manage Sections'] = 'Gerenciar seções'; +$wb['Add a Question & Answer Pair'] = 'Adicionar novo par questão/resposta'; +$wb['Manage Questions'] = 'Gerenciar questões'; ?> diff --git a/interface/web/help/lib/lang/br_faq_form.lng b/interface/web/help/lib/lang/br_faq_form.lng index 331268a722..b24ec1c58f 100644 --- a/interface/web/help/lib/lang/br_faq_form.lng +++ b/interface/web/help/lib/lang/br_faq_form.lng @@ -1,6 +1,6 @@ <?php -$wb['faq_faq_txt'] = 'Perguntas Mais Frequentes (FAQ)'; -$wb['faq_question_txt'] = 'Pergunta'; +$wb['faq_faq_txt'] = 'Questões Frequentes'; +$wb['faq_question_txt'] = 'Questão'; $wb['faq_answer_txt'] = 'Resposta'; -$wb['faq_section_txt'] = 'Sessão'; +$wb['faq_section_txt'] = 'Seção'; ?> diff --git a/interface/web/help/lib/lang/br_faq_manage_questions_list.lng b/interface/web/help/lib/lang/br_faq_manage_questions_list.lng index 8bda9d7f42..ee9f769d91 100644 --- a/interface/web/help/lib/lang/br_faq_manage_questions_list.lng +++ b/interface/web/help/lib/lang/br_faq_manage_questions_list.lng @@ -1,9 +1,9 @@ <?php -$wb['faq_question_txt'] = 'Pergunta'; -$wb['faq_section_name_txt'] = 'Sessão'; +$wb['faq_question_txt'] = 'Questão'; +$wb['faq_section_name_txt'] = 'Seção'; $wb['faq_delete_txt'] = 'Remover'; $wb['faq_edit_txt'] = 'Editar'; -$wb['faq_sections_txt'] = 'Sessão'; -$wb['faq_faq_questions_txt'] = 'Perguntas frequentes (FAQ)'; -$wb['faq_new_question_txt'] = 'Adicionar par pergunta/resposta'; +$wb['faq_sections_txt'] = 'Seção'; +$wb['faq_faq_questions_txt'] = 'Questões Frequentes'; +$wb['faq_new_question_txt'] = 'Adicionar novo par questão/resposta'; ?> diff --git a/interface/web/help/lib/lang/br_faq_sections_form.lng b/interface/web/help/lib/lang/br_faq_sections_form.lng index f3f9f9f583..2fb709cbd2 100644 --- a/interface/web/help/lib/lang/br_faq_sections_form.lng +++ b/interface/web/help/lib/lang/br_faq_sections_form.lng @@ -1,3 +1,3 @@ <?php -$wb['faq_section_name_txt'] = 'Nome da Sessão'; +$wb['faq_section_name_txt'] = 'Nome da seção'; ?> diff --git a/interface/web/help/lib/lang/br_help_faq_sections_list.lng b/interface/web/help/lib/lang/br_help_faq_sections_list.lng index f1f549e615..aec81d7b59 100644 --- a/interface/web/help/lib/lang/br_help_faq_sections_list.lng +++ b/interface/web/help/lib/lang/br_help_faq_sections_list.lng @@ -1,8 +1,8 @@ <?php -$wb['faq_section_name_txt'] = 'Nome da Sessão'; +$wb['faq_section_name_txt'] = 'Nome da seção'; $wb['faq_delete_txt'] = 'Remover'; $wb['faq_edit_txt'] = 'Editar'; -$wb['faq_sections_txt'] = 'Sessões'; -$wb['faq_faq_sections_txt'] = 'Sessões FAQ'; -$wb['faq_new_section_txt'] = 'Adicionar nova sessão'; +$wb['faq_sections_txt'] = 'Seções'; +$wb['faq_faq_sections_txt'] = 'Seções FAQ'; +$wb['faq_new_section_txt'] = 'Adicionar nova seção'; ?> diff --git a/interface/web/help/lib/lang/br_support_message.lng b/interface/web/help/lib/lang/br_support_message.lng index 19ae309a1f..dad8ce7fd5 100644 --- a/interface/web/help/lib/lang/br_support_message.lng +++ b/interface/web/help/lib/lang/br_support_message.lng @@ -1,16 +1,16 @@ <?php -$wb['recipient_id_txt'] = 'Para'; -$wb['sender_id_txt'] = 'De'; +$wb['recipient_id_txt'] = 'ID do destinatário'; +$wb['sender_id_txt'] = 'ID do remetente'; $wb['subject_txt'] = 'Assunto'; $wb['message_txt'] = 'Mensagem'; -$wb['tstamp_txt'] = 'Dados'; +$wb['tstamp_txt'] = 'Data/Hora'; $wb['reply_txt'] = 'Responder'; $wb['date_txt'] = 'Data'; -$wb['support_request_subject_txt'] = 'Requisição para Suporte'; -$wb['support_request_txt'] = 'Você tem uma nova requisição para suporte. Por favor, não responda esse e-mail, mas processe a requisição de suporte dentro do ISPConfig.'; -$wb['answer_to_support_request_txt'] = 'Você tem uma nova resposta para requisição de suporte. Por favor, não responda esse e-mail, mas processe a requisição de suporte dentro do ISPConfig.'; -$wb['answer_to_support_request_sent_txt'] = 'Sua resposta para requisição de suporte foi enviada. Por favor, não responda esse e-mail.'; -$wb['support_request_sent_txt'] = 'Sua requisição de suporte foi enviada. Por favor não responda este e-mail.'; -$wb['recipient_or_sender_email_address_not_valid_txt'] = 'A mensagem não foi enviada porque o e-mail do destinatário e/ou remetente não é válido.'; -$wb['subject_is_empty'] = 'Não é permitido o campo \\"Assunto\\" em branco.'; +$wb['support_request_subject_txt'] = 'Requisição de Suporte'; +$wb['support_request_txt'] = 'Você recebeu uma requisição de suporte. Por favor, não responda este e-mail, mas processe a requisição dentro do ISPConfig.'; +$wb['answer_to_support_request_txt'] = 'Você recebeu uma resposta à sua requisição de suporte. Por favor, não responda este e-mail, mas processe a mensagem dentro do ISPConfig.'; +$wb['answer_to_support_request_sent_txt'] = 'Sua resposta à requisição de suporte foi enviada. Por favor, não responda este e-mail.'; +$wb['support_request_sent_txt'] = 'Sua requisição de suporte foi enviada. Por favor, não responda este e-mail.'; +$wb['recipient_or_sender_email_address_not_valid_txt'] = 'A mensagem não pôde ser enviada porque o remetente e/ou destinatário são e-mails inválidos.'; +$wb['subject_is_empty'] = 'O assunto está em branco.'; ?> diff --git a/interface/web/help/lib/lang/br_support_message_list.lng b/interface/web/help/lib/lang/br_support_message_list.lng index 7d888659d8..e4add42b79 100644 --- a/interface/web/help/lib/lang/br_support_message_list.lng +++ b/interface/web/help/lib/lang/br_support_message_list.lng @@ -1,7 +1,7 @@ <?php -$wb['list_head_txt'] = 'Mensagens do Suporte'; -$wb['sender_id_txt'] = 'De'; +$wb['list_head_txt'] = 'Mensagens de Suporte'; +$wb['sender_id_txt'] = 'Remetente'; $wb['subject_txt'] = 'Assunto'; -$wb['add_new_record_txt'] = 'Adicionar uma nova mensagem de suporte'; +$wb['add_new_record_txt'] = 'Adicionar nova mensagem de suporte'; $wb['date_txt'] = 'Data'; ?> diff --git a/interface/web/help/lib/lang/tr.lng b/interface/web/help/lib/lang/tr.lng index 4aeaa0ac0f..c6b0877af5 100644 --- a/interface/web/help/lib/lang/tr.lng +++ b/interface/web/help/lib/lang/tr.lng @@ -11,4 +11,5 @@ $wb['FAQ Sections'] = 'SSS Bölümleri'; $wb['Manage Sections'] = 'Bölüm Yönetimi'; $wb['Add a Question & Answer Pair'] = 'Soru-Yanıt Ekle'; $wb['Manage Questions'] = 'Soru Yönetimi'; + ?> diff --git a/interface/web/help/lib/lang/tr_support_message.lng b/interface/web/help/lib/lang/tr_support_message.lng index fcd785e627..ae60d28a19 100644 --- a/interface/web/help/lib/lang/tr_support_message.lng +++ b/interface/web/help/lib/lang/tr_support_message.lng @@ -7,10 +7,10 @@ $wb['tstamp_txt'] = 'Zaman damgası'; $wb['reply_txt'] = 'Yanıt'; $wb['date_txt'] = 'Tarih'; $wb['support_request_subject_txt'] = 'Destek Ä°steÄŸi'; -$wb['support_request_txt'] = 'Bir destek isteÄŸinde bulundunuz. Lütfen bu e-postay yanıtlamayın. Destek isteÄŸinizi ISPConfig üzerinden izleyin.'; +$wb['support_request_txt'] = 'Bir destek isteÄŸinde bulundunuz. Lütfen bu e-postayı yanıtlamayın. Destek isteÄŸinizi ISPConfig üzerinden izleyin.'; $wb['answer_to_support_request_txt'] = 'Destek isteÄŸiniz yanıtlandı. Lütfen bu e-postayı yanıtlamayın. Destek isteÄŸinizi ISPConfig üzerinden izleyin.'; $wb['answer_to_support_request_sent_txt'] = 'Destek isteÄŸinize yazdığınız yanıt gönderildi. Lütfen bu e-potayı yanıtlamayın.'; $wb['support_request_sent_txt'] = 'Destek isteÄŸiniz gönderildi. Lütfen bu e-postayı yanıtlamayın.'; $wb['recipient_or_sender_email_address_not_valid_txt'] = 'Gönderen ya da alıcı adresi geçersiz olduÄŸundan bu ileti gönderilemedi.'; -$wb['subject_is_empty'] = 'The subject can not be empty.'; +$wb['subject_is_empty'] = 'Konu boÅŸ olamaz.'; ?> diff --git a/interface/web/login/lib/lang/br.lng b/interface/web/login/lib/lang/br.lng index 379b719f4d..9baaf55212 100644 --- a/interface/web/login/lib/lang/br.lng +++ b/interface/web/login/lib/lang/br.lng @@ -13,18 +13,18 @@ $wb['user_regex_error'] = 'O nome do usuário contém menos de 1 ou mais de 64 c $wb['pw_error_length'] = 'Tamanho da senha não pode ser maior do que 64 caracteres.'; $wb['username_txt'] = 'Usuário'; $wb['password_txt'] = 'Senha'; -$wb['login_button_txt'] = 'Entrar'; +$wb['login_button_txt'] = 'Acessar'; $wb['pw_lost_txt'] = 'Esqueceu a senha?'; $wb['error_maintenance_mode'] = 'Esta instalação do ISPConfig atualmente está sob manutenção. Nós retornaremos em breve. Obrigado por sua paciência.'; -$wb['login_txt'] = 'Acesso'; +$wb['login_txt'] = 'Acessar'; $wb['pw_reset_txt'] = 'Redefinir senha'; $wb['pw_button_txt'] = 'Reenviar senha'; $wb['email_txt'] = 'E-mail'; -$wb['theme_not_compatible'] = 'O tema escolhido não é compatÃvel com a versão atual do ISPConfig. Por favor, procure por uma nova versão deste tema compatÃvel com ISPConfig.<br />O tema padrão foi configurado automaticamente.'; +$wb['theme_not_compatible'] = 'O tema escolhido não é compatÃvel com a versão atual do ISPConfig. Por favor, procure por uma nova versão deste tema, compatÃvel com ISPConfig.<br />O tema padrão foi configurado automaticamente.'; $wb['back_txt'] = 'Voltar'; $wb['email_error'] = 'O e-mail contém caracteres não permitidos ou formato é inválido.'; $wb['stay_logged_in_txt'] = 'Manter-me conectado'; -$wb['lost_password_function_disabled_txt'] = 'Função de redefinir senha indisponÃvel para este usuário.'; +$wb['lost_password_function_disabled_txt'] = 'Função "redefinir senha" indisponÃvel para este usuário.'; $wb['pw_reset_act'] = 'Você receberá um link de ativação. Por favor, acesse o link de ativação para confirmar sua nova senha.'; $wb['pw_reset_act_mail_title'] = 'Confirmar nova senha para o painel de controle ISPConfig'; $wb['pw_reset_act_mail_msg'] = 'Por favor, confirme se você deseja reiniciar sua senha do painel de controle ISPConfig, acessando o link de ativação: '; diff --git a/interface/web/login/lib/lang/br_login_as.lng b/interface/web/login/lib/lang/br_login_as.lng index 5d9fb269b9..72c2c97e40 100644 --- a/interface/web/login/lib/lang/br_login_as.lng +++ b/interface/web/login/lib/lang/br_login_as.lng @@ -1,12 +1,12 @@ <?php -$wb['login_1_txt'] = 'Você deseja acessar como usuário'; -$wb['login_2_txt'] = 'Para retornar ao administrador, você pode \\"voltar\\" selecionando sair.'; +$wb['login_1_txt'] = 'Gostaria de acessar como cliente?'; +$wb['login_2_txt'] = 'Se confirmar, poderá "voltar" clicando em sair.'; $wb['btn_yes_txt'] = 'Sim, acessar como cliente'; -$wb['btn_back_txt'] = 'Não, voltar a lista'; +$wb['btn_back_txt'] = 'Não, voltar para a lista'; $wb['udp_port_help_txt'] = 'Separado por vÃrgula'; $wb['active_txt'] = 'Ativo'; -$wb['firewall_error_unique'] = 'Já existe um registro de firewall igual para este servidor.'; -$wb['tcp_ports_error_regex'] = 'Caractere não permitido para atribuição numa porta TCP. Caracteres permitidos são: números, \':\' e \',\'.'; -$wb['udp_ports_error_regex'] = 'Caractere não permitido para atribuição numa porta UDP. Caracteres permitidos são: números, \':\' e \',\'.'; -$wb['login_as_or_logout_txt'] = 'Você deseja acessar novamente como {UTYPE} ou sair?'; +$wb['firewall_error_unique'] = 'Já existe uma regra de firewall idêntica para este servidor.'; +$wb['tcp_ports_error_regex'] = 'Caractere não permitido para porta tcp. Caracteres permitidos são números, ":" e ",".'; +$wb['udp_ports_error_regex'] = 'Caractere não permitido para porta udp. Caracteres permitidos são números, ":" e ",".'; +$wb['login_as_or_logout_txt'] = 'Gostaria de realizar acesso novamente como {UTYPE} ou sair?'; ?> diff --git a/interface/web/login/lib/lang/tr.lng b/interface/web/login/lib/lang/tr.lng index c50ea5c8a2..863a6310d5 100644 --- a/interface/web/login/lib/lang/tr.lng +++ b/interface/web/login/lib/lang/tr.lng @@ -3,12 +3,15 @@ $wb['error_user_password_empty'] = 'Kullanıcı adı ya da parola boÅŸ'; $wb['error_user_password_incorrect'] = 'Kullanıcı adı ya da parola hatalı'; $wb['error_user_blocked'] = 'Kullanıcı engellenmiÅŸ.'; $wb['error_user_too_many_logins'] = 'Fazla sayıda hatalı oturum açmayı denediniz, Lütfen 15 dakika sonra yeniden deneyin.'; -$wb['pass_reset_txt'] = 'Yazdığınız e-posta adresi hesabınızdakine uyarsa, yeni bir parola oluÅŸturularak e-posta adresinize gönderilir.'; +$wb['pass_reset_txt'] = 'Yazdığınız e-posta adresi hesabınızdakine uyarsa, yeni bir parola üretilerek e-posta adresinize gönderilir.'; $wb['pw_reset'] = 'Parolanız sıfırlandı ve e-posta adresinize gönderildi.'; +$wb['pw_reset_act'] = 'Size bir etkinleÅŸtirme baÄŸlantısı gönderildi. Parola isteÄŸinizi onaylamak için baÄŸlantıya tıklayın.'; $wb['pw_error'] = 'Kullanıcı adı ya da e-posta adresiniz doÄŸru deÄŸil.'; $wb['pw_error_noinput'] = 'Lütfen e-posta adresinizi ya da kullanıcı adınızı yazın.'; $wb['pw_reset_mail_msg'] = 'ISPConfig 3 Kontrol Paneli parolanız sıfırlandı. Yeni parolanız: '; $wb['pw_reset_mail_title'] = 'ISPConfig 3 Kontrol Paneli parolanız sıfırlandı'; +$wb['pw_reset_act_mail_title'] = 'ISPConfig 3 Control Panel parola sıfırlama isteÄŸini onaylayın'; +$wb['pw_reset_act_mail_msg'] = 'Lütfen ISPConfig 3 Control Panel hesabınızın parolasını sıfırlamak için ÅŸu baÄŸlantıya tıklayın: '; $wb['user_regex_error'] = 'Kullanıcı adınız izin verilmeyen karakterlerden oluÅŸuyor ya da 64 karakterden uzun.'; $wb['pw_error_length'] = 'Parola 64 karakterden uzun.'; $wb['email_error'] = 'E-posta adresi izin verilmeyen karakterlerden oluÅŸuyor ya da biçimi hatalı.'; @@ -24,11 +27,8 @@ $wb['back_txt'] = 'Geri'; $wb['error_maintenance_mode'] = 'ISPConfig bakımda. Kısa bir süre sonra yeniden çalışıyor olacak, sabrınız için teÅŸekkürler.'; $wb['theme_not_compatible'] = 'SeçilmiÅŸ tema geçerli ISPConfig sürümü ile uyumlu deÄŸil. Lütfen temanın yeni sürümünü araÅŸtırın.<br />Varsayılan tema etkinleÅŸtirildi.'; $wb['stay_logged_in_txt'] = 'Oturumum açık kalsın'; -$wb['pw_reset_act'] = 'You have been sent an activation link. Please visit the link to confirm your password request.'; -$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['lost_password_function_disabled_txt'] = 'The lost password function is not available for this user.'; -$wb['lost_password_function_wait_txt'] = 'You cannot request a new password, yet. Please wait a few minutes.'; -$wb['lost_password_function_expired_txt'] = 'This activation link has expired. Please request a new one.'; -$wb['lost_password_function_denied_txt'] = 'This activation link is not valid.'; +$wb['lost_password_function_disabled_txt'] = 'Bu kullanıcı parolamı unuttum özelliÄŸini kullanamaz.'; +$wb['lost_password_function_wait_txt'] = 'Henüz yeni parola isteÄŸinde bulunamazsınız. Lütfen bir kaç dakika bekleyin.'; +$wb['lost_password_function_expired_txt'] = 'Bu etkinleÅŸtirme baÄŸlantısının süresi geçmiÅŸ. Lütfen yeni bir parola sıfırlama isteÄŸinde bulunun.'; +$wb['lost_password_function_denied_txt'] = 'Bu etkinleÅŸtirme baÄŸlantısı geçersiz.'; ?> diff --git a/interface/web/login/lib/lang/tr_login_as.lng b/interface/web/login/lib/lang/tr_login_as.lng index f7f12feeff..8a54a8efd9 100644 --- a/interface/web/login/lib/lang/tr_login_as.lng +++ b/interface/web/login/lib/lang/tr_login_as.lng @@ -1,12 +1,13 @@ <?php $wb['login_1_txt'] = 'Bu kullanıcı olarak oturum açmak ister misiniz'; -$wb['login_2_txt'] = '\\"Geri dönmek\\" için oturumu kapat üzerine tıklayın.'; +$wb['login_2_txt'] = 'Oturumu Kapat üzerine tıklayarak "Geri Dönebilirsiniz".'; $wb['btn_yes_txt'] = 'Evet, Müşteri olarak oturum aç'; $wb['btn_back_txt'] = 'Hayır, listeye geri dön'; $wb['udp_port_help_txt'] = 'Virgül ile ayırarak yazın'; $wb['active_txt'] = 'Etkin'; $wb['firewall_error_unique'] = 'Bu sunucu için bir güvenlik duvarı kaydı zaten var.'; -$wb['tcp_ports_error_regex'] = 'TCP kapı açıklamasında karakter kullanılamaz. Yalnız rakam, \\":\\" ve \\",\\" karakterleri kullanılabilir.'; -$wb['udp_ports_error_regex'] = 'UDP kapı açıklamasında karakter kullanılamaz. Yalnız rakam, \\":\\" ve \\",\\" karakterleri kullanılabilir.'; -$wb['login_as_or_logout_txt'] = 'Do you want to re-login as {UTYPE} or logout?'; +$wb['active_txt'] = 'Etkin'; +$wb['tcp_ports_error_regex'] = 'TCP kapı açıklamasında karakter kullanılamaz. Yalnız rakam, ":" ve "," karakterleri kullanılabilir.'; +$wb['udp_ports_error_regex'] = 'UDP kapı açıklamasında karakter kullanılamaz. Yalnız rakam, ":" ve "," karakterleri kullanılabilir.'; +$wb['login_as_or_logout_txt'] = '{UTYPE} olarak oturum açmak ya da oturumunuzu kapatmak ister misiniz?'; ?> diff --git a/interface/web/mail/lib/lang/br.lng b/interface/web/mail/lib/lang/br.lng index 972e134bc8..7748342612 100644 --- a/interface/web/mail/lib/lang/br.lng +++ b/interface/web/mail/lib/lang/br.lng @@ -1,50 +1,56 @@ <?php -$wb['Email Alias'] = 'Apelidos de e-mail'; -$wb['Email Blacklist'] = 'Lista negra'; -$wb['Blacklist'] = 'Lista negra'; -$wb['Mail Content Filter'] = 'Filtro de conteúdo'; +$wb['Email Alias'] = 'Alias de e-mail'; +$wb['Email Blacklist'] = 'Lista Negra'; +$wb['Blacklist'] = 'Lista Negra'; +$wb['Mail Content Filter'] = 'Filtro de conteúdo de e-mail'; $wb['Filter'] = 'Filtro'; -$wb['Mail Domain'] = 'DomÃnio'; -$wb['Domain'] = 'DomÃnios'; -$wb['Email Catchall'] = 'Contas cata tudo'; -$wb['Email Forward'] = 'Encaminhamento'; +$wb['Mail Domain'] = 'DomÃnio de e-mail'; +$wb['Domain'] = 'DomÃnio'; +$wb['Email Catchall'] = 'Contas cata-tudo'; +$wb['Email Forward'] = 'Encaminhamento de e-mail'; $wb['Get Email'] = 'Busca de e-mail'; $wb['Spamfilter'] = 'Filtro anti-spam'; -$wb['Email Routing'] = 'Transportes'; +$wb['Email Routing'] = 'Rotas de e-mail'; +$wb['Mailing List'] = 'Listas de e-mail'; $wb['Email transport'] = 'Transportes'; $wb['Mailbox'] = 'Contas de e-mail'; -$wb['Autoresponder'] = 'Resposta automática'; -$wb['Mail Filter'] = 'Filtros'; +$wb['Autoresponder'] = 'Auto-resposta'; +$wb['Mail Filter'] = 'Filtro de e-mail'; $wb['Custom Rules'] = 'Regras personalizadas'; -$wb['Email filter'] = 'Filtro'; -$wb['Email Whitelist'] = 'Lista branca'; -$wb['Whitelist'] = 'Lista branca'; -$wb['Spamfilter blacklist'] = 'Filtro anti-spam (lista negra)'; -$wb['Spamfilter Config'] = 'Configuração do filtro anti-spam'; -$wb['Spamfilter policy'] = 'PolÃticas de filtro anti-spam'; +$wb['Email filter'] = 'Filtro de e-mail'; +$wb['Email Whitelist'] = 'Lista Branca de e-mails'; +$wb['Whitelist'] = 'Lista Branca'; +$wb['Spamfilter blacklist'] = 'Filtros anti-spam - lista negra'; +$wb['Blacklist'] = 'Lista Negra'; +$wb['Spamfilter Config'] = 'Configurações de filtros anti-spam'; +$wb['Servidor'] = 'Servidor'; +$wb['Spamfilter policy'] = 'PolÃticas de filtros anti-spam'; $wb['Policy'] = 'PolÃtica'; $wb['Quarantine'] = 'Quarentena'; $wb['Tag-Level'] = 'NÃvel de marcação'; $wb['Other'] = 'Outros'; -$wb['Spamfilter users'] = 'Usuários de filtro anti-spam'; -$wb['Users'] = 'Usuários'; -$wb['Spamfilter Whitelist'] = 'Filtro anti-spam (lista branca)'; -$wb['Email'] = 'e-mail'; -$wb['Email Mailbox'] = 'Contas de e-mail'; +$wb['Spamfilter users'] = 'Contas de e-mail para filtros anti-spam'; +$wb['Users'] = 'Contas de e-mail'; +$wb['Spamfilter Whitelist'] = 'Filtros anti-spam - lista branca'; +$wb['Whitelist'] = 'Lista Branca'; +$wb['Email'] = 'e-Mail'; +$wb['Email Mailbox'] = 'Conta de e-mail'; $wb['Email Accounts'] = 'Contas de e-mail'; -$wb['User / Domain'] = 'Usuário/domÃnio'; -$wb['Server Settings'] = 'Configurações do servidor'; -$wb['Fetchmail'] = 'Contas de busca'; -$wb['Mailbox traffic'] = 'Tráfego'; +$wb['User / Domain'] = 'Usuário/DomÃnio'; +$wb['Server Settings'] = 'Configurações do Servidor'; +$wb['Spamfilter'] = 'Filtros anti-spam'; +$wb['Fetchmail'] = 'Busca de e-mails'; +$wb['XMPP Domain'] = 'DomÃnios xmpp'; +$wb['XMPP Account'] = 'Contas xmpp'; +$wb['Mailbox traffic'] = 'Tráfego de e-mails'; $wb['Statistics'] = 'EstatÃsticas'; -$wb['Postfix Whitelist'] = 'Postfix (lista branca)'; -$wb['Postfix Blacklist'] = 'Postfix (lista negra)'; -$wb['Content Filter'] = 'Filtros de conteúdo'; -$wb['Global Filters'] = 'Filtros globais'; -$wb['Domain Alias'] = 'Apelidos de domÃnio'; +$wb['Backup Stats'] = 'EstatÃsticas de backup'; +$wb['Postfix Whitelist'] = 'Lista Branca do Postfix'; +$wb['Postfix Blacklist'] = 'Lista Negra do Postfix'; +$wb['Content Filter'] = 'Filtro de Conteúdo'; +$wb['Global Filters'] = 'Filtros Globais'; +$wb['Domain Alias'] = 'Alias de domÃnio'; $wb['Relay Recipients'] = 'Destinatários de retransmissão'; -$wb['Mailbox quota'] = 'Cota para contas de e-mails'; -$wb['Server'] = 'Servidor'; -$wb['add_header_txt'] = 'Header (adds \"X-Spam: Yes\")'; -$wb['rewrite_subject_txt'] = 'Subject (adds \"***SPAM***\" at the beginning)'; -?> +$wb['Mailbox quota'] = 'Cota da conta de e-mail'; +$wb['add_header_txt'] = 'Cabeçalho (adicionar "X-Spam: Yes")'; +$wb['rewrite_subject_txt'] = 'Assunto (adicionar "***SPAM***" no inÃcio)'; diff --git a/interface/web/mail/lib/lang/br_backup_stats_list.lng b/interface/web/mail/lib/lang/br_backup_stats_list.lng index 9d07817712..482e913200 100644 --- a/interface/web/mail/lib/lang/br_backup_stats_list.lng +++ b/interface/web/mail/lib/lang/br_backup_stats_list.lng @@ -1,9 +1,9 @@ <?php -$wb['list_head_txt'] = 'EstatÃsticas de backup'; +$wb['list_head_txt'] = 'Backup de EstatÃsticas'; $wb['active_txt'] = 'Ativo'; -$wb['domain_txt'] = 'e-mail'; -$wb['backup_count_txt'] = 'Contador de backup'; +$wb['domain_txt'] = 'DomÃnio'; +$wb['backup_count_txt'] = 'Contador de backups'; $wb['backup_server_txt'] = 'Servidor'; -$wb['backup_interval_txt'] = 'Intervalo/contador'; -$wb['backup_size_txt'] = 'Tamanho'; +$wb['backup_interval_txt'] = 'Intervalo entre backups'; +$wb['backup_size_txt'] = 'Tamanho do backup'; ?> diff --git a/interface/web/mail/lib/lang/br_mail_alias.lng b/interface/web/mail/lib/lang/br_mail_alias.lng index 993dd71d2a..6361957180 100644 --- a/interface/web/mail/lib/lang/br_mail_alias.lng +++ b/interface/web/mail/lib/lang/br_mail_alias.lng @@ -1,17 +1,17 @@ <?php -$wb['email_txt'] = 'e-mail'; +$wb['email_txt'] = 'Alias de e-mail'; $wb['destination_txt'] = 'Destino'; $wb['active_txt'] = 'Ativo'; $wb['email_error_isemail'] = 'Endereço de e-mail é inválido.'; $wb['email_error_unique'] = 'Endereço de e-mail duplicado.'; $wb['no_domain_perm'] = 'Você não tem permissão para este domÃnio.'; -$wb['destination_error_isemail'] = 'Endereço de destino inválido'; -$wb['limit_mailalias_txt'] = 'O limite de apelidos de domÃnio para esta conta foi alcançado.'; -$wb['duplicate_mailbox_txt'] = 'Já existe uma conta de e-mail com este endereço.'; +$wb['destination_error_isemail'] = 'Endereço de e-mail de destino é inválido.'; +$wb['limit_mailalias_txt'] = 'O limite de alias de e-mail para esta conta foi alcançado.'; +$wb['duplicate_mailbox_txt'] = 'Já existe um endereço de e-mail idêntico.'; $wb['domain_txt'] = 'DomÃnio'; -$wb['duplicate_email_alias_txt'] = 'Este apelido de e-mail já existe.'; -$wb['source_txt'] = 'Apelido'; -$wb['greylisting_txt'] = 'Habilitar greylist'; +$wb['duplicate_email_alias_txt'] = 'Este alias de e-mail já existe.'; +$wb['source_txt'] = 'Alias'; $wb['send_as_txt'] = 'Enviar como'; -$wb['send_as_exp'] = 'Permite o alvo enviar e-mails usando este endereço como origem'; +$wb['send_as_exp'] = 'Permitir o destino enviar e-mails usando este alias como origem'; +$wb['greylisting_txt'] = 'Habilitar greylist'; ?> diff --git a/interface/web/mail/lib/lang/br_mail_alias_list.lng b/interface/web/mail/lib/lang/br_mail_alias_list.lng index 69fb77a779..5e96f0fb30 100644 --- a/interface/web/mail/lib/lang/br_mail_alias_list.lng +++ b/interface/web/mail/lib/lang/br_mail_alias_list.lng @@ -1,8 +1,8 @@ <?php -$wb['list_head_txt'] = 'Apelidos de e-mail'; +$wb['list_head_txt'] = 'Alias de e-mail'; $wb['active_txt'] = 'Ativo'; -$wb['source_txt'] = 'origem'; +$wb['source_txt'] = 'Origem'; $wb['destination_txt'] = 'Destino'; -$wb['email_txt'] = 'e-mail'; -$wb['add_new_record_txt'] = 'Adicionar novo apelido'; +$wb['email_txt'] = 'e-Mail'; +$wb['add_new_record_txt'] = 'Adicionar novo alias de e-mail'; ?> diff --git a/interface/web/mail/lib/lang/br_mail_aliasdomain.lng b/interface/web/mail/lib/lang/br_mail_aliasdomain.lng index 68986f536e..a0f4e5067e 100644 --- a/interface/web/mail/lib/lang/br_mail_aliasdomain.lng +++ b/interface/web/mail/lib/lang/br_mail_aliasdomain.lng @@ -3,9 +3,9 @@ $wb['source_txt'] = 'Origem'; $wb['destination_txt'] = 'Destino'; $wb['active_txt'] = 'Ativo'; $wb['no_domain_perm'] = 'Você não tem permissão para este domÃnio.'; -$wb['limit_mailaliasdomain_txt'] = 'O limite de apelidos de domÃnios para esta conta foi alcançado.'; +$wb['limit_mailaliasdomain_txt'] = 'O limite de alias de domÃnios para esta conta foi alcançado.'; $wb['source_destination_identical_txt'] = 'Origem e destino são os mesmos.'; -$wb['source_error_empty'] = 'Origem está em branco.'; -$wb['source_error_unique'] = 'Origem duplicada.'; -$wb['source_error_regex'] = 'Origem inválida.'; +$wb['source_error_empty'] = 'O domÃnio de origem está em branco.'; +$wb['source_error_unique'] = 'DomÃnio de origem duplicado.'; +$wb['source_error_regex'] = 'DomÃnio de origem é inválido.'; ?> diff --git a/interface/web/mail/lib/lang/br_mail_aliasdomain_list.lng b/interface/web/mail/lib/lang/br_mail_aliasdomain_list.lng index 4849c3cb6b..ddf1ea0a96 100644 --- a/interface/web/mail/lib/lang/br_mail_aliasdomain_list.lng +++ b/interface/web/mail/lib/lang/br_mail_aliasdomain_list.lng @@ -1,7 +1,8 @@ <?php -$wb['list_head_txt'] = 'Apelido de domÃnio'; +$wb['list_head_txt'] = 'Alias de domÃnio'; $wb['active_txt'] = 'Ativo'; $wb['source_txt'] = 'Origem'; $wb['destination_txt'] = 'Destino'; -$wb['add_new_record_txt'] = 'Adicionar novo apelido'; +$wb['source_txt'] = 'Origem'; +$wb['add_new_record_txt'] = 'Adicionar novo alias de domÃnio'; ?> diff --git a/interface/web/mail/lib/lang/br_mail_backup_list.lng b/interface/web/mail/lib/lang/br_mail_backup_list.lng index 8ef31a0769..b8e4f82300 100644 --- a/interface/web/mail/lib/lang/br_mail_backup_list.lng +++ b/interface/web/mail/lib/lang/br_mail_backup_list.lng @@ -3,14 +3,14 @@ $wb['list_head_txt'] = 'Backups existentes'; $wb['date_txt'] = 'Data'; $wb['backup_type_txt'] = 'Tipo'; $wb['filename_txt'] = 'Arquivo de backup'; -$wb['restore_backup_txt'] = 'Restaurar backup'; -$wb['restore_info_txt'] = 'Restauração do backup iniciada. Esta ação poderá levar vários minutos para ser concluÃda. Aguarde.'; -$wb['restore_confirm_txt'] = 'A restauração do backup reescreverá os arquivos existentes das suas caixas postais. Tem certeza que deseja restaurar este backup?'; -$wb['download_pending_txt'] = 'Já existe um download deste backup em execução.'; -$wb['restore_pending_txt'] = 'Já existe uma restauração deste backup em execução.'; -$wb['delete_backup_txt'] = 'Remover backup'; -$wb['delete_info_txt'] = 'Remoção do backup iniciada. Esta ação poderá levar vários minutos para ser concluÃda. Aguarde.'; -$wb['delete_confirm_txt'] = 'Tem certeza que deseja remover este backup?'; -$wb['delete_pending_txt'] = 'Já existe uma remoção deste backup em execução.'; -$wb['filesize_txt'] = 'Tamanho'; +$wb['restore_backup_txt'] = 'Restaurar'; +$wb['restore_info_txt'] = 'A restauração do backup está em andamento. Esta ação demora vários minutos para concluir.'; +$wb['restore_confirm_txt'] = 'A restauração do backup pode sobrescrever arquivos das contas de e-mail. Você tem certeza que deseja restaurar este backup?'; +$wb['download_pending_txt'] = 'Já existe um download de backup em andamento.'; +$wb['restore_pending_txt'] = 'Já existe uma restauração de backup em andamento.'; +$wb['delete_backup_txt'] = 'Remover Backup'; +$wb['delete_info_txt'] = 'A remoção do backup está em andamento. Esta ação demora vários minutos para concluir.'; +$wb['delete_confirm_txt'] = 'Deseja remover este backup?'; +$wb['delete_pending_txt'] = 'Já existe uma remoção de backup em andamento.'; +$wb['filesize_txt'] = 'Tamanho do arquivo'; ?> diff --git a/interface/web/mail/lib/lang/br_mail_blacklist.lng b/interface/web/mail/lib/lang/br_mail_blacklist.lng index 4c52e77d23..14c323c342 100644 --- a/interface/web/mail/lib/lang/br_mail_blacklist.lng +++ b/interface/web/mail/lib/lang/br_mail_blacklist.lng @@ -1,9 +1,9 @@ <?php $wb['server_id_txt'] = 'Servidor'; -$wb['source_txt'] = 'Lista negra'; +$wb['source_txt'] = 'Lista Negra'; $wb['recipient_txt'] = 'Destinatário'; $wb['active_txt'] = 'Ativo'; -$wb['source_error_notempty'] = 'Endereço está em branco.'; +$wb['source_error_notempty'] = 'Destinatário está em branco.'; $wb['type_txt'] = 'Tipo'; $wb['limit_mailfilter_txt'] = 'O limite de filtros de e-mail para esta conta foi alcançado.'; ?> diff --git a/interface/web/mail/lib/lang/br_mail_blacklist_list.lng b/interface/web/mail/lib/lang/br_mail_blacklist_list.lng index d561cea6b6..319a354016 100644 --- a/interface/web/mail/lib/lang/br_mail_blacklist_list.lng +++ b/interface/web/mail/lib/lang/br_mail_blacklist_list.lng @@ -1,10 +1,10 @@ <?php -$wb['list_head_txt'] = 'Lista Negra'; +$wb['list_head_txt'] = 'Lista negra'; $wb['active_txt'] = 'Ativo'; $wb['server_id_txt'] = 'Servidor'; -$wb['source_txt'] = 'e-mail'; +$wb['source_txt'] = 'Endereço de e-mail'; $wb['type_txt'] = 'Tipo'; $wb['recipient_txt'] = 'Destinatário'; -$wb['add_new_record_txt'] = 'Adicionar novo e-mail à lista'; +$wb['add_new_record_txt'] = 'Adicionar novo registro'; $wb['access_txt'] = 'acesso'; ?> diff --git a/interface/web/mail/lib/lang/br_mail_content_filter.lng b/interface/web/mail/lib/lang/br_mail_content_filter.lng index dc85d4e78e..b0a7c15b12 100644 --- a/interface/web/mail/lib/lang/br_mail_content_filter.lng +++ b/interface/web/mail/lib/lang/br_mail_content_filter.lng @@ -1,9 +1,9 @@ <?php $wb['server_id_txt'] = 'Servidor'; $wb['type_txt'] = 'Filtro'; -$wb['pattern_txt'] = 'Padrão de expressão regular.'; -$wb['data_txt'] = 'Data'; +$wb['pattern_txt'] = 'Padrão da expressão regular'; +$wb['data_txt'] = 'Dados'; $wb['action_txt'] = 'Ação'; $wb['active_txt'] = 'Ativo'; -$wb['pattern_error_empty'] = 'Padrão da expressão regular está em branco'; +$wb['pattern_error_empty'] = 'Padrão da expressão regular está em branco.'; ?> diff --git a/interface/web/mail/lib/lang/br_mail_content_filter_list.lng b/interface/web/mail/lib/lang/br_mail_content_filter_list.lng index 4d35bd6352..65674a903d 100644 --- a/interface/web/mail/lib/lang/br_mail_content_filter_list.lng +++ b/interface/web/mail/lib/lang/br_mail_content_filter_list.lng @@ -1,5 +1,5 @@ <?php -$wb['list_head_txt'] = 'Cabeçalhos postfix e body checks'; +$wb['list_head_txt'] = 'Verificações de cabeçalho e corpo de e-mail - Postfix'; $wb['active_txt'] = 'Ativo'; $wb['server_id_txt'] = 'Servidor'; $wb['pattern_txt'] = 'Padrão'; diff --git a/interface/web/mail/lib/lang/br_mail_domain.lng b/interface/web/mail/lib/lang/br_mail_domain.lng index 87cdd1287c..0bdb473095 100644 --- a/interface/web/mail/lib/lang/br_mail_domain.lng +++ b/interface/web/mail/lib/lang/br_mail_domain.lng @@ -3,21 +3,21 @@ $wb['server_id_txt'] = 'Servidor'; $wb['domain_txt'] = 'DomÃnio'; $wb['type_txt'] = 'Tipo'; $wb['active_txt'] = 'Ativo'; -$wb['domain_error_empty'] = 'DomÃnio está em branco.'; -$wb['domain_error_unique'] = 'DomÃnio duplicado'; -$wb['domain_error_regex'] = 'Nome de domÃnio inválido'; -$wb['client_txt'] = 'Cliente'; -$wb['limit_maildomain_txt'] = 'O limite de contas de e-mail para este domÃnio foi alcançado.'; -$wb['policy_txt'] = 'Filtro anti-spam'; -$wb['no_policy'] = '- desabilitado -'; -$wb['dkim_txt'] = 'habilitar DKIM'; +$wb['dkim_txt'] = 'Habilitar DKIM'; $wb['dkim_private_txt'] = 'Chave privada DKIM'; -$wb['dkim_public_txt'] = 'Somente chave pública/nfor DKIM'; +$wb['dkim_public_txt'] = 'Chave pública DKIMapenas para informação'; $wb['dkim_generate_txt'] = 'Gerar chave privada DKIM'; $wb['dkim_dns_txt'] = 'Registro dns'; -$wb['dkim_private_key_error'] = 'Chave privada DKIM inválida'; -$wb['dkim_selector_txt'] = 'Seletor DKIM'; -$wb['dkim_selector_error'] = 'Seletor DKIM é inválido. Use apenas caracteres minúsculos e alfanuméricos (\'az\' ou \'0-9\') até o máximo de 63 caracteres'; -$wb['dkim_settings_txt'] = 'DomainKeys Identified Mail (DKIM)'; +$wb['dkim_private_key_error'] = 'A chave privada DKIM é inválida.'; +$wb['domain_error_empty'] = 'O domÃnio está em branco.'; +$wb['domain_error_unique'] = 'O domÃnio está duplicado.'; +$wb['domain_error_regex'] = 'O domÃnio é inválido.'; +$wb['dkim_settings_txt'] = 'DomÃnio de e-mail identificado por chaves de domÃnio (DKIM)'; +$wb['client_txt'] = 'Cliente'; +$wb['limit_maildomain_txt'] = 'O limite de domÃnios de e-mail para esta conta foi alcançado.'; +$wb['policy_txt'] = 'Filtro anti-spam'; +$wb['no_policy'] = '-desabilitado-'; $wb['error_not_allowed_server_id'] = 'O servidor selecionado não é permitido para esta conta.'; +$wb['dkim_selector_txt'] = 'Seletor DKIM'; +$wb['dkim_selector_error'] = 'Seletor DKIM é inválido. Utilize apenas caracteres alfanuméricos em minúsculas (a-z ou 0-9) e no máximo 63 caracteres.'; ?> diff --git a/interface/web/mail/lib/lang/br_mail_domain_catchall.lng b/interface/web/mail/lib/lang/br_mail_domain_catchall.lng index 3c4c6a2628..3d4f85af8d 100644 --- a/interface/web/mail/lib/lang/br_mail_domain_catchall.lng +++ b/interface/web/mail/lib/lang/br_mail_domain_catchall.lng @@ -1,12 +1,13 @@ <?php $wb['domain_txt'] = 'DomÃnio'; -$wb['destination_txt'] = 'Destino'; +$wb['destination_txt'] = 'Endereço de e-mail de destino'; $wb['active_txt'] = 'Ativo'; -$wb['domain_error_unique'] = 'Já existe uma conta cata tudo para este domÃnio.'; +$wb['domain_error_unique'] = 'Já existe uma conta cata-tudo para este domÃnio.'; $wb['no_domain_perm'] = 'Você não tem permissão para este domÃnio.'; -$wb['domain_error_regex'] = 'O domÃnio contém caracteres inválidos'; -$wb['limit_mailcatchall_txt'] = 'O limite de contas cata tudo para este domÃnio foi alcançado.'; +$wb['domain_error_regex'] = 'O domÃnio é inválido ou contêm caracteres inválidos.'; +$wb['limit_mailcatchall_txt'] = 'O limite de contas cata-tudo para esta conta foi alcançado.'; +$wb['domain_txt'] = 'DomÃnio'; $wb['source_txt'] = 'Origem'; -$wb['destination_error_isemail'] = 'Destino não é um e-mail válido.'; -$wb['greylisting_txt'] = 'Enable greylisting'; +$wb['destination_error_isemail'] = 'Endereço de e-mail de destino é inválido.'; +$wb['greylisting_txt'] = 'Habilitar greylist'; ?> diff --git a/interface/web/mail/lib/lang/br_mail_domain_catchall_list.lng b/interface/web/mail/lib/lang/br_mail_domain_catchall_list.lng index 57c1f3a11a..2d5747826c 100644 --- a/interface/web/mail/lib/lang/br_mail_domain_catchall_list.lng +++ b/interface/web/mail/lib/lang/br_mail_domain_catchall_list.lng @@ -1,8 +1,8 @@ <?php -$wb['list_head_txt'] = 'Contas cata tudo'; +$wb['list_head_txt'] = 'Conta cata-tudo'; $wb['active_txt'] = 'Ativo'; -$wb['source_txt'] = 'Origem'; -$wb['destination_txt'] = 'Endereço de destino'; +$wb['source_txt'] = 'origem'; +$wb['destination_txt'] = 'Endereço de e-mail de destino'; $wb['server_id_txt'] = 'Servidor'; $wb['domain_txt'] = 'DomÃnio'; $wb['add_new_record_txt'] = 'Adicionar nova conta'; diff --git a/interface/web/mail/lib/lang/br_mail_forward.lng b/interface/web/mail/lib/lang/br_mail_forward.lng index 8f9864638d..5a2400e49b 100644 --- a/interface/web/mail/lib/lang/br_mail_forward.lng +++ b/interface/web/mail/lib/lang/br_mail_forward.lng @@ -1,13 +1,13 @@ <?php -$wb['email_txt'] = 'e-mail'; -$wb['destination_txt'] = 'e-mail de destino'; +$wb['email_txt'] = 'e-Mail'; +$wb['destination_txt'] = 'Endereço e-mail de destino'; $wb['active_txt'] = 'Ativo'; -$wb['limit_mailforward_txt'] = 'O limite de encaminhamentos para esta conta foi alcançado.'; -$wb['duplicate_mailbox_txt'] = 'Já existe um e-mail com este endereço.'; +$wb['limit_mailforward_txt'] = 'O limite de encaminhamentos de e-mail para esta conta foi alcançado.'; +$wb['duplicate_mailbox_txt'] = 'Já existe um conta de e-mail idêntica.'; $wb['domain_txt'] = 'DomÃnio'; -$wb['source_txt'] = 'Origem'; -$wb['greylisting_txt'] = 'Habilitar greylist'; -$wb['email_error_isemail'] = 'Por favor, insira um e-mail válido.'; +$wb['source_txt'] = 'Endereço de e-mail de origem'; +$wb['email_error_isemail'] = 'Por favor informe um endereço de e-mail válido.'; $wb['send_as_txt'] = 'Enviar como'; -$wb['send_as_exp'] = 'Permite o alvo enviar e-mails usando este endereço como origem (se o alvo for interno)'; +$wb['send_as_exp'] = 'Permitir o destino enviar e-mails usando este endereço como origem (se o destino for interno)'; +$wb['greylisting_txt'] = 'Habilitar greylist'; ?> diff --git a/interface/web/mail/lib/lang/br_mail_forward_list.lng b/interface/web/mail/lib/lang/br_mail_forward_list.lng index 025ecc00b6..166839e2c9 100644 --- a/interface/web/mail/lib/lang/br_mail_forward_list.lng +++ b/interface/web/mail/lib/lang/br_mail_forward_list.lng @@ -2,7 +2,7 @@ $wb['list_head_txt'] = 'Encaminhamento de e-mail'; $wb['active_txt'] = 'Ativo'; $wb['source_txt'] = 'Origem'; -$wb['destination_txt'] = 'Destino'; -$wb['email_txt'] = 'e-mail'; -$wb['add_new_record_txt'] = 'Adicionar novo encaminhamento'; +$wb['destination_txt'] = 'Destinatário'; +$wb['email_txt'] = 'e-Mail'; +$wb['add_new_record_txt'] = 'Adicionar novo encaminhamento de e-mail'; ?> diff --git a/interface/web/mail/lib/lang/br_mail_get.lng b/interface/web/mail/lib/lang/br_mail_get.lng index dc9d2fce87..f3d055f6d8 100644 --- a/interface/web/mail/lib/lang/br_mail_get.lng +++ b/interface/web/mail/lib/lang/br_mail_get.lng @@ -1,19 +1,19 @@ <?php $wb['server_id_txt'] = 'Servidor'; $wb['type_txt'] = 'Tipo'; -$wb['source_server_txt'] = 'Servidor pop3/imap'; +$wb['source_server_txt'] = 'Servidor POP3/IMAP'; $wb['source_username_txt'] = 'Usuário'; $wb['source_password_txt'] = 'Senha'; -$wb['source_delete_txt'] = 'Remover mensagens da origem após o recebimento'; +$wb['source_delete_txt'] = 'Remover e-mails após recuperação'; +$wb['source_delete_note_txt'] = 'Verifique primeiro se a recuperação de e-mails funciona antes de ativar esta opção.'; +$wb['source_read_all_txt'] = 'Recuperar todos e-mails (inclusive e-mails lidos)'; $wb['destination_txt'] = 'Destino'; $wb['active_txt'] = 'Ativo'; -$wb['limit_fetchmail_txt'] = 'O limite de contas de buscas para esta conta foi alcançado.'; -$wb['source_server_error_isempty'] = 'Servidor está em branco.'; -$wb['source_username_error_isempty'] = 'Usuário está em branco.'; -$wb['source_password_error_isempty'] = 'Senha está em branco.'; -$wb['destination_error_isemail'] = 'Destino não selecionado.'; -$wb['source_server_error_regex'] = 'Servidor pop3/imap não é um domÃnio válido.'; -$wb['source_read_all_txt'] = 'Receber todos os e-mails (inclusive e-mails lidos)'; -$wb['error_delete_read_all_combination'] = 'Combinação ilegal de opções. Você não pode usar \'Apagar e-mails após recebimento\' = não junto com \'Receber todos os e-mail\' = sim.'; -$wb['source_delete_note_txt'] = 'Por favor, verifique se o e-mail do para recepção está operacional, antes de ativar esta configuração.'; +$wb['limit_fetchmail_txt'] = 'O limite de registros de busca de e-mails para esta conta foi alcançado.'; +$wb['source_server_error_isempty'] = 'O servidor está em branco.'; +$wb['source_username_error_isempty'] = 'O usuário está em branco.'; +$wb['source_password_error_isempty'] = 'A senha está em branco.'; +$wb['destination_error_isemail'] = 'Nenhum destino selecionado.'; +$wb['source_server_error_regex'] = 'O servidor POP3/IMAP é inválido.'; +$wb['error_delete_read_all_combination'] = 'Combinação ilegal nas opções. Não pode ser utilizado "Remover e-mails após recuperação" = "não" e "Recuperar todos e-mail" = "sim".'; ?> diff --git a/interface/web/mail/lib/lang/br_mail_get_list.lng b/interface/web/mail/lib/lang/br_mail_get_list.lng index 07d28d0bd8..84b8bbd33e 100644 --- a/interface/web/mail/lib/lang/br_mail_get_list.lng +++ b/interface/web/mail/lib/lang/br_mail_get_list.lng @@ -1,5 +1,5 @@ <?php -$wb['list_head_txt'] = 'Busca de mensagens de um servidor POP3/IMAP'; +$wb['list_head_txt'] = 'Busca de e-mails de servidores externos - POP3/IMAP'; $wb['active_txt'] = 'Ativo'; $wb['server_id_txt'] = 'Servidor'; $wb['source_server_txt'] = 'Servidor externo'; diff --git a/interface/web/mail/lib/lang/br_mail_mailinglist.lng b/interface/web/mail/lib/lang/br_mail_mailinglist.lng index a34dca7f35..87f5bcbb64 100644 --- a/interface/web/mail/lib/lang/br_mail_mailinglist.lng +++ b/interface/web/mail/lib/lang/br_mail_mailinglist.lng @@ -1,22 +1,22 @@ <?php -$wb['limit_mailmailinglist_txt'] = 'Limite alcançado'; -$wb['domain_error_empty'] = 'DomÃnio está em branco.'; -$wb['listname_error_empty'] = 'Nome da lista está em branco.'; -$wb['domain_error_regex'] = 'DomÃnio é inválido.'; -$wb['email_in_use_txt'] = 'e-mail está em uso'; +$wb['mailinglist_txt'] = 'Lista de e-mail'; +$wb['limit_mailmailinglist_txt'] = 'O limite foi alcançado.'; +$wb['domain_error_empty'] = 'O domÃnio está em branco.'; +$wb['listname_error_empty'] = 'O nome da lista está em branco.'; +$wb['domain_error_regex'] = 'O domÃnio é inválido.'; +$wb['email_in_use_txt'] = 'O e-mail já está em uso.'; $wb['no_domain_perm'] = 'Você não tem permissão para este domÃnio.'; $wb['password_strength_txt'] = 'Dificuldade da senha'; $wb['server_id_txt'] = 'Servidor'; $wb['domain_txt'] = 'DomÃnio'; -$wb['listname_txt'] = 'Nome da lista'; +$wb['listname_txt'] = 'Lista'; $wb['client_txt'] = 'Cliente'; -$wb['email_txt'] = 'e-mail'; +$wb['email_txt'] = 'e-Mail'; $wb['password_txt'] = 'Senha'; -$wb['generate_password_txt'] = 'Gerar senha'; -$wb['repeat_password_txt'] = 'Repetir senha'; -$wb['password_mismatch_txt'] = 'A senhas não coincidem.'; -$wb['password_match_txt'] = 'A senhas coincidem.'; -$wb['listname_error_unique'] = 'Já existe uma lista com o mesmo nome neste servidor. Por favor, insira outro nome.'; +$wb['generate_password_txt'] = 'Gerar Senha'; +$wb['repeat_password_txt'] = 'Repetir Senha'; +$wb['password_mismatch_txt'] = 'As senhas não coincidem.'; +$wb['password_match_txt'] = 'As senhas coincidem.'; +$wb['listname_error_unique'] = 'Já existe uma lista de e-mails idêntica para este servidor. Por favor escolha um nome diferente.'; $wb['email_error_isemail'] = 'Endereço de e-mail é inválido.'; -$wb['mailinglist_txt'] = 'Lista de e-mails'; ?> diff --git a/interface/web/mail/lib/lang/br_mail_mailinglist_list.lng b/interface/web/mail/lib/lang/br_mail_mailinglist_list.lng index 08fd204fbb..d7dcf02c01 100644 --- a/interface/web/mail/lib/lang/br_mail_mailinglist_list.lng +++ b/interface/web/mail/lib/lang/br_mail_mailinglist_list.lng @@ -1,5 +1,5 @@ <?php $wb['list_head_txt'] = 'Lista de e-mails'; $wb['domain_txt'] = 'DomÃnio'; -$wb['listname_txt'] = 'Nome'; +$wb['listname_txt'] = 'Nome da lista'; ?> diff --git a/interface/web/mail/lib/lang/br_mail_relay_recipient.lng b/interface/web/mail/lib/lang/br_mail_relay_recipient.lng index 0ce921b1a1..637788ce48 100644 --- a/interface/web/mail/lib/lang/br_mail_relay_recipient.lng +++ b/interface/web/mail/lib/lang/br_mail_relay_recipient.lng @@ -3,7 +3,7 @@ $wb['server_id_txt'] = 'Servidor'; $wb['source_txt'] = 'Destinatário de retransmissão'; $wb['recipient_txt'] = 'Destinatário'; $wb['active_txt'] = 'Ativo'; -$wb['source_error_notempty'] = 'Endereço está em branco.'; +$wb['source_error_notempty'] = 'Destinatário de retransmissão está em branco.'; $wb['type_txt'] = 'Tipo'; -$wb['limit_mailfilter_txt'] = 'O limite de filtros para esta conta foi alcançado.'; +$wb['limit_mailfilter_txt'] = 'O limite de filtros de e-mail para esta conta foi alcançado.'; ?> diff --git a/interface/web/mail/lib/lang/br_mail_relay_recipient_list.lng b/interface/web/mail/lib/lang/br_mail_relay_recipient_list.lng index b6ca775e5e..d96bab59eb 100644 --- a/interface/web/mail/lib/lang/br_mail_relay_recipient_list.lng +++ b/interface/web/mail/lib/lang/br_mail_relay_recipient_list.lng @@ -2,8 +2,8 @@ $wb['list_head_txt'] = 'Destinatários de retransmissão'; $wb['active_txt'] = 'Ativo'; $wb['server_id_txt'] = 'Servidor'; -$wb['source_txt'] = 'Remetente'; +$wb['source_txt'] = 'Endereço do destinatário'; $wb['recipient_txt'] = 'Destinatário'; -$wb['add_new_record_txt'] = 'Adicionar novo destinatário'; +$wb['add_new_record_txt'] = 'Adicionar novo destinatário de retransmissão'; $wb['access_txt'] = 'acesso'; ?> diff --git a/interface/web/mail/lib/lang/br_mail_spamfilter.lng b/interface/web/mail/lib/lang/br_mail_spamfilter.lng index 3e7201b95d..e38894fde3 100644 --- a/interface/web/mail/lib/lang/br_mail_spamfilter.lng +++ b/interface/web/mail/lib/lang/br_mail_spamfilter.lng @@ -1,17 +1,17 @@ <?php -$wb['email_txt'] = 'E-mail'; +$wb['email_txt'] = 'e-Mail'; $wb['spam_rewrite_score_int_txt'] = 'Pontuação de reescrita'; -$wb['spam_redirect_score_int_txt'] = 'Pontuação de redirecionamento'; +$wb['spam_redirect_score_int_txt'] = 'Redirecionar pontuação'; $wb['spam_delete_score_int_txt'] = 'Remover pontuação'; $wb['spam_rewrite_subject_txt'] = 'Reescrever assunto'; $wb['spam_redirect_maildir_txt'] = 'Redirecionar conta de e-mail'; $wb['active_txt'] = 'Ativo'; -$wb['spam_rewrite_txt'] = 'Reescrever assunto da mensagem depois desta pontuação.'; -$wb['spam_redirect_txt'] = 'Redirecione esta mensagem depois desta pontuação para esta conta de e-mail'; -$wb['spam_delete_txt'] = 'Remover esta mensagem depois desta pontuação.'; -$wb['disable_txt'] = 'Dica: Para desabilitar uma opção de filtro, configure a pontuação como 0.00.'; +$wb['spam_rewrite_txt'] = 'Reescrever assunto do e-mail acima desta pontuação.'; +$wb['spam_redirect_txt'] = 'Redirecionar e-mail acima desta pontuação para a conta de e-mail selecionada.'; +$wb['spam_delete_txt'] = 'Remover e-mail acima desta pontuação.'; +$wb['disable_txt'] = 'Dica: Para desabilitar uma opção de filtragem, configure a pontuação para 0.00'; $wb['email_error_isemail'] = 'Endereço de e-mail é inválido.'; -$wb['email_error_unique'] = 'Já existem registros iguais de filtros anti-spam para este e-mail.'; -$wb['spam_redirect_maildir_purge_txt'] = 'Remover Maildir depois'; -$wb['days_txt'] = 'Dias'; +$wb['email_error_unique'] = 'Já existe um filtro anti-spam igual para este endereço de e-mail.'; +$wb['spam_redirect_maildir_purge_txt'] = 'Remover diretório de e-mail após'; +$wb['days_txt'] = 'dias.'; ?> diff --git a/interface/web/mail/lib/lang/br_mail_spamfilter_list.lng b/interface/web/mail/lib/lang/br_mail_spamfilter_list.lng index 40c680da72..51044a3bec 100644 --- a/interface/web/mail/lib/lang/br_mail_spamfilter_list.lng +++ b/interface/web/mail/lib/lang/br_mail_spamfilter_list.lng @@ -1,8 +1,8 @@ <?php $wb['list_head_txt'] = 'Filtro anti-spam'; $wb['active_txt'] = 'Ativo'; -$wb['server_id_txt'] = 'Servidor'; -$wb['server_name_txt'] = 'Nome'; -$wb['email_txt'] = 'e-mail'; -$wb['add_new_record_txt'] = 'Adicionar novo filtro anti-spam'; +$wb['server_id_txt'] = 'ID do servidor'; +$wb['server_name_txt'] = 'Nome do servidor'; +$wb['email_txt'] = 'e-Mail'; +$wb['add_new_record_txt'] = 'Adicionar filtro anti-spam'; ?> diff --git a/interface/web/mail/lib/lang/br_mail_transport.lng b/interface/web/mail/lib/lang/br_mail_transport.lng index 7b080493c2..cf59e244bb 100644 --- a/interface/web/mail/lib/lang/br_mail_transport.lng +++ b/interface/web/mail/lib/lang/br_mail_transport.lng @@ -3,9 +3,9 @@ $wb['server_id_txt'] = 'Servidor'; $wb['domain_txt'] = 'DomÃnio'; $wb['destination_txt'] = 'Destino'; $wb['type_txt'] = 'Tipo'; -$wb['mx_txt'] = 'Sem MX lookup'; +$wb['mx_txt'] = 'Sem pesquisa MX'; $wb['sort_order_txt'] = 'Ordenar por'; $wb['active_txt'] = 'Ativo'; -$wb['limit_mailrouting_txt'] = 'O limite de transportes para esta conta foi alcançado.'; +$wb['limit_mailrouting_txt'] = 'O limite de rotas de e-mail para esta conta foi alcançado.'; $wb['transport_txt'] = 'Transporte'; ?> diff --git a/interface/web/mail/lib/lang/br_mail_transport_list.lng b/interface/web/mail/lib/lang/br_mail_transport_list.lng index 1e824b345a..4597742bef 100644 --- a/interface/web/mail/lib/lang/br_mail_transport_list.lng +++ b/interface/web/mail/lib/lang/br_mail_transport_list.lng @@ -1,6 +1,6 @@ <?php -$wb['list_head_txt'] = 'Transporte de e-mails'; -$wb['active_txt'] = 'Ativa'; +$wb['list_head_txt'] = 'Roteamento avançado de e-mail'; +$wb['active_txt'] = 'Ativo'; $wb['server_id_txt'] = 'Servidor'; $wb['domain_txt'] = 'DomÃnio'; $wb['transport_txt'] = 'Transporte'; diff --git a/interface/web/mail/lib/lang/br_mail_user.lng b/interface/web/mail/lib/lang/br_mail_user.lng index f91d40f625..ed6e35ef61 100644 --- a/interface/web/mail/lib/lang/br_mail_user.lng +++ b/interface/web/mail/lib/lang/br_mail_user.lng @@ -1,65 +1,65 @@ <?php -$wb['custom_mailfilter_txt'] = 'Fórmula de filtro de e-mail'; -$wb['email_txt'] = 'e-mail'; +$wb['custom_mailfilter_txt'] = 'Modelo de filtro de e-mail personalizado'; +$wb['email_txt'] = 'e-Mail'; $wb['cryptpwd_txt'] = 'Senha'; $wb['password_strength_txt'] = 'Dificuldade da senha'; $wb['active_txt'] = 'Ativo'; $wb['email_error_isemail'] = 'Endereço de e-mail é inválido.'; $wb['email_error_unique'] = 'Endereço de e-mail duplicado.'; +$wb['autoresponder_subject_txt'] = 'Assunto do e-mail'; +$wb['autoresponder_subject'] = 'Resposta Automática'; $wb['autoresponder_text_txt'] = 'Texto'; -$wb['autoresponder_txt'] = 'Autoresposta'; -$wb['no_domain_perm'] = 'Sem permissão para este domÃnio.'; -$wb['error_no_pwd'] = 'Senha está em branco.'; -$wb['quota_error_isint'] = 'O tamanho do e-mail deve ser um número.'; -$wb['quota_txt'] = 'Cota'; +$wb['autoresponder_txt'] = 'Ativo'; +$wb['autoresponder_start_date_txt'] = 'Iniciar em'; +$wb['autoresponder_start_date_ispast'] = 'O campo "Iniciar em" não pode ser menor que a data atual.'; +$wb['autoresponder_end_date_txt'] = 'Terminar em'; +$wb['autoresponder_end_date_isgreater'] = 'O campo "Terminar em" deve ser configurado e não pode ser menor ou igual a data atual.'; +$wb['autoresponder_start_date_is_required'] = 'Data iniciar deve ser configurado quando a opção de auto-resposta estiver habilitada.'; +$wb['no_domain_perm'] = 'Você não tem permissão para este domÃnio.'; +$wb['error_no_pwd'] = 'A senha está em branco.'; +$wb['quota_error_isint'] = 'O tamanho da conta de e-mail deve ser um número.'; +$wb['quota_txt'] = 'Cota (0 para ilimitado)'; $wb['server_id_txt'] = 'ID do servidor'; $wb['password_txt'] = 'Senha'; -$wb['maildir_txt'] = 'Caixa Postal'; +$wb['password_click_to_set_txt'] = 'Clique para configurar'; +$wb['maildir_txt'] = 'Maildir'; $wb['postfix_txt'] = 'Habilitar recebimento'; $wb['greylisting_txt'] = 'Habilitar greylist'; $wb['access_txt'] = 'Habilitar acesso'; -$wb['policy_txt'] = 'Filtro anti-spam'; -$wb['no_policy'] = '- desabilitado -'; +$wb['policy_txt'] = 'Filtros anti-spam'; +$wb['no_policy'] = '-desabilitado-'; $wb['limit_mailbox_txt'] = 'O limite de contas de e-mail para esta conta foi alcançado.'; -$wb['limit_mailquota_txt'] = 'O espaço em disco disponÃvel para criação de contas de e-mail foi alcançado.'; -$wb['disableimap_txt'] = 'Desabilitar imap'; -$wb['disablepop3_txt'] = 'Desabilitar pop3'; -$wb['duplicate_alias_or_forward_txt'] = 'Já existe um apelido ou encaminhamento com este endereço de e-mail.'; -$wb['quota_error_value'] = 'Valor da cota é inválido. Valores válidos são: 0 para ilimitado ou número > 1'; -$wb['autoresponder_start_date_txt'] = 'InÃcio:'; -$wb['autoresponder_start_date_ispast'] = 'A data de inÃcio não pode ser menor que a data atual.'; -$wb['autoresponder_end_date_txt'] = 'Término:'; -$wb['autoresponder_end_date_isgreater'] = 'A data de término não pode ser menor que a data de inÃcio.'; -$wb['move_junk_txt'] = 'Mover spam para o diretório junk'; -$wb['name_txt'] = 'Nome real'; +$wb['limit_mailquota_txt'] = 'O limite de tamanho para as contas de e-mails foi alcançado. O espaço disponÃvel em MB é'; +$wb['disablesmtp_txt'] = 'Desabilitar SMTP (envio)'; +$wb['disableimap_txt'] = 'Desabilitar IMAP'; +$wb['disablepop3_txt'] = 'Desabilitar POP3'; +$wb['duplicate_alias_or_forward_txt'] = 'Já existe um alias ou encaminhamento para este endereço de e-mail.'; +$wb['quota_error_value'] = 'Valor da cota é inválido. Valores permitidos são: 0 para ilimitado ou números > 1.'; +$wb['move_junk_txt'] = 'Mover e-mails marcados como spam para o diretório junk.'; +$wb['name_txt'] = 'Nome'; $wb['name_optional_txt'] = '(Opcional)'; -$wb['autoresponder_active'] = 'Ativar autoresposta'; +$wb['autoresponder_active'] = 'Habilitar auto-resposta'; $wb['cc_txt'] = 'Enviar cópia para'; -$wb['cc_error_isemail'] = 'O campo \\"Enviar cópia para\\" deve conter um endereço de e-mail válido'; +$wb['sender_cc_txt'] = 'Enviar cópia oculta (BCC) para'; +$wb['cc_error_isemail'] = 'O campo "Enviar cópia para" contém um endereço de e-mail inválido.'; +$wb['sender_cc_error_isemail'] = 'O campo "Enviar cópia oculta para" contém um endereço de e-mail inválido.'; $wb['domain_txt'] = 'DomÃnio'; $wb['now_txt'] = 'Agora'; -$wb['login_error_unique'] = 'O acesso já está em uso.'; -$wb['login_error_regex'] = 'Caracteres válidos são: \'A-Z\', \'a-z\', \'0-9\', \'.\', \'_\' e \'-\'.'; -$wb['login_txt'] = 'Acesso (opcional)'; -$wb['error_login_email_txt'] = 'Este acesso não é permitido. Por favor, insira um usuário diferente ou use o endereço de e-mail.'; -$wb['autoresponder_subject_txt'] = 'Assunto do e-mail'; -$wb['autoresponder_subject'] = 'Resposta de ausência temporária'; -$wb['generate_password_txt'] = 'Gerar senha'; -$wb['repeat_password_txt'] = 'Repetir senha'; -$wb['password_mismatch_txt'] = 'A senhas não coincidem.'; -$wb['password_match_txt'] = 'A senhas coincidem.'; -$wb['email_error_isascii'] = 'Por favor não use caracteres \\"unicode\\" para a senha. Esta ação poderá causar problemas com seu cliente de e-mail (mua).'; -$wb['cc_note_txt'] = '(Múltiplos e-mails separados por vÃrgulas)'; -$wb['disablesmtp_txt'] = 'Desabilitar smtp (envio)'; -$wb['autoresponder_start_date_is_required'] = 'Data de inÃcio deve ser configurada quando \'autoresposta\' é habilitada.'; -$wb['sender_cc_txt'] = 'Enviar cópia para'; -$wb['sender_cc_error_isemail'] = 'O campo \'Enviar cópia para\' não contém um endereço de e-mail válido'; -$wb['backup_interval_txt'] = 'Intervalo de backup'; -$wb['backup_copies_txt'] = 'Limite de cópias do backup'; +$wb['login_error_unique'] = 'O acesso já foi realizado.'; +$wb['login_error_regex'] = 'Caracteres válidos são "A-Z", "a-z", "0-9", ".", "_" e "-".'; +$wb['login_txt'] = 'Acesso'; +$wb['error_login_email_txt'] = 'Este acesso não é permitido. Por favor, forneça um nome de usuário ou endereço de e-mail diferente para acessar.'; +$wb['generate_password_txt'] = 'Gerar Senha'; +$wb['repeat_password_txt'] = 'Repetir Senha'; +$wb['password_mismatch_txt'] = 'As senhas não coincidem.'; +$wb['password_match_txt'] = 'As senhas coincidem.'; +$wb['backup_interval_txt'] = 'Intervalo entre backups'; +$wb['backup_copies_txt'] = 'Número de cópias do backup'; $wb['no_backup_txt'] = 'Sem backup'; $wb['daily_backup_txt'] = 'Diário'; $wb['weekly_backup_txt'] = 'Semanal'; $wb['monthly_backup_txt'] = 'Mensal'; -$wb['sender_cc_note_txt'] = '(Múltiplos e-mails separados por vÃrgulas)'; -$wb['password_click_to_set_txt'] = 'Configurar'; +$wb['email_error_isascii'] = 'Por favor, não use caracteres especiais para a senha. Isto poderá causar problemas no cliente de e-mail.'; +$wb['cc_note_txt'] = '(separar múltiplos endereços de e-mails com vÃrgulas)'; +$wb['sender_cc_note_txt'] = '(separar múltiplos endereços de e-mails com vÃrgulas)'; ?> diff --git a/interface/web/mail/lib/lang/br_mail_user_filter.lng b/interface/web/mail/lib/lang/br_mail_user_filter.lng index 7dca140cee..54ae96d692 100644 --- a/interface/web/mail/lib/lang/br_mail_user_filter.lng +++ b/interface/web/mail/lib/lang/br_mail_user_filter.lng @@ -4,23 +4,23 @@ $wb['action_txt'] = 'Ação'; $wb['target_txt'] = 'Pasta'; $wb['active_txt'] = 'Ativo'; $wb['rulename_error_empty'] = 'Nome está em branco.'; -$wb['searchterm_is_empty'] = 'Termo de busca está em branco.'; +$wb['searchterm_is_empty'] = 'Termo de pesquisa está em branco.'; $wb['source_txt'] = 'Origem'; -$wb['target_error_regex'] = 'O alvo não pode conter os caracteres: \'a-z\', \'0-9\', \'-\', \'.\', \'_\', e \'{espaço}\'.'; -$wb['limit_mailfilter_txt'] = 'O limite de filtros de e-mail para esta conta foi alcançado.'; +$wb['target_error_regex'] = 'O alvo pode conter apenas os caracteres: "a-z", "0-9", "-", ".", "_", e {espaço}'; +$wb['limit_mailfilter_txt'] = 'O limite de filtros de e-mail foi alcançado.'; $wb['subject_txt'] = 'Assunto'; $wb['from_txt'] = 'De'; $wb['to_txt'] = 'Para'; -$wb['contains_txt'] = 'Contém'; +$wb['contains_txt'] = 'Contêm'; $wb['is_txt'] = 'é'; -$wb['begins_with_txt'] = 'Começa com'; -$wb['ends_with_txt'] = 'Termina com'; -$wb['delete_txt'] = 'Remover'; +$wb['begins_with_txt'] = 'Iniciando com'; +$wb['ends_with_txt'] = 'Terminando com'; $wb['move_stop_txt'] = 'Mover para'; +$wb['delete_txt'] = 'Remover'; $wb['header_txt'] = 'Cabeçalho'; -$wb['size_over_txt'] = 'Tamanho máximo do e-mail (KB)'; -$wb['size_under_txt'] = 'Tamanho mÃnimo do e-mail (KB)'; -$wb['localpart_txt'] = 'Local'; +$wb['size_over_txt'] = 'Tamanho do e-mail acima de (KB)'; +$wb['size_under_txt'] = 'Tamanho do e-mail abaixo de (KB)'; +$wb['localpart_txt'] = 'Parte local'; $wb['domain_txt'] = 'DomÃnio'; $wb['keep_txt'] = 'Manter'; $wb['reject_txt'] = 'Rejeitar'; diff --git a/interface/web/mail/lib/lang/br_mail_user_filter_list.lng b/interface/web/mail/lib/lang/br_mail_user_filter_list.lng index feae1f4bb7..516478f9f6 100644 --- a/interface/web/mail/lib/lang/br_mail_user_filter_list.lng +++ b/interface/web/mail/lib/lang/br_mail_user_filter_list.lng @@ -3,5 +3,5 @@ $wb['rulename_txt'] = 'Nome'; $wb['add_new_record_txt'] = 'Adicionar novo filtro'; $wb['page_txt'] = 'Página'; $wb['page_of_txt'] = 'de'; -$wb['delete_confirmation'] = 'Tem certeza que gostaria de remover este filtro?'; +$wb['delete_confirmation'] = 'Você tem certeza que deseja remover este filtro?'; ?> diff --git a/interface/web/mail/lib/lang/br_mail_user_stats_list.lng b/interface/web/mail/lib/lang/br_mail_user_stats_list.lng index 370ce3520f..f0305edac3 100644 --- a/interface/web/mail/lib/lang/br_mail_user_stats_list.lng +++ b/interface/web/mail/lib/lang/br_mail_user_stats_list.lng @@ -1,6 +1,6 @@ <?php $wb['list_head_txt'] = 'Tráfego de e-mail'; -$wb['email_txt'] = 'e-mail'; +$wb['email_txt'] = 'e-Mail'; $wb['this_month_txt'] = 'Este mês'; $wb['last_month_txt'] = 'Último mês'; $wb['this_year_txt'] = 'Este ano'; diff --git a/interface/web/mail/lib/lang/br_mail_whitelist.lng b/interface/web/mail/lib/lang/br_mail_whitelist.lng index 3443387003..4d3eb1e219 100644 --- a/interface/web/mail/lib/lang/br_mail_whitelist.lng +++ b/interface/web/mail/lib/lang/br_mail_whitelist.lng @@ -1,9 +1,9 @@ <?php $wb['server_id_txt'] = 'Servidor'; -$wb['source_txt'] = 'Lista Branca'; +$wb['source_txt'] = 'Endereço - lista branca'; $wb['recipient_txt'] = 'Destinatário'; $wb['active_txt'] = 'Ativo'; -$wb['source_error_notempty'] = 'Endereço em Branco.'; +$wb['source_error_notempty'] = 'Endereço de e-mail está em branco.'; $wb['type_txt'] = 'Tipo'; -$wb['limit_mailfilter_txt'] = 'O limite de filtros para esta conta foi alcançado.'; +$wb['limit_mailfilter_txt'] = 'O limite de filtros de e-mail para esta conta foi alcançado.'; ?> diff --git a/interface/web/mail/lib/lang/br_mail_whitelist_list.lng b/interface/web/mail/lib/lang/br_mail_whitelist_list.lng index 40eced2d2c..0c7d3c717d 100644 --- a/interface/web/mail/lib/lang/br_mail_whitelist_list.lng +++ b/interface/web/mail/lib/lang/br_mail_whitelist_list.lng @@ -1,10 +1,10 @@ <?php -$wb['list_head_txt'] = 'Lista branca'; +$wb['list_head_txt'] = 'Filtros de e-mail - lista branca'; $wb['active_txt'] = 'Ativo'; $wb['server_id_txt'] = 'Servidor'; -$wb['source_txt'] = 'e-mails na lista branca'; +$wb['source_txt'] = 'Endereços de e-mail - lista branca'; $wb['type_txt'] = 'Tipo'; $wb['recipient_txt'] = 'Destinatário'; -$wb['add_new_record_txt'] = 'Adicionar novo registro à lista'; +$wb['add_new_record_txt'] = 'Adicionar novo registro'; $wb['access_txt'] = 'acesso'; ?> diff --git a/interface/web/mail/lib/lang/br_spamfilter_blacklist.lng b/interface/web/mail/lib/lang/br_spamfilter_blacklist.lng index df01dd30ba..ec3dc5f66e 100644 --- a/interface/web/mail/lib/lang/br_spamfilter_blacklist.lng +++ b/interface/web/mail/lib/lang/br_spamfilter_blacklist.lng @@ -1,11 +1,11 @@ <?php $wb['server_id_txt'] = 'Servidor'; -$wb['wb_txt'] = 'wb'; +$wb['wb_txt'] = 'Lista branca/negra'; $wb['rid_txt'] = 'Usuário'; -$wb['email_txt'] = 'Endereço de e-mail'; +$wb['email_txt'] = 'e-Mail'; $wb['priority_txt'] = 'Prioridade'; $wb['active_txt'] = 'Ativo'; -$wb['limit_spamfilter_wblist_txt'] = 'O limite de registros na lista branca/negra para esta conta foi alcançado.'; +$wb['limit_spamfilter_wblist_txt'] = 'O limite de filtros anti-spam "lista branca ou negra" para esta conta foi alcançado.'; $wb['10 - highest'] = '10 - alta'; $wb['5 - medium'] = '5 - média'; $wb['1 - lowest'] = '1 - baixa'; diff --git a/interface/web/mail/lib/lang/br_spamfilter_blacklist_list.lng b/interface/web/mail/lib/lang/br_spamfilter_blacklist_list.lng index 527a1b43d9..624cebfc51 100644 --- a/interface/web/mail/lib/lang/br_spamfilter_blacklist_list.lng +++ b/interface/web/mail/lib/lang/br_spamfilter_blacklist_list.lng @@ -1,9 +1,9 @@ <?php -$wb['list_head_txt'] = 'Filtro anti-spam (lista negra) '; +$wb['list_head_txt'] = 'Filtro anti-spam - lista negra'; $wb['active_txt'] = 'Ativo'; $wb['server_id_txt'] = 'Servidor'; $wb['priority_txt'] = 'Prioridade'; $wb['rid_txt'] = 'Usuário'; -$wb['email_txt'] = 'Endereço de e-mail na lista negra'; -$wb['add_new_record_txt'] = 'Adicionar novo registro à lista'; +$wb['email_txt'] = 'Endereço de e-mail - lista negra'; +$wb['add_new_record_txt'] = 'Adicionar novo registro'; ?> diff --git a/interface/web/mail/lib/lang/br_spamfilter_config.lng b/interface/web/mail/lib/lang/br_spamfilter_config.lng index 9a12279a4a..6182e8b788 100644 --- a/interface/web/mail/lib/lang/br_spamfilter_config.lng +++ b/interface/web/mail/lib/lang/br_spamfilter_config.lng @@ -1,20 +1,20 @@ <?php -$wb['getmail_config_dir_txt'] = 'Caminho de configuração getmail '; +$wb['getmail_config_dir_txt'] = 'Caminho das configurações do getmail'; $wb['ip_address_txt'] = 'Endereço IP'; -$wb['netmask_txt'] = 'Máscara de rede'; +$wb['netmask_txt'] = 'Máscara'; $wb['gateway_txt'] = 'Gateway'; -$wb['hostname_txt'] = 'Nome do servidor'; -$wb['nameservers_txt'] = 'Servidor de nomes'; +$wb['hostname_txt'] = 'Nome do host'; +$wb['nameservers_txt'] = 'Servidor(es) dns'; $wb['module_txt'] = 'Módulo do servidor'; -$wb['maildir_path_txt'] = 'Caminho do Maildir'; -$wb['homedir_path_txt'] = 'Caminho do Homedir'; -$wb['mailuser_uid_txt'] = 'Usuário de e-mail (UID)'; -$wb['mailuser_gid_txt'] = 'Grupo de e-mail (GID)'; -$wb['mailuser_name_txt'] = 'Nome do usuário de e-mail'; -$wb['mailuser_group_txt'] = 'Grupo do usuário de e-mail'; -$wb['relayhost_txt'] = 'Host Relay'; -$wb['relayhost_user_txt'] = 'Usuário host relay'; -$wb['relayhost_password_txt'] = 'Senha host relay'; -$wb['mailbox_size_limit_txt'] = 'Tamanho da conta de e-mail'; -$wb['message_size_limit_txt'] = 'Tamanho da mensagem'; +$wb['maildir_path_txt'] = 'Caminho do maildir'; +$wb['homedir_path_txt'] = 'Caminho do homedir'; +$wb['mailuser_uid_txt'] = 'UID do mailuser'; +$wb['mailuser_gid_txt'] = 'GID do mailuser'; +$wb['mailuser_name_txt'] = 'Nome do mailuser'; +$wb['mailuser_group_txt'] = 'Grupo do mailuser'; +$wb['relayhost_txt'] = 'Host de retransmissão'; +$wb['relayhost_user_txt'] = 'Usuário de retransmissão'; +$wb['relayhost_password_txt'] = 'Senha do host de retransmissão'; +$wb['mailbox_size_limit_txt'] = 'Limite da conta de e-mail'; +$wb['message_size_limit_txt'] = 'Limite do tamanho da mensagem'; ?> diff --git a/interface/web/mail/lib/lang/br_spamfilter_config_list.lng b/interface/web/mail/lib/lang/br_spamfilter_config_list.lng index 300e210b15..6d4c1cf0e1 100644 --- a/interface/web/mail/lib/lang/br_spamfilter_config_list.lng +++ b/interface/web/mail/lib/lang/br_spamfilter_config_list.lng @@ -1,5 +1,5 @@ <?php -$wb['list_head_txt'] = 'Configurações do servidor'; +$wb['list_head_txt'] = 'Configuração do Servidor'; $wb['server_name_txt'] = 'Servidor'; -$wb['server_id_txt'] = 'ID do servidor'; +$wb['server_id_txt'] = 'ID do Servidor'; ?> diff --git a/interface/web/mail/lib/lang/br_spamfilter_policy.lng b/interface/web/mail/lib/lang/br_spamfilter_policy.lng index b5bb69db43..476b27e565 100644 --- a/interface/web/mail/lib/lang/br_spamfilter_policy.lng +++ b/interface/web/mail/lib/lang/br_spamfilter_policy.lng @@ -1,51 +1,51 @@ <?php -$wb['policy_name_txt'] = 'Nome da regra'; -$wb['virus_lover_txt'] = 'Permitir vÃrus'; -$wb['spam_lover_txt'] = 'Permitir spam'; -$wb['banned_files_lover_txt'] = 'Permitir arquivos banidos'; -$wb['bad_header_lover_txt'] = 'Permitir cabeçalho inválido'; -$wb['bypass_virus_checks_txt'] = 'Ignorar verificação de vÃrus'; -$wb['bypass_banned_checks_txt'] = 'Ignorar verificação de arquivos banidos'; -$wb['bypass_header_checks_txt'] = 'Ignorar verificação de cabeçalho inválido'; -$wb['virus_quarantine_to_txt'] = 'Encaminhar o vÃrus para o e-mail'; -$wb['spam_quarantine_to_txt'] = 'Encaminhar o spam para o e-mail'; +$wb['policy_name_txt'] = 'Nome da polÃtica'; +$wb['virus_lover_txt'] = 'Receber vÃrus'; +$wb['spam_lover_txt'] = 'Receber spam'; +$wb['banned_files_lover_txt'] = 'Receber arquivos banidos'; +$wb['bad_header_lover_txt'] = 'Receber cabeçalho inválido'; +$wb['bypass_virus_checks_txt'] = 'Ignorar verificações de vÃrus'; +$wb['bypass_banned_checks_txt'] = 'Ignorar verificações de arquivos banidos'; +$wb['bypass_header_checks_txt'] = 'Ignorar verificações de cabeçalho inválido'; +$wb['virus_quarantine_to_txt'] = 'Encaminhar vÃrus para o e-mail'; +$wb['spam_quarantine_to_txt'] = 'Encaminhar spam para o e-mail'; $wb['banned_quarantine_to_txt'] = 'Encaminhar arquivos banidos para o e-mail'; $wb['bad_header_quarantine_to_txt'] = 'Encaminhar cabeçalho inválido para o e-mail'; $wb['clean_quarantine_to_txt'] = 'Encaminhar mensagens/arquivos em quarentena para o e-mail'; -$wb['other_quarantine_to_txt'] = 'Encaminhar para outro e-mail'; +$wb['other_quarantine_to_txt'] = 'Encaminhar mensagens/arquivos em quarentena para outro e-mail'; $wb['spam_tag_level_txt'] = 'NÃvel 1 de marcação anti-spam'; $wb['spam_tag2_level_txt'] = 'NÃvel 2 de marcação anti-spam'; $wb['spam_kill_level_txt'] = 'NÃvel máximo de marcação anti-spam'; -$wb['spam_dsn_cutoff_level_txt'] = 'NÃvel de corte de dns anti-spam'; -$wb['spam_quarantine_cutoff_level_txt'] = 'NÃvel de corte de quarentena anti-spam'; -$wb['spam_modifies_subj_txt'] = 'Modificar assunto de mensagem com spam'; -$wb['spam_subject_tag_txt'] = 'Marcação de assunto spam 1'; -$wb['spam_subject_tag2_txt'] = 'Marcação de assunto spam 2'; -$wb['addr_extension_virus_txt'] = 'Adicionar extensão de vÃrus'; -$wb['addr_extension_spam_txt'] = 'Adicionar extensão de spam'; -$wb['addr_extension_banned_txt'] = 'Adicionar extensão de arquivos banidos'; -$wb['addr_extension_bad_header_txt'] = 'Adicionar extensão de cabeçalho inválido'; -$wb['warnvirusrecip_txt'] = 'Aviso de destinatário de vÃrus.'; -$wb['warnbannedrecip_txt'] = 'Aviso de destinatário de arquivos banidos.'; -$wb['warnbadhrecip_txt'] = 'Aviso de destinatário de cabeçalho é inválido.'; +$wb['spam_dsn_cutoff_level_txt'] = 'NÃvel de corte dsn anti-spam'; +$wb['spam_quarantine_cutoff_level_txt'] = 'NÃvel de corte para quarentena anti-spam'; +$wb['spam_modifies_subj_txt'] = 'Modificar assunto de mensagens marcadas como spam'; +$wb['spam_subject_tag_txt'] = 'Marcar assunto - SPAM 1'; +$wb['spam_subject_tag2_txt'] = 'Marcar assunto - SPAM 2'; +$wb['addr_extension_virus_txt'] = 'Adicionar extensão caso detecte vÃrus'; +$wb['addr_extension_spam_txt'] = 'Adicionar extensão caso detecte SPAM'; +$wb['addr_extension_banned_txt'] = 'Adicionar extensão caso detecte arquivo banido'; +$wb['addr_extension_bad_header_txt'] = 'Adicionar extensão caso detecte cabeçalho inválido'; +$wb['warnvirusrecip_txt'] = 'Aviso de vÃrus para o destinatário'; +$wb['warnbannedrecip_txt'] = 'Aviso de arquivo banido para destinatário'; +$wb['warnbadhrecip_txt'] = 'Aviso cabeçalho inválido para destinatário'; $wb['newvirus_admin_txt'] = 'Administrador para novo vÃrus'; $wb['virus_admin_txt'] = 'Administrador para vÃrus'; -$wb['banned_admin_txt'] = 'Administrador para arquivos banidos'; -$wb['bad_header_admin_txt'] = 'Administrador para cabeçalhos inválidos'; +$wb['banned_admin_txt'] = 'Administrador para arquivo banido'; +$wb['bad_header_admin_txt'] = 'Administrador para cabeçalho inválido'; $wb['spam_admin_txt'] = 'Administrador para spam'; -$wb['message_size_limit_txt'] = 'Tamanho máximo da mensagem'; -$wb['banned_rulenames_txt'] = 'Regras de banimento'; -$wb['rspamd_greylisting_txt'] = 'Use greylisting'; -$wb['rspamd_spam_greylisting_level_txt'] = 'Greylisting level'; -$wb['rspamd_spam_tag_level_txt'] = 'SPAM tag level'; -$wb['rspamd_spam_tag_method_txt'] = 'SPAM tag method'; -$wb['rspamd_spam_kill_level_txt'] = 'SPAM reject level'; -$wb['btn_save_txt'] = 'Save'; -$wb['btn_cancel_txt'] = 'Cancel'; -$wb['amavis_settings_txt'] = 'Settings'; -$wb['amavis_taglevel_txt'] = 'Tag-Level'; -$wb['amavis_quarantine_txt'] = 'Quarantine'; -$wb['amavis_other_txt'] = 'Other'; -$wb['add_header_txt'] = 'Add header'; -$wb['rewrite_subject_txt'] = 'Rewrite subject'; -?> +$wb['message_size_limit_txt'] = 'Limite de tamanho da mensagem'; +$wb['banned_rulenames_txt'] = 'Nome da regra para arquivo banido'; +$wb['rspamd_greylisting_txt'] = 'Habilitar greylist'; +$wb['rspamd_spam_greylisting_level_txt'] = 'NÃvel da greylist'; +$wb['rspamd_spam_tag_level_txt'] = 'NÃvel da marcação anti-spam'; +$wb['rspamd_spam_tag_method_txt'] = 'Método da marcação anti-spam'; +$wb['rspamd_spam_kill_level_txt'] = 'NÃvel para rejeição de spam'; +$wb['btn_save_txt'] = 'Salvar'; +$wb['btn_cancel_txt'] = 'Cancelar'; + +$wb['amavis_settings_txt'] = 'Configurações'; +$wb['amavis_taglevel_txt'] = 'NÃvel de marcação'; +$wb['amavis_quarantine_txt'] = 'Quarentena'; +$wb['amavis_other_txt'] = 'Outro'; +$wb['add_header_txt'] = 'Adicionar cabeçalho'; +$wb['rewrite_subject_txt'] = 'Reescrever assunto'; diff --git a/interface/web/mail/lib/lang/br_spamfilter_policy_list.lng b/interface/web/mail/lib/lang/br_spamfilter_policy_list.lng index 38d91f16d8..269862fe99 100644 --- a/interface/web/mail/lib/lang/br_spamfilter_policy_list.lng +++ b/interface/web/mail/lib/lang/br_spamfilter_policy_list.lng @@ -1,9 +1,9 @@ <?php -$wb['list_head_txt'] = 'PolÃticas anti-spam'; +$wb['list_head_txt'] = 'PolÃtica anti-spam'; $wb['policy_name_txt'] = 'Nome'; -$wb['virus_lover_txt'] = 'Permitir vÃrus'; -$wb['spam_lover_txt'] = 'Permitir spam'; -$wb['banned_files_lover_txt'] = 'Permitir arquivos banidos'; -$wb['bad_header_lover_txt'] = 'Permitir cabeçalho inválido'; +$wb['virus_lover_txt'] = 'Receber vÃrus'; +$wb['spam_lover_txt'] = 'Receber spam'; +$wb['banned_files_lover_txt'] = 'Receber arquivos banidos'; +$wb['bad_header_lover_txt'] = 'Receber cabeçalho inválido'; $wb['add_new_record_txt'] = 'Adicionar registro'; ?> diff --git a/interface/web/mail/lib/lang/br_spamfilter_users.lng b/interface/web/mail/lib/lang/br_spamfilter_users.lng index 2c33cd3552..3b34351adb 100644 --- a/interface/web/mail/lib/lang/br_spamfilter_users.lng +++ b/interface/web/mail/lib/lang/br_spamfilter_users.lng @@ -2,7 +2,7 @@ $wb['server_id_txt'] = 'Servidor'; $wb['priority_txt'] = 'Prioridade'; $wb['policy_id_txt'] = 'PolÃtica'; -$wb['email_txt'] = 'e-mail (padrão)'; +$wb['email_txt'] = 'e-Mail (padrão)'; $wb['fullname_txt'] = 'Nome'; $wb['local_txt'] = 'Local'; $wb['email_error_notempty'] = 'Endereço de e-mail está em branco.'; diff --git a/interface/web/mail/lib/lang/br_spamfilter_users_list.lng b/interface/web/mail/lib/lang/br_spamfilter_users_list.lng index cf1f4900f9..fe3feb25cd 100644 --- a/interface/web/mail/lib/lang/br_spamfilter_users_list.lng +++ b/interface/web/mail/lib/lang/br_spamfilter_users_list.lng @@ -1,10 +1,10 @@ <?php -$wb['list_head_txt'] = 'Usuários de filtro anti-spam'; +$wb['list_head_txt'] = 'Filtros anti-spam para contas de e-mail'; $wb['local_txt'] = 'Local'; $wb['server_id_txt'] = 'Servidor'; $wb['priority_txt'] = 'Prioridade'; -$wb['policy_id_txt'] = 'PolÃticas'; +$wb['policy_id_txt'] = 'PolÃtica'; $wb['fullname_txt'] = 'Nome'; -$wb['email_txt'] = 'e-mail'; -$wb['add_new_record_txt'] = 'Adicionar novo usuário'; +$wb['email_txt'] = 'e-Mail'; +$wb['add_new_record_txt'] = 'Adicionar novo filtro'; ?> diff --git a/interface/web/mail/lib/lang/br_spamfilter_whitelist.lng b/interface/web/mail/lib/lang/br_spamfilter_whitelist.lng index 0161d716ae..bcb9491cf0 100644 --- a/interface/web/mail/lib/lang/br_spamfilter_whitelist.lng +++ b/interface/web/mail/lib/lang/br_spamfilter_whitelist.lng @@ -1,8 +1,8 @@ <?php $wb['server_id_txt'] = 'Servidor'; -$wb['wb_txt'] = 'wb'; -$wb['rid_txt'] = 'Usuário'; -$wb['email_txt'] = 'e-mail'; +$wb['wb_txt'] = 'Lista branca/negra'; +$wb['rid_txt'] = 'Usário'; +$wb['email_txt'] = 'e-Mail'; $wb['priority_txt'] = 'Prioridade'; $wb['active_txt'] = 'Ativo'; $wb['limit_spamfilter_wblist_txt'] = 'O limite de registros na lista branca/negra para esta conta foi alcançado.'; diff --git a/interface/web/mail/lib/lang/br_spamfilter_whitelist_list.lng b/interface/web/mail/lib/lang/br_spamfilter_whitelist_list.lng index 8ef65dbfa2..e6d48491ee 100644 --- a/interface/web/mail/lib/lang/br_spamfilter_whitelist_list.lng +++ b/interface/web/mail/lib/lang/br_spamfilter_whitelist_list.lng @@ -1,9 +1,9 @@ <?php -$wb['list_head_txt'] = 'Lista branca (anti-spam)'; +$wb['list_head_txt'] = 'Filtros anti-spam - Lista Branca'; $wb['active_txt'] = 'Ativo'; $wb['server_id_txt'] = 'Servidor'; $wb['priority_txt'] = 'Prioridade'; $wb['rid_txt'] = 'Usuário'; -$wb['email_txt'] = 'e-mail na lista branca'; -$wb['add_new_record_txt'] = 'Adicionar novo e-mail'; +$wb['email_txt'] = 'Lista Branca de e-mails'; +$wb['add_new_record_txt'] = 'Adicionar registro'; ?> diff --git a/interface/web/mail/lib/lang/br_user_quota_stats_list.lng b/interface/web/mail/lib/lang/br_user_quota_stats_list.lng index a756443205..ee156b23a7 100755 --- a/interface/web/mail/lib/lang/br_user_quota_stats_list.lng +++ b/interface/web/mail/lib/lang/br_user_quota_stats_list.lng @@ -1,8 +1,8 @@ <?php -$wb['list_head_txt'] = 'Cota para contas de e-mail'; +$wb['list_head_txt'] = 'Cota da conta de e-mail'; $wb['quota_txt'] = 'Cota'; $wb['name_txt'] = 'Nome'; $wb['email_txt'] = 'Endereço de e-mail'; $wb['used_txt'] = 'Espaço utilizado'; -$wb['percentage_txt'] = 'Percentual utilizado %'; +$wb['percentage_txt'] = 'Utilizado %'; ?> diff --git a/interface/web/mail/lib/lang/br_xmpp_domain.lng b/interface/web/mail/lib/lang/br_xmpp_domain.lng index 1a9a42f0c1..1fd96ba132 100644 --- a/interface/web/mail/lib/lang/br_xmpp_domain.lng +++ b/interface/web/mail/lib/lang/br_xmpp_domain.lng @@ -5,31 +5,31 @@ $wb['domain_txt'] = 'DomÃnio'; $wb['type_txt'] = 'Tipo'; $wb['active_txt'] = 'Ativo'; $wb['client_txt'] = 'Cliente'; -$wb['management_method_txt'] = 'Gerenciamento de contas de usuários'; +$wb['management_method_txt'] = 'Gerenciar contas de usuário'; $wb['public_registration_txt'] = 'Habilitar registro público'; $wb['registration_url_txt'] = 'URL de registro'; $wb['registration_message_txt'] = 'Mensagem de registro'; -$wb['domain_admins_txt'] = 'Administradores de domÃnio (JIDs)'; -$wb['use_pubsub_txt'] = 'Habilitar Pubsub'; -$wb['use_proxy_txt'] = 'Habilitar proxy Bytestream'; +$wb['domain_admins_txt'] = 'Administradores de domÃnios (JIDs)'; +$wb['use_pubsub_txt'] = 'Habilitar pubsub'; +$wb['use_proxy_txt'] = 'Habilitar proxy bytestream'; $wb['use_anon_host_txt'] = 'Habilitar host anônimo'; -$wb['use_vjud_txt'] = 'Habilitar diretório de usuário VJUD'; -$wb['vjud_opt_mode_txt'] = 'Modo de operação VJUD'; -$wb['use_muc_host_txt'] = 'Habilitar chats multiusuários'; -$wb['muc_name_txt'] = 'Nome na descoberta do MUC'; -$wb['muc_restrict_room_creation_txt'] = 'Permissão para criar salas de chat'; -$wb['muc_admins_txt'] = 'Administradores de MUC (JIDs)'; -$wb['use_pastebin_txt'] = 'Habilitar Pastebin'; -$wb['pastebin_expire_after_txt'] = 'Colagens expiram após (horas)'; -$wb['pastebin_trigger_txt'] = 'Gatilho Pastebin'; -$wb['use_http_archive_txt'] = 'Habilitar arquivo HTTP em salas de chat'; -$wb['http_archive_show_join_txt'] = 'Exibir mensagens de participação em arquivos'; -$wb['http_archive_show_status_txt'] = 'Exibir estado de mudança em arquivos'; -$wb['use_status_host_txt'] = 'Habilitar estado XML do host'; -$wb['cant_change_domainname_txt'] = 'O nome domÃnio XMPP existente não pode ser modificado.'; -$wb['about_registration_url_txt'] = 'Link para o página de registro.'; -$wb['about_registration_message_txt'] = 'Descrição sobre seu processo de registro de conta.'; -$wb['no_corresponding_maildomain_txt'] = 'O domÃnio de e-mail correspondente para gerenciamento de usuário não foi encontrado. Por favor crie o domÃnio de e-mail primeiro.'; +$wb['use_vjud_txt'] = 'Habilitar diretório de usuário (VJUD)'; +$wb['vjud_opt_mode_txt'] = 'Modo opcional do VJUD'; +$wb['use_muc_host_txt'] = 'Habilitar chat multiusuário (MUC)'; +$wb['muc_name_txt'] = 'Nome no serviço de descoberta do MUC'; +$wb['muc_restrict_room_creation_txt'] = 'Permissão para adicionar salas de chat'; +$wb['muc_admins_txt'] = 'Administradores MUC (JIDs)'; +$wb['use_pastebin_txt'] = 'Habilitar pastebin'; +$wb['pastebin_expire_after_txt'] = 'Patas expira após (horas)'; +$wb['pastebin_trigger_txt'] = 'Desencadear pastebin'; +$wb['use_http_archive_txt'] = 'Habilitar arquivos HTTP em salas de chat'; +$wb['http_archive_show_join_txt'] = 'Exibir mensagens de ingresso no arquivo'; +$wb['http_archive_show_status_txt'] = 'Exibir estado da mudanças no arquivo'; +$wb['use_status_host_txt'] = 'Habilitar estado do XML do host'; +$wb['cant_change_domainname_txt'] = 'O nome existente do domÃnio xmpp não pode ser alterado.'; +$wb['about_registration_url_txt'] = 'Ligar ao seu formulário de registro.'; +$wb['about_registration_message_txt'] = 'Descrição sobre o processo de registro da sua conta.'; +$wb['no_corresponding_maildomain_txt'] = 'O domÃnio de e-mail correspondente para gerenciamento de usuários não foi encontrado. Por favor, crie um domÃnio de e-mail primeiro.'; $wb['ssl_state_txt'] = 'Estado'; $wb['ssl_locality_txt'] = 'Cidade'; $wb['ssl_organisation_txt'] = 'Empresa'; @@ -38,25 +38,25 @@ $wb['ssl_country_txt'] = 'PaÃs'; $wb['ssl_key_txt'] = 'Chave'; $wb['ssl_request_txt'] = 'Requisição'; $wb['ssl_cert_txt'] = 'Certificado'; -$wb['ssl_bundle_txt'] = 'Pacote'; +$wb['ssl_bundle_txt'] = 'Agrupar'; $wb['ssl_action_txt'] = 'Ação'; $wb['ssl_email_txt'] = 'Endereço de e-mail'; $wb['ssl_txt'] = 'SSL'; -$wb['error_ssl_state_empty'] = 'Campo \'Estado\' está em branco.'; -$wb['error_ssl_locality_empty'] = 'Campo \'Cidade\' está em branco.'; -$wb['error_ssl_organisation_empty'] = 'Campo \'Empresa\' está em branco.'; -$wb['error_ssl_organisation_unit_empty'] = 'Campo \'Departamento\' está em branco.'; -$wb['error_ssl_country_empty'] = 'Campo \'PaÃs\' está em branco.'; -$wb['error_ssl_cert_empty'] = 'Campo \'Certificado\' está em branco.'; -$wb['ssl_state_error_regex'] = 'Campo \'Estado\' é inválido. São caracteres válidos: \'a-z\', \'0-9\' e \'.,-_\'.'; -$wb['ssl_locality_error_regex'] = 'Campo \'Cidade\' é inválido. São caracteres válidos: \'a-z\', \'0-9\' e \'.,-_\'.'; -$wb['ssl_organisation_error_regex'] = 'Campo \'Empresa\' é inválido. São caracteres válidos: \'a-z\', \'0-9\' e \'.,-_\'.'; -$wb['ssl_organistaion_unit_error_regex'] = 'Campo \'Departamento\' é inválido. São caracteres válidos: \'a-z\', \'0-9\' e \'.,-_\'.'; -$wb['ssl_country_error_regex'] = 'Campo \'PaÃs\' é inválido. São caracteres válidos: \'A-Z\'.'; +$wb['error_ssl_state_empty'] = 'O campo "Estado" está em branco.'; +$wb['error_ssl_locality_empty'] = 'O campo "Cidade" está em branco.'; +$wb['error_ssl_organisation_empty'] = 'O campo "Empresa" está em branco.'; +$wb['error_ssl_organisation_unit_empty'] = 'O campo "Departamento" está em branco.'; +$wb['error_ssl_country_empty'] = 'O campo "PaÃs" está em branco.'; +$wb['error_ssl_cert_empty'] = 'O campo "Certificado" está em branco.'; +$wb['ssl_state_error_regex'] = 'Campo "Estado" é inválido. São caracteres válidos: "a-z", "0-9" e ".,-_".'; +$wb['ssl_locality_error_regex'] = 'Campo "Cidade" é inválido. São caracteres válidos: "a-z", "0-9" e ".,-_".'; +$wb['ssl_organisation_error_regex'] = 'Campo "Empresa" é inválido. São caracteres válidos: "a-z", "0-9" e ".,-_".'; +$wb['ssl_organistaion_unit_error_regex'] = 'Campo "Departamento" é inválido. São caracteres válidos: "a-z", "0-9" e ".,-_".'; +$wb['ssl_country_error_regex'] = 'Campo "PaÃs" é inválido. São caracteres válidos: "A-Z".'; $wb['none_txt'] = 'Nenhum'; -$wb['save_certificate_txt'] = 'Salvar certificado'; -$wb['create_certificate_txt'] = 'Adicionar certificado'; -$wb['delete_certificate_txt'] = 'Remover certificado'; -$wb['ssl_error_isemail'] = 'Por favor, insira um e-mail válido para gerar o certificado SSL.'; +$wb['save_certificate_txt'] = 'Salvar Certificado'; +$wb['create_certificate_txt'] = 'Adicionar Certificado'; +$wb['delete_certificate_txt'] = 'Remover Certificado'; +$wb['ssl_error_isemail'] = 'Por favor, insira um endereço de e-mail válido para geração do certificado SSL.'; $wb['limit_xmppdomain_txt'] = 'O limite de domÃnios xmpp para esta conta foi alcançado.'; ?> diff --git a/interface/web/mail/lib/lang/br_xmpp_domain_list.lng b/interface/web/mail/lib/lang/br_xmpp_domain_list.lng index ab8f3a9087..e0ff3a6fc6 100644 --- a/interface/web/mail/lib/lang/br_xmpp_domain_list.lng +++ b/interface/web/mail/lib/lang/br_xmpp_domain_list.lng @@ -1,5 +1,5 @@ <?php -$wb['list_head_txt'] = 'DomÃnio XMPP'; +$wb['list_head_txt'] = 'DomÃnios xmpp'; $wb['server_id_txt'] = 'Servidor'; $wb['domain_txt'] = 'DomÃnio'; $wb['add_new_record_txt'] = 'Adicionar novo domÃnio'; diff --git a/interface/web/mail/lib/lang/br_xmpp_user.lng b/interface/web/mail/lib/lang/br_xmpp_user.lng index 8f2306814f..5e7628dab2 100644 --- a/interface/web/mail/lib/lang/br_xmpp_user.lng +++ b/interface/web/mail/lib/lang/br_xmpp_user.lng @@ -1,15 +1,15 @@ <?php -$wb['list_head_txt'] = 'Usuários XMPP'; +$wb['list_head_txt'] = 'Contas de usuários xmpp'; $wb['jid_txt'] = 'ID do Jabber'; $wb['active_txt'] = 'Ativo'; $wb['cryptpwd_txt'] = 'Senha'; $wb['password_strength_txt'] = 'Dificuldade da senha'; $wb['error_no_pwd'] = 'Senha está em branco.'; $wb['password_txt'] = 'Senha'; -$wb['generate_password_txt'] = 'Gerar senha'; -$wb['repeat_password_txt'] = 'Repetir senha'; -$wb['password_mismatch_txt'] = 'A senhas não coincidem.'; -$wb['password_match_txt'] = 'A senhas coincidem.'; +$wb['generate_password_txt'] = 'Gerar Senha'; +$wb['repeat_password_txt'] = 'Repetir Senha'; +$wb['password_mismatch_txt'] = 'As senhas não coincidem.'; +$wb['password_match_txt'] = 'As senhas coincidem.'; $wb['no_domain_perm'] = 'Você não tem permissão para este domÃnio.'; -$wb['limit_xmpp_user_txt'] = 'O limite de usuários xmpp para esta conta foi alcançando.'; +$wb['limit_xmpp_user_txt'] = 'O limite de usuários xmpp para esta conta foi alcançado.'; ?> diff --git a/interface/web/mail/lib/lang/br_xmpp_user_list.lng b/interface/web/mail/lib/lang/br_xmpp_user_list.lng index 13d71a05a8..0aefe11709 100644 --- a/interface/web/mail/lib/lang/br_xmpp_user_list.lng +++ b/interface/web/mail/lib/lang/br_xmpp_user_list.lng @@ -1,5 +1,5 @@ <?php -$wb['list_head_txt'] = 'Contas de usuário XMPP'; +$wb['list_head_txt'] = 'Contas de usuários xmpp'; $wb['jid_txt'] = 'ID do Jabber'; $wb['is_domain_admin_txt'] = 'Administrador do domÃnio'; $wb['is_muc_admin_txt'] = 'Administrador MUC'; diff --git a/interface/web/mail/lib/lang/tr.lng b/interface/web/mail/lib/lang/tr.lng index 4f6f77a38a..52d1868b3e 100644 --- a/interface/web/mail/lib/lang/tr.lng +++ b/interface/web/mail/lib/lang/tr.lng @@ -4,47 +4,48 @@ $wb['Email Blacklist'] = 'E-posta Kara Listesi'; $wb['Blacklist'] = 'Kara Liste'; $wb['Mail Content Filter'] = 'E-posta İçerik Süzgeci'; $wb['Filter'] = 'Süzgeç'; -$wb['Mail Domain'] = 'E-posta Alan Adı'; -$wb['Domain'] = 'Alan Adı'; +$wb['Mail Domain'] = 'E-posta Etki Alanı'; +$wb['Domain'] = 'Etki Alanı'; $wb['Email Catchall'] = 'E-posta Tümünü Alma'; $wb['Email Forward'] = 'E-posta Yönlendirme'; $wb['Get Email'] = 'E-posta Al'; -$wb['Spamfilter'] = 'Önemsiz Posta Süzgeci'; +$wb['Spamfilter'] = 'Önemsiz Ä°leti Süzgeci'; $wb['Email Routing'] = 'E-posta Yöneltme'; $wb['Email transport'] = 'E-posta Aktarma'; -$wb['Mailbox'] = 'Posta Kutusu'; +$wb['Mailbox'] = 'E-posta Kutusu'; $wb['Autoresponder'] = 'Otomatik Yanıtlayıcı'; -$wb['Mail Filter'] = 'Posta Süzgeci'; +$wb['Mail Filter'] = 'E-posta Süzgeci'; $wb['Custom Rules'] = 'Özel Kurallar'; $wb['Email filter'] = 'E-posta Süzgeci'; $wb['Email Whitelist'] = 'E-posta Beyaz Listesi'; $wb['Whitelist'] = 'Beyaz Liste'; -$wb['Spamfilter blacklist'] = 'Önemsiz Posta Süzgeci Kara Listesi'; -$wb['Spamfilter Config'] = 'Önemsiz Posta Süzgeci Ayarları'; +$wb['Spamfilter blacklist'] = 'Önemsiz Ä°leti Süzgeci Kara Listesi'; +$wb['Blacklist'] = 'Kara Liste'; +$wb['Spamfilter Config'] = 'Önemsiz Ä°leti Süzgeci Ayarları'; $wb['Server'] = 'Sunucu'; -$wb['Spamfilter policy'] = 'Önemsiz Posta Süzgeci Kuralları'; +$wb['Spamfilter policy'] = 'Önemsiz Ä°leti Süzgeci Kuralları'; $wb['Policy'] = 'Kural'; $wb['Quarantine'] = 'Karantina'; $wb['Tag-Level'] = 'Etiket Düzeyi'; $wb['Other'] = 'DiÄŸer'; -$wb['Spamfilter users'] = 'Önemsiz Posta Süzgeci Kullanıcıları'; +$wb['Spamfilter users'] = 'Önemsiz Ä°leti Süzgeci Kullanıcıları'; $wb['Users'] = 'Kullanıcılar'; -$wb['Spamfilter Whitelist'] = 'Önemsiz Posta Beyaz Listesi'; +$wb['Spamfilter Whitelist'] = 'Önemsiz Ä°leti Beyaz Listesi'; +$wb['Whitelist'] = 'Beyaz Liste'; $wb['Email'] = 'E-posta'; $wb['Email Mailbox'] = 'E-posta Kutusu'; $wb['Email Accounts'] = 'E-posta Hesapları'; -$wb['User / Domain'] = 'Kullanıcı / Alan Adı'; +$wb['User / Domain'] = 'Kullanıcı / Etki Alanı'; $wb['Server Settings'] = 'Sunucu Ayarları'; -$wb['Fetchmail'] = 'Posta Alma'; -$wb['Mailbox traffic'] = 'Posta Kutusu TrafiÄŸi'; +$wb['Spamfilter'] = 'Önemsiz Ä°leti Süzgeci'; +$wb['Fetchmail'] = 'E-posta Alma'; +$wb['Mailbox traffic'] = 'E-posta Kutusu TrafiÄŸi'; $wb['Statistics'] = 'Ä°statistikler'; $wb['Postfix Whitelist'] = 'Postfix Beyaz Liste'; $wb['Postfix Blacklist'] = 'Postfix Kara Liste'; $wb['Content Filter'] = 'İçerik Süzgeci'; $wb['Global Filters'] = 'Genel Süzgeçler'; -$wb['Domain Alias'] = 'Takma Alan Adı'; +$wb['Domain Alias'] = 'Takma Etki Alanı'; $wb['Relay Recipients'] = 'Aktarılan Alıcılar'; -$wb['Mailbox quota'] = 'Posta Kutusu Kotası'; -$wb['add_header_txt'] = 'Header (adds \"X-Spam: Yes\")'; -$wb['rewrite_subject_txt'] = 'Subject (adds \"***SPAM***\" at the beginning)'; +$wb['Mailbox quota'] = 'E-posta Kutusu Kotası'; ?> diff --git a/interface/web/mail/lib/lang/tr_backup_stats_list.lng b/interface/web/mail/lib/lang/tr_backup_stats_list.lng index 79cd6c9a63..125bfc8284 100644 --- a/interface/web/mail/lib/lang/tr_backup_stats_list.lng +++ b/interface/web/mail/lib/lang/tr_backup_stats_list.lng @@ -1,9 +1,9 @@ <?php -$wb['list_head_txt'] = 'Backup Stats'; -$wb['active_txt'] = 'Active'; -$wb['domain_txt'] = 'Email'; -$wb['backup_count_txt'] = 'Backup count'; -$wb['backup_server_txt'] = 'Server'; -$wb['backup_interval_txt'] = 'Interval / cnt.'; -$wb['backup_size_txt'] = 'Backupsize'; +$wb['list_head_txt'] = 'Yedekleme Ä°statistikleri'; +$wb['active_txt'] = 'Etkin'; +$wb['domain_txt'] = 'E-posta'; +$wb['backup_count_txt'] = 'Yedek Sayısı'; +$wb['backup_server_txt'] = 'Sunucu'; +$wb['backup_interval_txt'] = 'Sıklık / Sayı'; +$wb['backup_size_txt'] = 'Yedek Boyutu'; ?> diff --git a/interface/web/mail/lib/lang/tr_mail_alias.lng b/interface/web/mail/lib/lang/tr_mail_alias.lng index d3fd3f1271..ea440b2e63 100644 --- a/interface/web/mail/lib/lang/tr_mail_alias.lng +++ b/interface/web/mail/lib/lang/tr_mail_alias.lng @@ -4,14 +4,14 @@ $wb['destination_txt'] = 'Hedef'; $wb['active_txt'] = 'Etkin'; $wb['email_error_isemail'] = 'E-posta adresi geçersiz.'; $wb['email_error_unique'] = 'Bu e-posta adresi zaten var'; -$wb['no_domain_perm'] = 'Bu alan adı için izniniz yok.'; +$wb['no_domain_perm'] = 'Bu etki alanı için izniniz yok.'; $wb['destination_error_isemail'] = 'Hedef e-posta adresi geçersiz.'; $wb['limit_mailalias_txt'] = 'Hesabınıza ekleyebileceÄŸiniz en fazla takma e-posta adresi sayısına ulaÅŸtınız.'; -$wb['duplicate_mailbox_txt'] = 'Bu e-posta adresini kullanan bir posta kutusu zaten var'; -$wb['domain_txt'] = 'Alan Adı'; +$wb['duplicate_mailbox_txt'] = 'Bu adresi kullanan bir e-posta kutusu zaten var'; +$wb['domain_txt'] = 'Etki Alanı'; $wb['duplicate_email_alias_txt'] = 'Bu takma e-posta adresi zaten var.'; $wb['source_txt'] = 'Takma Ad'; -$wb['send_as_txt'] = 'Send as'; -$wb['send_as_exp'] = 'Allow target to send mail using this alias as origin'; -$wb['greylisting_txt'] = 'Enable greylisting'; +$wb['send_as_txt'] = 'Gönderen'; +$wb['send_as_exp'] = 'Hedef bu adresi kaynak olarak göstererek e-posta gönderebilsin'; +$wb['greylisting_txt'] = 'Gri Liste Kullanılsın'; ?> diff --git a/interface/web/mail/lib/lang/tr_mail_aliasdomain.lng b/interface/web/mail/lib/lang/tr_mail_aliasdomain.lng index d39c6f46a3..f6cd98261b 100644 --- a/interface/web/mail/lib/lang/tr_mail_aliasdomain.lng +++ b/interface/web/mail/lib/lang/tr_mail_aliasdomain.lng @@ -2,10 +2,10 @@ $wb['source_txt'] = 'Kaynak'; $wb['destination_txt'] = 'Hedef'; $wb['active_txt'] = 'Etkin'; -$wb['no_domain_perm'] = 'Bu alan adı için izniniz yok.'; -$wb['limit_mailaliasdomain_txt'] = 'Hesabınıza ekleyebileceÄŸiniz en fazla takma alan adı sayısına ulaÅŸtınız.'; -$wb['source_destination_identical_txt'] = 'Kaynak ve Hedef alan adları aynı.'; -$wb['source_error_empty'] = 'Kaynak alan adı boÅŸ olamaz.'; -$wb['source_error_unique'] = 'Bu kaynak alan adı zaten var.'; -$wb['source_error_regex'] = 'Kaynak alan adı geçersiz.'; +$wb['no_domain_perm'] = 'Bu etki alanı için izniniz yok.'; +$wb['limit_mailaliasdomain_txt'] = 'Hesabınıza ekleyebileceÄŸiniz en fazla takma etki alanı sayısına ulaÅŸtınız.'; +$wb['source_destination_identical_txt'] = 'Kaynak ve Hedef etki alanları aynı.'; +$wb['source_error_empty'] = 'Kaynak etki alanı boÅŸ olamaz.'; +$wb['source_error_unique'] = 'Bu kaynak etki alanı zaten var.'; +$wb['source_error_regex'] = 'Kaynak etki alanı geçersiz.'; ?> diff --git a/interface/web/mail/lib/lang/tr_mail_aliasdomain_list.lng b/interface/web/mail/lib/lang/tr_mail_aliasdomain_list.lng index a6d3dfc3b9..7cbc3aef9e 100644 --- a/interface/web/mail/lib/lang/tr_mail_aliasdomain_list.lng +++ b/interface/web/mail/lib/lang/tr_mail_aliasdomain_list.lng @@ -1,7 +1,8 @@ <?php -$wb['list_head_txt'] = 'Takma Alan Adı'; +$wb['list_head_txt'] = 'Takma Etki Alanı'; $wb['active_txt'] = 'Etkin'; $wb['source_txt'] = 'Kaynak'; $wb['destination_txt'] = 'Hedef'; -$wb['add_new_record_txt'] = 'Takma Alan Adı Ekle'; +$wb['source_txt'] = 'Kaynak'; +$wb['add_new_record_txt'] = 'Takma Etki Alanı Ekle'; ?> diff --git a/interface/web/mail/lib/lang/tr_mail_backup_list.lng b/interface/web/mail/lib/lang/tr_mail_backup_list.lng index 73286a0737..1a5ae7227b 100644 --- a/interface/web/mail/lib/lang/tr_mail_backup_list.lng +++ b/interface/web/mail/lib/lang/tr_mail_backup_list.lng @@ -1,16 +1,16 @@ <?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['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_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['list_head_txt'] = 'Var Olan Yedekler'; +$wb['date_txt'] = 'Tarih'; +$wb['backup_type_txt'] = 'Tür'; +$wb['filename_txt'] = 'Yedek Dosyası'; +$wb['restore_backup_txt'] = 'Geri Yükle'; +$wb['restore_info_txt'] = 'Yedekten geri yükleme iÅŸlemi baÅŸlatıldı. Bu iÅŸlemin tamamlanması bir kaç dakika sürebilir.'; +$wb['restore_confirm_txt'] = 'Geri yükleme iÅŸlemi sırasında e-posta kutunuzda var olan iletilerin üzerine yazılabilir. Bu yedeÄŸi geri yüklemek istediÄŸinize emin misiniz?'; +$wb['download_pending_txt'] = 'Zaten bekleyen bir yedekleme indirme iÅŸlemi var.'; +$wb['restore_pending_txt'] = 'Zaten bekleyen bir yedek geri yükleme iÅŸlemi var.'; +$wb['delete_backup_txt'] = 'YedeÄŸi Sil'; +$wb['delete_info_txt'] = 'YedeÄŸi silme iÅŸlemi baÅŸlatıldı. Bu iÅŸlemin tamamlanması bir kaç dakika sürebilir.'; +$wb['delete_confirm_txt'] = 'Bu yedeÄŸi silmek istediÄŸinize emin misiniz?'; +$wb['delete_pending_txt'] = 'Zaten bekleyen bir yedek silme iÅŸlemi var.'; +$wb['filesize_txt'] = 'Dosya Boyutu'; ?> diff --git a/interface/web/mail/lib/lang/tr_mail_blacklist.lng b/interface/web/mail/lib/lang/tr_mail_blacklist.lng index ecdca0b1a5..381a11fa98 100644 --- a/interface/web/mail/lib/lang/tr_mail_blacklist.lng +++ b/interface/web/mail/lib/lang/tr_mail_blacklist.lng @@ -4,6 +4,6 @@ $wb['source_txt'] = 'Kara Listedeki Adres'; $wb['recipient_txt'] = 'Alıcı'; $wb['active_txt'] = 'Etkin'; $wb['source_error_notempty'] = 'Adres boÅŸ olamaz.'; -$wb['type_txt'] = 'Tip'; +$wb['type_txt'] = 'Tür'; $wb['limit_mailfilter_txt'] = 'Hesabınıza ekleyebileceÄŸiniz en fazla e-posta süzgeci sayısına ulaÅŸtınız.'; ?> diff --git a/interface/web/mail/lib/lang/tr_mail_blacklist_list.lng b/interface/web/mail/lib/lang/tr_mail_blacklist_list.lng index b9bf6ff92c..9446569f4f 100644 --- a/interface/web/mail/lib/lang/tr_mail_blacklist_list.lng +++ b/interface/web/mail/lib/lang/tr_mail_blacklist_list.lng @@ -3,7 +3,7 @@ $wb['list_head_txt'] = 'E-posta Kara Listesi'; $wb['active_txt'] = 'Etkin'; $wb['server_id_txt'] = 'Sunucu'; $wb['source_txt'] = 'Kara Listedeki Adres'; -$wb['type_txt'] = 'Tip'; +$wb['type_txt'] = 'Tür'; $wb['recipient_txt'] = 'Alıcı'; $wb['add_new_record_txt'] = 'Kara Liste Kaydı Ekle'; $wb['access_txt'] = 'EriÅŸim'; diff --git a/interface/web/mail/lib/lang/tr_mail_content_filter.lng b/interface/web/mail/lib/lang/tr_mail_content_filter.lng index f13b01a680..df2d4d5c43 100644 --- a/interface/web/mail/lib/lang/tr_mail_content_filter.lng +++ b/interface/web/mail/lib/lang/tr_mail_content_filter.lng @@ -1,9 +1,9 @@ <?php $wb['server_id_txt'] = 'Sunucu'; $wb['type_txt'] = 'Süzgeç'; -$wb['pattern_txt'] = 'Kurallı Ä°fade Deseni'; +$wb['pattern_txt'] = 'Kurallı Ä°fade Örüntüsü'; $wb['data_txt'] = 'Veri'; $wb['action_txt'] = 'Ä°ÅŸlem'; $wb['active_txt'] = 'Etkin'; -$wb['pattern_error_empty'] = 'Desen boÅŸ olamaz.'; +$wb['pattern_error_empty'] = 'Örüntü boÅŸ olamaz.'; ?> diff --git a/interface/web/mail/lib/lang/tr_mail_domain.lng b/interface/web/mail/lib/lang/tr_mail_domain.lng index 4ee4aa50fa..3e7d9cc412 100644 --- a/interface/web/mail/lib/lang/tr_mail_domain.lng +++ b/interface/web/mail/lib/lang/tr_mail_domain.lng @@ -1,23 +1,23 @@ <?php $wb['server_id_txt'] = 'Sunucu'; -$wb['domain_txt'] = 'Alan Adı'; -$wb['type_txt'] = 'Tip'; +$wb['domain_txt'] = 'Etki Alanı'; +$wb['type_txt'] = 'Tür'; $wb['active_txt'] = 'Etkin'; -$wb['domain_error_empty'] = 'Alan adı boÅŸ olamaz.'; -$wb['domain_error_unique'] = 'Bu alan adı zaten var.'; -$wb['domain_error_regex'] = 'Alan adı geçersiz.'; +$wb['domain_error_empty'] = 'Etki alanı boÅŸ olamaz.'; +$wb['domain_error_unique'] = 'Bu etki alanı zaten var.'; +$wb['domain_error_regex'] = 'Etki alanı geçersiz.'; $wb['client_txt'] = 'Müşteri'; -$wb['limit_maildomain_txt'] = 'Hesabınıza ekleyebileceÄŸiniz en fazla alan adı sayısına ulaÅŸtınız.'; -$wb['policy_txt'] = 'Önemsiz Posta Süzgeci'; +$wb['limit_maildomain_txt'] = 'Hesabınıza ekleyebileceÄŸiniz en fazla etki alanı sayısına ulaÅŸtınız.'; +$wb['policy_txt'] = 'Önemsiz Ä°leti Süzgeci'; $wb['no_policy'] = '- devre dışı -'; -$wb['dkim_txt'] = 'enable DKIM'; -$wb['dkim_private_txt'] = 'DKIM Private-key'; -$wb['dkim_public_txt'] = 'DKIM Public-key\nfor information only'; -$wb['dkim_generate_txt'] = 'Generate DKIM Private-key'; -$wb['dkim_dns_txt'] = 'DNS-Record'; -$wb['dkim_private_key_error'] = 'Invalid DKIM-Private key'; -$wb['dkim_settings_txt'] = 'DomainKeys Identified Mail (DKIM)'; -$wb['error_not_allowed_server_id'] = 'Chosen server is not allowed for this account.'; -$wb['dkim_selector_txt'] = 'DKIM-Selector'; -$wb['dkim_selector_error'] = 'Invalid DKIM-Selector. Use only lower-case alphanumeric characters (a-z or 0-9) up to 63 chars'; +$wb['dkim_txt'] = 'DKIM Kullanılsın'; +$wb['dkim_private_txt'] = 'Özel DKIM Anahtarı'; +$wb['dkim_public_txt'] = 'Herkese açık DKIM anahtarı' . "\n" . 'yalnız bilgilendirme için'; +$wb['dkim_generate_txt'] = 'Özel DKIM Anahtarı Ãœret'; +$wb['dkim_dns_txt'] = 'DNS Kaydı'; +$wb['dkim_private_key_error'] = 'Özel DKIM Anahtarı Geçersiz'; +$wb['dkim_settings_txt'] = 'DomainKeys Tanımlı E-posta (DKIM)'; +$wb['error_not_allowed_server_id'] = 'SeçilmiÅŸ sunucuda bu hesap kullanılamaz.'; +$wb['dkim_selector_txt'] = 'DKIM Seçici'; +$wb['dkim_selector_error'] = 'DKIM seçici geçersiz. En fazla 63 karakter uzunluÄŸunda, yalnız küçük Ä°ngilizce harf ve rakamları kullanın (a-z ya da 0-9)'; ?> diff --git a/interface/web/mail/lib/lang/tr_mail_domain_admin_list.lng b/interface/web/mail/lib/lang/tr_mail_domain_admin_list.lng index 7d56618eef..f6937ab382 100644 --- a/interface/web/mail/lib/lang/tr_mail_domain_admin_list.lng +++ b/interface/web/mail/lib/lang/tr_mail_domain_admin_list.lng @@ -1,8 +1,8 @@ <?php -$wb['list_head_txt'] = 'E-posta Alan Adı'; +$wb['list_head_txt'] = 'E-posta Etki Alanı'; $wb['server_id_txt'] = 'Sunucu'; -$wb['domain_txt'] = 'Alan Adı'; -$wb['add_new_record_txt'] = 'Alan Adı Ekle'; +$wb['domain_txt'] = 'Etki Alanı'; +$wb['add_new_record_txt'] = 'Etki Alanı Ekle'; $wb['active_txt'] = 'Etkin'; $wb['sys_groupid_txt'] = 'Müşteri'; ?> diff --git a/interface/web/mail/lib/lang/tr_mail_domain_catchall.lng b/interface/web/mail/lib/lang/tr_mail_domain_catchall.lng index c5f8725a72..bcdf629846 100644 --- a/interface/web/mail/lib/lang/tr_mail_domain_catchall.lng +++ b/interface/web/mail/lib/lang/tr_mail_domain_catchall.lng @@ -1,12 +1,12 @@ <?php -$wb['domain_txt'] = 'Alan Adı'; +$wb['domain_txt'] = 'Etki Alanı'; $wb['destination_txt'] = 'Hedef'; $wb['active_txt'] = 'Etkin'; -$wb['domain_error_unique'] = 'Bu alan adı için zaten bir tümünü al kayıdı var.'; -$wb['no_domain_perm'] = 'Bu alan adı için izniniz yok.'; -$wb['domain_error_regex'] = 'Alan adı geçersiz ya da geçersiz karakterler içeriyor.'; +$wb['domain_error_unique'] = 'Bu etki alanı için zaten bir tümünü al kayıdı var.'; +$wb['no_domain_perm'] = 'Bu etki alanı için izniniz yok.'; +$wb['domain_error_regex'] = 'Etki alanı geçersiz ya da geçersiz karakterler içeriyor.'; $wb['limit_mailcatchall_txt'] = 'Hesabınıza ekleyebileceÄŸiniz en fazla tümünü al hesabı sayısına ulaÅŸtınız.'; +$wb['domain_txt'] = 'Etki Alanı'; $wb['source_txt'] = 'Kaynak'; $wb['destination_error_isemail'] = 'Hedef e-posta adresi geçersiz.'; -$wb['greylisting_txt'] = 'Enable greylisting'; ?> diff --git a/interface/web/mail/lib/lang/tr_mail_domain_catchall_list.lng b/interface/web/mail/lib/lang/tr_mail_domain_catchall_list.lng index 596e2dbdae..45a59fe831 100644 --- a/interface/web/mail/lib/lang/tr_mail_domain_catchall_list.lng +++ b/interface/web/mail/lib/lang/tr_mail_domain_catchall_list.lng @@ -2,8 +2,8 @@ $wb['list_head_txt'] = 'E-posta Tümünü Al Hesabı'; $wb['active_txt'] = 'Etkin'; $wb['source_txt'] = 'Kaynak'; -$wb['destination_txt'] = 'Hedef e-posta adresi'; +$wb['destination_txt'] = 'Hedef E-posta Adresi'; $wb['server_id_txt'] = 'Sunucu'; -$wb['domain_txt'] = 'Alan Adı'; +$wb['domain_txt'] = 'Etki Alanı'; $wb['add_new_record_txt'] = 'Tümünü Al Hesabı Ekle'; ?> diff --git a/interface/web/mail/lib/lang/tr_mail_domain_list.lng b/interface/web/mail/lib/lang/tr_mail_domain_list.lng index 7a4a1f2b64..06a44455eb 100644 --- a/interface/web/mail/lib/lang/tr_mail_domain_list.lng +++ b/interface/web/mail/lib/lang/tr_mail_domain_list.lng @@ -1,7 +1,7 @@ <?php -$wb['list_head_txt'] = 'E-posta Alan Adı'; +$wb['list_head_txt'] = 'E-posta Etki Alanı'; $wb['server_id_txt'] = 'Sunucu'; -$wb['domain_txt'] = 'Alan Adı'; -$wb['add_new_record_txt'] = 'Alan Adı Ekle'; +$wb['domain_txt'] = 'Etki Alanı'; +$wb['add_new_record_txt'] = 'Etki Alanı Ekle'; $wb['active_txt'] = 'Etkin'; ?> diff --git a/interface/web/mail/lib/lang/tr_mail_forward.lng b/interface/web/mail/lib/lang/tr_mail_forward.lng index f96a0e4c07..2352cd945f 100644 --- a/interface/web/mail/lib/lang/tr_mail_forward.lng +++ b/interface/web/mail/lib/lang/tr_mail_forward.lng @@ -3,11 +3,11 @@ $wb['email_txt'] = 'E-posta'; $wb['destination_txt'] = 'Hedef E-posta'; $wb['active_txt'] = 'Etkin'; $wb['limit_mailforward_txt'] = 'Hesabınıza ekleyebileceÄŸiniz en fazla e-posta yönlendirme sayısına ulaÅŸtınız.'; -$wb['duplicate_mailbox_txt'] = 'Bu e-posta adresini kullanan bir posta kutusu zaten var'; -$wb['domain_txt'] = 'Alan Adı'; +$wb['duplicate_mailbox_txt'] = 'Bu e-posta adresini kullanan bir e-posta kutusu zaten var'; +$wb['domain_txt'] = 'Etki Alanı'; $wb['source_txt'] = 'Kaynak E-posta'; -$wb['email_error_isemail'] = 'Please enter a valid email address.'; -$wb['send_as_txt'] = 'Send as'; -$wb['send_as_exp'] = 'Allow target to send mail using this address as origin (if target is internal)'; -$wb['greylisting_txt'] = 'Enable greylisting'; +$wb['email_error_isemail'] = 'Lütfen geçerli bir e-posta adresi yazın.'; +$wb['send_as_txt'] = 'Gönderen'; +$wb['send_as_exp'] = 'Hedef bu adresi kaynak olarak göstererek e-posta gönderebilsin (hedef iç kullanıcı ise)'; +$wb['greylisting_txt'] = 'Gri Liste Kullanılsın'; ?> diff --git a/interface/web/mail/lib/lang/tr_mail_get.lng b/interface/web/mail/lib/lang/tr_mail_get.lng index b82b6c8c9a..2ad3434265 100644 --- a/interface/web/mail/lib/lang/tr_mail_get.lng +++ b/interface/web/mail/lib/lang/tr_mail_get.lng @@ -1,6 +1,6 @@ <?php $wb['server_id_txt'] = 'Sunucu'; -$wb['type_txt'] = 'Tip'; +$wb['type_txt'] = 'Tür'; $wb['source_server_txt'] = 'POP3/IMAP Sunucusu'; $wb['source_username_txt'] = 'Kullanıcı Adı'; $wb['source_password_txt'] = 'Parola'; @@ -9,11 +9,11 @@ $wb['source_delete_note_txt'] = 'Lütfen bu seçeneÄŸi etkinleÅŸtirmeden önce, $wb['source_read_all_txt'] = 'Tüm e-postalar alınsın (okunmuÅŸlar dahil)'; $wb['destination_txt'] = 'Hedef'; $wb['active_txt'] = 'Etkin'; -$wb['limit_fetchmail_txt'] = 'Hesabınıza ekleyebileceÄŸiniz en fazla posta alma kaydı sayısına ulaÅŸtınız.'; +$wb['limit_fetchmail_txt'] = 'Hesabınıza ekleyebileceÄŸiniz en fazla e-posta alma kaydı sayısına ulaÅŸtınız.'; $wb['source_server_error_isempty'] = 'Sunucu boÅŸ olamaz.'; $wb['source_username_error_isempty'] = 'Kullanıcı adı boÅŸ olamaz.'; $wb['source_password_error_isempty'] = 'Parola boÅŸ olamaz.'; $wb['destination_error_isemail'] = 'Hedef seçilmemiÅŸ.'; -$wb['source_server_error_regex'] = 'POP3/IMAP Sunucu alan adı geçersiz.'; -$wb['error_delete_read_all_combination'] = 'Seçenek kombinasyonu geçersiz. You can not use \\"E-postalar alındıktan sonra silinsin\\" = Hayır iken \\"Tüm e-postalar alınsın\\" = Evet olamaz'; +$wb['source_server_error_regex'] = 'POP3/IMAP Sunucu etki alanı geçersiz.'; +$wb['error_delete_read_all_combination'] = 'Seçenek kombinasyonu geçersiz. "E-postalar Alındıktan Sonra Silinsin" seçeneÄŸi devre dışı iken "Tüm E-postalar Alınsın" seçeneÄŸi etkin olamaz'; ?> diff --git a/interface/web/mail/lib/lang/tr_mail_mailinglist.lng b/interface/web/mail/lib/lang/tr_mail_mailinglist.lng index 17bfab31dc..4bd52db75e 100644 --- a/interface/web/mail/lib/lang/tr_mail_mailinglist.lng +++ b/interface/web/mail/lib/lang/tr_mail_mailinglist.lng @@ -1,19 +1,19 @@ <?php -$wb['mailinglist_txt'] = 'Posta Listesi'; +$wb['mailinglist_txt'] = 'E-posta Listesi'; $wb['limit_mailmailinglist_txt'] = 'Sınıra ulaşıldı'; -$wb['domain_error_empty'] = 'Alan adı boÅŸ olamaz.'; +$wb['domain_error_empty'] = 'Etki alanı boÅŸ olamaz.'; $wb['listname_error_empty'] = 'Liste adı boÅŸ olamaz.'; -$wb['domain_error_regex'] = 'Alan adı geçersiz.'; +$wb['domain_error_regex'] = 'Etki alanı geçersiz.'; $wb['email_in_use_txt'] = 'E-posta kullanımda'; -$wb['no_domain_perm'] = 'Bu alan adı için izniniz yok.'; -$wb['password_strength_txt'] = 'Parola Güçlüğü'; +$wb['no_domain_perm'] = 'Bu etki alanı için izniniz yok.'; +$wb['password_strength_txt'] = 'Parola ZorluÄŸu'; $wb['server_id_txt'] = 'Sunucu'; -$wb['domain_txt'] = 'Alan Adı'; +$wb['domain_txt'] = 'Etki Alanı'; $wb['listname_txt'] = 'Liste Adı'; $wb['client_txt'] = 'Müşteri'; $wb['email_txt'] = 'E-posta'; $wb['password_txt'] = 'Parola'; -$wb['generate_password_txt'] = 'Parola OluÅŸtur'; +$wb['generate_password_txt'] = 'Parola Ãœret'; $wb['repeat_password_txt'] = 'Parola Onayı'; $wb['password_mismatch_txt'] = 'Parola ile onayı aynı deÄŸil.'; $wb['password_match_txt'] = 'Parola ile onayı aynı.'; diff --git a/interface/web/mail/lib/lang/tr_mail_mailinglist_list.lng b/interface/web/mail/lib/lang/tr_mail_mailinglist_list.lng index c605dd2442..8070d1983d 100644 --- a/interface/web/mail/lib/lang/tr_mail_mailinglist_list.lng +++ b/interface/web/mail/lib/lang/tr_mail_mailinglist_list.lng @@ -1,5 +1,5 @@ <?php -$wb['list_head_txt'] = 'Posta Listesi'; -$wb['domain_txt'] = 'Alan Adı'; +$wb['list_head_txt'] = 'E-posta Listesi'; +$wb['domain_txt'] = 'Etki Alanı'; $wb['listname_txt'] = 'Liste Adı'; ?> diff --git a/interface/web/mail/lib/lang/tr_mail_relay_recipient.lng b/interface/web/mail/lib/lang/tr_mail_relay_recipient.lng index 90153f8c4d..a7d83620cb 100644 --- a/interface/web/mail/lib/lang/tr_mail_relay_recipient.lng +++ b/interface/web/mail/lib/lang/tr_mail_relay_recipient.lng @@ -4,6 +4,6 @@ $wb['source_txt'] = 'Aktarılan Alıcı'; $wb['recipient_txt'] = 'Alıcı'; $wb['active_txt'] = 'Etkin'; $wb['source_error_notempty'] = 'Adres boÅŸ olamaz.'; -$wb['type_txt'] = 'Tip'; +$wb['type_txt'] = 'Tür'; $wb['limit_mailfilter_txt'] = 'Hesabınıza ekleyebileceÄŸiniz en fazla e-posta süzgeci sayısına ulaÅŸtınız.'; ?> diff --git a/interface/web/mail/lib/lang/tr_mail_spamfilter.lng b/interface/web/mail/lib/lang/tr_mail_spamfilter.lng index be63f71200..6a708982f1 100644 --- a/interface/web/mail/lib/lang/tr_mail_spamfilter.lng +++ b/interface/web/mail/lib/lang/tr_mail_spamfilter.lng @@ -7,11 +7,11 @@ $wb['spam_rewrite_subject_txt'] = 'Konuyu yeniden yaz'; $wb['spam_redirect_maildir_txt'] = 'Mail kutusuna yönlendir'; $wb['active_txt'] = 'Etkin'; $wb['spam_rewrite_txt'] = 'Bu puanın üzerindeki e-posta konusunu yeniden yaz.'; -$wb['spam_redirect_txt'] = 'Bu puanın üzerindeki e-postayı seçilmiÅŸ posta kutusuna yönlendir.'; +$wb['spam_redirect_txt'] = 'Bu puanın üzerindeki e-postayı seçilmiÅŸ e-posta kutusuna yönlendir.'; $wb['spam_delete_txt'] = 'Bu puanın üzerindeki e-postayı sil.'; $wb['disable_txt'] = 'Ä°pucu: Bir süzgeç seçeneÄŸini devre dışı bırakmak için, puanı 0.00 olarak yazın.'; $wb['email_error_isemail'] = 'E-posta adresi geçersiz.'; -$wb['email_error_unique'] = 'Bu e-posta adresi için önemiz posta süzgeci kaydı zaten var.'; -$wb['spam_redirect_maildir_purge_txt'] = 'Posta klasörü'; +$wb['email_error_unique'] = 'Bu e-posta adresi için önemiz e-posta süzgeci kaydı zaten var.'; +$wb['spam_redirect_maildir_purge_txt'] = 'E-posta Klasörü'; $wb['days_txt'] = ' gün aralıklarla temizlensin.'; ?> diff --git a/interface/web/mail/lib/lang/tr_mail_spamfilter_list.lng b/interface/web/mail/lib/lang/tr_mail_spamfilter_list.lng index 90981ad8fe..6901f541bd 100644 --- a/interface/web/mail/lib/lang/tr_mail_spamfilter_list.lng +++ b/interface/web/mail/lib/lang/tr_mail_spamfilter_list.lng @@ -1,8 +1,8 @@ <?php -$wb['list_head_txt'] = 'Önemsiz Posta Süzgeci'; +$wb['list_head_txt'] = 'Önemsiz Ä°leti Süzgeci'; $wb['active_txt'] = 'Etkin'; $wb['server_id_txt'] = 'Sunucu'; $wb['server_name_txt'] = 'server_name'; $wb['email_txt'] = 'E-posta'; -$wb['add_new_record_txt'] = 'Önemsiz Posta Süzgeci Ekle'; +$wb['add_new_record_txt'] = 'Önemsiz Ä°leti Süzgeci Ekle'; ?> diff --git a/interface/web/mail/lib/lang/tr_mail_transport.lng b/interface/web/mail/lib/lang/tr_mail_transport.lng index f268fd5475..0b41770392 100644 --- a/interface/web/mail/lib/lang/tr_mail_transport.lng +++ b/interface/web/mail/lib/lang/tr_mail_transport.lng @@ -1,8 +1,8 @@ <?php $wb['server_id_txt'] = 'Sunucu'; -$wb['domain_txt'] = 'Alan Adı'; +$wb['domain_txt'] = 'Etki Alanı'; $wb['destination_txt'] = 'Hedef'; -$wb['type_txt'] = 'Tip'; +$wb['type_txt'] = 'Tür'; $wb['mx_txt'] = 'MX taraması yok'; $wb['sort_order_txt'] = 'Sıralama'; $wb['active_txt'] = 'Etkin'; diff --git a/interface/web/mail/lib/lang/tr_mail_transport_list.lng b/interface/web/mail/lib/lang/tr_mail_transport_list.lng index f9608f64dc..75c5962ece 100644 --- a/interface/web/mail/lib/lang/tr_mail_transport_list.lng +++ b/interface/web/mail/lib/lang/tr_mail_transport_list.lng @@ -2,7 +2,7 @@ $wb['list_head_txt'] = 'GeliÅŸmiÅŸ E-posta Yöneltme'; $wb['active_txt'] = 'Etkin'; $wb['server_id_txt'] = 'Sunucu'; -$wb['domain_txt'] = 'Alan Adı'; +$wb['domain_txt'] = 'Etki Alanı'; $wb['transport_txt'] = 'Aktarım'; $wb['sort_order_txt'] = 'Sıralama'; $wb['add_new_record_txt'] = 'Yöneltme Ekle'; diff --git a/interface/web/mail/lib/lang/tr_mail_user.lng b/interface/web/mail/lib/lang/tr_mail_user.lng index 6853b9619d..99e9860396 100644 --- a/interface/web/mail/lib/lang/tr_mail_user.lng +++ b/interface/web/mail/lib/lang/tr_mail_user.lng @@ -1,65 +1,65 @@ <?php -$wb['custom_mailfilter_txt'] = 'Özel posta süzgeci'; +$wb['custom_mailfilter_txt'] = 'Özel E-posta Süzgeci'; $wb['email_txt'] = 'E-posta'; $wb['cryptpwd_txt'] = 'Parola'; -$wb['password_strength_txt'] = 'Parola Güçlüğü'; +$wb['password_strength_txt'] = 'Parola ZorluÄŸu'; $wb['active_txt'] = 'Etkin'; $wb['email_error_isemail'] = 'E-posta adresi geçersiz.'; $wb['email_error_unique'] = 'Bu e-posta adresi zaten var.'; $wb['autoresponder_subject_txt'] = 'E-posta Konusu'; -$wb['autoresponder_subject'] = 'Ofis dışında yanıtı'; +$wb['autoresponder_subject'] = 'Ofis Dışında Yanıtı'; $wb['autoresponder_text_txt'] = 'Metin'; $wb['autoresponder_txt'] = 'Etkin'; $wb['autoresponder_start_date_txt'] = 'BaÅŸlangıç'; $wb['autoresponder_start_date_ispast'] = 'BaÅŸlangıç zamanı geçmiÅŸte olamaz.'; $wb['autoresponder_end_date_txt'] = 'BitiÅŸ'; $wb['autoresponder_end_date_isgreater'] = 'BitiÅŸ zamanı baÅŸlangıç zamanından sonra olmalıdır.'; -$wb['no_domain_perm'] = 'Bu alan adı için izniniz yok.'; +$wb['autoresponder_start_date_is_required'] = 'Otoyanıtlayıcı kullanıldığında baÅŸlangıç tarihi belirtilmelidir.'; +$wb['no_domain_perm'] = 'Bu etki alanı için izniniz yok.'; $wb['error_no_pwd'] = 'Parola boÅŸ olamaz.'; -$wb['quota_error_isint'] = 'Posta kutusunun boyutu bir sayı olmalıdır.'; +$wb['quota_error_isint'] = 'E-posta kutusunun boyutu bir sayı olmalıdır.'; $wb['quota_txt'] = 'Kota (sınırsız için 0 yazın)'; -$wb['server_id_txt'] = 'Sunucu kodu'; +$wb['server_id_txt'] = 'Sunucu Kodu'; $wb['password_txt'] = 'Parola'; -$wb['maildir_txt'] = 'Posta Klasörü'; +$wb['password_click_to_set_txt'] = 'Ayarlamak için tıklayın'; +$wb['maildir_txt'] = 'E-posta Klasörü'; $wb['postfix_txt'] = 'Alım Etkin'; +$wb['greylisting_txt'] = 'Gri Liste Kullanılsın'; $wb['access_txt'] = 'EriÅŸim Etkin'; -$wb['policy_txt'] = 'Önemsiz Posta Süzgeci'; +$wb['policy_txt'] = 'Önemsiz Ä°leti Süzgeci'; $wb['no_policy'] = '- devre dışı -'; -$wb['limit_mailbox_txt'] = 'Hesabınıza ekleyebileceÄŸiniz en fazla posta kutusu sayısına ulaÅŸtınız.'; -$wb['limit_mailquota_txt'] = 'Posta kutularınız için kullanabileceÄŸiniz en fazla boyuta ulaÅŸtınız. Kullanılabilecek alan MB:'; +$wb['limit_mailbox_txt'] = 'Hesabınıza ekleyebileceÄŸiniz en fazla e-posta kutusu sayısına ulaÅŸtınız.'; +$wb['limit_mailquota_txt'] = 'E-posta kutularınız için kullanabileceÄŸiniz en fazla boyuta ulaÅŸtınız. Kullanılabilecek alan MB:'; $wb['disablesmtp_txt'] = 'SMTP Kullanılmasın (gönderim)'; $wb['disableimap_txt'] = 'IMAP Kullanılmasın'; $wb['disablepop3_txt'] = 'POP3 Kullanılmasın'; $wb['duplicate_alias_or_forward_txt'] = 'Bu e-posta adresi zaten takma ya da yönlendirilmiÅŸ.'; $wb['quota_error_value'] = 'Kota deÄŸeri geçersiz. DeÄŸer sınırsız için 0 ya da 1 deÄŸerinden büyük olmalı'; -$wb['move_junk_txt'] = 'Önemsiz Epostalar Junk Klasörüne Taşınsın'; +$wb['move_junk_txt'] = 'Önemsiz Ä°letiler Junk Klasörüne Taşınsın'; $wb['name_txt'] = 'Ad'; $wb['name_optional_txt'] = '(Ä°steÄŸe baÄŸlı)'; $wb['autoresponder_active'] = 'Otoyanıtlayıcı kullanılsın'; $wb['cc_txt'] = 'Kopyası ÅŸuraya gönderilsin'; +$wb['sender_cc_txt'] = 'Gidenin Gizli Kopyası Åžuraya Gönderilsin'; $wb['cc_error_isemail'] = 'Kopyası ÅŸuraya gönderilsin alanına geçerli bir e-posta adresi yazılmalı'; -$wb['domain_txt'] = 'Alan Adı'; +$wb['sender_cc_error_isemail'] = 'Gidenin gizli kopyası ÅŸuraya gönderilsin alanındaki e-posta adresi geçersiz'; +$wb['domain_txt'] = 'Etki Alanı'; $wb['now_txt'] = 'Åžimdi'; $wb['login_error_unique'] = 'Kullanıcı adı zaten var.'; $wb['login_error_regex'] = 'Kullanılabilecek karakterler: A-Z, a-z, 0-9, ., _ ve -.'; -$wb['login_txt'] = 'Kullanıcı adı (isteÄŸe baÄŸlı)'; +$wb['login_txt'] = 'Kullanıcı Adı (Ä°steÄŸe BaÄŸlı)'; $wb['error_login_email_txt'] = 'Bu kullanıcı adı kullanılamaz. Lütfen farklı bir kullanıcı adı yazın ya da e-posta adresini kullanın.'; -$wb['generate_password_txt'] = 'Parola OluÅŸtur'; +$wb['generate_password_txt'] = 'Parola Ãœret'; $wb['repeat_password_txt'] = 'Parola Onayı'; $wb['password_mismatch_txt'] = 'Parola ile onayı aynı deÄŸil.'; $wb['password_match_txt'] = 'Parola ile onayı aynı.'; +$wb['backup_interval_txt'] = 'Yedekleme Sıklığı'; +$wb['backup_copies_txt'] = 'Yedek kopyalarının sayısı'; +$wb['no_backup_txt'] = 'Yedek yok'; +$wb['daily_backup_txt'] = 'Günlük'; +$wb['weekly_backup_txt'] = 'Haftalık'; +$wb['monthly_backup_txt'] = 'Aylık'; $wb['email_error_isascii'] = 'E-posta istemcinizde sorun yaÅŸamamak için lütfen parolanızda dile özel unikod karakterler kullanmayın.'; $wb['cc_note_txt'] = '(Birden çok e-posta adresini virgül ile ayırarak yazın)'; -$wb['autoresponder_start_date_is_required'] = 'Start date must be set when Autoresponder is enabled.'; -$wb['password_click_to_set_txt'] = 'Click to set'; -$wb['greylisting_txt'] = 'Enable greylisting'; -$wb['sender_cc_txt'] = 'Send outgoing BCC to'; -$wb['sender_cc_error_isemail'] = 'The -Send outgoing copy to- field does not contain a valid email address'; -$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['sender_cc_note_txt'] = '(Separate multiple email addresses with commas)'; +$wb['sender_cc_note_txt'] = '(Birden çok e-posta adresini virgül ile ayırarak yazın)'; ?> diff --git a/interface/web/mail/lib/lang/tr_mail_user_filter.lng b/interface/web/mail/lib/lang/tr_mail_user_filter.lng index 8897a9d18b..ba55be63dc 100644 --- a/interface/web/mail/lib/lang/tr_mail_user_filter.lng +++ b/interface/web/mail/lib/lang/tr_mail_user_filter.lng @@ -7,7 +7,7 @@ $wb['rulename_error_empty'] = 'Ad boÅŸ olamaz.'; $wb['searchterm_is_empty'] = 'Aranacak ifade boÅŸ olamaz.'; $wb['source_txt'] = 'Kaynak'; $wb['target_error_regex'] = 'Hedef için yalnız ÅŸu karakterler kullanılabilir: a-z, 0-9, -, ., _, ve {boÅŸluk}'; -$wb['limit_mailfilter_txt'] = 'Hesabınıza ekleyebileceÄŸiniz en fazla posta süzgeci sayısına ulaÅŸtınız.'; +$wb['limit_mailfilter_txt'] = 'Hesabınıza ekleyebileceÄŸiniz en fazla e-posta süzgeci sayısına ulaÅŸtınız.'; $wb['subject_txt'] = 'Konu'; $wb['from_txt'] = 'Kimden'; $wb['to_txt'] = 'Kime'; @@ -25,5 +25,5 @@ $wb['domain_txt'] = 'Etki alanı'; $wb['keep_txt'] = 'Tut'; $wb['reject_txt'] = 'Reddet'; $wb['stop_txt'] = 'Durdur'; -$wb['move_to_txt'] = 'Move to'; +$wb['move_to_txt'] = 'Åžuraya Taşı'; ?> diff --git a/interface/web/mail/lib/lang/tr_mail_user_list.lng b/interface/web/mail/lib/lang/tr_mail_user_list.lng index 6310ce4038..66d33becae 100644 --- a/interface/web/mail/lib/lang/tr_mail_user_list.lng +++ b/interface/web/mail/lib/lang/tr_mail_user_list.lng @@ -1,11 +1,11 @@ <?php -$wb['list_head_txt'] = 'Posta Kutusu'; +$wb['list_head_txt'] = 'E-posta Kutusu'; $wb['email_txt'] = 'E-posta'; $wb['autoresponder_txt'] = 'Otomatik Yanıtlayıcı'; -$wb['add_new_record_txt'] = 'Posta Kutusu Ekle'; +$wb['add_new_record_txt'] = 'E-posta Kutusu Ekle'; $wb['name_txt'] = 'Gerçek Ad'; $wb['login_txt'] = 'Oturum Aç'; -$wb['postfix_txt'] = 'Receiving'; +$wb['postfix_txt'] = 'Alınıyor'; $wb['disablesmtp_txt'] = 'SMTP (sending)'; $wb['disableimap_txt'] = 'IMAP'; $wb['disablepop3_txt'] = 'POP3'; diff --git a/interface/web/mail/lib/lang/tr_mail_user_stats_list.lng b/interface/web/mail/lib/lang/tr_mail_user_stats_list.lng index 326f69f698..b28a9f09b9 100644 --- a/interface/web/mail/lib/lang/tr_mail_user_stats_list.lng +++ b/interface/web/mail/lib/lang/tr_mail_user_stats_list.lng @@ -1,5 +1,5 @@ <?php -$wb['list_head_txt'] = 'Posta TrafiÄŸi'; +$wb['list_head_txt'] = 'E-posta TrafiÄŸi'; $wb['email_txt'] = 'E-posta'; $wb['this_month_txt'] = 'Bu ay'; $wb['last_month_txt'] = 'Geçen ay'; diff --git a/interface/web/mail/lib/lang/tr_mail_whitelist.lng b/interface/web/mail/lib/lang/tr_mail_whitelist.lng index 84df2143c0..c6272a9ede 100644 --- a/interface/web/mail/lib/lang/tr_mail_whitelist.lng +++ b/interface/web/mail/lib/lang/tr_mail_whitelist.lng @@ -4,6 +4,6 @@ $wb['source_txt'] = 'Beyaz Listedeki Adres'; $wb['recipient_txt'] = 'Alıcı'; $wb['active_txt'] = 'Etkin'; $wb['source_error_notempty'] = 'Adres boÅŸ olamaz.'; -$wb['type_txt'] = 'Tip'; +$wb['type_txt'] = 'Tür'; $wb['limit_mailfilter_txt'] = 'Hesabınıza ekleyebileceÄŸiniz en fazla e-posta süzgeci sayısına ulaÅŸtınız.'; ?> diff --git a/interface/web/mail/lib/lang/tr_mail_whitelist_list.lng b/interface/web/mail/lib/lang/tr_mail_whitelist_list.lng index 7809a24fe8..736b395ca0 100644 --- a/interface/web/mail/lib/lang/tr_mail_whitelist_list.lng +++ b/interface/web/mail/lib/lang/tr_mail_whitelist_list.lng @@ -3,7 +3,7 @@ $wb['list_head_txt'] = 'E-posta Beyaz Listesi'; $wb['active_txt'] = 'Etkin'; $wb['server_id_txt'] = 'Sunucu'; $wb['source_txt'] = 'Beyaz Listedeki Adres'; -$wb['type_txt'] = 'Tip'; +$wb['type_txt'] = 'Tür'; $wb['recipient_txt'] = 'Alıcı'; $wb['add_new_record_txt'] = 'Beyaz Liste Kaydı Ekle'; $wb['access_txt'] = 'EriÅŸim'; diff --git a/interface/web/mail/lib/lang/tr_spamfilter_blacklist_list.lng b/interface/web/mail/lib/lang/tr_spamfilter_blacklist_list.lng index 1e0f673474..40e3c5fb14 100644 --- a/interface/web/mail/lib/lang/tr_spamfilter_blacklist_list.lng +++ b/interface/web/mail/lib/lang/tr_spamfilter_blacklist_list.lng @@ -1,5 +1,5 @@ <?php -$wb['list_head_txt'] = 'Önemsiz Posta Kara Listesi'; +$wb['list_head_txt'] = 'Önemsiz Ä°leti Kara Listesi'; $wb['active_txt'] = 'Etkin'; $wb['server_id_txt'] = 'Sunucu'; $wb['priority_txt'] = 'Öncelik'; diff --git a/interface/web/mail/lib/lang/tr_spamfilter_config.lng b/interface/web/mail/lib/lang/tr_spamfilter_config.lng index 7ccd927773..93f1417483 100644 --- a/interface/web/mail/lib/lang/tr_spamfilter_config.lng +++ b/interface/web/mail/lib/lang/tr_spamfilter_config.lng @@ -6,15 +6,15 @@ $wb['gateway_txt'] = 'AÄŸ Geçidi'; $wb['hostname_txt'] = 'Sunucu Adı'; $wb['nameservers_txt'] = 'Ad Sunucuları'; $wb['module_txt'] = 'Sunucu Modülü'; -$wb['maildir_path_txt'] = 'Posta Klasörü Yolu'; +$wb['maildir_path_txt'] = 'E-posta Klasörü Yolu'; $wb['homedir_path_txt'] = 'Kullanıcı Klasörü Yolu'; -$wb['mailuser_uid_txt'] = 'Posta Kullanıcısı UID'; -$wb['mailuser_gid_txt'] = 'Posta Kullanıcısı GID'; -$wb['mailuser_name_txt'] = 'Posta Kullanıcısı Adı'; -$wb['mailuser_group_txt'] = 'Posta Kullanıcısı Grubu'; +$wb['mailuser_uid_txt'] = 'E-posta Kullanıcısı UID'; +$wb['mailuser_gid_txt'] = 'E-posta Kullanıcısı GID'; +$wb['mailuser_name_txt'] = 'E-posta Kullanıcısı Adı'; +$wb['mailuser_group_txt'] = 'E-posta Kullanıcısı Grubu'; $wb['relayhost_txt'] = 'Aktarım Sunucusu'; $wb['relayhost_user_txt'] = 'Aktarım Sunucu Kullanıcı Adı'; $wb['relayhost_password_txt'] = 'Aktarım Sunucu Parolası'; -$wb['mailbox_size_limit_txt'] = 'Posta Kutusu Boyutu'; +$wb['mailbox_size_limit_txt'] = 'E-posta Kutusu Boyutu'; $wb['message_size_limit_txt'] = 'Ä°leti Boyutu Sınırı'; ?> diff --git a/interface/web/mail/lib/lang/tr_spamfilter_config_list.lng b/interface/web/mail/lib/lang/tr_spamfilter_config_list.lng index 2b6e0b3c18..dc30cf868a 100644 --- a/interface/web/mail/lib/lang/tr_spamfilter_config_list.lng +++ b/interface/web/mail/lib/lang/tr_spamfilter_config_list.lng @@ -1,5 +1,5 @@ <?php $wb['list_head_txt'] = 'Sunucu Ayarları'; $wb['server_name_txt'] = 'Sunucu'; -$wb['server_id_txt'] = 'sunucu_kodu'; +$wb['server_id_txt'] = 'server_id'; ?> diff --git a/interface/web/mail/lib/lang/tr_spamfilter_policy.lng b/interface/web/mail/lib/lang/tr_spamfilter_policy.lng index d7b76496a1..45a52ffc92 100644 --- a/interface/web/mail/lib/lang/tr_spamfilter_policy.lng +++ b/interface/web/mail/lib/lang/tr_spamfilter_policy.lng @@ -1,51 +1,38 @@ <?php $wb['policy_name_txt'] = 'Kural Adı'; $wb['virus_lover_txt'] = 'Virüs Koruması'; -$wb['spam_lover_txt'] = 'Önemsiz Posta Koruması'; -$wb['banned_files_lover_txt'] = 'Yasak Dosya Koruması'; -$wb['bad_header_lover_txt'] = 'Kötü Ãœstbilgi Koruması'; -$wb['bypass_virus_checks_txt'] = 'Virüs korumasını atla'; -$wb['bypass_banned_checks_txt'] = 'Yasak dosya korumasını atla'; -$wb['bypass_header_checks_txt'] = 'Ãœstbilgi korumasını atla'; -$wb['virus_quarantine_to_txt'] = 'Virüsü e-postaya ilet'; -$wb['spam_quarantine_to_txt'] = 'Önemsiz postayı e-postaya ilet'; -$wb['banned_quarantine_to_txt'] = 'Yasak dosyaları e-postaya ilet'; -$wb['bad_header_quarantine_to_txt'] = 'Kötü üstbilgiyi e-postaya ilet'; -$wb['clean_quarantine_to_txt'] = 'Temiz postaların iletileceÄŸi e-posta'; -$wb['other_quarantine_to_txt'] = 'DiÄŸer postaların iletileceÄŸi e-posta'; -$wb['spam_tag_level_txt'] = 'Önemsiz posta etiket düzeyi'; -$wb['spam_tag2_level_txt'] = 'Önemsiz posta etiket2 düzeyi'; -$wb['spam_kill_level_txt'] = 'Önemsiz posta yok etme düzeyi'; -$wb['spam_dsn_cutoff_level_txt'] = 'Önemsiz posta DNS durdurma limiti'; -$wb['spam_quarantine_cutoff_level_txt'] = 'Önemsiz posta karantina durdurma düzeyi'; -$wb['spam_modifies_subj_txt'] = 'Önemsiz posta konu deÄŸiÅŸikliÄŸi'; -$wb['spam_subject_tag_txt'] = 'Önemsiz posta konu etiketi'; -$wb['spam_subject_tag2_txt'] = 'Önemsiz posta konu etiketi2'; -$wb['addr_extension_virus_txt'] = 'Adres Virus eki'; -$wb['addr_extension_spam_txt'] = 'Adres SPAM eki'; -$wb['addr_extension_banned_txt'] = 'Adres Yasak eki'; -$wb['addr_extension_bad_header_txt'] = 'Adres Kötü üstbilfi eki'; -$wb['warnvirusrecip_txt'] = 'Virus alıcısını uyar'; -$wb['warnbannedrecip_txt'] = 'Yasak dosya alıcısını uyar'; -$wb['warnbadhrecip_txt'] = 'Kötü üstbilgi alıcısını uyar'; +$wb['spam_lover_txt'] = 'Önemsiz Ä°leti Koruması'; +$wb['banned_files_lover_txt'] = 'Yasaklanmış Dosya Koruması'; +$wb['bad_header_lover_txt'] = 'Kötü Ãœst Bilgi Koruması'; +$wb['bypass_virus_checks_txt'] = 'Virüs koruması atlansın'; +$wb['bypass_banned_checks_txt'] = 'Yasaklanmış dosya koruması atlansın'; +$wb['bypass_header_checks_txt'] = 'Ãœst bilgi koruması atlansın'; +$wb['virus_quarantine_to_txt'] = 'Virüs e-postaya iletilsin'; +$wb['spam_quarantine_to_txt'] = 'Önemsiz ileti e-postaya iletilsin'; +$wb['banned_quarantine_to_txt'] = 'Yasak dosya e-postaya iletilsin'; +$wb['bad_header_quarantine_to_txt'] = 'Kötü üst bilgi e-postaya iletilsin'; +$wb['clean_quarantine_to_txt'] = 'Temiz e-postaların iletileceÄŸi e-posta'; +$wb['other_quarantine_to_txt'] = 'DiÄŸer e-postaların iletileceÄŸi e-posta'; +$wb['spam_tag_level_txt'] = 'Önemsiz ileti etiket düzeyi'; +$wb['spam_tag2_level_txt'] = 'Önemsiz ileti etiket2 düzeyi'; +$wb['spam_kill_level_txt'] = 'Önemsiz ileti yok etme düzeyi'; +$wb['spam_dsn_cutoff_level_txt'] = 'Önemsiz ileti DNS durdurma limiti'; +$wb['spam_quarantine_cutoff_level_txt'] = 'Önemsiz ileti karantina durdurma düzeyi'; +$wb['spam_modifies_subj_txt'] = 'Önemsiz ileti konu deÄŸiÅŸikliÄŸi'; +$wb['spam_subject_tag_txt'] = 'Önemsiz ileti konu etiketi'; +$wb['spam_subject_tag2_txt'] = 'Önemsiz ileti konu etiketi2'; +$wb['addr_extension_virus_txt'] = 'Adres virus uzantısı'; +$wb['addr_extension_spam_txt'] = 'Adres önemsiz ileti uzantısı'; +$wb['addr_extension_banned_txt'] = 'Adres yasaklanmış uzantısı'; +$wb['addr_extension_bad_header_txt'] = 'Adres kötü üst bilgi uzantısı'; +$wb['warnvirusrecip_txt'] = 'Virus alıcısı uyarılsın'; +$wb['warnbannedrecip_txt'] = 'Yasak dosya alıcısı uyarılsın'; +$wb['warnbadhrecip_txt'] = 'Kötü üst bilgi alıcısı uyarılsın'; $wb['newvirus_admin_txt'] = 'Yeni virus yönetici'; $wb['virus_admin_txt'] = 'Virus yönetici'; $wb['banned_admin_txt'] = 'Yasak dosya yönetici'; -$wb['bad_header_admin_txt'] = 'Kötü üstbilgi yönetici'; -$wb['spam_admin_txt'] = 'Önemsiz posta yönetici'; +$wb['bad_header_admin_txt'] = 'Kötü üst bilgi yönetici'; +$wb['spam_admin_txt'] = 'Önemsiz ileti yönetici'; $wb['message_size_limit_txt'] = 'Ä°leti boyutu sınırı'; $wb['banned_rulenames_txt'] = 'Yasak kural adları'; -$wb['rspamd_greylisting_txt'] = 'Use greylisting'; -$wb['rspamd_spam_greylisting_level_txt'] = 'Greylisting level'; -$wb['rspamd_spam_tag_level_txt'] = 'SPAM tag level'; -$wb['rspamd_spam_tag_method_txt'] = 'SPAM tag method'; -$wb['rspamd_spam_kill_level_txt'] = 'SPAM reject level'; -$wb['btn_save_txt'] = 'Save'; -$wb['btn_cancel_txt'] = 'Cancel'; -$wb['amavis_settings_txt'] = 'Settings'; -$wb['amavis_taglevel_txt'] = 'Tag-Level'; -$wb['amavis_quarantine_txt'] = 'Quarantine'; -$wb['amavis_other_txt'] = 'Other'; -$wb['add_header_txt'] = 'Add header'; -$wb['rewrite_subject_txt'] = 'Rewrite subject'; ?> diff --git a/interface/web/mail/lib/lang/tr_spamfilter_policy_list.lng b/interface/web/mail/lib/lang/tr_spamfilter_policy_list.lng index 78459c3f23..cb5b9b83af 100644 --- a/interface/web/mail/lib/lang/tr_spamfilter_policy_list.lng +++ b/interface/web/mail/lib/lang/tr_spamfilter_policy_list.lng @@ -1,9 +1,9 @@ <?php -$wb['list_head_txt'] = 'Önemsiz Posta Süzgeci Kuralları'; +$wb['list_head_txt'] = 'Önemsiz Ä°leti Süzgeci Kuralları'; $wb['policy_name_txt'] = 'Ad'; $wb['virus_lover_txt'] = 'Virüs Koruması'; -$wb['spam_lover_txt'] = 'Önemsiz Posta Koruması'; +$wb['spam_lover_txt'] = 'Önemsiz Ä°leti Koruması'; $wb['banned_files_lover_txt'] = 'Yasaklı Dosya Koruması'; -$wb['bad_header_lover_txt'] = 'Kötü Ãœstbilgi Koruması'; +$wb['bad_header_lover_txt'] = 'Kötü Ãœst Bilgi Koruması'; $wb['add_new_record_txt'] = 'Kural Kaydı Ekle'; ?> diff --git a/interface/web/mail/lib/lang/tr_spamfilter_users_list.lng b/interface/web/mail/lib/lang/tr_spamfilter_users_list.lng index 847c5bdf4f..bee9372cbf 100644 --- a/interface/web/mail/lib/lang/tr_spamfilter_users_list.lng +++ b/interface/web/mail/lib/lang/tr_spamfilter_users_list.lng @@ -1,10 +1,10 @@ <?php -$wb['list_head_txt'] = 'Önemsiz Posta Süzgeci Kullanıcıları'; +$wb['list_head_txt'] = 'Önemsiz Ä°leti Süzgeci Kullanıcıları'; $wb['local_txt'] = 'Yerel'; $wb['server_id_txt'] = 'Sunucu'; $wb['priority_txt'] = 'Öncelik'; $wb['policy_id_txt'] = 'Kural'; $wb['fullname_txt'] = 'Ad'; $wb['email_txt'] = 'E-posta'; -$wb['add_new_record_txt'] = 'Önemsiz Posta Süzgeci Kullanıcısı Ekle'; +$wb['add_new_record_txt'] = 'Önemsiz Ä°leti Süzgeci Kullanıcısı Ekle'; ?> diff --git a/interface/web/mail/lib/lang/tr_spamfilter_whitelist_list.lng b/interface/web/mail/lib/lang/tr_spamfilter_whitelist_list.lng index c29bf003c5..5e1f95da1c 100644 --- a/interface/web/mail/lib/lang/tr_spamfilter_whitelist_list.lng +++ b/interface/web/mail/lib/lang/tr_spamfilter_whitelist_list.lng @@ -1,5 +1,5 @@ <?php -$wb['list_head_txt'] = 'Önemsiz Posta Beyaz Listesi'; +$wb['list_head_txt'] = 'Önemsiz Ä°leti Beyaz Listesi'; $wb['active_txt'] = 'Etkin'; $wb['server_id_txt'] = 'Sunucu'; $wb['priority_txt'] = 'Öncelik'; diff --git a/interface/web/mail/lib/lang/tr_user_quota_stats_list.lng b/interface/web/mail/lib/lang/tr_user_quota_stats_list.lng index d97ab317f6..ecab0f7735 100755 --- a/interface/web/mail/lib/lang/tr_user_quota_stats_list.lng +++ b/interface/web/mail/lib/lang/tr_user_quota_stats_list.lng @@ -1,5 +1,5 @@ <?php -$wb['list_head_txt'] = 'Posta Kutusu Kotası'; +$wb['list_head_txt'] = 'E-posta Kutusu Kotası'; $wb['quota_txt'] = 'Kota'; $wb['name_txt'] = 'Ad'; $wb['email_txt'] = 'E-posta Adresi'; diff --git a/interface/web/mail/lib/lang/tr_xmpp_domain.lng b/interface/web/mail/lib/lang/tr_xmpp_domain.lng index 0541203b2e..5c0c1acd05 100644 --- a/interface/web/mail/lib/lang/tr_xmpp_domain.lng +++ b/interface/web/mail/lib/lang/tr_xmpp_domain.lng @@ -1,62 +1,62 @@ <?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['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_txt'] = 'SSL'; -$wb['error_ssl_state_empty'] = 'SSL State is empty.'; -$wb['error_ssl_locality_empty'] = 'SSL Locality is empty.'; -$wb['error_ssl_organisation_empty'] = 'SSL Organisation is empty.'; -$wb['error_ssl_organisation_unit_empty'] = 'SSL Organisation Unit is empty.'; -$wb['error_ssl_country_empty'] = 'SSL Country is empty.'; -$wb['error_ssl_cert_empty'] = 'SSL Certificate field is empty'; -$wb['ssl_state_error_regex'] = 'Invalid SSL State. Valid characters are: a-z, 0-9 and .,-_&äöüÄÖÜ'; -$wb['ssl_locality_error_regex'] = 'Invalid SSL Locality. Valid characters are: a-z, 0-9 and .,-_&äöüÄÖÜ'; -$wb['ssl_organisation_error_regex'] = 'Invalid SSL Organisation. Valid characters are: a-z, 0-9 and .,-_&äöüÄÖÜ'; -$wb['ssl_organistaion_unit_error_regex'] = 'Invalid SSL Organisation Unit. Valid characters are: a-z, 0-9 and .,-_&äöüÄÖÜ'; -$wb['ssl_country_error_regex'] = 'Invalid SSL Country. Valid characters are: A-Z'; -$wb['none_txt'] = 'None'; -$wb['save_certificate_txt'] = 'Save certificate'; -$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['server_id_txt'] = 'Sunucu'; +$wb['client_group_id_txt'] = 'Müşteri'; +$wb['domain_txt'] = 'Etki Alanı'; +$wb['type_txt'] = 'Tür'; +$wb['active_txt'] = 'Etkin'; +$wb['client_txt'] = 'Müşteri'; +$wb['management_method_txt'] = 'Kullanıcı Hesabı Yönetimi'; +$wb['public_registration_txt'] = 'Herkes Kayıt Olabilsin'; +$wb['registration_url_txt'] = 'Kayıt Adresi'; +$wb['registration_message_txt'] = 'Kayıt Ä°letisi'; +$wb['domain_admins_txt'] = 'Etki Alanı Yöneticileri (JID)'; +$wb['use_pubsub_txt'] = 'Pubsub Kullanılsın'; +$wb['use_proxy_txt'] = 'Bytestream Vekil Sunucusu Kullanılsın'; +$wb['use_anon_host_txt'] = 'Anonim Sunucu Kullanılsın'; +$wb['use_vjud_txt'] = 'VJUD Kullanıcı Klasörü Kullanılsın'; +$wb['vjud_opt_mode_txt'] = 'VJUD Opt Kipi'; +$wb['use_muc_host_txt'] = 'Çok Kullanıcılı Sohbet Kullanılsın'; +$wb['muc_name_txt'] = 'MUC Hizmet KeÅŸfindeki Ad'; +$wb['muc_restrict_room_creation_txt'] = 'Sohbet Odaları OluÅŸturma Ä°zni'; +$wb['muc_admins_txt'] = 'MUC Yöneticileri (JID)'; +$wb['use_pastebin_txt'] = 'Pastebin Kullanılsın'; +$wb['pastebin_expire_after_txt'] = 'Yapıştırmaların geçersizlik süresi (saat)'; +$wb['pastebin_trigger_txt'] = 'Pastebin Tetikleyici'; +$wb['use_http_archive_txt'] = 'HTTP Sohbet Odası ArÅŸivi Kullanılsın'; +$wb['http_archive_show_join_txt'] = 'Katılma iletileri arÅŸivde görüntülensin'; +$wb['http_archive_show_status_txt'] = 'Durum deÄŸiÅŸiklikleri arÅŸivde görüntülensin'; +$wb['use_status_host_txt'] = 'XML Durum Sunucusu Kullanılsın'; +$wb['cant_change_domainname_txt'] = 'Var olan XMPP etki alanının adı deÄŸiÅŸtirilemez.'; +$wb['about_registration_url_txt'] = 'Kayıt formunuzun baÄŸlantısı.'; +$wb['about_registration_message_txt'] = 'Hesap kaydı iÅŸlemi ile ilgili açıklama.'; +$wb['no_corresponding_maildomain_txt'] = 'Kullanıcı yönetimi için uygun e-posta etki alanı bulunamadı. Lütfen önce bir e-posta etki alanı ekleyin.'; +$wb['ssl_state_txt'] = 'Ä°l'; +$wb['ssl_locality_txt'] = 'Konum'; +$wb['ssl_organisation_txt'] = 'KuruluÅŸ'; +$wb['ssl_organisation_unit_txt'] = 'KuruluÅŸ Birimi'; +$wb['ssl_country_txt'] = 'Ãœlke'; +$wb['ssl_key_txt'] = 'SSL Anahtarı'; +$wb['ssl_request_txt'] = 'SSL Ä°steÄŸi'; +$wb['ssl_cert_txt'] = 'SSL Sertifikası'; +$wb['ssl_bundle_txt'] = 'SSL BaÄŸlantısı'; +$wb['ssl_action_txt'] = 'SSL Ä°ÅŸlemi'; +$wb['ssl_email_txt'] = 'E-posta Adresi'; +$wb['ssl_txt'] = 'SSL Süresi'; +$wb['error_ssl_state_empty'] = 'SSL ili boÅŸ olamaz.'; +$wb['error_ssl_locality_empty'] = 'SSL bölgesi boÅŸ olamaz.'; +$wb['error_ssl_organisation_empty'] = 'SSL kuruluÅŸu boÅŸ olamaz.'; +$wb['error_ssl_organisation_unit_empty'] = 'SSL kuruluÅŸ birimi boÅŸ olamaz.'; +$wb['error_ssl_country_empty'] = 'SSL ülkesi boÅŸ olamaz.'; +$wb['error_ssl_cert_empty'] = 'SSL sertifika alanı boÅŸ olamaz.'; +$wb['ssl_state_error_regex'] = 'SSL ili geçersiz. Kullanılabilecek karakterler: a-z, 0-9 ve .,-_&äöüÄÖÜ'; +$wb['ssl_locality_error_regex'] = 'SSL bölgesi geçersiz. Kullanılabilecek karakterler: a-z, 0-9 ve .,-_&äöüÄÖÜ'; +$wb['ssl_organisation_error_regex'] = 'SSL kuruluÅŸu geçersiz. Kullanılabilecek karakterler: a-z, 0-9 ve .,-_&äöüÄÖÜ'; +$wb['ssl_organistaion_unit_error_regex'] = 'SSL kuruluÅŸu birimi geçersiz. Kullanılabilecek karakterler: a-z, 0-9 ve .,-_&äöüÄÖÜ'; +$wb['ssl_country_error_regex'] = 'SSL ülkesi geçersiz. Kullanılabilecek karakterler: A-Z'; +$wb['none_txt'] = 'Yok'; +$wb['save_certificate_txt'] = 'Sertifikayı Kaydet'; +$wb['create_certificate_txt'] = 'Sertifika Ekle'; +$wb['delete_certificate_txt'] = 'Sertifikayı Sil'; +$wb['ssl_error_isemail'] = 'Lütfen SSL sertifikasının oluÅŸturulması için geçerli bir e-posta adresi yazın'; +$wb['limit_xmppdomain_txt'] = 'Hesabınıza ekleyebileceÄŸiniz en fazla XMPP etki alanı sayısına ulaÅŸtınız.'; ?> diff --git a/interface/web/mail/lib/lang/tr_xmpp_domain_admin_list.lng b/interface/web/mail/lib/lang/tr_xmpp_domain_admin_list.lng index af643eab5a..0a0c7abe60 100644 --- a/interface/web/mail/lib/lang/tr_xmpp_domain_admin_list.lng +++ b/interface/web/mail/lib/lang/tr_xmpp_domain_admin_list.lng @@ -1,8 +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'; -$wb['sys_groupid_txt'] = 'Client'; +$wb['list_head_txt'] = 'XMPP Etki Alanı'; +$wb['server_id_txt'] = 'Sunucu'; +$wb['domain_txt'] = 'Etki Alanı'; +$wb['add_new_record_txt'] = 'Etki Alanı Ekle'; +$wb['active_txt'] = 'Etkin'; +$wb['sys_groupid_txt'] = 'Müşteri'; ?> diff --git a/interface/web/mail/lib/lang/tr_xmpp_domain_list.lng b/interface/web/mail/lib/lang/tr_xmpp_domain_list.lng index ebfebab7d5..50a7d55cd2 100644 --- a/interface/web/mail/lib/lang/tr_xmpp_domain_list.lng +++ b/interface/web/mail/lib/lang/tr_xmpp_domain_list.lng @@ -1,7 +1,7 @@ <?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['list_head_txt'] = 'XMPP Etki Alanı'; +$wb['server_id_txt'] = 'Sunucu'; +$wb['domain_txt'] = 'Etki Alanı'; +$wb['add_new_record_txt'] = 'Etki Alanı Ekle'; +$wb['active_txt'] = 'Etkin'; ?> diff --git a/interface/web/mail/lib/lang/tr_xmpp_user.lng b/interface/web/mail/lib/lang/tr_xmpp_user.lng index 6ab739d98b..c83f1ecef0 100644 --- a/interface/web/mail/lib/lang/tr_xmpp_user.lng +++ b/interface/web/mail/lib/lang/tr_xmpp_user.lng @@ -1,15 +1,15 @@ <?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['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.'; +$wb['list_head_txt'] = 'XMPP Kullanıcı Adı'; +$wb['jid_txt'] = 'Jabber Kodu'; +$wb['active_txt'] = 'Etkin'; +$wb['cryptpwd_txt'] = 'Parola'; +$wb['password_strength_txt'] = 'Parola ZorluÄŸu'; +$wb['error_no_pwd'] = 'Paroal boÅŸ olamaz.'; +$wb['password_txt'] = 'Paroal'; +$wb['generate_password_txt'] = 'Parola Ãœret'; +$wb['repeat_password_txt'] = 'Parola Onayı'; +$wb['password_mismatch_txt'] = 'Parola ile onayı aynı deÄŸil.'; +$wb['password_match_txt'] = 'Parolalar aynı.'; +$wb['no_domain_perm'] = 'Bu etki alanı için izniniz yok.'; +$wb['limit_xmpp_user_txt'] = 'Hesabınıza ekleyebileceÄŸiniz en fazla XMPP hesabı sayısına ulaÅŸtınız.'; ?> diff --git a/interface/web/mail/lib/lang/tr_xmpp_user_list.lng b/interface/web/mail/lib/lang/tr_xmpp_user_list.lng index f2651cb62b..a6af23d15b 100644 --- a/interface/web/mail/lib/lang/tr_xmpp_user_list.lng +++ b/interface/web/mail/lib/lang/tr_xmpp_user_list.lng @@ -1,8 +1,8 @@ <?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'; +$wb['list_head_txt'] = 'XMPP Kullanıcı Hesapları'; +$wb['jid_txt'] = 'Jabber Kodu'; +$wb['is_domain_admin_txt'] = 'Etki Alanı Yöneticisi'; +$wb['is_muc_admin_txt'] = 'MUC Yöneticisi'; +$wb['add_new_record_txt'] = 'Kullanıcı Ekle'; +$wb['active_txt'] = 'Etkin'; ?> diff --git a/interface/web/mailuser/lib/lang/br.lng b/interface/web/mailuser/lib/lang/br.lng index 55eca578a4..64f9346808 100644 --- a/interface/web/mailuser/lib/lang/br.lng +++ b/interface/web/mailuser/lib/lang/br.lng @@ -1,9 +1,9 @@ <?php -$wb['Email Account'] = 'Contas de e-mail'; -$wb['Overview'] = 'Visão geral'; -$wb['Autoresponder'] = 'Resposta automática'; -$wb['Send copy'] = 'Enviar cópia para'; +$wb['Email Account'] = 'Conta de e-mail'; +$wb['Overview'] = 'Visão Geral'; +$wb['Password'] = 'Senha'; +$wb['Autoresponder'] = 'Auto-resposta'; +$wb['Send copy'] = 'Enviar cópia'; $wb['Spamfilter'] = 'Filtro anti-spam'; $wb['Email Filters'] = 'Filtros de e-mail'; -$wb['Password'] = 'Senha'; ?> diff --git a/interface/web/mailuser/lib/lang/br_index.lng b/interface/web/mailuser/lib/lang/br_index.lng index eb7d7e1e7e..9be2fbdb2a 100644 --- a/interface/web/mailuser/lib/lang/br_index.lng +++ b/interface/web/mailuser/lib/lang/br_index.lng @@ -1,12 +1,12 @@ <?php -$wb['page_head_txt'] = 'Configurações de contas de e-mail'; -$wb['page_desc_txt'] = 'Aqui você edita as configurações para as contas de e-mail.'; +$wb['page_head_txt'] = 'Configurações de conta de e-mail'; +$wb['page_desc_txt'] = 'Aqui você pode editar as configurações da conta de e-mail.'; $wb['email_txt'] = 'Endereço de e-mail'; $wb['login_txt'] = 'Acesso'; $wb['server_address_txt'] = 'Endereço do servidor de e-mails'; -$wb['cc_txt'] = 'Enviar cópia para (CC)'; -$wb['quota_txt'] = 'Tamanho da caixa postal'; -$wb['unlimited_txt'] = 'ilimitada'; +$wb['cc_txt'] = 'Enviar cópia oculta (BCC) para'; +$wb['quota_txt'] = 'Cota da conta de e-mail'; +$wb['unlimited_txt'] = 'Ilimitado'; $wb['mb_txt'] = 'MB'; $wb['none_txt'] = 'Nenhum'; ?> diff --git a/interface/web/mailuser/lib/lang/br_mail_user_autoresponder.lng b/interface/web/mailuser/lib/lang/br_mail_user_autoresponder.lng index 6e00682a44..9de387d798 100644 --- a/interface/web/mailuser/lib/lang/br_mail_user_autoresponder.lng +++ b/interface/web/mailuser/lib/lang/br_mail_user_autoresponder.lng @@ -1,13 +1,13 @@ <?php -$wb['mailbox_autoresponder_txt'] = 'Autoresposta'; -$wb['autoresponder_subject'] = 'Resposta de ausência temporária'; +$wb['mailbox_autoresponder_txt'] = 'Auto-resposta'; +$wb['autoresponder_subject'] = 'Resposta automática'; $wb['autoresponder_text_txt'] = 'Texto'; $wb['autoresponder_txt'] = 'Ativo'; -$wb['autoresponder_start_date_txt'] = 'InÃcio'; -$wb['autoresponder_start_date_isfuture'] = 'A data de inÃcio não pode ser menor que a data atual.'; -$wb['autoresponder_end_date_txt'] = 'Término'; -$wb['autoresponder_end_date_isgreater'] = 'A data de término não pode ser menor que a data de inÃcio.'; -$wb['autoresponder_active'] = 'Habilitar autoresposta'; +$wb['autoresponder_start_date_txt'] = 'Iniciar em'; +$wb['autoresponder_start_date_isfuture'] = 'O campo "Iniciar em" não pode ser menor que data atual.'; +$wb['autoresponder_end_date_txt'] = 'Terminar em'; +$wb['autoresponder_end_date_isgreater'] = 'O campo "Terminar em" não pode ser menor que "Iniciar em".'; +$wb['autoresponder_active'] = 'Habilitar auto-resposta'; $wb['now_txt'] = 'Agora'; $wb['autoresponder_subject_txt'] = 'Assunto'; ?> diff --git a/interface/web/mailuser/lib/lang/br_mail_user_cc.lng b/interface/web/mailuser/lib/lang/br_mail_user_cc.lng index f6d96f02a3..7a1e9a3d95 100644 --- a/interface/web/mailuser/lib/lang/br_mail_user_cc.lng +++ b/interface/web/mailuser/lib/lang/br_mail_user_cc.lng @@ -1,9 +1,9 @@ <?php -$wb['mailbox_cc_txt'] = 'Enviar cópia para o e-mail'; +$wb['mailbox_cc_txt'] = 'Enviar cópia para endereço de e-mail'; $wb['cc_txt'] = 'Enviar cópia para'; -$wb['email_txt'] = 'e-mail'; -$wb['cc_error_isemail'] = 'Endereço de e-mail inválido em \'enviar cópia para\'.'; -$wb['email_is_cc_error'] = 'Endereço de e-mail e -enviar cópia para- não podem ser iguais.'; +$wb['email_txt'] = 'e-Mail'; +$wb['cc_error_isemail'] = 'Endereço de e-mail inválido no campo "Enviar cópia para".'; +$wb['email_is_cc_error'] = 'Endereço de e-mail e "Enviar cópia para" não podem ser os mesmos.'; $wb['name_optional_txt'] = '(Opcional)'; -$wb['cc_note_txt'] = '(Separar múltiplos e-mails por vÃrgulas)'; +$wb['cc_note_txt'] = '(separar múltiplos endereços de e-mail com vÃrgulas)'; ?> diff --git a/interface/web/mailuser/lib/lang/br_mail_user_filter.lng b/interface/web/mailuser/lib/lang/br_mail_user_filter.lng index 37196f5d6c..acefe8be6e 100644 --- a/interface/web/mailuser/lib/lang/br_mail_user_filter.lng +++ b/interface/web/mailuser/lib/lang/br_mail_user_filter.lng @@ -5,17 +5,17 @@ $wb['target_txt'] = 'Pasta'; $wb['active_txt'] = 'Ativo'; $wb['rulename_error_empty'] = 'Nome está em branco.'; $wb['searchterm_is_empty'] = 'Termo de pesquisa está em branco.'; -$wb['source_txt'] = 'Fonte'; -$wb['target_error_regex'] = 'O alvo pode conter os seguintes caracteres: \'a-z\', \'0-9\', \'-\', \'.\', \'_\', e \'{espaço}\'.'; -$wb['limit_mailfilter_txt'] = 'O limite de filtros de e-mails para esta conta foi alcançado.'; +$wb['source_txt'] = 'Origem'; +$wb['target_error_regex'] = 'O alvo pode conter apenas estes caracteres: "a-z", "0-9", "-", ".", "_", e "{espaço}".'; +$wb['limit_mailfilter_txt'] = 'O limite de filtros de e-mail para esta conta foi alcançado.'; +$wb['mailbox_filter_txt'] = 'Filtro de conta de e-mail'; $wb['subject_txt'] = 'Assunto'; $wb['from_txt'] = 'De'; $wb['to_txt'] = 'Para'; -$wb['contains_txt'] = 'Contém'; -$wb['is_txt'] = 'É'; +$wb['contains_txt'] = 'Contêm'; +$wb['is_txt'] = 'é'; $wb['begins_with_txt'] = 'Iniciando com'; -$wb['ends_with_txt'] = 'Terminando com'; +$wb['ends_with_txt'] = 'Finalizando com'; $wb['move_to_txt'] = 'Mover para'; $wb['delete_txt'] = 'Remover'; -$wb['mailbox_filter_txt'] = 'Filtro de e-mail'; ?> diff --git a/interface/web/mailuser/lib/lang/br_mail_user_filter_list.lng b/interface/web/mailuser/lib/lang/br_mail_user_filter_list.lng index 5d0f241974..5e13e8c303 100644 --- a/interface/web/mailuser/lib/lang/br_mail_user_filter_list.lng +++ b/interface/web/mailuser/lib/lang/br_mail_user_filter_list.lng @@ -4,5 +4,5 @@ $wb['rulename_txt'] = 'Nome'; $wb['add_new_record_txt'] = 'Adicionar novo filtro'; $wb['page_txt'] = 'Página'; $wb['page_of_txt'] = 'de'; -$wb['delete_confirmation'] = 'Você tem certeza que gostaria de remover este filtro de e-mail?'; +$wb['delete_confirmation'] = 'Você tem certeza que deseja remover este filtro de e-mail?'; ?> diff --git a/interface/web/mailuser/lib/lang/br_mail_user_password.lng b/interface/web/mailuser/lib/lang/br_mail_user_password.lng index 154a44cd7b..7a64df748a 100644 --- a/interface/web/mailuser/lib/lang/br_mail_user_password.lng +++ b/interface/web/mailuser/lib/lang/br_mail_user_password.lng @@ -1,11 +1,11 @@ <?php -$wb['mailbox_password_txt'] = 'Senha da Caixa Postal'; +$wb['mailbox_password_txt'] = 'Senha da conta de e-mail'; $wb['password_txt'] = 'Senha'; $wb['password_strength_txt'] = 'Dificuldade da senha'; -$wb['email_txt'] = 'e-mail'; -$wb['generate_password_txt'] = 'Gerar senha'; -$wb['repeat_password_txt'] = 'Repetir senha'; +$wb['email_txt'] = 'e-Mail'; +$wb['generate_password_txt'] = 'Gerar Senha'; +$wb['repeat_password_txt'] = 'Repetir Senha'; $wb['password_mismatch_txt'] = 'As senhas não coincidem.'; $wb['password_match_txt'] = 'As senhas coincidem.'; -$wb['password_click_to_set_txt'] = 'Confirmar'; +$wb['password_click_to_set_txt'] = 'Clique para configurar'; ?> diff --git a/interface/web/mailuser/lib/lang/br_mail_user_spamfilter.lng b/interface/web/mailuser/lib/lang/br_mail_user_spamfilter.lng index a4973817a2..eb36922041 100644 --- a/interface/web/mailuser/lib/lang/br_mail_user_spamfilter.lng +++ b/interface/web/mailuser/lib/lang/br_mail_user_spamfilter.lng @@ -1,7 +1,7 @@ <?php $wb['mailbox_spamfilter_txt'] = 'Filtros anti-spam'; $wb['spamfilter_txt'] = 'Filtro anti-spam'; -$wb['email_txt'] = 'e-mail'; +$wb['email_txt'] = 'e-Mail'; $wb['no_policy'] = '-desabilitado-'; $wb['policy_txt'] = 'PolÃtica'; ?> diff --git a/interface/web/mailuser/lib/lang/tr.lng b/interface/web/mailuser/lib/lang/tr.lng index fa5a7e12ab..c9d03bfff6 100644 --- a/interface/web/mailuser/lib/lang/tr.lng +++ b/interface/web/mailuser/lib/lang/tr.lng @@ -4,6 +4,6 @@ $wb['Overview'] = 'Özet'; $wb['Password'] = 'Parola'; $wb['Autoresponder'] = 'Otomatik yanıtlayıcı'; $wb['Send copy'] = 'Kopya gönder'; -$wb['Spamfilter'] = 'Önemsiz posta süzgeci'; +$wb['Spamfilter'] = 'Önemsiz ileti süzgeci'; $wb['Email Filters'] = 'E-posta Süzgeçleri'; ?> diff --git a/interface/web/mailuser/lib/lang/tr_index.lng b/interface/web/mailuser/lib/lang/tr_index.lng index 4c0c553b79..47e12d6982 100644 --- a/interface/web/mailuser/lib/lang/tr_index.lng +++ b/interface/web/mailuser/lib/lang/tr_index.lng @@ -1,11 +1,11 @@ <?php -$wb['page_head_txt'] = 'Posta Kutusu Ayarları'; +$wb['page_head_txt'] = 'E-posta Kutusu Ayarları'; $wb['page_desc_txt'] = 'E-posta hesabı ayarları buradan yapılabilir.'; $wb['email_txt'] = 'E-posta adresi'; $wb['login_txt'] = 'Kullanıcı Adı'; -$wb['server_address_txt'] = 'Posta sunucusu adresi'; -$wb['cc_txt'] = 'Kopya adresi (CC)'; -$wb['quota_txt'] = 'Posta kutusu boyutu'; +$wb['server_address_txt'] = 'E-posta Sunucusu Adresi'; +$wb['cc_txt'] = 'Kopya Adresi (CC)'; +$wb['quota_txt'] = 'E-posta Kutusu Boyutu'; $wb['unlimited_txt'] = 'Sınırsız'; $wb['mb_txt'] = 'MB'; $wb['none_txt'] = 'Yok'; diff --git a/interface/web/mailuser/lib/lang/tr_mail_user_filter.lng b/interface/web/mailuser/lib/lang/tr_mail_user_filter.lng index ac4938d768..57db197901 100644 --- a/interface/web/mailuser/lib/lang/tr_mail_user_filter.lng +++ b/interface/web/mailuser/lib/lang/tr_mail_user_filter.lng @@ -7,7 +7,7 @@ $wb['rulename_error_empty'] = 'Ad boÅŸ olamaz.'; $wb['searchterm_is_empty'] = 'Arama ifadesi boÅŸ olamaz.'; $wb['source_txt'] = 'Kaynak'; $wb['target_error_regex'] = 'Hedef için yalnız ÅŸu karakterler kullanılabilir: a-z, 0-9, -, ., _, ve {boÅŸluk}'; -$wb['limit_mailfilter_txt'] = 'Hesabınıza ekleyebileceÄŸiniz en fazla önemsiz posta süzgeci sayısı sınırına ulaÅŸtınız.'; +$wb['limit_mailfilter_txt'] = 'Hesabınıza ekleyebileceÄŸiniz en fazla önemsiz ileti süzgeci sayısı sınırına ulaÅŸtınız.'; $wb['subject_txt'] = 'Konu'; $wb['from_txt'] = 'Kimden'; $wb['to_txt'] = 'Kime'; @@ -17,5 +17,5 @@ $wb['begins_with_txt'] = 'Åžununla baÅŸlayan'; $wb['ends_with_txt'] = 'Åžununla biten'; $wb['move_to_txt'] = 'Åžuraya taşı'; $wb['delete_txt'] = 'Sil'; -$wb['mailbox_filter_txt'] = 'Mailbox filter'; +$wb['mailbox_filter_txt'] = 'E-posta kutusu süzgeci'; ?> diff --git a/interface/web/mailuser/lib/lang/tr_mail_user_filter_list.lng b/interface/web/mailuser/lib/lang/tr_mail_user_filter_list.lng index 36bfe6a25c..3a14043e92 100644 --- a/interface/web/mailuser/lib/lang/tr_mail_user_filter_list.lng +++ b/interface/web/mailuser/lib/lang/tr_mail_user_filter_list.lng @@ -4,5 +4,5 @@ $wb['rulename_txt'] = 'Ad'; $wb['add_new_record_txt'] = 'Süzgeç Ekle'; $wb['page_txt'] = 'Sayfa'; $wb['page_of_txt'] = '/'; -$wb['delete_confirmation'] = 'Posta süzgecini silmek istediÄŸinize emin misiniz?'; +$wb['delete_confirmation'] = 'E-posta süzgecini silmek istediÄŸinize emin misiniz?'; ?> diff --git a/interface/web/mailuser/lib/lang/tr_mail_user_password.lng b/interface/web/mailuser/lib/lang/tr_mail_user_password.lng index d06ad94bb0..c35319ced1 100644 --- a/interface/web/mailuser/lib/lang/tr_mail_user_password.lng +++ b/interface/web/mailuser/lib/lang/tr_mail_user_password.lng @@ -1,11 +1,11 @@ <?php -$wb['mailbox_password_txt'] = 'Posta kutusu parolası'; +$wb['mailbox_password_txt'] = 'E-posta kutusu parolası'; $wb['password_txt'] = 'Parola'; -$wb['password_strength_txt'] = 'Parola Güçlüğü'; +$wb['password_strength_txt'] = 'Parola ZorluÄŸu'; $wb['email_txt'] = 'E-posta'; -$wb['generate_password_txt'] = 'Parola OluÅŸtur'; +$wb['generate_password_txt'] = 'Parola Ãœret'; $wb['repeat_password_txt'] = 'Parola Onayı'; $wb['password_mismatch_txt'] = 'Parola ile onayı aynı deÄŸil.'; $wb['password_match_txt'] = 'Parola ile onayı aynı.'; -$wb['password_click_to_set_txt'] = 'Click to set'; +$wb['password_click_to_set_txt'] = 'Ayarlamak için tıklayın'; ?> diff --git a/interface/web/mailuser/lib/lang/tr_mail_user_spamfilter.lng b/interface/web/mailuser/lib/lang/tr_mail_user_spamfilter.lng index d63f274e49..3426385a2e 100644 --- a/interface/web/mailuser/lib/lang/tr_mail_user_spamfilter.lng +++ b/interface/web/mailuser/lib/lang/tr_mail_user_spamfilter.lng @@ -1,6 +1,6 @@ <?php -$wb['mailbox_spamfilter_txt'] = 'Önemsiz Posta Süzgeci'; -$wb['spamfilter_txt'] = 'Önemsiz posta süzgeci'; +$wb['mailbox_spamfilter_txt'] = 'Önemsiz Ä°leti Süzgeci'; +$wb['spamfilter_txt'] = 'Önemsiz ileti süzgeci'; $wb['email_txt'] = 'E-posta'; $wb['no_policy'] = '- devre dışı -'; $wb['policy_txt'] = 'Kural'; diff --git a/interface/web/monitor/lib/lang/br.lng b/interface/web/monitor/lib/lang/br.lng index 72325cc5b3..172891cfd9 100644 --- a/interface/web/monitor/lib/lang/br.lng +++ b/interface/web/monitor/lib/lang/br.lng @@ -1,37 +1,39 @@ <?php -$wb['Server online since'] = 'Servidor online desde'; +$wb['Server online since'] = 'Servidor on-line desde'; $wb['Users online'] = 'Usuários on-line'; $wb['System load 1 minute'] = 'Carga do sistema - 1 min'; $wb['System load 5 minutes'] = 'Carga do sistema - 5 min'; $wb['System load 15 minutes'] = 'Carga do sistema - 15 min'; -$wb['Server Load'] = 'Carga do servidor'; -$wb['Disk usage'] = 'Uso do disco'; -$wb['Memory usage'] = 'Uso da memória'; -$wb['no_data_serverload_txt'] = 'Sem registros da carga do servidor disponÃveis no momento. Tente novamente mais tarde.'; -$wb['no_data_memusage_txt'] = 'Sem registro uso de memória disponÃveis no momento. Tente novamente mais tarde.'; -$wb['no_data_diskusage_txt'] = 'Sem registros sobre o uso dos discos disponÃveis no momento. Tente novamente mais tarde.'; -$wb['no_data_cpuinfo_txt'] = 'Sem registros sobre CPU disponÃveis no momento. Tente novamente mais tarde.'; -$wb['no_data_services_txt'] = 'Sem registro sobre os serviços disponÃveis no momento. Tente novamente mais tarde.'; -$wb['no_data_updates_txt'] = 'Sem atualização de dados disponÃveis no momento. Tente novamente mais tarde.'; -$wb['no_data_raid_txt'] = 'Sem registros sobre RAID disponÃveis no momento. Tente novamente mais tarde.'; -$wb['no_data_rkhunter_txt'] = 'Sem registros sobre o RKHUNTER disponÃveis no momento. Tente novamente mais tarde.'; -$wb['no_data_mailq_txt'] = 'Sem registro sobre a fila de e-mails disponÃveis no momento. Tente novamente mais tarde.'; -$wb['no_logdata_txt'] = 'Sem registros de log disponÃveis no momento. Tente novamente mais tarde.'; -$wb['Monitoring'] = 'Monitoramento'; +$wb['Server Load'] = 'Carga do Sistema'; +$wb['Disk usage'] = 'Uso do Disco'; +$wb['Memory usage'] = 'Uso da Memória'; +$wb['no_data_serverload_txt'] = 'Nenhum dado sobre o servidor disponÃvel no momento. Por favor, verifique mais tarde.'; +$wb['no_data_memusage_txt'] = 'Nenhum dado sobre uso da memória disponÃvel no momento. Por favor, verifique mais tarde.'; +$wb['no_data_diskusage_txt'] = 'Nenhum dado sobre o uso do disco disponÃvel no momento. Por favor, verifique mais tarde.'; +$wb['no_data_database_size_txt'] = 'Nenhum dado sobre o uso do banco de dados disponÃvel no momento. Por favor, verifique mais tarde.'; +$wb['no_data_cpuinfo_txt'] = 'Nenhum dado sobre a CPU disponÃvel no momento. Por favor, verifique mais tarde.'; +$wb['no_data_services_txt'] = 'Nenhum dado sobre os serviços disponÃvel no momento. Por favor, verifique mais tarde.'; +$wb['no_data_updates_txt'] = 'Nenhum dado sobre atualizações disponÃvel no momento. Por favor, verifique mais tarde.'; +$wb['no_data_raid_txt'] = 'Nenhum dados sobre o RAID disponÃvel no momento. Por favor, verifique mais tarde.'; +$wb['no_data_rkhunter_txt'] = 'Nenhum dado sobre o RKHunter disponÃvel no momento. Por favor, verifique mais tarde.'; +$wb['no_data_mailq_txt'] = 'Nenhum dados sobre as filas de e-mail disponÃvel no momento. Por favor, verifique mais tarde.'; +$wb['no_logdata_txt'] = 'Nenhum dado de log disponÃvel no momento. Por favor, verifique mais tarde.'; +$wb['Monitoring'] = 'Monitorando'; $wb['Server to Monitor'] = 'Servidor a monitorar'; -$wb['Logfiles'] = 'Arquivos de log'; -$wb['Status of services'] = 'Estado dos serviços'; -$wb['No Refresh'] = 'Não atualize'; +$wb['Logfiles'] = 'Log'; +$wb['Status of services'] = 'Estado dos Serviços'; +$wb['No Refresh'] = 'Não atualizar'; $wb['minutes'] = 'minutos'; -$wb['Show Overview'] = 'Visão geral'; -$wb['System State (All Servers)'] = 'Estado do Sistema (todos os servidores)'; -$wb['Hardware-Information'] = 'Informação de hardware'; +$wb['Show Overview'] = 'Exibir visão geral'; +$wb['System State (All Servers)'] = 'Estado do Sistema (Todos os servidores)'; +$wb['Hardware-Information'] = 'Informações do Hardware'; $wb['Show CPU info'] = 'Exibir informações da CPU'; $wb['Server State'] = 'Estado do Servidor'; $wb['Show Update State'] = 'Exibir estado atual'; $wb['Show RAID state'] = 'Exibir estado do RAID'; $wb['Show Server load'] = 'Exibir carga do servidor'; $wb['Show Disk usage'] = 'Exibir uso do disco'; +$wb['Show MySQL Database size'] = 'Exibir tamanho do banco de dados mysql'; $wb['Show Memory usage'] = 'Exibir uso da memória'; $wb['Show Services'] = 'Exibir serviços'; $wb['Show Mail-Queue'] = 'Exibir fila de e-mails'; @@ -42,124 +44,123 @@ $wb['Show System-Log'] = 'Exibir log do sistema'; $wb['Show ISPC Cron-Log'] = 'Exibir log do cron'; $wb['Show Freshclam-Log'] = 'Exibir log do freshclam'; $wb['Show Clamav-Log'] = 'Exibir log do clamav'; -$wb['Show ISPConfig-Log'] = 'Exibir log do ispconfig'; +$wb['Show ISPConfig-Log'] = 'Exibir log do ISPConfig'; $wb['Show RKHunter-Log'] = 'Exibir log do rkhunter'; -$wb['Show Jobqueue'] = 'Exibir fila de trabalho'; +$wb['Show Jobqueue'] = 'Exibir fila de tarefas'; +$wb['Show Data Log History'] = 'Exibir histórico do log'; +$wb['Show fail2ban-Log'] = 'Exibir log do fail2ban'; +$wb['Show MongoDB-Log'] = 'Exibir log do mongodb'; +$wb['Show IPTables'] = 'Exibir regras de firewall'; +$wb['Show OpenVz VE BeanCounter'] = 'Exibir beancounter do openvz'; $wb['monitor_general_serverstate_txt'] = 'Estado do servidor'; $wb['monitor_general_systemstate_txt'] = 'Estado do sistema'; -$wb['monitor_diskusage_filesystem_txt'] = 'Sistema de arquivos'; +$wb['monitor_diskusage_filesystem_txt'] = 'Arquivos do sistema'; $wb['monitor_diskusage_type_txt'] = 'Tipo'; $wb['monitor_diskusage_size_txt'] = 'Tamanho'; -$wb['monitor_diskusage_used_txt'] = 'Utilizado'; +$wb['monitor_diskusage_used_txt'] = 'Uso'; $wb['monitor_diskusage_available_txt'] = 'DisponÃvel'; -$wb['monitor_diskusage_usage_txt'] = 'Uso %'; +$wb['monitor_diskusage_usage_txt'] = 'Percentual Utilizado'; $wb['monitor_diskusage_mounted_txt'] = 'Montado em'; -$wb['monitor_logs_mail_txt'] = 'Log de e-mail'; -$wb['monitor_logs_mailwarn_txt'] = 'Alertas de e-mails'; -$wb['monitor_logs_mailerr_txt'] = 'Erros de e-mails'; -$wb['monitor_logs_messages_txt'] = 'Log do sistema'; -$wb['monitor_logs_ispccron_txt'] = 'Log do cron'; -$wb['monitor_logs_freshclam_txt'] = 'Logo do freshclam'; -$wb['monitor_logs_clamav_txt'] = 'Log do clamav '; -$wb['monitor_logs_ispc_txt'] = 'Log do ispconfig'; -$wb['monitor_norkhunter_txt'] = 'RKHunter não está instalado, então não existem logs a exibir'; +$wb['monitor_database_name_txt'] = 'Banco de dados'; +$wb['monitor_database_size_txt'] = 'Tamanho'; +$wb['monitor_database_client_txt'] = 'Cliente'; +$wb['monitor_database_domain_txt'] = 'DomÃnio'; +$wb['monitor_logs_mail_txt'] = 'Log - e-Mails'; +$wb['monitor_logs_mailwarn_txt'] = 'Log - Alertas de e-mail'; +$wb['monitor_logs_mailerr_txt'] = 'Log - Erros de e-mail'; +$wb['monitor_logs_messages_txt'] = 'Log - Mensagens do sistema'; +$wb['monitor_logs_ispccron_txt'] = 'Log - Tarefas no cron'; +$wb['monitor_logs_freshclam_txt'] = 'Log - freshclam'; +$wb['monitor_logs_clamav_txt'] = 'Log - clamav'; +$wb['monitor_logs_ispc_txt'] = 'Log - ISPConfig'; +$wb['monitor_nosupportedraid1_txt'] = 'No momento possuÃmos suporte para \'mdadm\'ou \'mpt-status\' para monitoramento do RAID.<br> Não encontramos nenhum dos dois neste servidor.<br><br> Isto significa que não podemos oferecer suporte ao seu RAID ainda.'; +$wb['monitor_norkhunter_txt'] = 'O RKHunter não está instalado, desta forma, não existe log'; $wb['monitor_serverstate_server_txt'] = 'Servidor'; $wb['monitor_serverstate_kernel_txt'] = 'Kernel'; $wb['monitor_serverstate_state_txt'] = 'Estado'; -$wb['monitor_serverstate_unknown_txt'] = 'desconhecido(s)'; -$wb['monitor_serverstate_info_txt'] = 'informação(es)'; -$wb['monitor_serverstate_warning_txt'] = 'aviso(s)'; -$wb['monitor_serverstate_critical_txt'] = 'crÃtico(s)'; -$wb['monitor_serverstate_error_txt'] = 'erro(s)'; +$wb['monitor_serverstate_unknown_txt'] = 'desconhecido'; +$wb['monitor_serverstate_info_txt'] = 'info'; +$wb['monitor_serverstate_warning_txt'] = 'alerta'; +$wb['monitor_serverstate_critical_txt'] = 'crÃtico'; +$wb['monitor_serverstate_error_txt'] = 'erro'; $wb['monitor_serverstate_moreinfo_txt'] = 'Mais informações...'; $wb['monitor_serverstate_more_txt'] = 'Mais...'; -$wb['monitor_serverstate_fclamok_txt'] = 'Definições de anti-vÃrus OK'; -$wb['monitor_serverstate_fclamoutdated_txt'] = 'Definições de anti-vÃrus DESATUALIZADAS!'; +$wb['monitor_serverstate_fclamok_txt'] = 'A proteção anti-vÃrus está ok'; +$wb['monitor_serverstate_fclamoutdated_txt'] = 'A proteção anti-vÃrus está desatualizada!'; $wb['monitor_serverstate_fclamunknown_txt'] = 'Freshclam: ???!'; -$wb['monitor_serverstate_hdok_txt'] = 'Disco OK'; -$wb['monitor_serverstate_hdgoingfull_txt'] = 'Disco cheio'; -$wb['monitor_serverstate_hdnearlyfull_txt'] = 'Disco com pouco espaço'; -$wb['monitor_serverstate_hdveryfull_txt'] = 'Disco com espaço insuficiente'; -$wb['monitor_serverstate_hdfull_txt'] = 'Disco sem espaço'; -$wb['monitor_serverstate_hdunknown_txt'] = 'Disco rÃgido: ???'; +$wb['monitor_serverstate_hdok_txt'] = 'O uso do disco está ok'; +$wb['monitor_serverstate_hdgoingfull_txt'] = 'O uso do disco está moderado'; +$wb['monitor_serverstate_hdnearlyfull_txt'] = 'O uso do disco está próximo do limite'; +$wb['monitor_serverstate_hdveryfull_txt'] = 'O uso do disco está crÃtico'; +$wb['monitor_serverstate_hdfull_txt'] = 'Não existe mais espaço no disco para uso'; +$wb['monitor_serverstate_hdunknown_txt'] = 'Disco(HDD): ???'; $wb['monitor_serverstate_listok_txt'] = 'ok'; -$wb['monitor_serverstate_listinfo_txt'] = 'informação'; -$wb['monitor_serverstate_listwarning_txt'] = 'aviso'; +$wb['monitor_serverstate_listinfo_txt'] = 'info'; +$wb['monitor_serverstate_listwarning_txt'] = 'alerta'; $wb['monitor_serverstate_listcritical_txt'] = 'crÃtico'; $wb['monitor_serverstate_listerror_txt'] = 'erro'; $wb['monitor_serverstate_listunknown_txt'] = 'desconhecido'; -$wb['monitor_serverstate_loadok_txt'] = 'Carga do servidor OK'; -$wb['monitor_serverstate_loadheavy_txt'] = 'Carga do servidor: alta'; -$wb['monitor_serverstate_loadhigh_txt'] = 'Carga do servidor: média'; -$wb['monitor_serverstate_loaghigher_txt'] = 'Carga do servidor: excessiva'; -$wb['monitor_serverstate_loadhighest_txt'] = 'Carga do servidor: extrema'; -$wb['monitor_serverstate_loadunknown_txt'] = 'Carga do servidor: ???'; -$wb['monitor_serverstate_mailqok_txt'] = 'Fila de e-mails OK'; -$wb['monitor_serverstate_mailqheavy_txt'] = 'Fila de e-mails: alta'; -$wb['monitor_serverstate_mailqhigh_txt'] = 'Fila de e-mails: média'; -$wb['monitor_serverstate_mailqhigher_txt'] = 'Fila de e-mails: excessiva'; -$wb['monitor_serverstate_mailqhighest_txt'] = 'Fila de e-mails: extrema'; +$wb['monitor_serverstate_loadok_txt'] = 'A carga do servidor está ok'; +$wb['monitor_serverstate_loadheavy_txt'] = 'O servidor está sob carga média'; +$wb['monitor_serverstate_loadhigh_txt'] = 'O servidor está sob carga alta'; +$wb['monitor_serverstate_loaghigher_txt'] = 'O servidor está sob carga muito alta'; +$wb['monitor_serverstate_loadhighest_txt'] = 'O servidor está sob carga crÃtica'; +$wb['monitor_serverstate_loadunknown_txt'] = 'Carga do Servidor: ???'; +$wb['monitor_serverstate_mailqok_txt'] = 'A fila de e-mails está ok'; +$wb['monitor_serverstate_mailqheavy_txt'] = 'A fila de e-mails está moderada'; +$wb['monitor_serverstate_mailqhigh_txt'] = 'A fila de e-mails está grande'; +$wb['monitor_serverstate_mailqhigher_txt'] = 'A fila de está muito grande'; +$wb['monitor_serverstate_mailqhighest_txt'] = 'A fila de e-mails está crÃtica'; $wb['monitor_serverstate_mailqunknown_txt'] = 'Fila de e-mails: ???'; -$wb['monitor_serverstate_raidok_txt'] = 'RAID OK'; -$wb['monitor_serverstate_raidresync_txt'] = 'RAID em modo RESYNC'; -$wb['monitor_serverstate_raidfault_txt'] = 'RAID possui um disco com falhas. Troque-o o mais rápido possÃvel!'; -$wb['monitor_serverstate_raiderror_txt'] = 'RAID parado.'; -$wb['monitor_serverstate_raidunknown_txt'] = 'RAID: ???'; -$wb['monitor_serverstate_servicesonline_txt'] = 'Todos os serviços necessários estão on-line'; -$wb['monitor_serverstate_servicesoffline_txt'] = 'Um ou mais serviços necessários estão off-line'; +$wb['monitor_serverstate_raidok_txt'] = 'O RAID está ok'; +$wb['monitor_serverstate_raidresync_txt'] = 'O RAID está em modo RESYNC'; +$wb['monitor_serverstate_raidfault_txt'] = 'O RAID possui uma disco com falha. Substitua o mais rápido possÃvel!'; +$wb['monitor_serverstate_raiderror_txt'] = 'O RAID não está funcionando'; +$wb['monitor_serverstate_raidunknown_txt'] = 'Estado do RAID: ???'; +$wb['monitor_serverstate_servicesonline_txt'] = 'Todos os serviços estão on-line'; +$wb['monitor_serverstate_servicesoffline_txt'] = 'Um ou mais serviços estão off-line'; $wb['monitor_serverstate_servicesunknown_txt'] = 'Serviços: ???'; -$wb['monitor_serverstate_syslogok_txt'] = 'O log do sistema está OK'; -$wb['monitor_serverstate_syslogwarning_txt'] = 'Existem alguns alertas no log do sistema'; -$wb['monitor_serverstate_syslogerror_txt'] = 'Existem erros no log do sistema'; -$wb['monitor_serverstate_syslogunknown_txt'] = 'syslog:???'; -$wb['monitor_serverstate_updatesok_txt'] = 'Sistema atualizado.'; -$wb['monitor_serverstate_updatesneeded_txt'] = 'Um ou mais componentes necessitam de atualização'; -$wb['monitor_serverstate_updatesunknown_txt'] = 'Estado do sistema:???'; +$wb['monitor_serverstate_syslogok_txt'] = 'O log do sistema está ok.'; +$wb['monitor_serverstate_syslogwarning_txt'] = 'Existem algumas mensagens de alerta no log do sistema'; +$wb['monitor_serverstate_syslogerror_txt'] = 'Existem algumas mensagens de erros no log do sistema'; +$wb['monitor_serverstate_syslogunknown_txt'] = 'Log do sistema: ???'; +$wb['monitor_serverstate_updatesok_txt'] = 'O sistema está atualizado.'; +$wb['monitor_serverstate_updatesneeded_txt'] = 'Um ou mais componentes do sistema necessitam atualização'; +$wb['monitor_serverstate_updatesunknown_txt'] = 'Atualizar Sistema: ???'; +$wb['monitor_serverstate_beancounterok_txt'] = 'O beancounter está ok'; +$wb['monitor_serverstate_beancounterinfo_txt'] = 'Existe uma falha de visualização no beancounter'; +$wb['monitor_serverstate_beancounterwarning_txt'] = 'Existe alguma falha no beancounter'; +$wb['monitor_serverstate_beancountercritical_txt'] = 'Existem várias falhas no beancounter'; +$wb['monitor_serverstate_beancountererror_txt'] = 'Existem muitas falhas no beancounter'; $wb['monitor_services_online_txt'] = 'On-line'; $wb['monitor_services_offline_txt'] = 'Off-line'; -$wb['monitor_services_web_txt'] = 'Servidor de páginas:'; -$wb['monitor_services_ftp_txt'] = 'Servidor ftp:'; -$wb['monitor_services_smtp_txt'] = 'Servidor smtp:'; -$wb['monitor_services_pop_txt'] = 'Servidor pop:'; -$wb['monitor_services_imap_txt'] = 'Servidor imap:'; -$wb['monitor_services_mydns_txt'] = 'Servidor dns:'; -$wb['monitor_services_mysql_txt'] = 'Servidor mysql:'; -$wb['monitor_settings_datafromdate_txt'] = 'Data de: '; -$wb['monitor_settings_datetimeformat_txt'] = 'd/m/Y H:i'; -$wb['monitor_settings_refreshsq_txt'] = 'Atualizar sequência:'; +$wb['monitor_services_web_txt'] = 'Servidor WEB:'; +$wb['monitor_services_ftp_txt'] = 'Servidor FTP:'; +$wb['monitor_services_smtp_txt'] = 'Servidor SMTP:'; +$wb['monitor_services_pop_txt'] = 'Servidor POP3:'; +$wb['monitor_services_imap_txt'] = 'Servidor IMAP:'; +$wb['monitor_services_mydns_txt'] = 'Servidor DNS:'; +$wb['monitor_services_mongodb_txt'] = 'Servidor MONGODB:'; +$wb['monitor_services_mysql_txt'] = 'Servidor MYSQL:'; +$wb['monitor_settings_datafromdate_txt'] = 'Dados de: '; +$wb['monitor_settings_datetimeformat_txt'] = 'd-m-Y H:i'; +$wb['monitor_settings_refreshsq_txt'] = 'Sequência de atualização:'; $wb['monitor_settings_server_txt'] = 'Servidor'; -$wb['monitor_title_cpuinfo_txt'] = 'Informação da cpu'; -$wb['monitor_title_updatestate_txt'] = 'Atualizar estado'; +$wb['monitor_title_cpuinfo_txt'] = 'Informações de CPU'; +$wb['monitor_title_updatestate_txt'] = 'Atualizar Estado'; $wb['monitor_title_mailq_txt'] = 'Fila de e-mails'; $wb['monitor_title_raidstate_txt'] = 'Estado do RAID'; -$wb['monitor_title_rkhunterlog_txt'] = 'Log do RKHunter'; -$wb['monitor_updates_nosupport_txt'] = 'Sua distribuição não suporta este tipo de monitoramento'; +$wb['monitor_title_rkhunterlog_txt'] = 'Log do rkhunter'; $wb['monitor_title_fail2ban_txt'] = 'Log do fail2ban'; -$wb['monitor_nosupportedraid1_txt'] = 'Até o presente momento, o suporte a mdadm ou mpt-status para monitoramento do RAID não foi encontrado.<br><br>Provavelmente seu servidor não possui recursos de RAID a serem monitorados.'; -$wb['monitor_serverstate_beancounterok_txt'] = 'Beancounter OK'; -$wb['monitor_serverstate_beancounterinfo_txt'] = 'Existem poucas falhas no beancounter'; -$wb['monitor_serverstate_beancounterwarning_txt'] = 'Existem algumas falhas no beancounter'; -$wb['monitor_serverstate_beancountercritical_txt'] = 'Existem falhas crÃticas no beancounter'; -$wb['monitor_serverstate_beancountererror_txt'] = 'Existem diversas falhas no beancounter'; -$wb['monitor_title_beancounter_txt'] = 'Beancounter openvz ve'; -$wb['monitor_beancounter_nosupport_txt'] = 'Este servidor não é um um contêiner openvz e não contém informações de beancounter.'; -$wb['monitor_title_iptables_txt'] = 'Regras do firewall'; -$wb['Show fail2ban-Log'] = 'Exibir log do fail2ban'; -$wb['Show IPTables'] = 'Exibir regras do firewall'; -$wb['Show OpenVz VE BeanCounter'] = 'Exibir beancounter do openvz'; +$wb['monitor_title_mongodb_txt'] = 'Log do mongodb'; +$wb['monitor_title_iptables_txt'] = 'Regras de Firewall'; +$wb['monitor_title_beancounter_txt'] = 'Beancounter openvz'; +$wb['monitor_updates_nosupport_txt'] = 'Sua distribuição não é suportada por este monitoramento'; +$wb['monitor_beancounter_nosupport_txt'] = 'Este servidor não é um openvz e não possui nenhuma informação do beancounter'; $wb['Show Monit'] = 'Exibir Monit'; -$wb['no_monit_url_defined_txt'] = 'Nenhuma url do Monit configurada.'; +$wb['no_monit_url_defined_txt'] = 'Nenhuma URL do Monit definida.'; $wb['no_permissions_to_view_monit_txt'] = 'Você não tem permissão para acessar o Monit.'; $wb['Show Munin'] = 'Exibir Munin'; -$wb['no_munin_url_defined_txt'] = 'Nenhuma url do Muni configurada.'; +$wb['no_munin_url_defined_txt'] = 'Nenhuma URL do Munin definida.'; $wb['no_permissions_to_view_munin_txt'] = 'Você não tem permissão para acessar o Munin.'; -$wb['no_data_database_size_txt'] = 'Nenhuma informação de uso do banco de dados disponÃvel no momento. Por favor verifique novamente mais tarde.'; -$wb['monitor_database_name_txt'] = 'Banco de dados'; -$wb['monitor_database_size_txt'] = 'Tamanho'; -$wb['monitor_database_client_txt'] = 'Cliente'; -$wb['monitor_database_domain_txt'] = 'DomÃnio'; -$wb['Show MongoDB-Log'] = 'Exibir logs do MongoDB'; -$wb['monitor_services_mongodb_txt'] = 'Servidor MongoDB:'; -$wb['monitor_title_mongodb_txt'] = 'Logs do MongoDB'; -$wb['Show Data Log History'] = 'Show Data Log History'; ?> diff --git a/interface/web/monitor/lib/lang/br_datalog_list.lng b/interface/web/monitor/lib/lang/br_datalog_list.lng index e6b2f554c3..8e044daeb7 100644 --- a/interface/web/monitor/lib/lang/br_datalog_list.lng +++ b/interface/web/monitor/lib/lang/br_datalog_list.lng @@ -1,8 +1,8 @@ <?php -$wb['list_head_txt'] = 'Fila de trabalho'; +$wb['list_head_txt'] = 'Fila de tarefas'; $wb['tstamp_txt'] = 'Data'; $wb['server_id_txt'] = 'Servidor'; $wb['dbtable_txt'] = 'Tabela do BD'; $wb['action_txt'] = 'Ação'; -$wb['status_txt'] = 'Situação'; +$wb['status_txt'] = 'Estado'; ?> diff --git a/interface/web/monitor/lib/lang/br_dataloghistory_list.lng b/interface/web/monitor/lib/lang/br_dataloghistory_list.lng index f1ba8c67b8..0a02fda077 100644 --- a/interface/web/monitor/lib/lang/br_dataloghistory_list.lng +++ b/interface/web/monitor/lib/lang/br_dataloghistory_list.lng @@ -1,8 +1,8 @@ <?php -$wb['list_head_txt'] = 'Datalog History'; -$wb['tstamp_txt'] = 'Date'; -$wb['server_id_txt'] = 'Server'; -$wb['dbtable_txt'] = 'DB Table'; -$wb['action_txt'] = 'Action'; -$wb['status_txt'] = 'Status'; +$wb['list_head_txt'] = 'Histórico do log'; +$wb['tstamp_txt'] = 'Data'; +$wb['server_id_txt'] = 'Servidor'; +$wb['dbtable_txt'] = 'Tabela do BD'; +$wb['action_txt'] = 'Ação'; +$wb['status_txt'] = 'Estado'; ?> diff --git a/interface/web/monitor/lib/lang/br_dataloghistory_undo.lng b/interface/web/monitor/lib/lang/br_dataloghistory_undo.lng index 0e040a3e77..be544e6119 100644 --- a/interface/web/monitor/lib/lang/br_dataloghistory_undo.lng +++ b/interface/web/monitor/lib/lang/br_dataloghistory_undo.lng @@ -1,7 +1,7 @@ <?php -$wb['list_head_txt'] = 'Data Log History Entry'; -$wb['success_txt'] = 'Undo successful'; -$wb['error_txt'] = 'Error during undo: Record does not exist anymore'; -$wb['error_undelete_txt'] = 'Error during undelete: Record with primary id already existing.'; -$wb['btn_cancel_txt'] = 'Back'; +$wb['list_head_txt'] = 'Histórico do log'; +$wb['success_txt'] = 'O comando "Desfazer ação" foi realizado com sucesso'; +$wb['error_txt'] = 'Erro durante desfazer ação: O registro não existe mais'; +$wb['error_undelete_txt'] = 'Erro durante a remoção: Registro com ID primário ainda existe.'; +$wb['btn_cancel_txt'] = 'Voltar'; ?> diff --git a/interface/web/monitor/lib/lang/br_dataloghistory_view.lng b/interface/web/monitor/lib/lang/br_dataloghistory_view.lng index df9ddd286f..8354693280 100644 --- a/interface/web/monitor/lib/lang/br_dataloghistory_view.lng +++ b/interface/web/monitor/lib/lang/br_dataloghistory_view.lng @@ -1,26 +1,26 @@ <?php -$wb['i'] = 'Insert'; -$wb['u'] = 'Update'; -$wb['d'] = 'Delete'; -$wb['list_head_txt'] = 'Data Log History Entry'; +$wb['i'] = 'Inserir'; +$wb['u'] = 'Atualizar'; +$wb['d'] = 'Remover'; +$wb['list_head_txt'] = 'Histórico do log'; $wb['id_txt'] = 'ID'; -$wb['timestamp_txt'] = 'Timestamp'; -$wb['table_txt'] = 'Table'; -$wb['action_txt'] = 'Action'; -$wb['session_id_txt'] = 'Session ID'; -$wb['fields_txt'] = 'Fields'; -$wb['fields_inserted_txt'] = 'Inserted Fields'; -$wb['fields_updated_txt'] = 'Updated Fields'; -$wb['fields_deleted_txt'] = 'Deleted Fields'; -$wb['no_changes_txt'] = 'No changes (re-sync)'; -$wb['is_diff_txt'] = 'The differences are highlighted'; -$wb['is_diff_inserts_txt'] = 'Insertions'; -$wb['is_diff_deletes_txt'] = 'Deletions'; -$wb['field_txt'] = 'Field'; -$wb['value_txt'] = 'Value'; -$wb['old_txt'] = 'Old'; -$wb['new_txt'] = 'New'; -$wb['btn_cancel_txt'] = 'Back'; -$wb['undo_txt'] = 'Undo action'; -$wb['undo_confirmation_txt'] = 'Do you really want to undo this action?'; +$wb['timestamp_txt'] = 'Data/Hora'; +$wb['table_txt'] = 'Tabela'; +$wb['action_txt'] = 'Ação'; +$wb['session_id_txt'] = 'ID da sessão'; +$wb['fields_txt'] = 'Campos'; +$wb['fields_inserted_txt'] = 'Campos cadastrados'; +$wb['fields_updated_txt'] = 'Atualizar campos'; +$wb['fields_deleted_txt'] = 'Remover campos'; +$wb['no_changes_txt'] = 'Nenhuma alteração (sincronizar)'; +$wb['is_diff_txt'] = 'As diferenças são destacadas'; +$wb['is_diff_inserts_txt'] = 'Inserções'; +$wb['is_diff_deletes_txt'] = 'Remoções'; +$wb['field_txt'] = 'Campo'; +$wb['value_txt'] = 'Valor'; +$wb['old_txt'] = 'Antigo'; +$wb['new_txt'] = 'Novo'; +$wb['btn_cancel_txt'] = 'Voltar'; +$wb['undo_txt'] = 'Desfazer ação'; +$wb['undo_confirmation_txt'] = 'Você realmente deseja desfazer esta ação?'; ?> diff --git a/interface/web/monitor/lib/lang/br_syslog_list.lng b/interface/web/monitor/lib/lang/br_syslog_list.lng index 23f3c6d5da..ca5a373564 100644 --- a/interface/web/monitor/lib/lang/br_syslog_list.lng +++ b/interface/web/monitor/lib/lang/br_syslog_list.lng @@ -1,7 +1,7 @@ <?php -$wb['list_head_txt'] = 'Log do Painel'; -$wb['tstamp_txt'] = 'Data'; +$wb['list_head_txt'] = 'Log do ISPConfig'; +$wb['tstamp_txt'] = 'Data/hora'; $wb['server_id_txt'] = 'Servidor'; -$wb['loglevel_txt'] = 'NÃvel do Log'; +$wb['loglevel_txt'] = 'NÃvel'; $wb['message_txt'] = 'Mensagem'; ?> diff --git a/interface/web/monitor/lib/lang/tr.lng b/interface/web/monitor/lib/lang/tr.lng index 005b4d97e2..20a9e8e140 100644 --- a/interface/web/monitor/lib/lang/tr.lng +++ b/interface/web/monitor/lib/lang/tr.lng @@ -1,21 +1,22 @@ <?php $wb['Server online since'] = 'Sunucu ÅŸu zamandan beri çevrimiçi'; $wb['Users online'] = 'Çevrimiçi Kullanıcılar'; -$wb['System load 1 minute'] = '1 dakikalık sistem yükü'; -$wb['System load 5 minutes'] = '5 dakikalık sistem yükü'; -$wb['System load 15 minutes'] = '15 dakikalık sistem yükü'; +$wb['System load 1 minute'] = 'Son 1 dakika sistem yükü'; +$wb['System load 5 minutes'] = 'Son 5 dakika sistem yükü'; +$wb['System load 15 minutes'] = 'Son 15 dakika sistem yükü'; $wb['Server Load'] = 'Sunucu Yükü'; $wb['Disk usage'] = 'Disk Kullanımı'; $wb['Memory usage'] = 'Bellek Kullanımı'; $wb['no_data_serverload_txt'] = 'Henüz sunucu yükü hakkında bir veri yok. Lütfen bir süre sonra yeniden deneyin.'; $wb['no_data_memusage_txt'] = 'Henüz bellek kullanımı hakkında bir veri yok. Lütfen bir süre sonra yeniden deneyin.'; $wb['no_data_diskusage_txt'] = 'Henüz disk kullanımı hakkında bir veri yok. Lütfen bir süre sonra yeniden deneyin.'; +$wb['no_data_database_size_txt'] = 'Henüz veritabanı kullanımı ile ilgili bir veri yok. Lütfen daha sonra yeniden deneyin.'; $wb['no_data_cpuinfo_txt'] = 'Henüz iÅŸlemci hakkında bir veri yok. Lütfen bir süre sonra yeniden deneyin.'; $wb['no_data_services_txt'] = 'Henüz hizmetler hakkında bir veri yok. Lütfen bir süre sonra yeniden deneyin.'; $wb['no_data_updates_txt'] = 'Henüz güncellemeler hakkında bir veri yok. Lütfen bir süre sonra yeniden deneyin.'; $wb['no_data_raid_txt'] = 'Henüz RAID hakkında bir veri yok. Lütfen bir süre sonra yeniden deneyin.'; $wb['no_data_rkhunter_txt'] = 'Henüz RKHunter hakkında bir veri yok. Lütfen bir süre sonra yeniden deneyin.'; -$wb['no_data_mailq_txt'] = 'Henüz posta kuyruÄŸu hakkında bir veri yok. Lütfen bir süre sonra yeniden deneyin.'; +$wb['no_data_mailq_txt'] = 'Henüz e-posta kuyruÄŸu hakkında bir veri yok. Lütfen bir süre sonra yeniden deneyin.'; $wb['no_logdata_txt'] = 'Henüz bir günlük verisi yok. Lütfen bir süre sonra yeniden deneyin.'; $wb['Monitoring'] = 'Ä°zleme'; $wb['Server to Monitor'] = 'Ä°zlenecek Sunucu'; @@ -34,10 +35,10 @@ $wb['Show Server load'] = 'Sistem Yükü'; $wb['Show Disk usage'] = 'Disk Kullanımı'; $wb['Show Memory usage'] = 'Bellek Kullanımı'; $wb['Show Services'] = 'Hizmetler'; -$wb['Show Mail-Queue'] = 'Posta KuyruÄŸu'; -$wb['Show Mail-Log'] = 'Posta Günlüğü'; -$wb['Show Mail warn-Log'] = 'Posta Uyarı Günlüğü'; -$wb['Show Mail err-Log'] = 'Posta Hata Günlüğü'; +$wb['Show Mail-Queue'] = 'E-posta KuyruÄŸu'; +$wb['Show Mail-Log'] = 'E-posta Günlüğü'; +$wb['Show Mail warn-Log'] = 'E-posta Uyarı Günlüğü'; +$wb['Show Mail err-Log'] = 'E-posta Hata Günlüğü'; $wb['Show System-Log'] = 'Sistem Günlüğü'; $wb['Show ISPC Cron-Log'] = 'Zamanlı Görev Günlüğü'; $wb['Show Freshclam-Log'] = 'Freshclam Günlüğü'; @@ -46,27 +47,32 @@ $wb['Show ISPConfig-Log'] = 'ISPConfig Günlüğü'; $wb['Show RKHunter-Log'] = 'RKHunter Günlüğü'; $wb['Show Jobqueue'] = 'Ä°ÅŸ KuyruÄŸu'; $wb['Show fail2ban-Log'] = 'Fail2ban Günlüğü'; -$wb['Show IPTables'] = 'IPTabloları'; +$wb['Show MongoDB-Log'] = 'MongoDB Günlüğünü Görüntüle'; +$wb['Show IPTables'] = 'IPTables Günlüğü'; $wb['Show OpenVz VE BeanCounter'] = 'OpenVz VE BeanCounter'; $wb['monitor_general_serverstate_txt'] = 'Sunucu Durumu'; $wb['monitor_general_systemstate_txt'] = 'Sistem Durumu'; $wb['monitor_diskusage_filesystem_txt'] = 'Dosya Sistemi'; -$wb['monitor_diskusage_type_txt'] = 'Tip'; +$wb['monitor_diskusage_type_txt'] = 'Tür'; $wb['monitor_diskusage_size_txt'] = 'Boyut'; $wb['monitor_diskusage_used_txt'] = 'Kullanılan'; $wb['monitor_diskusage_available_txt'] = 'Kullanılabilir'; $wb['monitor_diskusage_usage_txt'] = 'Kullanım%'; $wb['monitor_diskusage_mounted_txt'] = 'BaÄŸlantı'; -$wb['monitor_logs_mail_txt'] = 'Posta Günlüğü'; -$wb['monitor_logs_mailwarn_txt'] = 'Posta Uyarı Günlüğü'; -$wb['monitor_logs_mailerr_txt'] = 'Posta Hata Günlüğü'; +$wb['monitor_database_name_txt'] = 'Veritabanı'; +$wb['monitor_database_size_txt'] = 'Boyut'; +$wb['monitor_database_client_txt'] = 'Ä°stemci'; +$wb['monitor_database_domain_txt'] = 'Etki Alanı'; +$wb['monitor_logs_mail_txt'] = 'E-posta Günlüğü'; +$wb['monitor_logs_mailwarn_txt'] = 'E-posta Uyarı Günlüğü'; +$wb['monitor_logs_mailerr_txt'] = 'E-posta Hata Günlüğü'; $wb['monitor_logs_messages_txt'] = 'Sistem Ä°letileri Günlüğü'; $wb['monitor_logs_ispccron_txt'] = 'ISPConfig Zamanlı Görev Günlüğü'; $wb['monitor_logs_freshclam_txt'] = 'Freshclam GÃœnlüğü'; $wb['monitor_logs_clamav_txt'] = 'Clamav Günlüğü'; $wb['monitor_logs_ispc_txt'] = 'ISPConfig Günlüğü'; -$wb['monitor_nosupportedraid1_txt'] = 'Åžimdilik RAID durumunu izlemek için mdadm ya da mpt-status destekleniyor.<br>Bunlardan biri sunucunuzda bulunamadı.<br><br>Bu nedenle RAID sürücünüz henüz desteklenemiyor.'; -$wb['monitor_norkhunter_txt'] = 'RKHunter yüklü olmadığından herhangi bir günlük verisi yok'; +$wb['monitor_nosupportedraid1_txt'] = 'Åžimdilik RAID durumunu izlemek için ya da destekleniyor.<br>Bunlardan biri sunucunuzda bulunamadı.<br><br>Bu nedenle RAID sürücünüz henüz desteklenemiyor.'; +$wb['monitor_norkhunter_txt'] = 'RKHunter kurulu olmadığından herhangi bir günlük verisi yok'; $wb['monitor_serverstate_server_txt'] = 'Sunucu'; $wb['monitor_serverstate_kernel_txt'] = 'Kernel'; $wb['monitor_serverstate_state_txt'] = 'Durum'; @@ -75,7 +81,7 @@ $wb['monitor_serverstate_info_txt'] = 'bilgi'; $wb['monitor_serverstate_warning_txt'] = 'uyarı'; $wb['monitor_serverstate_critical_txt'] = 'kritik'; $wb['monitor_serverstate_error_txt'] = 'hata'; -$wb['monitor_serverstate_moreinfo_txt'] = 'Ayrıntılı bilgi...'; +$wb['monitor_serverstate_moreinfo_txt'] = 'Ayrıntılı bilgiler...'; $wb['monitor_serverstate_more_txt'] = 'Ayrıntılar...'; $wb['monitor_serverstate_fclamok_txt'] = 'Virüs koruması sorunsuz'; $wb['monitor_serverstate_fclamoutdated_txt'] = 'Virüs koruması GÃœNCEL DEĞİL!'; @@ -93,17 +99,17 @@ $wb['monitor_serverstate_listcritical_txt'] = 'kritik'; $wb['monitor_serverstate_listerror_txt'] = 'hata'; $wb['monitor_serverstate_listunknown_txt'] = 'bilinmiyor'; $wb['monitor_serverstate_loadok_txt'] = 'Sunucu yükü: Sorunsuz'; -$wb['monitor_serverstate_loadheavy_txt'] = 'Sunucu yükü: Ağır'; +$wb['monitor_serverstate_loadheavy_txt'] = 'Sunucu yükü: Fazla'; $wb['monitor_serverstate_loadhigh_txt'] = 'Sunucu yükü: Yüksek'; $wb['monitor_serverstate_loaghigher_txt'] = 'Sunucu yükü: Çok yüksek'; $wb['monitor_serverstate_loadhighest_txt'] = 'Sunucu yükü: En yüksek'; $wb['monitor_serverstate_loadunknown_txt'] = 'Sunucu yükü: ???'; -$wb['monitor_serverstate_mailqok_txt'] = 'Posta kuyruÄŸu yükü: Sorunsuz'; -$wb['monitor_serverstate_mailqheavy_txt'] = 'Posta kuyruÄŸu yükü: Ağır'; -$wb['monitor_serverstate_mailqhigh_txt'] = 'Posta kuyruÄŸu yükü: Yüksek'; -$wb['monitor_serverstate_mailqhigher_txt'] = 'Posta kuyruÄŸu yükü: Çok yüksek'; -$wb['monitor_serverstate_mailqhighest_txt'] = 'Posta kuyruÄŸu yükü: En yüksek'; -$wb['monitor_serverstate_mailqunknown_txt'] = 'Posta kuyruÄŸu yükü: ???'; +$wb['monitor_serverstate_mailqok_txt'] = 'E-posta kuyruÄŸu yükü: Sorunsuz'; +$wb['monitor_serverstate_mailqheavy_txt'] = 'E-posta kuyruÄŸu yükü: Fazla'; +$wb['monitor_serverstate_mailqhigh_txt'] = 'E-posta kuyruÄŸu yükü: Yüksek'; +$wb['monitor_serverstate_mailqhigher_txt'] = 'E-posta kuyruÄŸu yükü: Çok yüksek'; +$wb['monitor_serverstate_mailqhighest_txt'] = 'E-posta kuyruÄŸu yükü: En yüksek'; +$wb['monitor_serverstate_mailqunknown_txt'] = 'E-posta kuyruÄŸu yükü: ???'; $wb['monitor_serverstate_raidok_txt'] = 'RAID sorunsuz'; $wb['monitor_serverstate_raidresync_txt'] = 'RAID, RESYNC kipinde'; $wb['monitor_serverstate_raidfault_txt'] = 'RAID dizisinde hatalı bir disk var. Bu diski en kısa sürede deÄŸiÅŸtirmelisiniz!'; @@ -118,6 +124,7 @@ $wb['monitor_serverstate_syslogerror_txt'] = 'Sistem günlüğünde hatalar var' $wb['monitor_serverstate_syslogunknown_txt'] = 'Sistem Günlüğü: ???'; $wb['monitor_serverstate_updatesok_txt'] = 'Sistem güncel'; $wb['monitor_serverstate_updatesneeded_txt'] = 'Bir ya da daha fazla bileÅŸenin güncellenmesi gerekiyor'; +$wb['monitor_serverstate_updatesunknown_txt'] = 'Sistem Güncelleme: ???'; $wb['monitor_serverstate_beancounterok_txt'] = 'Beancounter sorunsuz'; $wb['monitor_serverstate_beancounterinfo_txt'] = 'Beancounter kayıtlarında az sayıda hata var'; $wb['monitor_serverstate_beancounterwarning_txt'] = 'Beancounter kayıtlarında ortalama sayıda hata var'; @@ -130,7 +137,8 @@ $wb['monitor_services_ftp_txt'] = 'FTP Sunucu:'; $wb['monitor_services_smtp_txt'] = 'SMTP Sunucu:'; $wb['monitor_services_pop_txt'] = 'POP3 Sunucu:'; $wb['monitor_services_imap_txt'] = 'IMAP Sunucu:'; -$wb['monitor_services_mydns_txt'] = 'myDNS Sunucu:'; +$wb['monitor_services_mydns_txt'] = 'DNS Sunucu:'; +$wb['monitor_services_mongodb_txt'] = 'MongoDB Sunucusu:'; $wb['monitor_services_mysql_txt'] = 'mySQL Sunucu:'; $wb['monitor_settings_datafromdate_txt'] = 'Veri tarihi: '; $wb['monitor_settings_datetimeformat_txt'] = 'Y-m-d H:i'; @@ -138,10 +146,11 @@ $wb['monitor_settings_refreshsq_txt'] = 'Yenileme Sıklığı:'; $wb['monitor_settings_server_txt'] = 'Sunucu'; $wb['monitor_title_cpuinfo_txt'] = 'Ä°ÅŸlemci Bilgileri'; $wb['monitor_title_updatestate_txt'] = 'Güncellik Durumu'; -$wb['monitor_title_mailq_txt'] = 'Posta KuyruÄŸu'; +$wb['monitor_title_mailq_txt'] = 'E-posta KuyruÄŸu'; $wb['monitor_title_raidstate_txt'] = 'RAID Durumu'; $wb['monitor_title_rkhunterlog_txt'] = 'RKHunter Günlüğü'; $wb['monitor_title_fail2ban_txt'] = 'Fail2Ban Günlüğü'; +$wb['monitor_title_mongodb_txt'] = 'MongoDB Günlüğü'; $wb['monitor_title_iptables_txt'] = 'IPTables Kuralları'; $wb['monitor_title_beancounter_txt'] = 'OpenVz VE BeanCounter'; $wb['monitor_updates_nosupport_txt'] = 'Dağıtımınız, bu izlemeyi desteklemiyor'; @@ -152,14 +161,4 @@ $wb['no_permissions_to_view_monit_txt'] = 'Monit eriÅŸimi izniniz yok.'; $wb['Show Munin'] = 'Munin Durumu'; $wb['no_munin_url_defined_txt'] = 'Munin adresi belirtilmemiÅŸ.'; $wb['no_permissions_to_view_munin_txt'] = 'Munin eriÅŸimi izniniz yok.'; -$wb['no_data_database_size_txt'] = 'No data about the database usage available at the moment. Please check again later.'; -$wb['Show MongoDB-Log'] = 'Show MongoDB-Log'; -$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['monitor_serverstate_updatesunknown_txt'] = 'System Update: ???'; -$wb['monitor_services_mongodb_txt'] = 'MongoDB-Server:'; -$wb['monitor_title_mongodb_txt'] = 'MongoDB Log'; -$wb['Show Data Log History'] = 'Show Data Log History'; ?> diff --git a/interface/web/sites/lib/lang/br.lng b/interface/web/sites/lib/lang/br.lng index 685ce6ed28..8710dc1140 100644 --- a/interface/web/sites/lib/lang/br.lng +++ b/interface/web/sites/lib/lang/br.lng @@ -2,34 +2,37 @@ $wb['Websites'] = 'Sites'; $wb['Website'] = 'Site'; $wb['Subdomain'] = 'SubdomÃnio'; -$wb['Aliasdomain'] = 'Apelido de domÃnio'; -$wb['Database'] = 'Bancos de dados'; +$wb['Aliasdomain'] = 'Alias de domÃnio'; +$wb['Database'] = 'Banco de dados'; +$wb['Database User'] = 'Usuários do banco de dados'; $wb['Web Access'] = 'Acesso web'; $wb['FTP-User'] = 'Usuários ftp'; $wb['Webdav-User'] = 'Usuários webdav'; $wb['Folder'] = 'Pastas protegidas'; -$wb['Folder users'] = 'Usuários de pastas'; +$wb['Folder users'] = 'Usuários de pastas protegidas'; $wb['Command Line'] = 'Linha de comando'; -$wb['Shell-User'] = 'Usuários shell'; +$wb['Shell-User'] = 'Usuários do shell'; $wb['Cron Jobs'] = 'Tarefas no cron'; $wb['Statistics'] = 'EstatÃsticas'; $wb['Web traffic'] = 'Tráfego web'; -$wb['Website quota (Harddisk)'] = 'Cota para sites (disco)'; +$wb['FTP traffic'] = 'Tráfego ftp'; +$wb['Website quota (Harddisk)'] = 'Cota de site (disco)'; +$wb['Database quota'] = 'Cota do banco de dados'; +$wb['Backup Stats'] = 'EstatÃsticas de backups'; $wb['Cron'] = 'Cron'; $wb['Stats'] = 'EstatÃsticas'; $wb['Shell'] = 'Shell'; $wb['Webdav'] = 'Webdav'; $wb['FTP'] = 'FTP'; $wb['Options'] = 'Opções'; +$wb['Domain'] = 'DomÃnio'; $wb['Redirect'] = 'Redirecionamento'; $wb['SSL'] = 'SSL'; $wb['Sites'] = 'Sites'; -$wb['Database User'] = 'Usuários'; -$wb['APS Installer'] = 'Instalação de apps'; +$wb['APS Installer'] = 'Instalador de APPs'; $wb['Available packages'] = 'Pacotes disponÃveis'; $wb['Installed packages'] = 'Pacotes instalados'; $wb['Update Packagelist'] = 'Atualizar lista de pacotes'; $wb['Subdomain (Vhost)'] = 'SubdomÃnio (vhost)'; -$wb['error_proxy_requires_url'] = 'Tipo de redirecionamento \\"proxy\\" exige uma url como caminho do redirecionamento.'; -$wb['Domain'] = 'DomÃnio'; +$wb['error_proxy_requires_url'] = 'O tipo de redirecionamento "proxy" exige uma URL como caminho de redirecionamento.'; ?> diff --git a/interface/web/sites/lib/lang/br_aps.lng b/interface/web/sites/lib/lang/br_aps.lng index 27e7434359..744c215192 100644 --- a/interface/web/sites/lib/lang/br_aps.lng +++ b/interface/web/sites/lib/lang/br_aps.lng @@ -5,59 +5,59 @@ $wb['available_packages_txt'] = 'Pacotes disponÃveis'; $wb['installed_packages_txt'] = 'Pacotes instalados'; $wb['yes_txt'] = 'Sim'; $wb['no_txt'] = 'Não'; -$wb['invalid_id_txt'] = 'Nenhuma ID válida inserida.'; +$wb['invalid_id_txt'] = 'Nenhuma ID válida informada.'; $wb['details_txt'] = 'Detalhes'; $wb['version_txt'] = 'Versão'; $wb['category_txt'] = 'Categoria'; -$wb['homepage_txt'] = 'Página'; +$wb['homepage_txt'] = 'Página Inicial'; $wb['supported_languages_txt'] = 'Idiomas suportados'; $wb['description_txt'] = 'Descrição'; $wb['config_script_txt'] = 'Script de configuração'; -$wb['installed_size_txt'] = 'Tamanho após instalação'; +$wb['installed_size_txt'] = 'Tamanho após a instalação'; $wb['license_txt'] = 'Licença'; -$wb['screenshots_txt'] = 'Telas'; -$wb['changelog_txt'] = 'Log de mudanças'; -$wb['server_requirements_txt'] = 'Requisitos do servidor'; -$wb['php_extensions_txt'] = 'Extensões PHP'; -$wb['php_settings_txt'] = 'Configurações do PHP'; -$wb['supported_php_versions_txt'] = 'Versões do PHP suportadas'; +$wb['screenshots_txt'] = 'Captura de telas'; +$wb['changelog_txt'] = 'Mudanças Recentes'; +$wb['server_requirements_txt'] = 'Requisitos do Servidor'; +$wb['php_extensions_txt'] = 'Extensões php'; +$wb['php_settings_txt'] = 'Configurações php'; +$wb['supported_php_versions_txt'] = 'Versões do php suportadas'; $wb['database_txt'] = 'Banco de Dados'; $wb['settings_txt'] = 'Configurações'; -$wb['install_package_txt'] = 'Instalar esse pacote'; +$wb['install_package_txt'] = 'Instalar este pacote'; $wb['installation_txt'] = 'Instalação'; $wb['install_location_txt'] = 'Local da instalação'; -$wb['acceptance_txt'] = 'Aceitação'; -$wb['acceptance_text_txt'] = 'Sim, eu li a licença e aceito os termos.'; +$wb['btn_install_txt'] = 'Instalar'; +$wb['btn_cancel_txt'] = 'Cancelar'; +$wb['acceptance_txt'] = 'Aceitar a licença'; +$wb['acceptance_text_txt'] = 'Sim, li e aceito os termos da licença.'; $wb['install_language_txt'] = 'Idioma da interface'; $wb['new_database_password_txt'] = 'Nova senha do banco de dados'; $wb['basic_settings_txt'] = 'Configurações básicas'; -$wb['package_settings_txt'] = 'Configurações do pacote'; -$wb['error_main_domain'] = 'O domÃnio no caminho da instalação é é inválido.'; -$wb['error_no_main_location'] = 'Você inseriu um caminho inválido para a instalação.'; -$wb['error_inv_main_location'] = 'A pasta informada para a instalação é inválida.'; -$wb['error_license_agreement'] = 'Para continuar é preciso aceitar os termos da licenciamento.'; -$wb['error_no_database_pw'] = 'Você informou uma senha inválida para o banco de dados.'; -$wb['error_short_database_pw'] = 'Por favor, escolha uma senha com maior complexidade para o banco de dados.'; -$wb['error_no_value_for'] = 'O campo \'%s\' não pode ficar está em branco.'; -$wb['error_short_value_for'] = 'O campo \'%s\' exige um valor maior.'; -$wb['error_long_value_for'] = 'O campo \'%s\' exige um valor mais curto.'; -$wb['error_inv_value_for'] = 'Você inseriu um valor inválido para o campo \'%s\'.'; -$wb['error_inv_email_for'] = 'Você inseriu um e-mail inválido para o campo \'%s\'.'; -$wb['error_inv_domain_for'] = 'Você inseriu um domÃnio inválido para o campo \'%s\'.'; -$wb['error_inv_integer_for'] = 'Você inseriu um número inválido para o campo \'%s\'.'; -$wb['error_inv_float_for'] = 'Você inseriu um número de ponto flutuante inválido para o campo \'%s\'.'; -$wb['error_used_location'] = 'O caminho da instalação contém um pacote de instalação.'; -$wb['installation_task_txt'] = 'Agendamento de instalação'; +$wb['package_settings_txt'] = 'Configurações de pacotes'; +$wb['error_main_domain'] = 'O domÃnio para a instalação é inválido.'; +$wb['error_no_main_location'] = 'Não foi informado um caminho válido para a instalação.'; +$wb['error_inv_main_location'] = 'Local da pasta de instalação informado é inválido.'; +$wb['error_license_agreement'] = 'Para continuar é necessário aceitar os termos da licença.'; +$wb['error_no_database_pw'] = 'Não foi informado uma senha válida para o banco de dados.'; +$wb['error_short_database_pw'] = 'Por favor informe uma senha do banco de dados com maior complexidade.'; +$wb['error_no_value_for'] = 'O campo "%s" não pode estar está em branco.'; +$wb['error_short_value_for'] = 'O campo "%s" requer um valor de entrada maior.'; +$wb['error_long_value_for'] = 'O campo "%s" requer um valor de entrada menor.'; +$wb['error_inv_value_for'] = 'O valor informado no campo "%s" é inválido.'; +$wb['error_inv_email_for'] = 'O e-mail informado no campo "%s" é inválido.'; +$wb['error_inv_domain_for'] = 'O domÃnio informado no campo "%s" é inválido.'; +$wb['error_inv_integer_for'] = 'O número informado no campo "%s" é inválido.'; +$wb['error_inv_float_for'] = 'O número de ponto flutuante informado no campo "%s" é inválido.'; +$wb['error_used_location'] = 'O caminho da instalação selecionado já possui uma instalação de pacote.'; +$wb['installation_task_txt'] = 'Instalação agendada'; $wb['installation_error_txt'] = 'Erro de instalação'; $wb['installation_success_txt'] = 'Instalado'; -$wb['installation_remove_txt'] = 'Remove agendamento'; -$wb['packagelist_update_finished_txt'] = 'Atualização da lista de pacotes finalizada.'; -$wb['btn_install_txt'] = 'Instalar'; -$wb['btn_cancel_txt'] = 'Cancelar'; -$wb['limit_aps_txt'] = 'O limite de instâncias de apps para esta conta foi alcançado.'; -$wb['generate_password_txt'] = 'Gerar senha'; -$wb['repeat_password_txt'] = 'Repetir senha'; -$wb['password_mismatch_txt'] = 'A senhas não coincidem.'; -$wb['password_match_txt'] = 'A senhas coincidem.'; +$wb['installation_remove_txt'] = 'Remover instalação agendada'; +$wb['packagelist_update_finished_txt'] = 'Lista de APPs atualizada.'; +$wb['limit_aps_txt'] = 'O limite de instâncias de APPs para esta conta foi alcançado.'; +$wb['generate_password_txt'] = 'Gerar Senha'; +$wb['repeat_password_txt'] = 'Repetir Senha'; +$wb['password_mismatch_txt'] = 'As senhas não coincidem.'; +$wb['password_match_txt'] = 'As senhas coincidem.'; $wb['password_strength_txt'] = 'Dificuldade da senha'; ?> diff --git a/interface/web/sites/lib/lang/br_aps_instances_list.lng b/interface/web/sites/lib/lang/br_aps_instances_list.lng index fb6a2addd8..da5b80d68e 100644 --- a/interface/web/sites/lib/lang/br_aps_instances_list.lng +++ b/interface/web/sites/lib/lang/br_aps_instances_list.lng @@ -5,7 +5,7 @@ $wb['version_txt'] = 'Versão'; $wb['customer_txt'] = 'Cliente'; $wb['status_txt'] = 'Estado'; $wb['install_location_txt'] = 'Local da instalação'; -$wb['pkg_delete_confirmation'] = 'Você realmente deseja remover esta instalação?'; +$wb['pkg_delete_confirmation'] = 'Deseja realmente remover esta instalação?'; $wb['filter_txt'] = 'Pesquisar'; $wb['delete_txt'] = 'Remover'; ?> diff --git a/interface/web/sites/lib/lang/br_aps_packages_list.lng b/interface/web/sites/lib/lang/br_aps_packages_list.lng index 641d807f52..bbd0e1ad3d 100644 --- a/interface/web/sites/lib/lang/br_aps_packages_list.lng +++ b/interface/web/sites/lib/lang/br_aps_packages_list.lng @@ -1,5 +1,5 @@ <?php -$wb['list_head_txt'] = 'Pacotes DisponÃveis'; +$wb['list_head_txt'] = 'Pacotes disponÃveis'; $wb['name_txt'] = 'Nome'; $wb['version_txt'] = 'Versão'; $wb['category_txt'] = 'Categoria'; diff --git a/interface/web/sites/lib/lang/br_aps_update_packagelist.lng b/interface/web/sites/lib/lang/br_aps_update_packagelist.lng index 8e53fbb6b1..b81640384c 100644 --- a/interface/web/sites/lib/lang/br_aps_update_packagelist.lng +++ b/interface/web/sites/lib/lang/br_aps_update_packagelist.lng @@ -1,7 +1,7 @@ <?php $wb['head_txt'] = 'Atualizar lista de pacotes'; -$wb['list_desc_txt'] = 'Lista de pacotes'; +$wb['list_desc_txt'] = ''; $wb['btn_start_txt'] = 'Atualizar lista de pacotes'; $wb['btn_cancel_txt'] = 'Cancelar'; -$wb['legend_txt'] = 'Aqui você pode atualizar a lista de pacotes disponÃveis. Por favor, observe que este processo poderá levar alguns minutos. Você pode fechar esta página, o processo continuará em segundo plano.'; +$wb['legend_txt'] = 'Aqui é possÃvel atualizar a lista de pacotes disponÃveis. Por favor, observe que esta operação pode demorar vários minutos. Você poderá sair dessa página se quiser; o processo continuará a execução em segundo plano.'; ?> diff --git a/interface/web/sites/lib/lang/br_backup_stats_list.lng b/interface/web/sites/lib/lang/br_backup_stats_list.lng index 5f7f2d9ec7..932ad5dba7 100644 --- a/interface/web/sites/lib/lang/br_backup_stats_list.lng +++ b/interface/web/sites/lib/lang/br_backup_stats_list.lng @@ -1,10 +1,10 @@ <?php -$wb['list_head_txt'] = 'EstatÃsticas do banco de Dados'; -$wb['database_name_txt'] = 'Nome do banco de dados'; +$wb['list_head_txt'] = 'EstatÃsticas de backup'; +$wb['database_name_txt'] = 'Banco de Dados'; $wb['active_txt'] = 'Ativo'; $wb['domain_txt'] = 'DomÃnio'; -$wb['backup_count_txt'] = 'Contador de backup'; +$wb['backup_count_txt'] = 'Contador de backups'; $wb['backup_server_txt'] = 'Servidor'; -$wb['backup_interval_txt'] = 'Intervalo/contador'; -$wb['backup_size_txt'] = 'Tamanho'; +$wb['backup_interval_txt'] = 'Intervalo entre backups'; +$wb['backup_size_txt'] = 'Tamanho do backup'; ?> diff --git a/interface/web/sites/lib/lang/br_cron.lng b/interface/web/sites/lib/lang/br_cron.lng index 2bbadf6d1b..98d98efa25 100644 --- a/interface/web/sites/lib/lang/br_cron.lng +++ b/interface/web/sites/lib/lang/br_cron.lng @@ -8,19 +8,19 @@ $wb['run_hour_txt'] = 'Horas'; $wb['run_mday_txt'] = 'Dias do mês'; $wb['run_month_txt'] = 'Meses'; $wb['run_wday_txt'] = 'Dias da semana'; -$wb['command_txt'] = 'Comando a executar (os comandos serão executados via sh ou urls via wget)'; +$wb['command_txt'] = 'Comando a executar (comandos são executados através do sh, urls através do wget)'; $wb['limit_cron_txt'] = 'O limite de tarefas no cron foi alcançado.'; -$wb['limit_cron_frequency_txt'] = 'A frequência das tarefas no cron ultrapassou o limite permitido.'; -$wb['run_min_error_format'] = 'Formato dos minutos é inválido.'; -$wb['run_hour_error_format'] = 'Formato das horas é inválido.'; -$wb['run_mday_error_format'] = 'Formato dos dias do mês é inválido.'; -$wb['run_month_error_format'] = 'Formato dos meses é inválido.'; -$wb['run_wday_error_format'] = 'Formato dos dias da semana é inválido.'; -$wb['command_error_format'] = 'Formato de comando é inválido. Somente endereços url http/https são permitidos.'; -$wb['unknown_fieldtype_error'] = 'Um tipo desconhecido de campo foi usado.'; -$wb['server_id_error_empty'] = 'O ID do servidor está em branco.'; -$wb['limit_cron_url_txt'] = 'Somente url do cron. Por favor, insira uma url iniciando com \\"http://\\" e um comando do cron.'; -$wb['command_error_empty'] = 'Comando está em branco.'; -$wb['command_hint_txt'] = 'Você poderá usar, por exemplo: \\"/var/www/clients/clientX/webY/meu_script.sh\\" ou \\"http://www.dominio.com.br/path/script.php\\" e também a palavra reservada \\"[web_root]\\" substituÃdo por \\"/var/www/clients/clientX/webY/web\\".'; -$wb['log_output_txt'] = 'SaÃda do Log'; +$wb['limit_cron_frequency_txt'] = 'O limite de execuções das tarefas no cron foi alcançado.'; +$wb['run_min_error_format'] = 'Formato inválido para minutos.'; +$wb['run_hour_error_format'] = 'Formato inválido para horas.'; +$wb['run_mday_error_format'] = 'Formato inválido para dias do mês.'; +$wb['run_month_error_format'] = 'Formato inválido para meses.'; +$wb['run_wday_error_format'] = 'Formato inválido para dias da semana.'; +$wb['command_error_format'] = 'Comando possui formato inválido. Por favor, observe que em alguns casos somente chamadas http/https são permitidas.'; +$wb['unknown_fieldtype_error'] = 'Um tipo de campo desconhecido foi utilizado.'; +$wb['server_id_error_empty'] = 'O servidor está em branco.'; +$wb['command_hint_txt'] = 'ex.: /var/www/clients/clientX/webY/myscript.sh ou http://www.dominio.com.br/caminho/script.php, você pode utilizar a área reservada [web_root] para substituir /var/www/clients/clientX/webY/web.'; +$wb['log_output_txt'] = 'Gravar saÃda do log'; +$wb['limit_cron_url_txt'] = 'Somente URL no cron. Por favor insira uma URL iniciando com http:// como um comando no cron.'; +$wb['command_error_empty'] = 'Comando a executar está em branco.'; ?> diff --git a/interface/web/sites/lib/lang/br_cron_list.lng b/interface/web/sites/lib/lang/br_cron_list.lng index 89fe7932f6..31017512d3 100644 --- a/interface/web/sites/lib/lang/br_cron_list.lng +++ b/interface/web/sites/lib/lang/br_cron_list.lng @@ -1,10 +1,10 @@ <?php -$wb['list_head_txt'] = 'Tarefas no Cron'; -$wb['active_txt'] = 'Ativas'; +$wb['list_head_txt'] = 'Tarefas no cron'; +$wb['active_txt'] = 'Ativo'; $wb['server_id_txt'] = 'Servidor'; -$wb['run_min_txt'] = 'Minutos'; -$wb['run_hour_txt'] = 'Horas'; -$wb['run_mday_txt'] = 'Dias do mês'; +$wb['run_min_txt'] = 'Minuto'; +$wb['run_hour_txt'] = 'Hora'; +$wb['run_mday_txt'] = 'Dia do mês'; $wb['run_month_txt'] = 'Mês'; $wb['run_wday_txt'] = 'Dia da semana'; $wb['command_txt'] = 'Comando'; diff --git a/interface/web/sites/lib/lang/br_database.lng b/interface/web/sites/lib/lang/br_database.lng index ac916feef1..3690ee9cf8 100644 --- a/interface/web/sites/lib/lang/br_database.lng +++ b/interface/web/sites/lib/lang/br_database.lng @@ -3,47 +3,47 @@ $wb['server_id_txt'] = 'Servidor'; $wb['type_txt'] = 'Tipo'; $wb['database_name_txt'] = 'Nome do banco de dados'; $wb['database_user_txt'] = 'Usuário do banco de dados'; +$wb['database_ro_user_txt'] = 'Usuário somente leitura'; +$wb['optional_txt'] = 'opcional'; $wb['database_password_txt'] = 'Senha do banco de dados'; $wb['password_strength_txt'] = 'Dificuldade da senha'; $wb['database_charset_txt'] = 'Charset do banco de dados'; +$wb['select_dbuser_txt'] = 'Selecionar usuário'; +$wb['no_dbuser_txt'] = 'Nenhum'; $wb['remote_access_txt'] = 'Acesso Remoto'; +$wb['remote_ips_txt'] = 'Endereços IP para acesso remoto (separado por vÃrgula ou deixe em branco para <i>qualquer um</i>)'; +$wb['database_remote_error_ips'] = 'Ao menos um endereço IP informado é inválido.'; $wb['client_txt'] = 'Cliente'; $wb['active_txt'] = 'Ativo'; +$wb['database_client_differs_txt'] = 'O cliente do site pai e o banco de dados não coincidem.'; $wb['database_name_error_empty'] = 'Nome do banco de dados está em branco.'; -$wb['database_name_error_unique'] = 'Já existe um banco de dados com este nome no servidor. O nome escolhido deve ser exclusivo.'; -$wb['database_name_error_regex'] = 'Nome do banco de dados é inválido. Só é permitido para o nome do banco os caracteres: \'a-z\', \'A-Z\', \'0-9\' e o \'underscrore\'. Tamanho: 2 - 64 caracteres.'; -$wb['database_user_error_empty'] = 'Nome do usuário do banco de dados está em branco.'; -$wb['database_user_error_unique'] = 'Já existe um usuário do banco de dados com este nome no servidor. O nome escolhido deve ser exclusivo.'; -$wb['database_user_error_regex'] = 'Nome do usuário do banco de dados é inválido. Só é permitido para nome do usuário banco de dados os caracteres: \'a-z\', \'A-Z\', \'0-9\' e o \'underscrore\'. Tamanho: 2 - 64 caracteres.'; -$wb['limit_database_txt'] = 'O limite de bancos de dados permitido para esta conta foi alcançado.'; -$wb['database_name_change_txt'] = 'O nome do banco de dados não pode ser modificado.'; -$wb['database_charset_change_txt'] = 'O charset do banco de dados não pode ser modificado.'; -$wb['remote_ips_txt'] = 'Endereços IP Remotos (separados por vÃrgula. Em branco para <i>quaisquer IPs</i>)'; -$wb['database_remote_error_ips'] = 'Pelo menos um dos endereços IP informados não é válido.'; -$wb['database_name_error_len'] = 'Nome do banco de dados - {db} - é muito longo. 64 caracteres, incluindo o prefixo, é o limite permitido.'; -$wb['database_user_error_len'] = 'Nome do usuário do banco de dados \'{user}\' é muito longo. 16 caracteres, incluindo o prefixo, é o limite permitido.'; +$wb['database_name_error_unique'] = 'Já existe um banco de dados com este nome no servidor. Para ter um nome exclusivo, por exemplo, insira o domÃnio como prefixo do nome.'; +$wb['database_name_error_regex'] = 'Nome do banco de dados é inválido. O nome do banco de dados pode conter os seguintes caracteres: a-z, A-Z, 0-9 e underscore. Comprimento 2 - 64 caracteres.'; +$wb['database_user_error_empty'] = 'Usuário do banco de dados está em branco.'; +$wb['database_user_error_unique'] = 'Já existe um usuário de banco de dados com esse nome. Para ter um nome exclusivo, por exemplo, insira o domÃnio como prefixo do nome.'; +$wb['database_user_error_regex'] = 'Usuário do banco de dados é inválido. O nome do usuário pode conter os seguintes caracteres: a-z, A-Z, 0-9 e underscore. Comprimento: 2 a 16 caracteres.'; +$wb['limit_database_txt'] = 'O limite de banco de dados foi alcançado para esta conta.'; +$wb['database_name_change_txt'] = 'O nome do banco de dados não pode ser alterado.'; +$wb['database_user_missing_txt'] = 'Por favor, selecione um usuário para este banco de dados.'; +$wb['database_charset_change_txt'] = 'O charset do banco de dados não pode ser alterado.'; +$wb['database_name_error_len'] = 'Nome do banco de dados - {db} - muito longo. O comprimento do nome do banco de dados, incluindo o prefixo, são 64 caracteres.'; +$wb['database_user_error_len'] = 'Nome do usuário do banco de dados - {user} - muito longo. O comprimento do nome do usuário, incluindo o prefixo, são 16 caracteres.'; $wb['parent_domain_id_txt'] = 'Site'; -$wb['database_site_error_empty'] = 'Selecione o \\"site\\" ao qual o banco de dados pertence.'; -$wb['select_site_txt'] = '- Selecionar site -'; +$wb['database_site_error_empty'] = 'Selecione o site ao qual o banco de dados pertence.'; +$wb['select_site_txt'] = '-Selecionar Site-'; $wb['btn_save_txt'] = 'Salvar'; $wb['btn_cancel_txt'] = 'Cancelar'; -$wb['generate_password_txt'] = 'Gerar senha'; -$wb['repeat_password_txt'] = 'Repetir senha'; -$wb['password_mismatch_txt'] = 'A senhas não coincidem.'; -$wb['password_match_txt'] = 'A senhas coincidem.'; +$wb['generate_password_txt'] = 'Gerar Senha'; +$wb['repeat_password_txt'] = 'Repetir Senha'; +$wb['password_mismatch_txt'] = 'As senhas não coincidem.'; +$wb['password_match_txt'] = 'As senhas coincidem.'; $wb['globalsearch_resultslimit_of_txt'] = 'de'; $wb['globalsearch_resultslimit_results_txt'] = 'resultados'; $wb['globalsearch_noresults_text_txt'] = 'Sem resultados.'; $wb['globalsearch_noresults_limit_txt'] = '0 resultados'; $wb['globalsearch_searchfield_watermark_txt'] = 'Pesquisar'; $wb['globalsearch_suggestions_text_txt'] = 'Sugestões'; -$wb['database_ro_user_txt'] = 'Usuário do banco de dados somente leitura'; -$wb['optional_txt'] = 'opcional'; -$wb['select_dbuser_txt'] = 'Selecionar o usuário do banco de dados'; -$wb['no_dbuser_txt'] = 'Nenhum'; -$wb['database_client_differs_txt'] = 'O cliente do site e banco de dados não coincidem.'; -$wb['database_user_missing_txt'] = 'Por favor, selecione um usuário do banco de dados para este banco de dados.'; -$wb['limit_database_quota_txt'] = 'Cota para banco de dados'; -$wb['limit_database_quota_error_notint'] = 'O valor da cota para banco de dados deve ser um número positivo.'; -$wb['limit_database_quota_free_txt'] = 'Cota para banco de dados'; +$wb['limit_database_quota_txt'] = 'Cota do banco de dados'; +$wb['limit_database_quota_error_notint'] = 'O limite da cota do banco de dados deve ser um número.'; +$wb['limit_database_quota_free_txt'] = 'Limite da cota do banco de dados disponÃvel'; ?> diff --git a/interface/web/sites/lib/lang/br_database_admin_list.lng b/interface/web/sites/lib/lang/br_database_admin_list.lng index 4f8f6ba611..eef9b6e3fa 100644 --- a/interface/web/sites/lib/lang/br_database_admin_list.lng +++ b/interface/web/sites/lib/lang/br_database_admin_list.lng @@ -1,12 +1,12 @@ <?php -$wb['list_head_txt'] = 'Banco de dados'; +$wb['list_head_txt'] = 'Banco de Dados'; $wb['active_txt'] = 'Ativo'; -$wb['remote_access_txt'] = 'Acesso remoto'; +$wb['remote_access_txt'] = 'Acesso Remoto'; +$wb['type_txt'] = 'Tipo'; $wb['server_id_txt'] = 'Servidor'; $wb['database_user_txt'] = 'Usuário do banco de dados'; $wb['database_name_txt'] = 'Nome do banco de dados'; $wb['add_new_record_txt'] = 'Adicionar novo banco de dados'; $wb['sys_groupid_txt'] = 'Cliente'; $wb['parent_domain_id_txt'] = 'Site'; -$wb['type_txt'] = 'Tipo'; ?> diff --git a/interface/web/sites/lib/lang/br_database_list.lng b/interface/web/sites/lib/lang/br_database_list.lng index afb5d36a0d..b3d438e04b 100644 --- a/interface/web/sites/lib/lang/br_database_list.lng +++ b/interface/web/sites/lib/lang/br_database_list.lng @@ -1,11 +1,11 @@ <?php -$wb['list_head_txt'] = 'Bancos de Dados'; +$wb['list_head_txt'] = 'Banco de Dados'; $wb['active_txt'] = 'Ativo'; $wb['remote_access_txt'] = 'Acesso Remoto'; +$wb['type_txt'] = 'Tipo'; $wb['server_id_txt'] = 'Servidor'; $wb['database_user_txt'] = 'Usuário do banco de dados'; $wb['database_name_txt'] = 'Nome do banco de dados'; -$wb['add_new_record_txt'] = 'Adicionar um novo banco de dados'; +$wb['add_new_record_txt'] = 'Adicionar novo registro'; $wb['parent_domain_id_txt'] = 'Site'; -$wb['type_txt'] = 'Tipo'; ?> diff --git a/interface/web/sites/lib/lang/br_database_quota_stats_list.lng b/interface/web/sites/lib/lang/br_database_quota_stats_list.lng index 90202f115f..41fd305a3a 100644 --- a/interface/web/sites/lib/lang/br_database_quota_stats_list.lng +++ b/interface/web/sites/lib/lang/br_database_quota_stats_list.lng @@ -1,9 +1,9 @@ <?php -$wb['database_txt'] = 'Banco de dados'; +$wb['database_txt'] = 'Banco de Dados'; $wb['server_name_txt'] = 'Servidor'; $wb['client_txt'] = 'Cliente'; -$wb['used_txt'] = 'Espaço utilizado'; +$wb['used_txt'] = 'Espaço Utilizado'; $wb['quota_txt'] = 'Cota'; -$wb['percentage_txt'] = 'Espaço utilizado em %'; -$wb['list_head_txt'] = 'Cota para banco de dados'; +$wb['percentage_txt'] = 'Espaço Utilizado em %'; +$wb['list_head_txt'] = 'Cota do banco de dados'; ?> diff --git a/interface/web/sites/lib/lang/br_database_user.lng b/interface/web/sites/lib/lang/br_database_user.lng index 59b9fce627..193dbc7406 100644 --- a/interface/web/sites/lib/lang/br_database_user.lng +++ b/interface/web/sites/lib/lang/br_database_user.lng @@ -1,25 +1,25 @@ <?php -$wb['database_user_txt'] = 'Usuário'; +$wb['database_user_txt'] = 'Usuário do banco de Dados'; $wb['database_password_txt'] = 'Senha do banco de dados'; $wb['password_strength_txt'] = 'Dificuldade da senha'; $wb['client_txt'] = 'Cliente'; $wb['active_txt'] = 'Ativo'; $wb['database_user_error_empty'] = 'Usuário do banco de dados está em branco.'; -$wb['database_user_error_unique'] = 'Já existe um usuário do banco de dados com este nome no servidor. Para configurar um nome exclusivo, use como prefixo o domÃnio para o nome do usuário.'; -$wb['database_user_error_regex'] = 'Usuário do banco de dados inválido! O nome do usuário pode conter os seguintes caracteres: \'\\"a-z\', \'A-Z\', \'0-9\' e o \'underscore\'. Tamanho: 2 - 64 caracteres.'; -$wb['database_user_error_len'] = 'O usuário do banco de dados - {user} - é muito longo. O limite do nome do usuário, incluindo o prefixo, são 16 caracteres.'; +$wb['database_user_error_unique'] = 'Já existe este usuário no servidor. Para ter um nome exclusivo insira um prefixo como o domÃnio antes do nome.'; +$wb['database_user_error_regex'] = 'Nome do usuário de banco de dados inválido. O nome do usuário deve conter apenas os caracteres: a-z, A-Z, 0-9 e underscore. Comprimento: 2 - 64 caracteres.'; +$wb['database_user_error_len'] = 'Nome do usuário de banco de dados - {user} - muito longo. Comprimento permitido, incluindo o prefixo, não pode ultrapassr 16 caracteres.'; $wb['btn_save_txt'] = 'Salvar'; $wb['btn_cancel_txt'] = 'Cancelar'; -$wb['generate_password_txt'] = 'Gerar senha'; -$wb['repeat_password_txt'] = 'Repetir senha'; -$wb['password_mismatch_txt'] = 'A senhas não coincidem.'; -$wb['password_match_txt'] = 'A senhas coincidem.'; +$wb['generate_password_txt'] = 'Gerar Senha'; +$wb['repeat_password_txt'] = 'Repetir Senha'; +$wb['password_mismatch_txt'] = 'As senhas não coincidem.'; +$wb['password_match_txt'] = 'As senhas coincidem.'; $wb['globalsearch_resultslimit_of_txt'] = 'de'; $wb['globalsearch_resultslimit_results_txt'] = 'resultados'; $wb['globalsearch_noresults_text_txt'] = 'Sem resultados.'; -$wb['globalsearch_noresults_limit_txt'] = '0 resultados'; +$wb['globalsearch_noresults_limit_txt'] = '0 resultado(s)'; $wb['globalsearch_searchfield_watermark_txt'] = 'Pesquisar'; $wb['globalsearch_suggestions_text_txt'] = 'Sugestões'; -$wb['limit_database_user_txt'] = 'O limite de usuários do banco de dados foi alcançado.'; +$wb['limit_database_user_txt'] = 'O limite de usuários do banco de dados para esta conta foi alcançado.'; $wb['database_password_error_empty'] = 'Senha do banco de dados está em branco.'; ?> diff --git a/interface/web/sites/lib/lang/br_database_user_admin_list.lng b/interface/web/sites/lib/lang/br_database_user_admin_list.lng index 1d610bd1b0..bb21e97b1c 100644 --- a/interface/web/sites/lib/lang/br_database_user_admin_list.lng +++ b/interface/web/sites/lib/lang/br_database_user_admin_list.lng @@ -1,6 +1,6 @@ <?php -$wb['list_head_txt'] = 'Usuários'; -$wb['database_user_txt'] = 'Usuário'; +$wb['list_head_txt'] = 'Usuário do banco de dados'; +$wb['database_user_txt'] = 'Nome do usuário'; $wb['add_new_record_txt'] = 'Adicionar novo usuário'; $wb['sys_groupid_txt'] = 'Cliente'; ?> diff --git a/interface/web/sites/lib/lang/br_database_user_list.lng b/interface/web/sites/lib/lang/br_database_user_list.lng index 855265e958..d2e4332fc7 100644 --- a/interface/web/sites/lib/lang/br_database_user_list.lng +++ b/interface/web/sites/lib/lang/br_database_user_list.lng @@ -1,5 +1,5 @@ <?php -$wb['list_head_txt'] = 'Usuários'; -$wb['database_user_txt'] = 'Usuário'; +$wb['list_head_txt'] = 'Usuário do banco de dados'; +$wb['database_user_txt'] = 'Usuário do banco de dados'; $wb['add_new_record_txt'] = 'Adicionar novo usuário'; ?> diff --git a/interface/web/sites/lib/lang/br_ftp_sites_stats_list.lng b/interface/web/sites/lib/lang/br_ftp_sites_stats_list.lng index 93a02f6c25..e4fabd5959 100644 --- a/interface/web/sites/lib/lang/br_ftp_sites_stats_list.lng +++ b/interface/web/sites/lib/lang/br_ftp_sites_stats_list.lng @@ -1,10 +1,10 @@ <?php -$wb['list_head_txt'] = 'Tráfego ftp'; +$wb['list_head_txt'] = 'Tráfego FTP'; $wb['domain_txt'] = 'DomÃnio'; $wb['this_month_txt'] = 'Este mês'; $wb['last_month_txt'] = 'Último mês'; $wb['this_year_txt'] = 'Este ano'; $wb['last_year_txt'] = 'Último ano'; $wb['sum_txt'] = 'Soma (Download + Upload)'; -$wb['in_out_txt'] = 'DL/UL'; +$wb['in_out_txt'] = 'DOWN/UP'; ?> diff --git a/interface/web/sites/lib/lang/br_ftp_user.lng b/interface/web/sites/lib/lang/br_ftp_user.lng index 3df741ed9e..370fe0f366 100644 --- a/interface/web/sites/lib/lang/br_ftp_user.lng +++ b/interface/web/sites/lib/lang/br_ftp_user.lng @@ -1,35 +1,36 @@ <?php -$wb['uid_txt'] = 'UID'; -$wb['gid_txt'] = 'GID'; +$wb['uid_txt'] = 'ID do usuário (UID)'; +$wb['gid_txt'] = 'ID do grupo (GID)'; $wb['dir_txt'] = 'Diretório'; $wb['quota_files_txt'] = 'Cota de arquivos'; $wb['quota_files_unity_txt'] = 'Arquivos'; -$wb['ul_ratio_txt'] = 'Taxa para upload'; -$wb['dl_ratio_txt'] = 'Taxa para download'; -$wb['ul_bandwidth_txt'] = 'Banda para upload'; -$wb['dl_bandwidth_txt'] = 'Banda para download'; +$wb['ul_ratio_txt'] = 'Taxa de upload'; +$wb['dl_ratio_txt'] = 'Taxa de download'; +$wb['ul_bandwidth_txt'] = 'Banda de upload'; +$wb['dl_bandwidth_txt'] = 'Banda de download'; $wb['server_id_txt'] = 'Servidor'; $wb['parent_domain_id_txt'] = 'Site'; $wb['username_txt'] = 'Usuário'; $wb['password_txt'] = 'Senha'; $wb['password_strength_txt'] = 'Dificuldade da senha'; -$wb['quota_size_txt'] = 'Cota de disco'; +$wb['quota_size_txt'] = 'Cota do Disco'; $wb['active_txt'] = 'Ativo'; -$wb['limit_ftp_user_txt'] = 'o limite de usuários ftp para esta conta foi alcançado.'; -$wb['username_error_empty'] = 'Nome do usuário está em branco.'; +$wb['limit_ftp_user_txt'] = 'O limite de usuários ftp para esta conta foi alcançado.'; +$wb['username_error_empty'] = 'Usuário está em branco.'; $wb['username_error_unique'] = 'O nome do usuário deve ser exclusivo.'; -$wb['username_error_regex'] = 'O nome do usuário contém caracteres não permitidos.'; +$wb['username_error_regex'] = 'O nome do usuário possui caracteres não permitidos.'; $wb['quota_size_error_empty'] = 'Cota está em branco.'; +$wb['uid_error_empty'] = 'UID está em branco.'; $wb['uid_error_empty'] = 'GID está em branco.'; $wb['directory_error_empty'] = 'Diretório está em branco.'; -$wb['directory_error_notinweb'] = 'O diretório não está dentro do diretório web principal.'; +$wb['directory_error_notinweb'] = 'Diretório não está dentro do diretório web.'; $wb['parent_domain_id_error_empty'] = 'Nenhum site selecionado.'; -$wb['quota_size_error_regex'] = 'Cota: insira -1 para ilimitado ou um número > 0'; -$wb['dir_dot_error'] = 'Não é permitido \\"..\\" no caminho.'; -$wb['dir_slashdot_error'] = 'Não é permitido \\"./\\" no caminho.'; -$wb['generate_password_txt'] = 'Gerar senha'; -$wb['repeat_password_txt'] = 'Repetir senha'; -$wb['password_mismatch_txt'] = 'A senhas não coincidem.'; -$wb['password_match_txt'] = 'A senhas coincidem.'; -$wb['expires_txt'] = 'Expira em'; +$wb['quota_size_error_regex'] = 'Cota: insira -1 para ilimitado ou um número > 0.'; +$wb['dir_dot_error'] = 'Não é permitido ".." no caminho.'; +$wb['dir_slashdot_error'] = 'Não é permitido "./" no caminho.'; +$wb['generate_password_txt'] = 'Gerar Senha'; +$wb['repeat_password_txt'] = 'Repetir Senha'; +$wb['password_mismatch_txt'] = 'As senhas não coincidem.'; +$wb['password_match_txt'] = 'As senhas coincidem.'; +$wb['expires_txt'] = 'Expirar em'; ?> diff --git a/interface/web/sites/lib/lang/br_shell_user.lng b/interface/web/sites/lib/lang/br_shell_user.lng index 3cbc911ab3..8cd0520554 100644 --- a/interface/web/sites/lib/lang/br_shell_user.lng +++ b/interface/web/sites/lib/lang/br_shell_user.lng @@ -1,36 +1,36 @@ <?php +$wb['puser_txt'] = 'Usuário web'; +$wb['pgroup_txt'] = 'Grupo web'; $wb['shell_txt'] = 'Shell'; -$wb['dir_txt'] = 'Diretório'; +$wb['dir_txt'] = 'Diretório Base'; $wb['server_id_txt'] = 'Servidor'; $wb['parent_domain_id_txt'] = 'Site'; -$wb['username_txt'] = 'Nome do usuário'; +$wb['username_txt'] = 'Usuário'; $wb['password_txt'] = 'Senha'; $wb['password_strength_txt'] = 'Dificuldade da senha'; -$wb['chroot_txt'] = 'Shell enjaulado (chroot)'; +$wb['chroot_txt'] = 'Chroot Shell'; $wb['quota_size_txt'] = 'Cota'; $wb['active_txt'] = 'Ativo'; -$wb['username_error_empty'] = 'Nome de usuário está em branco.'; -$wb['username_error_unique'] = 'O nome de usuário deve ser exclusivo.'; -$wb['username_error_regex'] = 'O nome do usuário contém caracteres não permitidos.'; +$wb['username_error_empty'] = 'Nome do usuário está em branco.'; +$wb['username_error_unique'] = 'O nome do usuário deve ser exclusivo.'; +$wb['username_error_regex'] = 'O nome do usuário possui caracteres não permitidos.'; $wb['quota_size_error_empty'] = 'Cota está em branco.'; $wb['uid_error_empty'] = 'GID está em branco.'; -$wb['directory_error_empty'] = 'Diretório está em branco.'; -$wb['limit_shell_user_txt'] = 'O limite de usuários shell para esta conta foi alcançado.'; +$wb['directory_error_empty'] = 'O diretório está em branco.'; +$wb['limit_shell_user_txt'] = 'O limite de usuários foi alcançado.'; $wb['parent_domain_id_error_empty'] = 'Nenhum site selecionado.'; -$wb['puser_txt'] = 'Usuário web'; -$wb['pgroup_txt'] = 'Grupo web'; $wb['ssh_rsa_txt'] = 'Chave pública SSH-RSA (para acessos baseados em chave)'; -$wb['dir_dot_error'] = 'Não é permitido \\"..\\" no caminho.'; -$wb['dir_slashdot_error'] = 'Não é permitido \\"./\\" no caminho.'; -$wb['generate_password_txt'] = 'Gerar senha'; -$wb['repeat_password_txt'] = 'Repetir senha'; -$wb['password_mismatch_txt'] = 'A senhas não coincidem.'; -$wb['password_match_txt'] = 'A senhas coincidem.'; -$wb['username_must_not_exceed_32_chars_txt'] = 'O nome do usuário não pode ultrapassar 32 caracteres.'; -$wb['username_not_allowed_txt'] = 'O nome do usuário nao é permitido.'; -$wb['invalid_system_user_or_group_txt'] = 'Usuário ou grupo inválido'; -$wb['directory_error_regex'] = 'Diretório inválido'; -$wb['shell_error_regex'] = 'Shell inválido'; -$wb['invalid_username_txt'] = 'Usuário inválido'; -$wb['directory_error_notinweb'] = 'O diretório deve estar dentro do diretório web principal.'; +$wb['dir_dot_error'] = 'Não é permitido \'..\' no caminho.'; +$wb['dir_slashdot_error'] = 'Não é permitido \'./\' no caminho.'; +$wb['generate_password_txt'] = 'Gerar Senha'; +$wb['repeat_password_txt'] = 'Repetir Senha'; +$wb['password_mismatch_txt'] = 'As senhas não coincidem.'; +$wb['password_match_txt'] = 'As senhas coincidem.'; +$wb['username_must_not_exceed_32_chars_txt'] = 'O nome do usuário não pode exceder 32 caracteres.'; +$wb['username_not_allowed_txt'] = 'O nome do usuário não é permitido.'; +$wb['invalid_system_user_or_group_txt'] = 'Usuário ou grupo inválido.'; +$wb['directory_error_regex'] = 'Diretório inválido.'; +$wb['shell_error_regex'] = 'Shell inválido.'; +$wb['invalid_username_txt'] = 'Usuário inválido.'; +$wb['directory_error_notinweb'] = 'O diretório deve estar dentro do diretório web.'; ?> diff --git a/interface/web/sites/lib/lang/br_shell_user_list.lng b/interface/web/sites/lib/lang/br_shell_user_list.lng index 587c988ccd..21bb3d4dfd 100644 --- a/interface/web/sites/lib/lang/br_shell_user_list.lng +++ b/interface/web/sites/lib/lang/br_shell_user_list.lng @@ -1,5 +1,5 @@ <?php -$wb['list_head_txt'] = 'Usuário shell'; +$wb['list_head_txt'] = 'Usuário do Shell'; $wb['active_txt'] = 'Ativo'; $wb['server_id_txt'] = 'Servidor'; $wb['parent_domain_id_txt'] = 'Site'; diff --git a/interface/web/sites/lib/lang/br_user_quota_stats_list.lng b/interface/web/sites/lib/lang/br_user_quota_stats_list.lng index fe41b018dc..d979210483 100644 --- a/interface/web/sites/lib/lang/br_user_quota_stats_list.lng +++ b/interface/web/sites/lib/lang/br_user_quota_stats_list.lng @@ -1,9 +1,9 @@ <?php -$wb['list_head_txt'] = 'Cota do Disco'; -$wb['domain_txt'] = 'DomÃnio'; +$wb['list_head_txt'] = 'Cota do disco para site'; +$wb['domain_txt'] = 'DomÃnio/Site'; $wb['system_user_txt'] = 'Usuário Linux'; $wb['used_txt'] = 'Espaço utilizado'; -$wb['hard_txt'] = 'Limite'; +$wb['hard_txt'] = 'Limite para bloqueio'; $wb['soft_txt'] = 'Limite para alerta'; $wb['files_txt'] = 'Arquivos simples'; ?> diff --git a/interface/web/sites/lib/lang/br_web_aliasdomain.lng b/interface/web/sites/lib/lang/br_web_aliasdomain.lng index 4acadb2c54..d6142fd374 100644 --- a/interface/web/sites/lib/lang/br_web_aliasdomain.lng +++ b/interface/web/sites/lib/lang/br_web_aliasdomain.lng @@ -1,7 +1,7 @@ <?php -$wb['domain_txt'] = 'Apelido de domÃnio'; -$wb['backup_interval_txt'] = 'Intervalo de backup'; -$wb['backup_copies_txt'] = 'Limite de cópias do backup'; +$wb['domain_txt'] = 'Alias de domÃnio'; +$wb['backup_interval_txt'] = 'Intervalo entre backups'; +$wb['backup_copies_txt'] = 'Número de cópias do backup'; $wb['ssl_state_txt'] = 'Estado'; $wb['ssl_locality_txt'] = 'Cidade'; $wb['ssl_organisation_txt'] = 'Empresa'; @@ -10,64 +10,64 @@ $wb['ssl_country_txt'] = 'PaÃs'; $wb['ssl_key_txt'] = 'Chave'; $wb['ssl_request_txt'] = 'Requisição'; $wb['ssl_cert_txt'] = 'Certificado'; -$wb['ssl_bundle_txt'] = 'Pacote'; +$wb['ssl_bundle_txt'] = 'Agrupar'; $wb['ssl_action_txt'] = 'Ação'; $wb['ssl_domain_txt'] = 'DomÃnio'; $wb['server_id_txt'] = 'Servidor'; -$wb['web_folder_error_regex'] = 'Pasta inválida inserida. Por favor, não use barra \\"/\\".'; +$wb['web_folder_error_regex'] = 'Pasta web é inválida. Por favor não utilize o caractere barra(/).'; $wb['type_txt'] = 'Tipo'; -$wb['parent_domain_id_txt'] = 'Site pai'; +$wb['parent_domain_id_txt'] = 'Site Pai'; $wb['redirect_type_txt'] = 'Tipo de redirecionamento'; -$wb['redirect_path_txt'] = 'Caminho do redirecionamento'; +$wb['redirect_path_txt'] = 'Caminho para o redirecionamento'; $wb['active_txt'] = 'Ativo'; -$wb['document_root_txt'] = 'Pasta personalizada documentroot'; +$wb['document_root_txt'] = 'Documentroot'; $wb['system_user_txt'] = 'Usuário Linux'; $wb['system_group_txt'] = 'Grupo Linux'; $wb['ip_address_txt'] = 'Endereço IPv4'; -$wb['ipv6_address_txt'] = 'Endreço IPv6'; -$wb['vhost_type_txt'] = 'Tipo VHost'; -$wb['hd_quota_txt'] = 'Cota de Disco'; +$wb['ipv6_address_txt'] = 'Endereço IPv6'; +$wb['vhost_type_txt'] = 'Tipo do VHost'; +$wb['hd_quota_txt'] = 'Cota do Disco'; $wb['traffic_quota_txt'] = 'Cota de Tráfego'; $wb['cgi_txt'] = 'CGI'; $wb['ssi_txt'] = 'SSI'; -$wb['errordocs_txt'] = 'Pasta personalizada errordocuments'; +$wb['errordocs_txt'] = 'Proprietário do Error-Documents'; $wb['subdomain_txt'] = 'SubdomÃnio automático'; $wb['ssl_txt'] = 'SSL'; $wb['suexec_txt'] = 'SuEXEC'; $wb['php_txt'] = 'PHP'; $wb['client_txt'] = 'Cliente'; $wb['limit_web_domain_txt'] = 'O limite de domÃnios de site para esta conta foi alcançado.'; -$wb['limit_web_aliasdomain_txt'] = 'O limite de apelidos de domÃnio para esta conta foi alcançado.'; -$wb['limit_web_subdomain_txt'] = 'Limite subdomÃnios de site para esta conta foi alcançado.'; +$wb['limit_web_aliasdomain_txt'] = 'O limite de alias de domÃnios para esta conta foi alcançado.'; +$wb['limit_web_subdomain_txt'] = 'O limite de subdomÃnios de site para esta conta foi alcançado.'; $wb['apache_directives_txt'] = 'Diretivas do apache'; -$wb['domain_error_empty'] = 'O domÃnio está em branco.'; -$wb['domain_error_unique'] = 'Já existe um site, subdomÃnio ou apelido de domÃnio com este nome.'; -$wb['domain_error_regex'] = 'DomÃnio inválido!'; +$wb['domain_error_empty'] = 'O campo "DomÃnio" está em branco.'; +$wb['domain_error_unique'] = 'Já existe um site, subdomÃnio ou alias de domÃnio com este nome.'; +$wb['domain_error_regex'] = 'O campo "DomÃnio" é inválido.'; $wb['domain_error_autosub'] = 'Já existe um subdomÃnio com estas configurações.'; -$wb['hd_quota_error_empty'] = 'Cota de disco é 0 ou está em branco.'; +$wb['hd_quota_error_empty'] = 'Cota do disco é 0 ou está em branco.'; $wb['traffic_quota_error_empty'] = 'Cota de tráfego está em branco.'; -$wb['error_ssl_state_empty'] = 'Campo \'Estado\' está em branco.'; -$wb['error_ssl_locality_empty'] = 'Campo \'Cidade\' está em branco.'; -$wb['error_ssl_organisation_empty'] = 'Campo \'Empresa\' está em branco.'; -$wb['error_ssl_organisation_unit_empty'] = 'Campo \'Departamento\' está em branco.'; -$wb['error_ssl_country_empty'] = 'Campo \'PaÃs\' está em branco.'; -$wb['error_ssl_cert_empty'] = 'Campo \'Certificado\' está em branco.'; +$wb['error_ssl_state_empty'] = 'O campo "Estado" está em branco.'; +$wb['error_ssl_locality_empty'] = 'O campo "Cidade" está em branco.'; +$wb['error_ssl_organisation_empty'] = 'O campo "Empresa" está em branco.'; +$wb['error_ssl_organisation_unit_empty'] = 'O campo "Departamento" está em branco.'; +$wb['error_ssl_country_empty'] = 'O campo "PaÃs" está em branco.'; +$wb['error_ssl_cert_empty'] = 'O campo "Certificado" está em branco.'; $wb['client_group_id_txt'] = 'Cliente'; $wb['stats_password_txt'] = 'Configurar senha para estatÃsticas web'; -$wb['allow_override_txt'] = 'Diretiva apache AllowOverride'; -$wb['limit_web_quota_free_txt'] = 'Cota máxima de disco disponÃvel'; -$wb['ssl_state_error_regex'] = 'Campo \'Estado\' é inválido. São caracteres válidos: \'a-z\', \'0-9\' e \'.,-_\'.'; -$wb['ssl_locality_error_regex'] = 'Campo \'Cidade\' é inválido. São caracteres válidos: \'a-z\', \'0-9\' e \'.,-_\'.'; -$wb['ssl_organisation_error_regex'] = 'Campo \'Empresa\' é inválido. São caracteres válidos: \'a-z\', \'0-9\' e \'.,-_\'.'; -$wb['ssl_organistaion_unit_error_regex'] = 'Campo \'Departamento\' é inválido. São caracteres válidos: \'a-z\', \'0-9\' e \'.,-_\'.'; -$wb['ssl_country_error_regex'] = 'Campo \'PaÃs\' é inválido. São caracteres válidos: \'A-Z\'.'; -$wb['limit_traffic_quota_free_txt'] = 'Cota máxima de tráfego disponÃvel'; -$wb['redirect_error_regex'] = 'Caminho de redirecionamento é inválido. Exemplos de caminhos válidos: \\"/teste/\\" ou \\"http://www.dominio.com.br/teste/\\".'; -$wb['php_open_basedir_txt'] = 'Diretório open_basedir do PHP'; -$wb['traffic_quota_exceeded_txt'] = 'Cota de tráfego excedida'; +$wb['allow_override_txt'] = 'Diretiva Apache AllowOverride'; +$wb['limit_web_quota_free_txt'] = 'Limite da cota de disco disponÃvel'; +$wb['ssl_state_error_regex'] = 'O campo "Estado" é inválido. São caracteres válidos: "a-z", "0-9", ".", "-", e "_".'; +$wb['ssl_locality_error_regex'] = 'O campo "Cidade" é inválido. São caracteres válidos: "a-z", "0-9", ".", "-", e "_".'; +$wb['ssl_organisation_error_regex'] = 'O campo "Empresa" é inválido. São caracteres válidos: "a-z", "0-9", ".", "-", e "_".'; +$wb['ssl_organistaion_unit_error_regex'] = 'O campo "Departamento" é inválido. São caracteres válidos: "a-z", "0-9", ".", "-", e "_".'; +$wb['ssl_country_error_regex'] = 'O campo "PaÃs" é inválido. São caracteres válidos: "A-Z".'; +$wb['limit_traffic_quota_free_txt'] = 'Limite da cota de tráfego disponÃvel'; +$wb['redirect_error_regex'] = 'Caminho de redirecionamento inválido. São redirecionamentos válidos, por exemplo, /teste/ ou http://www.dominio.com.br/teste/'; +$wb['php_open_basedir_txt'] = 'Diretório open_basedir do php'; +$wb['traffic_quota_exceeded_txt'] = 'O limite da cota de tráfego foi alcançado.'; $wb['ruby_txt'] = 'Ruby'; $wb['stats_user_txt'] = 'Usuário de estatÃsticas web'; -$wb['stats_type_txt'] = 'Programa de estatÃsticas web'; +$wb['stats_type_txt'] = 'Sistema de estatÃsticas web'; $wb['custom_php_ini_txt'] = 'Configurações personalizadas do php.ini'; $wb['none_txt'] = 'Nenhum'; $wb['disabled_txt'] = 'Desabilitado'; @@ -77,39 +77,39 @@ $wb['save_certificate_txt'] = 'Salvar certificado'; $wb['create_certificate_txt'] = 'Adicionar certificado'; $wb['delete_certificate_txt'] = 'Remover certificado'; $wb['nginx_directives_txt'] = 'Diretivas do nginx'; -$wb['seo_redirect_txt'] = 'Redirecionamento SEO'; -$wb['non_www_to_www_txt'] = 'Diretivas Non-www -> www'; -$wb['www_to_non_www_txt'] = 'Diretivas www -> non-www'; -$wb['php_fpm_use_socket_txt'] = 'Usar soquete para o PHP-FPM'; -$wb['error_no_sni_txt'] = 'O SNI para SSL não está ativo neste servidor. Você só pode habilitar um certificado para cada endereço IP.'; +$wb['seo_redirect_txt'] = 'Diretivas SEO'; +$wb['non_www_to_www_txt'] = 'non-www -> www'; +$wb['www_to_non_www_txt'] = 'www -> non-www'; +$wb['php_fpm_use_socket_txt'] = 'Usar socket para php-fpm'; +$wb['error_no_sni_txt'] = 'SNI para SSL não está habilitado neste servidor. Somente poderá ser habilitado um certificado para cada endereço IP.'; $wb['python_txt'] = 'Python'; $wb['perl_txt'] = 'Perl'; -$wb['pm_max_children_txt'] = 'Diretiva PHP-FPM pm.max_children'; -$wb['pm_start_servers_txt'] = 'Diretiva PHP-FPM pm.start_servers'; -$wb['pm_min_spare_servers_txt'] = 'Diretiva PHP-FPM pm.min_spare_servers'; -$wb['pm_max_spare_servers_txt'] = 'Diretiva PHP-FPM pm.max_spare_servers'; -$wb['error_php_fpm_pm_settings_txt'] = 'Os valores permitidos para configurações do PHP-FPM pm são: pm.max_children >= pm.max_spare_servers >= pm.start_servers >= pm.min_spare_servers > 0'; -$wb['pm_max_children_error_regex'] = 'O valor do PHP-FPM pm.max_children deve ser um número positivo.'; -$wb['pm_start_servers_error_regex'] = 'O valor do PHP-FPM pm.start_servers deve ser um número positivo.'; -$wb['pm_min_spare_servers_error_regex'] = 'O valor do PHP-FPM pm.min_spare_servers deve ser um número positivo.'; -$wb['pm_max_spare_servers_error_regex'] = 'O valor do PHP-FPM pm.max_spare_servers deve ser um número positivo.'; -$wb['hd_quota_error_regex'] = 'Valor inválido para cota de disco.'; -$wb['traffic_quota_error_regex'] = 'Valor inválido para cota de tráfego.'; -$wb['fastcgi_php_version_txt'] = 'Versão do PHP'; -$wb['pm_txt'] = 'Gerenciador de Processos do PHP-FPM'; -$wb['pm_process_idle_timeout_txt'] = 'Diretiva PHP-FPM pm.process_idle_timeout'; -$wb['pm_max_requests_txt'] = 'Diretiva PHP-FPM pm.max_requests'; -$wb['pm_process_idle_timeout_error_regex'] = 'O valor do PHP-FPM pm.process_idle_timeout deve ser um número positivo.'; -$wb['pm_max_requests_error_regex'] = 'O valor do PHP-FPM pm.max_requests deve ser um inteiro >= 0.'; -$wb['pm_ondemand_hint_txt'] = 'Por favor, observe que você deve ter uma versão do PHP >= 5.3.9 para usar o gerenciador de processos sob demanda. Se você selecionar processos sob demanda usando uma versão antiga do PHP, o PHP não iniciará novamente!'; -$wb['generate_password_txt'] = 'Gerar senha'; -$wb['repeat_password_txt'] = 'Repetir senha'; -$wb['password_mismatch_txt'] = 'A senhas não coincidem.'; -$wb['password_match_txt'] = 'A senhas coincidem.'; -$wb['available_php_directive_snippets_txt'] = 'Diretivas de trechos de código do php disponÃveis:'; -$wb['available_apache_directive_snippets_txt'] = 'Diretivas de trechos de código do apache disponÃveis:'; -$wb['available_nginx_directive_snippets_txt'] = 'Diretivas de trechos de código do nginx disponÃveis:'; +$wb['pm_max_children_txt'] = 'PHP-FPM pm.max_children'; +$wb['pm_start_servers_txt'] = 'PHP-FPM pm.start_servers'; +$wb['pm_min_spare_servers_txt'] = 'PHP-FPM pm.min_spare_servers'; +$wb['pm_max_spare_servers_txt'] = 'PHP-FPM pm.max_spare_servers'; +$wb['error_php_fpm_pm_settings_txt'] = 'Valores das configurações do php-fpm podem ser: pm.max_children >= pm.max_spare_servers >= pm.start_servers >= pm.min_spare_servers > 0'; +$wb['pm_max_children_error_regex'] = 'PHP-FPM pm.max_children deve ter um valor inteiro positivo.'; +$wb['pm_start_servers_error_regex'] = 'PHP-FPM pm.start_servers deve ter um valor inteiro positivo.'; +$wb['pm_min_spare_servers_error_regex'] = 'PHP-FPM pm.min_spare_servers deve ter um valor inteiro positivo.'; +$wb['pm_max_spare_servers_error_regex'] = 'PHP-FPM pm.max_spare_servers deve ter um valor inteiro positivo.'; +$wb['hd_quota_error_regex'] = 'Cota do disco é inválida.'; +$wb['traffic_quota_error_regex'] = 'Cota de tráfego é inválida.'; +$wb['fastcgi_php_version_txt'] = 'Versão do php'; +$wb['pm_txt'] = 'Gerenciador de Processos do php-fpm'; +$wb['pm_process_idle_timeout_txt'] = 'PHP-FPM pm.process_idle_timeout'; +$wb['pm_max_requests_txt'] = 'PHP-FPM pm.max_requests'; +$wb['pm_process_idle_timeout_error_regex'] = 'PHP-FPM pm.process_idle_timeout deve ter um valor inteiro positivo.'; +$wb['pm_max_requests_error_regex'] = 'PHP-FPM pm.max_requests deve ter um valor >= 0.'; +$wb['pm_ondemand_hint_txt'] = 'Por favor, observe que é necessário uma versão do php >= 5.3.9 para utilizar o gerenciador de processos por demanda. Se for selecionado por demanda com uma versão inferior do php, o mesmo não iniciará mais!'; +$wb['generate_password_txt'] = 'Gerar Senha'; +$wb['repeat_password_txt'] = 'Repetir Senha'; +$wb['password_mismatch_txt'] = 'As senhas não coincidem.'; +$wb['password_match_txt'] = 'As senhas coincidem.'; +$wb['available_php_directive_snippets_txt'] = 'Diretivas de trecho de código do php disponÃveis:'; +$wb['available_apache_directive_snippets_txt'] = 'Diretivas de trecho de código do apache disponÃveis:'; +$wb['available_nginx_directive_snippets_txt'] = 'Diretivas de trecho de código do nginx disponÃveis:'; $wb['proxy_directives_txt'] = 'Diretivas do proxy'; $wb['available_proxy_directive_snippets_txt'] = 'Diretivas de trechos de código do proxy disponÃveis:'; -$wb['Domain'] = 'Apelido de domÃnio'; +$wb['Domain'] = 'Alias de DomÃnio'; ?> diff --git a/interface/web/sites/lib/lang/br_web_aliasdomain_list.lng b/interface/web/sites/lib/lang/br_web_aliasdomain_list.lng index 153aa33400..770ec725e4 100644 --- a/interface/web/sites/lib/lang/br_web_aliasdomain_list.lng +++ b/interface/web/sites/lib/lang/br_web_aliasdomain_list.lng @@ -1,13 +1,13 @@ <?php -$wb['list_head_txt'] = 'Apelidos de domÃnios'; +$wb['list_head_txt'] = 'Alias de DomÃnio'; $wb['active_txt'] = 'Ativo'; $wb['server_id_txt'] = 'Servidor'; $wb['parent_domain_id_txt'] = 'Site'; -$wb['domain_txt'] = 'Apelido de domÃnio'; -$wb['add_new_record_txt'] = 'Adicionar novo apelido'; -$wb['domain_error_empty'] = 'DomÃnio está em branco.'; +$wb['domain_txt'] = 'Alias de DomÃnio'; +$wb['add_new_record_txt'] = 'Adicionar novo alias de domÃnio'; +$wb['domain_error_empty'] = 'O domÃnio está em branco.'; $wb['domain_error_unique'] = 'O domÃnio deve ser exclusivo.'; -$wb['domain_error_regex'] = 'DomÃnio inválido!'; +$wb['domain_error_regex'] = 'O domÃnio é inválido.'; $wb['no_redirect_txt'] = 'Sem redirecionamento'; $wb['no_flag_txt'] = 'Sem marcas'; $wb['none_txt'] = 'Nenhum'; diff --git a/interface/web/sites/lib/lang/br_web_backup_list.lng b/interface/web/sites/lib/lang/br_web_backup_list.lng index 137f8bc7e0..82883c1f29 100644 --- a/interface/web/sites/lib/lang/br_web_backup_list.lng +++ b/interface/web/sites/lib/lang/br_web_backup_list.lng @@ -3,19 +3,20 @@ $wb['list_head_txt'] = 'Backups existentes'; $wb['date_txt'] = 'Data'; $wb['backup_type_txt'] = 'Tipo'; $wb['filename_txt'] = 'Arquivo de backup'; -$wb['restore_backup_txt'] = 'Restaurar backup'; -$wb['download_backup_txt'] = 'Baixar backup'; -$wb['download_info_txt'] = 'O arquivo de backup estará disponÃvel para download na pasta de backup do site em alguns minutos.'; -$wb['restore_info_txt'] = 'Restauração do backup iniciada. Esta ação poderá levar vários minutos para ser concluÃda. Aguarde.'; -$wb['restore_confirm_txt'] = 'A restauração do backup reescreverá os arquivos existes do seu site. Tem certeza que deseja restaurar este backup?'; -$wb['download_pending_txt'] = 'Já existe um download deste backup em execução.'; -$wb['restore_pending_txt'] = 'Já existe uma restauração deste backup em execução.'; -$wb['delete_backup_txt'] = 'Remover backup'; -$wb['delete_info_txt'] = 'Remoção do backup iniciada. Esta ação poderá levar vários minutos para ser concluÃda. Aguarde.'; +$wb['filesize_txt'] = 'Tamanho do arquivo'; +$wb['restore_backup_txt'] = 'Restaurar'; +$wb['download_backup_txt'] = 'Download'; +$wb['download_info_txt'] = 'O arquivo de backup estará disponÃvel para download na pasta de backup dentro de alguns minutos.'; +$wb['restore_info_txt'] = 'Restauração do backup foi iniciada. Esta ação demora vários minutos para concluir.'; +$wb['restore_confirm_txt'] = 'Restaurar arquivo de backup reescreve os arquivos existentes do site. Tem certeza que deseja restaurar este backup?'; +$wb['download_pending_txt'] = 'Já existe um download de backup em andamento.'; +$wb['restore_pending_txt'] = 'Já existe uma restauração de backup em andamento.'; +$wb['delete_backup_txt'] = 'Remover Backup'; +$wb['delete_info_txt'] = 'Remoção de backup foi iniciada. Esta ação demora vários minutos para concluir.'; $wb['delete_confirm_txt'] = 'Tem certeza que deseja remover este backup?'; -$wb['delete_pending_txt'] = 'Já existe uma remoção deste backup em execução.'; -$wb['backup_type_mysql'] = 'Banco de dados MySQL'; +$wb['delete_pending_txt'] = 'Já existe uma remoção de backup em andamento.'; +$wb['backup_type_mongodb'] = 'MongoDB'; +$wb['backup_type_mysql'] = 'MySQL'; $wb['backup_type_web'] = 'Arquivos do site'; -$wb['filesize_txt'] = 'Tamanho'; -$wb['backup_type_mongodb'] = 'Banco de dados MongoDB'; + ?> diff --git a/interface/web/sites/lib/lang/br_web_childdomain.lng b/interface/web/sites/lib/lang/br_web_childdomain.lng index ecff0c2ae8..fbbb40635e 100644 --- a/interface/web/sites/lib/lang/br_web_childdomain.lng +++ b/interface/web/sites/lib/lang/br_web_childdomain.lng @@ -4,117 +4,117 @@ $wb['ssl_locality_txt'] = 'Cidade'; $wb['ssl_organisation_txt'] = 'Empresa'; $wb['ssl_organisation_unit_txt'] = 'Departamento'; $wb['ssl_country_txt'] = 'PaÃs'; -$wb['ssl_request_txt'] = 'Requisição SSL'; -$wb['ssl_cert_txt'] = 'Certificado SSL'; -$wb['ssl_bundle_txt'] = 'Pacote'; +$wb['ssl_request_txt'] = 'Requisição'; +$wb['ssl_cert_txt'] = 'Certificado'; +$wb['ssl_bundle_txt'] = 'Agrupar'; $wb['ssl_action_txt'] = 'Ação'; $wb['server_id_txt'] = 'Servidor'; $wb['domain_txt'] = 'DomÃnio'; $wb['type_txt'] = 'Tipo'; -$wb['parent_domain_id_txt'] = 'Site pai'; +$wb['parent_domain_id_txt'] = 'Site Pai'; $wb['redirect_type_txt'] = 'Tipo de redirecionamento'; -$wb['redirect_path_txt'] = 'Caminho para redirecionamento'; +$wb['redirect_path_txt'] = 'Caminho para o redirecionamento'; $wb['active_txt'] = 'Ativo'; $wb['document_root_txt'] = 'Documentroot'; $wb['system_user_txt'] = 'Usuário Linux'; $wb['system_group_txt'] = 'Grupo Linux'; $wb['ip_address_txt'] = 'Endereço IP'; -$wb['vhost_type_txt'] = 'Tipo de vhost'; -$wb['hd_quota_txt'] = 'Cota de disco'; -$wb['traffic_quota_txt'] = 'Cota de tráfego'; +$wb['vhost_type_txt'] = 'Tipo do VHost'; +$wb['hd_quota_txt'] = 'Cota do Disco'; +$wb['traffic_quota_txt'] = 'Cota de Tráfego'; $wb['cgi_txt'] = 'CGI'; $wb['ssi_txt'] = 'SSI'; $wb['ssl_txt'] = 'SSL'; $wb['suexec_txt'] = 'SuEXEC'; $wb['php_txt'] = 'PHP'; $wb['client_txt'] = 'Cliente'; -$wb['limit_web_domain_txt'] = 'o limite de domÃnios de site para esta conta foi alcançado.'; -$wb['limit_web_aliasdomain_txt'] = 'O limite de apelidos de domÃnio de site para esta conta foi alcançado.'; +$wb['limit_web_domain_txt'] = 'O limite de domÃnios de site para esta conta foi alcançado.'; +$wb['limit_web_aliasdomain_txt'] = 'O limite de alias de domÃnios para esta conta foi alcançado.'; $wb['limit_web_subdomain_txt'] = 'O limite de subdomÃnios de site para esta conta foi alcançado.'; $wb['apache_directives_txt'] = 'Diretivas do apache'; -$wb['domain_error_empty'] = 'DomÃnio está em branco.'; -$wb['domain_error_unique'] = 'Já existe apelido de domÃnio ou subdomÃnio com este nome.'; -$wb['domain_error_regex'] = 'Nome de domÃnio é inválido.'; -$wb['host_txt'] = 'Nome do servidor'; -$wb['redirect_error_regex'] = 'Caminho de redirecionamento é inválido. Exemplo de caminho válido: \\"/teste/\\" ou \\"http://www.dominio.com.br/teste/\\".'; +$wb['domain_error_empty'] = 'O domÃnio está em branco.'; +$wb['domain_error_unique'] = 'Já existe um site, subdomÃnio ou alias de domÃnio com este nome.'; +$wb['domain_error_regex'] = 'O domÃnio é inválido.'; +$wb['domain_error_acme_invalid'] = 'DomÃnio genérico inválido não permitido.'; +$wb['domain_error_wildcard'] = 'Curingas não são permitidos para subdomÃnios.'; +$wb['host_txt'] = 'Host'; +$wb['redirect_error_regex'] = 'Caminho de redirecionamento inválido. Redirecionamentos válidos são, por ex.: /teste/ ou http://www.dominio.com.br/teste/'; $wb['no_redirect_txt'] = 'Sem redirecionamento'; $wb['no_flag_txt'] = 'Sem marcas'; -$wb['domain_error_wildcard'] = 'Curingas para subdomÃnios não são permitidos.'; $wb['proxy_directives_txt'] = 'Diretivas do proxy'; $wb['available_proxy_directive_snippets_txt'] = 'Diretivas de trechos de código do proxy disponÃveis:'; -$wb['error_proxy_requires_url'] = 'O tipo de redirecionamento \\"proxy\\" exige uma url no caminho de redirecionamento.'; -$wb['backup_interval_txt'] = 'Intervalo de backup'; -$wb['backup_copies_txt'] = 'Limite de cópias do backup'; +$wb['error_proxy_requires_url'] = 'O tipo de redirecionamento "proxy" exige uma URL como caminho de redirecionamento.'; +$wb['backup_interval_txt'] = 'Intervalo entre backups'; +$wb['backup_copies_txt'] = 'Número de cópias do backup'; $wb['ssl_key_txt'] = 'Chave'; -$wb['ssl_domain_txt'] = 'DomÃnio do SSL'; -$wb['web_folder_error_regex'] = 'Pasta inválida informada. Por favor não use uma barra - \\"/\\".'; +$wb['ssl_domain_txt'] = 'DomÃnio'; +$wb['web_folder_error_regex'] = 'Pasta web é inválida. Por favor não utilize o caractere barra(/).'; $wb['ipv6_address_txt'] = 'Endereço IPv6'; -$wb['errordocs_txt'] = 'Pasta personalizada Error-Documents'; +$wb['errordocs_txt'] = 'Proprietário do Error-Documents'; $wb['subdomain_txt'] = 'SubdomÃnio automático'; $wb['domain_error_autosub'] = 'Já existe um subdomÃnio com estas configurações.'; -$wb['hd_quota_error_empty'] = 'Cota de disco é 0 ou está em branco.'; +$wb['hd_quota_error_empty'] = 'Cota do disco é 0 ou está em branco.'; $wb['traffic_quota_error_empty'] = 'Cota de tráfego está em branco.'; -$wb['error_ssl_state_empty'] = 'Campo \'Estado\' está em branco.'; -$wb['error_ssl_locality_empty'] = 'Campo \'Cidade\' está em branco.'; -$wb['error_ssl_organisation_empty'] = 'Campo \'Organização\' está em branco.'; -$wb['error_ssl_organisation_unit_empty'] = 'Campo \'Departamento\' está em branco.'; -$wb['error_ssl_country_empty'] = 'Campo \'PaÃs\' está em branco.'; -$wb['error_ssl_cert_empty'] = 'Campo \'Certificado\' em branco'; +$wb['error_ssl_state_empty'] = 'O campo "Estado" está em branco.'; +$wb['error_ssl_locality_empty'] = 'O campo "Cidade" está em branco.'; +$wb['error_ssl_organisation_empty'] = 'O campo "Empresa" está em branco.'; +$wb['error_ssl_organisation_unit_empty'] = 'O campo "Departamento" está em branco.'; +$wb['error_ssl_country_empty'] = 'O campo "PaÃs" está em branco.'; +$wb['error_ssl_cert_empty'] = 'O campo "Certificado" está em branco.'; $wb['client_group_id_txt'] = 'Cliente'; $wb['stats_password_txt'] = 'Configurar senha para estatÃsticas web'; -$wb['allow_override_txt'] = 'Diretiva apache AllowOverride'; -$wb['limit_web_quota_free_txt'] = 'Cota de disco'; -$wb['ssl_state_error_regex'] = 'Campo \'Estado\' é inválido. São caracteres válidos: \'a-z\', \'0-9\' e \'.,-_\'.'; -$wb['ssl_locality_error_regex'] = 'Campo \'Cidade\' é inválido. São caracteres válidos: \'a-z\', \'0-9\' e \'.,-_\'.'; -$wb['ssl_organisation_error_regex'] = 'Campo \'Empresa\' é inválido. São caracteres válidos: \'a-z\', \'0-9\' e \'.,-_\'.'; -$wb['ssl_organistaion_unit_error_regex'] = 'Campo \'Departamento\' é inválido. São caracteres válidos: \'a-z\', \'0-9\' e \'.,-_\'.'; -$wb['ssl_country_error_regex'] = 'Campo \'PaÃs\' é inválido. São caracteres válidos: \'A-Z\'.'; -$wb['limit_traffic_quota_free_txt'] = 'Cota de tráfego'; +$wb['allow_override_txt'] = 'Diretiva Apache AllowOverride'; +$wb['limit_web_quota_free_txt'] = 'Limite da cota de disco disponÃvel'; +$wb['ssl_state_error_regex'] = 'O campo "Estado" é inválido. Caracteres válidos são: "a-z", "0-9",".", "-", e "_".'; +$wb['ssl_locality_error_regex'] = 'O campo "Cidade" é inválido. Caracteres válidos são: "a-z", "0-9", ".", "-", e "_".'; +$wb['ssl_organisation_error_regex'] = 'O campo "Empresa" é inválido. Caracteres válidos são: "a-z", "0-9", ".", "-", e "_".'; +$wb['ssl_organistaion_unit_error_regex'] = 'O campo "Departamento" é inválido. Caracteres válidos são: "a-z", "0-9", ".", "-", e "_".'; +$wb['ssl_country_error_regex'] = 'O campo "PaÃs" é inválido. Caracteres válidos são: "A-Z".'; +$wb['limit_traffic_quota_free_txt'] = 'Limite da cota de tráfego disponÃvel'; $wb['php_open_basedir_txt'] = 'Diretório open_basedir do php'; -$wb['traffic_quota_exceeded_txt'] = 'Cota de tráfego alcançada'; +$wb['traffic_quota_exceeded_txt'] = 'O limite da cota de tráfego foi alcançado.'; $wb['ruby_txt'] = 'Ruby'; -$wb['stats_user_txt'] = 'Usuário para estatÃsticas web'; -$wb['stats_type_txt'] = 'Programa para estatÃsticas web'; +$wb['stats_user_txt'] = 'Usuário de estatÃsticas web'; +$wb['stats_type_txt'] = 'Sistema de estatÃsticas web'; $wb['custom_php_ini_txt'] = 'Configurações personalizadas do php.ini'; $wb['none_txt'] = 'Nenhum'; -$wb['disabled_txt'] = 'Inativo'; +$wb['disabled_txt'] = 'Desabilitado'; $wb['save_certificate_txt'] = 'Salvar certificado'; $wb['create_certificate_txt'] = 'Adicionar certificado'; $wb['delete_certificate_txt'] = 'Remover certificado'; $wb['nginx_directives_txt'] = 'Diretivas do nginx'; -$wb['seo_redirect_txt'] = 'Redirecionamento SEO'; -$wb['non_www_to_www_txt'] = 'Diretivas Non-www -> www'; -$wb['www_to_non_www_txt'] = 'Diretivas www -> non-www'; -$wb['php_fpm_use_socket_txt'] = 'Usar soquete para PHP-FPM'; -$wb['error_no_sni_txt'] = 'SNI para SSL não está ativo neste servidor. Você só pode ativar um certificado SSL para cada endereço IP.'; +$wb['seo_redirect_txt'] = 'Diretivas SEO'; +$wb['non_www_to_www_txt'] = 'non-www -> www'; +$wb['www_to_non_www_txt'] = 'www -> non-www'; +$wb['php_fpm_use_socket_txt'] = 'Usar socket para php-fpm'; +$wb['error_no_sni_txt'] = 'SNI para SSL não está habilitado neste servidor. Somente poderá ser habilitado um certificado para cada endereço IP.'; $wb['python_txt'] = 'Python'; $wb['perl_txt'] = 'Perl'; -$wb['pm_max_children_txt'] = 'Diretiva PHP-FPM pm.max_children'; -$wb['pm_start_servers_txt'] = 'Diretiva PHP-FPM pm.start_servers'; -$wb['pm_min_spare_servers_txt'] = 'Diretiva PHP-FPM pm.min_spare_servers'; -$wb['pm_max_spare_servers_txt'] = 'Diretiva PHP-FPM pm.max_spare_servers'; -$wb['error_php_fpm_pm_settings_txt'] = 'Valores para as configurações do PHP-FPM pm devem obedecer as seguintes condições: pm.max_children >= pm.max_spare_servers >= pm.start_servers >= pm.min_spare_servers > 0'; -$wb['pm_max_children_error_regex'] = 'O valor do PHP-FPM pm.max_children deve ser um número positivo.'; -$wb['pm_start_servers_error_regex'] = 'O valor do PHP-FPM pm.start_servers deve ser um número positivo.'; -$wb['pm_min_spare_servers_error_regex'] = 'O valor do PHP-FPM pm.min_spare_servers deve ser um número positivo.'; -$wb['pm_max_spare_servers_error_regex'] = 'O valor do PHP-FPM pm.max_spare_servers deve ser um número positivo.'; -$wb['hd_quota_error_regex'] = 'Valor da cota de disco é inválido.'; -$wb['traffic_quota_error_regex'] = 'Valor da cota de tráfego é inválido.'; -$wb['fastcgi_php_version_txt'] = 'Versão do PHP'; -$wb['pm_txt'] = 'Gerenciador de Processos do PHP-FPM'; -$wb['pm_process_idle_timeout_txt'] = 'Diretiva PHP-FPM pm.process_idle_timeout'; -$wb['pm_max_requests_txt'] = 'Diretiva PHP-FPM pm.max_requests'; -$wb['pm_process_idle_timeout_error_regex'] = 'O valor do PHP-FPM pm.process_idle_timeout deve ser um número positivo.'; -$wb['pm_max_requests_error_regex'] = 'O valor do PHP-FPM pm.max_requests deve ser um inteiro >= 0.'; -$wb['pm_ondemand_hint_txt'] = 'Por favor, observe que você deve ter uma versão do PHP >= 5.3.9 para usar o gerenciador de processos sob demanda. Se você selecionar processos sob demanda usando uma versão antiga do PHP, o PHP não iniciará novamente!'; -$wb['generate_password_txt'] = 'Gerar senha'; -$wb['repeat_password_txt'] = 'Repetir senha'; -$wb['password_mismatch_txt'] = 'A senhas não coincidem.'; -$wb['password_match_txt'] = 'A senhas coincidem.'; -$wb['available_php_directive_snippets_txt'] = 'Diretivas de trechos de código do php disponÃveis:'; -$wb['available_apache_directive_snippets_txt'] = 'Diretivas de trechos de código do apache disponÃveis:'; -$wb['available_nginx_directive_snippets_txt'] = 'Diretivas de trechos de código do nginx disponÃveis:'; -$wb['Domain'] = 'Apelido de domÃnio'; -$wb['ssl_letsencrypt_exclude_txt'] = 'Não adicionar certificado Let\'s Encrypt'; -$wb['domain_error_acme_invalid'] = 'Domain name acme.invalid not permitted.'; +$wb['pm_max_children_txt'] = 'PHP-FPM pm.max_children'; +$wb['pm_start_servers_txt'] = 'PHP-FPM pm.start_servers'; +$wb['pm_min_spare_servers_txt'] = 'PHP-FPM pm.min_spare_servers'; +$wb['pm_max_spare_servers_txt'] = 'PHP-FPM pm.max_spare_servers'; +$wb['error_php_fpm_pm_settings_txt'] = 'Valores das configurações do php-fpm podem ser: pm.max_children >= pm.max_spare_servers >= pm.start_servers >= pm.min_spare_servers > 0'; +$wb['pm_max_children_error_regex'] = 'PHP-FPM pm.max_children deve ter um valor inteiro positivo.'; +$wb['pm_start_servers_error_regex'] = 'PHP-FPM pm.start_servers deve ter um valor inteiro positivo.'; +$wb['pm_min_spare_servers_error_regex'] = 'PHP-FPM pm.min_spare_servers deve ter um valor inteiro positivo.'; +$wb['pm_max_spare_servers_error_regex'] = 'PHP-FPM pm.max_spare_servers deve ter um valor inteiro positivo.'; +$wb['hd_quota_error_regex'] = 'Cota do disco é inválida.'; +$wb['traffic_quota_error_regex'] = 'Cota de tráfego é inválida.'; +$wb['fastcgi_php_version_txt'] = 'Versão do php'; +$wb['pm_txt'] = 'Gerenciador de processos do php-fpm'; +$wb['pm_process_idle_timeout_txt'] = 'PHP-FPM pm.process_idle_timeout'; +$wb['pm_max_requests_txt'] = 'PHP-FPM pm.max_requests'; +$wb['pm_process_idle_timeout_error_regex'] = 'PHP-FPM pm.process_idle_timeout deve ter um valor inteiro positivo.'; +$wb['pm_max_requests_error_regex'] = 'PHP-FPM pm.max_requests deve ter um valor >= 0.'; +$wb['pm_ondemand_hint_txt'] = 'Por favor, observe que é necessário uma versão do php >= 5.3.9 para utilizar o gerenciador de processos por demanda. Se for selecionado por demanda com uma versão inferior do php, o mesmo não iniciará mais!'; +$wb['generate_password_txt'] = 'Gerar Senha'; +$wb['repeat_password_txt'] = 'Repetir Senha'; +$wb['password_mismatch_txt'] = 'As senhas não coincidem.'; +$wb['password_match_txt'] = 'As senhas coincidem.'; +$wb['available_php_directive_snippets_txt'] = 'Diretivas de trecho de código do php disponÃveis:'; +$wb['available_apache_directive_snippets_txt'] = 'Diretivas de trecho de código do apache disponÃveis:'; +$wb['available_nginx_directive_snippets_txt'] = 'Diretivas de trecho de código do nginx disponÃveis:'; +$wb['Domain'] = 'Alias de domÃnio'; +$wb['ssl_letsencrypt_exclude_txt'] = 'Sem certificado Let \'s Encrypt'; ?> diff --git a/interface/web/sites/lib/lang/br_web_childdomain_list.lng b/interface/web/sites/lib/lang/br_web_childdomain_list.lng index 20b559b128..583ae2d360 100644 --- a/interface/web/sites/lib/lang/br_web_childdomain_list.lng +++ b/interface/web/sites/lib/lang/br_web_childdomain_list.lng @@ -4,15 +4,15 @@ $wb['active_txt'] = 'Ativo'; $wb['server_id_txt'] = 'Servidor'; $wb['parent_domain_id_txt'] = 'Site'; $wb['domain_txt'] = 'SubdomÃnio'; -$wb['domain_error_empty'] = 'DomÃnio está em branco.'; -$wb['domain_error_unique'] = 'O nome do domÃnio deve ser exclusivo.'; -$wb['domain_error_regex'] = 'Nome do domÃnio é inválido.'; +$wb['add_new_subdomain_txt'] = 'Adicionar novo subdomÃnio'; +$wb['add_new_aliasdomain_txt'] = 'Adicionar novo alias de domÃnio'; +$wb['domain_error_empty'] = 'O domÃnio está em branco.'; +$wb['domain_error_unique'] = 'O domÃnio deve ser exclusivo.'; +$wb['domain_error_regex'] = 'O domÃnio é inválido.'; +$wb['domain_error_acme_invalid'] = 'DomÃnio genérico inválido não permitido.'; $wb['no_redirect_txt'] = 'Sem redirecionamento'; $wb['no_flag_txt'] = 'Sem marcas'; $wb['none_txt'] = 'Nenhum'; -$wb['add_new_subdomain_txt'] = 'Adicionar novo subdomÃnio'; -$wb['add_new_aliasdomain_txt'] = 'Adicionar novo apelido'; -$wb['aliasdomain_list_head_txt'] = 'Apelidos de domÃnios'; +$wb['aliasdomain_list_head_txt'] = 'Alias de domÃnios'; $wb['subdomain_list_head_txt'] = 'SubdomÃnios'; -$wb['domain_error_acme_invalid'] = 'Domain name acme.invalid not permitted.'; ?> diff --git a/interface/web/sites/lib/lang/br_web_domain.lng b/interface/web/sites/lib/lang/br_web_domain.lng index 662fdb407c..1a2a2b301b 100644 --- a/interface/web/sites/lib/lang/br_web_domain.lng +++ b/interface/web/sites/lib/lang/br_web_domain.lng @@ -1,116 +1,115 @@ <?php +$wb['backup_interval_txt'] = 'Intervalo entre backups'; +$wb['backup_copies_txt'] = 'Número de cópias do backup'; $wb['ssl_state_txt'] = 'Estado'; $wb['ssl_locality_txt'] = 'Cidade'; $wb['ssl_organisation_txt'] = 'Empresa'; $wb['ssl_organisation_unit_txt'] = 'Departamento'; $wb['ssl_country_txt'] = 'PaÃs'; +$wb['ssl_key_txt'] = 'Chave'; $wb['ssl_request_txt'] = 'Requisição'; $wb['ssl_cert_txt'] = 'Certificado'; -$wb['ssl_bundle_txt'] = 'Pacote'; +$wb['ssl_bundle_txt'] = 'Agrupar'; $wb['ssl_action_txt'] = 'Ação'; +$wb['ssl_domain_txt'] = 'DomÃnio'; $wb['server_id_txt'] = 'Servidor'; $wb['domain_txt'] = 'DomÃnio'; +$wb['web_folder_error_regex'] = 'Pasta web é inválida. Por favor não utilize o caractere barra(/).'; $wb['type_txt'] = 'Tipo'; -$wb['parent_domain_id_txt'] = 'Site pai'; +$wb['parent_domain_id_txt'] = 'Site Pai'; $wb['redirect_type_txt'] = 'Tipo de redirecionamento'; -$wb['redirect_path_txt'] = 'Caminho do redirecionamento'; +$wb['redirect_path_txt'] = 'Caminho para o redirecionamento'; $wb['active_txt'] = 'Ativo'; -$wb['document_root_txt'] = 'Diretório Documentroot'; +$wb['document_root_txt'] = 'Documentroot'; $wb['system_user_txt'] = 'Usuário Linux'; $wb['system_group_txt'] = 'Grupo Linux'; -$wb['ip_address_txt'] = 'Endereço IP'; -$wb['vhost_type_txt'] = 'Tipo de VHost'; -$wb['hd_quota_txt'] = 'Cota de disco'; -$wb['traffic_quota_txt'] = 'Cota de tráfego'; +$wb['ip_address_txt'] = 'Endereço IPv4'; +$wb['ipv6_address_txt'] = 'Endereço IPv6'; +$wb['vhost_type_txt'] = 'Tipo do VHost'; +$wb['hd_quota_txt'] = 'Cota do Disco'; +$wb['traffic_quota_txt'] = 'Cota de Tráfego'; $wb['cgi_txt'] = 'CGI'; $wb['ssi_txt'] = 'SSI'; -$wb['errordocs_txt'] = 'Páginas de erro personalizadas (error-documents)'; +$wb['errordocs_txt'] = 'Proprietário do Error-Documents'; $wb['subdomain_txt'] = 'SubdomÃnio automático'; $wb['ssl_txt'] = 'SSL'; $wb['suexec_txt'] = 'SuEXEC'; $wb['php_txt'] = 'PHP'; $wb['client_txt'] = 'Cliente'; $wb['limit_web_domain_txt'] = 'O limite de domÃnios de site para esta conta foi alcançado.'; -$wb['limit_web_aliasdomain_txt'] = 'O limite de apelidos de domÃnio domÃnio para esta conta foi alcançado.'; -$wb['limit_web_subdomain_txt'] = 'O limite de subdomÃnios para esta conta foi alcançado.'; +$wb['limit_web_aliasdomain_txt'] = 'O limite de alias de domÃnios para esta conta foi alcançado.'; +$wb['limit_web_subdomain_txt'] = 'O limite de subdomÃnios de site para esta conta foi alcançado.'; $wb['apache_directives_txt'] = 'Diretivas do apache'; -$wb['domain_error_empty'] = 'DomÃnio está em branco.'; -$wb['domain_error_unique'] = 'Já existe site, apelido ou subdomÃnio com este nome'; -$wb['domain_error_regex'] = 'Nome de domÃnio é inválido.'; -$wb['hd_quota_error_empty'] = 'Cota de disco está em branco.'; +$wb['domain_error_empty'] = 'O campo "DomÃnio" está em branco.'; +$wb['domain_error_unique'] = 'Já existe um site, subdomÃnio ou alias de domÃnio com este nome.'; +$wb['domain_error_regex'] = 'O campo "DomÃnio" é inválido.'; +$wb['domain_error_autosub'] = 'Já existe um subdomÃnio com estas configurações.'; +$wb['hd_quota_error_empty'] = 'Cota do disco é 0 ou está em branco.'; $wb['traffic_quota_error_empty'] = 'Cota de tráfego está em branco.'; -$wb['error_ssl_state_empty'] = 'Campo \'Estado\' está em branco.'; -$wb['error_ssl_locality_empty'] = 'Campo \'Cidade\' está em branco.'; -$wb['error_ssl_organisation_empty'] = 'Campo \'Empresa\' está em branco.'; -$wb['error_ssl_organisation_unit_empty'] = 'Campo \'Departamento\' está em branco.'; -$wb['error_ssl_country_empty'] = 'Campo \'PaÃs\' está em branco.'; +$wb['error_ssl_state_empty'] = 'O campo "Estado" está em branco.'; +$wb['error_ssl_locality_empty'] = 'O campo "Cidade" está em branco.'; +$wb['error_ssl_organisation_empty'] = 'o Campo "Empresa" está em branco.'; +$wb['error_ssl_organisation_unit_empty'] = 'O campo "Departamento" está em branco.'; +$wb['error_ssl_country_empty'] = 'O campo "PaÃs" está em branco.'; +$wb['error_ssl_cert_empty'] = 'O campo "Certificado" está em branco.'; $wb['client_group_id_txt'] = 'Cliente'; -$wb['stats_password_txt'] = 'Senha do diretório de estatÃsticas'; -$wb['ssl_domain_txt'] = 'DomÃnio'; -$wb['allow_override_txt'] = 'Permitir Sobrescrever'; -$wb['limit_web_quota_free_txt'] = 'Cota máxima de disco disponÃvel'; -$wb['ssl_state_error_regex'] = 'Campo \'Estado\' é inválido. São caracteres válidos: \'a-z\', \'0-9\' e \'.,-_\'.'; -$wb['ssl_locality_error_regex'] = 'Campo \'Cidade\' é inválido. São caracteres válidos: \'a-z\', \'0-9\' e \'.,-_\'.'; -$wb['ssl_organisation_error_regex'] = 'Campo \'Empresa\' é inválido. São caracteres válidos: \'a-z\', \'0-9\' e \'.,-_\'.'; -$wb['ssl_organistaion_unit_error_regex'] = 'Campo \'Departamento\' é inválido. São caracteres válidos: \\"a-z\\", \'0-9\' e \'.,-_\'.'; -$wb['ssl_country_error_regex'] = 'Campo \'PaÃs\' é inválido. São caracteres válidos: \'A-Z\'.'; -$wb['limit_traffic_quota_free_txt'] = 'Cota máxima de tráfego disponÃvel'; -$wb['redirect_error_regex'] = 'Caminho de redirecionamento é inválido. Exemplos de caminhos válidos: \\"/teste/\\" ou \\"http://www.dominio.com.br/teste/\\".'; +$wb['stats_password_txt'] = 'Configurar senha para estatÃsticas web'; +$wb['allow_override_txt'] = 'Diretiva Apache AllowOverride'; +$wb['limit_web_quota_free_txt'] = 'Limite da cota do disco disponÃvel'; +$wb['ssl_locality_error_regex'] = 'O campo "Cidade" é inválido. São caracteres válidos: "a-z", "0-9", ".", "-", e "_".'; +$wb['ssl_organisation_error_regex'] = 'O campo "Empresa" é inválido. São caracteres válidos: "a-z", "0-9", ".", "-", e "_".'; +$wb['ssl_organistaion_unit_error_regex'] = 'O campo "Departamento" é inválido. São caracteres válidos: "a-z", "0-9", ".", "-", e "_".'; +$wb['ssl_country_error_regex'] = 'O campo "PaÃs" é inválido. São caracteres válidos: "A-Z".'; +$wb['limit_traffic_quota_free_txt'] = 'Limite da cota de tráfego disponÃvel'; +$wb['redirect_error_regex'] = 'Caminho de redirecionamento inválido. Redirecionamentos válidos são, por ex.: /teste/ ou http://www.dominio.com.br/teste/'; $wb['php_open_basedir_txt'] = 'Diretório open_basedir do php'; -$wb['traffic_quota_exceeded_txt'] = 'Cota de tráfego excedida'; -$wb['backup_interval_txt'] = 'Intervalo de backup'; -$wb['backup_copies_txt'] = 'Limite de cópias'; +$wb['traffic_quota_exceeded_txt'] = 'O limite da cota de tráfego foi alcançado.'; $wb['ruby_txt'] = 'Ruby'; -$wb['stats_user_txt'] = 'Usuário para estatÃsticas web'; -$wb['stats_type_txt'] = 'Tipo de estatÃsticas web'; -$wb['custom_php_ini_txt'] = 'php.ini personalizado'; -$wb['error_ssl_cert_empty'] = 'Campo \'Certificado\' vazio'; -$wb['none_txt'] = 'Nenhuma'; +$wb['stats_user_txt'] = 'Usuário de estatÃsticas web'; +$wb['stats_type_txt'] = 'Sistema de estatÃsticas web'; +$wb['custom_php_ini_txt'] = 'Configurações personalizadas do php.ini'; +$wb['none_txt'] = 'Nenhum'; $wb['disabled_txt'] = 'Desabilitado'; $wb['no_redirect_txt'] = 'Sem redirecionamento'; $wb['no_flag_txt'] = 'Sem marcas'; -$wb['save_certificate_txt'] = 'Salvar certificado'; -$wb['create_certificate_txt'] = 'Adicionar certificado'; -$wb['delete_certificate_txt'] = 'Remover certificado'; -$wb['ipv6_address_txt'] = 'Endereço IPv6'; -$wb['nginx_directives_txt'] = 'Diretivas nginx'; -$wb['seo_redirect_txt'] = 'Redirecionamento SEO'; -$wb['non_www_to_www_txt'] = 'Diretiva Non-www -> www'; -$wb['www_to_non_www_txt'] = 'Diretiva www -> non-www'; -$wb['php_fpm_use_socket_txt'] = 'Usar soquete para PHP-FPM'; -$wb['error_no_sni_txt'] = 'O SNI para SSL não está ativo neste servidor. Você só pode habilitar um certificado para cada endereço IP.'; +$wb['save_certificate_txt'] = 'Salvar Certificado'; +$wb['create_certificate_txt'] = 'Adicionar Certificado'; +$wb['delete_certificate_txt'] = 'Remover Certificado'; +$wb['nginx_directives_txt'] = 'Diretivas do nginx'; +$wb['seo_redirect_txt'] = 'Diretivas SEO'; +$wb['non_www_to_www_txt'] = 'non-www -> www'; +$wb['www_to_non_www_txt'] = 'www -> non-www'; +$wb['php_fpm_use_socket_txt'] = 'Usar socket para php-fpm'; +$wb['error_no_sni_txt'] = 'SNI para SSL não está habilitado neste servidor. Somente poderá ser habilitado um certificado para cada endereço IP.'; $wb['python_txt'] = 'Python'; -$wb['pm_max_children_txt'] = 'Diretiva PHP-FPM pm.max_children'; -$wb['pm_start_servers_txt'] = 'Diretiva PHP-FPM pm.start_servers'; -$wb['pm_min_spare_servers_txt'] = 'Diretiva PHP-FPM pm.min_spare_servers'; -$wb['pm_max_spare_servers_txt'] = 'Diretiva PHP-FPM pm.max_spare_servers'; -$wb['error_php_fpm_pm_settings_txt'] = 'Valores para as configurações do PHP-FPM pm devem obedecer as seguintes condições: pm.max_children >= pm.max_spare_servers >= pm.start_servers >= pm.min_spare_servers > 0'; -$wb['pm_max_children_error_regex'] = 'O valor do PHP-FPM pm.max_children deve ser um número positivo.'; -$wb['pm_start_servers_error_regex'] = 'O valor do PHP-FPM pm.start_servers deve ser um inteiro positvo.'; -$wb['pm_min_spare_servers_error_regex'] = 'O valor do PHP-FPM pm.min_spare_servers deve ser um número positivo.'; -$wb['pm_max_spare_servers_error_regex'] = 'O valor do PHP-FPM pm.max_spare_servers deve ser um número positivo.'; -$wb['hd_quota_error_regex'] = 'Valor da cota de disco é é inválido.'; -$wb['traffic_quota_error_regex'] = 'Valor da cota de tráfego é é inválido.'; -$wb['ssl_key_txt'] = 'Chave'; $wb['perl_txt'] = 'Perl'; -$wb['fastcgi_php_version_txt'] = 'Versão do PHP'; -$wb['pm_txt'] = 'Gerenciador de Processos do PHP-FPM'; -$wb['pm_process_idle_timeout_txt'] = 'Diretiva PHP-FPM pm.process_idle_timeout'; -$wb['pm_max_requests_txt'] = 'Diretiva PHP-FPM pm.max_requests'; -$wb['pm_process_idle_timeout_error_regex'] = 'O valor do PHP-FPM pm.process_idle_timeout deve ser um número positivo.'; -$wb['pm_max_requests_error_regex'] = 'O valor do PHP-FPM pm.max_requests deve ser um inteiro >= 0.'; -$wb['pm_ondemand_hint_txt'] = 'Por favor, observe que você deve ter uma versão do PHP >= 5.3.9 para usar o gerenciador de processos sob demanda. Se você selecionar processos sob demanda usando uma versão antiga do PHP, o PHP não iniciará novamente!'; -$wb['generate_password_txt'] = 'Gerar senha'; -$wb['repeat_password_txt'] = 'Repetir senha'; -$wb['password_mismatch_txt'] = 'A senhas não coincidem.'; -$wb['password_match_txt'] = 'A senhas coincidem.'; -$wb['web_folder_error_regex'] = 'Pasta informada é inválida! Por favor não insira barra \\"/\\".'; -$wb['domain_error_autosub'] = 'Já existe um subdomÃnio com estas configurações.'; -$wb['available_php_directive_snippets_txt'] = 'Diretivas de trechos de código do php:'; -$wb['available_apache_directive_snippets_txt'] = 'Diretivas de trechos de código do apache:'; -$wb['available_nginx_directive_snippets_txt'] = 'Diretivas de trechos de código do nginx:'; +$wb['pm_max_children_txt'] = 'PHP-FPM pm.max_children'; +$wb['pm_start_servers_txt'] = 'PHP-FPM pm.start_servers'; +$wb['pm_min_spare_servers_txt'] = 'PHP-FPM pm.min_spare_servers'; +$wb['pm_max_spare_servers_txt'] = 'PHP-FPM pm.max_spare_servers'; +$wb['error_php_fpm_pm_settings_txt'] = 'Valores das configurações do php-fpm podem ser: pm.max_children >= pm.max_spare_servers >= pm.start_servers >= pm.min_spare_servers > 0'; +$wb['pm_max_children_error_regex'] = 'PHP-FPM pm.max_children deve ter um valor inteiro positivo.'; +$wb['pm_start_servers_error_regex'] = 'PHP-FPM pm.start_servers deve ter um valor inteiro positivo.'; +$wb['pm_min_spare_servers_error_regex'] = 'PHP-FPM pm.min_spare_servers deve ter um valor inteiro positivo.'; +$wb['pm_max_spare_servers_error_regex'] = 'PHP-FPM pm.max_spare_servers deve ter um valor inteiro positivo.'; +$wb['hd_quota_error_regex'] = 'Cota do disco é inválida.'; +$wb['traffic_quota_error_regex'] = 'Cota de tráfego é inválida.'; +$wb['fastcgi_php_version_txt'] = 'Versão do php'; +$wb['pm_txt'] = 'Gerenciador de Processos do php-fpm'; +$wb['pm_process_idle_timeout_txt'] = 'PHP-FPM pm.process_idle_timeout'; +$wb['pm_max_requests_txt'] = 'PHP-FPM pm.max_requests'; +$wb['pm_process_idle_timeout_error_regex'] = 'PHP-FPM pm.process_idle_timeout deve ter um valor inteiro positivo.'; +$wb['pm_max_requests_error_regex'] = 'PHP-FPM pm.max_requests deve ter um valor >= 0.'; +$wb['pm_ondemand_hint_txt'] = 'Por favor, observe que é necessário uma versão do php >= 5.3.9 para utilizar o gerenciador de processos por demanda. Se for selecionado por demanda com uma versão inferior do php, o mesmo não iniciará mais!'; +$wb['generate_password_txt'] = 'Gerar Senha'; +$wb['repeat_password_txt'] = 'Repetir Senha'; +$wb['password_mismatch_txt'] = 'As senhas não coincidem.'; +$wb['password_match_txt'] = 'As senhas coincidem.'; +$wb['available_php_directive_snippets_txt'] = 'Diretivas de trecho de código do php disponÃveis:'; +$wb['available_apache_directive_snippets_txt'] = 'Diretivas de trecho de código do apache disponÃveis:'; +$wb['available_nginx_directive_snippets_txt'] = 'Diretivas de trecho de código do nginx disponÃveis:'; $wb['proxy_directives_txt'] = 'Diretivas do proxy'; -$wb['available_proxy_directive_snippets_txt'] = 'Diretivas de trechos de código do proxy:'; +$wb['available_proxy_directive_snippets_txt'] = 'Diretivas de trechos de código do proxy disponÃveis:'; $wb['no_server_error'] = 'Nenhum servidor selecionado.'; $wb['no_backup_txt'] = 'Sem backup'; $wb['daily_backup_txt'] = 'Diário'; @@ -118,20 +117,20 @@ $wb['weekly_backup_txt'] = 'Semanal'; $wb['monthly_backup_txt'] = 'Mensal'; $wb['rewrite_rules_txt'] = 'Reescrever Regras'; $wb['invalid_rewrite_rules_txt'] = 'Regras de reescrita inválidas'; -$wb['allowed_rewrite_rule_directives_txt'] = 'Diretivas Permitidas:'; +$wb['allowed_rewrite_rule_directives_txt'] = 'Diretivas permitidas:'; $wb['configuration_error_txt'] = 'ERRO DE CONFIGURAÇÃO'; $wb['variables_txt'] = 'Variáveis'; -$wb['added_by_txt'] = 'Cadastrado por'; +$wb['added_by_txt'] = 'Cadastrador por'; $wb['added_date_txt'] = 'Data do cadastro'; -$wb['backup_excludes_txt'] = 'Diretórios excluÃdos'; -$wb['backup_excludes_note_txt'] = '(Separar múltiplos diretórios por vÃrgula. Exemplo: web/cache/*,web/backup)'; -$wb['backup_excludes_error_regex'] = 'Os diretórios excluÃdos contém caracteres inválidos!'; +$wb['backup_excludes_txt'] = 'Diretórios ExcluÃdos'; +$wb['backup_excludes_note_txt'] = '(Separar múltiplos diretórios por vÃrgulas. Exemplo: web/cache/*, web/backup)'; +$wb['backup_excludes_error_regex'] = 'Os diretórios excluÃdos possuem caracteres inválidos.'; $wb['invalid_custom_php_ini_settings_txt'] = 'Configurações do php.ini inválidas'; -$wb['invalid_system_user_or_group_txt'] = 'Configurações inválidas para usuário ou grupo do sistema'; -$wb['apache_directive_blocked_error'] = 'Diretiva do apache bloqueada por configurações de segurança:'; -$wb['http_port_txt'] = 'Porta HTTP'; -$wb['https_port_txt'] = 'Porta HTTPS'; -$wb['http_port_error_regex'] = 'Porta HTTP inválida.'; -$wb['https_port_error_regex'] = 'Porta HTTPS inválida.'; -$wb['nginx_directive_blocked_error'] = 'Nginx directive blocked by security settings:'; +$wb['invalid_system_user_or_group_txt'] = 'Usuário ou grupo inválido.'; +$wb['apache_directive_blocked_error'] = 'Diretivas do apache bloqueadas pelas configurações de segurança:'; +$wb['http_port_txt'] = 'Porta http'; +$wb['https_port_txt'] = 'Porta https'; +$wb['http_port_error_regex'] = 'Porta http inválida.'; +$wb['https_port_error_regex'] = 'Porta https inválida.'; +$wb['nginx_directive_blocked_error'] = 'Diretivas do nginx bloqueadas pelas configurações de segurança:'; ?> diff --git a/interface/web/sites/lib/lang/br_web_folder.lng b/interface/web/sites/lib/lang/br_web_folder.lng index 34a3f65b0c..193cb4636f 100644 --- a/interface/web/sites/lib/lang/br_web_folder.lng +++ b/interface/web/sites/lib/lang/br_web_folder.lng @@ -4,5 +4,5 @@ $wb['parent_domain_id_txt'] = 'Site'; $wb['path_txt'] = 'Caminho'; $wb['active_txt'] = 'Ativo'; $wb['path_error_regex'] = 'Caminho da pasta é inválido.'; -$wb['error_folder_already_protected_txt'] = 'Já existe um registro para esta pasta.'; +$wb['error_folder_already_protected_txt'] = 'Já existe esta pasta.'; ?> diff --git a/interface/web/sites/lib/lang/br_web_folder_user.lng b/interface/web/sites/lib/lang/br_web_folder_user.lng index dd63d02eec..5dc0354fec 100644 --- a/interface/web/sites/lib/lang/br_web_folder_user.lng +++ b/interface/web/sites/lib/lang/br_web_folder_user.lng @@ -1,14 +1,14 @@ <?php -$wb['web_folder_id_txt'] = 'Pastas protegidas'; +$wb['web_folder_id_txt'] = 'Pasta'; $wb['username_txt'] = 'Usuário'; $wb['password_txt'] = 'Senha'; $wb['active_txt'] = 'Ativo'; $wb['folder_error_empty'] = 'Nenhuma pasta selecionada.'; $wb['password_strength_txt'] = 'Dificuldade da senha'; -$wb['generate_password_txt'] = 'Gerar senha'; -$wb['repeat_password_txt'] = 'Repetir senha'; -$wb['password_mismatch_txt'] = 'A senhas não coincidem.'; -$wb['password_match_txt'] = 'A senhas coincidem.'; +$wb['generate_password_txt'] = 'Gerar Senha'; +$wb['repeat_password_txt'] = 'Repetir Senha'; +$wb['password_mismatch_txt'] = 'As senhas não coincidem.'; +$wb['password_match_txt'] = 'As senhas coincidem.'; $wb['no_folder_perm'] = 'Você não tem permissão para esta pasta.'; $wb['error_user_exists_already_txt'] = 'Já existe um registro igual para este usuário.'; ?> diff --git a/interface/web/sites/lib/lang/br_web_folder_user_list.lng b/interface/web/sites/lib/lang/br_web_folder_user_list.lng index e108c219b9..8ad8c48257 100644 --- a/interface/web/sites/lib/lang/br_web_folder_user_list.lng +++ b/interface/web/sites/lib/lang/br_web_folder_user_list.lng @@ -1,7 +1,7 @@ <?php -$wb['list_head_txt'] = 'Usuários de pastas'; +$wb['list_head_txt'] = 'Usuário de Pasta'; $wb['active_txt'] = 'Ativo'; -$wb['web_folder_id_txt'] = 'ID da pasta'; +$wb['web_folder_id_txt'] = 'Pasta'; $wb['username_txt'] = 'Usuário'; $wb['add_new_record_txt'] = 'Adicionar novo usuário'; ?> diff --git a/interface/web/sites/lib/lang/br_web_subdomain.lng b/interface/web/sites/lib/lang/br_web_subdomain.lng index 0ccc574805..53cb94ab54 100644 --- a/interface/web/sites/lib/lang/br_web_subdomain.lng +++ b/interface/web/sites/lib/lang/br_web_subdomain.lng @@ -6,21 +6,21 @@ $wb['ssl_organisation_unit_txt'] = 'Departamento'; $wb['ssl_country_txt'] = 'PaÃs'; $wb['ssl_request_txt'] = 'Requisição'; $wb['ssl_cert_txt'] = 'Certificado'; -$wb['ssl_bundle_txt'] = 'Pacote'; +$wb['ssl_bundle_txt'] = 'Agrupar'; $wb['ssl_action_txt'] = 'Ação'; $wb['server_id_txt'] = 'Servidor'; $wb['domain_txt'] = 'DomÃnio'; $wb['type_txt'] = 'Tipo'; $wb['parent_domain_id_txt'] = 'Site Pai'; -$wb['redirect_type_txt'] = 'Tipo do Redirecionamento'; -$wb['redirect_path_txt'] = 'Caminho do Redirecionamento'; +$wb['redirect_type_txt'] = 'Tipo de redirecionamento'; +$wb['redirect_path_txt'] = 'Caminho para o redirecionamento'; $wb['active_txt'] = 'Ativo'; $wb['document_root_txt'] = 'Documentroot'; $wb['system_user_txt'] = 'Usuário Linux'; $wb['system_group_txt'] = 'Grupo Linux'; $wb['ip_address_txt'] = 'Endereço IP'; -$wb['vhost_type_txt'] = 'Tipo VHost'; -$wb['hd_quota_txt'] = 'Cota de Disco'; +$wb['vhost_type_txt'] = 'Tipo do VHost'; +$wb['hd_quota_txt'] = 'Cota do Disco'; $wb['traffic_quota_txt'] = 'Cota de Tráfego'; $wb['cgi_txt'] = 'CGI'; $wb['ssi_txt'] = 'SSI'; @@ -29,22 +29,22 @@ $wb['suexec_txt'] = 'SuEXEC'; $wb['php_txt'] = 'PHP'; $wb['client_txt'] = 'Cliente'; $wb['limit_web_domain_txt'] = 'O limite de domÃnios de site para esta conta foi alcançado.'; -$wb['limit_web_aliasdomain_txt'] = 'O limite de apelidos de domÃnio para esta conta foi alcançado.'; -$wb['limit_web_subdomain_txt'] = 'O limite de subdomÃnios para esta conta foi alcançado.'; +$wb['limit_web_aliasdomain_txt'] = 'O limite de alias de domÃnios para esta conta foi alcançado.'; +$wb['limit_web_subdomain_txt'] = 'O limite de subdomÃnios de site para esta conta foi alcançado.'; $wb['apache_directives_txt'] = 'Diretivas do apache'; -$wb['domain_error_empty'] = 'DomÃnio está em branco.'; -$wb['domain_error_unique'] = 'Já existe apelido de domÃnio ou subdomÃnio com este nome.'; -$wb['domain_error_regex'] = 'Nome do domÃnio é inválido.'; +$wb['domain_error_empty'] = 'O domÃnio está em branco.'; +$wb['domain_error_unique'] = 'Já existe um site, subdomÃnio ou alias de domÃnio com este nome.'; +$wb['domain_error_regex'] = 'O domÃnio é inválido.'; +$wb['domain_error_wildcard'] = 'Curingas não são permitidos para subdomÃnios.'; $wb['host_txt'] = 'Host'; -$wb['redirect_error_regex'] = 'Caminho de redirecionamento é inválido. Exemplo de caminho válido: \\"/teste/\\" ou \\"http://www.dominio.com.br/teste/\\".'; +$wb['redirect_error_regex'] = 'Caminho de redirecionamento inválido. Redirecionamentos válidos são, por ex.: /teste/ ou http://www.dominio.com.br/teste/'; $wb['no_redirect_txt'] = 'Sem redirecionamento'; $wb['no_flag_txt'] = 'Sem marcas'; -$wb['domain_error_wildcard'] = 'Curingas de subdomÃnios não são permitidos.'; $wb['proxy_directives_txt'] = 'Diretivas do proxy'; $wb['available_proxy_directive_snippets_txt'] = 'Diretivas de trechos de código do proxy disponÃveis:'; -$wb['error_proxy_requires_url'] = 'Tipo de redirecionamento \'proxy\' exige uma URL como caminho de redirecionamento.'; -$wb['http_port_txt'] = 'Porta HTTP'; -$wb['https_port_txt'] = 'Porta HTTPS'; -$wb['http_port_error_regex'] = 'Porta HTTP inválida.'; -$wb['https_port_error_regex'] = 'Porta HTTPS inválida.'; +$wb['error_proxy_requires_url'] = 'O tipo de redirecionamento "proxy" exige uma URL como caminho de redirecionamento.'; +$wb['http_port_txt'] = 'Porta http'; +$wb['https_port_txt'] = 'Porta https'; +$wb['http_port_error_regex'] = 'Porta http inválida.'; +$wb['https_port_error_regex'] = 'Porta https inválida.'; ?> diff --git a/interface/web/sites/lib/lang/br_web_vhost_domain.lng b/interface/web/sites/lib/lang/br_web_vhost_domain.lng index 4c72b1fd88..01a7414a98 100644 --- a/interface/web/sites/lib/lang/br_web_vhost_domain.lng +++ b/interface/web/sites/lib/lang/br_web_vhost_domain.lng @@ -1,116 +1,116 @@ <?php +$wb['backup_interval_txt'] = 'Intervalo entre backups'; +$wb['backup_copies_txt'] = 'Número de cópias do backup'; $wb['ssl_state_txt'] = 'Estado'; $wb['ssl_locality_txt'] = 'Cidade'; $wb['ssl_organisation_txt'] = 'Empresa'; $wb['ssl_organisation_unit_txt'] = 'Departamento'; $wb['ssl_country_txt'] = 'PaÃs'; +$wb['ssl_key_txt'] = 'Chave'; $wb['ssl_request_txt'] = 'Requisição'; $wb['ssl_cert_txt'] = 'Certificado'; -$wb['ssl_bundle_txt'] = 'Pacote'; +$wb['ssl_bundle_txt'] = 'Agrupar'; $wb['ssl_action_txt'] = 'Ação'; +$wb['ssl_domain_txt'] = 'DomÃnio'; $wb['server_id_txt'] = 'Servidor'; $wb['domain_txt'] = 'DomÃnio'; +$wb['web_folder_error_regex'] = 'Pasta web é inválida. Por favor não utilize o caractere barra(/).'; $wb['type_txt'] = 'Tipo'; -$wb['parent_domain_id_txt'] = 'Site Parente'; -$wb['redirect_type_txt'] = 'Tipo Redirecionamento'; -$wb['redirect_path_txt'] = 'Caminho do redirecionamento'; +$wb['parent_domain_id_txt'] = 'Site Pai'; +$wb['redirect_type_txt'] = 'Tipo de redirecionamento'; +$wb['redirect_path_txt'] = 'Caminho para o redirecionamento'; $wb['active_txt'] = 'Ativo'; -$wb['document_root_txt'] = 'Pasta personalizada documentroot'; +$wb['document_root_txt'] = 'Document-root'; $wb['system_user_txt'] = 'Usuário Linux'; $wb['system_group_txt'] = 'Grupo Linux'; -$wb['ip_address_txt'] = 'Endereço IP'; -$wb['vhost_type_txt'] = 'Tipo VHost'; -$wb['hd_quota_txt'] = 'Cota de Disco'; +$wb['ip_address_txt'] = 'Endereço IPv4'; +$wb['ipv6_address_txt'] = 'Endereço IPv6'; +$wb['vhost_type_txt'] = 'Tipo do VHost'; +$wb['hd_quota_txt'] = 'Cota do Disco'; $wb['traffic_quota_txt'] = 'Cota de Tráfego'; $wb['cgi_txt'] = 'CGI'; $wb['ssi_txt'] = 'SSI'; -$wb['errordocs_txt'] = 'Pasta personalizada errordocuments'; +$wb['errordocs_txt'] = 'Proprietário do Error-Documents'; $wb['subdomain_txt'] = 'SubdomÃnio automático'; $wb['ssl_txt'] = 'SSL'; -$wb['ssl_letsencrypt_txt'] = 'Let\'s Encrypt'; $wb['suexec_txt'] = 'SuEXEC'; $wb['php_txt'] = 'PHP'; $wb['client_txt'] = 'Cliente'; $wb['limit_web_domain_txt'] = 'O limite de domÃnios de site para esta conta foi alcançado.'; -$wb['limit_web_aliasdomain_txt'] = 'O limite de apelidos de domÃnio de site para esta conta foi alcançado.'; +$wb['limit_web_aliasdomain_txt'] = 'O limite de alias de domÃnios para esta conta foi alcançado.'; $wb['limit_web_subdomain_txt'] = 'O limite de subdomÃnios de site para esta conta foi alcançado.'; $wb['apache_directives_txt'] = 'Diretivas do apache'; -$wb['domain_error_empty'] = 'DomÃnio está em branco.'; -$wb['domain_error_unique'] = 'Já existe site, apelido de domÃnio ou subdomÃnio com este nome'; -$wb['domain_error_regex'] = 'Nome do domÃnio é inválido.'; -$wb['hd_quota_error_empty'] = 'Cota de disco está em branco.'; +$wb['domain_error_empty'] = 'O campo "DomÃnio" está em branco.'; +$wb['domain_error_unique'] = 'Já existe um site, subdomÃnio ou alias de domÃnio com este nome.'; +$wb['domain_error_regex'] = 'O campo "DomÃnio" é inválido.'; +$wb['domain_error_acme_invalid'] = 'DomÃnio genérico inválido não permitido.'; +$wb['domain_error_autosub'] = 'Já existe um subdomÃnio com estas configurações.'; +$wb['hd_quota_error_empty'] = 'Cota do disco é 0 ou está em branco.'; $wb['traffic_quota_error_empty'] = 'Cota de tráfego está em branco.'; -$wb['error_ssl_state_empty'] = 'Campo \'Estado\' está em branco.'; -$wb['error_ssl_locality_empty'] = 'Campo \'Cidade\' está em branco.'; -$wb['error_ssl_organisation_empty'] = 'Campo \'Empresa\' está em branco.'; -$wb['error_ssl_organisation_unit_empty'] = 'Campo \'Departamento\' está em branco.'; -$wb['error_ssl_country_empty'] = 'Campo \'PaÃs\' está em branco.'; +$wb['error_ssl_state_empty'] = 'O campo "Estado" está em branco.'; +$wb['error_ssl_locality_empty'] = 'O campo "Cidade" está em branco.'; +$wb['error_ssl_organisation_empty'] = 'O campo "Empresa" está em branco.'; +$wb['error_ssl_organisation_unit_empty'] = 'O campo "Departamento" está em branco.'; +$wb['error_ssl_country_empty'] = 'O campo "PaÃs" está em branco.'; +$wb['error_ssl_cert_empty'] = 'O campo "Certificado" está em branco.'; $wb['client_group_id_txt'] = 'Cliente'; -$wb['stats_password_txt'] = 'Senha do diretório de estatÃsticas'; -$wb['ssl_domain_txt'] = 'DomÃnio SSL'; -$wb['allow_override_txt'] = 'Permitir sobrescrever'; -$wb['limit_web_quota_free_txt'] = 'Cota de disco máxima'; -$wb['ssl_state_error_regex'] = 'Campo \'Estado\' é inválido. São caracteres válidos: \'a-z\', \'0-9\' e \'.,-_\'.'; -$wb['ssl_locality_error_regex'] = 'Campo \'Cidade\' é inválido. São caracteres válidos: \'a-z\', \'0-9\' e \'.,-_\'.'; -$wb['ssl_organisation_error_regex'] = 'Campo \'Empresa\' é inválido. São caracteres válidos: \'a-z\', \'0-9\' e \'.,-_\'.'; -$wb['ssl_organistaion_unit_error_regex'] = 'Campo \'Departamento\' é inválido. São caracteres válidos: \'a-z\', \'0-9\' e \'.,-_\'.'; -$wb['ssl_country_error_regex'] = 'Campo \'PaÃs\' é inválido. São caracteres válidos: \'A-Z\'.'; -$wb['limit_traffic_quota_free_txt'] = 'Limite da cota de tráfego'; -$wb['redirect_error_regex'] = 'Caminho de redirecionamento é inválido. Exemplos de caminhos válidos: \\"/teste\\" ou \\"http://www.dominio.com.br/teste/\\".'; +$wb['stats_password_txt'] = 'Configurar senha para estatÃsticas web'; +$wb['allow_override_txt'] = 'Diretiva Apache AllowOverride'; +$wb['limit_web_quota_free_txt'] = 'Limite da cota de disco disponÃvel'; +$wb['ssl_state_error_regex'] = 'O campo "Estado" é inválido. São caracteres válidos: "a-z", "0-9", ".", "-", e "_".'; +$wb['ssl_locality_error_regex'] = 'O campo "Cidade" é inválido. São caracteres válidos: "a-z", "0-9", ".", "-", e "_".'; +$wb['ssl_organisation_error_regex'] = 'O campo "Empresa" é inválido. São caracteres válidos: "a-z", "0-9", ".", "-", e "_".'; +$wb['ssl_organistaion_unit_error_regex'] = 'O campo "Departamento" é inválido. São caracteres válidos: "a-z", "0-9", ".", "-", e "_".'; +$wb['ssl_country_error_regex'] = 'O campo "PaÃs" é inválido. São caracteres válidos: "A-Z".'; +$wb['limit_traffic_quota_free_txt'] = 'Limite da cota de tráfego disponÃvel'; +$wb['redirect_error_regex'] = 'Caminho de redirecionamento inválido. Redirecionamentos válidos são, por ex.: /teste/ ou http://www.dominio.com.br/teste/'; $wb['php_open_basedir_txt'] = 'Diretório open_basedir do php'; -$wb['traffic_quota_exceeded_txt'] = 'Cota de tráfego excedida'; -$wb['backup_interval_txt'] = 'Intervalo de backup'; -$wb['backup_copies_txt'] = 'Limite de cópias'; +$wb['traffic_quota_exceeded_txt'] = 'O limite da cota de tráfego foi alcançado.'; $wb['ruby_txt'] = 'Ruby'; $wb['stats_user_txt'] = 'Usuário de estatÃsticas web'; -$wb['stats_type_txt'] = 'Tipo de estatÃstica web'; -$wb['custom_php_ini_txt'] = 'php.ini personalizado'; -$wb['error_ssl_cert_empty'] = 'Campo \'Certificado\' em branco'; -$wb['none_txt'] = 'Nenhuma'; +$wb['stats_type_txt'] = 'Sistema de estatÃsticas web'; +$wb['custom_php_ini_txt'] = 'Configurações personalizadas do php.ini'; +$wb['none_txt'] = 'Nenhum'; $wb['disabled_txt'] = 'Desabilitado'; $wb['no_redirect_txt'] = 'Sem redirecionamento'; $wb['no_flag_txt'] = 'Sem marcas'; -$wb['save_certificate_txt'] = 'Salvar certificado'; -$wb['create_certificate_txt'] = 'Adicionar certificado'; -$wb['delete_certificate_txt'] = 'Remover certificado'; -$wb['ipv6_address_txt'] = 'Endereço IPv6'; +$wb['save_certificate_txt'] = 'Salvar Certificado'; +$wb['create_certificate_txt'] = 'Adicionar Certificado'; +$wb['delete_certificate_txt'] = 'Remover Certificado'; $wb['nginx_directives_txt'] = 'Diretivas do nginx'; -$wb['seo_redirect_txt'] = 'Redirecionamento SEO'; -$wb['non_www_to_www_txt'] = 'Diretivas Non-www -> www'; -$wb['www_to_non_www_txt'] = 'Diretivas www -> non-www'; -$wb['php_fpm_use_socket_txt'] = 'Usar soquete para o PHP-FPM'; -$wb['php_fpm_chroot_txt'] = 'Chroot PHP-FPM'; -$wb['error_no_sni_txt'] = 'O SNI para SSL não está ativo neste servidor. Você só pode habilitar um certificado para cada endereço IP.'; +$wb['seo_redirect_txt'] = 'Diretivas SEO'; +$wb['non_www_to_www_txt'] = 'non-www -> www'; +$wb['www_to_non_www_txt'] = 'www -> non-www'; +$wb['php_fpm_use_socket_txt'] = 'Usar socket para php-fpm'; +$wb['php_fpm_chroot_txt'] = 'Chroot php-fpm'; +$wb['error_no_sni_txt'] = 'SNI para SSL não está habilitado neste servidor. Somente poderá ser habilitado um certificado para cada endereço IP.'; $wb['python_txt'] = 'Python'; -$wb['pm_max_children_txt'] = 'Diretiva PHP-FPM pm.max_children'; -$wb['pm_start_servers_txt'] = 'Diretiva PHP-FPM pm.start_servers'; -$wb['pm_min_spare_servers_txt'] = 'Diretiva PHP-FPM pm.min_spare_servers'; -$wb['pm_max_spare_servers_txt'] = 'Diretiva PHP-FPM pm.max_spare_servers'; -$wb['error_php_fpm_pm_settings_txt'] = 'Valores permitidos para configurações do PHP-FPM pm devem obedecer os critérios: pm.max_children >= pm.max_spare_servers >= pm.start_servers >= pm.min_spare_servers > 0'; -$wb['pm_max_children_error_regex'] = 'O valor do PHP-FPM pm.max_children deve ser um número positivo.'; -$wb['pm_start_servers_error_regex'] = 'O valor do PHP-FPM pm.start_servers deve ser um número positivo.'; -$wb['pm_min_spare_servers_error_regex'] = 'O valor do PHP-FPM pm.min_spare_servers deve ser um número positivo.'; -$wb['pm_max_spare_servers_error_regex'] = 'O valor do PHP-FPM pm.max_spare_servers deve ser um número positivo.'; -$wb['hd_quota_error_regex'] = 'Valor da cota de disco é inválido.'; -$wb['traffic_quota_error_regex'] = 'Valor da cota de tráfego é inválido.'; -$wb['ssl_key_txt'] = 'Chave'; $wb['perl_txt'] = 'Perl'; -$wb['fastcgi_php_version_txt'] = 'Versão do PHP'; -$wb['pm_txt'] = 'Gerenciador de processos do PHP-FPM'; -$wb['pm_process_idle_timeout_txt'] = 'Diretiva PHP-FPM pm.process_idle_timeout'; -$wb['pm_max_requests_txt'] = 'Diretiva PHP-FPM pm.max_requests'; -$wb['pm_process_idle_timeout_error_regex'] = 'O valor do PHP-FPM pm.process_idle_timeout deve ser um número positivo.'; -$wb['pm_max_requests_error_regex'] = 'O valor do PHP-FPM pm.max_requests deve ser um inteiro >= 0.'; -$wb['pm_ondemand_hint_txt'] = 'Por favor, observe que você deve ter uma versão do PHP >= 5.3.9 para usar o gerenciador de processos sob demanda. Se você selecionar processos sob demanda usando uma versão antiga do PHP, o PHP não iniciará novamente!'; -$wb['generate_password_txt'] = 'Gerar senha'; -$wb['repeat_password_txt'] = 'Repetir senha'; -$wb['password_mismatch_txt'] = 'A senhas não coincidem.'; -$wb['password_match_txt'] = 'A senhas coincidem.'; -$wb['web_folder_error_regex'] = 'Pasta inválida informada. Por favor não insira barra - \\"\\".'; -$wb['domain_error_autosub'] = 'Já existe um subdomÃnio com essas configurações.'; -$wb['available_php_directive_snippets_txt'] = 'Diretivas de trechos de código do php disponÃveis:'; -$wb['available_apache_directive_snippets_txt'] = 'Diretivas de trechos de código do apache disponÃveis:'; -$wb['available_nginx_directive_snippets_txt'] = 'Diretivas de trechos de código do nginx disponÃveis:'; +$wb['pm_max_children_txt'] = 'PHP-FPM pm.max_children'; +$wb['pm_start_servers_txt'] = 'PHP-FPM pm.start_servers'; +$wb['pm_min_spare_servers_txt'] = 'PHP-FPM pm.min_spare_servers'; +$wb['pm_max_spare_servers_txt'] = 'PHP-FPM pm.max_spare_servers'; +$wb['error_php_fpm_pm_settings_txt'] = 'Valores das configurações do php-fpm podem ser: pm.max_children >= pm.max_spare_servers >= pm.start_servers >= pm.min_spare_servers > 0'; +$wb['pm_max_children_error_regex'] = 'PHP-FPM pm.max_children deve ter um valor inteiro positivo.'; +$wb['pm_start_servers_error_regex'] = 'PHP-FPM pm.start_servers deve ter um valor inteiro positivo.'; +$wb['pm_min_spare_servers_error_regex'] = 'PHP-FPM pm.min_spare_servers deve ter um valor inteiro positivo.'; +$wb['pm_max_spare_servers_error_regex'] = 'PHP-FPM pm.max_spare_servers deve ter um valor inteiro positivo.'; +$wb['hd_quota_error_regex'] = 'Cota do disco é inválida.'; +$wb['traffic_quota_error_regex'] = 'Cota de tráfego é inválida.'; +$wb['fastcgi_php_version_txt'] = 'Versão do php'; +$wb['pm_txt'] = 'Gerenciador de Processos do php-fpm'; +$wb['pm_process_idle_timeout_txt'] = 'PHP-FPM pm.process_idle_timeout'; +$wb['pm_max_requests_txt'] = 'PHP-FPM pm.max_requests'; +$wb['pm_process_idle_timeout_error_regex'] = 'PHP-FPM pm.process_idle_timeout deve ter um valor inteiro positivo.'; +$wb['pm_max_requests_error_regex'] = 'PHP-FPM pm.max_requests deve ter um valor >= 0.'; +$wb['pm_ondemand_hint_txt'] = 'Por favor, observe que é necessário uma versão do php >= 5.3.9 para utilizar o gerenciador de processos por demanda. Se for selecionado por demanda com uma versão inferior do php, o mesmo não iniciará mais!'; +$wb['generate_password_txt'] = 'Gerar Senha'; +$wb['repeat_password_txt'] = 'Repetir Senha'; +$wb['password_mismatch_txt'] = 'As senhas não coincidem.'; +$wb['password_match_txt'] = 'As senhas coincidem.'; +$wb['available_php_directive_snippets_txt'] = 'Diretivas de trecho de código do php disponÃveis:'; +$wb['available_apache_directive_snippets_txt'] = 'Diretivas de trecho de código do apache disponÃveis:'; +$wb['available_nginx_directive_snippets_txt'] = 'Diretivas de trecho de código do nginx disponÃveis:'; $wb['proxy_directives_txt'] = 'Diretivas do proxy'; $wb['available_proxy_directive_snippets_txt'] = 'Diretivas de trechos de código do proxy disponÃveis:'; $wb['no_server_error'] = 'Nenhum servidor selecionado.'; @@ -118,39 +118,44 @@ $wb['no_backup_txt'] = 'Sem backup'; $wb['daily_backup_txt'] = 'Diário'; $wb['weekly_backup_txt'] = 'Semanal'; $wb['monthly_backup_txt'] = 'Mensal'; -$wb['rewrite_rules_txt'] = 'Regras de reescrita'; +$wb['rewrite_rules_txt'] = 'Reescrever Regras'; $wb['invalid_rewrite_rules_txt'] = 'Regras de reescrita inválidas'; $wb['allowed_rewrite_rule_directives_txt'] = 'Diretivas permitidas:'; $wb['configuration_error_txt'] = 'ERRO DE CONFIGURAÇÃO'; -$wb['web_folder_txt'] = 'Pasta web'; -$wb['web_folder_invalid_txt'] = 'A pasta web informada é inválida, por favor escolha um nome diferente.'; -$wb['web_folder_unique_txt'] = 'A pasta web informada já existe, por favor escolha um nome diferente.'; -$wb['host_txt'] = 'Nome do servidor'; -$wb['domain_error_wildcard'] = 'Curingas não são permitidos para subdomÃnios.'; +$wb['server_chosen_not_ok'] = 'O servidor selecionado não é permitido para esta conta.'; $wb['variables_txt'] = 'Variáveis'; $wb['added_by_txt'] = 'Cadastrado por'; $wb['added_date_txt'] = 'Data do cadastro'; -$wb['backup_excludes_txt'] = 'Diretórios excluÃdos'; -$wb['backup_excludes_note_txt'] = '(Separar múltiplos diretórios por vÃrgulas. Exemplo: web/cache/*,web/backup)'; -$wb['backup_excludes_error_regex'] = 'Os diretórios excluÃdos contém caracteres inválidos.'; -$wb['server_chosen_not_ok'] = 'O servidor selecionado não é permitido para esta conta.'; -$wb['subdomain_error_empty'] = 'O campo subdomÃnio está em branco ou contém caracteres inválidos.'; +$wb['backup_excludes_txt'] = 'Diretórios ExcluÃdos'; +$wb['backup_excludes_note_txt'] = '(Separar múltiplos diretórios por vÃrgulas. Exemplo: web/cache/*, web/backup)'; +$wb['backup_excludes_error_regex'] = 'Os diretórios excluÃdos possuem caracteres inválidos.'; +$wb['web_folder_txt'] = 'Pasta web'; +$wb['web_folder_invalid_txt'] = 'A pasta web é inválida, por favor selecione outra.'; +$wb['web_folder_unique_txt'] = 'A pasta web é já está em uso, por favor selecione outra.'; +$wb['host_txt'] = 'Nome do host'; +$wb['domain_error_wildcard'] = 'Curingas não são permitidos para subdomÃnios.'; +$wb['variables_txt'] = 'Variáveis'; +$wb['backup_excludes_txt'] = 'Diretórios ExcluÃdos'; +$wb['backup_excludes_note_txt'] = '(Separar múltiplos diretórios por vÃrgulas. Exemplo: web/cache/*, web/backup)'; +$wb['backup_excludes_error_regex'] = 'Os diretórios excluÃdos possuem caracteres inválidos.'; +$wb['subdomain_error_empty'] = 'O subdomÃnio está em branco ou possui caracteres inválidos.'; $wb['btn_save_txt'] = 'Salvar'; $wb['btn_cancel_txt'] = 'Cancelar'; $wb['enable_spdy_txt'] = 'Habilitar SPDY/HTTP2'; -$wb['load_client_data_txt'] = 'Carregas detalhes do cliente'; +$wb['load_client_data_txt'] = 'Carregar detalhes do cliente'; $wb['load_my_data_txt'] = 'Carregar detalhes do contato'; $wb['reset_client_data_txt'] = 'Limpar dados'; +$wb['document_root_txt'] = 'Document Root'; +$wb['ssl_letsencrypt_txt'] = 'Let\'s Encrypt SSL'; $wb['rewrite_to_https_txt'] = 'Reescrever HTTP para HTTPS'; $wb['password_strength_txt'] = 'Dificuldade da senha'; -$wb['directive_snippets_id_txt'] = 'Configurações do servidor de páginas'; -$wb['http_port_txt'] = 'Porta HTTP'; -$wb['https_port_txt'] = 'Porta HTTPS'; -$wb['http_port_error_regex'] = 'Porta HTTP inválida.'; -$wb['https_port_error_regex'] = 'Porta HTTPS inválida.'; +$wb['directive_snippets_id_txt'] = 'Configurações do servidor web'; +$wb['http_port_txt'] = 'Porta http'; +$wb['https_port_txt'] = 'Porta https'; +$wb['http_port_error_regex'] = 'Porta http inválida.'; +$wb['https_port_error_regex'] = 'Porta https inválida.'; $wb['enable_pagespeed_txt'] = 'Habilitar PageSpeed'; -$wb['log_retention_txt'] = 'Tempo de armazenamenro dos arquivos de log'; -$wb['log_retention_error_regex'] = 'Tempo de armazenamento, em dias (valores permitidos: min. 0 - max. 9999)'; -$wb['domain_error_acme_invalid'] = 'Domain name acme.invalid not permitted.'; -$wb['limit_web_quota_not_0_txt'] = 'Harddisk Quota cannot be set to 0.'; +$wb['log_retention_txt'] = 'Tempo de retenção do log de arquivos'; +$wb['log_retention_error_regex'] = 'Tempo de retenção em dias (valores permitidos: mÃnimo 0, máximo 9999)'; +$wb['limit_web_quota_not_0_txt'] = 'Cota de disco não pode ser configurada para 0.'; ?> diff --git a/interface/web/sites/lib/lang/br_web_vhost_domain_admin_list.lng b/interface/web/sites/lib/lang/br_web_vhost_domain_admin_list.lng index 6b1385926d..3c0c7fd01e 100644 --- a/interface/web/sites/lib/lang/br_web_vhost_domain_admin_list.lng +++ b/interface/web/sites/lib/lang/br_web_vhost_domain_admin_list.lng @@ -7,8 +7,8 @@ $wb['server_id_txt'] = 'Servidor'; $wb['domain_txt'] = 'DomÃnio'; $wb['add_new_record_txt'] = 'Adicionar novo site'; $wb['add_new_subdomain_txt'] = 'Adicionar novo subdomÃnio'; -$wb['add_new_aliasdomain_txt'] = 'Adicionar novo apelido de domÃnio'; +$wb['add_new_aliasdomain_txt'] = 'Adicionar novo alias de domÃnio'; $wb['domain_list_head_txt'] = 'Sites'; -$wb['aliasdomain_list_head_txt'] = 'Apelidos de domÃnios (vhost)'; +$wb['aliasdomain_list_head_txt'] = 'Alias de domÃnio (vhost)'; $wb['subdomain_list_head_txt'] = 'SubdomÃnios (vhost)'; ?> diff --git a/interface/web/sites/lib/lang/br_web_vhost_domain_list.lng b/interface/web/sites/lib/lang/br_web_vhost_domain_list.lng index e8fb6bfb09..8170afc2d3 100644 --- a/interface/web/sites/lib/lang/br_web_vhost_domain_list.lng +++ b/interface/web/sites/lib/lang/br_web_vhost_domain_list.lng @@ -5,10 +5,10 @@ $wb['active_txt'] = 'Ativo'; $wb['server_id_txt'] = 'Servidor'; $wb['domain_txt'] = 'DomÃnio'; $wb['add_new_record_txt'] = 'Adicionar novo site'; -$wb['parent_domain_id_txt'] = 'Site'; $wb['add_new_subdomain_txt'] = 'Adicionar novo subdomÃnio'; -$wb['add_new_aliasdomain_txt'] = 'Adicionar novo apelido'; +$wb['add_new_aliasdomain_txt'] = 'Adicionar novo alias de domÃnio'; +$wb['parent_domain_id_txt'] = 'Site'; $wb['domain_list_head_txt'] = 'Sites'; -$wb['aliasdomain_list_head_txt'] = 'Apelidos de domÃnios (vhost)'; +$wb['aliasdomain_list_head_txt'] = 'Alias de domÃnio (vhost)'; $wb['subdomain_list_head_txt'] = 'SubdomÃnios (vhost)'; ?> diff --git a/interface/web/sites/lib/lang/br_web_vhost_subdomain.lng b/interface/web/sites/lib/lang/br_web_vhost_subdomain.lng index fa6ddad484..390b7402e7 100644 --- a/interface/web/sites/lib/lang/br_web_vhost_subdomain.lng +++ b/interface/web/sites/lib/lang/br_web_vhost_subdomain.lng @@ -1,10 +1,10 @@ <?php $wb['parent_domain_id_txt'] = 'Site Pai'; $wb['web_folder_txt'] = 'Pasta web'; -$wb['web_folder_invalid_txt'] = 'A pasta web informada é inválida, por favor insira um nome diferente.'; -$wb['web_folder_unique_txt'] = 'A pasta web informada já existe, por favor insira um nome diferente.'; -$wb['backup_interval_txt'] = 'Intervalo de backup'; -$wb['backup_copies_txt'] = 'Limite de cópias do backup'; +$wb['web_folder_invalid_txt'] = 'A pasta é escolhida é inválida, por favor escolha outra.'; +$wb['web_folder_unique_txt'] = 'A pasta web escolhida está em uso, por favor escolha outra.'; +$wb['backup_interval_txt'] = 'Intervalo entre backups'; +$wb['backup_copies_txt'] = 'Número de cópias do backup'; $wb['ssl_state_txt'] = 'Estado'; $wb['ssl_locality_txt'] = 'Cidade'; $wb['ssl_organisation_txt'] = 'Empresa'; @@ -13,65 +13,66 @@ $wb['ssl_country_txt'] = 'PaÃs'; $wb['ssl_key_txt'] = 'Chave'; $wb['ssl_request_txt'] = 'Requisição'; $wb['ssl_cert_txt'] = 'Certificado'; -$wb['ssl_bundle_txt'] = 'Pacote'; +$wb['ssl_bundle_txt'] = 'Agrupar'; $wb['ssl_action_txt'] = 'Ação'; $wb['ssl_domain_txt'] = 'DomÃnio'; $wb['server_id_txt'] = 'Servidor'; $wb['domain_txt'] = 'DomÃnio'; -$wb['host_txt'] = 'Hostname'; -$wb['web_folder_error_regex'] = 'Pasta informada é inválida. Por favor, não insira barra - \\"/\\".'; +$wb['host_txt'] = 'Nome do host'; +$wb['web_folder_error_regex'] = 'Pasta web é inválida. Por favor não utilize o caractere barra(/).'; $wb['type_txt'] = 'Tipo'; +$wb['parent_domain_id_txt'] = 'Site Pai'; $wb['redirect_type_txt'] = 'Tipo de redirecionamento'; -$wb['redirect_path_txt'] = 'Caminho para redirecionamento'; +$wb['redirect_path_txt'] = 'Caminho para o redirecionamento'; $wb['active_txt'] = 'Ativo'; $wb['document_root_txt'] = 'Documentroot'; $wb['system_user_txt'] = 'Usuário Linux'; $wb['system_group_txt'] = 'Grupo Linux'; $wb['ip_address_txt'] = 'Endereço IPv4'; $wb['ipv6_address_txt'] = 'Endereço IPv6'; -$wb['vhost_type_txt'] = 'Tipo vhost'; -$wb['hd_quota_txt'] = 'Cota de Disco'; -$wb['traffic_quota_txt'] = 'Cota de Tráfego'; +$wb['vhost_type_txt'] = 'Tipo do vHost'; +$wb['hd_quota_txt'] = 'Cota de disco'; +$wb['traffic_quota_txt'] = 'Cota de tráfego'; $wb['cgi_txt'] = 'CGI'; $wb['ssi_txt'] = 'SSI'; -$wb['errordocs_txt'] = 'Páginas de erro personalizadas (error-documents)'; +$wb['errordocs_txt'] = 'Proprietário do error-documents'; $wb['subdomain_txt'] = 'SubdomÃnio automático'; $wb['ssl_txt'] = 'SSL'; $wb['suexec_txt'] = 'SuEXEC'; $wb['php_txt'] = 'PHP'; $wb['client_txt'] = 'Cliente'; $wb['limit_web_domain_txt'] = 'O limite de domÃnios de site para esta conta foi alcançado.'; -$wb['limit_web_aliasdomain_txt'] = 'O limite de apelidos de domÃnio para esta conta foi alcançado.'; -$wb['limit_web_subdomain_txt'] = 'O limite de subdomÃnios site para esta conta foi alcançado.'; +$wb['limit_web_aliasdomain_txt'] = 'O limite de alias de domÃnios para esta conta foi alcançado.'; +$wb['limit_web_subdomain_txt'] = 'O limite de subdomÃnios de site para esta conta foi alcançado.'; $wb['apache_directives_txt'] = 'Diretivas do apache'; -$wb['domain_error_empty'] = 'DomÃnio está em branco.'; -$wb['domain_error_unique'] = 'Já existe um site, apelido de domÃnio ou subdomÃnio para este domÃnio.'; -$wb['domain_error_regex'] = 'Nome do domÃnio é inválido.'; -$wb['domain_error_wildcard'] = 'Curingas não são permitidos para subdomÃnios'; -$wb['hd_quota_error_empty'] = 'Valor da cota de disco é 0 ou está em branco.'; -$wb['traffic_quota_error_empty'] = 'Valor da cota de tráfego está em branco.'; -$wb['error_ssl_state_empty'] = 'Campo \'Estado\' está em branco.'; -$wb['error_ssl_locality_empty'] = 'Campo \'Cidade\' está em branco.'; -$wb['error_ssl_organisation_empty'] = 'Campo \'Empresa\' está em branco.'; -$wb['error_ssl_organisation_unit_empty'] = 'Campo \'Departamento\' está em branco.'; -$wb['error_ssl_country_empty'] = 'Campo \'PaÃs\' está em branco.'; -$wb['error_ssl_cert_empty'] = 'Campo \'Certificado\' está em branco.'; +$wb['domain_error_empty'] = 'O campo "DomÃnio" está em branco.'; +$wb['domain_error_unique'] = 'Já existe um site, subdomÃnio ou alias de domÃnio com este nome.'; +$wb['domain_error_regex'] = 'O campo "DomÃnio" é inválido.'; +$wb['domain_error_wildcard'] = 'Curingas não são permitidos para subdomÃnios.'; +$wb['hd_quota_error_empty'] = 'Cota do disco é 0 ou está em branco.'; +$wb['traffic_quota_error_empty'] = 'Cota de tráfego está em branco.'; +$wb['error_ssl_state_empty'] = 'O campo "Estado" está em branco.'; +$wb['error_ssl_locality_empty'] = 'O campo "Cidade" está em branco.'; +$wb['error_ssl_organisation_empty'] = 'O campo "Empresa" está em branco.'; +$wb['error_ssl_organisation_unit_empty'] = 'O campo "Departamento" está em branco.'; +$wb['error_ssl_country_empty'] = 'O campo "PaÃs" está em branco.'; +$wb['error_ssl_cert_empty'] = 'O campo "Certificado" está em branco.'; $wb['client_group_id_txt'] = 'Cliente'; -$wb['stats_password_txt'] = 'Senha para estatÃsticas web'; +$wb['stats_password_txt'] = 'Configurar senha para estatÃsticas web'; $wb['allow_override_txt'] = 'Diretiva Apache AllowOverride'; -$wb['limit_web_quota_free_txt'] = 'Cota de disco'; -$wb['ssl_state_error_regex'] = 'Campo \'Estado\' é inválido. Caracteres válidos são: \'0-9\' e \\".,-_\\".'; -$wb['ssl_locality_error_regex'] = 'Campo \'Cidade\' é inválido. Caracteres válidos são: \'a-z\', \'0-9\' e \'.,-_\'.'; -$wb['ssl_organisation_error_regex'] = 'Campo \'Empresa\' é inválido. Caracteres válidos são: \'a-z\', \'0-9\' e \'.,-_\'.'; -$wb['ssl_organistaion_unit_error_regex'] = 'Campo \'Departamento\' é inválido. Caracteres válidos são: \'a-z\', \'0-9\' e \'.,-_\'.'; -$wb['ssl_country_error_regex'] = 'Campo \'PaÃs\' é inválido. Caracteres válidos são: \'A-Z\'.'; -$wb['limit_traffic_quota_free_txt'] = 'Cota de tráfego'; -$wb['redirect_error_regex'] = 'Caminho de redirecionamento é inválido. Exemplo de caminho válido: \\"/teste/\\" ou \\"http://www.dominio.com.br/teste/\\".'; -$wb['php_open_basedir_txt'] = 'Diretório open_basedir do PHP'; -$wb['traffic_quota_exceeded_txt'] = 'Cota de tráfego excedida'; +$wb['limit_web_quota_free_txt'] = 'Limite disponÃvel da cota de disco'; +$wb['ssl_state_error_regex'] = 'O campo "Estado" é inválido. Caracteres válidos são: "a-z", "0-9", ".", "-", e "_".'; +$wb['ssl_locality_error_regex'] = 'O campo "Cidade" é inválido. Caracteres válidos são: "a-z", "0-9", ".", "-", e "_".'; +$wb['ssl_organisation_error_regex'] = 'O campo "Empresa" é inválido. Caracteres válidos são: "a-z", "0-9", ".", "-", e "_".'; +$wb['ssl_organistaion_unit_error_regex'] = 'O campo "Departamento" é inválido. Caracteres válidos são: "a-z", "0-9", ".", "-", e "_".'; +$wb['ssl_country_error_regex'] = 'O campo "PaÃs" é inválido. Caracteres válidos são: "A-Z".'; +$wb['limit_traffic_quota_free_txt'] = 'Limite da cota de tráfego disponÃvel'; +$wb['redirect_error_regex'] = 'Caminho de redirecionamento inválido. Redirecionamentos válidos são, por ex.: /teste/ ou http://www.dominio.com.br/teste/'; +$wb['php_open_basedir_txt'] = 'Diretório open_basedir do php'; +$wb['traffic_quota_exceeded_txt'] = 'O limite da cota de tráfego foi alcançado.'; $wb['ruby_txt'] = 'Ruby'; -$wb['stats_user_txt'] = 'Usuário para estatÃsticas web'; -$wb['stats_type_txt'] = 'Programa para estatÃsticas web'; +$wb['stats_user_txt'] = 'Usuário de estatÃsticas web'; +$wb['stats_type_txt'] = 'Sistema de estatÃsticas web'; $wb['custom_php_ini_txt'] = 'Configurações personalizadas do php.ini'; $wb['none_txt'] = 'Nenhum'; $wb['disabled_txt'] = 'Desabilitado'; @@ -81,51 +82,51 @@ $wb['save_certificate_txt'] = 'Salvar certificado'; $wb['create_certificate_txt'] = 'Adicionar certificado'; $wb['delete_certificate_txt'] = 'Remover certificado'; $wb['nginx_directives_txt'] = 'Diretivas do nginx'; -$wb['seo_redirect_txt'] = 'Redirecionamento SEO'; -$wb['non_www_to_www_txt'] = 'Diretivas Non-www -> www'; -$wb['www_to_non_www_txt'] = 'Diretivas www -> non-www'; -$wb['php_fpm_use_socket_txt'] = 'Usar soquete para o PHP-FPM'; -$wb['error_no_sni_txt'] = 'O SNI para SSL não está ativo neste servidor. Você só pode habilitar um certificado para cada endereço IP.'; +$wb['seo_redirect_txt'] = 'Diretivas SEO'; +$wb['non_www_to_www_txt'] = 'non-www -> www'; +$wb['www_to_non_www_txt'] = 'www -> non-www'; +$wb['php_fpm_use_socket_txt'] = 'Usar socket para php-fpm'; +$wb['error_no_sni_txt'] = 'SNI para SSL não está habilitado neste servidor. Somente poderá ser habilitado um certificado para cada endereço IP.'; $wb['python_txt'] = 'Python'; $wb['perl_txt'] = 'Perl'; -$wb['pm_max_children_txt'] = 'Diretiva PHP-FPM pm.max_children'; -$wb['pm_start_servers_txt'] = 'Diretiva PHP-FPM pm.start_servers'; -$wb['pm_min_spare_servers_txt'] = 'Diretiva PHP-FPM pm.min_spare_servers'; -$wb['pm_max_spare_servers_txt'] = 'Diretiva PHP-FPM pm.max_spare_servers'; -$wb['error_php_fpm_pm_settings_txt'] = 'Valores permitidos para configurações do PHP-FPM pm devem obedecer os critérios: pm.max_children >= pm.max_spare_servers >= pm.start_servers >= pm.min_spare_servers > 0'; -$wb['pm_max_children_error_regex'] = 'O valor do PHP-FPM pm.max_children deve ser um número positivo.'; -$wb['pm_start_servers_error_regex'] = 'O valor do PHP-FPM pm.start_servers deve ser um número positivo.'; -$wb['pm_min_spare_servers_error_regex'] = 'O valor do PHP-FPM pm.min_spare_servers deve ser um número positivo.'; -$wb['pm_max_spare_servers_error_regex'] = 'O valor do PHP-FPM pm.max_spare_servers deve ser um número positivo.'; -$wb['hd_quota_error_regex'] = 'Valor da cota de disco é inválido.'; -$wb['traffic_quota_error_regex'] = 'Valor da cota de tráfego é inválido.'; -$wb['fastcgi_php_version_txt'] = 'Versão do PHP'; -$wb['pm_txt'] = 'Gerenciador de Processos do PHP-FPM'; -$wb['pm_process_idle_timeout_txt'] = 'Diretiva PHP-FPM pm.process_idle_timeout'; -$wb['pm_max_requests_txt'] = 'Diretiva PHP-FPM pm.max_requests'; -$wb['pm_process_idle_timeout_error_regex'] = 'O valor do PHP-FPM pm.process_idle_timeout deve ser um número positivo.'; -$wb['pm_max_requests_error_regex'] = 'O valor do PHP-FPM pm.max_requests deve ser um inteiro >= 0.'; -$wb['pm_ondemand_hint_txt'] = 'Por favor, observe que você deve ter uma versão do PHP >= 5.3.9 para usar o gerenciador de processos sob demanda. Se você selecionar processos sob demanda usando uma versão antiga do PHP, o PHP não iniciará novamente!'; -$wb['generate_password_txt'] = 'Gerar senha'; -$wb['repeat_password_txt'] = 'Repetir senha'; -$wb['password_mismatch_txt'] = 'A senhas não coincidem.'; -$wb['password_match_txt'] = 'A senhas coincidem.'; -$wb['available_php_directive_snippets_txt'] = 'Diretivas de trechos de código do php disponÃveis:'; -$wb['available_apache_directive_snippets_txt'] = 'Diretivas de trechos de código do apache disponÃveis:'; -$wb['available_nginx_directive_snippets_txt'] = 'Diretivas de trechos de código do nginx disponÃveis:'; -$wb['proxy_directives_txt'] = 'Diretivas do Proxy'; +$wb['pm_max_children_txt'] = 'PHP-FPM pm.max_children'; +$wb['pm_start_servers_txt'] = 'PHP-FPM pm.start_servers'; +$wb['pm_min_spare_servers_txt'] = 'PHP-FPM pm.min_spare_servers'; +$wb['pm_max_spare_servers_txt'] = 'PHP-FPM pm.max_spare_servers'; +$wb['error_php_fpm_pm_settings_txt'] = 'Valores das configurações do php-fpm podem ser: pm.max_children >= pm.max_spare_servers >= pm.start_servers >= pm.min_spare_servers > 0'; +$wb['pm_max_children_error_regex'] = 'PHP-FPM pm.max_children deve ter um valor inteiro positivo.'; +$wb['pm_start_servers_error_regex'] = 'PHP-FPM pm.start_servers deve ter um valor inteiro positivo.'; +$wb['pm_min_spare_servers_error_regex'] = 'PHP-FPM pm.min_spare_servers deve ter um valor inteiro positivo.'; +$wb['pm_max_spare_servers_error_regex'] = 'PHP-FPM pm.max_spare_servers deve ter um valor inteiro positivo.'; +$wb['hd_quota_error_regex'] = 'Cota do disco é inválida.'; +$wb['traffic_quota_error_regex'] = 'Cota de tráfego é inválida.'; +$wb['fastcgi_php_version_txt'] = 'Versão do php'; +$wb['pm_txt'] = 'Gerenciador de Processos do php-fpm'; +$wb['pm_process_idle_timeout_txt'] = 'PHP-FPM pm.process_idle_timeout'; +$wb['pm_max_requests_txt'] = 'PHP-FPM pm.max_requests'; +$wb['pm_process_idle_timeout_error_regex'] = 'PHP-FPM pm.process_idle_timeout deve ter um valor inteiro positivo.'; +$wb['pm_max_requests_error_regex'] = 'PHP-FPM pm.max_requests deve ter um valor >= 0.'; +$wb['pm_ondemand_hint_txt'] = 'Por favor, observe que é necessário uma versão do php >= 5.3.9 para utilizar o gerenciador de processos por demanda. Se for selecionado por demanda com uma versão inferior do php, o mesmo não iniciará mais!'; +$wb['generate_password_txt'] = 'Gerar Senha'; +$wb['repeat_password_txt'] = 'Repetir Senha'; +$wb['password_mismatch_txt'] = 'As senhas não coincidem.'; +$wb['password_match_txt'] = 'As senhas coincidem.'; +$wb['available_php_directive_snippets_txt'] = 'Diretivas de trecho de código do php disponÃveis:'; +$wb['available_apache_directive_snippets_txt'] = 'Diretivas de trecho de código do apache disponÃveis:'; +$wb['available_nginx_directive_snippets_txt'] = 'Diretivas de trecho de código do nginx disponÃveis:'; +$wb['proxy_directives_txt'] = 'Diretivas do proxy'; $wb['available_proxy_directive_snippets_txt'] = 'Diretivas de trechos de código do proxy disponÃveis:'; -$wb['rewrite_rules_txt'] = 'Regras de Reescrita'; +$wb['rewrite_rules_txt'] = 'Reescrever regras'; $wb['invalid_rewrite_rules_txt'] = 'Regras de reescrita inválidas'; -$wb['allowed_rewrite_rule_directives_txt'] = 'Diretivas Permitidas:'; +$wb['allowed_rewrite_rule_directives_txt'] = 'Diretivas permitidas:'; $wb['configuration_error_txt'] = 'ERRO DE CONFIGURAÇÃO'; $wb['variables_txt'] = 'Variáveis'; $wb['backup_excludes_txt'] = 'Diretórios ExcluÃdos'; -$wb['backup_excludes_note_txt'] = '(Separar múltiplos diretórios por vÃrgulas. Exemplo: \\"web/cache/*,web/backup\\".)'; -$wb['backup_excludes_error_regex'] = 'Os diretórios excluÃdos contém caracteres inválidos.'; -$wb['subdomain_error_empty'] = 'O campo \\"SubdomÃnio\\" está em branco ou contém caracteres inválidos.'; -$wb['http_port_txt'] = 'Porta HTTP'; -$wb['https_port_txt'] = 'Porta HTTPS'; -$wb['http_port_error_regex'] = 'Porta HTTP inválida.'; -$wb['https_port_error_regex'] = 'Porta HTTPS inválida.'; +$wb['backup_excludes_note_txt'] = '(Separar múltiplos diretórios por vÃrgulas. Exemplo: web/cache/*, web/backup)'; +$wb['backup_excludes_error_regex'] = 'Os diretórios excluÃdos possuem caracteres inválidos.'; +$wb['subdomain_error_empty'] = 'O subdomÃnio está em branco ou possui caracteres inválidos.'; +$wb['http_port_txt'] = 'Porta http'; +$wb['https_port_txt'] = 'Porta https'; +$wb['http_port_error_regex'] = 'Porta http inválida.'; +$wb['https_port_error_regex'] = 'Porta https inválida.'; ?> diff --git a/interface/web/sites/lib/lang/br_webdav_user.lng b/interface/web/sites/lib/lang/br_webdav_user.lng index 4347f8ae36..485e3a7747 100644 --- a/interface/web/sites/lib/lang/br_webdav_user.lng +++ b/interface/web/sites/lib/lang/br_webdav_user.lng @@ -7,15 +7,15 @@ $wb['password_txt'] = 'Senha'; $wb['password_strength_txt'] = 'Dificuldade da senha'; $wb['active_txt'] = 'Ativo'; $wb['limit_webdav_user_txt'] = 'O limite de usuários webdav para esta conta foi alcançado.'; -$wb['username_error_empty'] = 'Usuário está em branco.'; +$wb['username_error_empty'] = 'O nome do usuário está em branco.'; $wb['username_error_unique'] = 'O nome do usuário deve ser exclusivo.'; -$wb['username_error_regex'] = 'O nome do usuário contém caracteres não permitidos.'; -$wb['directory_error_empty'] = 'Diretório está em branco.'; +$wb['username_error_regex'] = 'O nome de usuário possui caracteres não permitidos.'; +$wb['directory_error_empty'] = 'O diretório está em branco.'; $wb['parent_domain_id_error_empty'] = 'Nenhum site selecionado.'; -$wb['dir_dot_error'] = 'Não é permitido \\"..\\" no caminho.'; -$wb['dir_slashdot_error'] = 'Não é permitido \\"./\\" no caminho.'; -$wb['generate_password_txt'] = 'Gerar senha'; -$wb['repeat_password_txt'] = 'Repetir senha'; -$wb['password_mismatch_txt'] = 'A senhas não coincidem.'; -$wb['password_match_txt'] = 'A senhas coincidem.'; +$wb['dir_dot_error'] = 'Não é permitido \'..\' no caminho.'; +$wb['dir_slashdot_error'] = 'Não é permitido \'./\' no caminho.'; +$wb['generate_password_txt'] = 'Gerar Senha'; +$wb['repeat_password_txt'] = 'Repetir Senha'; +$wb['password_mismatch_txt'] = 'As senhas não coincidem.'; +$wb['password_match_txt'] = 'As senhas coincidem.'; ?> diff --git a/interface/web/sites/lib/lang/tr.lng b/interface/web/sites/lib/lang/tr.lng index d0570f6c12..b5e7f42e2e 100644 --- a/interface/web/sites/lib/lang/tr.lng +++ b/interface/web/sites/lib/lang/tr.lng @@ -1,8 +1,8 @@ <?php -$wb['Websites'] = 'Web Sitesi'; +$wb['Websites'] = 'Web Siteleri'; $wb['Website'] = 'Web Sitesi'; -$wb['Subdomain'] = 'Alt Alan Adı'; -$wb['Aliasdomain'] = 'BaÅŸka Alan Adı'; +$wb['Subdomain'] = 'Alt Etki Alanı'; +$wb['Aliasdomain'] = 'Takma Etki Alanı'; $wb['Database'] = 'Veritabanı'; $wb['Database User'] = 'Veritabanı Kullanıcıları'; $wb['Web Access'] = 'Web EriÅŸimi'; @@ -22,7 +22,7 @@ $wb['Shell'] = 'Kabuk'; $wb['Webdav'] = 'WebDAV'; $wb['FTP'] = 'FTP'; $wb['Options'] = 'Ayarlar'; -$wb['Domain'] = 'Alan Adı'; +$wb['Domain'] = 'Etki Alanı'; $wb['Redirect'] = 'Yönlendirme'; $wb['SSL'] = 'SSL'; $wb['Sites'] = 'Siteler'; @@ -30,6 +30,6 @@ $wb['APS Installer'] = 'APS Yükleyici'; $wb['Available packages'] = 'Kullanılabilecek Paketler'; $wb['Installed packages'] = 'Yüklü Paketler'; $wb['Update Packagelist'] = 'Güncelleme Paketi Listesi'; -$wb['Subdomain (Vhost)'] = 'Alt alan adı (SSunucu)'; -$wb['error_proxy_requires_url'] = '\\"Vekil Sunucu\\" yönlendirme tipi için, yönlendirilecek yolu gösteren bir Ä°nternet adresi gereklidir.'; +$wb['Subdomain (Vhost)'] = 'Alt Etki Alanı (Sanal Sunucu)'; +$wb['error_proxy_requires_url'] = '"Vekil Sunucu" yönlendirme türü için, yönlendirilecek yolu gösteren bir Ä°nternet adresi gereklidir.'; ?> diff --git a/interface/web/sites/lib/lang/tr_aps.lng b/interface/web/sites/lib/lang/tr_aps.lng index 1c6ccd49a6..c876629a74 100644 --- a/interface/web/sites/lib/lang/tr_aps.lng +++ b/interface/web/sites/lib/lang/tr_aps.lng @@ -34,20 +34,20 @@ $wb['install_language_txt'] = 'Arayüz dili'; $wb['new_database_password_txt'] = 'Yeni veritabanı parolası'; $wb['basic_settings_txt'] = 'Temel ayarlar'; $wb['package_settings_txt'] = 'Paket ayarları'; -$wb['error_main_domain'] = 'Yükleme yolundaki alan adı geçersiz.'; +$wb['error_main_domain'] = 'Yükleme yolundaki etki alanı geçersiz.'; $wb['error_no_main_location'] = 'Yazdığınız yükleme yolu geçersiz.'; $wb['error_inv_main_location'] = 'Yazdığınız yükleme konumunu klasörü geçersiz.'; $wb['error_license_agreement'] = 'Devam etmek için lisans anlaÅŸmasını onaylamalısınız.'; $wb['error_no_database_pw'] = 'Yazdığınız veritabanı parolası geçersiz.'; $wb['error_short_database_pw'] = 'Lütfen daha uzun bir veritabanı parolası yazın.'; -$wb['error_no_value_for'] = '\\"%s\\" alanı boÅŸ olamaz.'; -$wb['error_short_value_for'] = '\\"%s\\" alanına daha uzun bir deÄŸer yazılmalıdır.'; -$wb['error_long_value_for'] = '\\"%s\\" alanına daha kısa bir deÄŸer yazılmalıdır.'; -$wb['error_inv_value_for'] = '\\"%s\\" alanına yazılan deÄŸer geçersiz.'; -$wb['error_inv_email_for'] = '\\"%s\\" alanına yazılan e-posta adresi geçersiz.'; -$wb['error_inv_domain_for'] = '\\"%s\\" alanına yazılan alan adı geçersiz.'; -$wb['error_inv_integer_for'] = '\\"%s\\" alanına yazılan sayı geçersiz.'; -$wb['error_inv_float_for'] = '\\"%s\\" alanına yazılan küsuratlı sayı geçersiz.'; +$wb['error_no_value_for'] = '"%s" alanı boÅŸ olamaz.'; +$wb['error_short_value_for'] = '"%s" alanına daha uzun bir deÄŸer yazılmalıdır.'; +$wb['error_long_value_for'] = '"%s" alanına daha kısa bir deÄŸer yazılmalıdır.'; +$wb['error_inv_value_for'] = '"%s" alanına yazılan deÄŸer geçersiz.'; +$wb['error_inv_email_for'] = '"%s" alanına yazılan e-posta adresi geçersiz.'; +$wb['error_inv_domain_for'] = '"%s" alanına yazılan etki alanı geçersiz.'; +$wb['error_inv_integer_for'] = '"%s" alanına yazılan sayı geçersiz.'; +$wb['error_inv_float_for'] = '"%s" alanına yazılan küsuratlı sayı geçersiz.'; $wb['error_used_location'] = 'Yükleme yoluna daha önce yüklenmiÅŸ bir paket var.'; $wb['installation_task_txt'] = 'Yükleme planlandı'; $wb['installation_error_txt'] = 'Yükleme hatası'; @@ -55,9 +55,4 @@ $wb['installation_success_txt'] = 'Yüklendi'; $wb['installation_remove_txt'] = 'Kaldırma planlandı'; $wb['packagelist_update_finished_txt'] = 'APS paket listesi güncellendi.'; $wb['limit_aps_txt'] = 'Hesabınıza ekleyebileceÄŸiniz en fazla APS kopyası sayısına ulaÅŸtınız.'; -$wb['generate_password_txt'] = 'Parola OluÅŸtur'; -$wb['repeat_password_txt'] = 'Parola Onayı'; -$wb['password_mismatch_txt'] = 'Parola ile onayı aynı deÄŸil.'; -$wb['password_match_txt'] = 'Parola ile onayı aynı.'; -$wb['password_strength_txt'] = 'Parola Güçlüğü'; ?> diff --git a/interface/web/sites/lib/lang/tr_aps_instances_list.lng b/interface/web/sites/lib/lang/tr_aps_instances_list.lng index e8b3532ff4..292c627f85 100644 --- a/interface/web/sites/lib/lang/tr_aps_instances_list.lng +++ b/interface/web/sites/lib/lang/tr_aps_instances_list.lng @@ -4,8 +4,8 @@ $wb['name_txt'] = 'Ad'; $wb['version_txt'] = 'Sürüm'; $wb['customer_txt'] = 'Müşteri'; $wb['status_txt'] = 'Durum'; -$wb['install_location_txt'] = 'Yükleme Konumu'; -$wb['pkg_delete_confirmation'] = 'Bu yüklemeyi silmek istediÄŸinize emin misiniz?'; +$wb['install_location_txt'] = 'Kurulum Konumu'; +$wb['pkg_delete_confirmation'] = 'Bu kurulumu silmek istediÄŸinize emin misiniz?'; $wb['filter_txt'] = 'Arama'; $wb['delete_txt'] = 'Sil'; ?> diff --git a/interface/web/sites/lib/lang/tr_backup_stats_list.lng b/interface/web/sites/lib/lang/tr_backup_stats_list.lng index 65792aa591..f59fcae70a 100644 --- a/interface/web/sites/lib/lang/tr_backup_stats_list.lng +++ b/interface/web/sites/lib/lang/tr_backup_stats_list.lng @@ -1,10 +1,10 @@ <?php -$wb['list_head_txt'] = 'Backup Stats'; +$wb['list_head_txt'] = 'Yedekleme Durumu'; $wb['database_name_txt'] = ''; -$wb['active_txt'] = 'Active'; -$wb['domain_txt'] = 'Domain'; -$wb['backup_count_txt'] = 'Backup count'; -$wb['backup_server_txt'] = 'Server'; -$wb['backup_interval_txt'] = 'Interval / cnt.'; -$wb['backup_size_txt'] = 'Backupsize'; +$wb['active_txt'] = 'Etkin'; +$wb['domain_txt'] = 'Etki Alanı'; +$wb['backup_count_txt'] = 'Yedek sayısı'; +$wb['backup_server_txt'] = 'Sunucu'; +$wb['backup_interval_txt'] = 'Sıklık / Sayı'; +$wb['backup_size_txt'] = 'Yedek Boyutu'; ?> diff --git a/interface/web/sites/lib/lang/tr_cron.lng b/interface/web/sites/lib/lang/tr_cron.lng index f645d76325..d00e6868c7 100644 --- a/interface/web/sites/lib/lang/tr_cron.lng +++ b/interface/web/sites/lib/lang/tr_cron.lng @@ -17,10 +17,10 @@ $wb['run_mday_error_format'] = 'Ayın günü biçimi geçersiz.'; $wb['run_month_error_format'] = 'Ay biçimi geçersiz.'; $wb['run_wday_error_format'] = 'Haftanın günü biçimi geçersiz.'; $wb['command_error_format'] = 'Komut biçimi geçersiz. Ä°nternet adreslerinde yalnız http/https kullanılabilir.'; -$wb['unknown_fieldtype_error'] = 'Bilinmeyen bir alan tipi kullanılmış.'; +$wb['unknown_fieldtype_error'] = 'Bilinmeyen bir alan türü kullanılmış.'; $wb['server_id_error_empty'] = 'Sunucu kodu boÅŸ olamaz.'; +$wb['command_hint_txt'] = 'Örnek: /var/www/clients/musteriX/webY/betigim.sh ya da http://www.etkialanim.com/yol/betik.php, /var/www/clients/musteriX/webY/web yerine [web_root] kodunu kullanabilirsiniz.'; +$wb['log_output_txt'] = 'Günlük çıktısı'; $wb['limit_cron_url_txt'] = 'Yalnız Ä°nternet adresli zamanlanmış görev kullanılabilir. Lütfen zamanlanmış görev komutu olarak http:// ile baÅŸlayan bir Ä°nternet adresi yazın.'; $wb['command_error_empty'] = 'Komut boÅŸ olamaz.'; -$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/tr_database.lng b/interface/web/sites/lib/lang/tr_database.lng index d5d8c7d856..f443bbb620 100644 --- a/interface/web/sites/lib/lang/tr_database.lng +++ b/interface/web/sites/lib/lang/tr_database.lng @@ -1,13 +1,13 @@ <?php $wb['server_id_txt'] = 'Sunucu'; -$wb['type_txt'] = 'Tip'; +$wb['type_txt'] = 'Tür'; $wb['database_name_txt'] = 'Veritabanı Adı'; $wb['database_user_txt'] = 'Veritabanı Kullanıcısı'; $wb['database_ro_user_txt'] = 'Salt okunur veritabanı kullanıcısı'; $wb['optional_txt'] = 'isteÄŸe baÄŸlı'; $wb['database_password_txt'] = 'Veritabanı Parolası'; -$wb['password_strength_txt'] = 'Parola Güçlüğü'; -$wb['database_charset_txt'] = 'Veritabanı Karakter Seti'; +$wb['password_strength_txt'] = 'Parola ZorluÄŸu'; +$wb['database_charset_txt'] = 'Veritabanı Karakter Kümesi'; $wb['select_dbuser_txt'] = 'Veritabanı kullanıcısını seçin'; $wb['no_dbuser_txt'] = 'Yok'; $wb['remote_access_txt'] = 'Uzaktan EriÅŸim'; @@ -16,34 +16,34 @@ $wb['database_remote_error_ips'] = 'Yazılan IP adreslerinden en az biri hatalı $wb['client_txt'] = 'Müşteri'; $wb['active_txt'] = 'Etkin'; $wb['database_client_differs_txt'] = 'Web sitesi ve veritabanının ait olduÄŸu müşteriler farklı.'; -$wb['database_name_error_empty'] = 'Veritabanı adı boÅŸ.'; -$wb['database_name_error_unique'] = 'Sunucu üzerinde aynı adlı bir veritabanı var. Benzersiz bir ad vermek için, veritabanı adının başına alan adınız gibi bir ek ekleyebilirsiniz.'; +$wb['database_name_error_empty'] = 'Veritabanı adı boÅŸ olamaz.'; +$wb['database_name_error_unique'] = 'Sunucu üzerinde aynı adlı bir veritabanı var. Benzersiz bir ad vermek için, veritabanı adının başına etki alanı adınızı ekleyebilirsiniz.'; $wb['database_name_error_regex'] = 'Veritabanı adı geçersiz. Veritabanı adı 2-64 uzunluÄŸunda olmalı ve yalnız a-z, A-Z, 0-9 ve alt çizgi(_) karakterlerinden oluÅŸmalıdır.'; -$wb['database_user_error_empty'] = 'Veritabanı kullanıcısı boÅŸ olamaz.'; -$wb['database_user_error_unique'] = 'Sunucu üzerinde aynı adlı bir veritabanı kullanıcısı zaten var. Benzersiz bir ad vermek için, örneÄŸin veritabanı kullanıcısı adının başına alan adınızı ekleyebilirsiniz.'; +$wb['database_user_error_empty'] = 'Veritabanı kullanıcı adı boÅŸ olamaz.'; +$wb['database_user_error_unique'] = 'Sunucu üzerinde aynı adlı bir veritabanı kullanıcısı zaten var. Benzersiz bir ad vermek için, örneÄŸin veritabanı kullanıcısı adının başına etki alanı adınızı ekleyebilirsiniz.'; $wb['database_user_error_regex'] = 'Veritabanı kullanıcı adı geçersiz. Veritabanı kullanıcı adı 2-64 uzunluÄŸunda olmalı ve yalnız a-z, A-Z, 0-9 ve alt çizgi(_) karakterlerinden oluÅŸmalıdır.'; -$wb['limit_database_txt'] = 'EkleyebileceÄŸiniz en fazla veritabanı sayısına ulaÅŸtınız.'; +$wb['limit_database_txt'] = 'Hesabınıza ekleyebileceÄŸiniz en fazla veritabanı sayısına ulaÅŸtınız.'; $wb['database_name_change_txt'] = 'Veritabanı adı deÄŸiÅŸtirilemedi'; $wb['database_user_missing_txt'] = 'Lütfen bu veritabanı için bir veritabanı kullanıcısı seçin.'; -$wb['database_charset_change_txt'] = 'Veritabanı karakter seti deÄŸiÅŸtirilemedi'; +$wb['database_charset_change_txt'] = 'Veritabanı karakter kümesi deÄŸiÅŸtirilemedi'; $wb['database_name_error_len'] = 'Veritabanı adı - {db} - çok uzun. Veritabanı adı ön ek dahil en fazla 64 karakter olabilir.'; $wb['database_user_error_len'] = 'Veritabanı kullanıcı adı - {user} - çok uzun. Veritabanı kullanıcı adı ön ek dahil en fazla 16 karakter olabilir.'; -$wb['parent_domain_id_txt'] = 'Site'; +$wb['parent_domain_id_txt'] = 'Web Sitesi'; $wb['database_site_error_empty'] = 'Veritabanının ait olduÄŸu siteyi seçin.'; $wb['select_site_txt'] = '- Siteyi Seçin -'; $wb['btn_save_txt'] = 'Kaydet'; $wb['btn_cancel_txt'] = 'Geri'; -$wb['generate_password_txt'] = 'Parola OluÅŸtur'; +$wb['generate_password_txt'] = 'Parola Ãœret'; $wb['repeat_password_txt'] = 'Parola Onayı'; $wb['password_mismatch_txt'] = 'Parola ile onayı aynı deÄŸil.'; $wb['password_match_txt'] = 'Parola ile onayı aynı.'; $wb['globalsearch_resultslimit_of_txt'] = '/'; $wb['globalsearch_resultslimit_results_txt'] = 'sonuç'; -$wb['globalsearch_noresults_text_txt'] = 'Sonuç yok'; +$wb['globalsearch_noresults_text_txt'] = 'Uygun bir sonuç bulunamadı.'; $wb['globalsearch_noresults_limit_txt'] = '0 sonuç'; $wb['globalsearch_searchfield_watermark_txt'] = 'Arama'; $wb['globalsearch_suggestions_text_txt'] = 'Öneriler'; -$wb['limit_database_quota_txt'] = 'Database quota'; -$wb['limit_database_quota_error_notint'] = 'The database quota limit must be a number.'; -$wb['limit_database_quota_free_txt'] = 'Max. available DB quota '; +$wb['limit_database_quota_txt'] = 'Veritabanı Kotası'; +$wb['limit_database_quota_error_notint'] = 'Veritabanı kotası bir sayı olmalıdır'; +$wb['limit_database_quota_free_txt'] = 'Kullanılabilecek en fazla veritabanı kotası'; ?> diff --git a/interface/web/sites/lib/lang/tr_database_admin_list.lng b/interface/web/sites/lib/lang/tr_database_admin_list.lng index fc92e1957e..e13404415c 100644 --- a/interface/web/sites/lib/lang/tr_database_admin_list.lng +++ b/interface/web/sites/lib/lang/tr_database_admin_list.lng @@ -2,11 +2,11 @@ $wb['list_head_txt'] = 'Veritabanı'; $wb['active_txt'] = 'Etkin'; $wb['remote_access_txt'] = 'Uzaktan EriÅŸim'; +$wb['type_txt'] = 'Tür'; $wb['server_id_txt'] = 'Sunucu'; -$wb['database_user_txt'] = 'Veritabanı kullanıcısı'; -$wb['database_name_txt'] = 'Veritabanı adı'; -$wb['add_new_record_txt'] = 'Veritabanı ekle'; +$wb['database_user_txt'] = 'Veritabanı Kullanıcı Adı'; +$wb['database_name_txt'] = 'Veritabanı Adı'; +$wb['add_new_record_txt'] = 'Veritabanı Ekle'; $wb['sys_groupid_txt'] = 'Müşteri'; $wb['parent_domain_id_txt'] = 'Web Sitesi'; -$wb['type_txt'] = 'Type'; ?> diff --git a/interface/web/sites/lib/lang/tr_database_list.lng b/interface/web/sites/lib/lang/tr_database_list.lng index 43ea5f9b6f..591a72af11 100644 --- a/interface/web/sites/lib/lang/tr_database_list.lng +++ b/interface/web/sites/lib/lang/tr_database_list.lng @@ -2,10 +2,10 @@ $wb['list_head_txt'] = 'Veritabanı'; $wb['active_txt'] = 'Etkin'; $wb['remote_access_txt'] = 'Uzaktan EriÅŸim'; +$wb['type_txt'] = 'Tür'; $wb['server_id_txt'] = 'Sunucu'; $wb['database_user_txt'] = 'Veritabanı Kullanıcısı'; $wb['database_name_txt'] = 'Veritabanı Adı'; $wb['add_new_record_txt'] = 'Veritabanı Ekle'; $wb['parent_domain_id_txt'] = 'Web Sitesi'; -$wb['type_txt'] = 'Type'; ?> diff --git a/interface/web/sites/lib/lang/tr_database_quota_stats_list.lng b/interface/web/sites/lib/lang/tr_database_quota_stats_list.lng index 50f2dcc496..a65174977b 100644 --- a/interface/web/sites/lib/lang/tr_database_quota_stats_list.lng +++ b/interface/web/sites/lib/lang/tr_database_quota_stats_list.lng @@ -1,9 +1,9 @@ <?php -$wb['database_txt'] = 'Database'; -$wb['server_name_txt'] = 'Server'; -$wb['client_txt'] = 'Client'; -$wb['used_txt'] = 'Used space'; -$wb['quota_txt'] = 'Quota'; -$wb['percentage_txt'] = 'Used in %'; -$wb['list_head_txt'] = 'Database Quota'; +$wb['database_txt'] = 'Veritabanı'; +$wb['server_name_txt'] = 'Sunucu'; +$wb['client_txt'] = 'Müşteri'; +$wb['used_txt'] = 'Kullanılan'; +$wb['quota_txt'] = 'Kota'; +$wb['percentage_txt'] = 'Kullanım Yüzdesi'; +$wb['list_head_txt'] = 'Veritabanı Kotası'; ?> diff --git a/interface/web/sites/lib/lang/tr_database_user.lng b/interface/web/sites/lib/lang/tr_database_user.lng index 785c4ecce4..3f6ba89f49 100644 --- a/interface/web/sites/lib/lang/tr_database_user.lng +++ b/interface/web/sites/lib/lang/tr_database_user.lng @@ -1,25 +1,25 @@ <?php $wb['database_user_txt'] = 'Veritabanı Kullanıcısı'; $wb['database_password_txt'] = 'Veritabanı Parolası'; -$wb['password_strength_txt'] = 'Parola Güçlüğü'; +$wb['password_strength_txt'] = 'Parola ZorluÄŸu'; $wb['client_txt'] = 'Müşteri'; $wb['active_txt'] = 'Etkin'; $wb['database_user_error_empty'] = 'Veritabanı kullanıcısı boÅŸ olamaz.'; -$wb['database_user_error_unique'] = 'Sunucuda aynı adlı bir veritabanı kullanıcısı var. Benzersiz bir ad vermek için, kullanıcı adının başına alan adınız gibi bir ek ekleyebilirsiniz.'; +$wb['database_user_error_unique'] = 'Sunucuda aynı adlı bir veritabanı kullanıcısı var. Benzersiz bir ad vermek için, kullanıcı adının başına etki alanınızı ekleyebilirsiniz.'; $wb['database_user_error_regex'] = 'Veritabanı kullanıcı adı geçersiz. Veritabanı kullanıcı adı 2-64 uzunluÄŸunda olmalı ve yalnız a-z, A-Z, 0-9 ve alt çizgi(_) karakterlerinden oluÅŸmalıdır.'; $wb['database_user_error_len'] = 'Veritabanı kullanıcı adı - {user} - çok uzun. Ön ek dahil en uzun veritabanı kullanıcı adı 16 karakter olmalıdır.'; $wb['btn_save_txt'] = 'Kaydet'; $wb['btn_cancel_txt'] = 'Geri'; -$wb['generate_password_txt'] = 'Parola OluÅŸtur'; +$wb['generate_password_txt'] = 'Parola Ãœret'; $wb['repeat_password_txt'] = 'Parola Onayı'; $wb['password_mismatch_txt'] = 'Parola ile onayı aynı deÄŸil.'; $wb['password_match_txt'] = 'Parola ile onayı aynı.'; $wb['globalsearch_resultslimit_of_txt'] = '/'; $wb['globalsearch_resultslimit_results_txt'] = 'sonuç'; -$wb['globalsearch_noresults_text_txt'] = 'Sonuç yok.'; +$wb['globalsearch_noresults_text_txt'] = 'Uygun bir sonuç bulunamadı.'; $wb['globalsearch_noresults_limit_txt'] = '0 sonuç'; $wb['globalsearch_searchfield_watermark_txt'] = 'Arama'; $wb['globalsearch_suggestions_text_txt'] = 'Öneriler'; -$wb['limit_database_user_txt'] = 'The max. number of database users is reached.'; -$wb['database_password_error_empty'] = 'Database password is empty.'; +$wb['limit_database_user_txt'] = 'Hesabınıza ekleyebileceÄŸiniz en fazla veritabanı kullanıcısı sayısına ulaÅŸtınız.'; +$wb['database_password_error_empty'] = 'Veritabanı parolası boÅŸ.'; ?> diff --git a/interface/web/sites/lib/lang/tr_ftp_sites_stats_list.lng b/interface/web/sites/lib/lang/tr_ftp_sites_stats_list.lng index e44025a715..6d2da369d2 100644 --- a/interface/web/sites/lib/lang/tr_ftp_sites_stats_list.lng +++ b/interface/web/sites/lib/lang/tr_ftp_sites_stats_list.lng @@ -1,10 +1,10 @@ <?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'; +$wb['list_head_txt'] = 'FTP TrafiÄŸi'; +$wb['domain_txt'] = 'Etki Alanı'; +$wb['this_month_txt'] = 'Bu ay'; +$wb['last_month_txt'] = 'Geçen ay'; +$wb['this_year_txt'] = 'Bu yıl'; +$wb['last_year_txt'] = 'Geçen yıl'; +$wb['sum_txt'] = 'Toplam (Ä°ndirme + Yükleme)'; +$wb['in_out_txt'] = 'Ä°nd/Yük'; ?> diff --git a/interface/web/sites/lib/lang/tr_ftp_user.lng b/interface/web/sites/lib/lang/tr_ftp_user.lng index 665d2ec477..155573595e 100644 --- a/interface/web/sites/lib/lang/tr_ftp_user.lng +++ b/interface/web/sites/lib/lang/tr_ftp_user.lng @@ -12,7 +12,7 @@ $wb['server_id_txt'] = 'Sunucu'; $wb['parent_domain_id_txt'] = 'Web Sitesi'; $wb['username_txt'] = 'Kullanıcı Adı'; $wb['password_txt'] = 'Parola'; -$wb['password_strength_txt'] = 'Parola Güçlüğü'; +$wb['password_strength_txt'] = 'Parola ZorluÄŸu'; $wb['quota_size_txt'] = 'Disk Kotası'; $wb['active_txt'] = 'Etkin'; $wb['limit_ftp_user_txt'] = 'Hesabınıza ekleyebileceÄŸiniz en fazla FTP kullanıcısı sayısına ulaÅŸtınız.'; @@ -21,15 +21,16 @@ $wb['username_error_unique'] = 'Bu kullanıcı adı zaten var.'; $wb['username_error_regex'] = 'Kullanıcı adında izin verilmeyen karakterler var.'; $wb['quota_size_error_empty'] = 'Kota boÅŸ olamaz.'; $wb['uid_error_empty'] = 'UID boÅŸ olamaz.'; +$wb['gid_error_empty'] = 'GID boÅŸ olamaz.'; $wb['directory_error_empty'] = 'Klasör boÅŸ olamaz.'; $wb['directory_error_notinweb'] = 'Klasör web kök klasörünün altında bulunmalıdır.'; $wb['parent_domain_id_error_empty'] = 'Bir web sitesi seçmelisiniz.'; $wb['quota_size_error_regex'] = 'Kota: Sınırsız olması için -1 sınırlamak için sıfırdan büyük bir rakam yazın'; $wb['dir_dot_error'] = 'Yol içinde .. kullanılamaz.'; $wb['dir_slashdot_error'] = 'Yol içinde ./ kullanılamaz.'; -$wb['generate_password_txt'] = 'Parola OluÅŸtur'; +$wb['generate_password_txt'] = 'Parola Ãœret'; $wb['repeat_password_txt'] = 'Parola Onayı'; $wb['password_mismatch_txt'] = 'Parola ile onayı aynı deÄŸil.'; $wb['password_match_txt'] = 'Parola ile onayı aynı.'; -$wb['expires_txt'] = 'Expire at'; +$wb['expires_txt'] = 'Sona Erme Zamanı'; ?> diff --git a/interface/web/sites/lib/lang/tr_shell_user.lng b/interface/web/sites/lib/lang/tr_shell_user.lng index 5610d59939..e2aa844843 100644 --- a/interface/web/sites/lib/lang/tr_shell_user.lng +++ b/interface/web/sites/lib/lang/tr_shell_user.lng @@ -7,7 +7,7 @@ $wb['server_id_txt'] = 'Sunucu'; $wb['parent_domain_id_txt'] = 'Web Sitesi'; $wb['username_txt'] = 'Kullanıcı Adı'; $wb['password_txt'] = 'Parola'; -$wb['password_strength_txt'] = 'Parola Güçlüğü'; +$wb['password_strength_txt'] = 'Parola ZorluÄŸu'; $wb['chroot_txt'] = 'Chroot KabuÄŸu'; $wb['quota_size_txt'] = 'Kota'; $wb['active_txt'] = 'Etkin'; @@ -22,7 +22,7 @@ $wb['parent_domain_id_error_empty'] = 'Bir web sitesi seçmelisiniz.'; $wb['ssh_rsa_txt'] = 'SSH-RSA Genel Anahtarı (anahtar ile oturum açmak için)'; $wb['dir_dot_error'] = 'Yol içinde .. . kullanılamaz.'; $wb['dir_slashdot_error'] = 'Yol içinde ./ kullanılamaz.'; -$wb['generate_password_txt'] = 'Parola OluÅŸtur'; +$wb['generate_password_txt'] = 'Parola Ãœret'; $wb['repeat_password_txt'] = 'Parola Onayı'; $wb['password_mismatch_txt'] = 'Parola ile onayı aynı deÄŸil.'; $wb['password_match_txt'] = 'Parola ile onayı aynı.'; diff --git a/interface/web/sites/lib/lang/tr_shell_user_list.lng b/interface/web/sites/lib/lang/tr_shell_user_list.lng index b88c7fa748..5c375a232a 100644 --- a/interface/web/sites/lib/lang/tr_shell_user_list.lng +++ b/interface/web/sites/lib/lang/tr_shell_user_list.lng @@ -1,8 +1,8 @@ <?php -$wb['list_head_txt'] = 'Shell Kullanıcısı'; +$wb['list_head_txt'] = 'Kabuk Kullanıcısı'; $wb['active_txt'] = 'Etkin'; $wb['server_id_txt'] = 'Sunucu'; -$wb['parent_domain_id_txt'] = 'Site'; +$wb['parent_domain_id_txt'] = 'Web Sitesi'; $wb['username_txt'] = 'Kullanıcı Adı'; -$wb['add_new_record_txt'] = 'Shell Kullanıcısı Ekle'; +$wb['add_new_record_txt'] = 'Kabuk Kullanıcısı Ekle'; ?> diff --git a/interface/web/sites/lib/lang/tr_user_quota_stats_list.lng b/interface/web/sites/lib/lang/tr_user_quota_stats_list.lng index 82103410fe..be7712fd46 100644 --- a/interface/web/sites/lib/lang/tr_user_quota_stats_list.lng +++ b/interface/web/sites/lib/lang/tr_user_quota_stats_list.lng @@ -1,6 +1,6 @@ <?php $wb['list_head_txt'] = 'Web Sitesi Disk Kotası'; -$wb['domain_txt'] = 'Alan Adı / Web Sitesi'; +$wb['domain_txt'] = 'Etki Alanı / Web Sitesi'; $wb['system_user_txt'] = 'Linux Kullanıcısı'; $wb['used_txt'] = 'Kullanılan Alan'; $wb['hard_txt'] = 'Donanım Sınırı'; diff --git a/interface/web/sites/lib/lang/tr_web_aliasdomain.lng b/interface/web/sites/lib/lang/tr_web_aliasdomain.lng index 7e4c0b7c51..d7ded7849a 100644 --- a/interface/web/sites/lib/lang/tr_web_aliasdomain.lng +++ b/interface/web/sites/lib/lang/tr_web_aliasdomain.lng @@ -1,10 +1,10 @@ <?php -$wb['domain_txt'] = 'Takma Alan Adı'; +$wb['domain_txt'] = 'Takma Etki Alanı'; $wb['backup_interval_txt'] = 'Yedekleme Sıklığı'; $wb['backup_copies_txt'] = 'Yedek Kopyası Sayısı'; $wb['ssl_state_txt'] = 'Ä°l'; $wb['ssl_locality_txt'] = 'Bölge'; -$wb['ssl_organisation_txt'] = 'Kurum'; +$wb['ssl_organisation_txt'] = 'KuruluÅŸ'; $wb['ssl_organisation_unit_txt'] = 'Birim'; $wb['ssl_country_txt'] = 'Ãœlke'; $wb['ssl_key_txt'] = 'SSL Anahtarı'; @@ -12,12 +12,12 @@ $wb['ssl_request_txt'] = 'SSL Ä°steÄŸi'; $wb['ssl_cert_txt'] = 'SSL Sertifikası'; $wb['ssl_bundle_txt'] = 'SSL Yığını'; $wb['ssl_action_txt'] = 'SSL Ä°ÅŸlemi'; -$wb['ssl_domain_txt'] = 'SSL Alan Adı'; +$wb['ssl_domain_txt'] = 'SSL Etki Alanı'; $wb['server_id_txt'] = 'Sunucu'; $wb['web_folder_error_regex'] = 'Yazdığınız klasör geçersiz. / karakterini yazmayın.'; -$wb['type_txt'] = 'Tip'; +$wb['type_txt'] = 'Tür'; $wb['parent_domain_id_txt'] = 'Ãœst Web Sitesi'; -$wb['redirect_type_txt'] = 'Yönlendirme Tipi'; +$wb['redirect_type_txt'] = 'Yönlendirme Türü'; $wb['redirect_path_txt'] = 'Yönlendirme Yolu'; $wb['active_txt'] = 'Etkin'; $wb['document_root_txt'] = 'Kök Klasör'; @@ -25,30 +25,30 @@ $wb['system_user_txt'] = 'Linux Kullanıcısı'; $wb['system_group_txt'] = 'Linux Grubu'; $wb['ip_address_txt'] = 'IPv4 Adresi'; $wb['ipv6_address_txt'] = 'IPv6 Adresi'; -$wb['vhost_type_txt'] = 'SSunucu Tipi'; +$wb['vhost_type_txt'] = 'Sanal Sunucu Türü'; $wb['hd_quota_txt'] = 'Disk Kotası'; $wb['traffic_quota_txt'] = 'Trafik Kotası'; $wb['cgi_txt'] = 'CGI'; $wb['ssi_txt'] = 'SSI'; $wb['errordocs_txt'] = 'Özel Hata Sayfaları'; -$wb['subdomain_txt'] = 'Otomatik Alt Alan'; +$wb['subdomain_txt'] = 'Otomatik Alt Etki Alanı'; $wb['ssl_txt'] = 'SSL'; $wb['suexec_txt'] = 'SuEXEC'; $wb['php_txt'] = 'PHP'; $wb['client_txt'] = 'Müşteri'; -$wb['limit_web_domain_txt'] = 'Hesabınıza ekleyebileceÄŸiniz en fazla alan adı sayısına ulaÅŸtınız.'; -$wb['limit_web_aliasdomain_txt'] = 'Hesabınıza ekleyebileceÄŸiniz en fazla baÅŸka alan adı sayısına ulaÅŸtınız.'; -$wb['limit_web_subdomain_txt'] = 'Hesabınıza ekleyebileceÄŸiniz en fazla alt alan adı sayısına ulaÅŸtınız.'; +$wb['limit_web_domain_txt'] = 'Hesabınıza ekleyebileceÄŸiniz en fazla etki alanı sayısına ulaÅŸtınız.'; +$wb['limit_web_aliasdomain_txt'] = 'Hesabınıza ekleyebileceÄŸiniz en fazla takma etki alanı sayısına ulaÅŸtınız.'; +$wb['limit_web_subdomain_txt'] = 'Hesabınıza ekleyebileceÄŸiniz en fazla alt etki alanı sayısına ulaÅŸtınız.'; $wb['apache_directives_txt'] = 'Apache Yönergeleri'; -$wb['domain_error_empty'] = 'Alan adı boÅŸ olamaz.'; -$wb['domain_error_unique'] = 'Aynı adlı bir web sitesi ya da alt/baÅŸka alan adı var.'; -$wb['domain_error_regex'] = 'Alan adı geçersiz.'; -$wb['domain_error_autosub'] = 'Aynı ayarlara sahip bir alt alan adı zaten var.'; +$wb['domain_error_empty'] = 'Etki alanı boÅŸ olamaz.'; +$wb['domain_error_unique'] = 'Aynı adlı bir web sitesi ya da alt/takma etki alanı var.'; +$wb['domain_error_regex'] = 'Etki alanı geçersiz.'; +$wb['domain_error_autosub'] = 'Aynı ayarlara sahip bir alt etki alanı zaten var.'; $wb['hd_quota_error_empty'] = 'Disk kotası 0 ya da boÅŸ olamaz.'; $wb['traffic_quota_error_empty'] = 'Trafik kotası boÅŸ olamaz.'; -$wb['error_ssl_state_empty'] = 'SSL ÅŸehri boÅŸ olamaz.'; +$wb['error_ssl_state_empty'] = 'SSL ili boÅŸ olamaz.'; $wb['error_ssl_locality_empty'] = 'SSL bölgesi boÅŸ olamaz.'; -$wb['error_ssl_organisation_empty'] = 'SSL kurumu boÅŸ olamaz.'; +$wb['error_ssl_organisation_empty'] = 'SSL kuruluÅŸu boÅŸ olamaz.'; $wb['error_ssl_organisation_unit_empty'] = 'SSL birimi boÅŸ olamaz.'; $wb['error_ssl_country_empty'] = 'SSL ülkesi boÅŸ olamaz.'; $wb['error_ssl_cert_empty'] = 'SSL sertifikası alanı boÅŸ olamaz'; @@ -56,31 +56,31 @@ $wb['client_group_id_txt'] = 'Müşteri'; $wb['stats_password_txt'] = 'Web Ä°statistikleri Parolası'; $wb['allow_override_txt'] = 'Apache AllowOverride'; $wb['limit_web_quota_free_txt'] = 'Kullanılabilecek En Fazla Disk Kotası'; -$wb['ssl_state_error_regex'] = 'SSL ÅŸehri geçersiz. Kullanılabilecek karakterler: a-z, 0-9 ve .,-_'; -$wb['ssl_locality_error_regex'] = 'SSL bölgesi geçersiz. Kullanılabilecek karakterler: a-z, 0-9 ve .,-_'; -$wb['ssl_organisation_error_regex'] = 'SSL kurumu geçersiz. Kullanılabilecek karakterler: a-z, 0-9 ve .,-_'; -$wb['ssl_organistaion_unit_error_regex'] = 'SSL birimi geçersiz. Kullanılabilecek karakterler: a-z, 0-9 ve .,-_'; +$wb['ssl_state_error_regex'] = 'SSL ili geçersiz. Kullanılabilecek karakterler: a-z, 0-9 ve .,-_&äöüÄÖÜ'; +$wb['ssl_locality_error_regex'] = 'SSL bölgesi geçersiz. Kullanılabilecek karakterler: a-z, 0-9 ve .,-_&äöüÄÖÜ'; +$wb['ssl_organisation_error_regex'] = 'SSL kuruluÅŸu geçersiz. Kullanılabilecek karakterler: a-z, 0-9 ve .,-_&äöüÄÖÜ'; +$wb['ssl_organistaion_unit_error_regex'] = 'SSL kuruluÅŸu birimi geçersiz. Kullanılabilecek karakterler: a-z, 0-9 ve .,-_&äöüÄÖÜ'; $wb['ssl_country_error_regex'] = 'SSL ülkesi geçersiz. Kullanılabilecek karakterler: A-Z'; $wb['limit_traffic_quota_free_txt'] = 'Kullanılabilecek en fazla trafik kotası'; $wb['redirect_error_regex'] = 'Yönlendirme yolu geçersiz. Geçerli örnekler: /test/ ya da http://www.domain.tld/test/'; $wb['php_open_basedir_txt'] = 'PHP open_basedir'; $wb['traffic_quota_exceeded_txt'] = 'Trafik kotası aşıldı'; $wb['ruby_txt'] = 'Ruby'; -$wb['stats_user_txt'] = 'Web istatistikleri kullanıcı adı'; -$wb['stats_type_txt'] = 'Web istatistikleri yazılımı'; -$wb['custom_php_ini_txt'] = 'Özel php.ini ayarları'; +$wb['stats_user_txt'] = 'Web Ä°statistikleri Kullanıcı Adı'; +$wb['stats_type_txt'] = 'Web Ä°statistikleri Uygulaması'; +$wb['custom_php_ini_txt'] = 'Özel php.ini Ayarları'; $wb['none_txt'] = 'Yok'; $wb['disabled_txt'] = 'Devre dışı'; $wb['no_redirect_txt'] = 'Yönlendirme yok'; $wb['no_flag_txt'] = 'Ä°ÅŸaret yok'; -$wb['save_certificate_txt'] = 'Sertifikayı kaydet'; -$wb['create_certificate_txt'] = 'Sertifika ekle'; -$wb['delete_certificate_txt'] = 'Sertifikayı sil'; +$wb['save_certificate_txt'] = 'Sertifikayı Kaydet'; +$wb['create_certificate_txt'] = 'Sertifika Ekle'; +$wb['delete_certificate_txt'] = 'Sertifikayı Sil'; $wb['nginx_directives_txt'] = 'nginx Yönergeleri'; $wb['seo_redirect_txt'] = 'AMD Yönlendirme'; $wb['non_www_to_www_txt'] = 'Non-www -> www'; $wb['www_to_non_www_txt'] = 'www -> non-www'; -$wb['php_fpm_use_socket_txt'] = 'PHP-FPM İçin Soket Kullanılsın'; +$wb['php_fpm_use_socket_txt'] = 'PHP-FPM Soketi'; $wb['error_no_sni_txt'] = 'Bu sunucuda SSL için SNI etkinleÅŸtirilmemiÅŸ. Bir IP adresi için yalnız bir SSL sertifikası etkinleÅŸtirebilirsiniz.'; $wb['python_txt'] = 'Python'; $wb['perl_txt'] = 'Perl'; @@ -102,14 +102,14 @@ $wb['pm_max_requests_txt'] = 'PHP-FPM pm.max_requests'; $wb['pm_process_idle_timeout_error_regex'] = 'PHP-FPM pm.process_idle_timeout deÄŸeri pozitif bir tamsayı olmalıdır.'; $wb['pm_max_requests_error_regex'] = 'PHP-FPM pm.max_requests deÄŸeri sıfır ya da pozitif bir tamsayı olmalıdır.'; $wb['pm_ondemand_hint_txt'] = 'Ä°steÄŸe baÄŸlı iÅŸlem yöneticisini kullanabilmek için PHP Sürümünüz >= 5.3.9 olmalıdır. Daha önceki bir PHP sürümü için ondemand özelliÄŸini seçerseniz, PHP baÅŸlatılamaz!'; -$wb['generate_password_txt'] = 'Parola OluÅŸtur'; +$wb['generate_password_txt'] = 'Parola Ãœret'; $wb['repeat_password_txt'] = 'Parola Onayı'; $wb['password_mismatch_txt'] = 'Parola ile onayı aynı deÄŸil.'; $wb['password_match_txt'] = 'Parola ile onayı aynı.'; -$wb['available_php_directive_snippets_txt'] = 'Kullanılabilecek PHP Yönerge Parçaları:'; -$wb['available_apache_directive_snippets_txt'] = 'Kullanılabilecek Apache Yönerge Parçaları:'; -$wb['available_nginx_directive_snippets_txt'] = 'Kullanılabilecek nginx Yönerge Parçaları:'; +$wb['available_php_directive_snippets_txt'] = 'Kullanılabilecek PHP Yönerge Kod Parçaları:'; +$wb['available_apache_directive_snippets_txt'] = 'Kullanılabilecek Apache Yönerge Kod Parçaları:'; +$wb['available_nginx_directive_snippets_txt'] = 'Kullanılabilecek nginx Yönerge Kod Parçaları:'; $wb['proxy_directives_txt'] = 'Vekil Sunucu Yönergeleri'; -$wb['available_proxy_directive_snippets_txt'] = 'Kullanılabilecek Vekil Sunucu Yönerge Parçaları:'; -$wb['Domain'] = 'BaÅŸka alan adı'; +$wb['available_proxy_directive_snippets_txt'] = 'Kullanılabilecek Vekil Sunucu Yönerge Kod Parçaları:'; +$wb['Domain'] = 'Takma Etki Alanı'; ?> diff --git a/interface/web/sites/lib/lang/tr_web_aliasdomain_list.lng b/interface/web/sites/lib/lang/tr_web_aliasdomain_list.lng index b7acfd099a..e4dcaacbe7 100644 --- a/interface/web/sites/lib/lang/tr_web_aliasdomain_list.lng +++ b/interface/web/sites/lib/lang/tr_web_aliasdomain_list.lng @@ -1,14 +1,14 @@ <?php -$wb['list_head_txt'] = 'Takma Alan Adı'; +$wb['list_head_txt'] = 'Takma Etki Alanı Adı'; $wb['active_txt'] = 'Etkin'; $wb['server_id_txt'] = 'Sunucu'; -$wb['parent_domain_id_txt'] = 'Web Sitesi'; -$wb['domain_txt'] = 'Takma Alan Adı'; -$wb['add_new_record_txt'] = 'Takma Alan Adı Ekle'; -$wb['domain_error_empty'] = 'Alan adı boÅŸ olamaz.'; -$wb['domain_error_unique'] = 'Aynı alan adı zaten var.'; -$wb['domain_error_regex'] = 'Alan adı geçersiz.'; +$wb['parent_domain_id_txt'] = 'Web SitesÅŸ'; +$wb['domain_txt'] = 'Takma Etki Alanı Adı'; +$wb['add_new_record_txt'] = 'Yeni takma etki alanı adı ekle'; +$wb['domain_error_empty'] = 'Etki alanı adı boÅŸ olamaz.'; +$wb['domain_error_unique'] = 'Etki alanı adı eÅŸsiz olmalıdır.'; +$wb['domain_error_regex'] = 'Etki alanı adı geçersiz.'; $wb['no_redirect_txt'] = 'Yönlendirme yok'; $wb['no_flag_txt'] = 'Ä°ÅŸaret yok'; -$wb['none_txt'] = 'Yok'; +$wb['none_txt'] = 'Hiçbiri'; ?> diff --git a/interface/web/sites/lib/lang/tr_web_backup_list.lng b/interface/web/sites/lib/lang/tr_web_backup_list.lng index c9bc16ae78..31aea494ca 100644 --- a/interface/web/sites/lib/lang/tr_web_backup_list.lng +++ b/interface/web/sites/lib/lang/tr_web_backup_list.lng @@ -1,8 +1,9 @@ <?php $wb['list_head_txt'] = 'Alınmış Yedekler'; $wb['date_txt'] = 'Tarih'; -$wb['backup_type_txt'] = 'Tip'; +$wb['backup_type_txt'] = 'Tür'; $wb['filename_txt'] = 'Yedek Dosyası'; +$wb['filesize_txt'] = 'Dosya Boyutu'; $wb['restore_backup_txt'] = 'Geri Yükle'; $wb['download_backup_txt'] = 'Ä°ndir'; $wb['download_info_txt'] = 'Yedek dosyası bir kaç dakika içinde web sitesinin backup klasörü altında indirilmeye hazır olacak.'; @@ -10,12 +11,12 @@ $wb['restore_info_txt'] = 'YedeÄŸin geri yüklenmesine baÅŸlandı. Bu iÅŸlemin t $wb['restore_confirm_txt'] = 'Geri yükleme iÅŸlemi web sitenizde bulunan dosyaların üzerine yazar. Bu yedeÄŸi geri yüklemek istediÄŸinize emin misiniz?'; $wb['download_pending_txt'] = 'Zaten bekleyen bir yedek indirme iÅŸlemi var.'; $wb['restore_pending_txt'] = 'Zaten bekleyen bir yedek geri yükleme iÅŸlemi var.'; +$wb['delete_backup_txt'] = 'YedeÄŸi Sil'; +$wb['delete_info_txt'] = 'YedeÄŸin silinmesine baÅŸlandı. Bu iÅŸlemin tamamlanması bir kaç dakika sürebilir.'; +$wb['delete_confirm_txt'] = 'Gerçekten bu yedeÄŸi silmek istediÄŸinize emin misiniz?'; +$wb['delete_pending_txt'] = 'Bekleyen bir yedek silme iÅŸlemi var.'; +$wb['backup_type_mongodb'] = 'MongoDB Veritabanı'; $wb['backup_type_mysql'] = 'MySQL Veritabanı'; $wb['backup_type_web'] = 'Web sitesi dosyaları'; -$wb['filesize_txt'] = 'Filesize'; -$wb['delete_backup_txt'] = 'Delete Backup'; -$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_mongodb'] = 'MongoDB Database'; + ?> diff --git a/interface/web/sites/lib/lang/tr_web_childdomain.lng b/interface/web/sites/lib/lang/tr_web_childdomain.lng index e11c6a92b5..235e870117 100644 --- a/interface/web/sites/lib/lang/tr_web_childdomain.lng +++ b/interface/web/sites/lib/lang/tr_web_childdomain.lng @@ -1,26 +1,26 @@ <?php -$wb['ssl_state_txt'] = 'Mevki'; -$wb['ssl_locality_txt'] = 'Semt'; -$wb['ssl_organisation_txt'] = 'Organizasyon'; -$wb['ssl_organisation_unit_txt'] = 'Organizasyon Unitesi'; +$wb['ssl_state_txt'] = 'Ä°l'; +$wb['ssl_locality_txt'] = 'Bölge'; +$wb['ssl_organisation_txt'] = 'KuruluÅŸ'; +$wb['ssl_organisation_unit_txt'] = 'KuruluÅŸ Birimi'; $wb['ssl_country_txt'] = 'Ãœlke'; $wb['ssl_request_txt'] = 'SSL Ä°steÄŸi'; $wb['ssl_cert_txt'] = 'SSL Sertifikası'; $wb['ssl_bundle_txt'] = 'SSL Yığını'; -$wb['ssl_action_txt'] = 'SSL Eylemi'; +$wb['ssl_action_txt'] = 'SSL Ä°ÅŸlemi'; $wb['server_id_txt'] = 'Sunucu'; -$wb['domain_txt'] = 'Domain'; -$wb['type_txt'] = 'ÇeÅŸit'; -$wb['parent_domain_id_txt'] = 'Ana Website'; -$wb['redirect_type_txt'] = 'Yönlendirme ÇeÅŸidi'; +$wb['domain_txt'] = 'Etki Alanı'; +$wb['type_txt'] = 'Tür'; +$wb['parent_domain_id_txt'] = 'Ana Web Sitesi'; +$wb['redirect_type_txt'] = 'Yönlendirme Türü'; $wb['redirect_path_txt'] = 'Yönlendirme Yolu'; -$wb['active_txt'] = 'Aktif'; -$wb['document_root_txt'] = 'Documentroot'; +$wb['active_txt'] = 'Etkin'; +$wb['document_root_txt'] = 'Belge Kök Klasörü'; $wb['system_user_txt'] = 'Linux Kullanıcısı'; $wb['system_group_txt'] = 'Linux Grubu'; $wb['ip_address_txt'] = 'IP Adresleri'; -$wb['vhost_type_txt'] = 'VHost ÇeÅŸidi'; -$wb['hd_quota_txt'] = 'Harddisk Kotası'; +$wb['vhost_type_txt'] = 'VHost Türü'; +$wb['hd_quota_txt'] = 'Sabit Disk Kotası'; $wb['traffic_quota_txt'] = 'Trafik Kotası'; $wb['cgi_txt'] = 'CGI'; $wb['ssi_txt'] = 'SSI'; @@ -28,93 +28,93 @@ $wb['ssl_txt'] = 'SSL'; $wb['suexec_txt'] = 'SuEXEC'; $wb['php_txt'] = 'PHP'; $wb['client_txt'] = 'Müşteri'; -$wb['limit_web_domain_txt'] = 'Hesabınızdaki max. web domaini sayısına ulaÅŸtınız.'; -$wb['limit_web_aliasdomain_txt'] = 'Hesabınızdaki max. aliasdomain sayısına ulaÅŸtınız.'; -$wb['limit_web_subdomain_txt'] = 'Hesabınızdaki max. web subdomain sayısına ulaÅŸtınız.'; -$wb['apache_directives_txt'] = 'Apache direktifleri'; -$wb['domain_error_empty'] = 'Domain boÅŸ.'; -$wb['domain_error_unique'] = 'Bu isimde websitesi veya sub / aliasdomain zaten var.'; -$wb['domain_error_regex'] = 'Domain ismi geçersiz.'; -$wb['host_txt'] = 'Host'; -$wb['redirect_error_regex'] = 'Geçersiz yönlendirme yolu. Geçerli yönlendirmeler örneÄŸin: /test/ veya http://www.domain.tld/test/'; -$wb['no_redirect_txt'] = 'No redirect'; -$wb['no_flag_txt'] = 'No flag'; -$wb['domain_error_wildcard'] = 'Wildcard subdomains are not allowed.'; -$wb['proxy_directives_txt'] = 'Proxy Directives'; -$wb['available_proxy_directive_snippets_txt'] = 'Available Proxy Directive Snippets:'; -$wb['error_proxy_requires_url'] = 'Redirect Type \\"proxy\\" requires a URL as the redirect path.'; -$wb['backup_interval_txt'] = 'Backup interval'; -$wb['backup_copies_txt'] = 'Number of backup copies'; -$wb['ssl_key_txt'] = 'SSL Key'; -$wb['ssl_domain_txt'] = 'SSL Domain'; -$wb['web_folder_error_regex'] = 'Invalid folder entered. Please do not enter a slash.'; -$wb['ipv6_address_txt'] = 'IPv6-Address'; -$wb['errordocs_txt'] = 'Own Error-Documents'; -$wb['subdomain_txt'] = 'Auto-Subdomain'; -$wb['domain_error_autosub'] = 'There is already a subdomain with these settings.'; -$wb['hd_quota_error_empty'] = 'Harddisk quota is 0 or empty.'; -$wb['traffic_quota_error_empty'] = 'Traffic quota is empty.'; -$wb['error_ssl_state_empty'] = 'SSL State is empty.'; -$wb['error_ssl_locality_empty'] = 'SSL Locality is empty.'; -$wb['error_ssl_organisation_empty'] = 'SSL Organisation is empty.'; -$wb['error_ssl_organisation_unit_empty'] = 'SSL Organisation Unit is empty.'; -$wb['error_ssl_country_empty'] = 'SSL Country is empty.'; -$wb['error_ssl_cert_empty'] = 'SSL Certificate field is empty'; -$wb['client_group_id_txt'] = 'Client'; -$wb['stats_password_txt'] = 'Set Webstatistics password'; +$wb['limit_web_domain_txt'] = 'Hesabınıza ekleyebileceÄŸiniz en fazla etki alanı sayısına ulaÅŸtınız.'; +$wb['limit_web_aliasdomain_txt'] = 'Hesabınıza ekleyebileceÄŸiniz en fazla takma etki alanı sayısına ulaÅŸtınız.'; +$wb['limit_web_subdomain_txt'] = 'Hesabınıza ekleyebileceÄŸiniz en fazla alt etki alanı sayısına ulaÅŸtınız.'; +$wb['apache_directives_txt'] = 'Apache Yönergeleri'; +$wb['domain_error_empty'] = 'Etki alanı boÅŸ olamaz.'; +$wb['domain_error_unique'] = 'Aynı adlı bir web sitesi ya da alt / takma etki alanı zaten var.'; +$wb['domain_error_regex'] = 'Etki alanı adı geçersiz.'; +$wb['domain_error_acme_invalid'] = 'acme.invalid etki alanı adı kullanılamaz.'; +$wb['domain_error_wildcard'] = 'Genel alt etki alanları kullanılamaz.'; +$wb['host_txt'] = 'Sunucu'; +$wb['redirect_error_regex'] = 'Yönlendirme yolu geçersiz. Örnek yönlendirmeler: /test/ ya da http://www.domain.tld/test/'; +$wb['no_redirect_txt'] = 'Yönlendirme Yok'; +$wb['no_flag_txt'] = 'Ä°ÅŸaret Yok'; +$wb['proxy_directives_txt'] = 'Vekil Sunucu Yönergeleri'; +$wb['available_proxy_directive_snippets_txt'] = 'Kullanılabilecek Vekil Sunucu Yönerge Kod Parçaları:'; +$wb['error_proxy_requires_url'] = '"Vekil Sunucu" yönlendirme türü için yönlendirilecek yol olarak kullanılacak bir adres gereklidir.'; +$wb['backup_interval_txt'] = 'Yedekleme Sıklığı'; +$wb['backup_copies_txt'] = 'Yedek Sayısı'; +$wb['ssl_key_txt'] = 'SSL Anahtarı'; +$wb['ssl_domain_txt'] = 'SSL Etki Alanı'; +$wb['web_folder_error_regex'] = 'Yazılan klasör geçersiz. Lütfen bölü karakterini yazmayın.'; +$wb['ipv6_address_txt'] = 'IPv6-Adresi'; +$wb['errordocs_txt'] = 'Özel Hata Sayfaları'; +$wb['subdomain_txt'] = 'Otomatik Alt Etki Alanı'; +$wb['domain_error_autosub'] = 'Aynı ayarları kullanan bir alt etki alanı zaten var.'; +$wb['hd_quota_error_empty'] = 'Sabit disk kotası 0 ya da boÅŸ.'; +$wb['traffic_quota_error_empty'] = 'Trafik kotası boÅŸ olamaz.'; +$wb['error_ssl_state_empty'] = 'SSL ili boÅŸ olamaz.'; +$wb['error_ssl_locality_empty'] = 'SSL bölgesi boÅŸ olamaz.'; +$wb['error_ssl_organisation_empty'] = 'SSL kuruluÅŸu boÅŸ olamaz.'; +$wb['error_ssl_organisation_unit_empty'] = 'SSL kuruluÅŸ birimi boÅŸ olamaz.'; +$wb['error_ssl_country_empty'] = 'SSL ülkesi boÅŸ olamaz.'; +$wb['error_ssl_cert_empty'] = 'SSL sertifika alanı boÅŸ olamaz.'; +$wb['client_group_id_txt'] = 'Müşteri'; +$wb['stats_password_txt'] = 'Web Ä°statistikleri Parolası'; $wb['allow_override_txt'] = 'Apache AllowOverride'; -$wb['limit_web_quota_free_txt'] = 'Max. available Harddisk Quota'; -$wb['ssl_state_error_regex'] = 'Invalid SSL State. Valid characters are: a-z, 0-9 and .,-_'; -$wb['ssl_locality_error_regex'] = 'Invalid SSL Locality. Valid characters are: a-z, 0-9 and .,-_'; -$wb['ssl_organisation_error_regex'] = 'Invalid SSL Organisation. Valid characters are: a-z, 0-9 and .,-_'; -$wb['ssl_organistaion_unit_error_regex'] = 'Invalid SSL Organisation Unit. Valid characters are: a-z, 0-9 and .,-_'; -$wb['ssl_country_error_regex'] = 'Invalid SSL Country. Valid characters are: A-Z'; -$wb['limit_traffic_quota_free_txt'] = 'Max. available Traffic Quota'; +$wb['limit_web_quota_free_txt'] = 'Kullanılabilecek en fazla sabit disk kotası'; +$wb['ssl_state_error_regex'] = 'SSL ili geçersiz. Kullanılabilecek karakterler: a-z, 0-9 ve .,-_&äöüÄÖÜ'; +$wb['ssl_locality_error_regex'] = 'SSL bölgesi geçersiz. Kullanılabilecek karakterler: a-z, 0-9 ve .,-_&äöüÄÖÜ'; +$wb['ssl_organisation_error_regex'] = 'SSL kuruluÅŸu geçersiz. Kullanılabilecek karakterler: a-z, 0-9 ve .,-_&äöüÄÖÜ'; +$wb['ssl_organistaion_unit_error_regex'] = 'SSL kuruluÅŸu birimi geçersiz. Kullanılabilecek karakterler: a-z, 0-9 ve .,-_&äöüÄÖÜ'; +$wb['ssl_country_error_regex'] = 'SSL ülkesi geçersiz. Kullanılabilecek karakterler: A-Z'; +$wb['limit_traffic_quota_free_txt'] = 'Kullanılabilecek en fazla trafik kotası'; $wb['php_open_basedir_txt'] = 'PHP open_basedir'; -$wb['traffic_quota_exceeded_txt'] = 'Traffic quota exceeded'; +$wb['traffic_quota_exceeded_txt'] = 'Trafik kotası aşıldı'; $wb['ruby_txt'] = 'Ruby'; -$wb['stats_user_txt'] = 'Webstatistics username'; -$wb['stats_type_txt'] = 'Webstatistics program'; -$wb['custom_php_ini_txt'] = 'Custom php.ini settings'; -$wb['none_txt'] = 'None'; -$wb['disabled_txt'] = 'Disabled'; -$wb['save_certificate_txt'] = 'Save certificate'; -$wb['create_certificate_txt'] = 'Create certificate'; -$wb['delete_certificate_txt'] = 'Delete certificate'; -$wb['nginx_directives_txt'] = 'nginx Directives'; -$wb['seo_redirect_txt'] = 'SEO Redirect'; +$wb['stats_user_txt'] = 'Web Ä°statistikleri Kullanıcı Adı'; +$wb['stats_type_txt'] = 'Web Ä°statistikleri Uygulaması'; +$wb['custom_php_ini_txt'] = 'Özel php.ini Ayarları'; +$wb['none_txt'] = 'Yok'; +$wb['disabled_txt'] = 'Devre Dışı'; +$wb['save_certificate_txt'] = 'Sertifikayı Kaydet'; +$wb['create_certificate_txt'] = 'Sertifika Ekle'; +$wb['delete_certificate_txt'] = 'Sertifikayı Sil'; +$wb['nginx_directives_txt'] = 'nginx Yönergeleri'; +$wb['seo_redirect_txt'] = 'AMD Yönlendirme'; $wb['non_www_to_www_txt'] = 'Non-www -> www'; $wb['www_to_non_www_txt'] = 'www -> non-www'; -$wb['php_fpm_use_socket_txt'] = 'Use Socket For PHP-FPM'; -$wb['error_no_sni_txt'] = 'SNI for SSL is not activated on this server. You can enable only one SSL certificate on each IP address.'; +$wb['php_fpm_use_socket_txt'] = 'PHP-FPM Soketi'; +$wb['error_no_sni_txt'] = 'Bu sunucu üzerinde SSL için SNI etkinleÅŸtirilmemiÅŸ. Bir IP adresi için yalnız bir SSL sertifikası kullanılabilir.'; $wb['python_txt'] = 'Python'; $wb['perl_txt'] = 'Perl'; $wb['pm_max_children_txt'] = 'PHP-FPM pm.max_children'; $wb['pm_start_servers_txt'] = 'PHP-FPM pm.start_servers'; $wb['pm_min_spare_servers_txt'] = 'PHP-FPM pm.min_spare_servers'; $wb['pm_max_spare_servers_txt'] = 'PHP-FPM pm.max_spare_servers'; -$wb['error_php_fpm_pm_settings_txt'] = 'Values of PHP-FPM pm settings must be as follows: pm.max_children >= pm.max_spare_servers >= pm.start_servers >= pm.min_spare_servers > 0'; -$wb['pm_max_children_error_regex'] = 'PHP-FPM pm.max_children must be a positive integer value.'; -$wb['pm_start_servers_error_regex'] = 'PHP-FPM pm.start_servers must be a positive integer value.'; -$wb['pm_min_spare_servers_error_regex'] = 'PHP-FPM pm.min_spare_servers must be a positive integer value.'; -$wb['pm_max_spare_servers_error_regex'] = 'PHP-FPM pm.max_spare_servers must be a positive integer value.'; -$wb['hd_quota_error_regex'] = 'Harddisk quota is invalid.'; -$wb['traffic_quota_error_regex'] = 'Traffic quota is invalid.'; -$wb['fastcgi_php_version_txt'] = 'PHP Version'; -$wb['pm_txt'] = 'PHP-FPM Process Manager'; +$wb['error_php_fpm_pm_settings_txt'] = 'Values of PHP-FPM pm ayarları ÅŸu ÅŸekilde olmalıdır: pm.max_children >= pm.max_spare_servers >= pm.start_servers >= pm.min_spare_servers > 0'; +$wb['pm_max_children_error_regex'] = 'PHP-FPM pm.max_children deÄŸeri pozitif bir tamsayı olmalıdır.'; +$wb['pm_start_servers_error_regex'] = 'PHP-FPM pm.start_servers deÄŸeri pozitif bir tamsayı olmalıdır.'; +$wb['pm_min_spare_servers_error_regex'] = 'PHP-FPM pm.min_spare_servers deÄŸeri pozitif bir tamsayı olmalıdır.'; +$wb['pm_max_spare_servers_error_regex'] = 'PHP-FPM pm.max_spare_servers deÄŸeri pozitif bir tamsayı olmalıdır.'; +$wb['hd_quota_error_regex'] = 'Sabit disk kotası geçersiz.'; +$wb['traffic_quota_error_regex'] = 'Trafik kotası geçersiz.'; +$wb['fastcgi_php_version_txt'] = 'PHP Sürümü'; +$wb['pm_txt'] = 'PHP-FPM Ä°ÅŸlem Yönetimi'; $wb['pm_process_idle_timeout_txt'] = 'PHP-FPM pm.process_idle_timeout'; $wb['pm_max_requests_txt'] = 'PHP-FPM pm.max_requests'; -$wb['pm_process_idle_timeout_error_regex'] = 'PHP-FPM pm.process_idle_timeout must be a positive integer value.'; -$wb['pm_max_requests_error_regex'] = 'PHP-FPM pm.max_requests must be an integer value >= 0.'; -$wb['pm_ondemand_hint_txt'] = 'Please note that you must have PHP version >= 5.3.9 in order to use the ondemand process manager. If you select ondemand for an older PHP version, PHP will not start anymore!'; -$wb['generate_password_txt'] = 'Generate Password'; -$wb['repeat_password_txt'] = 'Repeat Password'; -$wb['password_mismatch_txt'] = 'The passwords do not match.'; -$wb['password_match_txt'] = 'The passwords do match.'; -$wb['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'] = 'Aliasdomain'; -$wb['domain_error_acme_invalid'] = 'Domain name acme.invalid not permitted.'; -$wb['ssl_letsencrypt_exclude_txt'] = 'Don\'t add to Let\'s Encrypt certificate'; +$wb['pm_process_idle_timeout_error_regex'] = 'PHP-FPM pm.process_idle_timeout deÄŸeri pozitif bir tamsayı olmalıdır.'; +$wb['pm_max_requests_error_regex'] = 'PHP-FPM pm.max_requests deÄŸeri pozitif bir tamsayı olmalıdır >= 0.'; +$wb['pm_ondemand_hint_txt'] = 'Ondemand iÅŸlem yönetimini kullanabilmek için PHP sürümünüz >= 5.3.9 olmalıdır. Daha eski bir PHP sürümü için ondemand seçilirse PHP çalışmaya baÅŸlayamaz!'; +$wb['generate_password_txt'] = 'Parola Ãœret'; +$wb['repeat_password_txt'] = 'Parola Onayı'; +$wb['password_mismatch_txt'] = 'Parola ve onayı aynı deÄŸil'; +$wb['password_match_txt'] = 'Parola ve onayı aynı deÄŸil.'; +$wb['available_php_directive_snippets_txt'] = 'Kullanılabilecek PHP Yönerge Kod Parçaları:'; +$wb['available_apache_directive_snippets_txt'] = 'Kullanılabilecek Apache Yönerge Kod Parçaları:'; +$wb['available_nginx_directive_snippets_txt'] = 'Kullanılabilecek nginx Yönerge Kod Parçaları:'; +$wb['Domain'] = 'Takma Etki Alanı Adı'; +$wb['ssl_letsencrypt_exclude_txt'] = 'Let\'s Encrypt sertifikası eklenmesin'; ?> diff --git a/interface/web/sites/lib/lang/tr_web_childdomain_list.lng b/interface/web/sites/lib/lang/tr_web_childdomain_list.lng index 26b3acc9e9..33127c84cf 100644 --- a/interface/web/sites/lib/lang/tr_web_childdomain_list.lng +++ b/interface/web/sites/lib/lang/tr_web_childdomain_list.lng @@ -1,18 +1,18 @@ <?php -$wb['list_head_txt'] = 'Takma Alan Adı'; +$wb['list_head_txt'] = 'Takma Etki Alanı'; $wb['active_txt'] = 'Etkin'; $wb['server_id_txt'] = 'Sunucu'; $wb['parent_domain_id_txt'] = 'Web Sitesi'; -$wb['domain_txt'] = 'Takma Alan Adı'; -$wb['domain_error_empty'] = 'Alan adı boÅŸ olamaz.'; -$wb['domain_error_unique'] = 'Aynı alan adı zaten var.'; -$wb['domain_error_regex'] = 'Alan adı geçersiz.'; +$wb['domain_txt'] = 'Takma Etki Alanı'; +$wb['add_new_subdomain_txt'] = 'Alt Etki Alanı Ekle'; +$wb['add_new_aliasdomain_txt'] = 'Takma Etki Alanı Ekle'; +$wb['domain_error_empty'] = 'Etki alanı boÅŸ olamaz.'; +$wb['domain_error_unique'] = 'Aynı etki alanı zaten var.'; +$wb['domain_error_regex'] = 'Etki alanı geçersiz.'; +$wb['domain_error_acme_invalid'] = 'acme.invalid etki alanı adı kullanılamaz.'; $wb['no_redirect_txt'] = 'Yönlendirme yok'; $wb['no_flag_txt'] = 'Ä°ÅŸaret yok'; $wb['none_txt'] = 'Yok'; -$wb['add_new_subdomain_txt'] = 'Add new Subdomain'; -$wb['add_new_aliasdomain_txt'] = 'Add new Aliasdomain'; -$wb['aliasdomain_list_head_txt'] = 'Aliasdomains'; -$wb['subdomain_list_head_txt'] = 'Subdomains'; -$wb['domain_error_acme_invalid'] = 'Domain name acme.invalid not permitted.'; +$wb['aliasdomain_list_head_txt'] = 'Takma Etki Alanları'; +$wb['subdomain_list_head_txt'] = 'Alt Etki Alanları'; ?> diff --git a/interface/web/sites/lib/lang/tr_web_directive_snippets.lng b/interface/web/sites/lib/lang/tr_web_directive_snippets.lng index d2590e53cf..a4380942e6 100644 --- a/interface/web/sites/lib/lang/tr_web_directive_snippets.lng +++ b/interface/web/sites/lib/lang/tr_web_directive_snippets.lng @@ -1,3 +1,3 @@ <?php -$wb['directive_snippets_id_txt'] = 'Desired configuration'; +$wb['directive_snippets_id_txt'] = 'Ä°stenilen Yapılandırma'; ?> diff --git a/interface/web/sites/lib/lang/tr_web_domain.lng b/interface/web/sites/lib/lang/tr_web_domain.lng index c97ce73778..65db621f56 100644 --- a/interface/web/sites/lib/lang/tr_web_domain.lng +++ b/interface/web/sites/lib/lang/tr_web_domain.lng @@ -3,7 +3,7 @@ $wb['backup_interval_txt'] = 'Yedekleme Sıklığı'; $wb['backup_copies_txt'] = 'Yedek Kopyası Sayısı'; $wb['ssl_state_txt'] = 'Ä°l'; $wb['ssl_locality_txt'] = 'Bölge'; -$wb['ssl_organisation_txt'] = 'Kurum'; +$wb['ssl_organisation_txt'] = 'KuruluÅŸ'; $wb['ssl_organisation_unit_txt'] = 'Birim'; $wb['ssl_country_txt'] = 'Ãœlke'; $wb['ssl_key_txt'] = 'SSL Anahtarı'; @@ -11,13 +11,13 @@ $wb['ssl_request_txt'] = 'SSL Ä°steÄŸi'; $wb['ssl_cert_txt'] = 'SSL Sertifikası'; $wb['ssl_bundle_txt'] = 'SSL Yığını'; $wb['ssl_action_txt'] = 'SSL Ä°ÅŸlemi'; -$wb['ssl_domain_txt'] = 'SSL Alan Adı'; +$wb['ssl_domain_txt'] = 'SSL Etki Alanı'; $wb['server_id_txt'] = 'Sunucu'; -$wb['domain_txt'] = 'Alan Adı'; -$wb['web_folder_error_regex'] = 'Yazdığınız klasör geçersiz. Lütfen / karakterini yazmayın.'; -$wb['type_txt'] = 'Tip'; +$wb['domain_txt'] = 'Etki Alanı'; +$wb['web_folder_error_regex'] = 'Yazdığınız klasör geçersiz. Lütfen bölü karakterini yazmayın.'; +$wb['type_txt'] = 'Tür'; $wb['parent_domain_id_txt'] = 'Ãœst Web Sitesi'; -$wb['redirect_type_txt'] = 'Yönlendirme Tipi'; +$wb['redirect_type_txt'] = 'Yönlendirme Türü'; $wb['redirect_path_txt'] = 'Yönlendirme Yolu'; $wb['active_txt'] = 'Etkin'; $wb['document_root_txt'] = 'Kök Klasör'; @@ -25,62 +25,62 @@ $wb['system_user_txt'] = 'Linux Kullanıcısı'; $wb['system_group_txt'] = 'Linux Grubu'; $wb['ip_address_txt'] = 'IPv4 Adresi'; $wb['ipv6_address_txt'] = 'IPv6 Adresi'; -$wb['vhost_type_txt'] = 'SSunucu Tipi'; +$wb['vhost_type_txt'] = 'Sanal Sunucu Türü'; $wb['hd_quota_txt'] = 'Disk Kotası'; $wb['traffic_quota_txt'] = 'Trafik Kotası'; $wb['cgi_txt'] = 'CGI'; $wb['ssi_txt'] = 'SSI'; $wb['errordocs_txt'] = 'Özel Hata Sayfaları'; -$wb['subdomain_txt'] = 'Otomatik Alt Alan'; +$wb['subdomain_txt'] = 'Otomatik Alt Etki Alanı'; $wb['ssl_txt'] = 'SSL'; $wb['suexec_txt'] = 'SuEXEC'; $wb['php_txt'] = 'PHP'; $wb['client_txt'] = 'Müşteri'; -$wb['limit_web_domain_txt'] = 'Hesabınıza ekleyebileceÄŸiniz en fazla alan adı sayısına ulaÅŸtınız.'; -$wb['limit_web_aliasdomain_txt'] = 'Hesabınıza ekleyebileceÄŸiniz en fazla baÅŸka alan adı sayısına ulaÅŸtınız.'; -$wb['limit_web_subdomain_txt'] = 'Hesabınıza ekleyebileceÄŸiniz en fazla alt alan adı sayısına ulaÅŸtınız.'; +$wb['limit_web_domain_txt'] = 'Hesabınıza ekleyebileceÄŸiniz en fazla etki alanı sayısına ulaÅŸtınız.'; +$wb['limit_web_aliasdomain_txt'] = 'Hesabınıza ekleyebileceÄŸiniz en fazla takma etki alanı sayısına ulaÅŸtınız.'; +$wb['limit_web_subdomain_txt'] = 'Hesabınıza ekleyebileceÄŸiniz en fazla alt etki alanı sayısına ulaÅŸtınız.'; $wb['apache_directives_txt'] = 'Apache Yönergeleri'; -$wb['domain_error_empty'] = 'Alan adı boÅŸ olamaz.'; -$wb['domain_error_unique'] = 'Aynı adlı bir web sitesi ya da alt/baÅŸka alan adı var.'; -$wb['domain_error_regex'] = 'Alan adı geçersiz.'; -$wb['domain_error_autosub'] = 'Aynı ayarlara sahip bir alt alan adı zaten var.'; +$wb['domain_error_empty'] = 'Etki alanı boÅŸ olamaz.'; +$wb['domain_error_unique'] = 'Aynı adlı bir web sitesi ya da alt/takma etki alanı var.'; +$wb['domain_error_regex'] = 'Etki alanı geçersiz.'; +$wb['domain_error_autosub'] = 'Aynı ayarlara sahip bir alt etki alanı zaten var.'; $wb['hd_quota_error_empty'] = 'Disk kotası 0 ya da boÅŸ olamaz.'; $wb['traffic_quota_error_empty'] = 'Trafik kotası boÅŸ olamaz.'; -$wb['error_ssl_state_empty'] = 'SSL ÅŸehri boÅŸ olamaz.'; +$wb['error_ssl_state_empty'] = 'SSL ili boÅŸ olamaz.'; $wb['error_ssl_locality_empty'] = 'SSL bölgesi boÅŸ olamaz.'; -$wb['error_ssl_organisation_empty'] = 'SSL kurumu boÅŸ olamaz.'; +$wb['error_ssl_organisation_empty'] = 'SSL kuruluÅŸu boÅŸ olamaz.'; $wb['error_ssl_organisation_unit_empty'] = 'SSL birimi boÅŸ olamaz.'; $wb['error_ssl_country_empty'] = 'SSL ülkesi boÅŸ olamaz.'; $wb['error_ssl_cert_empty'] = 'SSL sertifikası alanı boÅŸ olamaz'; $wb['client_group_id_txt'] = 'Müşteri'; -$wb['stats_password_txt'] = 'Web istatistikleri parolası'; +$wb['stats_password_txt'] = 'Web Ä°statistikleri Parolası'; $wb['allow_override_txt'] = 'Apache AllowOverride'; $wb['limit_web_quota_free_txt'] = 'Kullanılabilecek en fazla disk kotası'; -$wb['ssl_state_error_regex'] = 'SSL ÅŸehri geçersiz. Kullanılabilecek karakterler: a-z, 0-9 ve .,-_&äöüÄÖÜ'; +$wb['ssl_state_error_regex'] = 'SSL ili geçersiz. Kullanılabilecek karakterler: a-z, 0-9 ve .,-_&äöüÄÖÜ'; $wb['ssl_locality_error_regex'] = 'SSL bölgesi geçersiz. Kullanılabilecek karakterler: a-z, 0-9 ve .,-_&äöüÄÖÜ'; -$wb['ssl_organisation_error_regex'] = 'SSL kurumu geçersiz. Kullanılabilecek karakterler: a-z, 0-9 ve .,-_&äöüÄÖÜ'; -$wb['ssl_organistaion_unit_error_regex'] = 'SSL birimi geçersiz. Kullanılabilecek karakterler: a-z, 0-9 ve .,-_&äöüÄÖÜ'; +$wb['ssl_organisation_error_regex'] = 'SSL kuruluÅŸu geçersiz. Kullanılabilecek karakterler: a-z, 0-9 ve .,-_&äöüÄÖÜ'; +$wb['ssl_organistaion_unit_error_regex'] = 'SSL kuruluÅŸu birimi geçersiz. Kullanılabilecek karakterler: a-z, 0-9 ve .,-_&äöüÄÖÜ'; $wb['ssl_country_error_regex'] = 'SSL ülkesi geçersiz. Kullanılabilecek karakterler: A-Z'; $wb['limit_traffic_quota_free_txt'] = 'Kullanılabilecek en fazla trafik kotası'; -$wb['redirect_error_regex'] = 'Yönlendirme yolu geçersiz. Geçerli örnekler: /test/ ya da http://www.domain.tld/test/'; +$wb['redirect_error_regex'] = 'Yönlendirme yolu geçersiz. Örnekler: /test/ ya da http://www.domain.tld/test/'; $wb['php_open_basedir_txt'] = 'PHP open_basedir'; $wb['traffic_quota_exceeded_txt'] = 'Trafik kotası aşıldı'; $wb['ruby_txt'] = 'Ruby'; -$wb['stats_user_txt'] = 'Web istatistikleri kullanıcı adı'; -$wb['stats_type_txt'] = 'Web istatistikleri yazılımı'; -$wb['custom_php_ini_txt'] = 'Özel php.ini ayarları'; +$wb['stats_user_txt'] = 'Web Ä°statistikleri Kullanıcı Adı'; +$wb['stats_type_txt'] = 'Web Ä°statistikleri Uygulaması'; +$wb['custom_php_ini_txt'] = 'Özel php.ini Ayarları'; $wb['none_txt'] = 'Yok'; $wb['disabled_txt'] = 'Devre Dışı'; $wb['no_redirect_txt'] = 'Yönlendirme yok'; $wb['no_flag_txt'] = 'Ä°ÅŸaret yok'; -$wb['save_certificate_txt'] = 'Sertifikayı kaydet'; -$wb['create_certificate_txt'] = 'Sertifika ekle'; -$wb['delete_certificate_txt'] = 'Sertifikayı sil'; +$wb['save_certificate_txt'] = 'Sertifikayı Kaydet'; +$wb['create_certificate_txt'] = 'Sertifika Ekle'; +$wb['delete_certificate_txt'] = 'Sertifikayı Sil'; $wb['nginx_directives_txt'] = 'nginx Yönergeleri'; $wb['seo_redirect_txt'] = 'AMD Yönlendirme'; $wb['non_www_to_www_txt'] = 'Non-www -> www'; $wb['www_to_non_www_txt'] = 'www -> non-www'; -$wb['php_fpm_use_socket_txt'] = 'PHP-FPM İçin Soket Kullanılsın'; +$wb['php_fpm_use_socket_txt'] = 'PHP-FPM Soketi'; $wb['error_no_sni_txt'] = 'Bu sunucuda SSL için SNI etkinleÅŸtirilmemiÅŸ. Bir IP adresi için yalnız bir SSL sertifikası etkinleÅŸtirebilirsiniz.'; $wb['python_txt'] = 'Python'; $wb['perl_txt'] = 'Perl'; @@ -102,15 +102,15 @@ $wb['pm_max_requests_txt'] = 'PHP-FPM pm.max_requests'; $wb['pm_process_idle_timeout_error_regex'] = 'PHP-FPM pm.process_idle_timeout deÄŸeri pozitif bir tamsayı olmalıdır.'; $wb['pm_max_requests_error_regex'] = 'PHP-FPM pm.max_requests deÄŸeri sıfır ya da pozitif bir tamsayı olmalıdır.'; $wb['pm_ondemand_hint_txt'] = 'Ä°steÄŸe baÄŸlı iÅŸlem yöneticisini kullanabilmek için PHP Sürümünüz >= 5.3.9 olmalıdır. Daha önceki bir PHP sürümü için ondemand özelliÄŸini seçerseniz, PHP baÅŸlatılamaz!'; -$wb['generate_password_txt'] = 'Parola OluÅŸtur'; +$wb['generate_password_txt'] = 'Parola Ãœret'; $wb['repeat_password_txt'] = 'Parola Onayı'; $wb['password_mismatch_txt'] = 'Parola ile onayı aynı deÄŸil.'; $wb['password_match_txt'] = 'Parola ile onayı aynı.'; -$wb['available_php_directive_snippets_txt'] = 'Kullanılabilecek PHP Yönerge Parçaları:'; -$wb['available_apache_directive_snippets_txt'] = 'Kullanılabilecek Apache Yönerge Parçaları:'; -$wb['available_nginx_directive_snippets_txt'] = 'Kullanılabilecek nginx Yönerge Parçaları:'; +$wb['available_php_directive_snippets_txt'] = 'Kullanılabilecek PHP Yönerge Kod Parçaları:'; +$wb['available_apache_directive_snippets_txt'] = 'Kullanılabilecek Apache Yönerge Kod Parçaları:'; +$wb['available_nginx_directive_snippets_txt'] = 'Kullanılabilecek nginx Yönerge Kod Parçaları:'; $wb['proxy_directives_txt'] = 'Vekil Sunucu Yönergeleri'; -$wb['available_proxy_directive_snippets_txt'] = 'Kullanılabilecek Vekil Sunucu Yönerge Parçaları:'; +$wb['available_proxy_directive_snippets_txt'] = 'Kullanılabilecek Vekil Sunucu Yönerge Kod Parçaları:'; $wb['no_server_error'] = 'Bir sunucu seçmelisiniz.'; $wb['no_backup_txt'] = 'Yedek alınmasın'; $wb['daily_backup_txt'] = 'Günlük'; @@ -122,16 +122,16 @@ $wb['allowed_rewrite_rule_directives_txt'] = 'Kullanılabilecek Yönergeler:'; $wb['configuration_error_txt'] = 'AYAR HATASI'; $wb['variables_txt'] = 'DeÄŸiÅŸkenler'; $wb['added_by_txt'] = 'Ekleyen'; -$wb['added_date_txt'] = 'EklendiÄŸi tarih'; +$wb['added_date_txt'] = 'Eklenme Tarihi'; $wb['backup_excludes_txt'] = 'Katılmayacak Klasörler'; $wb['backup_excludes_note_txt'] = '(Klasörleri virgül ile ayırarak yazın. Örnek: web/cache/*,web/backup)'; $wb['backup_excludes_error_regex'] = 'Katılmayacak klasörlerde geçersiz karakterler bulunuyor.'; $wb['invalid_custom_php_ini_settings_txt'] = 'php.ini ayarları geçersiz'; $wb['invalid_system_user_or_group_txt'] = 'Sistem kullanıcısı ya da grubu geçersiz'; $wb['apache_directive_blocked_error'] = 'Apache yönergesi güvenlik ayarları tarafından engellenmiÅŸ:'; -$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.'; -$wb['nginx_directive_blocked_error'] = 'Nginx directive blocked by security settings:'; +$wb['http_port_txt'] = 'HTTP Kapı Numarası'; +$wb['https_port_txt'] = 'HTTPS Kapı Numarası'; +$wb['http_port_error_regex'] = 'HTTP kapı numarası geçersiz.'; +$wb['https_port_error_regex'] = 'HTTPS kapı numarası geçersiz.'; +$wb['nginx_directive_blocked_error'] = 'nginx yönergesi güvenlik ayarları tarafından engellendi:'; ?> diff --git a/interface/web/sites/lib/lang/tr_web_domain_admin_list.lng b/interface/web/sites/lib/lang/tr_web_domain_admin_list.lng index f86967d0d4..487c6a087c 100644 --- a/interface/web/sites/lib/lang/tr_web_domain_admin_list.lng +++ b/interface/web/sites/lib/lang/tr_web_domain_admin_list.lng @@ -4,6 +4,6 @@ $wb['list_head_txt'] = 'Web Siteleri'; $wb['domain_id_txt'] = 'Kod'; $wb['active_txt'] = 'Etkin'; $wb['server_id_txt'] = 'Sunucu'; -$wb['domain_txt'] = 'Alan Adı'; +$wb['domain_txt'] = 'Etki Alanı'; $wb['add_new_record_txt'] = 'Web Sitesi Ekle'; ?> diff --git a/interface/web/sites/lib/lang/tr_web_domain_list.lng b/interface/web/sites/lib/lang/tr_web_domain_list.lng index a2320b5dcd..fbfa573470 100644 --- a/interface/web/sites/lib/lang/tr_web_domain_list.lng +++ b/interface/web/sites/lib/lang/tr_web_domain_list.lng @@ -3,6 +3,6 @@ $wb['list_head_txt'] = 'Web Siteleri'; $wb['domain_id_txt'] = 'Kod'; $wb['active_txt'] = 'Etkin'; $wb['server_id_txt'] = 'Sunucu'; -$wb['domain_txt'] = 'Alan Adı'; +$wb['domain_txt'] = 'Etki Alanı'; $wb['add_new_record_txt'] = 'Web Sitesi Ekle'; ?> diff --git a/interface/web/sites/lib/lang/tr_web_folder_user.lng b/interface/web/sites/lib/lang/tr_web_folder_user.lng index a0479ee0d1..afbe01cab1 100644 --- a/interface/web/sites/lib/lang/tr_web_folder_user.lng +++ b/interface/web/sites/lib/lang/tr_web_folder_user.lng @@ -4,8 +4,8 @@ $wb['username_txt'] = 'Kullanıcı Adı'; $wb['password_txt'] = 'Parola'; $wb['active_txt'] = 'Etkin'; $wb['folder_error_empty'] = 'Bir web klasörü seçilmemiÅŸ.'; -$wb['password_strength_txt'] = 'Parola Güçlüğü'; -$wb['generate_password_txt'] = 'Parola OluÅŸtur'; +$wb['password_strength_txt'] = 'Parola ZorluÄŸu'; +$wb['generate_password_txt'] = 'Parola Ãœret'; $wb['repeat_password_txt'] = 'Parola Onayı'; $wb['password_mismatch_txt'] = 'Parola ile onayı aynı deÄŸil.'; $wb['password_match_txt'] = 'Parola ile onayı aynı.'; diff --git a/interface/web/sites/lib/lang/tr_web_sites_stats_list.lng b/interface/web/sites/lib/lang/tr_web_sites_stats_list.lng index 4fbdef871d..685fc22fc6 100644 --- a/interface/web/sites/lib/lang/tr_web_sites_stats_list.lng +++ b/interface/web/sites/lib/lang/tr_web_sites_stats_list.lng @@ -1,6 +1,6 @@ <?php $wb['list_head_txt'] = 'Web TrafiÄŸi'; -$wb['domain_txt'] = 'Alan Adı'; +$wb['domain_txt'] = 'Etki Alanı'; $wb['this_month_txt'] = 'Bu ay'; $wb['last_month_txt'] = 'Geçen ay'; $wb['this_year_txt'] = 'Bu yıl'; diff --git a/interface/web/sites/lib/lang/tr_web_subdomain.lng b/interface/web/sites/lib/lang/tr_web_subdomain.lng index 188b257589..7d1cdcc5c0 100644 --- a/interface/web/sites/lib/lang/tr_web_subdomain.lng +++ b/interface/web/sites/lib/lang/tr_web_subdomain.lng @@ -1,7 +1,7 @@ <?php $wb['ssl_state_txt'] = 'Ä°l'; $wb['ssl_locality_txt'] = 'Bölge'; -$wb['ssl_organisation_txt'] = 'Kurum'; +$wb['ssl_organisation_txt'] = 'KuruluÅŸ'; $wb['ssl_organisation_unit_txt'] = 'Birim'; $wb['ssl_country_txt'] = 'Ãœlke'; $wb['ssl_request_txt'] = 'SSL Ä°steÄŸi'; @@ -9,17 +9,17 @@ $wb['ssl_cert_txt'] = 'SSL Sertifikası'; $wb['ssl_bundle_txt'] = 'SSL Yığını'; $wb['ssl_action_txt'] = 'SSL Ä°ÅŸlemi'; $wb['server_id_txt'] = 'Sunucu'; -$wb['domain_txt'] = 'Alan Adı'; -$wb['type_txt'] = 'Tip'; +$wb['domain_txt'] = 'Etki Alanı'; +$wb['type_txt'] = 'Tür'; $wb['parent_domain_id_txt'] = 'Ãœst Web Sitesi'; -$wb['redirect_type_txt'] = 'Yönlendirme Tipi'; +$wb['redirect_type_txt'] = 'Yönlendirme Türü'; $wb['redirect_path_txt'] = 'Yönlendirme Yolu'; $wb['active_txt'] = 'Etkin'; $wb['document_root_txt'] = 'Kök Klasör'; $wb['system_user_txt'] = 'Linux Kullanıcısı'; $wb['system_group_txt'] = 'Linux Grubu'; $wb['ip_address_txt'] = 'IP Adresi'; -$wb['vhost_type_txt'] = 'SSunucu Tipi'; +$wb['vhost_type_txt'] = 'Sanal Sunucu Türü'; $wb['hd_quota_txt'] = 'Disk Kotası'; $wb['traffic_quota_txt'] = 'Trafik Kotası'; $wb['cgi_txt'] = 'CGI'; @@ -28,23 +28,23 @@ $wb['ssl_txt'] = 'SSL'; $wb['suexec_txt'] = 'SuEXEC'; $wb['php_txt'] = 'PHP'; $wb['client_txt'] = 'Müşteri'; -$wb['limit_web_domain_txt'] = 'Hesabınıza ekleyebileceÄŸiniz en fazla alan adı sayısına ulaÅŸtınız.'; -$wb['limit_web_aliasdomain_txt'] = 'Hesabınıza ekleyebileceÄŸiniz en fazla baÅŸka alan adı sayısına ulaÅŸtınız.'; -$wb['limit_web_subdomain_txt'] = 'Hesabınıza ekleyebileceÄŸiniz en fazla alt alan adı sayısına ulaÅŸtınız.'; +$wb['limit_web_domain_txt'] = 'Hesabınıza ekleyebileceÄŸiniz en fazla etki alanı sayısına ulaÅŸtınız.'; +$wb['limit_web_aliasdomain_txt'] = 'Hesabınıza ekleyebileceÄŸiniz en fazla takma etki alanı sayısına ulaÅŸtınız.'; +$wb['limit_web_subdomain_txt'] = 'Hesabınıza ekleyebileceÄŸiniz en fazla alt etki alanı sayısına ulaÅŸtınız.'; $wb['apache_directives_txt'] = 'Apache Yönergeleri'; -$wb['domain_error_empty'] = 'Alan adı boÅŸ olamaz.'; -$wb['domain_error_unique'] = 'Aynı adlı bir web sitesi ya da alt/baÅŸka alan adı var.'; -$wb['domain_error_regex'] = 'Alan adı geçersiz.'; -$wb['domain_error_wildcard'] = 'Genel karakterler içeren alt alan adları kullanılamaz.'; +$wb['domain_error_empty'] = 'Etki alanı boÅŸ olamaz.'; +$wb['domain_error_unique'] = 'Aynı adlı bir web sitesi ya da alt/takma etki alanı var.'; +$wb['domain_error_regex'] = 'Etki alanı geçersiz.'; +$wb['domain_error_wildcard'] = 'Genel karakterler içeren alt etki alanları kullanılamaz.'; $wb['host_txt'] = 'Sunucu'; -$wb['redirect_error_regex'] = 'Yönlendirme yolu geçersiz. Geçerli örnekler: /test/ ya da http://www.domain.tld/test/'; +$wb['redirect_error_regex'] = 'Yönlendirme yolu geçersiz. Örnekler: /test/ ya da http://www.domain.tld/test/'; $wb['no_redirect_txt'] = 'Yönlendirme yok'; $wb['no_flag_txt'] = 'Ä°ÅŸaret yok'; $wb['proxy_directives_txt'] = 'Vekil Sunucu Yönergeleri'; -$wb['available_proxy_directive_snippets_txt'] = 'Kullanılabilecek Vekil Sunucu Yönerge Parçaları:'; -$wb['error_proxy_requires_url'] = '\\"Vekil Sunucu\\" yönlendirme tipi için, yönlendirilecek yolu gösteren bir Ä°nternet adresi gereklidir.'; -$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.'; +$wb['available_proxy_directive_snippets_txt'] = 'Kullanılabilecek Vekil Sunucu Yönerge Kod Parçaları:'; +$wb['error_proxy_requires_url'] = '"Vekil Sunucu" yönlendirme türü için, yönlendirilecek yolu gösteren bir Ä°nternet adresi gereklidir.'; +$wb['http_port_txt'] = 'HTTP Kapı Numarası'; +$wb['https_port_txt'] = 'HTTPS Kapı Numarası'; +$wb['http_port_error_regex'] = 'HTTP kapı numarası geçersiz.'; +$wb['https_port_error_regex'] = 'HTTPS kapı numarası geçersiz.'; ?> diff --git a/interface/web/sites/lib/lang/tr_web_subdomain_list.lng b/interface/web/sites/lib/lang/tr_web_subdomain_list.lng index 8155af64b3..6527242e2d 100644 --- a/interface/web/sites/lib/lang/tr_web_subdomain_list.lng +++ b/interface/web/sites/lib/lang/tr_web_subdomain_list.lng @@ -1,8 +1,8 @@ <?php -$wb['list_head_txt'] = 'Alt Alan Adları'; +$wb['list_head_txt'] = 'Alt Etki Alanları'; $wb['active_txt'] = 'Etkin'; $wb['server_id_txt'] = 'Sunucu'; $wb['parent_domain_id_txt'] = 'Web Sitesi'; -$wb['domain_txt'] = 'Alt Alan Adı'; -$wb['add_new_record_txt'] = 'Alt Alan Ekle'; +$wb['domain_txt'] = 'Alt Etki Alanı'; +$wb['add_new_record_txt'] = 'Alt Etki Alanı Ekle'; ?> diff --git a/interface/web/sites/lib/lang/tr_web_vhost_domain.lng b/interface/web/sites/lib/lang/tr_web_vhost_domain.lng index 2e9384fee4..4cfe808bfb 100644 --- a/interface/web/sites/lib/lang/tr_web_vhost_domain.lng +++ b/interface/web/sites/lib/lang/tr_web_vhost_domain.lng @@ -3,7 +3,7 @@ $wb['backup_interval_txt'] = 'Yedekleme Sıklığı'; $wb['backup_copies_txt'] = 'Yedek Kopyası Sayısı'; $wb['ssl_state_txt'] = 'Ä°l'; $wb['ssl_locality_txt'] = 'Bölge'; -$wb['ssl_organisation_txt'] = 'Kurum'; +$wb['ssl_organisation_txt'] = 'KuruluÅŸ'; $wb['ssl_organisation_unit_txt'] = 'Birim'; $wb['ssl_country_txt'] = 'Ãœlke'; $wb['ssl_key_txt'] = 'SSL Anahtarı'; @@ -11,13 +11,13 @@ $wb['ssl_request_txt'] = 'SSL Ä°steÄŸi'; $wb['ssl_cert_txt'] = 'SSL Sertifikası'; $wb['ssl_bundle_txt'] = 'SSL Yığını'; $wb['ssl_action_txt'] = 'SSL Ä°ÅŸlemi'; -$wb['ssl_domain_txt'] = 'SSL Alan Adı'; +$wb['ssl_domain_txt'] = 'SSL Etki Alanı'; $wb['server_id_txt'] = 'Sunucu'; -$wb['domain_txt'] = 'Alan Adı'; +$wb['domain_txt'] = 'Etki Alanı'; $wb['web_folder_error_regex'] = 'Yazdığınız klasör geçersiz. Lütfen / karakterini yazmayın.'; -$wb['type_txt'] = 'Tip'; +$wb['type_txt'] = 'Tür'; $wb['parent_domain_id_txt'] = 'Ãœst Web Sitesi'; -$wb['redirect_type_txt'] = 'Yönlendirme Tipi'; +$wb['redirect_type_txt'] = 'Yönlendirme Türü'; $wb['redirect_path_txt'] = 'Yönlendirme Yolu'; $wb['active_txt'] = 'Etkin'; $wb['document_root_txt'] = 'Kök Klasör'; @@ -25,63 +25,63 @@ $wb['system_user_txt'] = 'Linux Kullanıcısı'; $wb['system_group_txt'] = 'Linux Grubu'; $wb['ip_address_txt'] = 'IPv4 Adresi'; $wb['ipv6_address_txt'] = 'IPv6 Adresi'; -$wb['vhost_type_txt'] = 'SSunucu Tipi'; +$wb['vhost_type_txt'] = 'Sanal Sunucu Türü'; $wb['hd_quota_txt'] = 'Disk Kotası'; $wb['traffic_quota_txt'] = 'Trafik Kotası'; $wb['cgi_txt'] = 'CGI'; $wb['ssi_txt'] = 'SSI'; $wb['errordocs_txt'] = 'Özel Hata Sayfaları'; -$wb['subdomain_txt'] = 'Otomatik Alt Alan'; +$wb['subdomain_txt'] = 'Otomatik Alt Etki Alanı'; $wb['ssl_txt'] = 'SSL'; $wb['suexec_txt'] = 'SuEXEC'; $wb['php_txt'] = 'PHP'; $wb['client_txt'] = 'Müşteri'; -$wb['limit_web_domain_txt'] = 'Hesabınıza ekleyebileceÄŸiniz en fazla alan adı sayısına ulaÅŸtınız.'; -$wb['limit_web_aliasdomain_txt'] = 'Hesabınıza ekleyebileceÄŸiniz en fazla baÅŸka alan adı sayısına ulaÅŸtınız.'; -$wb['limit_web_subdomain_txt'] = 'Hesabınıza ekleyebileceÄŸiniz en fazla alt alan adı sayısına ulaÅŸtınız.'; +$wb['limit_web_domain_txt'] = 'Hesabınıza ekleyebileceÄŸiniz en fazla etki alanı sayısına ulaÅŸtınız.'; +$wb['limit_web_aliasdomain_txt'] = 'Hesabınıza ekleyebileceÄŸiniz en fazla takma etki alanı sayısına ulaÅŸtınız.'; +$wb['limit_web_subdomain_txt'] = 'Hesabınıza ekleyebileceÄŸiniz en fazla alt etki alanı sayısına ulaÅŸtınız.'; $wb['apache_directives_txt'] = 'Apache Yönergeleri'; -$wb['domain_error_empty'] = 'Alan adı boÅŸ olamaz.'; -$wb['domain_error_unique'] = 'Aynı adlı bir web sitesi ya da alt/baÅŸka alan adı var.'; -$wb['domain_error_regex'] = 'Alan adı geçersiz.'; -$wb['domain_error_autosub'] = 'Aynı ayarlara sahip bir alt alan adı zaten var.'; +$wb['domain_error_empty'] = 'Etki alanı boÅŸ olamaz.'; +$wb['domain_error_unique'] = 'Aynı adlı bir web sitesi ya da alt/takma etki alanı var.'; +$wb['domain_error_regex'] = 'Etki alanı geçersiz.'; +$wb['domain_error_acme_invalid'] = 'acme.invalid etki alanı adı kullanılamaz.'; +$wb['domain_error_autosub'] = 'Aynı ayarlara sahip bir alt etki alanı zaten var.'; $wb['hd_quota_error_empty'] = 'Disk kotası 0 ya da boÅŸ olamaz.'; $wb['traffic_quota_error_empty'] = 'Trafik kotası boÅŸ olamaz.'; -$wb['error_ssl_state_empty'] = 'SSL ÅŸehri boÅŸ olamaz.'; +$wb['error_ssl_state_empty'] = 'SSL ili boÅŸ olamaz.'; $wb['error_ssl_locality_empty'] = 'SSL bölgesi boÅŸ olamaz.'; -$wb['error_ssl_organisation_empty'] = 'SSL kurumu boÅŸ olamaz.'; +$wb['error_ssl_organisation_empty'] = 'SSL kuruluÅŸu boÅŸ olamaz.'; $wb['error_ssl_organisation_unit_empty'] = 'SSL birimi boÅŸ olamaz.'; $wb['error_ssl_country_empty'] = 'SSL ülkesi boÅŸ olamaz.'; $wb['error_ssl_cert_empty'] = 'SSL sertifikası alanı boÅŸ olamaz'; $wb['client_group_id_txt'] = 'Müşteri'; -$wb['stats_password_txt'] = 'Web istatistikleri parolası'; +$wb['stats_password_txt'] = 'Web Ä°statistikleri Parolası'; $wb['allow_override_txt'] = 'Apache AllowOverride'; $wb['limit_web_quota_free_txt'] = 'Kullanılabilecek en fazla disk kotası'; -$wb['ssl_state_error_regex'] = 'SSL ÅŸehri geçersiz. Kullanılabilecek karakterler: a-z, 0-9 ve .,-_&äöüÄÖÜ'; +$wb['ssl_state_error_regex'] = 'SSL ili geçersiz. Kullanılabilecek karakterler: a-z, 0-9 ve .,-_&äöüÄÖÜ'; $wb['ssl_locality_error_regex'] = 'SSL bölgesi geçersiz. Kullanılabilecek karakterler: a-z, 0-9 ve .,-_&äöüÄÖÜ'; -$wb['ssl_organisation_error_regex'] = 'SSL kurumu geçersiz. Kullanılabilecek karakterler: a-z, 0-9 ve .,-_&äöüÄÖÜ'; -$wb['ssl_organistaion_unit_error_regex'] = 'SSL birimi geçersiz. Kullanılabilecek karakterler: a-z, 0-9 ve .,-_&äöüÄÖÜ'; +$wb['ssl_organisation_error_regex'] = 'SSL kuruluÅŸu geçersiz. Kullanılabilecek karakterler: a-z, 0-9 ve .,-_&äöüÄÖÜ'; +$wb['ssl_organistaion_unit_error_regex'] = 'SSL kuruluÅŸu birimi geçersiz. Kullanılabilecek karakterler: a-z, 0-9 ve .,-_&äöüÄÖÜ'; $wb['ssl_country_error_regex'] = 'SSL ülkesi geçersiz. Kullanılabilecek karakterler: A-Z'; $wb['limit_traffic_quota_free_txt'] = 'Kullanılabilecek en fazla trafik kotası'; $wb['redirect_error_regex'] = 'Yönlendirme yolu geçersiz. Geçerli örnekler: /test/ ya da http://www.domain.tld/test/'; $wb['php_open_basedir_txt'] = 'PHP open_basedir'; $wb['traffic_quota_exceeded_txt'] = 'Trafik kotası aşıldı'; $wb['ruby_txt'] = 'Ruby'; -$wb['stats_user_txt'] = 'Web istatistikleri kullanıcı adı'; -$wb['stats_type_txt'] = 'Web istatistikleri yazılımı'; -$wb['custom_php_ini_txt'] = 'Özel php.ini ayarları'; +$wb['stats_user_txt'] = 'Web Ä°statistikleri Kullanıcı Adı'; +$wb['stats_type_txt'] = 'Web Ä°statistikleri Uygulaması'; +$wb['custom_php_ini_txt'] = 'Özel php.ini Ayarları'; $wb['none_txt'] = 'Yok'; $wb['disabled_txt'] = 'Devre Dışı'; $wb['no_redirect_txt'] = 'Yönlendirme yok'; $wb['no_flag_txt'] = 'Ä°ÅŸaret yok'; -$wb['save_certificate_txt'] = 'Sertifikayı kaydet'; -$wb['create_certificate_txt'] = 'Sertifika ekle'; -$wb['delete_certificate_txt'] = 'Sertifikayı sil'; +$wb['save_certificate_txt'] = 'Sertifikayı Kaydet'; +$wb['create_certificate_txt'] = 'Sertifika Ekle'; +$wb['delete_certificate_txt'] = 'Sertifikayı Sil'; $wb['nginx_directives_txt'] = 'nginx Yönergeleri'; $wb['seo_redirect_txt'] = 'AMD Yönlendirme'; $wb['non_www_to_www_txt'] = 'Non-www -> www'; $wb['www_to_non_www_txt'] = 'www -> non-www'; -$wb['php_fpm_use_socket_txt'] = 'PHP-FPM İçin Soket Kullanılsın'; -$wb['php_fpm_chroot_txt'] = 'Chroot PHP-FPM'; +$wb['php_fpm_use_socket_txt'] = 'PHP-FPM Soketi'; $wb['error_no_sni_txt'] = 'Bu sunucuda SSL için SNI etkinleÅŸtirilmemiÅŸ. Bir IP adresi için yalnız bir SSL sertifikası etkinleÅŸtirebilirsiniz.'; $wb['python_txt'] = 'Python'; $wb['perl_txt'] = 'Perl'; @@ -103,15 +103,15 @@ $wb['pm_max_requests_txt'] = 'PHP-FPM pm.max_requests'; $wb['pm_process_idle_timeout_error_regex'] = 'PHP-FPM pm.process_idle_timeout deÄŸeri pozitif bir tamsayı olmalıdır.'; $wb['pm_max_requests_error_regex'] = 'PHP-FPM pm.max_requests deÄŸeri sıfır ya da pozitif bir tamsayı olmalıdır.'; $wb['pm_ondemand_hint_txt'] = 'Ä°steÄŸe baÄŸlı iÅŸlem yöneticisini kullanabilmek için PHP Sürümünüz >= 5.3.9 olmalıdır. Daha önceki bir PHP sürümü için ondemand özelliÄŸini seçerseniz, PHP baÅŸlatılamaz!'; -$wb['generate_password_txt'] = 'Parola OluÅŸtur'; +$wb['generate_password_txt'] = 'Parola Ãœret'; $wb['repeat_password_txt'] = 'Parola Onayı'; $wb['password_mismatch_txt'] = 'Parola ile onayı aynı deÄŸil.'; $wb['password_match_txt'] = 'Parola ile onayı aynı.'; -$wb['available_php_directive_snippets_txt'] = 'Kullanılabilecek PHP Yönerge Parçaları:'; -$wb['available_apache_directive_snippets_txt'] = 'Kullanılabilecek Apache Yönerge Parçaları:'; -$wb['available_nginx_directive_snippets_txt'] = 'Kullanılabilecek nginx Yönerge Parçaları:'; +$wb['available_php_directive_snippets_txt'] = 'Kullanılabilecek PHP Yönerge Kod Parçaları:'; +$wb['available_apache_directive_snippets_txt'] = 'Kullanılabilecek Apache Yönerge Kod Parçaları:'; +$wb['available_nginx_directive_snippets_txt'] = 'Kullanılabilecek nginx Yönerge Kod Parçaları:'; $wb['proxy_directives_txt'] = 'Vekil Sunucu Yönergeleri'; -$wb['available_proxy_directive_snippets_txt'] = 'Kullanılabilecek Vekil Sunucu Yönerge Parçaları:'; +$wb['available_proxy_directive_snippets_txt'] = 'Kullanılabilecek Vekil Sunucu Yönerge Kod Parçaları:'; $wb['no_server_error'] = 'Bir sunucu seçmelisiniz.'; $wb['no_backup_txt'] = 'Yedek alınmasın'; $wb['daily_backup_txt'] = 'Günlük'; @@ -121,36 +121,39 @@ $wb['rewrite_rules_txt'] = 'Yeniden Yazma Kuralları'; $wb['invalid_rewrite_rules_txt'] = 'Yeniden Yazma Kuralları Geçersiz'; $wb['allowed_rewrite_rule_directives_txt'] = 'Kullanılabilecek Yönergeler:'; $wb['configuration_error_txt'] = 'AYAR HATASI'; +$wb['server_chosen_not_ok'] = 'SeçilmiÅŸ sunucuda bu hesap kullanılamıyor.'; $wb['variables_txt'] = 'DeÄŸiÅŸkenler'; $wb['added_by_txt'] = 'Ekleyen'; -$wb['added_date_txt'] = 'EklendiÄŸi tarih'; +$wb['added_date_txt'] = 'Eklenme Tarihi'; $wb['backup_excludes_txt'] = 'Katılmayacak Klasörler'; $wb['backup_excludes_note_txt'] = '(Klasörleri virgül ile ayırarak yazın. Örnek: web/cache/*,web/backup)'; $wb['backup_excludes_error_regex'] = 'Katılmayacak klasörlerde geçersiz karakterler bulunuyor.'; -$wb['server_chosen_not_ok'] = 'The selected server is not allowed for this account.'; -$wb['web_folder_txt'] = 'Web folder'; -$wb['web_folder_invalid_txt'] = 'The web folder is invalid, please choose a different one.'; -$wb['web_folder_unique_txt'] = 'The web folder is already used, please choose a different one.'; -$wb['host_txt'] = 'Hostname'; -$wb['domain_error_wildcard'] = 'Wildcard subdomains are not allowed.'; -$wb['subdomain_error_empty'] = 'The subdommain field is empty or contains invalid characters.'; -$wb['btn_save_txt'] = 'Save'; -$wb['btn_cancel_txt'] = 'Cancel'; -$wb['enable_spdy_txt'] = 'Enable SPDY/HTTP2'; -$wb['load_client_data_txt'] = 'Load client details'; -$wb['load_my_data_txt'] = 'Load my contact details'; -$wb['reset_client_data_txt'] = 'Reset data'; -$wb['ssl_letsencrypt_txt'] = 'Let\'s Encrypt SSL'; -$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.'; -$wb['enable_pagespeed_txt'] = 'Enable PageSpeed'; -$wb['log_retention_txt'] = 'Logfiles retention time'; -$wb['log_retention_error_regex'] = 'Retention time in days (allowed values: min. 0 - max. 9999)'; -$wb['domain_error_acme_invalid'] = 'Domain name acme.invalid not permitted.'; -$wb['limit_web_quota_not_0_txt'] = 'Harddisk Quota cannot be set to 0.'; +$wb['web_folder_txt'] = 'Web klasörü'; +$wb['web_folder_invalid_txt'] = 'Web klasörü geçersiz, lütfen baÅŸka bir klasör seçin.'; +$wb['web_folder_unique_txt'] = 'Web klasörü zaten kullanılıyor, lütfen baÅŸka bir klasör seçin.'; +$wb['host_txt'] = 'Sunucu adı'; +$wb['domain_error_wildcard'] = 'Genel alt etki alanları kullanılamaz.'; +$wb['variables_txt'] = 'DeÄŸiÅŸkenler'; +$wb['backup_excludes_txt'] = 'Katılmayacak Klasörler'; +$wb['backup_excludes_note_txt'] = '(Klasörleri virgül ile ayırarak yazın. Örnek: web/cache/*,web/backup)'; +$wb['backup_excludes_error_regex'] = 'Katılmayacak klasörlerde geçersiz karakterler bulunuyor.'; +$wb['subdomain_error_empty'] = 'Alt etki alanı boÅŸ ya da geçersiz karakterler içeriyor.'; +$wb['btn_save_txt'] = 'Kaydet'; +$wb['btn_cancel_txt'] = 'Ä°ptal'; +$wb['enable_spdy_txt'] = 'SPDY kullanılsın'; +$wb['load_client_data_txt'] = 'Müşteri Bilgilerini Yükle'; +$wb['load_my_data_txt'] = 'Profil Bilgilerimi Yükle'; +$wb['reset_client_data_txt'] = 'Verileri Sıfırla'; +$wb['document_root_txt'] = 'Belge Kök Klasörü'; +$wb['ssl_letsencrypt_txt'] = 'Let'; +$wb['rewrite_to_https_txt'] = 'HTTP, HTTPS Yönlendirme'; +$wb['password_strength_txt'] = 'Parola ZorluÄŸu'; +$wb['directive_snippets_id_txt'] = 'Web Sunucu Yapılandırması'; +$wb['http_port_txt'] = 'HTTP Kapı Numarası'; +$wb['https_port_txt'] = 'HTTPS Kapı Numarası'; +$wb['http_port_error_regex'] = 'HTTP kapı numarası geçersiz.'; +$wb['https_port_error_regex'] = 'HTTPS kapı numarası geçersiz.'; +$wb['enable_pagespeed_txt'] = 'PageSpeed Kullanılsın'; +$wb['log_retention_txt'] = 'Günlük Dosyalarının Silinme Sıklığı'; +$wb['log_retention_error_regex'] = 'Gün cinsinden günlük dosyalarının silinme sıklığı (En küçük: 0 - En büyük: 9999)'; ?> diff --git a/interface/web/sites/lib/lang/tr_web_vhost_domain_admin_list.lng b/interface/web/sites/lib/lang/tr_web_vhost_domain_admin_list.lng index 4f07fd8588..423e956234 100644 --- a/interface/web/sites/lib/lang/tr_web_vhost_domain_admin_list.lng +++ b/interface/web/sites/lib/lang/tr_web_vhost_domain_admin_list.lng @@ -1,14 +1,14 @@ <?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'; -$wb['add_new_subdomain_txt'] = 'Add new subdomain'; -$wb['add_new_aliasdomain_txt'] = 'Add new aliasdomain'; -$wb['domain_list_head_txt'] = 'Websites'; -$wb['aliasdomain_list_head_txt'] = 'Aliasdomains (Vhost)'; -$wb['subdomain_list_head_txt'] = 'Subdomains (Vhost)'; +$wb['sys_groupid_txt'] = 'Müşteri'; +$wb['list_head_txt'] = 'Web Siteleri'; +$wb['domain_id_txt'] = 'Kod'; +$wb['active_txt'] = 'Etkin'; +$wb['server_id_txt'] = 'Sunucu'; +$wb['domain_txt'] = 'Etki Alanı'; +$wb['add_new_record_txt'] = 'Web Sitesi Ekle'; +$wb['add_new_subdomain_txt'] = 'Alt Etki Alanı Ekle'; +$wb['add_new_aliasdomain_txt'] = 'Takma Etki Alanı Ekle'; +$wb['domain_list_head_txt'] = 'Web Siteleri'; +$wb['aliasdomain_list_head_txt'] = 'Takma Etki Alanları (Sanal Sunucu)'; +$wb['subdomain_list_head_txt'] = 'Alt Etki Alanları (Sanal Sunucu)'; ?> diff --git a/interface/web/sites/lib/lang/tr_web_vhost_domain_list.lng b/interface/web/sites/lib/lang/tr_web_vhost_domain_list.lng index b7df7ed9d0..061afec494 100644 --- a/interface/web/sites/lib/lang/tr_web_vhost_domain_list.lng +++ b/interface/web/sites/lib/lang/tr_web_vhost_domain_list.lng @@ -3,12 +3,12 @@ $wb['list_head_txt'] = 'Web Siteleri'; $wb['domain_id_txt'] = 'Kod'; $wb['active_txt'] = 'Etkin'; $wb['server_id_txt'] = 'Sunucu'; -$wb['parent_domain_id_txt'] = 'Website'; -$wb['domain_txt'] = 'Alan Adı'; +$wb['domain_txt'] = 'Etki Alanı'; $wb['add_new_record_txt'] = 'Web Sitesi Ekle'; -$wb['add_new_subdomain_txt'] = 'Add new subdomain'; -$wb['add_new_aliasdomain_txt'] = 'Add new aliasdomain'; -$wb['domain_list_head_txt'] = 'Websites'; -$wb['aliasdomain_list_head_txt'] = 'Aliasdomains (Vhost)'; -$wb['subdomain_list_head_txt'] = 'Subdomains (Vhost)'; +$wb['add_new_subdomain_txt'] = 'Alt Etki Alanı Ekle'; +$wb['add_new_aliasdomain_txt'] = 'Takma Etki Alanı Ekle'; +$wb['parent_domain_id_txt'] = 'Web Sitesi'; +$wb['domain_list_head_txt'] = 'Web Siteleri'; +$wb['aliasdomain_list_head_txt'] = 'Takma Etki Alanları (Sanal Sunucu)'; +$wb['subdomain_list_head_txt'] = 'Alt Etki Alanı Adları (Sanal Sunucu)'; ?> diff --git a/interface/web/sites/lib/lang/tr_web_vhost_subdomain.lng b/interface/web/sites/lib/lang/tr_web_vhost_subdomain.lng index 2bbcfb661c..a24883881f 100644 --- a/interface/web/sites/lib/lang/tr_web_vhost_subdomain.lng +++ b/interface/web/sites/lib/lang/tr_web_vhost_subdomain.lng @@ -7,7 +7,7 @@ $wb['backup_interval_txt'] = 'Yedekleme Sıklığı'; $wb['backup_copies_txt'] = 'Yedek Kopyası Sayısı'; $wb['ssl_state_txt'] = 'Ä°l'; $wb['ssl_locality_txt'] = 'Bölge'; -$wb['ssl_organisation_txt'] = 'Kurum'; +$wb['ssl_organisation_txt'] = 'KuruluÅŸ'; $wb['ssl_organisation_unit_txt'] = 'Birim'; $wb['ssl_country_txt'] = 'Ãœlke'; $wb['ssl_key_txt'] = 'SSL Anahtarı'; @@ -15,13 +15,14 @@ $wb['ssl_request_txt'] = 'SSL Ä°steÄŸi'; $wb['ssl_cert_txt'] = 'SSL Sertifikası'; $wb['ssl_bundle_txt'] = 'SSL Yığını'; $wb['ssl_action_txt'] = 'SSL Ä°ÅŸlemi'; -$wb['ssl_domain_txt'] = 'SSL Alan Adı'; +$wb['ssl_domain_txt'] = 'SSL Etki Alanı'; $wb['server_id_txt'] = 'Sunucu'; -$wb['domain_txt'] = 'Alan Adı'; +$wb['domain_txt'] = 'Etki Alanı'; $wb['host_txt'] = 'Sunucu Adı'; $wb['web_folder_error_regex'] = 'Yazılan klasör geçersiz. Lütfen / karakteri kullanmadan yazın.'; -$wb['type_txt'] = 'Tip'; -$wb['redirect_type_txt'] = 'Yönlendirme Tipi'; +$wb['type_txt'] = 'Tür'; +$wb['parent_domain_id_txt'] = 'Ãœst Web Sitesi'; +$wb['redirect_type_txt'] = 'Yönlendirme Türü'; $wb['redirect_path_txt'] = 'Yönlendirme Yolu'; $wb['active_txt'] = 'Etkin'; $wb['document_root_txt'] = 'Kök Klasör'; @@ -29,30 +30,30 @@ $wb['system_user_txt'] = 'Linux Kullanıcısı'; $wb['system_group_txt'] = 'Linux Grubu'; $wb['ip_address_txt'] = 'IPv4 Adresi'; $wb['ipv6_address_txt'] = 'IPv6 Adresi'; -$wb['vhost_type_txt'] = 'SSunucu Tipi'; +$wb['vhost_type_txt'] = 'Sanal Sunucu Türü'; $wb['hd_quota_txt'] = 'Disk Kotası'; $wb['traffic_quota_txt'] = 'Trafik Kotası'; $wb['cgi_txt'] = 'CGI'; $wb['ssi_txt'] = 'SSI'; $wb['errordocs_txt'] = 'Özel Hata Sayfaları'; -$wb['subdomain_txt'] = 'Otomatik Alt Alan'; +$wb['subdomain_txt'] = 'Otomatik Alt Etki Alanı'; $wb['ssl_txt'] = 'SSL'; $wb['suexec_txt'] = 'SuEXEC'; $wb['php_txt'] = 'PHP'; $wb['client_txt'] = 'Müşteri'; -$wb['limit_web_domain_txt'] = 'Hesabınıza ekleyebileceÄŸiniz en fazla alan adı sayısına ulaÅŸtınız.'; -$wb['limit_web_aliasdomain_txt'] = 'Hesabınıza ekleyebileceÄŸiniz en fazla baÅŸka alan adı sayısına ulaÅŸtınız.'; -$wb['limit_web_subdomain_txt'] = 'Hesabınıza ekleyebileceÄŸiniz en fazla alt alan adı sayısına ulaÅŸtınız.'; +$wb['limit_web_domain_txt'] = 'Hesabınıza ekleyebileceÄŸiniz en fazla etki alanı sayısına ulaÅŸtınız.'; +$wb['limit_web_aliasdomain_txt'] = 'Hesabınıza ekleyebileceÄŸiniz en fazla takma etki alanı sayısına ulaÅŸtınız.'; +$wb['limit_web_subdomain_txt'] = 'Hesabınıza ekleyebileceÄŸiniz en fazla alt etki alanı sayısına ulaÅŸtınız.'; $wb['apache_directives_txt'] = 'Apache Yönergeleri'; -$wb['domain_error_empty'] = 'Alan adı boÅŸ olamaz.'; -$wb['domain_error_unique'] = 'Aynı adlı bir web sitesi ya da alt/baÅŸka alan adı var.'; -$wb['domain_error_regex'] = 'Alan adı geçersiz.'; -$wb['domain_error_wildcard'] = 'Genel karakterler içeren alt alan adları kullanılamaz.'; +$wb['domain_error_empty'] = 'Etki alanı boÅŸ olamaz.'; +$wb['domain_error_unique'] = 'Aynı adlı bir web sitesi ya da alt/takma etki alanı var.'; +$wb['domain_error_regex'] = 'Etki alanı geçersiz.'; +$wb['domain_error_wildcard'] = 'Genel karakterler içeren alt etki alanları kullanılamaz.'; $wb['hd_quota_error_empty'] = 'Disk kotası 0 ya da boÅŸ olamaz.'; $wb['traffic_quota_error_empty'] = 'Trafik kotası boÅŸ olamaz.'; -$wb['error_ssl_state_empty'] = 'SSL ÅŸehri boÅŸ olamaz.'; +$wb['error_ssl_state_empty'] = 'SSL ili boÅŸ olamaz.'; $wb['error_ssl_locality_empty'] = 'SSL bölgesi boÅŸ olamaz.'; -$wb['error_ssl_organisation_empty'] = 'SSL kurumu boÅŸ olamaz.'; +$wb['error_ssl_organisation_empty'] = 'SSL kuruluÅŸu boÅŸ olamaz.'; $wb['error_ssl_organisation_unit_empty'] = 'SSL birimi boÅŸ olamaz.'; $wb['error_ssl_country_empty'] = 'SSL ülkesi boÅŸ olamaz.'; $wb['error_ssl_cert_empty'] = 'SSL sertifikası alanı boÅŸ olamaz'; @@ -60,31 +61,31 @@ $wb['client_group_id_txt'] = 'Müşteri'; $wb['stats_password_txt'] = 'Web istatistikleri parolasını ayarla'; $wb['allow_override_txt'] = 'Apache AllowOverride'; $wb['limit_web_quota_free_txt'] = 'Kullanılabilecek en fazla disk kotası'; -$wb['ssl_state_error_regex'] = 'SSL ÅŸehri geçersiz. Kullanılabilecek karakterler: a-z, 0-9 ve .,-_'; -$wb['ssl_locality_error_regex'] = 'SSL bölgesi geçersiz. Kullanılabilecek karakterler: a-z, 0-9 ve .,-_'; -$wb['ssl_organisation_error_regex'] = 'SSL kurumu geçersiz. Kullanılabilecek karakterler: a-z, 0-9 ve .,-_'; -$wb['ssl_organistaion_unit_error_regex'] = 'SSL birimi geçersiz. Kullanılabilecek karakterler: a-z, 0-9 ve .,-_'; +$wb['ssl_state_error_regex'] = 'SSL ili geçersiz. Kullanılabilecek karakterler: a-z, 0-9 ve .,-_&äöüÄÖÜ'; +$wb['ssl_locality_error_regex'] = 'SSL bölgesi geçersiz. Kullanılabilecek karakterler: a-z, 0-9 ve .,-_&äöüÄÖÜ'; +$wb['ssl_organisation_error_regex'] = 'SSL kuruluÅŸu geçersiz. Kullanılabilecek karakterler: a-z, 0-9 ve .,-_&äöüÄÖÜ'; +$wb['ssl_organistaion_unit_error_regex'] = 'SSL kuruluÅŸu birimi geçersiz. Kullanılabilecek karakterler: a-z, 0-9 ve .,-_&äöüÄÖÜ'; $wb['ssl_country_error_regex'] = 'SSL ülkesi geçersiz. Kullanılabilecek karakterler: A-Z'; $wb['limit_traffic_quota_free_txt'] = 'Kullanılabilecek en fazla trafik kotası'; $wb['redirect_error_regex'] = 'Yönlendirme yolu geçersiz. Geçerli örnekler: /test/ ya da http://www.domain.tld/test/'; $wb['php_open_basedir_txt'] = 'PHP open_basedir'; $wb['traffic_quota_exceeded_txt'] = 'Trafik kotası aşıldı'; $wb['ruby_txt'] = 'Ruby'; -$wb['stats_user_txt'] = 'Web istatistikleri kullanıcı adı'; -$wb['stats_type_txt'] = 'Web istatistikleri yazılımı'; -$wb['custom_php_ini_txt'] = 'Özel php.ini ayarları'; +$wb['stats_user_txt'] = 'Web Ä°statistikleri Kullanıcı Adı'; +$wb['stats_type_txt'] = 'Web Ä°statistikleri Uygulaması'; +$wb['custom_php_ini_txt'] = 'Özel php.ini Ayarları'; $wb['none_txt'] = 'Yok'; $wb['disabled_txt'] = 'Devre Dışı'; $wb['no_redirect_txt'] = 'Yönlendirme yok'; $wb['no_flag_txt'] = 'Ä°ÅŸaret yok'; -$wb['save_certificate_txt'] = 'Sertifikayı kaydet'; -$wb['create_certificate_txt'] = 'Sertifika ekle'; -$wb['delete_certificate_txt'] = 'Sertifikayı sil'; +$wb['save_certificate_txt'] = 'Sertifikayı Kaydet'; +$wb['create_certificate_txt'] = 'Sertifika Ekle'; +$wb['delete_certificate_txt'] = 'Sertifikayı Sil'; $wb['nginx_directives_txt'] = 'nginx Yönergeleri'; $wb['seo_redirect_txt'] = 'AMD Yönlendirme'; $wb['non_www_to_www_txt'] = 'Non-www -> www'; $wb['www_to_non_www_txt'] = 'www -> non-www'; -$wb['php_fpm_use_socket_txt'] = 'PHP-FPM İçin Soket Kullanılsın'; +$wb['php_fpm_use_socket_txt'] = 'PHP-FPM Soketi'; $wb['error_no_sni_txt'] = 'Bu sunucuda SSL için SNI etkinleÅŸtirilmemiÅŸ. Bir IP adresi için yalnız bir SSL sertifikası etkinleÅŸtirebilirsiniz.'; $wb['python_txt'] = 'Python'; $wb['perl_txt'] = 'Perl'; @@ -106,26 +107,26 @@ $wb['pm_max_requests_txt'] = 'PHP-FPM pm.max_requests'; $wb['pm_process_idle_timeout_error_regex'] = 'PHP-FPM pm.process_idle_timeout deÄŸeri pozitif bir tamsayı olmalıdır.'; $wb['pm_max_requests_error_regex'] = 'PHP-FPM pm.max_requests deÄŸeri sıfır ya da pozitif bir tamsayı olmalıdır.'; $wb['pm_ondemand_hint_txt'] = 'Ä°steÄŸe baÄŸlı iÅŸlem yöneticisini kullanabilmek için PHP Sürümünüz >= 5.3.9 olmalıdır. Daha önceki bir PHP sürümü için ondemand özelliÄŸini seçerseniz, PHP baÅŸlatılamaz!'; -$wb['generate_password_txt'] = 'Parola OluÅŸtur'; +$wb['generate_password_txt'] = 'Parola Ãœret'; $wb['repeat_password_txt'] = 'Parola Onayı'; $wb['password_mismatch_txt'] = 'Parola ile onayı aynı deÄŸil.'; $wb['password_match_txt'] = 'Parola ile onayı aynı.'; -$wb['available_php_directive_snippets_txt'] = 'Kullanılabilecek PHP Yönerge Parçaları:'; -$wb['available_apache_directive_snippets_txt'] = 'Kullanılabilecek Apache Yönerge Parçaları:'; -$wb['available_nginx_directive_snippets_txt'] = 'Kullanılabilecek nginx Yönerge Parçaları:'; +$wb['available_php_directive_snippets_txt'] = 'Kullanılabilecek PHP Yönerge Kod Parçaları:'; +$wb['available_apache_directive_snippets_txt'] = 'Kullanılabilecek Apache Yönerge Kod Parçaları:'; +$wb['available_nginx_directive_snippets_txt'] = 'Kullanılabilecek nginx Yönerge Kod Parçaları:'; $wb['proxy_directives_txt'] = 'Vekil Sunucu Yönergeleri'; -$wb['available_proxy_directive_snippets_txt'] = 'Kullanılabilecek Vekil Sunucu Yönerge Parçaları:'; +$wb['available_proxy_directive_snippets_txt'] = 'Kullanılabilecek Vekil Sunucu Yönerge Kod Parçaları:'; $wb['rewrite_rules_txt'] = 'Yeniden Yazma Kuralları'; $wb['invalid_rewrite_rules_txt'] = 'Yeniden Yazma Kuralları Geçersiz'; $wb['allowed_rewrite_rule_directives_txt'] = 'Kullanılabilecek Yönergeler:'; -$wb['configuration_error_txt'] = 'CONFIGURATION ERROR'; +$wb['configuration_error_txt'] = 'YAPILANDIRMA HATASI'; $wb['variables_txt'] = 'DeÄŸiÅŸkenler'; $wb['backup_excludes_txt'] = 'Katılmayacak Klasörler'; $wb['backup_excludes_note_txt'] = '(Klasörleri virgül ile ayırarak yazın. Örnek: web/cache/*,web/backup)'; $wb['backup_excludes_error_regex'] = 'Katılmayacak klasörlerde geçersiz karakterler bulunuyor.'; -$wb['subdomain_error_empty'] = 'Alt alan adı boÅŸ ya da geçersiz karakterler içeriyor.'; -$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.'; +$wb['subdomain_error_empty'] = 'Alt etki alanı boÅŸ ya da geçersiz karakterler içeriyor.'; +$wb['http_port_txt'] = 'HTTP Kapı Numarası'; +$wb['https_port_txt'] = 'HTTPS Kapı Numarası'; +$wb['http_port_error_regex'] = 'HTTP kapı numarası geçersiz.'; +$wb['https_port_error_regex'] = 'HTTPS kapı numarası geçersiz.'; ?> diff --git a/interface/web/sites/lib/lang/tr_web_vhost_subdomain_list.lng b/interface/web/sites/lib/lang/tr_web_vhost_subdomain_list.lng index bc7e7622c2..6527242e2d 100644 --- a/interface/web/sites/lib/lang/tr_web_vhost_subdomain_list.lng +++ b/interface/web/sites/lib/lang/tr_web_vhost_subdomain_list.lng @@ -1,8 +1,8 @@ <?php -$wb['list_head_txt'] = 'Alt Alanlar'; +$wb['list_head_txt'] = 'Alt Etki Alanları'; $wb['active_txt'] = 'Etkin'; $wb['server_id_txt'] = 'Sunucu'; $wb['parent_domain_id_txt'] = 'Web Sitesi'; -$wb['domain_txt'] = 'Alt Alan Adı'; -$wb['add_new_record_txt'] = 'Alt alan ekle'; +$wb['domain_txt'] = 'Alt Etki Alanı'; +$wb['add_new_record_txt'] = 'Alt Etki Alanı Ekle'; ?> diff --git a/interface/web/sites/lib/lang/tr_webdav_user.lng b/interface/web/sites/lib/lang/tr_webdav_user.lng index e592f052c4..c80088da95 100644 --- a/interface/web/sites/lib/lang/tr_webdav_user.lng +++ b/interface/web/sites/lib/lang/tr_webdav_user.lng @@ -4,7 +4,7 @@ $wb['server_id_txt'] = 'Sunucu'; $wb['parent_domain_id_txt'] = 'Web Sitesi'; $wb['username_txt'] = 'Kullanıcı Adı'; $wb['password_txt'] = 'Parola'; -$wb['password_strength_txt'] = 'Parola Güçlüğü'; +$wb['password_strength_txt'] = 'Parola ZorluÄŸu'; $wb['active_txt'] = 'Etkin'; $wb['limit_webdav_user_txt'] = 'Hesabınıza ekleyebileceÄŸiniz en fazla webdav kullanıcısı sayısına ulaÅŸtınız.'; $wb['username_error_empty'] = 'Kullanıcı adı boÅŸ olamaz.'; @@ -14,7 +14,7 @@ $wb['directory_error_empty'] = 'Klasör boÅŸ olamaz.'; $wb['parent_domain_id_error_empty'] = 'Bir web sitesi seçmelisiniz.'; $wb['dir_dot_error'] = 'Yol içinde .. kullanılamaz.'; $wb['dir_slashdot_error'] = 'Yol içinde ./ kullanılamaz.'; -$wb['generate_password_txt'] = 'Parola OluÅŸtur'; +$wb['generate_password_txt'] = 'Parola Ãœret'; $wb['repeat_password_txt'] = 'Parola Onayı'; $wb['password_mismatch_txt'] = 'Parola ile onayı aynı deÄŸil.'; $wb['password_match_txt'] = 'Parola ile onayı aynı.'; diff --git a/interface/web/strengthmeter/lib/lang/br_strengthmeter.lng b/interface/web/strengthmeter/lib/lang/br_strengthmeter.lng index 172646f212..2b2fb51f9a 100644 --- a/interface/web/strengthmeter/lib/lang/br_strengthmeter.lng +++ b/interface/web/strengthmeter/lib/lang/br_strengthmeter.lng @@ -2,7 +2,7 @@ $wb['password_strength_0_txt'] = 'Muito curta'; $wb['password_strength_1_txt'] = 'Fraca'; $wb['password_strength_2_txt'] = 'Razoável'; -$wb['password_strength_3_txt'] = 'Bom'; +$wb['password_strength_3_txt'] = 'Boa'; $wb['password_strength_4_txt'] = 'Forte'; -$wb['password_strength_5_txt'] = 'Muito Forte'; +$wb['password_strength_5_txt'] = 'Muito forte'; ?> diff --git a/interface/web/tools/lib/lang/br.lng b/interface/web/tools/lib/lang/br.lng index 3000e972fc..1c11472165 100644 --- a/interface/web/tools/lib/lang/br.lng +++ b/interface/web/tools/lib/lang/br.lng @@ -1,13 +1,13 @@ <?php -$wb['User Settings'] = 'Configurações do usuário'; +$wb['User Settings'] = 'Configurações de usuários'; $wb['Settings'] = 'Configurações'; $wb['ISPConfig Tools'] = 'Ferramentas'; +$wb['Interface'] = 'Interface'; $wb['Password and Language'] = 'Senha e Idioma'; -$wb['ispconfig_tools_note'] = 'Este módulo permite você alterar a senha e o idioma e sincronizar os registros dns.'; +$wb['ispconfig_tools_note'] = 'Este módulo permite alterar a senha e idioma e iniciar a sincronização de registros dns.'; +$wb['Sync Tools'] = 'Sincronização'; $wb['Resync'] = 'Sincronizar'; -$wb['Sync Tools'] = 'Sincronismo'; $wb['Import'] = 'Importar'; -$wb['ISPConfig 3 mail'] = 'ISPConfig 3'; -$wb['PDNS Tupa'] = 'Tupa PowerDNS'; -$wb['Interface'] = 'Interface'; +$wb['ISPConfig 3 mail'] = 'e-Mails do ISPConfig'; +$wb['PDNS Tupa'] = 'PowerDNS'; ?> diff --git a/interface/web/tools/lib/lang/br_import_ispconfig.lng b/interface/web/tools/lib/lang/br_import_ispconfig.lng index 8124d13f10..d77242b483 100644 --- a/interface/web/tools/lib/lang/br_import_ispconfig.lng +++ b/interface/web/tools/lib/lang/br_import_ispconfig.lng @@ -1,23 +1,23 @@ <?php $wb['head_txt'] = 'Importar configuração de e-mail do ISPConfig 3'; -$wb['legend_txt'] = 'Detalhes da conexão do servidor remoto'; -$wb['legend2_txt'] = 'Importar domÃnio de e-mails'; +$wb['legend_txt'] = 'Detalhes da conexão remota do servidor'; +$wb['legend2_txt'] = 'Importar domÃnio de e-mail'; $wb['resync_sites_txt'] = 'Sincronizar sites'; $wb['resync_ftp_txt'] = 'Sincronizar usuários ftp'; -$wb['resync_shell_txt'] = 'Sincronizar usuários shell'; -$wb['resync_cron_txt'] = 'Sincronizar tarefas na cron'; -$wb['resync_db_txt'] = 'Sincronizar configurações de usuários do banco de dados'; -$wb['resync_mailbox_txt'] = 'Sincronizar e-mails'; +$wb['resync_shell_txt'] = 'Sincronizar usuários do shell'; +$wb['resync_cron_txt'] = 'Sincronizar tarefas no cron'; +$wb['resync_db_txt'] = 'Sincronizar configurações do cliente de banco de dados'; +$wb['resync_mailbox_txt'] = 'Sincronizar contas de e-mail'; $wb['resync_dns_txt'] = 'Sincronizar registros dns'; $wb['btn_start_txt'] = 'Iniciar importação'; -$wb['btn_connect_txt'] = 'Conectar no servidor remoto'; +$wb['btn_connect_txt'] = 'Conectar ao servidor remoto'; $wb['btn_cancel_txt'] = 'Cancelar'; $wb['client_group_id_txt'] = 'Cliente local'; -$wb['mail_domain_txt'] = 'DomÃnio de e-mails remoto'; -$wb['import_mailbox_txt'] = 'Importar e-mails'; -$wb['import_aliasdomain_txt'] = 'Importar apelidos de domÃnio'; -$wb['import_alias_txt'] = 'Importar apelidos de e-mails'; -$wb['import_forward_txt'] = 'Importar encaminhamentos de e-mails'; -$wb['import_user_filter_txt'] = 'Importar filtros de e-mail de usuários'; +$wb['mail_domain_txt'] = 'DomÃnio de e-mail remoto'; +$wb['import_mailbox_txt'] = 'Importar contas de e-mail'; +$wb['import_aliasdomain_txt'] = 'Importar alias de domÃnios'; +$wb['import_alias_txt'] = 'Importar alias de e-mail'; +$wb['import_forward_txt'] = 'Importar encaminhamentos de e-mail'; +$wb['import_user_filter_txt'] = 'Importar filtros de e-mail'; $wb['import_spamfilter_txt'] = 'Importar filtros anti-spam'; ?> diff --git a/interface/web/tools/lib/lang/br_import_vpopmail.lng b/interface/web/tools/lib/lang/br_import_vpopmail.lng index 55bc0bf238..c18b0b6810 100644 --- a/interface/web/tools/lib/lang/br_import_vpopmail.lng +++ b/interface/web/tools/lib/lang/br_import_vpopmail.lng @@ -1,7 +1,8 @@ <?php -$wb['head_txt'] = 'Importar configuração de e-mail do vpopmail'; -$wb['legend_txt'] = 'Detalhes da conexão do servidor de banco de dados remoto'; -$wb['btn_start_txt'] = 'Iniciar importação'; -$wb['btn_connect_txt'] = 'Conectar servidor remoto'; +$wb['head_txt'] = 'Importar configurações de e-mail do vpopmail'; +$wb['legend_txt'] = 'Detalhes da conexão remota do servidor de banco de dados'; +$wb['btn_start_txt'] = 'Iniciar Importação'; +$wb['btn_connect_txt'] = 'Conectar ao servidor remoto'; $wb['btn_cancel_txt'] = 'Cancelar'; + ?> diff --git a/interface/web/tools/lib/lang/br_index.lng b/interface/web/tools/lib/lang/br_index.lng index 437e1f01c3..bbb7085209 100644 --- a/interface/web/tools/lib/lang/br_index.lng +++ b/interface/web/tools/lib/lang/br_index.lng @@ -1,4 +1,4 @@ <?php -$wb['page_head_txt'] = 'Ferramentas'; +$wb['page_head_txt'] = 'Ferramentas do ISPConfig'; $wb['page_desc_txt'] = 'Alterar configurações de usuário'; ?> diff --git a/interface/web/tools/lib/lang/br_interface.lng b/interface/web/tools/lib/lang/br_interface.lng index 45341060c5..95677c4b59 100644 --- a/interface/web/tools/lib/lang/br_interface.lng +++ b/interface/web/tools/lib/lang/br_interface.lng @@ -1,7 +1,7 @@ <?php -$wb['interface_head_txt'] = 'Configurações da interface'; -$wb['interface_desc_txt'] = 'Alterar interface'; +$wb['interface_head_txt'] = 'Configurações da Interface'; +$wb['interface_desc_txt'] = 'Alterar a interface'; $wb['language_txt'] = 'Idioma'; -$wb['startmodule_txt'] = 'Módulo inicial'; +$wb['startmodule_txt'] = 'Módulo Inicial'; $wb['app_theme_txt'] = 'Tema'; ?> diff --git a/interface/web/tools/lib/lang/br_resync.lng b/interface/web/tools/lib/lang/br_resync.lng index bf854b33b3..160a35dd0c 100644 --- a/interface/web/tools/lib/lang/br_resync.lng +++ b/interface/web/tools/lib/lang/br_resync.lng @@ -1,53 +1,53 @@ <?php -$wb['head_txt'] = 'Sincronismo'; -$wb['legend_txt'] = 'Sincronizar'; +$wb['head_txt'] = 'Ferramentas de Sincronização'; +$wb['legend_txt'] = 'Sincronização'; $wb['resync_all_txt'] = 'Todos os serviços'; $wb['resync_sites_txt'] = 'Sites'; -$wb['resync_ftp_txt'] = 'Contas ftp'; +$wb['resync_ftp_txt'] = 'Contas FTP'; $wb['resync_webdav_txt'] = 'Usuários webdav'; -$wb['resync_shell_txt'] = 'Usuários shell'; +$wb['resync_shell_txt'] = 'Usuários do shell'; $wb['resync_cron_txt'] = 'Tarefas no cron'; -$wb['resync_db_txt'] = 'Configurações de banco de dados de clientes'; -$wb['resync_mailbox_txt'] = 'e-mails'; -$wb['resync_mail_txt'] = 'DomÃnio de e-mails'; +$wb['resync_db_txt'] = 'Configurações do banco de dados de clientes'; +$wb['resync_mailbox_txt'] = 'Contas de e-mail'; +$wb['resync_mail_txt'] = 'DomÃnios de e-mail'; $wb['resync_mailfilter_txt'] = 'Filtros de e-mail'; $wb['resync_mailinglist_txt'] = 'Listas de e-mail'; $wb['resync_dns_txt'] = 'Registros dns'; -$wb['resync_vserver_txt'] = 'Servidores virtuais'; +$wb['resync_vserver_txt'] = 'Máquinas virtuais'; $wb['resync_client_txt'] = 'Clientes e revendas'; $wb['all_active_txt'] = 'Todos os servidores ativos'; $wb['all_active_mail_txt'] = 'Todos os servidores de e-mail ativos'; $wb['all_active_web_txt'] = 'Todos os servidores web ativos'; $wb['all_active_dns_txt'] = 'Todos os servidores dns ativos'; -$wb['all_active_file_txt'] = 'Todos servidores ftp ativos'; +$wb['all_active_file_txt'] = 'Todos os servidores ftp ativos'; $wb['all_active_db_txt'] = 'Todos os servidores de banco de dados ativos'; -$wb['all_active_vserver_txt'] = 'Todos servidores virtuais ativos'; -$wb['do_sites_txt'] = 'Sites sincronizados'; -$wb['do_ftp_txt'] = 'Usuários ftp sincronizados'; -$wb['do_webdav_txt'] = 'Usuários webdav sincronizados'; -$wb['do_shell_txt'] = 'Usuários shell sincronizados'; -$wb['do_cron_txt'] = 'Tarefas no cron sincronizadas'; -$wb['do_db_user_txt'] = 'Usuários de banco de dados sincronizados'; -$wb['do_db_txt'] = 'Banco de dados sincronizados'; -$wb['do_mail_txt'] = 'DomÃnio de e-mails sincronizados'; -$wb['do_mailbox_txt'] = 'Contas de e-mail sincronizadas'; -$wb['do_mail_alias_txt'] = 'Apelidos de e-mail sincronizados'; -$wb['do_mail_access_txt'] = 'Usuários remotos de e-mail sincronizados'; -$wb['do_mail_contentfilter_txt'] = 'Filtros de e-mail sincronizados'; -$wb['do_mail_userfilter_txt'] = 'Filtros de e-mail de usuários sincronizados'; -$wb['do_mailinglist_txt'] = 'Listas de e-mail sincronizadas'; -$wb['do_dns_txt'] = 'Zonas dns sincronizadas'; -$wb['do_vserver_txt'] = 'Servidores virtuais sincronizados'; -$wb['do_clients_txt'] = 'Clientes e revendas sincronizados'; -$wb['no_results_txt'] = 'Não encontrado'; +$wb['all_active_vserver_txt'] = 'Todos as máquinas virtuais ativas'; +$wb['do_sites_txt'] = 'Sites sincronizados.'; +$wb['do_ftp_txt'] = 'Usuários ftp sincronizados.'; +$wb['do_webdav_txt'] = 'Usuários webdav sincronizados.'; +$wb['do_shell_txt'] = 'Usuários do shell sincronizados.'; +$wb['do_cron_txt'] = 'Tarefas no cron sincronizadas.'; +$wb['do_db_user_txt'] = 'Usuários do banco de dados sincronizados.'; +$wb['do_db_txt'] = 'Banco de dados sincronizados.'; +$wb['do_mail_txt'] = 'DomÃnios de e-mal sincronizados.'; +$wb['do_mailbox_txt'] = 'Contas de e-mail sincronizadas.'; +$wb['do_mail_alias_txt'] = 'Alias de domÃnios de e-mail sincronizados.'; +$wb['do_mail_access_txt'] = 'Acessos de e-mail sincronizados.'; +$wb['do_mail_contentfilter_txt'] = 'Filtros de conteúdo de e-mail sincronizados.'; +$wb['do_mail_userfilter_txt'] = 'Filtros de e-mail sincronizados.'; +$wb['do_mailinglist_txt'] = 'Listas de e-mail sincronizadas.'; +$wb['do_dns_txt'] = 'Zonas DNS sincronizadas.'; +$wb['do_vserver_txt'] = 'Máquinas virtuais sincronizados.'; +$wb['do_clients_txt'] = 'Clientes e revendas sincronizados.'; +$wb['no_results_txt'] = 'Nada foi encontrado.'; $wb['btn_start_txt'] = 'Iniciar'; $wb['btn_cancel_txt'] = 'Cancelar'; -$wb['do_mail_spamfilter_policy_txt'] = 'PolÃticas anti-spam sincronizadas'; -$wb['do_mail_spamfilter_txt'] = 'Filtros anti-spam sincronizados'; -$wb['do_mailget_txt'] = 'Contas de busca de e-mail sincronizadas'; -$wb['resync_mailget_txt'] = 'Contas de busca de e-mails'; -$wb['resync_mailtransport_txt'] = 'E-Mail Transport'; -$wb['resync_mailrelay_txt'] = 'E-Mail Relay'; -$wb['do_mailtransport_txt'] = 'Resynced Mailtransport'; -$wb['do_mailrelay_txt'] = 'Resynced Mailrelay'; +$wb['do_mail_spamfilter_policy_txt'] = 'Sincronizar polÃticas anti-spam'; +$wb['do_mail_spamfilter_txt'] = 'PolÃticas anti-spam sincronizadas.'; +$wb['do_mailget_txt'] = 'Contas de busca sincronizadas.'; +$wb['resync_mailget_txt'] = 'Sincronizar contas de busca.'; +$wb['resync_mailtransport_txt'] = 'Sincronizar transportes de e-mail'; +$wb['resync_mailrelay_txt'] = 'Sincronizar retransmissão de e-mail'; +$wb['do_mailtransport_txt'] = 'Transportes de e-mail sincronizados.'; +$wb['do_mailrelay_txt'] = 'Retransmissões de e-mail sincronizados.'; ?> diff --git a/interface/web/tools/lib/lang/br_tpl_default.lng b/interface/web/tools/lib/lang/br_tpl_default.lng index 1e09eea22c..30ae32b17a 100644 --- a/interface/web/tools/lib/lang/br_tpl_default.lng +++ b/interface/web/tools/lib/lang/br_tpl_default.lng @@ -1,7 +1,7 @@ <?php -$wb['list_head_txt'] = 'Configurações do tema padrão'; +$wb['list_head_txt'] = 'Configuração padrão de temas'; $wb['list_desc_txt'] = 'Alterar opções especÃficas do tema padrão'; -$wb['no_settings_txt'] = 'Não existem configurações para o tema padrão.'; +$wb['no_settings_txt'] = 'Não existe configurações para o tema padrão.'; $wb['btn_start_txt'] = 'Salvar'; $wb['btn_cancel_txt'] = 'Voltar'; ?> diff --git a/interface/web/tools/lib/lang/br_usersettings.lng b/interface/web/tools/lib/lang/br_usersettings.lng index 8fccd26852..cb3ae2dc4f 100644 --- a/interface/web/tools/lib/lang/br_usersettings.lng +++ b/interface/web/tools/lib/lang/br_usersettings.lng @@ -2,11 +2,11 @@ $wb['password_txt'] = 'Senha'; $wb['password_strength_txt'] = 'Dificuldade da senha'; $wb['language_txt'] = 'Idioma'; -$wb['password_mismatch'] = 'As senhas não coincidem'; -$wb['Form to edit the user password and language.'] = 'Alterar idioma e senha'; +$wb['password_mismatch'] = 'A senha e confirmação da senha não coincidem.'; +$wb['Form to edit the user password and language.'] = 'Editar senha e idioma do usuário'; $wb['Settings'] = 'Configurações'; -$wb['generate_password_txt'] = 'Gerar senha'; -$wb['repeat_password_txt'] = 'Repetir senha'; -$wb['password_mismatch_txt'] = 'A senhas não coincidem.'; -$wb['password_match_txt'] = 'A senhas coincidem.'; +$wb['generate_password_txt'] = 'Gerar Senha'; +$wb['repeat_password_txt'] = 'Repetir Senha'; +$wb['password_mismatch_txt'] = 'As senhas não coincidem.'; +$wb['password_match_txt'] = 'As senhas coincidem.'; ?> diff --git a/interface/web/tools/lib/lang/tr.lng b/interface/web/tools/lib/lang/tr.lng index 5782a862cf..6115b8a7a3 100644 --- a/interface/web/tools/lib/lang/tr.lng +++ b/interface/web/tools/lib/lang/tr.lng @@ -4,10 +4,10 @@ $wb['Settings'] = 'Ayarlar'; $wb['ISPConfig Tools'] = 'ISPConfig Araçları'; $wb['Interface'] = 'Arayüz'; $wb['Password and Language'] = 'Parola ve Dil'; -$wb['ispconfig_tools_note'] = 'Bu modül parola ve dilin deÄŸiÅŸtirilmesini saÄŸlayarak DNS kayıtları eÅŸleÅŸtirmesini baÅŸlatır.'; -$wb['Sync Tools'] = 'EÅŸleÅŸtirme Araçları'; -$wb['Resync'] = 'EÅŸleÅŸtirme'; -$wb['Import'] = 'Al'; -$wb['ISPConfig 3 mail'] = 'ISPConfig 3 postası'; +$wb['ispconfig_tools_note'] = 'Bu modül parola ve dilin deÄŸiÅŸtirilmesini saÄŸlayarak DNS kayıtları eÅŸitlemesini baÅŸlatır.'; +$wb['Sync Tools'] = 'EÅŸitleme Araçları'; +$wb['Resync'] = 'EÅŸitleme'; +$wb['Import'] = 'İçe Aktar'; +$wb['ISPConfig 3 mail'] = 'ISPConfig 3 E-postaları'; $wb['PDNS Tupa'] = 'PowerDNS Tupa Yöneticisi'; ?> diff --git a/interface/web/tools/lib/lang/tr_import_ispconfig.lng b/interface/web/tools/lib/lang/tr_import_ispconfig.lng index 7aec6bd470..67c98edbe7 100644 --- a/interface/web/tools/lib/lang/tr_import_ispconfig.lng +++ b/interface/web/tools/lib/lang/tr_import_ispconfig.lng @@ -1,23 +1,24 @@ <?php -$wb['head_txt'] = 'ISPConfig 3 E-posta Ayarları Alma'; -$wb['legend_txt'] = 'Uzak sunucu baÄŸlantı bilgileri'; -$wb['legend2_txt'] = 'E-posta alan adı alınsın'; -$wb['resync_sites_txt'] = 'Web siteleri eÅŸleÅŸtirilsin'; -$wb['resync_ftp_txt'] = 'FTP kullanıcıları eÅŸleÅŸtirilsin'; -$wb['resync_shell_txt'] = 'Kabuk kullanıcıları eÅŸleÅŸtirilsin'; -$wb['resync_cron_txt'] = 'Zamanlanmış görevler eÅŸleÅŸtirilsin'; -$wb['resync_db_txt'] = 'Müşteri veritabanı ayarları eÅŸleÅŸtirilsin'; -$wb['resync_mailbox_txt'] = 'Posta kutuları eÅŸleÅŸtirilsin'; -$wb['resync_dns_txt'] = 'DNS kayıtları eÅŸleÅŸtirilsin'; -$wb['btn_start_txt'] = 'Almayı BaÅŸlat'; +$wb['head_txt'] = 'ISPConfig 3 E-posta Ayarlarını İçe Aktarma'; +$wb['legend_txt'] = 'Uzak Sunucu BaÄŸlantı Bilgileri'; +$wb['legend2_txt'] = 'E-posta etki alanı içe aktarılsın'; +$wb['resync_sites_txt'] = 'Web Siteleri EÅŸitlensin'; +$wb['resync_ftp_txt'] = 'FTP Kullanıcıları EÅŸitlensin'; +$wb['resync_shell_txt'] = 'Kabuk Kullanıcıları EÅŸitlensin'; +$wb['resync_cron_txt'] = 'Zamanlanmış Görevler EÅŸitlensin'; +$wb['resync_db_txt'] = 'Müşteri Veritabanı Ayarları EÅŸitlensin'; +$wb['resync_mailbox_txt'] = 'E-posta Kutuları EÅŸitlensin'; +$wb['resync_dns_txt'] = 'DNS Kayıtları EÅŸitlensin'; +$wb['btn_start_txt'] = 'İçe Aktarmayı BaÅŸlat'; $wb['btn_connect_txt'] = 'Uzak Sunucuya BaÄŸlan'; $wb['btn_cancel_txt'] = 'Geri'; $wb['client_group_id_txt'] = 'Yerel Müşteri'; -$wb['mail_domain_txt'] = 'Uzak e-posta alan adı'; -$wb['import_mailbox_txt'] = 'Posta kutusunu al'; -$wb['import_aliasdomain_txt'] = 'Takma alan adını al'; -$wb['import_alias_txt'] = 'Takma e-postayı al'; -$wb['import_forward_txt'] = 'Yönlendirmeyi al'; -$wb['import_user_filter_txt'] = 'Kullanıcı süzgecini al'; -$wb['import_spamfilter_txt'] = 'Önemsiz posta süzgecini al'; +$wb['mail_domain_txt'] = 'Uzak E-posta Etki Alanı'; +$wb['import_mailbox_txt'] = 'E-posta Kutusu İçe Aktarılsın'; +$wb['import_aliasdomain_txt'] = 'Takma Etki Alanı İçe Aktarılsın'; +$wb['import_alias_txt'] = 'Takma E-posta İçe Aktarılsın'; +$wb['import_forward_txt'] = 'Yönlendirme İçe Aktarılsın'; +$wb['import_user_filter_txt'] = 'Kullanıcı Süzgeci İçe Aktarılsın'; +$wb['import_spamfilter_txt'] = 'Önemsiz Ä°leti Süzgeci İçe Aktarılsın'; + ?> diff --git a/interface/web/tools/lib/lang/tr_import_vpopmail.lng b/interface/web/tools/lib/lang/tr_import_vpopmail.lng index 66fe56da1c..f0c05ea741 100644 --- a/interface/web/tools/lib/lang/tr_import_vpopmail.lng +++ b/interface/web/tools/lib/lang/tr_import_vpopmail.lng @@ -1,7 +1,8 @@ <?php -$wb['head_txt'] = 'Import email configuration from Vpopmail'; -$wb['legend_txt'] = 'Remote database server connection details'; -$wb['btn_start_txt'] = 'Start Import'; -$wb['btn_connect_txt'] = 'Connect to remote server'; -$wb['btn_cancel_txt'] = 'Cancel'; +$wb['head_txt'] = 'Vpopmail e-posta yapılandırmasını içe aktar'; +$wb['legend_txt'] = 'Uzak veritabanı sunucusu baÄŸlantı bilgileri'; +$wb['btn_start_txt'] = 'İçe Aktarmayı BaÅŸlat'; +$wb['btn_connect_txt'] = 'Uzak Sunucuya BaÄŸlan'; +$wb['btn_cancel_txt'] = 'Ä°ptal'; + ?> diff --git a/interface/web/tools/lib/lang/tr_index.lng b/interface/web/tools/lib/lang/tr_index.lng index d8ea10cf55..6d9a6c361c 100644 --- a/interface/web/tools/lib/lang/tr_index.lng +++ b/interface/web/tools/lib/lang/tr_index.lng @@ -1,4 +1,4 @@ <?php $wb['page_head_txt'] = 'ISPConfig Araçları'; -$wb['page_desc_txt'] = 'Kullanıcı ayarlarını deÄŸiÅŸtirme'; +$wb['page_desc_txt'] = 'Kullanıcı Ayarlarını DeÄŸiÅŸtirme'; ?> diff --git a/interface/web/tools/lib/lang/tr_interface.lng b/interface/web/tools/lib/lang/tr_interface.lng index 2ff88a976e..2384c71107 100644 --- a/interface/web/tools/lib/lang/tr_interface.lng +++ b/interface/web/tools/lib/lang/tr_interface.lng @@ -1,6 +1,6 @@ <?php $wb['interface_head_txt'] = 'Arayüz Ayarları'; -$wb['interface_desc_txt'] = 'Arayüzü düzenleyin'; +$wb['interface_desc_txt'] = 'Arayüzü Düzenle'; $wb['language_txt'] = 'Dil'; $wb['startmodule_txt'] = 'BaÅŸlangıç modülü'; $wb['app_theme_txt'] = 'Tasarım'; diff --git a/interface/web/tools/lib/lang/tr_resync.lng b/interface/web/tools/lib/lang/tr_resync.lng index 71ebb0dda2..7cdfa91b9e 100644 --- a/interface/web/tools/lib/lang/tr_resync.lng +++ b/interface/web/tools/lib/lang/tr_resync.lng @@ -1,53 +1,53 @@ <?php -$wb['head_txt'] = 'EÅŸleÅŸtirme Aracı'; -$wb['legend_txt'] = 'EÅŸleÅŸtirme'; -$wb['resync_sites_txt'] = 'Web siteleri eÅŸleÅŸtirilsin'; -$wb['resync_ftp_txt'] = 'FTP kullanıcıları eÅŸleÅŸtirilsin'; -$wb['resync_shell_txt'] = 'Kabuk kullanıcıları eÅŸleÅŸtirilsin'; -$wb['resync_cron_txt'] = 'Zamanlanmış görevler eÅŸleÅŸtirilsin'; -$wb['resync_db_txt'] = 'Müşteri veritabanı ayarları eÅŸleÅŸtirilsin'; -$wb['resync_mailbox_txt'] = 'Posta kutuları eÅŸleÅŸtirilsin'; -$wb['resync_dns_txt'] = 'DNS kayıtları eÅŸleÅŸtirilsin'; -$wb['resync_client_txt'] = 'Müşteri kayıtları eÅŸleÅŸtirilsin'; -$wb['btn_start_txt'] = 'EÅŸleÅŸtir'; +$wb['head_txt'] = 'EÅŸitleme Aracı'; +$wb['legend_txt'] = 'EÅŸitleme'; +$wb['resync_all_txt'] = 'Tüm Hizmetler'; +$wb['resync_sites_txt'] = 'Web Siteleri EÅŸitlensin'; +$wb['resync_ftp_txt'] = 'FTP Kullanıcıları EÅŸitlensin'; +$wb['resync_webdav_txt'] = 'WebDAV Kullanıcıları'; +$wb['resync_shell_txt'] = 'Kabuk Kullanıcıları EÅŸitlensin'; +$wb['resync_cron_txt'] = 'Zamanlanmış Görevler EÅŸitlensin'; +$wb['resync_db_txt'] = 'Müşteri Veritabanı Ayarları EÅŸitlensin'; +$wb['resync_mailbox_txt'] = 'E-posta Kutuları EÅŸitlensin'; +$wb['resync_mail_txt'] = 'E-posta Etki Alanları'; +$wb['resync_mailfilter_txt'] = 'E-posta Süzgeci'; +$wb['resync_mailinglist_txt'] = 'E-posta Listesi'; +$wb['resync_dns_txt'] = 'DNS Kayıtları EÅŸitlensin'; +$wb['resync_vserver_txt'] = 'sSunucu'; +$wb['resync_client_txt'] = 'Müşteri Kayıtları EÅŸitlensin'; +$wb['all_active_txt'] = 'Tüm Etkin Sunucular'; +$wb['all_active_mail_txt'] = 'Tüm Etkin E-posta Sunucuları'; +$wb['all_active_web_txt'] = 'Tüm Etkin Web Sunucuları'; +$wb['all_active_dns_txt'] = 'Tüm Etkin DNS Sunucuları'; +$wb['all_active_file_txt'] = 'Tüm Etkin Dosya Sunucuları'; +$wb['all_active_db_txt'] = 'Tüm Etkin Veritabanı Sunucuları'; +$wb['all_active_vserver_txt'] = 'Tüm Etkin Sanal Sunucular'; +$wb['do_sites_txt'] = 'EÅŸitlenen Web Sitesi'; +$wb['do_ftp_txt'] = 'EÅŸitlenen FTP Kullanıcısı'; +$wb['do_webdav_txt'] = 'EÅŸitlenen WebDav Kullanıcısı'; +$wb['do_shell_txt'] = 'EÅŸitlenen Kabuk Kullanıcısı'; +$wb['do_cron_txt'] = 'EÅŸitlenen Zamanlanmış Görev'; +$wb['do_db_user_txt'] = 'EÅŸitlenen Veritabanı Kullanıcısı'; +$wb['do_db_txt'] = 'EÅŸitlenen Veritabanı'; +$wb['do_mail_txt'] = 'EÅŸitlenen E-posta Etki Alanı'; +$wb['do_mailbox_txt'] = 'EÅŸitlenen E-posta Kutusu'; +$wb['do_mail_alias_txt'] = 'EÅŸitlenen Takma Ad'; +$wb['do_mail_access_txt'] = 'EÅŸitlenen E-posta EriÅŸimi'; +$wb['do_mail_contentfilter_txt'] = 'EÅŸitlenen İçerik Süzgeci'; +$wb['do_mail_userfilter_txt'] = 'EÅŸitlenen E-posta Kullanıcı Süzgeci'; +$wb['do_mailinglist_txt'] = 'EÅŸitlenen E-posta Listesi'; +$wb['do_dns_txt'] = 'EÅŸitlenen DNS Bölgesi'; +$wb['do_vserver_txt'] = 'EÅŸitlenen Sanal Sunucu'; +$wb['do_clients_txt'] = 'EÅŸitlenen Müşteri ve Bayiler'; +$wb['no_results_txt'] = 'Herhangi bir ÅŸey bulunamadı'; +$wb['btn_start_txt'] = 'EÅŸitle'; $wb['btn_cancel_txt'] = 'Geri'; -$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'; -$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'; -$wb['all_active_dns_txt'] = 'All active DNS-Server'; -$wb['all_active_file_txt'] = 'All active File-Server'; -$wb['all_active_db_txt'] = 'All active Database-Server'; -$wb['all_active_vserver_txt'] = 'All active vServer'; -$wb['do_sites_txt'] = 'Resynced Website'; -$wb['do_ftp_txt'] = 'Resynced FTP user'; -$wb['do_webdav_txt'] = 'Resynced WebDav user'; -$wb['do_shell_txt'] = 'Resynced Shell user'; -$wb['do_cron_txt'] = 'Resynced Cronjob'; -$wb['do_db_user_txt'] = 'Resynced Database User'; -$wb['do_db_txt'] = 'Resynced Database'; -$wb['do_mail_txt'] = 'Resynced Maildomain'; -$wb['do_mailbox_txt'] = 'Resynced Mailbox'; -$wb['do_mail_alias_txt'] = 'Resynced Alias'; -$wb['do_mail_access_txt'] = 'Resynced Mail access'; -$wb['do_mail_contentfilter_txt'] = 'Resynced Content Filter'; -$wb['do_mail_userfilter_txt'] = 'Resynced Mail User Filter'; -$wb['do_mailinglist_txt'] = 'Resynced Mailinglist'; -$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['do_mail_spamfilter_policy_txt'] = 'Resynced Spamfilter Policies'; -$wb['do_mail_spamfilter_txt'] = 'Resynced Spamfilter'; -$wb['do_mailget_txt'] = 'Resynced Fetchmail'; +$wb['do_mail_spamfilter_policy_txt'] = 'EÅŸitlenen Önemsiz Ä°leti Süzgeci Ä°lkeleri'; +$wb['do_mail_spamfilter_txt'] = 'EÅŸitlenen Önemsiz Ä°leti Süzgeci'; +$wb['do_mailget_txt'] = 'EÅŸitlenen Fetchmail'; $wb['resync_mailget_txt'] = 'Fetchmail'; -$wb['resync_mailtransport_txt'] = 'E-Mail Transport'; -$wb['resync_mailrelay_txt'] = 'E-Mail Relay'; -$wb['do_mailtransport_txt'] = 'Resynced Mailtransport'; -$wb['do_mailrelay_txt'] = 'Resynced Mailrelay'; +$wb['resync_mailtransport_txt'] = 'E-posta Gönderici'; +$wb['resync_mailrelay_txt'] = 'E-posta Aktarıcı'; +$wb['do_mailtransport_txt'] = 'E-posta Gönderici EÅŸitlendi'; +$wb['do_mailrelay_txt'] = 'E-posta Aktarıcı EÅŸitlendi'; ?> diff --git a/interface/web/tools/lib/lang/tr_usersettings.lng b/interface/web/tools/lib/lang/tr_usersettings.lng index 60c7679b9f..fa2eff63d7 100644 --- a/interface/web/tools/lib/lang/tr_usersettings.lng +++ b/interface/web/tools/lib/lang/tr_usersettings.lng @@ -1,12 +1,12 @@ <?php -$wb['password_strength_txt'] = 'Parola Güçlüğü'; +$wb['password_txt'] = 'Parola'; +$wb['password_strength_txt'] = 'Parola ZorluÄŸu'; $wb['language_txt'] = 'Dil'; $wb['password_mismatch'] = 'Parola ile onayı aynı deÄŸil.'; $wb['Form to edit the user password and language.'] = 'Parola ve dil ayarlarını deÄŸiÅŸtirme formu.'; $wb['Settings'] = 'Ayarlar'; -$wb['generate_password_txt'] = 'Parola OluÅŸtur'; +$wb['generate_password_txt'] = 'Parola Ãœret'; $wb['repeat_password_txt'] = 'Parola Onayı'; $wb['password_mismatch_txt'] = 'Parola ile onayı aynı deÄŸil.'; $wb['password_match_txt'] = 'Parola ile onayı aynı.'; -$wb['password_txt'] = 'Password'; ?> diff --git a/interface/web/vm/lib/lang/br.lng b/interface/web/vm/lib/lang/br.lng index 513a018bf5..ae59107a78 100644 --- a/interface/web/vm/lib/lang/br.lng +++ b/interface/web/vm/lib/lang/br.lng @@ -1,7 +1,7 @@ <?php -$wb['Virtual Servers'] = 'Servidores virtuais'; -$wb['OS Templates'] = 'Gabaritos do SO'; -$wb['VM Templates'] = 'Gabaritos de máquina virtual'; +$wb['Virtual Servers'] = 'Máquinas virtuais'; +$wb['OS Templates'] = 'Gabaritos de SO'; +$wb['VM Templates'] = 'Gabaritos de VM'; $wb['IP addresses'] = 'Endereço IP'; $wb['OpenVZ'] = 'OpenVZ'; ?> diff --git a/interface/web/vm/lib/lang/br_openvz_action.lng b/interface/web/vm/lib/lang/br_openvz_action.lng index a301f51d0e..cc191c14e9 100644 --- a/interface/web/vm/lib/lang/br_openvz_action.lng +++ b/interface/web/vm/lib/lang/br_openvz_action.lng @@ -1,16 +1,16 @@ <?php -$wb['head_txt'] = 'Ações do servidor virtual para máquinas virtuais:'; +$wb['head_txt'] = 'Ações do virtualizador:'; $wb['start_txt'] = 'Iniciar máquina virtual'; $wb['stop_txt'] = 'Parar máquina virtual'; $wb['restart_txt'] = 'Reiniciar máquina virtual'; -$wb['ostemplate_txt'] = 'Adicionar gabarito de SO'; -$wb['ostemplate_desc_txt'] = '(exemplo: debian-6.0-i386-custom)'; +$wb['ostemplate_txt'] = 'Adicionar gabarito de sistema operacional'; +$wb['ostemplate_desc_txt'] = '(exemplo: debian-9.0-amd64-custom)'; $wb['btn_save_txt'] = 'Executar ação selecionada'; $wb['btn_cancel_txt'] = 'Cancelar'; -$wb['start_exec_txt'] = 'O comando -iniciar- foi enviado ao servidor servidor de máquinas virtuais. Espere alguns minutos até que a máquina virtual seja iniciada.'; -$wb['stop_exec_txt'] = 'O comando -parar- foi enviado ao servidor servidor de máquinas virtuais. Espere alguns minutos até que a máquina virtual pare.'; -$wb['restart_exec_txt'] = 'O comando -reiniciar- foi enviado ao servidor servidor de máquinas virtuais. Espere alguns minutos até que a máquina virtual seja reiniciada.'; -$wb['ostemplate_name_error'] = 'O gabarito de SO contém caracteres não permitidos.'; -$wb['ostemplate_name_unique_error'] = 'Já existe um gabarito de SO com este nome.'; -$wb['ostemplate_exec_txt'] = 'O comando -criar máquina virtual- foi enviado ao servidor servidor de máquinas virtuais. Espere alguns minutos até que a máquina virtual seja criada.'; +$wb['start_exec_txt'] = 'O comando "Iniciar" foi enviado para o virtualizador. Aguarde alguns instantes para a máquina virtual carregar.'; +$wb['stop_exec_txt'] = 'O comando "Parar" foi enviado para o virtualizador. Aguarde alguns instantes para a máquina virtual parar.'; +$wb['restart_exec_txt'] = 'O comando "Reiniciar" foi enviando para o virtualizador. Aguarde alguns instantes para a máquina virtual reiniciar.'; +$wb['ostemplate_name_error'] = 'O gabarito de sistema operacional contém caracteres não permitidos.'; +$wb['ostemplate_name_unique_error'] = 'Já existe um gabarito de sistema operacional com o mesmo nome.'; +$wb['ostemplate_exec_txt'] = 'O comando "Adicionar gabarito de SO" foi enviado para o virtualizador. Aguarde alguns instantes para o gabarito ser adicionado.'; ?> diff --git a/interface/web/vm/lib/lang/br_openvz_ip.lng b/interface/web/vm/lib/lang/br_openvz_ip.lng index 61fbd6ed68..612c391c94 100644 --- a/interface/web/vm/lib/lang/br_openvz_ip.lng +++ b/interface/web/vm/lib/lang/br_openvz_ip.lng @@ -1,8 +1,8 @@ <?php -$wb['server_id_txt'] = 'Servidor servidor'; +$wb['server_id_txt'] = 'Virtualizador'; $wb['ip_address_txt'] = 'Endereço IP'; -$wb['vm_id_txt'] = 'Servidor virtual'; -$wb['reserved_txt'] = 'Reservedo'; +$wb['vm_id_txt'] = 'Máquina virtual'; +$wb['reserved_txt'] = 'Reservado'; $wb['ip_error_wrong'] = 'Por favor, insira um endereço IPv4 válido.'; $wb['ip_error_unique'] = 'O endereço IP já existe.'; $wb['IP address'] = 'Endereço IP'; diff --git a/interface/web/vm/lib/lang/br_openvz_ip_list.lng b/interface/web/vm/lib/lang/br_openvz_ip_list.lng index 99ddfbc7d8..f9a9f33622 100644 --- a/interface/web/vm/lib/lang/br_openvz_ip_list.lng +++ b/interface/web/vm/lib/lang/br_openvz_ip_list.lng @@ -1,7 +1,7 @@ <?php $wb['list_head_txt'] = 'Endereço IP do OpenVZ'; $wb['server_id_txt'] = 'Servidor'; +$wb['vm_id_txt'] = 'VM'; $wb['ip_address_txt'] = 'Endereço IP'; $wb['reserved_txt'] = 'Reservado'; -$wb['vm_id_txt'] = 'VPS'; ?> diff --git a/interface/web/vm/lib/lang/br_openvz_ostemplate.lng b/interface/web/vm/lib/lang/br_openvz_ostemplate.lng index edce912056..ea76c915b7 100644 --- a/interface/web/vm/lib/lang/br_openvz_ostemplate.lng +++ b/interface/web/vm/lib/lang/br_openvz_ostemplate.lng @@ -1,11 +1,11 @@ <?php $wb['template_name_txt'] = 'Nome do gabarito'; -$wb['template_file_txt'] = 'Arquivo do gabarito'; -$wb['server_id_txt'] = 'Servidor'; +$wb['template_file_txt'] = 'Nome do arquivo'; +$wb['server_id_txt'] = 'Virtualizador'; $wb['allservers_txt'] = 'DisponÃvel em todos os servidores'; $wb['active_txt'] = 'Ativo'; $wb['description_txt'] = 'Descrição'; $wb['template_name_error_empty'] = 'Nome do gabarito está em branco.'; -$wb['template_file_error_empty'] = 'Nome o arquivo do gabarito está em branco.'; +$wb['template_file_error_empty'] = 'Nome do arquivo está em branco.'; $wb['Template'] = 'Gabarito'; ?> diff --git a/interface/web/vm/lib/lang/br_openvz_ostemplate_list.lng b/interface/web/vm/lib/lang/br_openvz_ostemplate_list.lng index 04e94a889d..9e60baf179 100644 --- a/interface/web/vm/lib/lang/br_openvz_ostemplate_list.lng +++ b/interface/web/vm/lib/lang/br_openvz_ostemplate_list.lng @@ -1,8 +1,8 @@ <?php -$wb['list_head_txt'] = 'Gabarito do SO openVZ'; +$wb['list_head_txt'] = 'Gabarito de sistema operacional'; $wb['active_txt'] = 'Ativo'; -$wb['template_name_txt'] = 'Nome'; -$wb['server_id_txt'] = 'Servidor'; +$wb['template_name_txt'] = 'Nome do gabarito'; +$wb['server_id_txt'] = 'Virtualizador'; $wb['allservers_txt'] = 'DisponÃvel em todos os servidores'; $wb['ostemplate_id_txt'] = 'ID'; ?> diff --git a/interface/web/vm/lib/lang/br_openvz_template.lng b/interface/web/vm/lib/lang/br_openvz_template.lng index 4190a31f9c..23d4c9b6af 100644 --- a/interface/web/vm/lib/lang/br_openvz_template.lng +++ b/interface/web/vm/lib/lang/br_openvz_template.lng @@ -1,97 +1,97 @@ <?php -$wb['numproc_txt'] = 'Nº de Processadores'; -$wb['numtcpsock_txt'] = 'Nº de soquetes TCP'; -$wb['numothersock_txt'] = 'Nº de outros soquetes'; -$wb['vmguarpages_txt'] = 'Páginas de guarda'; -$wb['kmemsize_txt'] = 'Kmemsize'; -$wb['tcpsndbuf_txt'] = 'Tcpsndbuf'; -$wb['tcprcvbuf_txt'] = 'Tcprcvbuf'; -$wb['othersockbuf_txt'] = 'Othersockbuf'; -$wb['dgramrcvbuf_txt'] = 'Dgramrcvbuf'; -$wb['oomguarpages_txt'] = 'Oomguarpages'; -$wb['privvmpages_txt'] = 'Privvmpages'; -$wb['lockedpages_txt'] = 'Lockedpages'; -$wb['shmpages_txt'] = 'Shmpages'; -$wb['physpages_txt'] = 'Physpages'; -$wb['numfile_txt'] = 'Numfile'; -$wb['avnumproc_txt'] = 'Avnumproc'; -$wb['numflock_txt'] = 'Numflock'; -$wb['numpty_txt'] = 'Numpty'; -$wb['numsiginfo_txt'] = 'Numsiginfo'; -$wb['dcachesize_txt'] = 'Dcachesize'; -$wb['numiptent_txt'] = 'Numiptent'; -$wb['swappages_txt'] = 'Swappages'; -$wb['hostname_txt'] = 'Nome do servidor'; -$wb['nameserver_txt'] = 'Servidor(es) de nome'; -$wb['nameserver_desc_txt'] = '(separado por espaços em branco)'; +$wb['numproc_txt'] = 'Número de Processadores'; +$wb['numtcpsock_txt'] = 'Número de sockets tcp'; +$wb['numothersock_txt'] = '(numothersock)'; +$wb['vmguarpages_txt'] = 'Páginas de guarda da vm (vmguardpages)'; +$wb['kmemsize_txt'] = 'Tamanho da memória (Kmemsize)'; +$wb['tcpsndbuf_txt'] = 'Buffers tcp de envio (tcpsndbuf)'; +$wb['tcprcvbuf_txt'] = 'Buffers tcp de recepção (tcprcvbuf)'; +$wb['othersockbuf_txt'] = 'Outros buffers (othersockbuf)'; +$wb['dgramrcvbuf_txt'] = 'Buffers datagrama de envio (dgramrcvbuf)'; +$wb['oomguarpages_txt'] = '(oomguarpages)'; +$wb['privvmpages_txt'] = 'Tamanho da memória alocada para aplicações, em páginas (privvmpages)'; +$wb['lockedpages_txt'] = 'Páginas bloqueadas (lockedpages)'; +$wb['shmpages_txt'] = '(Shmpages)'; +$wb['physpages_txt'] = '(Physpages)'; +$wb['numfile_txt'] = 'Número de arquivos'; +$wb['avnumproc_txt'] = 'Média de processadores'; +$wb['numflock_txt'] = 'Número de arquivos bloqueados (numflock)'; +$wb['numpty_txt'] = 'Número de PTY (numpty)'; +$wb['numsiginfo_txt'] = 'Número de siginfo (informações de geração de sinal)'; +$wb['dcachesize_txt'] = 'Tamanho do cache (dcachesize)'; +$wb['numiptent_txt'] = 'Número de endereços IP (numiptent)'; +$wb['swappages_txt'] = 'Páginas de troca (swappages)'; +$wb['hostname_txt'] = 'Nome do host'; +$wb['nameserver_txt'] = 'Servidor(es) dns'; +$wb['nameserver_desc_txt'] = '(separado por espaço)'; $wb['capability_txt'] = 'Capacidade'; $wb['template_name_txt'] = 'Nome do gabarito'; -$wb['diskspace_txt'] = 'Espaço em disco'; +$wb['diskspace_txt'] = 'Espaço do disco'; $wb['ram_txt'] = 'RAM (garantida)'; $wb['ram_burst_txt'] = 'RAM (rajada)'; -$wb['cpu_units_txt'] = 'Unidades de CPU'; -$wb['cpu_num_txt'] = 'Cores de CPU'; -$wb['cpu_limit_txt'] = 'Limite de CPU %'; +$wb['cpu_units_txt'] = 'Número de cores da CPU'; +$wb['cpu_num_txt'] = 'Número de CPUs'; +$wb['cpu_limit_txt'] = 'Limite da CPU %'; $wb['io_priority_txt'] = 'Prioridade de E/S'; $wb['active_txt'] = 'Ativo'; $wb['description_txt'] = 'Descrição'; -$wb['numproc_desc_txt'] = 'Número de processos e tarefas.'; -$wb['numtcpsock_desc_txt'] = 'Número de soquetes TCP.'; -$wb['numothersock_desc_txt'] = 'Número de soquetes não TCP.'; -$wb['vmguarpages_desc_txt'] = 'Alocação de memória garantida, em páginas.'; -$wb['kmemsize_desc_txt'] = 'Tamanho da memória sem swap no kernel, alocada para processos neste contêiner.'; -$wb['tcpsndbuf_desc_txt'] = 'Tamanho total de buffers TCP enviados.'; -$wb['tcprcvbuf_desc_txt'] = 'Tamanho total de buffers TCP recebidos.'; -$wb['othersockbuf_desc_txt'] = 'Tamanho total de soquetes de UNIX-domain UDP e outros protocolos de datagrama que enviam buffers..'; -$wb['dgramrcvbuf_desc_txt'] = 'Receber buffers de UDP e outros protocolos de datagrama.'; -$wb['oomguarpages_desc_txt'] = 'A garantia de memória para o caso de rajadas é superior à reserva (out-of-memory), em páginas.'; +$wb['numproc_desc_txt'] = 'Número de processos e threads.'; +$wb['numtcpsock_desc_txt'] = 'Número de sockets tcp.'; +$wb['numothersock_desc_txt'] = 'Número de outros sockets.'; +$wb['vmguarpages_desc_txt'] = 'Garantia de alocação de memória, em páginas.'; +$wb['kmemsize_desc_txt'] = 'Tamanho da memória do kernel não cambiável, alocada para processos neste contêiner.'; +$wb['tcpsndbuf_desc_txt'] = 'Tamanho de buffers de envio tcp.'; +$wb['tcprcvbuf_desc_txt'] = 'Tamanho de buffers de recepção tcp.'; +$wb['othersockbuf_desc_txt'] = 'Tamanho de buffers de socket de domÃnio unix, udp e outros buffers de envio de protocolos de datagrama.'; +$wb['dgramrcvbuf_desc_txt'] = 'Tamanho de buffers de recepção udp e outros protocolos de datagrama.'; +$wb['oomguarpages_desc_txt'] = 'Quantidade garantida de memória para o caso da memória estar "com excesso de reserva" (garantia de eliminação de falta de memória), em páginas.'; $wb['privvmpages_desc_txt'] = 'Limite de alocação de memória, em páginas.'; -$wb['lockedpages_desc_txt'] = 'Páginas de processo não tem permissão para troca (páginas bloqueadas por mlock(2)).'; -$wb['shmpages_desc_txt'] = 'Tamanho total da memória compartilhada (IPC, mapeamentos anônimos compartilhados e objetos tmpfs), em páginas.'; -$wb['physpages_desc_txt'] = 'Número total de páginas de RAM, usada pelos processos.'; +$wb['lockedpages_desc_txt'] = 'Páginas de processos que não podem ser trocadas (páginas bloqueadas por mlock(2)).'; +$wb['shmpages_desc_txt'] = 'Tamanho da memória compartilhada (ISPC, mapeamentos anônimos compartilhados e objetos tmpfs), em páginas.'; +$wb['physpages_desc_txt'] = 'Número total de páginas RAM usadas pelos processos'; $wb['numfile_desc_txt'] = 'Número de arquivos abertos.'; $wb['numflock_desc_txt'] = 'Número de arquivos bloqueados.'; -$wb['numpty_desc_txt'] = 'Número de pseudo terminais.'; -$wb['numsiginfo_desc_txt'] = 'Número de estruturas de siginfo.'; -$wb['dcachesize_desc_txt'] = 'Tamanho total de dentry e estruturas inode bloqueados na memória.'; -$wb['numiptent_desc_txt'] = 'Número de entradas no firewall (Filtros de pacotes IP).'; -$wb['swappages_desc_txt'] = 'Quantidade de área de troca a ser exibida no container.'; -$wb['create_dns_txt'] = 'Adicionar dns para servidor'; -$wb['template_name_error_empty'] = 'Nome do gabarito está em branco.'; -$wb['diskspace_error_empty'] = 'Espaço do disco está em branco.'; +$wb['numpty_desc_txt'] = 'Número de pseudo-terminais (tty).'; +$wb['numsiginfo_desc_txt'] = 'Número de estruturas siginfo.'; +$wb['dcachesize_desc_txt'] = 'Tamanho de estruturas dentry e inode bloqueadas na memória.'; +$wb['numiptent_desc_txt'] = 'Número total de entradas NETFILTER (filtragem de pacotes IP).'; +$wb['swappages_desc_txt'] = 'Quantidade de espaço de troca a ser exibido no contêiner.'; +$wb['create_dns_txt'] = 'Adicionar dns para o nome do host'; +$wb['template_name_error_empty'] = 'O nome do gabarito está em branco.'; +$wb['diskspace_error_empty'] = 'O tamanho do disco está em branco.'; $wb['ram_error_empty'] = 'RAM (garantida) está em branco.'; $wb['ram_burst_error_empty'] = 'RAM (rajada) está em branco.'; -$wb['cpu_units_error_empty'] = 'Unidades de CPU está em branco.'; -$wb['cpu_num_error_empty'] = 'Cores de CPU está em branco.'; -$wb['cpu_limit_error_empty'] = 'CPU limit % está em branco.'; +$wb['cpu_units_error_empty'] = 'Número de cores da CPU está em branco.'; +$wb['cpu_num_error_empty'] = 'Número de CPU está em branco.'; +$wb['cpu_limit_error_empty'] = 'Limite da CPU está em branco.'; $wb['io_priority_error_empty'] = 'Prioridade de E/S está em branco.'; -$wb['template_nameserver_error_empty'] = 'Servidor(es) de nome está em branco.'; -$wb['numproc_error_empty'] = 'N° de processadores está em branco.'; -$wb['numtcpsock_error_empty'] = 'N° de soquetes TCP está em branco.'; -$wb['numothersock_error_empty'] = 'N° de outros soquetes está em branco.'; -$wb['vmguarpages_error_empty'] = 'Páginas de guarda está em branco.'; +$wb['template_nameserver_error_empty'] = 'Servidor(es) dns está em branco.'; +$wb['numproc_error_empty'] = 'Número de processadores está em branco.'; +$wb['numtcpsock_error_empty'] = 'Número de sockets tcp está em branco.'; +$wb['numothersock_error_empty'] = 'Número de outros sockets está em branco.'; +$wb['vmguarpages_error_empty'] = 'Página de guarda da vm está em branco.'; $wb['kmemsize_error_empty'] = 'Kmemsize está em branco.'; -$wb['tcpsndbuf_error_empty'] = 'Tcpsndbuf está em branco.'; -$wb['tcprcvbuf_error_empty'] = 'Tcprcvbuf está em branco.'; -$wb['othersockbuf_error_empty'] = 'Othersockbuf está em branco.'; -$wb['dgramrcvbuf_error_empty'] = 'Dgramrcvbuf está em branco.'; +$wb['tcpsndbuf_error_empty'] = 'Tamanho de buffers de envio tcp está em branco.'; +$wb['tcprcvbuf_error_empty'] = 'Tamanho de buffers de recepção está em branco.'; +$wb['othersockbuf_error_empty'] = 'Tamanho de outros buffers de socket está em branco.'; +$wb['dgramrcvbuf_error_empty'] = 'Tamanho de buffers de recepção udp e outros protocolos de datagrama está em branco.'; $wb['oomguarpages_error_empty'] = 'Oomguarpages está em branco.'; -$wb['privvmpages_error_empty'] = 'Privvmpages está em branco.'; +$wb['privvmpages_error_empty'] = 'Tamanho da memória alocada para aplicações, em páginas, está em branco.'; $wb['lockedpages_error_empty'] = 'Lockedpages está em branco.'; $wb['shmpages_error_empty'] = 'Shmpages está em branco.'; $wb['physpages_error_empty'] = 'Physpages está em branco.'; -$wb['numfile_error_empty'] = 'Numfile está em branco.'; -$wb['avnumproc_error_empty'] = 'Avnumproc está em branco.'; -$wb['numflock_error_empty'] = 'Numflock está em branco.'; -$wb['numpty_error_empty'] = 'Numpty está em branco.'; -$wb['numsiginfo_error_empty'] = 'Numsiginfo está em branco.'; -$wb['dcachesize_error_empty'] = 'Dcachesize está em branco.'; -$wb['numiptent_error_empty'] = 'Numiptent está em branco.'; -$wb['swappages_error_empty'] = 'Swappages está em branco.'; +$wb['numfile_error_empty'] = 'Número de arquivos está em branco.'; +$wb['avnumproc_error_empty'] = 'Média de processadores está em branco.'; +$wb['numflock_error_empty'] = 'Número de arquivos bloqueados está em branco.'; +$wb['numpty_error_empty'] = 'Número de pseudo-terminais está em branco.'; +$wb['numsiginfo_error_empty'] = 'Número de informações siginfo está em branco.'; +$wb['dcachesize_error_empty'] = 'Tamanho do cache está em branco.'; +$wb['numiptent_error_empty'] = 'Número de entradas NETFILTER está em branco.'; +$wb['swappages_error_empty'] = 'Páginas de troca está em branco.'; $wb['Template'] = 'Gabarito'; $wb['Advanced'] = 'Avançado'; $wb['features_txt'] = 'Recursos'; -$wb['iptables_txt'] = 'Firewall'; +$wb['iptables_txt'] = 'Firewall (iptables)'; $wb['custom_txt'] = 'Configurações personalizadas'; -$wb['custom_error'] = 'Não permitido em configurações personalizadas: '; +$wb['custom_error'] = 'Não permitido nas configurações personalizadas: '; ?> diff --git a/interface/web/vm/lib/lang/br_openvz_template_list.lng b/interface/web/vm/lib/lang/br_openvz_template_list.lng index 390869859a..00d1b648d8 100644 --- a/interface/web/vm/lib/lang/br_openvz_template_list.lng +++ b/interface/web/vm/lib/lang/br_openvz_template_list.lng @@ -1,5 +1,5 @@ <?php -$wb['list_head_txt'] = 'Gabarito de máquina virtual OpenVZ'; +$wb['list_head_txt'] = 'Gabarito de máquina virtual'; $wb['active_txt'] = 'Ativo'; -$wb['template_name_txt'] = 'Nome do Gabarito'; +$wb['template_name_txt'] = 'Nome do gabarito'; ?> diff --git a/interface/web/vm/lib/lang/br_openvz_vm.lng b/interface/web/vm/lib/lang/br_openvz_vm.lng index 04794daf86..a8176e7688 100644 --- a/interface/web/vm/lib/lang/br_openvz_vm.lng +++ b/interface/web/vm/lib/lang/br_openvz_vm.lng @@ -1,45 +1,46 @@ <?php -$wb['diskspace_txt'] = 'Espaço em disco'; +$wb['diskspace_txt'] = 'Espaço no disco'; $wb['ram_txt'] = 'RAM (garantida)'; $wb['ram_burst_txt'] = 'RAM (rajada)'; -$wb['cpu_units_txt'] = 'Unidades de CPU(s)'; -$wb['cpu_num_txt'] = 'Quantidade de CPU(s)'; -$wb['cpu_limit_txt'] = 'Limite de CPU(s)'; -$wb['io_priority_txt'] = 'Prioridade de E/S'; -$wb['nameserver_txt'] = 'Servidor(es) de nome'; -$wb['nameserver_desc_txt'] = '(separado por espaços em branco)'; +$wb['cpu_units_txt'] = 'Número de cores da CPU'; +$wb['cpu_num_txt'] = 'Número de CPU'; +$wb['cpu_limit_txt'] = 'Limite de CPU (%)'; +$wb['io_priority_txt'] = 'prioridade de E/S'; +$wb['nameserver_txt'] = 'Servidor(es) dns'; +$wb['nameserver_desc_txt'] = '(separados por espaço)'; $wb['capability_txt'] = 'Capacidade'; -$wb['server_id_txt'] = 'Servidor servidor'; -$wb['ostemplate_id_txt'] = 'Gabarito do SO'; +$wb['server_id_txt'] = 'Virtualizador'; +$wb['ostemplate_id_txt'] = 'Gabarito de sistema operacional'; $wb['template_id_txt'] = 'Gabarito'; $wb['ip_address_txt'] = 'Endereço IP'; -$wb['hostname_txt'] = 'Servidor'; +$wb['hostname_txt'] = 'Nome do host'; $wb['vm_password_txt'] = 'Senha da máquina virtual'; $wb['start_boot_txt'] = 'Iniciar no boot'; $wb['active_txt'] = 'Ativo'; $wb['description_txt'] = 'Descrição'; $wb['client_group_id_txt'] = 'Cliente'; $wb['veid_txt'] = 'VEID'; -$wb['create_dns_txt'] = 'Adicionar DNS para servidor'; +$wb['create_dns_txt'] = 'Adicionar dns para a máquina virtual'; $wb['active_until_date_txt'] = 'Ativo até a data'; $wb['ip_address_error_empty'] = 'Endereço IP está em branco.'; -$wb['hostname_error_empty'] = 'Nome do servidor está em branco.'; +$wb['hostname_error_empty'] = 'Nome do host está em branco.'; $wb['vm_password_error_empty'] = 'Senha da máquina virtual está em branco.'; $wb['veid_error_empty'] = 'VEID está em branco.'; -$wb['veid_error_unique'] = 'VEID não existe.'; -$wb['diskspace_error_empty'] = 'Espaço em disco está em branco.'; +$wb['veid_error_unique'] = 'VEID já existe.'; +$wb['diskspace_error_empty'] = 'Espaço do disco está em branco.'; $wb['ram_error_empty'] = 'RAM (garantida) está em branco.'; $wb['ram_burst_error_empty'] = 'RAM (rajada) está em branco.'; -$wb['cpu_units_error_empty'] = 'Unidade de CPU(s) está em branco.'; -$wb['cpu_num_error_empty'] = 'Quantidade de CPU(s) está em branco.'; -$wb['cpu_limit_error_empty'] = 'Limite de CPU(s) está em branco.'; +$wb['cpu_units_error_empty'] = 'Número de cores da CPU está em branco.'; +$wb['cpu_num_error_empty'] = 'Número de CPU está em branco.'; +$wb['cpu_limit_error_empty'] = 'Limite de CPU está em branco.'; $wb['io_priority_error_empty'] = 'Prioridade de E/S está em branco.'; -$wb['template_nameserver_error_empty'] = 'Servidor(es) de nome está em branco.'; -$wb['Virtual server'] = 'Servidor virtual'; +$wb['template_nameserver_error_empty'] = 'Servidor(es) dns está em branco.'; +$wb['Virtual server'] = 'Máquina Virtual'; $wb['Advanced'] = 'Avançado'; +$wb['Additional IP'] = 'Endereço IP adicional'; $wb['features_txt'] = 'Recursos'; $wb['iptables_txt'] = 'Firewall'; $wb['custom_txt'] = 'Configurações personalizadas'; -$wb['bootorder_txt'] = 'Prioridade do boot'; -$wb['bootorder_error_notpositive'] = 'Somente números positivos podem ser configurados na prioridade do boot.'; +$wb['bootorder_txt'] = 'Ordem da prioridade do boot'; +$wb['bootorder_error_notpositive'] = 'São permitidos apenas números inteiros, > 0, na ordem da prioridade do boot.'; ?> diff --git a/interface/web/vm/lib/lang/br_openvz_vm_list.lng b/interface/web/vm/lib/lang/br_openvz_vm_list.lng index 03d510f2f7..c907c710ea 100644 --- a/interface/web/vm/lib/lang/br_openvz_vm_list.lng +++ b/interface/web/vm/lib/lang/br_openvz_vm_list.lng @@ -1,10 +1,10 @@ <?php -$wb['list_head_txt'] = 'Servidor virtual'; +$wb['list_head_txt'] = 'Máquina virtual'; $wb['active_txt'] = 'Ativo'; -$wb['server_id_txt'] = 'ID do servidor'; +$wb['server_id_txt'] = 'Virtualizador'; $wb['ostemplate_id_txt'] = 'Gabarito do SO'; $wb['template_id_txt'] = 'Gabarito'; -$wb['hostname_txt'] = 'Servidor'; +$wb['hostname_txt'] = 'Nome do host'; $wb['ip_address_txt'] = 'Endereço IP'; $wb['veid_txt'] = 'VEID'; ?> diff --git a/interface/web/vm/lib/lang/tr.lng b/interface/web/vm/lib/lang/tr.lng index 82599dd038..23bca66851 100644 --- a/interface/web/vm/lib/lang/tr.lng +++ b/interface/web/vm/lib/lang/tr.lng @@ -1,7 +1,7 @@ <?php -$wb['Virtual Servers'] = 'Sanal Sunucular'; -$wb['OS Templates'] = 'OS Kalıpları'; -$wb['VM Templates'] = 'VM Kalıpları'; +$wb['Virtual Servers'] = 'sSunucular'; +$wb['OS Templates'] = 'Ä°ÅŸletim Sistemi Kalıpları'; +$wb['VM Templates'] = 'Sanal Makine Kalıpları'; $wb['IP addresses'] = 'IP Adresleri'; $wb['OpenVZ'] = 'OpenVZ'; ?> diff --git a/interface/web/vm/lib/lang/tr_openvz_action.lng b/interface/web/vm/lib/lang/tr_openvz_action.lng index 29759e0266..8e2a3652d2 100644 --- a/interface/web/vm/lib/lang/tr_openvz_action.lng +++ b/interface/web/vm/lib/lang/tr_openvz_action.lng @@ -1,16 +1,17 @@ <?php -$wb['head_txt'] = 'VM Sanal Sunucu Ä°ÅŸlemleri:'; +$wb['head_txt'] = 'Sanal Makine Sanal Sunucu Ä°ÅŸlemleri:'; $wb['start_txt'] = 'Sanal sunucuyu baÅŸlat'; $wb['stop_txt'] = 'Sanal sunucuyu durdur'; $wb['restart_txt'] = 'Sanal sunucuyu yeniden baÅŸlat'; -$wb['ostemplate_txt'] = 'OS Kalıbı OluÅŸtur'; +$wb['ostemplate_txt'] = 'Ä°ÅŸletim Sistemi Kalıbı Ekle'; $wb['ostemplate_desc_txt'] = '(örnek: debian-6.0-i386-custom)'; $wb['btn_save_txt'] = 'SeçilmiÅŸ iÅŸlemi yürüt'; $wb['btn_cancel_txt'] = 'Geri'; -$wb['start_exec_txt'] = 'VM sunucusuna baÅŸlatma komutu gönderildi. VM baÅŸlatılana kadar bir dakika geçebilir.'; -$wb['stop_exec_txt'] = 'VM sunucusuna durdurma komutu gönderildi. VM durdurulana kadar bir dakika geçebilir.'; -$wb['restart_exec_txt'] = 'VM sunucusuna yeniden baÅŸlatma komutu gönderildi. VM yeniden baÅŸlatılana kadar bir dakika geçebilir.'; -$wb['ostemplate_name_error'] = 'OS kalıbı adında izin verilmeyen karakterler var.'; +$wb['start_exec_txt'] = 'Sanal makine sunucusuna baÅŸlatma komutu gönderildi. Sanal makine baÅŸlatılana kadar bir dakika geçebilir.'; +$wb['stop_exec_txt'] = 'Sanal makine sunucusuna durdurma komutu gönderildi. Sanal makine durdurulana kadar bir dakika geçebilir.'; +$wb['restart_exec_txt'] = 'Sanal makine sunucusuna yeniden baÅŸlatma komutu gönderildi. Sanal makine yeniden baÅŸlatılana kadar bir dakika geçebilir.'; +$wb['ostemplate_name_error'] = 'Ä°ÅŸletim sistemi kalıbı adında izin verilmeyen karakterler var.'; $wb['ostemplate_name_unique_error'] = 'Aynı adlı bir iÅŸletim sistemi kalıbı zaten var.'; -$wb['ostemplate_exec_txt'] = 'VM sunucusuna iÅŸletim sistemi kalıbı oluÅŸturma komutu gönderildi. Ä°ÅŸletim sistemi kalıbının oluÅŸturulması bir kaç dakika alabilir.'; +$wb['ostemplate_exec_txt'] = 'Sanal makine sunucusuna iÅŸletim sistemi kalıbı oluÅŸturma komutu gönderildi. Ä°ÅŸletim sistemi kalıbının oluÅŸturulması bir kaç dakika alabilir.'; + ?> diff --git a/interface/web/vm/lib/lang/tr_openvz_ip.lng b/interface/web/vm/lib/lang/tr_openvz_ip.lng index 637a70f2ea..e24b354bae 100644 --- a/interface/web/vm/lib/lang/tr_openvz_ip.lng +++ b/interface/web/vm/lib/lang/tr_openvz_ip.lng @@ -1,7 +1,7 @@ <?php $wb['server_id_txt'] = 'Sunucu'; $wb['ip_address_txt'] = 'IP Adresi'; -$wb['vm_id_txt'] = 'Sanal Sunucu'; +$wb['vm_id_txt'] = 'sSunucu'; $wb['reserved_txt'] = 'Ayrılmış'; $wb['ip_error_wrong'] = 'Lütfen geçerli bir IPv4 adresi yazın.'; $wb['ip_error_unique'] = 'Bu IP adresi zaten var.'; diff --git a/interface/web/vm/lib/lang/tr_openvz_ostemplate_list.lng b/interface/web/vm/lib/lang/tr_openvz_ostemplate_list.lng index bf5923aed1..3a4a10fdaa 100644 --- a/interface/web/vm/lib/lang/tr_openvz_ostemplate_list.lng +++ b/interface/web/vm/lib/lang/tr_openvz_ostemplate_list.lng @@ -1,5 +1,5 @@ <?php -$wb['list_head_txt'] = 'OpenVZ OS Kalıbı'; +$wb['list_head_txt'] = 'OpenVZ Ä°ÅŸletim Sistemi Kalıbı'; $wb['active_txt'] = 'Etkin'; $wb['template_name_txt'] = 'Kalıp Adı'; $wb['server_id_txt'] = 'Sunucu'; diff --git a/interface/web/vm/lib/lang/tr_openvz_template.lng b/interface/web/vm/lib/lang/tr_openvz_template.lng index fb1452e885..7768d0bae6 100644 --- a/interface/web/vm/lib/lang/tr_openvz_template.lng +++ b/interface/web/vm/lib/lang/tr_openvz_template.lng @@ -2,11 +2,11 @@ $wb['numproc_txt'] = 'Ä°ÅŸlemci Sayısı'; $wb['numtcpsock_txt'] = 'TCP Soket Sayısı'; $wb['numothersock_txt'] = 'DiÄŸer Soket Sayısı'; -$wb['vmguarpages_txt'] = 'VM Koruma Sayfası'; +$wb['vmguarpages_txt'] = 'Sanal Makine Koruma Sayfası'; $wb['kmemsize_txt'] = 'Kmemsize'; -$wb['tcpsndbuf_txt'] = 'TCP Gönderme ArabelleÄŸi'; -$wb['tcprcvbuf_txt'] = 'TCP Alma ArabelleÄŸi'; -$wb['othersockbuf_txt'] = 'DiÄŸer Soket ArabelleÄŸi'; +$wb['tcpsndbuf_txt'] = 'TCP Gönderme Ara BelleÄŸi'; +$wb['tcprcvbuf_txt'] = 'TCP Alma Ara BelleÄŸi'; +$wb['othersockbuf_txt'] = 'DiÄŸer Soket Ara BelleÄŸi'; $wb['dgramrcvbuf_txt'] = 'Dgramrcvbuf'; $wb['oomguarpages_txt'] = 'Oomguarpages'; $wb['privvmpages_txt'] = 'Privvmpages'; @@ -40,11 +40,11 @@ $wb['numtcpsock_desc_txt'] = 'TCP soketi sayısı.'; $wb['numothersock_desc_txt'] = 'TCP olmayan soket sayısı.'; $wb['vmguarpages_desc_txt'] = 'Sayfa cinsinden garantili ayrılan bellek.'; $wb['kmemsize_desc_txt'] = 'Bu taşıyıcıdaki iÅŸlemler için takas edilemez kernel belleÄŸinin boyutu.'; -$wb['tcpsndbuf_desc_txt'] = 'TCP gönderme arabelleÄŸinin toplam boyutu.'; -$wb['tcprcvbuf_desc_txt'] = 'TCP alma arabelleÄŸinin toplam boyutu.'; -$wb['othersockbuf_desc_txt'] = 'UNIX alan adı soket arabelleÄŸinin toplam boyutu, UDP ve diÄŸer datagram iletiÅŸim kuralları gönderme ara bellekleri.'; +$wb['tcpsndbuf_desc_txt'] = 'TCP gönderme ara belleÄŸinin toplam boyutu.'; +$wb['tcprcvbuf_desc_txt'] = 'TCP alma ara belleÄŸinin toplam boyutu.'; +$wb['othersockbuf_desc_txt'] = 'UNIX etki alanı soket ara belleÄŸinin toplam boyutu, UDP ve diÄŸer datagram iletiÅŸim kuralları gönderme ara bellekleri.'; $wb['dgramrcvbuf_desc_txt'] = 'UDP ve diÄŸer datagram iletiÅŸim kuralları alma ara bellekleri.'; -$wb['oomguarpages_desc_txt'] = 'Bellek sayfası cinsinden, bellek taÅŸması durumlarında garanti edilen bellek miktarı\\" (bellek bitti boÅŸaltma garantisi).'; +$wb['oomguarpages_desc_txt'] = 'Bellek sayfası cinsinden, "bellek taÅŸması" durumlarında garanti edilen bellek miktarı (bellek bitti boÅŸaltma garantisi).'; $wb['privvmpages_desc_txt'] = 'Bellek sayfası cinsinden ayrılacak bellek sınırı.'; $wb['lockedpages_desc_txt'] = 'Ä°ÅŸlem sayfaları takasına izin verilmez (mlock(2) ile kilitlenmiÅŸ sayfalar).'; $wb['shmpages_desc_txt'] = 'Bellek sayfası cinsinden, paylaşılan belleÄŸin toplam boyutu (IPC, paylaşılan anonim haritalama ve tmpfs nesneleri).'; @@ -90,8 +90,8 @@ $wb['numiptent_error_empty'] = 'Numiptent boÅŸ olamaz.'; $wb['swappages_error_empty'] = 'Swappages boÅŸ olamaz.'; $wb['Template'] = 'Kalıp'; $wb['Advanced'] = 'GeliÅŸmiÅŸ'; -$wb['features_txt'] = 'Features'; +$wb['features_txt'] = 'Özellikle'; $wb['iptables_txt'] = 'IP Tables'; -$wb['custom_txt'] = 'Custom settings'; -$wb['custom_error'] = 'Not allowed in Custom settings: '; +$wb['custom_txt'] = 'Özel Ayarlar'; +$wb['custom_error'] = 'Özel ayarlarda izin verilmiyor: '; ?> diff --git a/interface/web/vm/lib/lang/tr_openvz_vm.lng b/interface/web/vm/lib/lang/tr_openvz_vm.lng index fad86d9f3a..7c2977cda9 100644 --- a/interface/web/vm/lib/lang/tr_openvz_vm.lng +++ b/interface/web/vm/lib/lang/tr_openvz_vm.lng @@ -10,21 +10,21 @@ $wb['nameserver_txt'] = 'Ad Sunucuları'; $wb['nameserver_desc_txt'] = '(boÅŸluk ile ayırarak)'; $wb['capability_txt'] = 'Yeterlilik'; $wb['server_id_txt'] = 'Sunucu'; -$wb['ostemplate_id_txt'] = 'OS Kalıbı'; +$wb['ostemplate_id_txt'] = 'Ä°ÅŸletim Sistemi Kalıbı'; $wb['template_id_txt'] = 'Kalıp'; $wb['ip_address_txt'] = 'IP Adresi'; $wb['hostname_txt'] = 'Sunucu Adı'; -$wb['vm_password_txt'] = 'VM Parolası'; -$wb['start_boot_txt'] = 'Açılışta baÅŸlat'; +$wb['vm_password_txt'] = 'Sanal Makine Parolası'; +$wb['start_boot_txt'] = 'Açılışta BaÅŸlatılsın'; $wb['active_txt'] = 'Etkin'; $wb['description_txt'] = 'Açıklama'; $wb['client_group_id_txt'] = 'Müşteri'; $wb['veid_txt'] = 'VEID'; $wb['create_dns_txt'] = 'Sunucu için DNS oluÅŸtur'; -$wb['active_until_date_txt'] = 'Åžu tarihe kadar etkin'; +$wb['active_until_date_txt'] = 'Åžu Tarihe Kadar Etkin'; $wb['ip_address_error_empty'] = 'IP adresi boÅŸ olamaz.'; $wb['hostname_error_empty'] = 'Sunucu adı boÅŸ olamaz.'; -$wb['vm_password_error_empty'] = 'VM parolası boÅŸ olamaz.'; +$wb['vm_password_error_empty'] = 'Sanal makine parolası boÅŸ olamaz.'; $wb['veid_error_empty'] = 'VEID boÅŸ olamaz.'; $wb['veid_error_unique'] = 'VEID zaten var.'; $wb['diskspace_error_empty'] = 'Disk alanı boÅŸ olamaz.'; @@ -35,11 +35,11 @@ $wb['cpu_num_error_empty'] = 'Ä°ÅŸlemci sayısı boÅŸ olamaz.'; $wb['cpu_limit_error_empty'] = 'Ä°ÅŸlemci sınırı boÅŸ olamaz.'; $wb['io_priority_error_empty'] = 'G/Ç önceliÄŸi boÅŸ olamaz.'; $wb['template_nameserver_error_empty'] = 'Ad sunucuları boÅŸ olamaz.'; -$wb['Virtual server'] = 'Sanal sunucu'; +$wb['Virtual server'] = 'sSunucu'; $wb['Advanced'] = 'GeliÅŸmiÅŸ'; -$wb['features_txt'] = 'Features'; +$wb['features_txt'] = 'Özellikler'; $wb['iptables_txt'] = 'IP Tables'; -$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['custom_txt'] = 'Özel Ayarlar'; +$wb['bootorder_txt'] = 'BaÅŸlatma ÖnceliÄŸi'; +$wb['bootorder_error_notpositive'] = 'BaÅŸlatma önceliÄŸi deÄŸeri yalnız pozitif bir tamsayı olabilir'; ?> diff --git a/interface/web/vm/lib/lang/tr_openvz_vm_list.lng b/interface/web/vm/lib/lang/tr_openvz_vm_list.lng index 1a4ed0e7b9..e188f60464 100644 --- a/interface/web/vm/lib/lang/tr_openvz_vm_list.lng +++ b/interface/web/vm/lib/lang/tr_openvz_vm_list.lng @@ -1,8 +1,8 @@ <?php -$wb['list_head_txt'] = 'Sanal Sunucu'; +$wb['list_head_txt'] = 'sSunucu'; $wb['active_txt'] = 'Etkin'; $wb['server_id_txt'] = 'Sunucu'; -$wb['ostemplate_id_txt'] = 'OS Kalıbı'; +$wb['ostemplate_id_txt'] = 'Ä°ÅŸl. Sis. Kalıbı'; $wb['template_id_txt'] = 'Kalıp'; $wb['hostname_txt'] = 'Sunucu Adı'; $wb['ip_address_txt'] = 'IP Adresi'; -- GitLab From 2f0d607b5e26ed98be084c4977bcd2c1d4219d19 Mon Sep 17 00:00:00 2001 From: Till Brehm <tbrehm@ispconfig.org> Date: Fri, 11 Oct 2019 16:53:03 +0200 Subject: [PATCH 202/215] Fixed #5424 Unable to change passwd or user of admin --- interface/web/admin/form/users.tform.php | 6 ------ 1 file changed, 6 deletions(-) diff --git a/interface/web/admin/form/users.tform.php b/interface/web/admin/form/users.tform.php index b7f00b4eef..be77122b10 100644 --- a/interface/web/admin/form/users.tform.php +++ b/interface/web/admin/form/users.tform.php @@ -218,12 +218,6 @@ $form['tabs']['users'] = array ( 'app_theme' => array ( 'datatype' => 'VARCHAR', 'formtype' => 'RADIO', - 'validators' => array ( 0 => array ( 'type' => 'NOTEMPTY', - 'errmsg'=> 'app_theme_empty'), - 1 => array ( 'type' => 'REGEX', - 'regex' => '/^[a-z0-9\_]{0,64}$/', - 'errmsg'=> 'app_theme_regex'), - ), 'regex' => '', 'errmsg' => '', 'default' => 'default', -- GitLab From 04b0eb24cbe282017bdddb7ac5b4d6386563fa29 Mon Sep 17 00:00:00 2001 From: Till Brehm <tbrehm@ispconfig.org> Date: Fri, 11 Oct 2019 16:56:43 +0200 Subject: [PATCH 203/215] Fixed #5425 Valid delete requests blocked by CSRF check --- interface/lib/classes/plugin_listview.inc.php | 8 ++++++++ interface/web/admin/templates/remote_user_list.htm | 2 +- 2 files changed, 9 insertions(+), 1 deletion(-) diff --git a/interface/lib/classes/plugin_listview.inc.php b/interface/lib/classes/plugin_listview.inc.php index bd0aa0e160..ced308b2e5 100644 --- a/interface/lib/classes/plugin_listview.inc.php +++ b/interface/lib/classes/plugin_listview.inc.php @@ -123,6 +123,10 @@ class plugin_listview extends plugin_base { $lng_file = "lib/lang/".$app->functions->check_language($_SESSION["s"]["language"])."_".$app->listform->listDef['name']."_list.lng"; include $lng_file; $listTpl->setVar($wb); + + $csrf_token = $app->auth->csrf_token_get($app->listform->listDef['name']); + $_csrf_id = $csrf_token['csrf_id']; + $_csrf_key = $csrf_token['csrf_key']; // Get the data @@ -157,6 +161,10 @@ class plugin_listview extends plugin_base { // The variable "id" contains always the index field $rec["id"] = $rec[$idx_key]; $rec["delete_confirmation"] = $wb['delete_confirmation']; + + // CSRF Token + $rec["csrf_id"] = $_csrf_id; + $rec["csrf_key"] = $_csrf_key; $records_new[] = $rec; } diff --git a/interface/web/admin/templates/remote_user_list.htm b/interface/web/admin/templates/remote_user_list.htm index de65c64536..7189dc20df 100644 --- a/interface/web/admin/templates/remote_user_list.htm +++ b/interface/web/admin/templates/remote_user_list.htm @@ -33,7 +33,7 @@ <td><a href="#" data-load-content="admin/remote_user_edit.php?id={tmpl_var name='remote_userid'}">{tmpl_var name="remote_userid"}</a></td> <td><a href="#" data-load-content="admin/remote_user_edit.php?id={tmpl_var name='remote_userid'}">{tmpl_var name="remote_username"}</a></td> <td class="text-right"> - <a class="btn btn-default formbutton-danger formbutton-narrow" href="javascript: ISPConfig.confirm_action('admin/remote_user_del.php?id={tmpl_var name='remote_userid'}&phpsessid={tmpl_var name='phpsessid'}','{tmpl_var name='delete_confirmation'}');"><span class="icon icon-delete"></span></a> + <a class="btn btn-default formbutton-danger formbutton-narrow" href="javascript: ISPConfig.confirm_action('admin/remote_user_del.php?id={tmpl_var name='remote_userid'}&_csrf_id={tmpl_var name='csrf_id'}&_csrf_key={tmpl_var name='csrf_key'}&phpsessid={tmpl_var name='phpsessid'}','{tmpl_var name='delete_confirmation'}');"><span class="icon icon-delete"></span></a> </td> </tr> </tmpl_loop> -- GitLab From 92d734f89346e5a1c0e430c063658d1d7b560653 Mon Sep 17 00:00:00 2001 From: Till Brehm <tbrehm@ispconfig.org> Date: Mon, 14 Oct 2019 12:22:41 +0200 Subject: [PATCH 204/215] Improved Symlink option Apache vhost.conf.master --- server/conf/vhost.conf.master | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/server/conf/vhost.conf.master b/server/conf/vhost.conf.master index 75f6a72e87..0982a3cf41 100644 --- a/server/conf/vhost.conf.master +++ b/server/conf/vhost.conf.master @@ -93,7 +93,7 @@ <FilesMatch ".+\.ph(p[345]?|t|tml)$"> SetHandler None </FilesMatch> - Options +FollowSymLinks + Options +SymlinksIfOwnerMatch AllowOverride <tmpl_var name='allow_override'> <tmpl_if name='apache_version' op='>' value='2.2' format='version'> Require all granted @@ -125,7 +125,7 @@ <FilesMatch ".+\.ph(p[345]?|t|tml)$"> SetHandler None </FilesMatch> - Options +FollowSymLinks + Options +SymlinksIfOwnerMatch AllowOverride <tmpl_var name='allow_override'> <tmpl_if name='apache_version' op='>' value='2.2' format='version'> Require all granted -- GitLab From 5d261ed7063964baada64f08faf0bca99d71bc90 Mon Sep 17 00:00:00 2001 From: Till Brehm <tbrehm@ispconfig.org> Date: Mon, 14 Oct 2019 13:35:43 +0200 Subject: [PATCH 205/215] PHP compatibility changes (array definitions) in PowerDNS Plugin. --- server/plugins-available/powerdns_plugin.inc.php | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/server/plugins-available/powerdns_plugin.inc.php b/server/plugins-available/powerdns_plugin.inc.php index 2e44e014d5..7ab23ec549 100644 --- a/server/plugins-available/powerdns_plugin.inc.php +++ b/server/plugins-available/powerdns_plugin.inc.php @@ -536,14 +536,14 @@ class powerdns_plugin { $log[] = sprintf("\r\n%s %s", date('c'), 'Running set-nsec3 command...'); exec($cmd_set_nsec3, $log); - $pubkeys = []; + $pubkeys = array(); $cmd_show_zone = sprintf('%s show-zone %s 2>&1', $pdns_pdnssec, $zone); $log[] = sprintf("\r\n%s %s", date('c'), 'Running show-zone command...'); exec($cmd_show_zone, $pubkeys); $log = array_merge($log, $pubkeys); - $dnssec_info = array_merge($this->format_dnssec_pubkeys($pubkeys), ['', '== Raw log ============================'], $log); + $dnssec_info = array_merge($this->format_dnssec_pubkeys($pubkeys), array('', '== Raw log ============================'), $log); $dnssec_info = implode("\r\n", $dnssec_info); if ($app->dbmaster !== $app->db) { @@ -553,7 +553,7 @@ class powerdns_plugin { } function format_dnssec_pubkeys($lines) { - $formatted = []; + $formatted = array(); // We don't care about the first two lines about presigning and NSEC array_shift($lines); @@ -574,7 +574,7 @@ class powerdns_plugin { $key_type = $matches_key_type[1]; // We only care about the KSK or CSK - if (!in_array($key_type, ['KSK', 'CSK'], true)) { + if (!in_array($key_type, array('KSK', 'CSK'), true)) { break; } @@ -677,7 +677,7 @@ class powerdns_plugin { exec($cmd_disable_dnssec, $log); - $dnssec_info = array_merge(['== Raw log ============================'], $log); + $dnssec_info = array_merge(array('== Raw log ============================'), $log); $dnssec_info = implode("\r\n", $dnssec_info); if ($app->dbmaster !== $app->db) { -- GitLab From 7d41f01a2c3a4f6d4c9ae6751add7bae97bf3a12 Mon Sep 17 00:00:00 2001 From: Till Brehm <tbrehm@ispconfig.org> Date: Wed, 16 Oct 2019 17:09:24 +0200 Subject: [PATCH 206/215] Fixed #5429 Wrong class variable in server/lib/classes/db_mysql.inc.php LINE 275 --- interface/lib/classes/db_mysql.inc.php | 2 +- server/lib/classes/db_mysql.inc.php | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/interface/lib/classes/db_mysql.inc.php b/interface/lib/classes/db_mysql.inc.php index 227fab73fa..9c7269e568 100644 --- a/interface/lib/classes/db_mysql.inc.php +++ b/interface/lib/classes/db_mysql.inc.php @@ -272,7 +272,7 @@ class db if(!is_object($this->_iConnId)) { $this->_iConnId = mysqli_init(); } - if(!mysqli_real_connect($this->_isConnId, $this->dbHost, $this->dbUser, $this->dbPass, $this->dbName, (int)$this->dbPort, NULL, $this->dbClientFlags)) { + if(!mysqli_real_connect($this->_iConnId, $this->dbHost, $this->dbUser, $this->dbPass, $this->dbName, (int)$this->dbPort, NULL, $this->dbClientFlags)) { if(mysqli_connect_errno() == '111') { // server is not available if($try > 9) { diff --git a/server/lib/classes/db_mysql.inc.php b/server/lib/classes/db_mysql.inc.php index 227fab73fa..9c7269e568 100644 --- a/server/lib/classes/db_mysql.inc.php +++ b/server/lib/classes/db_mysql.inc.php @@ -272,7 +272,7 @@ class db if(!is_object($this->_iConnId)) { $this->_iConnId = mysqli_init(); } - if(!mysqli_real_connect($this->_isConnId, $this->dbHost, $this->dbUser, $this->dbPass, $this->dbName, (int)$this->dbPort, NULL, $this->dbClientFlags)) { + if(!mysqli_real_connect($this->_iConnId, $this->dbHost, $this->dbUser, $this->dbPass, $this->dbName, (int)$this->dbPort, NULL, $this->dbClientFlags)) { if(mysqli_connect_errno() == '111') { // server is not available if($try > 9) { -- GitLab From 2fc824fe37ff504636a00d0a9171ba0045004795 Mon Sep 17 00:00:00 2001 From: Till Brehm <tbrehm@ispconfig.org> Date: Wed, 16 Oct 2019 17:10:12 +0200 Subject: [PATCH 207/215] Changed PHP syntax in monitor_tools.inc.php for PHP 5.3 compatibility. --- server/lib/classes/monitor_tools.inc.php | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/server/lib/classes/monitor_tools.inc.php b/server/lib/classes/monitor_tools.inc.php index b2bd5ede30..d8d325fe60 100644 --- a/server/lib/classes/monitor_tools.inc.php +++ b/server/lib/classes/monitor_tools.inc.php @@ -254,7 +254,7 @@ class monitor_tools { preg_match_all('/NAME=\"([\w ]+)\"/m', $content, $name); preg_match_all('/VERSION_ID=\"([0-9]{1,2})\.?([0-9]{0,2})\.?([0-9]*).$/m', $content, $version); $distname = is_array($name) ? $name[1][0] : 'openSUSE'; - $distver = is_array($version) ? implode('.', array_filter([$version[1][0],$version[2][0],$version[3][0]],'strlen')) : 'Unknown'; + $distver = is_array($version) ? implode('.', array_filter(array($version[1][0],$version[2][0],$version[3][0]),'strlen')) : 'Unknown'; $distid = 'opensuse112'; $distbaseid = 'opensuse'; } else { @@ -309,7 +309,7 @@ class monitor_tools { } elseif(stristr($content, 'CentOS Linux release 7')) { preg_match_all('/([0-9]{1,2})\.?([0-9]{0,2})\.?([0-9]*)/', $content, $version); $distname = 'CentOS'; - $distver = is_array($version)? implode('.', array_filter([$version[1][0],$version[2][0],$version[3][0]],'strlen')) :'Unknown'; + $distver = is_array($version)? implode('.', array_filter(array($version[1][0],$version[2][0],$version[3][0]),'strlen')) :'Unknown'; $distbaseid = 'fedora'; $var=explode(" ", $content); $var=explode(".", $var[3]); -- GitLab From 9d1d86244a7fc64c317f1b52ab1c5e46fd8ed9e4 Mon Sep 17 00:00:00 2001 From: Till Brehm <tbrehm@ispconfig.org> Date: Wed, 23 Oct 2019 08:35:02 +0200 Subject: [PATCH 208/215] Changed version file download URL in ispconfig_update.php to https. --- server/scripts/ispconfig_update.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/server/scripts/ispconfig_update.php b/server/scripts/ispconfig_update.php index 0c2d3789e8..2c77607b65 100644 --- a/server/scripts/ispconfig_update.php +++ b/server/scripts/ispconfig_update.php @@ -91,7 +91,7 @@ echo "Please choose the update method. For production systems select 'stable'. \ $method = simple_query('Select update method', array('stable', 'git-stable', 'git-master'), 'stable'); if($method == 'stable') { - $new_version = @file_get_contents('http://www.ispconfig.org/downloads/ispconfig3_version.txt') or die('Unable to retrieve version file.'); + $new_version = @file_get_contents('https://www.ispconfig.org/downloads/ispconfig3_version.txt') or die('Unable to retrieve version file.'); $new_version = trim($new_version); if(version_compare($new_version, ISPC_APP_VERSION, '>')) { passthru('/usr/local/ispconfig/server/scripts/update_stable.sh'); -- GitLab From b047ebde79ffd12b1628cd2127b75e007ca51cbd Mon Sep 17 00:00:00 2001 From: Till Brehm <tbrehm@ispconfig.org> Date: Wed, 23 Oct 2019 08:36:05 +0200 Subject: [PATCH 209/215] Changed link to ispconfig download to https. --- interface/web/dashboard/dashboard.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/interface/web/dashboard/dashboard.php b/interface/web/dashboard/dashboard.php index 5426ba9572..005c364aa5 100644 --- a/interface/web/dashboard/dashboard.php +++ b/interface/web/dashboard/dashboard.php @@ -149,7 +149,7 @@ if($_SESSION["s"]["user"]["typ"] == 'admin') { $info[] = array('info_msg' => '<p>There is a new Version of ISPConfig 3 available!</p>' . '<p>This Version: <b>' . $v1 . '</b></p>' . '<p>New Version : <b>' . $v2 . '</b></p>' . - '<p><a href="http://www.ispconfig.org/ispconfig-3/download" target="ISPC">See more...</a></p>'); + '<p><a href="https://www.ispconfig.org/ispconfig-3/download" target="ISPC">See more...</a></p>'); } } -- GitLab From f0bfe454941703b2954c78fe96f736bb06a21f60 Mon Sep 17 00:00:00 2001 From: Florian Schaal <info@schaal-24.de> Date: Mon, 4 Nov 2019 15:17:20 +0100 Subject: [PATCH 210/215] show ips only with vhost = y and show directive_snippets for the admin even if they are set to customer_viewable = 'n' --- interface/web/sites/web_vhost_domain_edit.php | 20 +++++++++++-------- 1 file changed, 12 insertions(+), 8 deletions(-) diff --git a/interface/web/sites/web_vhost_domain_edit.php b/interface/web/sites/web_vhost_domain_edit.php index 86deb5b2a5..52b44acc79 100644 --- a/interface/web/sites/web_vhost_domain_edit.php +++ b/interface/web/sites/web_vhost_domain_edit.php @@ -206,7 +206,7 @@ class page_action extends tform_actions { } //* Fill the IPv4 select field with the IP addresses that are allowed for this client on the current server - $sql = "SELECT ip_address FROM server_ip WHERE server_id = ? AND ip_type = 'IPv4' AND (client_id = 0 OR client_id=".$_SESSION['s']['user']['client_id'].")"; + $sql = "SELECT ip_address FROM server_ip WHERE server_id = ? AND ip_type = 'IPv4' AND virtualhost = 'y' AND (client_id = 0 OR client_id=".$_SESSION['s']['user']['client_id'].")"; $ips = $app->db->queryAllRecords($sql, $server_id); $ip_select = ($web_config[$server_id]['enable_ip_wildcard'] == 'y')?"<option value='*'>*</option>":""; //if(!in_array($this->dataRecord["ip_address"], $ips)) $ip_select .= "<option value='".$this->dataRecord["ip_address"]."' SELECTED>".$this->dataRecord["ip_address"]."</option>\r\n"; @@ -222,7 +222,7 @@ class page_action extends tform_actions { unset($ips); //* Fill the IPv6 select field with the IP addresses that are allowed for this client - $sql = "SELECT ip_address FROM server_ip WHERE server_id = ? AND ip_type = 'IPv6' AND (client_id = 0 OR client_id=?)"; + $sql = "SELECT ip_address FROM server_ip WHERE server_id = ? AND ip_type = 'IPv6' AND virtualhost = 'y' AND (client_id = 0 OR client_id=?)"; $ips = $app->db->queryAllRecords($sql, $server_id, $_SESSION['s']['user']['client_id']); //$ip_select = ($web_config[$server_id]['enable_ip_wildcard'] == 'y')?"<option value='*'>*</option>":""; //$ip_select = ""; @@ -352,7 +352,7 @@ class page_action extends tform_actions { } //* Fill the IPv4 select field with the IP addresses that are allowed for this client - $sql = "SELECT ip_address FROM server_ip WHERE server_id = ? AND ip_type = 'IPv4' AND (client_id = 0 OR client_id=?)"; + $sql = "SELECT ip_address FROM server_ip WHERE server_id = ? AND ip_type = 'IPv4' AND virtualhost = 'y' AND (client_id = 0 OR client_id=?)"; $ips = $app->db->queryAllRecords($sql, $server_id, $_SESSION['s']['user']['client_id']); $ip_select = ($web_config[$server_id]['enable_ip_wildcard'] == 'y')?"<option value='*'>*</option>":""; //if(!in_array($this->dataRecord["ip_address"], $ips)) $ip_select .= "<option value='".$this->dataRecord["ip_address"]."' SELECTED>".$this->dataRecord["ip_address"]."</option>\r\n"; @@ -368,7 +368,7 @@ class page_action extends tform_actions { unset($ips); //* Fill the IPv6 select field with the IP addresses that are allowed for this client - $sql = "SELECT ip_address FROM server_ip WHERE server_id = ? AND ip_type = 'IPv6' AND (client_id = 0 OR client_id=?)"; + $sql = "SELECT ip_address FROM server_ip WHERE server_id = ? AND ip_type = 'IPv6' AND virtualhost = 'y' AND (client_id = 0 OR client_id=?)"; $ips = $app->db->queryAllRecords($sql, $server_id, $_SESSION['s']['user']['client_id']); $ip_select = "<option value=''></option>"; //$ip_select = ""; @@ -549,7 +549,7 @@ class page_action extends tform_actions { } //* Fill the IPv4 select field - $sql = "SELECT ip_address FROM server_ip WHERE ip_type = 'IPv4' AND server_id = ?"; + $sql = "SELECT ip_address FROM server_ip WHERE ip_type = 'IPv4' AND virtualhost = 'y' AND server_id = ?"; $ips = $app->db->queryAllRecords($sql, $server_id); $ip_select = ($web_config['enable_ip_wildcard'] == 'y')?"<option value='*'>*</option>":""; //$ip_select = ""; @@ -564,7 +564,7 @@ class page_action extends tform_actions { unset($ips); //* Fill the IPv6 select field - $sql = "SELECT ip_address FROM server_ip WHERE ip_type = 'IPv6' AND server_id = ?"; + $sql = "SELECT ip_address FROM server_ip WHERE ip_type = 'IPv6' AND virtualhost = 'y' AND server_id = ?"; $ips = $app->db->queryAllRecords($sql, $server_id); $ip_select = "<option value=''></option>"; //$ip_select = ""; @@ -863,8 +863,12 @@ class page_action extends tform_actions { } $directive_snippets_id_select .= '</optgroup>'; } - - $directive_snippets = $app->db->queryAllRecords("SELECT directive_snippets_id, name FROM directive_snippets WHERE customer_viewable = 'y' AND active = 'y' AND master_directive_snippets_id = 0 AND type = ? ORDER BY name ASC", $server_type); + + if($is_admin) { + $directive_snippets = $app->db->queryAllRecords("SELECT directive_snippets_id, name FROM directive_snippets WHERE active = 'y' AND master_directive_snippets_id = 0 AND type = ? ORDER BY name ASC", $server_type); + } else { + $directive_snippets = $app->db->queryAllRecords("SELECT directive_snippets_id, name FROM directive_snippets WHERE customer_viewable = 'y' AND active = 'y' AND master_directive_snippets_id = 0 AND type = ? ORDER BY name ASC", $server_type); + } if(is_array($directive_snippets) && !empty($directive_snippets)){ $directive_snippets_id_select .= '<optgroup label="'.$app->tform->wordbook["select_directive_snippet_txt"].'">'; foreach($directive_snippets as $directive_snippet){ -- GitLab From db4158a2c8a7e917dc3e2cad756f5e2b1419a74b Mon Sep 17 00:00:00 2001 From: Marius Burkard <m.burkard@pixcept.de> Date: Wed, 13 Nov 2019 13:51:45 +0100 Subject: [PATCH 211/215] - Table sys_log clean-up not deleting entries with server_id 0, fixes #5450 --- server/lib/classes/cron.d/200-logfiles.inc.php | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/server/lib/classes/cron.d/200-logfiles.inc.php b/server/lib/classes/cron.d/200-logfiles.inc.php index b229c76a8a..e2d9e9bb9e 100644 --- a/server/lib/classes/cron.d/200-logfiles.inc.php +++ b/server/lib/classes/cron.d/200-logfiles.inc.php @@ -240,6 +240,18 @@ class cronjob_logfiles extends cronjob { */ $sql = "DELETE FROM sys_log WHERE tstamp < ? AND server_id != 0"; $app->dbmaster->query($sql, $tstamp); + + /* + * now delete those entries without a linked datalog entry (datalog_id = 0) + */ + $sql = "DELETE FROM sys_log WHERE tstamp < ? AND server_id = 0 AND datalog_id = 0"; + $app->dbmaster->query($sql, $tstamp); + + /* + * now delete those entries with a linked datalog entry (datalog_id != 0) only if older than 30 days + */ + $sql = "DELETE FROM sys_log WHERE tstamp < ? AND server_id = 0 AND datalog_id != 0"; + $app->dbmaster->query($sql, $tstamp - (3600 * 24 * 23)); /* * Delete all remote-actions "done" and older than 7 days -- GitLab From 746e79db393f22b03fdd408cc086eecc084f1991 Mon Sep 17 00:00:00 2001 From: Marius Burkard <m.burkard@pixcept.de> Date: Tue, 19 Nov 2019 21:34:03 +0100 Subject: [PATCH 212/215] - backported acme.sh support from master branch, fixes #5461 --- .../classes/cron.d/900-letsencrypt.inc.php | 25 +- server/lib/classes/letsencrypt.inc.php | 215 +++++++++++++----- server/lib/classes/system.inc.php | 5 +- 3 files changed, 180 insertions(+), 65 deletions(-) diff --git a/server/lib/classes/cron.d/900-letsencrypt.inc.php b/server/lib/classes/cron.d/900-letsencrypt.inc.php index 3e2c9190c6..b0f6f39c51 100644 --- a/server/lib/classes/cron.d/900-letsencrypt.inc.php +++ b/server/lib/classes/cron.d/900-letsencrypt.inc.php @@ -35,8 +35,6 @@ class cronjob_letsencrypt extends cronjob { /* this function is optional if it contains no custom code */ public function onPrepare() { - global $app; - parent::onPrepare(); } @@ -52,10 +50,19 @@ class cronjob_letsencrypt extends cronjob { global $app, $conf; $server_config = $app->getconf->get_server_config($conf['server_id'], 'server'); - if(!isset($server_config['migration_mode']) || $server_config['migration_mode'] != 'y') { - $letsencrypt = explode("\n", shell_exec('which letsencrypt certbot /root/.local/share/letsencrypt/bin/letsencrypt /opt/eff.org/certbot/venv/bin/certbot')); - $letsencrypt = reset($letsencrypt); - if(is_executable($letsencrypt)) { + if(!isset($server_config['migration_mode']) || $server_config['migration_mode'] != 'y') { + $acme = $app->letsencrypt->get_acme_script(); + if($acme) { + // skip letsencrypt + parent::onRunJob(); + return; + } + + $letsencrypt = $app->letsencrypt->get_certbot_script(); + if($letsencrypt) { + $ret = null; + $val = 0; + $matches = array(); $version = exec($letsencrypt . ' --version 2>&1', $ret, $val); if(preg_match('/^(\S+|\w+)\s+(\d+(\.\d+)+)$/', $version, $matches)) { $type = strtolower($matches[1]); @@ -86,11 +93,7 @@ class cronjob_letsencrypt extends cronjob { /* this function is optional if it contains no custom code */ public function onAfterRun() { - global $app; - parent::onAfterRun(); } -} - -?> +} \ No newline at end of file diff --git a/server/lib/classes/letsencrypt.inc.php b/server/lib/classes/letsencrypt.inc.php index 62080e29b4..291ee41b12 100644 --- a/server/lib/classes/letsencrypt.inc.php +++ b/server/lib/classes/letsencrypt.inc.php @@ -37,15 +37,136 @@ class letsencrypt { */ private $base_path = '/etc/letsencrypt'; private $renew_config_path = '/etc/letsencrypt/renewal'; - + private $certbot_use_certcommand = false; public function __construct(){ } + + public function get_acme_script() { + $acme = explode("\n", shell_exec('which /usr/local/ispconfig/server/scripts/acme.sh /root/.acme.sh/acme.sh')); + $acme = reset($acme); + if(is_executable($acme)) { + return $acme; + } else { + return false; + } + } + + public function get_acme_command($domains, $key_file, $bundle_file, $cert_file) { + + $letsencrypt = $this->get_acme_script(); + + $cmd = ''; + // generate cli format + foreach($domains as $domain) { + $cmd .= (string) " -d " . $domain; + } + + if($cmd == '') { + return false; + } + + $cmd = 'R=0 ; C=0 ; ' . $letsencrypt . ' --issue ' . $cmd . ' -w /usr/local/ispconfig/interface/acme ; R=$? ; if [[ $R -eq 0 || $R -eq 2 ]] ; then ' . $letsencrypt . ' --install-cert ' . $cmd . ' --key-file ' . escapeshellarg($key_file) . ' --fullchain-file ' . escapeshellarg($bundle_file) . ' --cert-file ' . escapeshellarg($cert_file) . ' --reloadcmd ' . escapeshellarg($this->get_reload_command()) . '; C=$? ; fi ; if [[ $C -eq 0 ]] ; then exit $R ; else exit $C ; fi'; + + return $cmd; + } + + public function get_certbot_script() { + $letsencrypt = explode("\n", shell_exec('which letsencrypt certbot /root/.local/share/letsencrypt/bin/letsencrypt /opt/eff.org/certbot/venv/bin/certbot')); + $letsencrypt = reset($letsencrypt); + if(is_executable($letsencrypt)) { + return $letsencrypt; + } else { + return false; + } + } + private function install_acme() { + $install_cmd = 'wget -O - https://get.acme.sh | sh'; + $ret = null; + $val = 0; + exec($install_cmd . ' 2>&1', $ret, $val); + + return ($val == 0 ? true : false); + } + + private function get_reload_command() { + global $app, $conf; + + $web_config = $app->getconf->get_server_config($conf['server_id'], 'web'); + + $daemon = ''; + switch ($web_config['server_type']) { + case 'nginx': + $daemon = $web_config['server_type']; + break; + default: + if(is_file($conf['init_scripts'] . '/' . 'httpd24-httpd') || is_dir('/opt/rh/httpd24/root/etc/httpd')) { + $daemon = 'httpd24-httpd'; + } elseif(is_file($conf['init_scripts'] . '/' . 'httpd') || is_dir('/etc/httpd')) { + $daemon = 'httpd'; + } else { + $daemon = 'apache2'; + } + } + + $cmd = $app->system->getinitcommand($daemon, 'force-reload'); + return $cmd; + } + + public function get_certbot_command($domains) { + global $app; + + $letsencrypt = $this->get_certbot_script(); + + $cmd = ''; + // generate cli format + foreach($domains as $domain) { + $cmd .= (string) " --domains " . $domain; + } + + if($cmd == '') { + return false; + } + + $matches = array(); + $ret = null; + $val = 0; + + $letsencrypt_version = exec($letsencrypt . ' --version 2>&1', $ret, $val); + if(preg_match('/^(\S+|\w+)\s+(\d+(\.\d+)+)$/', $letsencrypt_version, $matches)) { + $letsencrypt_version = $matches[2]; + } + if (version_compare($letsencrypt_version, '0.22', '>=')) { + $acme_version = 'https://acme-v02.api.letsencrypt.org/directory'; + } else { + $acme_version = 'https://acme-v01.api.letsencrypt.org/directory'; + } + if (version_compare($letsencrypt_version, '0.30', '>=')) { + $app->log("LE version is " . $letsencrypt_version . ", so using certificates command", LOGLEVEL_DEBUG); + $this->certbot_use_certcommand = true; + $webroot_map = array(); + for($i = 0; $i < count($domains); $i++) { + $webroot_map[$domains[$i]] = '/usr/local/ispconfig/interface/acme'; + } + $webroot_args = "--webroot-map " . escapeshellarg(str_replace(array("\r", "\n"), '', json_encode($webroot_map))); + } else { + $webroot_args = "$cmd --webroot-path /usr/local/ispconfig/interface/acme"; + } + + $cmd = $letsencrypt . " certonly -n --text --agree-tos --expand --authenticator webroot --server $acme_version --rsa-key-size 4096 --email postmaster@$domain $cmd --webroot-path /usr/local/ispconfig/interface/acme"; + + return $cmd; + } + public function get_letsencrypt_certificate_paths($domains = array()) { global $app; + if($this->get_acme_script()) { + return false; + } + if(empty($domains)) return false; if(!is_dir($this->renew_config_path)) return false; @@ -133,9 +254,13 @@ class letsencrypt { } private function get_ssl_domain($data) { - $domain = $data['new']['ssl_domain']; - if(!$domain) $domain = $data['new']['domain']; + global $app; + $domain = $data['new']['ssl_domain']; + if(!$domain) { + $domain = $data['new']['domain']; + } + if($data['new']['ssl'] == 'y' && $data['new']['ssl_letsencrypt'] == 'y') { $domain = $data['new']['domain']; if(substr($domain, 0, 2) === '*.') { @@ -149,8 +274,6 @@ class letsencrypt { } public function get_website_certificate_paths($data) { - global $app; - $ssl_dir = $data['new']['document_root'].'/ssl'; $domain = $this->get_ssl_domain($data); @@ -183,11 +306,17 @@ class letsencrypt { $web_config = $app->getconf->get_server_config($conf['server_id'], 'web'); $server_config = $app->getconf->get_server_config($conf['server_id'], 'server'); + $use_acme = false; + if($this->get_acme_script()) { + $use_acme = true; + } elseif(!$this->get_certbot_script()) { + // acme and le missing + $this->install_acme(); + } + $tmp = $app->letsencrypt->get_website_certificate_paths($data); $domain = $tmp['domain']; $key_file = $tmp['key']; - $key_file2 = $tmp['key2']; - $csr_file = $tmp['csr']; $crt_file = $tmp['crt']; $bundle_file = $tmp['bundle']; @@ -256,66 +385,50 @@ class letsencrypt { $app->log("There were " . $le_domain_count . " domains in the domain list. LE only supports 100, so we strip the rest.", LOGLEVEL_WARN); } - // generate cli format - foreach($temp_domains as $temp_domain) { - $cli_domain_arg .= (string) " --domains " . $temp_domain; - } - // unset useless data unset($subdomains); unset($aliasdomains); - $letsencrypt_use_certcommand = false; + $this->certbot_use_certcommand = false; $letsencrypt_cmd = ''; - $letsencrypt = false; - $success = false; - - $letsencrypt = explode("\n", shell_exec('which letsencrypt certbot /root/.local/share/letsencrypt/bin/letsencrypt /opt/eff.org/certbot/venv/bin/certbot')); - $letsencrypt = reset($letsencrypt); - if(!is_executable($letsencrypt)) { - $letsencrypt = false; + $allow_return_codes = null; + if($use_acme) { + $letsencrypt_cmd = $this->get_acme_command($temp_domains, $key_file, $bundle_file, $crt_file); + $allow_return_codes = array(2); + } else { + $letsencrypt_cmd = $this->get_certbot_command($temp_domains); } - if(!empty($cli_domain_arg)) { + + $success = false; + if($letsencrypt_cmd) { if(!isset($server_config['migration_mode']) || $server_config['migration_mode'] != 'y') { $app->log("Create Let's Encrypt SSL Cert for: $domain", LOGLEVEL_DEBUG); $app->log("Let's Encrypt SSL Cert domains: $cli_domain_arg", LOGLEVEL_DEBUG); - - if($letsencrypt) { - $letsencrypt_version = exec($letsencrypt . ' --version 2>&1', $ret, $val); - if(preg_match('/^(\S+|\w+)\s+(\d+(\.\d+)+)$/', $letsencrypt_version, $matches)) { - $letsencrypt_version = $matches[2]; - } - if (version_compare($letsencrypt_version, '0.22', '>=')) { - $acme_version = 'https://acme-v02.api.letsencrypt.org/directory'; - } else { - $acme_version = 'https://acme-v01.api.letsencrypt.org/directory'; - } - if (version_compare($letsencrypt_version, '0.30', '>=')) { - $app->log("LE version is " . $letsencrypt_version . ", so using certificates command", LOGLEVEL_DEBUG); - $letsencrypt_use_certcommand = true; - $webroot_map = array(); - for($i = 0; $i < count($temp_domains); $i++) { - $webroot_map[$temp_domains[$i]] = '/usr/local/ispconfig/interface/acme'; - } - $webroot_args = "--webroot-map " . escapeshellarg(str_replace(array("\r", "\n"), '', json_encode($webroot_map))); - } else { - $webroot_args = "$cli_domain_arg --webroot-path /usr/local/ispconfig/interface/acme"; - } - - $letsencrypt_cmd = $letsencrypt . " certonly -n --text --agree-tos --expand --authenticator webroot --server $acme_version --rsa-key-size 4096 --email postmaster@$domain $webroot_args"; - $success = $app->system->_exec($letsencrypt_cmd); - } + + $success = $app->system->_exec($letsencrypt_cmd, $allow_return_codes); } else { $app->log("Migration mode active, skipping Let's Encrypt SSL Cert creation for: $domain", LOGLEVEL_DEBUG); $success = true; } } + + if($use_acme === true) { + if(!$success) { + $app->log('Let\'s Encrypt SSL Cert for: ' . $domain . ' could not be issued.', LOGLEVEL_WARN); + $app->log($letsencrypt_cmd, LOGLEVEL_WARN); + return false; + } else { + return true; + } + } + $le_files = array(); - if($letsencrypt_use_certcommand === true && $letsencrypt) { - $letsencrypt_cmd = $letsencrypt . " certificates " . $cli_domain_arg; + if($this->certbot_use_certcommand === true && $letsencrypt_cmd) { + $letsencrypt_cmd = $letsencrypt_cmd . " certificates " . $cli_domain_arg; $output = explode("\n", shell_exec($letsencrypt_cmd . " 2>/dev/null | grep -v '^\$'")); $le_path = ''; $skip_to_next = true; + $matches = null; foreach($output as $outline) { $outline = trim($outline); $app->log("LE CERT OUTPUT: " . $outline, LOGLEVEL_DEBUG); @@ -415,6 +528,4 @@ class letsencrypt { return false; } } -} - -?> +} \ No newline at end of file diff --git a/server/lib/classes/system.inc.php b/server/lib/classes/system.inc.php index 3db57c510f..551e4e4853 100644 --- a/server/lib/classes/system.inc.php +++ b/server/lib/classes/system.inc.php @@ -1742,13 +1742,14 @@ class system{ } - function _exec($command) { + function _exec($command, $allow_return_codes = null) { global $app; $out = array(); $ret = 0; $app->log('exec: '.$command, LOGLEVEL_DEBUG); exec($command, $out, $ret); - if($ret != 0) return false; + if(is_array($allow_return_codes) && in_array($ret, $allow_return_codes)) return true; + elseif($ret != 0) return false; else return true; } -- GitLab From 58708d959ca14762b4280c42348b5f9b85cc809c Mon Sep 17 00:00:00 2001 From: Marius Burkard <m.burkard@pixcept.de> Date: Fri, 22 Nov 2019 13:20:06 +0100 Subject: [PATCH 213/215] - added list id to mail filter options --- interface/lib/classes/remote.d/server.inc.php | 4 +--- interface/web/mail/form/mail_user_filter.tform.php | 2 +- interface/web/mail/lib/lang/ar_mail_user_filter.lng | 1 + interface/web/mail/lib/lang/ca_mail_user_filter.lng | 1 + interface/web/mail/lib/lang/dk_mail_user_filter.lng | 1 + interface/web/mail/lib/lang/en_mail_user_filter.lng | 1 + interface/web/mail/lib/lang/es_mail_user_filter.lng | 1 + interface/web/mail/lib/lang/fi_mail_user_filter.lng | 1 + interface/web/mail/lib/lang/fr_mail_user_filter.lng | 1 + interface/web/mail/lib/lang/id_mail_user_filter.lng | 1 + interface/web/mail/lib/lang/ja_mail_user_filter.lng | 1 + interface/web/mail/lib/lang/pt_mail_user_filter.lng | 1 + interface/web/mail/lib/lang/ro_mail_user_filter.lng | 1 + interface/web/mail/lib/lang/sk_mail_user_filter.lng | 1 + interface/web/mailuser/form/mail_user_filter.tform.php | 2 +- interface/web/mailuser/lib/lang/ar_mail_user_filter.lng | 1 + interface/web/mailuser/lib/lang/bg_mail_user_filter.lng | 1 + interface/web/mailuser/lib/lang/ca_mail_user_filter.lng | 1 + interface/web/mailuser/lib/lang/dk_mail_user_filter.lng | 1 + interface/web/mailuser/lib/lang/el_mail_user_filter.lng | 1 + interface/web/mailuser/lib/lang/en_mail_user_filter.lng | 1 + interface/web/mailuser/lib/lang/es_mail_user_filter.lng | 1 + interface/web/mailuser/lib/lang/fi_mail_user_filter.lng | 1 + interface/web/mailuser/lib/lang/hu_mail_user_filter.lng | 1 + interface/web/mailuser/lib/lang/id_mail_user_filter.lng | 1 + interface/web/mailuser/lib/lang/ja_mail_user_filter.lng | 1 + interface/web/mailuser/lib/lang/pl_mail_user_filter.lng | 1 + interface/web/mailuser/lib/lang/pt_mail_user_filter.lng | 1 + interface/web/mailuser/lib/lang/ro_mail_user_filter.lng | 1 + interface/web/mailuser/lib/lang/sk_mail_user_filter.lng | 1 + 30 files changed, 30 insertions(+), 5 deletions(-) diff --git a/interface/lib/classes/remote.d/server.inc.php b/interface/lib/classes/remote.d/server.inc.php index 4962cb4c59..77649d1bb4 100644 --- a/interface/lib/classes/remote.d/server.inc.php +++ b/interface/lib/classes/remote.d/server.inc.php @@ -288,6 +288,4 @@ class remoting_server extends remoting { return false; } } -} - -?> +} \ No newline at end of file diff --git a/interface/web/mail/form/mail_user_filter.tform.php b/interface/web/mail/form/mail_user_filter.tform.php index c1134c5e41..be5fba3ed7 100644 --- a/interface/web/mail/form/mail_user_filter.tform.php +++ b/interface/web/mail/form/mail_user_filter.tform.php @@ -88,7 +88,7 @@ $form["tabs"]['filter'] = array ( 'datatype' => 'VARCHAR', 'formtype' => 'SELECT', 'default' => '', - 'value' => array('Subject' => 'subject_txt', 'From'=>'from_txt', 'To'=>'to_txt') + 'value' => array('Subject' => 'subject_txt', 'From'=>'from_txt', 'To'=>'to_txt', 'List-Id'=>'list_id_txt') ), 'op' => array ( 'datatype' => 'VARCHAR', diff --git a/interface/web/mail/lib/lang/ar_mail_user_filter.lng b/interface/web/mail/lib/lang/ar_mail_user_filter.lng index b5d31b589c..9a15472e88 100644 --- a/interface/web/mail/lib/lang/ar_mail_user_filter.lng +++ b/interface/web/mail/lib/lang/ar_mail_user_filter.lng @@ -11,6 +11,7 @@ $wb['limit_mailfilter_txt'] = 'The max. number of mailfilters is reached.'; $wb['subject_txt'] = 'Subject'; $wb['from_txt'] = 'From'; $wb['to_txt'] = 'To'; +$wb['list_id_txt'] = 'List ID'; $wb['contains_txt'] = 'Contains'; $wb['is_txt'] = 'Is'; $wb['begins_with_txt'] = 'Begins with'; diff --git a/interface/web/mail/lib/lang/ca_mail_user_filter.lng b/interface/web/mail/lib/lang/ca_mail_user_filter.lng index 14b80ee07b..8744b2ab79 100644 --- a/interface/web/mail/lib/lang/ca_mail_user_filter.lng +++ b/interface/web/mail/lib/lang/ca_mail_user_filter.lng @@ -11,6 +11,7 @@ $wb['limit_mailfilter_txt'] = 'Le nombre max de filtres courriel est atteint.'; $wb['subject_txt'] = 'Sujet'; $wb['from_txt'] = 'De'; $wb['to_txt'] = 'Pour'; +$wb['list_id_txt'] = 'List ID'; $wb['contains_txt'] = 'Contient'; $wb['is_txt'] = 'Est'; $wb['begins_with_txt'] = 'Commence par'; diff --git a/interface/web/mail/lib/lang/dk_mail_user_filter.lng b/interface/web/mail/lib/lang/dk_mail_user_filter.lng index d43af17ffb..ef8be2a0c9 100644 --- a/interface/web/mail/lib/lang/dk_mail_user_filter.lng +++ b/interface/web/mail/lib/lang/dk_mail_user_filter.lng @@ -11,6 +11,7 @@ $wb['limit_mailfilter_txt'] = 'Max. antal af mailfiltere er nÃ¥et.'; $wb['subject_txt'] = 'Emne'; $wb['from_txt'] = 'Fra'; $wb['to_txt'] = 'Til'; +$wb['list_id_txt'] = 'List ID'; $wb['contains_txt'] = 'Indeholder'; $wb['is_txt'] = 'Er'; $wb['begins_with_txt'] = 'Begynder med'; diff --git a/interface/web/mail/lib/lang/en_mail_user_filter.lng b/interface/web/mail/lib/lang/en_mail_user_filter.lng index e78f808efa..462ee6d936 100644 --- a/interface/web/mail/lib/lang/en_mail_user_filter.lng +++ b/interface/web/mail/lib/lang/en_mail_user_filter.lng @@ -11,6 +11,7 @@ $wb["limit_mailfilter_txt"] = 'The max. number of mailfilters is reached.'; $wb['subject_txt'] = 'Subject'; $wb['from_txt'] = 'From'; $wb['to_txt'] = 'To'; +$wb['list_id_txt'] = 'List ID'; $wb['contains_txt'] = 'Contains'; $wb['is_txt'] = 'Is'; $wb['begins_with_txt'] = 'Begins with'; diff --git a/interface/web/mail/lib/lang/es_mail_user_filter.lng b/interface/web/mail/lib/lang/es_mail_user_filter.lng index 94100ef7a3..ed221d5cb3 100755 --- a/interface/web/mail/lib/lang/es_mail_user_filter.lng +++ b/interface/web/mail/lib/lang/es_mail_user_filter.lng @@ -25,5 +25,6 @@ $wb['subject_txt'] = 'Asunto'; $wb['target_error_regex'] = 'El destino solo puede contener los siguientes caracteres: a-z, 0-9, -, ., _, y {espacio}'; $wb['target_txt'] = 'Carpeta'; $wb['to_txt'] = 'Para'; +$wb['list_id_txt'] = 'List ID'; $wb['move_to_txt'] = 'Move to'; ?> diff --git a/interface/web/mail/lib/lang/fi_mail_user_filter.lng b/interface/web/mail/lib/lang/fi_mail_user_filter.lng index 1a4e7218a2..1238dc86fd 100755 --- a/interface/web/mail/lib/lang/fi_mail_user_filter.lng +++ b/interface/web/mail/lib/lang/fi_mail_user_filter.lng @@ -11,6 +11,7 @@ $wb['limit_mailfilter_txt'] = 'The max. number of mailfilters is reached.'; $wb['subject_txt'] = 'Subject'; $wb['from_txt'] = 'From'; $wb['to_txt'] = 'To'; +$wb['list_id_txt'] = 'List ID'; $wb['contains_txt'] = 'Contains'; $wb['is_txt'] = 'Is'; $wb['begins_with_txt'] = 'Begins with'; diff --git a/interface/web/mail/lib/lang/fr_mail_user_filter.lng b/interface/web/mail/lib/lang/fr_mail_user_filter.lng index 49c5076d95..b5cacf2e98 100644 --- a/interface/web/mail/lib/lang/fr_mail_user_filter.lng +++ b/interface/web/mail/lib/lang/fr_mail_user_filter.lng @@ -11,6 +11,7 @@ $wb['limit_mailfilter_txt'] = 'Le nombre max de filtres e-mail est atteint.'; $wb['subject_txt'] = 'Sujet'; $wb['from_txt'] = 'De'; $wb['to_txt'] = 'Pour'; +$wb['list_id_txt'] = 'List ID'; $wb['contains_txt'] = 'Contient'; $wb['is_txt'] = 'Est'; $wb['begins_with_txt'] = 'Commence par'; diff --git a/interface/web/mail/lib/lang/id_mail_user_filter.lng b/interface/web/mail/lib/lang/id_mail_user_filter.lng index 0def30d1a8..93f45979f3 100644 --- a/interface/web/mail/lib/lang/id_mail_user_filter.lng +++ b/interface/web/mail/lib/lang/id_mail_user_filter.lng @@ -11,6 +11,7 @@ $wb['limit_mailfilter_txt'] = 'The max. number of mailfilters is reached.'; $wb['subject_txt'] = 'Subject'; $wb['from_txt'] = 'From'; $wb['to_txt'] = 'To'; +$wb['list_id_txt'] = 'List ID'; $wb['contains_txt'] = 'Contains'; $wb['is_txt'] = 'Is'; $wb['begins_with_txt'] = 'Begins with'; diff --git a/interface/web/mail/lib/lang/ja_mail_user_filter.lng b/interface/web/mail/lib/lang/ja_mail_user_filter.lng index 847640fee4..8ee3801cc8 100644 --- a/interface/web/mail/lib/lang/ja_mail_user_filter.lng +++ b/interface/web/mail/lib/lang/ja_mail_user_filter.lng @@ -11,6 +11,7 @@ $wb['limit_mailfilter_txt'] = 'The max. number of mailfilters is reached.'; $wb['subject_txt'] = 'Subject'; $wb['from_txt'] = 'From'; $wb['to_txt'] = 'To'; +$wb['list_id_txt'] = 'List ID'; $wb['contains_txt'] = 'Contains'; $wb['is_txt'] = 'Is'; $wb['begins_with_txt'] = 'Begins with'; diff --git a/interface/web/mail/lib/lang/pt_mail_user_filter.lng b/interface/web/mail/lib/lang/pt_mail_user_filter.lng index 42a7481d70..906c27ecd2 100644 --- a/interface/web/mail/lib/lang/pt_mail_user_filter.lng +++ b/interface/web/mail/lib/lang/pt_mail_user_filter.lng @@ -11,6 +11,7 @@ $wb['limit_mailfilter_txt'] = 'The max. number of mailfilters is reached.'; $wb['subject_txt'] = 'Subject'; $wb['from_txt'] = 'From'; $wb['to_txt'] = 'To'; +$wb['list_id_txt'] = 'List ID'; $wb['contains_txt'] = 'Contains'; $wb['is_txt'] = 'Is'; $wb['begins_with_txt'] = 'Begins with'; diff --git a/interface/web/mail/lib/lang/ro_mail_user_filter.lng b/interface/web/mail/lib/lang/ro_mail_user_filter.lng index 7c5c72ad72..22435d9e91 100644 --- a/interface/web/mail/lib/lang/ro_mail_user_filter.lng +++ b/interface/web/mail/lib/lang/ro_mail_user_filter.lng @@ -11,6 +11,7 @@ $wb['limit_mailfilter_txt'] = 'The max. number of mailfilters is reached.'; $wb['subject_txt'] = 'Subject'; $wb['from_txt'] = 'From'; $wb['to_txt'] = 'To'; +$wb['list_id_txt'] = 'List ID'; $wb['contains_txt'] = 'Contains'; $wb['is_txt'] = 'Is'; $wb['begins_with_txt'] = 'Begins with'; diff --git a/interface/web/mail/lib/lang/sk_mail_user_filter.lng b/interface/web/mail/lib/lang/sk_mail_user_filter.lng index 20904653c6..7546cd6afa 100644 --- a/interface/web/mail/lib/lang/sk_mail_user_filter.lng +++ b/interface/web/mail/lib/lang/sk_mail_user_filter.lng @@ -11,6 +11,7 @@ $wb['limit_mailfilter_txt'] = 'The max. number of mailfilters is reached.'; $wb['subject_txt'] = 'Subject'; $wb['from_txt'] = 'From'; $wb['to_txt'] = 'To'; +$wb['list_id_txt'] = 'List ID'; $wb['contains_txt'] = 'Contains'; $wb['is_txt'] = 'Is'; $wb['begins_with_txt'] = 'Begins with'; diff --git a/interface/web/mailuser/form/mail_user_filter.tform.php b/interface/web/mailuser/form/mail_user_filter.tform.php index adf7716317..9fdd8bdfc0 100644 --- a/interface/web/mailuser/form/mail_user_filter.tform.php +++ b/interface/web/mailuser/form/mail_user_filter.tform.php @@ -83,7 +83,7 @@ $form["tabs"]['filter'] = array ( 'datatype' => 'VARCHAR', 'formtype' => 'SELECT', 'default' => '', - 'value' => array('Subject' => 'subject_txt', 'From'=>'from_txt', 'To'=>'to_txt') + 'value' => array('Subject' => 'subject_txt', 'From'=>'from_txt', 'To'=>'to_txt', 'List-Id'=>'list_id_txt') ), 'op' => array ( 'datatype' => 'VARCHAR', diff --git a/interface/web/mailuser/lib/lang/ar_mail_user_filter.lng b/interface/web/mailuser/lib/lang/ar_mail_user_filter.lng index 4069a15351..9ac4be357e 100644 --- a/interface/web/mailuser/lib/lang/ar_mail_user_filter.lng +++ b/interface/web/mailuser/lib/lang/ar_mail_user_filter.lng @@ -11,6 +11,7 @@ $wb['limit_mailfilter_txt'] = 'The max. number of mailfilters is reached.'; $wb['subject_txt'] = 'Subject'; $wb['from_txt'] = 'From'; $wb['to_txt'] = 'To'; +$wb['list_id_txt'] = 'List ID'; $wb['contains_txt'] = 'Contains'; $wb['is_txt'] = 'Is'; $wb['begins_with_txt'] = 'Begins with'; diff --git a/interface/web/mailuser/lib/lang/bg_mail_user_filter.lng b/interface/web/mailuser/lib/lang/bg_mail_user_filter.lng index 4069a15351..9ac4be357e 100644 --- a/interface/web/mailuser/lib/lang/bg_mail_user_filter.lng +++ b/interface/web/mailuser/lib/lang/bg_mail_user_filter.lng @@ -11,6 +11,7 @@ $wb['limit_mailfilter_txt'] = 'The max. number of mailfilters is reached.'; $wb['subject_txt'] = 'Subject'; $wb['from_txt'] = 'From'; $wb['to_txt'] = 'To'; +$wb['list_id_txt'] = 'List ID'; $wb['contains_txt'] = 'Contains'; $wb['is_txt'] = 'Is'; $wb['begins_with_txt'] = 'Begins with'; diff --git a/interface/web/mailuser/lib/lang/ca_mail_user_filter.lng b/interface/web/mailuser/lib/lang/ca_mail_user_filter.lng index 4069a15351..9ac4be357e 100644 --- a/interface/web/mailuser/lib/lang/ca_mail_user_filter.lng +++ b/interface/web/mailuser/lib/lang/ca_mail_user_filter.lng @@ -11,6 +11,7 @@ $wb['limit_mailfilter_txt'] = 'The max. number of mailfilters is reached.'; $wb['subject_txt'] = 'Subject'; $wb['from_txt'] = 'From'; $wb['to_txt'] = 'To'; +$wb['list_id_txt'] = 'List ID'; $wb['contains_txt'] = 'Contains'; $wb['is_txt'] = 'Is'; $wb['begins_with_txt'] = 'Begins with'; diff --git a/interface/web/mailuser/lib/lang/dk_mail_user_filter.lng b/interface/web/mailuser/lib/lang/dk_mail_user_filter.lng index e164d54bb2..0a92f580a1 100644 --- a/interface/web/mailuser/lib/lang/dk_mail_user_filter.lng +++ b/interface/web/mailuser/lib/lang/dk_mail_user_filter.lng @@ -11,6 +11,7 @@ $wb['limit_mailfilter_txt'] = 'Max. antal af mailfiltere er nÃ¥et.'; $wb['subject_txt'] = 'Emne'; $wb['from_txt'] = 'Fra'; $wb['to_txt'] = 'Til'; +$wb['list_id_txt'] = 'List ID'; $wb['contains_txt'] = 'Indeholder'; $wb['is_txt'] = 'Er'; $wb['begins_with_txt'] = 'Begynder med'; diff --git a/interface/web/mailuser/lib/lang/el_mail_user_filter.lng b/interface/web/mailuser/lib/lang/el_mail_user_filter.lng index 4069a15351..9ac4be357e 100644 --- a/interface/web/mailuser/lib/lang/el_mail_user_filter.lng +++ b/interface/web/mailuser/lib/lang/el_mail_user_filter.lng @@ -11,6 +11,7 @@ $wb['limit_mailfilter_txt'] = 'The max. number of mailfilters is reached.'; $wb['subject_txt'] = 'Subject'; $wb['from_txt'] = 'From'; $wb['to_txt'] = 'To'; +$wb['list_id_txt'] = 'List ID'; $wb['contains_txt'] = 'Contains'; $wb['is_txt'] = 'Is'; $wb['begins_with_txt'] = 'Begins with'; 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 23451b74db..c26150ba1d 100644 --- a/interface/web/mailuser/lib/lang/en_mail_user_filter.lng +++ b/interface/web/mailuser/lib/lang/en_mail_user_filter.lng @@ -12,6 +12,7 @@ $wb['mailbox_filter_txt'] = 'Mailbox filter'; $wb['subject_txt'] = 'Subject'; $wb['from_txt'] = 'From'; $wb['to_txt'] = 'To'; +$wb['list_id_txt'] = 'List ID'; $wb['contains_txt'] = 'Contains'; $wb['is_txt'] = 'Is'; $wb['begins_with_txt'] = 'Begins with'; diff --git a/interface/web/mailuser/lib/lang/es_mail_user_filter.lng b/interface/web/mailuser/lib/lang/es_mail_user_filter.lng index 426ad1ad01..b8a19359f5 100755 --- a/interface/web/mailuser/lib/lang/es_mail_user_filter.lng +++ b/interface/web/mailuser/lib/lang/es_mail_user_filter.lng @@ -17,5 +17,6 @@ $wb['subject_txt'] = 'Asunto'; $wb['target_error_regex'] = 'La carpeta solo debe contener estos caracteres: a-z, 0-9, -, ., _, y {espacio}'; $wb['target_txt'] = 'Carpeta'; $wb['to_txt'] = 'Para'; +$wb['list_id_txt'] = 'List ID'; $wb['mailbox_filter_txt'] = 'Mailbox filter'; ?> diff --git a/interface/web/mailuser/lib/lang/fi_mail_user_filter.lng b/interface/web/mailuser/lib/lang/fi_mail_user_filter.lng index 4069a15351..9ac4be357e 100644 --- a/interface/web/mailuser/lib/lang/fi_mail_user_filter.lng +++ b/interface/web/mailuser/lib/lang/fi_mail_user_filter.lng @@ -11,6 +11,7 @@ $wb['limit_mailfilter_txt'] = 'The max. number of mailfilters is reached.'; $wb['subject_txt'] = 'Subject'; $wb['from_txt'] = 'From'; $wb['to_txt'] = 'To'; +$wb['list_id_txt'] = 'List ID'; $wb['contains_txt'] = 'Contains'; $wb['is_txt'] = 'Is'; $wb['begins_with_txt'] = 'Begins with'; diff --git a/interface/web/mailuser/lib/lang/hu_mail_user_filter.lng b/interface/web/mailuser/lib/lang/hu_mail_user_filter.lng index 4069a15351..9ac4be357e 100644 --- a/interface/web/mailuser/lib/lang/hu_mail_user_filter.lng +++ b/interface/web/mailuser/lib/lang/hu_mail_user_filter.lng @@ -11,6 +11,7 @@ $wb['limit_mailfilter_txt'] = 'The max. number of mailfilters is reached.'; $wb['subject_txt'] = 'Subject'; $wb['from_txt'] = 'From'; $wb['to_txt'] = 'To'; +$wb['list_id_txt'] = 'List ID'; $wb['contains_txt'] = 'Contains'; $wb['is_txt'] = 'Is'; $wb['begins_with_txt'] = 'Begins with'; diff --git a/interface/web/mailuser/lib/lang/id_mail_user_filter.lng b/interface/web/mailuser/lib/lang/id_mail_user_filter.lng index 4069a15351..9ac4be357e 100644 --- a/interface/web/mailuser/lib/lang/id_mail_user_filter.lng +++ b/interface/web/mailuser/lib/lang/id_mail_user_filter.lng @@ -11,6 +11,7 @@ $wb['limit_mailfilter_txt'] = 'The max. number of mailfilters is reached.'; $wb['subject_txt'] = 'Subject'; $wb['from_txt'] = 'From'; $wb['to_txt'] = 'To'; +$wb['list_id_txt'] = 'List ID'; $wb['contains_txt'] = 'Contains'; $wb['is_txt'] = 'Is'; $wb['begins_with_txt'] = 'Begins with'; diff --git a/interface/web/mailuser/lib/lang/ja_mail_user_filter.lng b/interface/web/mailuser/lib/lang/ja_mail_user_filter.lng index 4069a15351..9ac4be357e 100644 --- a/interface/web/mailuser/lib/lang/ja_mail_user_filter.lng +++ b/interface/web/mailuser/lib/lang/ja_mail_user_filter.lng @@ -11,6 +11,7 @@ $wb['limit_mailfilter_txt'] = 'The max. number of mailfilters is reached.'; $wb['subject_txt'] = 'Subject'; $wb['from_txt'] = 'From'; $wb['to_txt'] = 'To'; +$wb['list_id_txt'] = 'List ID'; $wb['contains_txt'] = 'Contains'; $wb['is_txt'] = 'Is'; $wb['begins_with_txt'] = 'Begins with'; diff --git a/interface/web/mailuser/lib/lang/pl_mail_user_filter.lng b/interface/web/mailuser/lib/lang/pl_mail_user_filter.lng index 4069a15351..9ac4be357e 100644 --- a/interface/web/mailuser/lib/lang/pl_mail_user_filter.lng +++ b/interface/web/mailuser/lib/lang/pl_mail_user_filter.lng @@ -11,6 +11,7 @@ $wb['limit_mailfilter_txt'] = 'The max. number of mailfilters is reached.'; $wb['subject_txt'] = 'Subject'; $wb['from_txt'] = 'From'; $wb['to_txt'] = 'To'; +$wb['list_id_txt'] = 'List ID'; $wb['contains_txt'] = 'Contains'; $wb['is_txt'] = 'Is'; $wb['begins_with_txt'] = 'Begins with'; diff --git a/interface/web/mailuser/lib/lang/pt_mail_user_filter.lng b/interface/web/mailuser/lib/lang/pt_mail_user_filter.lng index 4069a15351..9ac4be357e 100644 --- a/interface/web/mailuser/lib/lang/pt_mail_user_filter.lng +++ b/interface/web/mailuser/lib/lang/pt_mail_user_filter.lng @@ -11,6 +11,7 @@ $wb['limit_mailfilter_txt'] = 'The max. number of mailfilters is reached.'; $wb['subject_txt'] = 'Subject'; $wb['from_txt'] = 'From'; $wb['to_txt'] = 'To'; +$wb['list_id_txt'] = 'List ID'; $wb['contains_txt'] = 'Contains'; $wb['is_txt'] = 'Is'; $wb['begins_with_txt'] = 'Begins with'; diff --git a/interface/web/mailuser/lib/lang/ro_mail_user_filter.lng b/interface/web/mailuser/lib/lang/ro_mail_user_filter.lng index 4069a15351..9ac4be357e 100644 --- a/interface/web/mailuser/lib/lang/ro_mail_user_filter.lng +++ b/interface/web/mailuser/lib/lang/ro_mail_user_filter.lng @@ -11,6 +11,7 @@ $wb['limit_mailfilter_txt'] = 'The max. number of mailfilters is reached.'; $wb['subject_txt'] = 'Subject'; $wb['from_txt'] = 'From'; $wb['to_txt'] = 'To'; +$wb['list_id_txt'] = 'List ID'; $wb['contains_txt'] = 'Contains'; $wb['is_txt'] = 'Is'; $wb['begins_with_txt'] = 'Begins with'; diff --git a/interface/web/mailuser/lib/lang/sk_mail_user_filter.lng b/interface/web/mailuser/lib/lang/sk_mail_user_filter.lng index 4069a15351..9ac4be357e 100644 --- a/interface/web/mailuser/lib/lang/sk_mail_user_filter.lng +++ b/interface/web/mailuser/lib/lang/sk_mail_user_filter.lng @@ -11,6 +11,7 @@ $wb['limit_mailfilter_txt'] = 'The max. number of mailfilters is reached.'; $wb['subject_txt'] = 'Subject'; $wb['from_txt'] = 'From'; $wb['to_txt'] = 'To'; +$wb['list_id_txt'] = 'List ID'; $wb['contains_txt'] = 'Contains'; $wb['is_txt'] = 'Is'; $wb['begins_with_txt'] = 'Begins with'; -- GitLab From 141aec78b1ee07ff099d708ee5f34df5121b366f Mon Sep 17 00:00:00 2001 From: Marius Burkard <m.burkard@pixcept.de> Date: Fri, 22 Nov 2019 15:04:54 +0100 Subject: [PATCH 214/215] - fixed using fullchain instead of two files on acme.sh and apache > 2.4.8 --- server/lib/classes/letsencrypt.inc.php | 13 ++++++++++--- 1 file changed, 10 insertions(+), 3 deletions(-) diff --git a/server/lib/classes/letsencrypt.inc.php b/server/lib/classes/letsencrypt.inc.php index 291ee41b12..f60ad040e7 100644 --- a/server/lib/classes/letsencrypt.inc.php +++ b/server/lib/classes/letsencrypt.inc.php @@ -53,7 +53,8 @@ class letsencrypt { } } - public function get_acme_command($domains, $key_file, $bundle_file, $cert_file) { + public function get_acme_command($domains, $key_file, $bundle_file, $cert_file, $server_type = 'apache') { + global $app; $letsencrypt = $this->get_acme_script(); @@ -66,8 +67,14 @@ class letsencrypt { if($cmd == '') { return false; } + + if($server_type != 'apache' || version_compare($app->system->getapacheversion(true), '2.4.8', '>=')) { + $cert_arg = '--fullchain-file ' . escapeshellarg($cert_file); + } else { + $cert_arg = '--fullchain-file ' . escapeshellarg($bundle_file) . ' --cert-file ' . escapeshellarg($cert_file); + } - $cmd = 'R=0 ; C=0 ; ' . $letsencrypt . ' --issue ' . $cmd . ' -w /usr/local/ispconfig/interface/acme ; R=$? ; if [[ $R -eq 0 || $R -eq 2 ]] ; then ' . $letsencrypt . ' --install-cert ' . $cmd . ' --key-file ' . escapeshellarg($key_file) . ' --fullchain-file ' . escapeshellarg($bundle_file) . ' --cert-file ' . escapeshellarg($cert_file) . ' --reloadcmd ' . escapeshellarg($this->get_reload_command()) . '; C=$? ; fi ; if [[ $C -eq 0 ]] ; then exit $R ; else exit $C ; fi'; + $cmd = 'R=0 ; C=0 ; ' . $letsencrypt . ' --issue ' . $cmd . ' -w /usr/local/ispconfig/interface/acme ; R=$? ; if [[ $R -eq 0 || $R -eq 2 ]] ; then ' . $letsencrypt . ' --install-cert ' . $cmd . ' --key-file ' . escapeshellarg($key_file) . ' ' . $cert_arg . ' --reloadcmd ' . escapeshellarg($this->get_reload_command()) . '; C=$? ; fi ; if [[ $C -eq 0 ]] ; then exit $R ; else exit $C ; fi'; return $cmd; } @@ -393,7 +400,7 @@ class letsencrypt { $letsencrypt_cmd = ''; $allow_return_codes = null; if($use_acme) { - $letsencrypt_cmd = $this->get_acme_command($temp_domains, $key_file, $bundle_file, $crt_file); + $letsencrypt_cmd = $this->get_acme_command($temp_domains, $key_file, $bundle_file, $crt_file, $server_type); $allow_return_codes = array(2); } else { $letsencrypt_cmd = $this->get_certbot_command($temp_domains); -- GitLab From 26009352ab78589458b85a8ab4f585b7847e9b1e Mon Sep 17 00:00:00 2001 From: Marius Burkard <m.burkard@pixcept.de> Date: Fri, 22 Nov 2019 19:35:30 +0100 Subject: [PATCH 215/215] - fixed typo (amavis instead of amavisd), fixes #5453 --- install/lib/installer_base.lib.php | 2 +- install/lib/update.lib.php | 2 +- server/plugins-available/postfix_server_plugin.inc.php | 3 +-- 3 files changed, 3 insertions(+), 4 deletions(-) diff --git a/install/lib/installer_base.lib.php b/install/lib/installer_base.lib.php index 4f72c6920b..513858ca68 100644 --- a/install/lib/installer_base.lib.php +++ b/install/lib/installer_base.lib.php @@ -326,7 +326,7 @@ class installer_base { $tpl_ini_array['web']['php_ini_path_cgi'] = $conf['apache']['php_ini_path_cgi']; $tpl_ini_array['mail']['pop3_imap_daemon'] = ($conf['dovecot']['installed'] == true)?'dovecot':'courier'; $tpl_ini_array['mail']['mail_filter_syntax'] = ($conf['dovecot']['installed'] == true)?'sieve':'maildrop'; - $tpl_ini_array['mail']['content_filter'] = @($conf['rspamd']['installed']) ? 'rspamd' : 'amavis'; + $tpl_ini_array['mail']['content_filter'] = @($conf['rspamd']['installed']) ? 'rspamd' : 'amavisd'; $tpl_ini_array['mail']['rspamd_available'] = @($conf['rspamd']['installed']) ? 'y' : 'n'; $tpl_ini_array['dns']['bind_user'] = $conf['bind']['bind_user']; $tpl_ini_array['dns']['bind_group'] = $conf['bind']['bind_group']; diff --git a/install/lib/update.lib.php b/install/lib/update.lib.php index 9deb8ca10e..4dcb31cff1 100644 --- a/install/lib/update.lib.php +++ b/install/lib/update.lib.php @@ -336,7 +336,7 @@ function updateDbAndIni() { $tpl_ini_array['mail']['pop3_imap_daemon'] = ($conf['dovecot']['installed'] == true)?'dovecot':'courier'; $tpl_ini_array['mail']['mail_filter_syntax'] = ($conf['dovecot']['installed'] == true)?'sieve':'maildrop'; // do not switch to rspamd automatically! - // $tpl_ini_array['mail']['content_filter'] = @($conf['rspamd']['installed']) ? 'rspamd' : 'amavis'; + // $tpl_ini_array['mail']['content_filter'] = @($conf['rspamd']['installed']) ? 'rspamd' : 'amavisd'; $tpl_ini_array['mail']['rspamd_available'] = @($conf['rspamd']['installed']) ? 'y' : 'n'; $tpl_ini_array['dns']['bind_user'] = $conf['bind']['bind_user']; $tpl_ini_array['dns']['bind_group'] = $conf['bind']['bind_group']; diff --git a/server/plugins-available/postfix_server_plugin.inc.php b/server/plugins-available/postfix_server_plugin.inc.php index 77ac689077..ad48e3dee8 100644 --- a/server/plugins-available/postfix_server_plugin.inc.php +++ b/server/plugins-available/postfix_server_plugin.inc.php @@ -215,8 +215,7 @@ class postfix_server_plugin { fclose($fpp); fclose($fps); unset($dkim_domains); - } - if($mail_config['content_filter'] == 'amavisd'){ + } else { exec("postconf -X 'smtpd_milters'"); exec("postconf -X 'milter_protocol'"); exec("postconf -X 'milter_mail_macros'"); -- GitLab