Commit 72695f03 authored by tbrehm's avatar tbrehm
Browse files

Merged Revisions 3771-3801 from stable branch.

parent a126d73f
...@@ -100,7 +100,7 @@ class installer_dist extends installer_base { ...@@ -100,7 +100,7 @@ class installer_dist extends installer_base {
'smtpd_tls_security_level = may', 'smtpd_tls_security_level = may',
'smtpd_tls_cert_file = '.$config_dir.'/smtpd.cert', 'smtpd_tls_cert_file = '.$config_dir.'/smtpd.cert',
'smtpd_tls_key_file = '.$config_dir.'/smtpd.key', 'smtpd_tls_key_file = '.$config_dir.'/smtpd.key',
'transport_maps = proxy:mysql:'.$config_dir.'/mysql-virtual_transports.cf', 'transport_maps = hash:/var/lib/mailman/data/transport-mailman, proxy:mysql:'.$config_dir.'/mysql-virtual_transports.cf',
'relay_domains = mysql:'.$config_dir.'/mysql-virtual_relaydomains.cf', 'relay_domains = mysql:'.$config_dir.'/mysql-virtual_relaydomains.cf',
'relay_recipient_maps = mysql:'.$config_dir.'/mysql-virtual_relayrecipientmaps.cf', 'relay_recipient_maps = mysql:'.$config_dir.'/mysql-virtual_relayrecipientmaps.cf',
'proxy_read_maps = $local_recipient_maps $mydestination $virtual_alias_maps $virtual_alias_domains $virtual_mailbox_maps $virtual_mailbox_domains $relay_recipient_maps $relay_domains $canonical_maps $sender_canonical_maps $recipient_canonical_maps $relocated_maps $transport_maps $mynetworks $virtual_mailbox_limit_maps', 'proxy_read_maps = $local_recipient_maps $mydestination $virtual_alias_maps $virtual_alias_domains $virtual_mailbox_maps $virtual_mailbox_domains $relay_recipient_maps $relay_domains $canonical_maps $sender_canonical_maps $recipient_canonical_maps $relocated_maps $transport_maps $mynetworks $virtual_mailbox_limit_maps',
......
...@@ -97,7 +97,7 @@ class installer extends installer_base ...@@ -97,7 +97,7 @@ class installer extends installer_base
'smtpd_tls_security_level = may', 'smtpd_tls_security_level = may',
'smtpd_tls_cert_file = '.$config_dir.'/smtpd.cert', 'smtpd_tls_cert_file = '.$config_dir.'/smtpd.cert',
'smtpd_tls_key_file = '.$config_dir.'/smtpd.key', 'smtpd_tls_key_file = '.$config_dir.'/smtpd.key',
'transport_maps = proxy:mysql:'.$config_dir.'/mysql-virtual_transports.cf', 'transport_maps = hash:/var/lib/mailman/data/transport-mailman, proxy:mysql:'.$config_dir.'/mysql-virtual_transports.cf',
'relay_domains = mysql:'.$config_dir.'/mysql-virtual_relaydomains.cf', 'relay_domains = mysql:'.$config_dir.'/mysql-virtual_relaydomains.cf',
'proxy_read_maps = $local_recipient_maps $mydestination $virtual_alias_maps $virtual_alias_domains $virtual_mailbox_maps $virtual_mailbox_domains $relay_recipient_maps $relay_domains $canonical_maps $sender_canonical_maps $recipient_canonical_maps $relocated_maps $transport_maps $mynetworks $virtual_mailbox_limit_maps', 'proxy_read_maps = $local_recipient_maps $mydestination $virtual_alias_maps $virtual_alias_domains $virtual_mailbox_maps $virtual_mailbox_domains $relay_recipient_maps $relay_domains $canonical_maps $sender_canonical_maps $recipient_canonical_maps $relocated_maps $transport_maps $mynetworks $virtual_mailbox_limit_maps',
'smtpd_sender_restrictions = check_sender_access mysql:'.$config_dir.'/mysql-virtual_sender.cf', 'smtpd_sender_restrictions = check_sender_access mysql:'.$config_dir.'/mysql-virtual_sender.cf',
......
...@@ -114,7 +114,7 @@ class installer_dist extends installer_base { ...@@ -114,7 +114,7 @@ class installer_dist extends installer_base {
'smtpd_tls_security_level = may', 'smtpd_tls_security_level = may',
'smtpd_tls_cert_file = '.$config_dir.'/smtpd.cert', 'smtpd_tls_cert_file = '.$config_dir.'/smtpd.cert',
'smtpd_tls_key_file = '.$config_dir.'/smtpd.key', 'smtpd_tls_key_file = '.$config_dir.'/smtpd.key',
'transport_maps = proxy:mysql:'.$config_dir.'/mysql-virtual_transports.cf', 'transport_maps = hash:/var/lib/mailman/data/transport-mailman, proxy:mysql:'.$config_dir.'/mysql-virtual_transports.cf',
'relay_domains = mysql:'.$config_dir.'/mysql-virtual_relaydomains.cf', 'relay_domains = mysql:'.$config_dir.'/mysql-virtual_relaydomains.cf',
'relay_recipient_maps = mysql:'.$config_dir.'/mysql-virtual_relayrecipientmaps.cf', 'relay_recipient_maps = mysql:'.$config_dir.'/mysql-virtual_relayrecipientmaps.cf',
'proxy_read_maps = $local_recipient_maps $mydestination $virtual_alias_maps $virtual_alias_domains $virtual_mailbox_maps $virtual_mailbox_domains $relay_recipient_maps $relay_domains $canonical_maps $sender_canonical_maps $recipient_canonical_maps $relocated_maps $transport_maps $mynetworks $virtual_mailbox_limit_maps', 'proxy_read_maps = $local_recipient_maps $mydestination $virtual_alias_maps $virtual_alias_domains $virtual_mailbox_maps $virtual_mailbox_domains $relay_recipient_maps $relay_domains $canonical_maps $sender_canonical_maps $recipient_canonical_maps $relocated_maps $transport_maps $mynetworks $virtual_mailbox_limit_maps',
......
...@@ -566,6 +566,23 @@ class installer_base { ...@@ -566,6 +566,23 @@ class installer_base {
} }
} }
} }
$config_dir = $conf['mailman']['config_dir'].'/';
$full_file_name = $config_dir.'virtual_to_transport.sh';
//* Backup exiting virtual_to_transport.sh script
if(is_file($full_file_name)) {
copy($full_file_name, $config_dir.'virtual_to_transport.sh~');
}
copy('tpl/mailman-virtual_to_transport.sh',$full_file_name);
chgrp($full_file_name,'list');
chmod($full_file_name,0750);
if(!is_file('/var/lib/mailman/data/transport-mailman')) touch('/var/lib/mailman/data/transport-mailman');
exec('/usr/sbin/postmap /var/lib/mailman/data/transport-mailman');
exec('/usr/lib/mailman/bin/genaliases');
$virtual_domains = ''; $virtual_domains = '';
if($status == 'update') if($status == 'update')
...@@ -681,7 +698,7 @@ class installer_base { ...@@ -681,7 +698,7 @@ class installer_base {
'smtpd_tls_security_level = may', 'smtpd_tls_security_level = may',
'smtpd_tls_cert_file = '.$config_dir.'/smtpd.cert', 'smtpd_tls_cert_file = '.$config_dir.'/smtpd.cert',
'smtpd_tls_key_file = '.$config_dir.'/smtpd.key', 'smtpd_tls_key_file = '.$config_dir.'/smtpd.key',
'transport_maps = proxy:mysql:'.$config_dir.'/mysql-virtual_transports.cf', 'transport_maps = hash:/var/lib/mailman/data/transport-mailman, proxy:mysql:'.$config_dir.'/mysql-virtual_transports.cf',
'relay_domains = mysql:'.$config_dir.'/mysql-virtual_relaydomains.cf', 'relay_domains = mysql:'.$config_dir.'/mysql-virtual_relaydomains.cf',
'relay_recipient_maps = mysql:'.$config_dir.'/mysql-virtual_relayrecipientmaps.cf', 'relay_recipient_maps = mysql:'.$config_dir.'/mysql-virtual_relayrecipientmaps.cf',
'proxy_read_maps = $local_recipient_maps $mydestination $virtual_alias_maps $virtual_alias_domains $virtual_mailbox_maps $virtual_mailbox_domains $relay_recipient_maps $relay_domains $canonical_maps $sender_canonical_maps $recipient_canonical_maps $relocated_maps $transport_maps $mynetworks $virtual_mailbox_limit_maps', 'proxy_read_maps = $local_recipient_maps $mydestination $virtual_alias_maps $virtual_alias_domains $virtual_mailbox_maps $virtual_mailbox_domains $relay_recipient_maps $relay_domains $canonical_maps $sender_canonical_maps $recipient_canonical_maps $relocated_maps $transport_maps $mynetworks $virtual_mailbox_limit_maps',
......
ALTER TABLE `client` CHANGE `web_php_options` `web_php_options` VARCHAR( 255 ) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL DEFAULT 'no,fast-cgi,cgi,mod,suphp,php-fpm';
\ No newline at end of file
...@@ -185,7 +185,7 @@ CREATE TABLE `client` ( ...@@ -185,7 +185,7 @@ CREATE TABLE `client` (
`limit_web_ip` text, `limit_web_ip` text,
`limit_web_domain` int(11) NOT NULL DEFAULT '-1', `limit_web_domain` int(11) NOT NULL DEFAULT '-1',
`limit_web_quota` int(11) NOT NULL DEFAULT '-1', `limit_web_quota` int(11) NOT NULL DEFAULT '-1',
`web_php_options` varchar(255) NOT NULL DEFAULT 'no,fast-cgi,cgi,mod,suphp', `web_php_options` varchar(255) NOT NULL DEFAULT 'no,fast-cgi,cgi,mod,suphp,php-fpm',
`limit_cgi` enum('n','y') NOT NULL DEFAULT 'n', `limit_cgi` enum('n','y') NOT NULL DEFAULT 'n',
`limit_ssi` 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_perl` enum('n','y') NOT NULL DEFAULT 'n',
......
...@@ -9,7 +9,7 @@ user = {fpm_user} ...@@ -9,7 +9,7 @@ user = {fpm_user}
group = {fpm_group} group = {fpm_group}
pm = dynamic pm = dynamic
pm.max_children = 10 pm.max_children = 50
pm.start_servers = 2 pm.start_servers = 2
pm.min_spare_servers = 1 pm.min_spare_servers = 1
pm.max_spare_servers = 5 pm.max_spare_servers = 5
......
#!/bin/sh
sed -r -e 's/(^[^#]\S+\s+).+$/\1local/' $1 > /var/lib/mailman/data/transport-mailman
/usr/sbin/postmap /var/lib/mailman/data/transport-mailman
\ No newline at end of file
...@@ -102,5 +102,7 @@ POSTFIX_STYLE_VIRTUAL_DOMAINS = [{virtual_domains}] ...@@ -102,5 +102,7 @@ POSTFIX_STYLE_VIRTUAL_DOMAINS = [{virtual_domains}]
# http://www.jamesh.id.au/articles/mailman-spamassassin/ # http://www.jamesh.id.au/articles/mailman-spamassassin/
# GLOBAL_PIPELINE.insert(1, 'SpamAssassin') # GLOBAL_PIPELINE.insert(1, 'SpamAssassin')
POSTFIX_MAP_CMD = '/etc/mailman/virtual_to_transport.sh'
# Note - if you're looking for something that is imported from mm_cfg, but you # Note - if you're looking for something that is imported from mm_cfg, but you
# didn't find it above, it's probably in /usr/lib/mailman/Mailman/Defaults.py. # didn't find it above, it's probably in /usr/lib/mailman/Mailman/Defaults.py.
\ No newline at end of file
...@@ -45,6 +45,7 @@ class db extends mysqli ...@@ -45,6 +45,7 @@ class db extends mysqli
public $errorMessage = ''; // last error message public $errorMessage = ''; // last error message
private $errorLocation = '';// last error location private $errorLocation = '';// last error location
public $show_error_messages = true; // false in server, true in interface public $show_error_messages = true; // false in server, true in interface
private $isConnected = false; // needed to know if we have a valid mysqli object from the constructor
// constructor // constructor
public function __construct($prefix = '') { public function __construct($prefix = '') {
...@@ -58,12 +59,20 @@ class db extends mysqli ...@@ -58,12 +59,20 @@ class db extends mysqli
$this->dbNewLink = $conf[$prefix.'db_new_link']; $this->dbNewLink = $conf[$prefix.'db_new_link'];
$this->dbClientFlags = $conf[$prefix.'db_client_flags']; $this->dbClientFlags = $conf[$prefix.'db_client_flags'];
parent::__construct($conf[$prefix.'db_host'], $conf[$prefix.'db_user'],$conf[$prefix.'db_password'],$conf[$prefix.'db_database']); parent::__construct($conf[$prefix.'db_host'], $conf[$prefix.'db_user'],$conf[$prefix.'db_password'],$conf[$prefix.'db_database']);
if ($this->connect_error) { $try = 0;
while(!is_null($this->connect_error) && $try < 5) {
if($try > 0) sleep(1);
$try++;
$this->updateError('DB::__construct'); $this->updateError('DB::__construct');
return false;
} else { parent::__construct($conf[$prefix.'db_host'], $conf[$prefix.'db_user'],$conf[$prefix.'db_password'],$conf[$prefix.'db_database']);
$this->setCharacterEncoding();
} }
if(is_null($this->connect_error)) $this->isConnected = true;
else return false;
$this->setCharacterEncoding();
} }
public function __destruct() { public function __destruct() {
...@@ -74,7 +83,7 @@ class db extends mysqli ...@@ -74,7 +83,7 @@ class db extends mysqli
public function updateError($location) { public function updateError($location) {
global $app; global $app;
if($this->connect_error) { if(!is_null($this->connect_error)) {
$this->errorNumber = $this->connect_errno; $this->errorNumber = $this->connect_errno;
$this->errorMessage = $this->connect_error; $this->errorMessage = $this->connect_error;
} else { } else {
...@@ -95,18 +104,20 @@ class db extends mysqli ...@@ -95,18 +104,20 @@ class db extends mysqli
} }
private function setCharacterEncoding() { private function setCharacterEncoding() {
if($this->isConnected == false) return false;
parent::query( 'SET NAMES '.$this->dbCharset); parent::query( 'SET NAMES '.$this->dbCharset);
parent::query( "SET character_set_results = '".$this->dbCharset."', character_set_client = '".$this->dbCharset."', character_set_connection = '".$this->dbCharset."', character_set_database = '".$this->dbCharset."', character_set_server = '".$this->dbCharset."'"); parent::query( "SET character_set_results = '".$this->dbCharset."', character_set_client = '".$this->dbCharset."', character_set_connection = '".$this->dbCharset."', character_set_database = '".$this->dbCharset."', character_set_server = '".$this->dbCharset."'");
} }
public function query($queryString) { public function query($queryString) {
if($this->isConnected == false) return false;
$try = 0; $try = 0;
do { do {
$try++; $try++;
$ok = parent::ping(); $ok = $this->ping();
if(!$ok) { if(!$ok) {
if(!parent::real_connect($this->dbHost, $this->dbUser, $this->dbPass,$this->dbName)) { if(!$this->real_connect($this->dbHost, $this->dbUser, $this->dbPass, $this->dbName)) {
if($try > 9) { if($try > 4) {
$this->updateError('DB::query -> reconnect'); $this->updateError('DB::query -> reconnect');
return false; return false;
} else { } else {
...@@ -479,7 +490,7 @@ public function toLower($record) { ...@@ -479,7 +490,7 @@ public function toLower($record) {
// gibt Array mit Tabellennamen zur�ck // gibt Array mit Tabellennamen zur�ck
public function getTables($database_name = '') { public function getTables($database_name = '') {
if($this->isConnected == false) return false;
if($database_name == '') $database_name = $this->dbName; if($database_name == '') $database_name = $this->dbName;
$result = parent::query("SHOW TABLES FROM $database_name"); $result = parent::query("SHOW TABLES FROM $database_name");
for ($i = 0; $i < $result->num_rows; $i++) { for ($i = 0; $i < $result->num_rows; $i++) {
......
...@@ -59,10 +59,12 @@ class listform_tpl_generator { ...@@ -59,10 +59,12 @@ class listform_tpl_generator {
'; ';
$lang["list_head_txt"] = $listDef["name"]; $lang["list_head_txt"] = $listDef["name"];
$colcount = 0;
foreach($listDef["item"] as $field) { foreach($listDef["item"] as $field) {
$key = $field["field"]; $key = $field["field"];
$html .= " <th class=\"tbl_col_".$key."\" scope=\"col\"><tmpl_var name=\"".$key."_txt\"></th>\n"; $html .= " <th class=\"tbl_col_".$key."\" scope=\"col\"><tmpl_var name=\"".$key."_txt\"></th>\n";
$lang[$key."_txt"] = $key; $lang[$key."_txt"] = $key;
$colcount++;
} }
$html .= ' <th class="tbl_col_buttons" scope="col">&nbsp;</th> $html .= ' <th class="tbl_col_buttons" scope="col">&nbsp;</th>
...@@ -99,6 +101,11 @@ class listform_tpl_generator { ...@@ -99,6 +101,11 @@ class listform_tpl_generator {
</td> </td>
</tr> </tr>
</tmpl_loop> </tmpl_loop>
<tmpl_unless name=\"records\">
<tr class=\"tbl_row_noresults tbl_row_<tmpl_if name='__EVEN__'}even<tmpl_else>uneven</tmpl_if>\">
<td colspan=\"".$colcount."\">{tmpl_var name='globalsearch_noresults_text_txt'}</td>
</tr>
</tmpl_unless>
</tbody>"; </tbody>";
$html .= ' $html .= '
<tfoot> <tfoot>
......
...@@ -208,6 +208,8 @@ class searchform { ...@@ -208,6 +208,8 @@ class searchform {
$content .= ' '.$app->lng('Page').' '.$vars['next_page'].' '.$app->lng('of').' '.$vars['max_pages'].' '; $content .= ' '.$app->lng('Page').' '.$vars['next_page'].' '.$app->lng('of').' '.$vars['max_pages'].' ';
if($vars['show_page_next'] == 1){ if($vars['show_page_next'] == 1){
$content .= '<a href="'.$list_file.'?page='.$vars['next_page'].$page_params.'"><img src="../themes/iprg/images/btn_next.png" border="0"></a> &nbsp; '; $content .= '<a href="'.$list_file.'?page='.$vars['next_page'].$page_params.'"><img src="../themes/iprg/images/btn_next.png" border="0"></a> &nbsp; ';
} else{
$content .= '&nbsp;';
} }
$content .= '<a href="'.$list_file.'?page='.$vars['pages'].$page_params.'"> <img src="../themes/iprg/images/btn_right.png" border="0"></a>'; $content .= '<a href="'.$list_file.'?page='.$vars['pages'].$page_params.'"> <img src="../themes/iprg/images/btn_right.png" border="0"></a>';
return $content; return $content;
......
...@@ -9103,7 +9103,7 @@ class SimplePie_Misc ...@@ -9103,7 +9103,7 @@ class SimplePie_Misc
return $time; return $time;
} }
function absolutize_url($relative, $base) static function absolutize_url($relative, $base)
{ {
$iri = SimplePie_IRI::absolutize(new SimplePie_IRI($base), $relative); $iri = SimplePie_IRI::absolutize(new SimplePie_IRI($base), $relative);
return $iri->get_iri(); return $iri->get_iri();
...@@ -9163,7 +9163,7 @@ class SimplePie_Misc ...@@ -9163,7 +9163,7 @@ class SimplePie_Misc
return $output . $input; return $output . $input;
} }
function get_element($realname, $string) static function get_element($realname, $string)
{ {
$return = array(); $return = array();
$name = preg_quote($realname, '/'); $name = preg_quote($realname, '/');
...@@ -11006,7 +11006,7 @@ class SimplePie_Misc ...@@ -11006,7 +11006,7 @@ class SimplePie_Misc
} }
} }
function atom_10_construct_type($attribs) static function atom_10_construct_type($attribs)
{ {
if (isset($attribs['']['type'])) if (isset($attribs['']['type']))
{ {
...@@ -11059,7 +11059,7 @@ class SimplePie_Misc ...@@ -11059,7 +11059,7 @@ class SimplePie_Misc
} }
} }
function is_isegment_nz_nc($string) static function is_isegment_nz_nc($string)
{ {
return (bool) preg_match('/^([A-Za-z0-9\-._~\x{A0}-\x{D7FF}\x{F900}-\x{FDCF}\x{FDF0}-\x{FFEF}\x{10000}-\x{1FFFD}\x{20000}-\x{2FFFD}\x{30000}-\x{3FFFD}\x{40000}-\x{4FFFD}\x{50000}-\x{5FFFD}\x{60000}-\x{6FFFD}\x{70000}-\x{7FFFD}\x{80000}-\x{8FFFD}\x{90000}-\x{9FFFD}\x{A0000}-\x{AFFFD}\x{B0000}-\x{BFFFD}\x{C0000}-\x{CFFFD}\x{D0000}-\x{DFFFD}\x{E1000}-\x{EFFFD}!$&\'()*+,;=@]|(%[0-9ABCDEF]{2}))+$/u', $string); return (bool) preg_match('/^([A-Za-z0-9\-._~\x{A0}-\x{D7FF}\x{F900}-\x{FDCF}\x{FDF0}-\x{FFEF}\x{10000}-\x{1FFFD}\x{20000}-\x{2FFFD}\x{30000}-\x{3FFFD}\x{40000}-\x{4FFFD}\x{50000}-\x{5FFFD}\x{60000}-\x{6FFFD}\x{70000}-\x{7FFFD}\x{80000}-\x{8FFFD}\x{90000}-\x{9FFFD}\x{A0000}-\x{AFFFD}\x{B0000}-\x{BFFFD}\x{C0000}-\x{CFFFD}\x{D0000}-\x{DFFFD}\x{E1000}-\x{EFFFD}!$&\'()*+,;=@]|(%[0-9ABCDEF]{2}))+$/u', $string);
} }
...@@ -11699,7 +11699,7 @@ class SimplePie_IRI ...@@ -11699,7 +11699,7 @@ class SimplePie_IRI
* @param string $relative Relative IRI * @param string $relative Relative IRI
* @return SimplePie_IRI * @return SimplePie_IRI
*/ */
function absolutize($base, $relative) static function absolutize($base, $relative)
{ {
$relative = (string) $relative; $relative = (string) $relative;
if ($relative !== '') if ($relative !== '')
......
...@@ -937,31 +937,44 @@ class tform { ...@@ -937,31 +937,44 @@ class tform {
} }
break; break;
case 'ISIP': case 'ISIP':
//* Check if its a IPv4 or IPv6 address if($validator['allowempty'] != 'y') $validator['allowempty'] = 'n';
if(function_exists('filter_var')) { if($validator['allowempty'] == 'y' && $field_value == '') {
if(!filter_var($field_value,FILTER_VALIDATE_IP)) { //* Do nothing
$errmsg = $validator['errmsg'];
if(isset($this->wordbook[$errmsg])) {
$this->errorMessage .= $this->wordbook[$errmsg]."<br />\r\n";
} else {
$this->errorMessage .= $errmsg."<br />\r\n";
}
}
} else { } else {
//* Check content with regex, if we use php < 5.2 //* Check if its a IPv4 or IPv6 address
$ip_ok = 0; if(isset($validator['separator']) && $validator['separator'] != '') {
if(preg_match("/^(\:\:([a-f0-9]{1,4}\:){0,6}?[a-f0-9]{0,4}|[a-f0-9]{1,4}(\:[a-f0-9]{1,4}){0,6}?\:\:|[a-f0-9]{1,4}(\:[a-f0-9]{1,4}){1,6}?\:\:([a-f0-9]{1,4}\:){1,6}?[a-f0-9]{1,4})(\/\d{1,3})?$/i", $field_value)){ //* When the field may contain several IP addresses, split them by the char defined as separator
$ip_ok = 1; $field_value_array = explode($validator['separator'],$field_value);
} } else {
if(preg_match("/^[0-9]{1,3}(\.)[0-9]{1,3}(\.)[0-9]{1,3}(\.)[0-9]{1,3}$/", $field_value)){ $field_value_array[] = $field_value;
$ip_ok = 1;
} }
if($ip_ok == 0) { foreach($field_value_array as $field_value) {
$errmsg = $validator['errmsg']; if(function_exists('filter_var')) {
if(isset($this->wordbook[$errmsg])) { if(!filter_var($field_value,FILTER_VALIDATE_IP)) {
$this->errorMessage .= $this->wordbook[$errmsg]."<br />\r\n"; $errmsg = $validator['errmsg'];
if(isset($this->wordbook[$errmsg])) {
$this->errorMessage .= $this->wordbook[$errmsg]."<br />\r\n";
} else {
$this->errorMessage .= $errmsg."<br />\r\n";
}
}
} else { } else {
$this->errorMessage .= $errmsg."<br />\r\n"; //* Check content with regex, if we use php < 5.2
$ip_ok = 0;
if(preg_match("/^(\:\:([a-f0-9]{1,4}\:){0,6}?[a-f0-9]{0,4}|[a-f0-9]{1,4}(\:[a-f0-9]{1,4}){0,6}?\:\:|[a-f0-9]{1,4}(\:[a-f0-9]{1,4}){1,6}?\:\:([a-f0-9]{1,4}\:){1,6}?[a-f0-9]{1,4})(\/\d{1,3})?$/i", $field_value)){
$ip_ok = 1;
}
if(preg_match("/^[0-9]{1,3}(\.)[0-9]{1,3}(\.)[0-9]{1,3}(\.)[0-9]{1,3}$/", $field_value)){
$ip_ok = 1;
}
if($ip_ok == 0) {
$errmsg = $validator['errmsg'];
if(isset($this->wordbook[$errmsg])) {
$this->errorMessage .= $this->wordbook[$errmsg]."<br />\r\n";
} else {
$this->errorMessage .= $errmsg."<br />\r\n";
}
}
} }
} }
} }
......
...@@ -31,7 +31,7 @@ class vlibTemplateError { ...@@ -31,7 +31,7 @@ class vlibTemplateError {
| DO NOT TOUCH ANYTHING IN THIS CLASS IT MAY NOT WORK OTHERWISE | | DO NOT TOUCH ANYTHING IN THIS CLASS IT MAY NOT WORK OTHERWISE |
\-----------------------------------------------------------------------------*/ \-----------------------------------------------------------------------------*/
function raiseError ($code, $level = null, $extra=null) { public static function raiseError ($code, $level = null, $extra=null) {
if (!($level & error_reporting())&& $level != KILL) return; // binary AND checks for reporting level if (!($level & error_reporting())&& $level != KILL) return; // binary AND checks for reporting level
$error_codes = array( $error_codes = array(
......
...@@ -132,4 +132,3 @@ $wb['datalog_status_u_web_folder_user'] = 'Aktualizace nastavení uživatele pro ...@@ -132,4 +132,3 @@ $wb['datalog_status_u_web_folder_user'] = 'Aktualizace nastavení uživatele pro
$wb['datalog_status_d_web_folder_user'] = 'Odstranění uživatele pro adresáře chráněné heslem'; $wb['datalog_status_d_web_folder_user'] = 'Odstranění uživatele pro adresáře chráněné heslem';
?> ?>
...@@ -131,4 +131,6 @@ $wb['datalog_status_d_web_folder'] = 'Delete folder protection'; ...@@ -131,4 +131,6 @@ $wb['datalog_status_d_web_folder'] = 'Delete folder protection';
$wb['datalog_status_i_web_folder_user'] = 'Create folder protection user'; $wb['datalog_status_i_web_folder_user'] = 'Create folder protection user';
$wb['datalog_status_u_web_folder_user'] = 'Update folder protection user'; $wb['datalog_status_u_web_folder_user'] = 'Update folder protection user';
$wb['datalog_status_d_web_folder_user'] = 'Delete folder protection user'; $wb['datalog_status_d_web_folder_user'] = 'Delete folder protection user';
$wb['login_as_txt'] = 'Log in as';
?> ?>
<?php
$wb["login_1_txt"] = 'Do you want to login as user';
$wb["login_2_txt"] = 'If you do so, you can "go back" by clicking at logout.';
$wb["btn_yes_txt"] = 'Yes, login as Client';
$wb["btn_back_txt"] = 'No, back to list';
$wb["udp_port_help_txt"] = 'Separated by comma';
$wb["active_txt"] = 'Active';
$wb["firewall_error_unique"] = 'There is already a firewall record for this server.';
$wb["active_txt"] = 'Active';
$wb["tcp_ports_error_regex"] = 'Character not allowed in tcp port definition. Allowed characters are numbers, ":" and ",".';
$wb["udp_ports_error_regex"] = 'Character not allowed in udp port definition. Allowed characters are numbers, ":" and ",".';
?>
\ No newline at end of file
...@@ -170,7 +170,4 @@ $wb['enable_ip_wildcard_txt'] = 'Enable IP wildcard (*)'; ...@@ -170,7 +170,4 @@ $wb['enable_ip_wildcard_txt'] = 'Enable IP wildcard (*)';
$wb['web_folder_protection_txt'] = 'Make web folders immutable (extended attributes)'; $wb['web_folder_protection_txt'] = 'Make web folders immutable (extended attributes)';
$wb['overtraffic_notify_admin_txt'] = 'Send overtraffic notification to admin'; $wb['overtraffic_notify_admin_txt'] = 'Send overtraffic notification to admin';
$wb['overtraffic_notify_client_txt'] = 'Send overtraffic notification to client'; $wb['overtraffic_notify_client_txt'] = 'Send overtraffic notification to client';
$wb['v6_prefix_txt'] = 'IPv6 Prefix';
$wb['vhost_rewrite_v6_txt'] = 'Rewrite IPv6 on Mirror';
$wb['v6_prefix_wrong'] = 'Invalid v6 Netmask format.';
?> ?>
...@@ -29,5 +29,5 @@ $wb['generate_password_txt'] = 'Generate Password'; ...@@ -29,5 +29,5 @@ $wb['generate_password_txt'] = 'Generate Password';
$wb['repeat_password_txt'] = 'Repeat Password'; $wb['repeat_password_txt'] = 'Repeat Password';
$wb['password_mismatch_txt'] = 'The passwords do not match.'; $wb['password_mismatch_txt'] = 'The passwords do not match.';
$wb['password_match_txt'] = 'The passwords do 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.\\"';
?> ?>
Supports Markdown
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment