mahara-contributors team mailing list archive
-
mahara-contributors team
-
Mailing list archive
-
Message #55512
[Bug 1836588] A patch has been submitted for review
Patch for "19.04_STABLE" branch: https://reviews.mahara.org/10361
--
You received this bug notification because you are a member of Mahara
Contributors, which is subscribed to Mahara.
Matching subscriptions: Subscription for all Mahara Contributors -- please ask on #mahara-dev or mahara.org forum before editing or unsubscribing it!
https://bugs.launchpad.net/bugs/1836588
Title:
Multibyte comments broken
Status in Mahara:
Fix Committed
Status in Mahara 19.04 series:
Fix Committed
Status in Mahara 19.10 series:
Fix Committed
Bug description:
When we post English and Japanese comments on a page "Add comment"
field, only Japanese characters are corrupted as the attached
screenshot (mahara_comment.png).
We can fix the issue using mb_convert_encoding function as below.
Hopefully this fix helps Mahara multibyte character users.
---------------------------
Program file to modify:
artefact/comment/lib.php
Line number to modify;
1184
[ Before ]
/*
* Removes the classes from the text of the comment that could interfere
* with the comment display
* @param string $comment the text content of the comment
*/
public static function remove_comments_classes($comment) {
if (empty($comment)) {
return "";
}
$dom = new DOMDocument();
$dom->preserveWhiteSpace = false;
$dom->formatOutput = true;
$dom->loadHTML($comment, LIBXML_HTML_NOIMPLIED | LIBXML_HTML_NODEFDTD);
$xpath = new DOMXPath($dom);
[ After ]
/*
* Removes the classes from the text of the comment that could interfere
* with the comment display
* @param string $comment the text content of the comment
*/
public static function remove_comments_classes($comment) {
if (empty($comment)) {
return "";
}
$dom = new DOMDocument();
$dom->preserveWhiteSpace = false;
$dom->formatOutput = true;
// $dom->loadHTML($comment, LIBXML_HTML_NOIMPLIED | LIBXML_HTML_NODEFDTD);
if (function_exists('mb_convert_encoding')) {
$dom->loadHTML(mb_convert_encoding($comment, 'HTML-ENTITIES', 'UTF-8'));
} else {
$dom->loadHTML($comment, LIBXML_HTML_NOIMPLIED | LIBXML_HTML_NODEFDTD);
}
$xpath = new DOMXPath($dom);
To manage notifications about this bug go to:
https://bugs.launchpad.net/mahara/+bug/1836588/+subscriptions
References