Procházet zdrojové kódy

fix knowledge explanation markdown parsing compatibility

Relax kp markdown source/container matching so markdown conversion still runs when container markup includes extra classes, whitespace, or prefilled content.

Made-with: Cursor
yemeishu před 2 týdny
rodič
revize
2c550e93e7
1 změnil soubory, kde provedl 1 přidání a 1 odebrání
  1. 1 1
      app/Services/ExamPdfExportService.php

+ 1 - 1
app/Services/ExamPdfExportService.php

@@ -1933,7 +1933,7 @@ class ExamPdfExportService
         $parser = new \Michelf\MarkdownExtra;
 
         return preg_replace_callback(
-            '/<div class="kp-markdown-source"[^>]*>([\s\S]*?)<\/div>\s*<div class="kp-markdown-container[^"]*"[^>]*><\/div>/i',
+            '/<div[^>]*class="[^"]*\bkp-markdown-source\b[^"]*"[^>]*>([\s\S]*?)<\/div>(?:\s*<div[^>]*class="[^"]*\bkp-markdown-container\b[^"]*"[^>]*>[\s\S]*?<\/div>)?/i',
             function ($matches) use ($parser) {
                 $markdown = html_entity_decode(trim($matches[1]), ENT_QUOTES, 'UTF-8');
                 $rendered = $parser->transform($markdown);