]> BookStack Code Mirror - bookstack/commitdiff
Update PageRepo.php 63/head
authorAkibaWolf <redacted>
Sat, 20 Feb 2016 16:31:21 +0000 (21:31 +0500)
committerAkibaWolf <redacted>
Sat, 20 Feb 2016 16:31:21 +0000 (21:31 +0500)
Fix encoding problem.

By default DOMDocument::loadHTML treats a string as being encoded with ISO-8859-1. This causes a problem with saving cyrillic pages' text that becomes completely unreadable (like Ð\9fÑ\80овеÑ\80ка instead of normal symbols).

app/Repos/PageRepo.php

index 05052432efd577fcd5d6d95a2c33675f9e974109..93f80ec6d513a803c937d9dc422652fd609e00cf 100644 (file)
@@ -125,7 +125,7 @@ class PageRepo
         if($htmlText == '') return $htmlText;
         libxml_use_internal_errors(true);
         $doc = new \DOMDocument();
-        $doc->loadHTML($htmlText);
+        $doc->loadHTML(mb_convert_encoding($htmlText, 'HTML-ENTITIES', 'UTF-8'));
 
         $container = $doc->documentElement;
         $body = $container->childNodes->item(0);
@@ -359,4 +359,4 @@ class PageRepo
     }
 
 
-}
\ No newline at end of file
+}