Moodle Plugins directory: Mail | Moodle.org
This plugin allows users to send messages to each other, using an interface and features similar to web-based mail clients.
Messages are tied to courses, so users can only send messages to other participants in courses they are enrolled in.
Users can access all mail features through the envelope icon present in the header of the site, or the main menu of the Moodle app.
Version 2.0 of the project implemented by the "Recovery, Transformation and Resilience Plan". Funded by the European Union - Next Generation EU. Produced by the UNIMOODLE University Group: Universities of Valladolid, Complutense de Madrid, UPV/EHU, León, Salamanca, Illes Balears, València, Rey Juan Carlos, La Laguna, Zaragoza, Málaga, Córdoba, Extremadura, Vigo, Las Palmas de Gran Canaria and Burgos.
I have a question. Does this plugin support emailing the groups within courses?
Best,
Robin (Keizer Karel College, The Netherlands)
Partially.
Ie. you can select a group, but it only filters non-members of the group out.
Then you need to click "To" to each member of the group separately.
As far as I can tell, just tried.
Cheers,
Piotr
URL Length Limitation: Web browsers and servers have URL length limits (typically around 2000–8000 characters). When the list of recipients exceeds this limit, it can cause issues like "log URL" errors.
BCC Behavior: BCC allows you to send an email to multiple recipients without exposing their email addresses to each other. If this list is too long, Moodle might attempt to handle it via the URL, which exceeds the limit.
Please help me out
i have problem with {mlang} plugin , When i use it in application mlang is working great. But after send mail mlang dosent work correctly - is translate only my main language , additional {mlang en} {mlang de} not working - is blank in mail )white space).
We have over 200 Moodle instances and many of them use the Local Mail plugin. However, there are some who do not want to use the plugin. However, since we update all Moodle instances centrally, we do not want to remove the plugin from the few instances. However, we cannot find a setting in Moodle to deactivate the plugin.
Best regards
To "deactivate" the plugin you have to set to 'Prohibit' the capability 'local/mail:usemail' to 'Authenticated user' on system context.
Cheers
For some time now, there has been an increasing problem that some users on our platform can no longer access their mail inbox.
The following error message appears: User with ID 0 not found.
We have not yet been able to localize the cause. Unfortunately, the problem can currently only be solved by deleting all mail content which is not satisfying.
I hope you guys can help us out! Thanks in advance!
We use local mail in our Moodle - thank you for this plugin!
We're experiencing the following issue when trying to manage emails in the app: If a user opens the local mail icon in the app, they are redirected to the website. No one can view emails directly in the app.
Is there an option that can be enabled?
Thank you for your help!
the problem with accessing the mails in the inbox still exists for the users of our platform (see post from Feb 24, 2025). Some users are unable to access their inbox. However, a different error message now appears:
Error found in coding that only programmers can correct: User id is required when printing user avatar image.
Here is the detailed information to it:
Error code: codingerror
* line 100 of /lib/classes/output/user_picture.php: core\exception\coding_exception thrown
* line 220 of /local/mail/classes/user.php: call to core\output\user_picture->__construct()
* line 577 of /local/mail/classes/external.php: call to local_mail\user->picture_url()
* line 520 of /local/mail/classes/external. php: call to local_mail\external::search_messages_response()
* line ? of unknownfile: call to local_mail\external::search_messages()
* line 253 of /lib/external/classes/external_api.php: call to call_user_func_array()
* line 83 of /lib/ajax/service.php: call to core_external\external_api::call_external_function()
Can someone help us out, please?
-------------------------------------------------------------------------
Error escribiendo a la base de datos
Más información sobre este error
Información de depuración: Column 'courseid' cannot be null
UPDATE mdl_local_mail_message_users mu SET courseid = (SELECT m.courseid FROM mdl_local_mail_messages m WHERE m.id = mu.messageid), draft = (SELECT m.draft FROM mdl_local_mail_messages m WHERE m.id = mu.messageid), time = (SELECT m.time FROM mdl_local_mail_messages m WHERE m.id = mu.messageid)
[array (
)]
Error code: dmlwriteexception×Descartar esta notificación
Trazado de la pila (stack):
line 497 of /lib/dml/moodle_database.php: dml_write_exception thrown
line 293 of /lib/dml/moodle_read_slave_trait.php: call to moodle_database->query_end()
line 1176 of /lib/dml/mysqli_native_moodle_database.php: call to mysqli_native_moodle_database->query_end()
line 197 of /local/mail/db/upgrade.php: call to mysqli_native_moodle_database->execute()
line 784 of /lib/upgradelib.php: call to xmldb_local_mail_upgrade()
line 1953 of /lib/upgradelib.php: call to upgrade_plugins()
line 721 of /admin/index.php: call to upgrade_noncore()
Hemos detectado un bug en el plugin local_mail que provoca que la bandeja de entrada deje de responder completamente (se queda en un bucle de carga infinito) cuando el idioma preferido del usuario está configurado en catalán (ca).
Pasos para reproducir:
Configurar el idioma preferido del usuario en catalán
Acceder a la bandeja de entrada de local_mail
La bandeja se queda atascada en un bucle de carga infinito
Comportamiento esperado: La bandeja de entrada debería cargarse con normalidad independientemente del idioma del usuario.
Comportamiento actual: La bandeja nunca llega a cargar y se queda en un bucle. Cambiar el idioma a español o inglés resuelve el problema de inmediato.
Causa raíz identificada:
El problema está en la función formatNumber ubicada en local/mail/svelte/src/lib/utils.ts:
export function formatNumber(number: number): string {
return new Intl.NumberFormat(window.M.str.langconfig.localecldr).format(number);
}
El constructor Intl.NumberFormat no gestiona correctamente la cadena de locale proporcionada por Moodle para el catalán (window.M.str.langconfig.localecldr), lo que provoca un error en tiempo de ejecución que rompe todo el renderizado de la bandeja de entrada.
Entorno: Moodle con el plugin local_mail, probado en los navegadores Chrome y Edge.
Gracias por vuestro trabajo en este plugin. Esperamos que este reporte os ayude a solucionar el problema.
Un saludo
El problema que indicas pasa cuando se utiliza el paquete de idioma ca_wp (Workplace), que define la cadena localecldr como ''. Hemos detectado que otros idiomas en la variante Workplace padecen el mismo problema.
Una solución rápida es modificar la cadena localecldr desde Personalización del idioma en Administración, seleccionáis el paquete ca_wp, en componentes seleccionad langconfig.php y en identificador de cadena ponéis localecldr, pulsáis en el botón Mostrar cadenas y en el campo de texto Traducción local personalizada poned ca-ES, guardáis y ya os funcionará local_mail con el idioma catalán.
Reportaremos el problema a Moodle para que solucionen las cadenas de idiomas erróneas detectadas en los paquetes de idioma de Workplace.
Saludos
Gracias por las indicaciones, hemos podido resolver el problema correctamente.
Saludos