Caracteres especiales en los mensajes internos.

Caracteres especiales en los mensajes internos.

de Lluís Caparrella -
Número de respuestas: 8

Hola ,

Tengo instalada la versión 3.1 y el paquete de idiomas funciona correctamente en toda la plataforma menos en los mensajes internos donde no aparecen correctamente los caracteres especiales  ( Ç ,ç, ... y acentos ) del idioma.

Alguien sabe como resolverlo.

Gracias.

Lluís.


Promedio de valoraciones: -
En respuesta a Lluís Caparrella

Re: Caracteres especiales en los mensajes internos.

de Fernando Acedo -

Hay un error en la versión 3.1 que provoca ese problema.

Actualiza a la última versión disponible y debería solucionarse.

En respuesta a Fernando Acedo

Re: Caracteres especiales en los mensajes internos.

de Lluís Caparrella -

Hola Fernando,

Muchas gracias por tu respuesta.

Sabes si existe alguna manera que no pase por la actualización completa de la plataforma?.

Gracias.

Lluís.

En respuesta a Lluís Caparrella

Re: Caracteres especiales en los mensajes internos.

de Fernando Acedo -
Si que es posible pero seria romper la integridad del sistema. Lo recomendable es actualizar todo el sistema.

En respuesta a Fernando Acedo

Re: Caracteres especiales en los mensajes internos.

de maria soledad sonzini -

Hola Fernando!, sabes si la ultima version 3.1.6 corrige el problema de caracteres especiales? o tengo que saltar a las 3.2? saludos

En respuesta a maria soledad sonzini

Re: Caracteres especiales en los mensajes internos.

de Lluís Caparrella -

Hola ,

He actualizado a la versión 3.3 y continuo con el mismo problema.

Sabeis cual es el problema?.

Gracias.

Lluís.

En respuesta a Lluís Caparrella

Re: Caracteres especiales en los mensajes internos.

de Fernando Acedo -

La base de datos está configurada como UTF8?

Los caracteres especiales funcionan sin problema en moodle 3.3. Solo depende de la configuración de la base de datos.

Para un mejor funcionamiento revisa que las librerias de moodle para idiomas que no sea el inglés está instaladas. Eso puedes verlo en Servidor > Entorno

En respuesta a Fernando Acedo

Re: Caracteres especiales en los mensajes internos.

de maria soledad sonzini -

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!