mirror of
https://github.com/phpbb/phpbb.git
synced 2025-07-31 22:10:45 +02:00
[ticket/13990] Reparse markup inside of forum rules/description
PHPBB3-13990
This commit is contained in:
@@ -47,11 +47,22 @@ abstract class base implements reparser_interface
|
||||
{
|
||||
if (!isset($record['enable_bbcode'], $record['enable_smilies'], $record['enable_magic_url']))
|
||||
{
|
||||
$record += array(
|
||||
'enable_bbcode' => $this->guess_bbcodes($record),
|
||||
'enable_smilies' => $this->guess_smilies($record),
|
||||
'enable_magic_url' => $this->guess_magic_url($record),
|
||||
);
|
||||
if (isset($record['options']))
|
||||
{
|
||||
$record += array(
|
||||
'enable_bbcode' => (bool) ($record['options'] & OPTION_FLAG_BBCODE),
|
||||
'enable_smilies' => (bool) ($record['options'] & OPTION_FLAG_SMILIES),
|
||||
'enable_magic_url' => (bool) ($record['options'] & OPTION_FLAG_LINKS),
|
||||
);
|
||||
}
|
||||
else
|
||||
{
|
||||
$record += array(
|
||||
'enable_bbcode' => $this->guess_bbcodes($record),
|
||||
'enable_smilies' => $this->guess_smilies($record),
|
||||
'enable_magic_url' => $this->guess_magic_url($record),
|
||||
);
|
||||
}
|
||||
}
|
||||
|
||||
// Those BBCodes are disabled based on context and user permissions and that value is never
|
||||
@@ -92,7 +103,7 @@ abstract class base implements reparser_interface
|
||||
}
|
||||
}
|
||||
|
||||
if (substr($record['text'], 0, 2) == '<r')
|
||||
if (substr($record['text'], 0, 2) === '<r')
|
||||
{
|
||||
// Look for the closing tag inside of a e element, in an element of the same name, e.g.
|
||||
// <e>[/url]</e></URL>
|
||||
@@ -124,7 +135,7 @@ abstract class base implements reparser_interface
|
||||
}
|
||||
}
|
||||
|
||||
if (substr($record['text'], 0, 2) == '<r')
|
||||
if (substr($record['text'], 0, 2) === '<r')
|
||||
{
|
||||
// Look for a closing tag inside of an e element
|
||||
return (bool) preg_match('(<e>\\[/\\w+\\]</e>)', $match);
|
||||
|
@@ -24,6 +24,7 @@ class forum_description extends \phpbb\textreparser\row_based_plugin
|
||||
'id' => 'forum_id',
|
||||
'text' => 'forum_desc',
|
||||
'bbcode_uid' => 'forum_desc_uid',
|
||||
'options' => 'forum_desc_options',
|
||||
);
|
||||
}
|
||||
|
||||
|
@@ -24,6 +24,7 @@ class forum_rules extends \phpbb\textreparser\row_based_plugin
|
||||
'id' => 'forum_id',
|
||||
'text' => 'forum_rules',
|
||||
'bbcode_uid' => 'forum_rules_uid',
|
||||
'options' => 'forum_rules_options',
|
||||
);
|
||||
}
|
||||
|
||||
|
@@ -24,6 +24,7 @@ class group_description extends \phpbb\textreparser\row_based_plugin
|
||||
'id' => 'group_id',
|
||||
'text' => 'group_desc',
|
||||
'bbcode_uid' => 'group_desc_uid',
|
||||
'options' => 'group_desc_options',
|
||||
);
|
||||
}
|
||||
|
||||
|
@@ -48,7 +48,7 @@ class poll_option extends \phpbb\textreparser\base
|
||||
*/
|
||||
protected function get_records_by_range($min_id, $max_id)
|
||||
{
|
||||
$sql = 'SELECT o.topic_id, o.poll_option_id, o.poll_option_text AS text, p.bbcode_uid
|
||||
$sql = 'SELECT o.topic_id, o.poll_option_id, o.poll_option_text AS text, p.enable_bbcode, p.enable_smilies, p.enable_magic_url, p.bbcode_uid
|
||||
FROM ' . POLL_OPTIONS_TABLE . ' o, ' . TOPICS_TABLE . ' t, ' . POSTS_TABLE . ' p
|
||||
WHERE o.topic_id BETWEEN ' . $min_id . ' AND ' . $max_id .'
|
||||
AND t.topic_id = o.topic_id
|
||||
|
@@ -31,7 +31,7 @@ class poll_title extends \phpbb\textreparser\row_based_plugin
|
||||
*/
|
||||
protected function get_records_by_range_query($min_id, $max_id)
|
||||
{
|
||||
$sql = 'SELECT t.topic_id AS id, t.poll_title AS text, p.bbcode_uid
|
||||
$sql = 'SELECT t.topic_id AS id, t.poll_title AS text, p.enable_bbcode, p.enable_smilies, p.enable_magic_url, p.bbcode_uid
|
||||
FROM ' . TOPICS_TABLE . ' t, ' . POSTS_TABLE . ' p
|
||||
WHERE t.topic_id BETWEEN ' . $min_id . ' AND ' . $max_id .'
|
||||
AND t.poll_max_options > 0
|
||||
|
Reference in New Issue
Block a user