Releases: jlsimon/moodle-local_whatsapphelper
Release list
Version 0.2.1
Bugfix release addressing issues raised during the Moodle plugins directory review of v0.2.0:
- Bootstrap 5 (Moodle 5.2) compatibility: the WhatsApp navbar menu did not open on Bootstrap 5 sites because its dropdown toggle only carried Bootstrap 4 markup (
data-toggle,dropdown-menu-right). It now carries both the Bootstrap 4 and Bootstrap 5 attribute/class pairs side by side, so the menu works on both Moodle 4.1+ (Bootstrap 4) and Moodle 5.0+ (Bootstrap 5). - Removed redundant
styles.cssloading:view.php,report.php,sitereport.phpandtemplates.phpno longer manually require the plugin's own stylesheet - Moodle already aggregates a plugin's rootstyles.cssautomatically. - Removed an oversized
js_call_amd()payload: the template editor's placeholder/format/emoji buttons are now rendered directly in the page (with their behaviour indata-action/data-valueattributes) instead of being built in JS from a config object big enough to trip Moodle's developer-debugging warning.
See CHANGELOG.md for full details.
Version 0.2.0
English
Second release of local_whatsapphelper, adding language-aware templates and capability-based access.
Highlights:
- Language-tagged templates: a template's name can carry an optional
|language_codetag (e.g.[Course welcome|en]); only templates matching the teacher's current interface language, plus untagged ones, are offered when preparing a send. Personal templates are tagged automatically with whatever language was active when they were last saved. The default template library now ships an English set first, then a Spanish set. - Capability-based access: anyone granted
local/whatsapphelper:usecan use the tool, however that role was assigned — course enrolment, or a role assigned at category or system level — instead of requiring the teacher archetype. - Navbar icon always visible: it no longer disappears when a user has no eligible courses; instead it is shown disabled, with a tooltip explaining why.
- 100-course threshold: when a user has access to more than 100 courses, the course picker is replaced by "enter from that course's own menu instead".
- Permissions overview: a new, informational section on the plugin's settings page shows which roles currently hold each capability, with links to Moodle's own capability report and role management screens.
See CHANGELOG.md for full detail.
Installation
Download whatsapphelper-v0.2.0.zip from the Assets section below (NOT GitHub's automatic "Source code (zip)", which creates a wrongly-named folder and won't install cleanly).
Then choose one:
- Via the browser: Site administration → Plugins → Install plugins → upload the zip.
- Manual: unzip and copy the
whatsapphelper/folder intolocal/in your Moodle install, then visit Site administration to complete the database upgrade.
Requirements
- Moodle 4.1 or higher
- PHP 7.4+
Español
Segunda versión de local_whatsapphelper, que añade plantillas sensibles al idioma y acceso basado en capacidades.
Lo más destacado:
- Plantillas etiquetadas por idioma: el nombre de una plantilla puede llevar una etiqueta opcional
|código_idioma(p. ej.[Bienvenida al curso|es]); al preparar un envío solo se ofrecen las plantillas del idioma actual de la interfaz del profesor, más las que no llevan etiqueta. Las plantillas personales se etiquetan automáticamente con el idioma activo en el momento de guardarlas. La biblioteca de plantillas por defecto ahora incluye primero un juego en inglés y después uno en español. - Acceso basado en capacidad: cualquier usuario con la capacidad
local/whatsapphelper:usepuede usar la herramienta, sea cual sea la vía por la que se le concedió — matrícula en el curso, o un rol asignado a nivel de categoría o de sistema — en vez de exigir el arquetipo de profesor. - Icono de la barra superior siempre visible: ya no desaparece cuando un usuario no tiene cursos elegibles; en su lugar se muestra deshabilitado, con un aviso explicando el motivo.
- Límite de 100 cursos: si un usuario tiene acceso a más de 100 cursos, el selector se sustituye por "entra desde el menú de ese curso concreto".
- Resumen de permisos: una nueva sección informativa en la página de ajustes del plugin muestra qué roles tienen actualmente cada capacidad, con enlaces al informe de capacidades y a la gestión de roles de Moodle.
Ver CHANGELOG.md para el detalle completo.
Instalación
Descarga whatsapphelper-v0.2.0.zip de la sección Assets de abajo (NO el "Source code (zip)" automático de GitHub, que crea una carpeta con nombre incorrecto y no instala limpio).
Después, elige una opción:
- Por el navegador: Administración del sitio → Plugins → Instalar plugins → sube el zip.
- Manual: descomprime y copia la carpeta
whatsapphelper/dentro delocal/de tu Moodle; luego visita Administración del sitio para completar la actualización de la BD.
Requisitos
- Moodle 4.1 o superior
- PHP 7.4+
Version 0.1.0
English
First public release of local_whatsapphelper — prepares WhatsApp messages for a course's students, building a ready-to-send wa.me link from a template (no copying phone numbers or retyping the same message one by one). Sending itself always happens inside WhatsApp, initiated by the teacher.
Highlights: guided sending queue (course → group → template → notice → students), common and personal message templates with placeholders, named/resumable notices private to each teacher with per-student delivery status, a site-wide aggregated report for managers, a guided tour + static help page, and a full GDPR privacy provider.
See CHANGELOG.md for full detail.
Installation
Download whatsapphelper-v0.1.0.zip from the Assets section below (NOT GitHub's automatic "Source code (zip)", which creates a wrongly-named folder and won't install cleanly).
Then choose one:
- Via the browser: Site administration → Plugins → Install plugins → upload the zip.
- Manual: unzip and copy the
whatsapphelper/folder intolocal/in your Moodle install, then visit Site administration to complete the database upgrade.
Requirements
- Moodle 4.1 or higher
- PHP 7.4+
Español
Primera versión pública de local_whatsapphelper — prepara mensajes de WhatsApp para los alumnos de un curso, generando un enlace wa.me listo para enviar a partir de una plantilla (sin copiar teléfonos ni reescribir el mismo mensaje uno por uno). El envío en sí siempre ocurre dentro de WhatsApp, iniciado por el profesor.
Lo más destacado: cola de envío guiada (curso → grupo → plantilla → aviso → alumnos), plantillas de mensaje comunes y personales con marcadores, avisos con nombre y reanudables, privados por profesor, con estado de entrega por alumno, un informe agregado a nivel de sitio para gestores, una guía interactiva + página de ayuda estática, y un proveedor de privacidad (RGPD) completo.
Ver CHANGELOG.md para el detalle completo.
Instalación
Descarga whatsapphelper-v0.1.0.zip de la sección Assets de abajo (NO el "Source code (zip)" automático de GitHub, que crea una carpeta con nombre incorrecto y no instala limpio).
Después, elige una opción:
- Por el navegador: Administración del sitio → Plugins → Instalar plugins → sube el zip.
- Manual: descomprime y copia la carpeta
whatsapphelper/dentro delocal/de tu Moodle; luego visita Administración del sitio para completar la actualización de la BD.
Requisitos
- Moodle 4.1 o superior
- PHP 7.4+