mirror of
https://github.com/phpbb/phpbb.git
synced 2025-06-28 14:18:52 +00:00
[ticket/11742] Removed tabs-to-space conversion in [code]
PHPBB3-11742
This commit is contained in:
parent
466b710235
commit
92078dce33
4 changed files with 4 additions and 45 deletions
|
@ -234,10 +234,6 @@ class renderer implements \phpbb\textformatter\renderer_interface
|
|||
}
|
||||
|
||||
$html = $this->renderer->render($xml);
|
||||
if (stripos($html, '<code') !== false)
|
||||
{
|
||||
$html = $this->replace_tabs_in_code($html);
|
||||
}
|
||||
|
||||
/**
|
||||
* Modify a rendered text
|
||||
|
@ -253,45 +249,6 @@ class renderer implements \phpbb\textformatter\renderer_interface
|
|||
return $html;
|
||||
}
|
||||
|
||||
/**
|
||||
* Replace tabs in code elements
|
||||
*
|
||||
* @see bbcode::bbcode_second_pass_code()
|
||||
*
|
||||
* @param string $html Original HTML
|
||||
* @return string Modified HTML
|
||||
*/
|
||||
protected function replace_tabs_in_code($html)
|
||||
{
|
||||
return preg_replace_callback(
|
||||
'((<code[^>]*>)(.*?)(</code>))is',
|
||||
function ($captures)
|
||||
{
|
||||
$code = $captures[2];
|
||||
|
||||
$code = str_replace("\t", ' ', $code);
|
||||
$code = str_replace(' ', ' ', $code);
|
||||
$code = str_replace(' ', ' ', $code);
|
||||
$code = str_replace("\n ", "\n ", $code);
|
||||
|
||||
// keep space at the beginning
|
||||
if (!empty($code) && $code[0] == ' ')
|
||||
{
|
||||
$code = ' ' . substr($code, 1);
|
||||
}
|
||||
|
||||
// remove newline at the beginning
|
||||
if (!empty($code) && $code[0] == "\n")
|
||||
{
|
||||
$code = substr($code, 1);
|
||||
}
|
||||
|
||||
return $captures[1] . $code . $captures[3];
|
||||
},
|
||||
$html
|
||||
);
|
||||
}
|
||||
|
||||
/**
|
||||
* {@inheritdoc}
|
||||
*/
|
||||
|
|
|
@ -12,8 +12,8 @@
|
|||
<!-- BEGIN quote_open --><blockquote class="uncited"><div><!-- END quote_open -->
|
||||
<!-- BEGIN quote_close --></div></blockquote><!-- END quote_close -->
|
||||
|
||||
<!-- BEGIN code_open --><div class="codebox"><p>{L_CODE}{L_COLON} <a href="#" onclick="selectCode(this); return false;">{L_SELECT_ALL_CODE}</a></p><code><!-- END code_open -->
|
||||
<!-- BEGIN code_close --></code></div><!-- END code_close -->
|
||||
<!-- BEGIN code_open --><div class="codebox"><p>{L_CODE}{L_COLON} <a href="#" onclick="selectCode(this); return false;">{L_SELECT_ALL_CODE}</a></p><pre><code><!-- END code_open -->
|
||||
<!-- BEGIN code_close --></code></pre></div><!-- END code_close -->
|
||||
|
||||
<!-- BEGIN inline_attachment_open --><div class="inline-attachment"><!-- END inline_attachment_open -->
|
||||
<!-- BEGIN inline_attachment_close --></div><!-- END inline_attachment_close -->
|
||||
|
|
1
tests/text_processing/tickets_data/PHPBB3-11742.html
Normal file
1
tests/text_processing/tickets_data/PHPBB3-11742.html
Normal file
|
@ -0,0 +1 @@
|
|||
<div class="codebox"><p>CODE: <a href="#" onclick="selectCode(this); return false;">Select all</a></p><pre><code> tab</code></pre></div>
|
1
tests/text_processing/tickets_data/PHPBB3-11742.txt
Normal file
1
tests/text_processing/tickets_data/PHPBB3-11742.txt
Normal file
|
@ -0,0 +1 @@
|
|||
[code] tab[/code]
|
Loading…
Add table
Reference in a new issue