Moodle: control de caducidad de cuentas de usuario
Cuanto más usamos Moodle, más nos gusta…pero también más encontramos fallos que tienen que arreglar. Aún así, elegimos este LMS porque lleva años de desarrollo y mejoras. Uno de los fallos (o cosas que pueden mejorar) que he detectamos es sobre el que escribimos hoy: las fechas de caducidad de las cuentas de usuario. Ahora mismo, es posible poner una caducidad a un usuario en un curso. Es decir que deje de tener acceso a un curso a partir de una fecha. Pero no es posible programar una caducidad automática a la propia cuenta del usuario. Es decir, que se desactive tras cierta fecha. Esto creo un mayor trabajo a aquellos centros que queramos dar acceso a clientes por temporadas (curso escolar, trimestre, meses o semanas) o en suscripción por pago. Tenemos que tener otro mecanismo para controlar las cuentas que “han caducado” o acordarnos de revisar todo a mano. Tedioso. Hoy os damos un truco que puede servir para aligerar (o incluso automatizar) este caso. Vamos a añadir un campo en las cuentas que sea la fecha de caducidad. De esta manera luego podemos o buscar cuentas cada cierto tiempo, con un filtro, cuya fecha de caducidad sea inferior a la actual y desactivarlas a mano, o incluso automatizarlo en base de datos. Cómo crear el campo fecha de caducidad: Ve a Administración del Sitio > Usuarios > Cuentas > Campos de Perfil del Usuario. En Crear un nuevo campo de perfil: elegir el tipo Fecha/hora o Texto (ver opción 2 debajo). Recomiendo texto. Llamar el campo como queráis (Caducidad por ejemplo). Una vez creado, en cada cuenta de usuario, al editarla, bajo Otros Campos tenéis vuestro campo de caducidad. Deshabilitado por defecto pero que podéis habilitar cuando queráis. Ahí podéis poner la fecha que queráis en el usuario. ¿Cómo comprobar luego la caducidad? La primera manera sería manual por fecha: Os podéis poner una fecha (primero de cada mes), para buscar los usuarios caducados. Para eso id a Administración del Sitio > Usuarios > Cuentas > Examinar lista de Usuarios.En el filtro, pinchar en Ver más. Después en Campos de perfil del usuario elegid el campo caducidad (o el nombre que hayáis elegido). Ahí tenéis varias opciones. Eso si PROBLEMA. Moodle guarda las fechas en un formato especial de Unix (for rapidez de búsqueda). Hay que pasar la fecha a ese formato primero (sugiero usar un conversor como http://www.onlineconversion.com/unix_time.htm). Esto es un problema de usabilidad. Modo manual por texto: Igual al anterior pero entonces buscas por texto (Diciembre, Enero, 01/12/2016 etc). Es más sencillo añadir el filtro de búsqueda que el anterior…pero aseguraros que siempre usáis el mismo formato porque el modo texto deja guardar cualquier cosa. Modo automático: Podéis crear un script para que desactive o borre las cuentas con el campo mayor o menor que cierta fecha. Para ello tenéis que saber un poco de MYSQL. Podéis basaros en estos script (nota: no son míos ni están probados.