diff options
author | Meik Sievertsen <acydburn@phpbb.com> | 2008-03-13 14:39:53 +0000 |
---|---|---|
committer | Meik Sievertsen <acydburn@phpbb.com> | 2008-03-13 14:39:53 +0000 |
commit | 58173191edc5b75434dca66edfe4405296d22572 (patch) | |
tree | 4af31c23b8c82a069f36214cd0780680b3a771e0 /phpBB | |
parent | 156bf27418370b58f4c40b02c2628d8c715c07b6 (diff) | |
download | forums-58173191edc5b75434dca66edfe4405296d22572.tar forums-58173191edc5b75434dca66edfe4405296d22572.tar.gz forums-58173191edc5b75434dca66edfe4405296d22572.tar.bz2 forums-58173191edc5b75434dca66edfe4405296d22572.tar.xz forums-58173191edc5b75434dca66edfe4405296d22572.zip |
#22865
git-svn-id: file:///svn/phpbb/branches/phpBB-3_0_0@8428 89ea8834-ac86-4346-8a33-228a782c2dd0
Diffstat (limited to 'phpBB')
-rw-r--r-- | phpBB/adm/index.php | 15 | ||||
-rw-r--r-- | phpBB/docs/CHANGELOG.html | 1 | ||||
-rw-r--r-- | phpBB/includes/message_parser.php | 7 |
3 files changed, 12 insertions, 11 deletions
diff --git a/phpBB/adm/index.php b/phpBB/adm/index.php index c577cefacd..358e5a4bf2 100644 --- a/phpBB/adm/index.php +++ b/phpBB/adm/index.php @@ -390,13 +390,16 @@ function validate_config_vars($config_vars, &$cfg_array, &$error) } $validator = explode(':', $config_definition['validate']); + // Validate a bit. ;) (0 = type, 1 = min, 2= max) switch ($validator[$type]) { case 'string': $length = strlen($cfg_array[$config_name]); + // the column is a VARCHAR $validator[$max] = (isset($validator[$max])) ? min(255, $validator[$max]) : 255; + if (isset($validator[$min]) && $length < $validator[$min]) { $error[] = sprintf($user->lang['SETTING_TOO_SHORT'], $user->lang[$config_definition['lang']], $validator[$min]); @@ -406,14 +409,14 @@ function validate_config_vars($config_vars, &$cfg_array, &$error) $error[] = sprintf($user->lang['SETTING_TOO_LONG'], $user->lang[$config_definition['lang']], $validator[$max]); } break; - + case 'bool': $cfg_array[$config_name] = ($cfg_array[$config_name]) ? 1 : 0; break; case 'int': $cfg_array[$config_name] = (int) $cfg_array[$config_name]; - + if (isset($validator[$min]) && $cfg_array[$config_name] < $validator[$min]) { $error[] = sprintf($user->lang['SETTING_TOO_LOW'], $user->lang[$config_definition['lang']], $validator[$min]); @@ -576,9 +579,8 @@ function validate_range($value_ary, &$error) { $error[] = sprintf($user->lang['SETTING_TOO_LONG'], $user->lang[$value['lang']], $max); } - - break; - + break; + case 'int': $min = (isset($column[1])) ? max($column[1],$type['min']) : $type['min']; $max = (isset($column[2])) ? min($column[2],$type['max']) : $type['max']; @@ -590,10 +592,9 @@ function validate_range($value_ary, &$error) { $error[] = sprintf($user->lang['SETTING_TOO_BIG'], $user->lang[$value['lang']], $max); } - break; + break; } } - } ?>
\ No newline at end of file diff --git a/phpBB/docs/CHANGELOG.html b/phpBB/docs/CHANGELOG.html index c649b6466c..de627e6217 100644 --- a/phpBB/docs/CHANGELOG.html +++ b/phpBB/docs/CHANGELOG.html @@ -133,6 +133,7 @@ <li>[Fix] Check topics_per_page value in acp_forums (Bug #15539)</li> <li>[Fix] Custom profile fields with date type should be timezone independend (Bug #15003)</li> <li>[Fix] Fixing some XHTML errors/warnings within the ACP (Bug #22875)</li> + <li>[Fix] Warnings if poll title/options exceed maximum characters per post (Bug #22865)</li> </ul> diff --git a/phpBB/includes/message_parser.php b/phpBB/includes/message_parser.php index 41e7bc51d7..674e13de49 100644 --- a/phpBB/includes/message_parser.php +++ b/phpBB/includes/message_parser.php @@ -1089,7 +1089,7 @@ class parse_message extends bbcode_firstpass if ((!$msg_len && $mode !== 'sig') || $config['max_' . $mode . '_chars'] && $msg_len > $config['max_' . $mode . '_chars']) { $this->warn_msg[] = (!$msg_len) ? $user->lang['TOO_FEW_CHARS'] : sprintf($user->lang['TOO_MANY_CHARS_' . strtoupper($mode)], $msg_len, $config['max_' . $mode . '_chars']); - return $this->warn_msg; + return (!$update_this_message) ? $return_message : $this->warn_msg; } } @@ -1097,7 +1097,7 @@ class parse_message extends bbcode_firstpass if ($mode !== 'sig' && utf8_clean_string($this->message) === '') { $this->warn_msg[] = $user->lang['TOO_FEW_CHARS']; - return $this->warn_msg; + return (!$update_this_message) ? $return_message : $this->warn_msg; } // Prepare BBcode (just prepares some tags for better parsing) @@ -1146,7 +1146,7 @@ class parse_message extends bbcode_firstpass if ($config['max_' . $mode . '_urls'] && $num_urls > $config['max_' . $mode . '_urls']) { $this->warn_msg[] = sprintf($user->lang['TOO_MANY_URLS'], $config['max_' . $mode . '_urls']); - return $this->warn_msg; + return (!$update_this_message) ? $return_message : $this->warn_msg; } if (!$update_this_message) @@ -1603,7 +1603,6 @@ class parse_message extends bbcode_firstpass $this->message = $poll['poll_option_text']; $bbcode_bitfield = $this->bbcode_bitfield; - $poll['poll_option_text'] = $this->parse($poll['enable_bbcode'], ($config['allow_post_links']) ? $poll['enable_urls'] : false, $poll['enable_smilies'], $poll['img_status'], false, false, $config['allow_post_links'], false); $bbcode_bitfield = base64_encode(base64_decode($bbcode_bitfield) | base64_decode($this->bbcode_bitfield)); |