From: Hypolite Petovan Date: Sun, 19 Mar 2023 03:23:50 +0000 (-0400) Subject: Rework new lines around list BBCode X-Git-Url: https://git.mxchange.org/?a=commitdiff_plain;h=1ce438e96435fe28ffac130a071c2f495501fa35;p=friendica.git Rework new lines around list BBCode - Remove blanket new lines remover in HTML::toBBCode - Add test to ensure the commutativity of the markups --- diff --git a/src/Content/Text/HTML.php b/src/Content/Text/HTML.php index ebd74121b1..c1bcb0b5b0 100644 --- a/src/Content/Text/HTML.php +++ b/src/Content/Text/HTML.php @@ -281,9 +281,9 @@ class HTML self::tagToBBCode($doc, 'div', [], "\r", "\r"); self::tagToBBCode($doc, 'p', [], "\n", "\n"); - self::tagToBBCode($doc, 'ul', [], "[ul]", "[/ul]"); - self::tagToBBCode($doc, 'ol', [], "[ol]", "[/ol]"); - self::tagToBBCode($doc, 'li', [], "[*]", ""); + self::tagToBBCode($doc, 'ul', [], "[ul]", "\n[/ul]"); + self::tagToBBCode($doc, 'ol', [], "[ol]", "\n[/ol]"); + self::tagToBBCode($doc, 'li', [], "\n[*]", ""); self::tagToBBCode($doc, 'hr', [], "[hr]", ""); @@ -349,33 +349,6 @@ class HTML $message = str_replace("\n\n\n", "\n\n", $message); } while ($oldmessage != $message); - do { - $oldmessage = $message; - $message = str_replace( - [ - "[/size]\n\n", - "\n[hr]", - "[hr]\n", - "\n[list", - "[/list]\n", - "\n[/", - "[list]\n", - "[list=1]\n", - "\n[*]"], - [ - "[/size]\n", - "[hr]", - "[hr]", - "[list", - "[/list]", - "[/", - "[list]", - "[list=1]", - "[*]"], - $message - ); - } while ($message != $oldmessage); - $message = str_replace( ['[b][b]', '[/b][/b]', '[i][i]', '[/i][/i]'], ['[b]', '[/b]', '[i]', '[/i]'], diff --git a/tests/src/Content/Text/BBCodeTest.php b/tests/src/Content/Text/BBCodeTest.php index 698b37e700..b7328d67d7 100644 --- a/tests/src/Content/Text/BBCodeTest.php +++ b/tests/src/Content/Text/BBCodeTest.php @@ -265,7 +265,15 @@ Karl Marx - Die ursprüngliche Akkumulation 'task-12900-header-with-paragraphs' => [ 'expectedHTML' => '

Header

Some Chapter

', 'text' => '[h1]Header[/h1]Some Chapter', - ] + ], + 'bug-12842-ul-newlines' => [ + 'expectedHTML' => '

This is:

', + 'text' => "This is:\r\n[ul]\r\n[*]some\r\n[*]amazing\r\n[*]list\r\n[/ul]", + ], + 'bug-12842-ol-newlines' => [ + 'expectedHTML' => '

This is:

  1. some
  2. amazing
  3. list
', + 'text' => "This is:\r\n[ol]\r\n[*]some\r\n[*]amazing\r\n[*]list\r\n[/ol]", + ], ]; } diff --git a/tests/src/Content/Text/HTMLTest.php b/tests/src/Content/Text/HTMLTest.php index 259d0e6f02..dc55ad0f0b 100644 --- a/tests/src/Content/Text/HTMLTest.php +++ b/tests/src/Content/Text/HTMLTest.php @@ -88,6 +88,24 @@ its surprisingly good", 'expectedBBCode' => '[url=https://dev-friendica.mrpetovan.com/profile/hypolite]@hypolite[/url] 0', 'html' => '

@hypolite 0

', ], + 'bug-12842-ul-new-lines' => [ + 'expectedBBCode' => 'This is: +[ul] +[*]some +[*]amazing +[*]list +[/ul]', + 'html'=> '

This is:

', + ], + 'bug-12842-ol-new-lines' => [ + 'expectedBBCode' => 'This is: +[ol] +[*]some +[*]amazing +[*]list +[/ol]', + 'html'=> '

This is:

  1. some
  2. amazing
  3. list
', + ], ]; }