X-Git-Url: http://source.bookstackapp.com/bookstack/blobdiff_plain/1c43602f4bed60a84f47735ca8bc4a399018e013..refs/pull/2902/head:/app/Entities/Tools/PageContent.php diff --git a/app/Entities/Tools/PageContent.php b/app/Entities/Tools/PageContent.php index 9a53e2d24..b4cc1b81c 100644 --- a/app/Entities/Tools/PageContent.php +++ b/app/Entities/Tools/PageContent.php @@ -3,6 +3,7 @@ namespace BookStack\Entities\Tools; use BookStack\Entities\Models\Page; +use BookStack\Entities\Tools\Markdown\CustomListItemRenderer; use BookStack\Entities\Tools\Markdown\CustomStrikeThroughExtension; use BookStack\Exceptions\ImageUploadException; use BookStack\Facades\Theme; @@ -13,6 +14,7 @@ use DOMDocument; use DOMNodeList; use DOMXPath; use Illuminate\Support\Str; +use League\CommonMark\Block\Element\ListItem; use League\CommonMark\CommonMarkConverter; use League\CommonMark\Environment; use League\CommonMark\Extension\Table\TableExtension; @@ -64,6 +66,8 @@ class PageContent $environment = Theme::dispatch(ThemeEvents::COMMONMARK_ENVIRONMENT_CONFIGURE, $environment) ?? $environment; $converter = new CommonMarkConverter([], $environment); + $environment->addBlockRenderer(ListItem::class, new CustomListItemRenderer(), 10); + return $converter->convertToHtml($markdown); } @@ -223,7 +227,7 @@ class PageContent */ public function render(bool $blankIncludes = false): string { - $content = $this->page->html; + $content = $this->page->html ?? ''; if (!config('app.allow_content_scripts')) { $content = HtmlContentFilter::removeScripts($content);