Hola a todos, probé de todas las maneras y encontre un issue en el Moodle Tracker: https://tracker.moodle.org/browse/MDL-54853 donde cambia una linea de codigo, especialmente en la función de formateo de texto. y me soluciono el problema de los caracteres especiales en la mensajeria interna.
la solución estuvo en modificar el archivo weblib.php, que se encuentra dentro de la carpeta "lib".
en mi caso, en la línea 1340 y 1341 agregué la siguiente línea: $text = mb_convert_encoding($text, 'HTML-ENTITIES', 'UTF-8') antes de $domdoc->loadHTML($text). es decir quedó así la funcion
if ($options['blanktarget']) {
$domdoc = new DOMDocument();
libxml_use_internal_errors(true);
$text = mb_convert_encoding($text, 'HTML-ENTITIES', 'UTF-8');
$domdoc->loadHTML('<?xml version="1.0" encoding="UTF-8" ?>' . $text);
libxml_clear_errors();
foreach ($domdoc->getElementsByTagName('a') as $link) {
if ($link->hasAttribute('target') && strpos($link->getAttribute('target'), '_blank') === false) {
continue;
}
$link->setAttribute('target', '_blank');
if (strpos($link->getAttribute('rel'), 'noreferrer') === false) {
$link->setAttribute('rel', trim($link->getAttribute('rel') . ' noreferrer'));
}
}
Espero que sea solución para uds también!
saludos y buena suerte!