Saltar al contenido principal

Retirar bloques del Área personal

Para que el Área personal (/my/) tenga el diseño definido en Figma es necesario retirar de la vista predeterminada de todos los usuarios los bloques "Línea de tiempo" (Timeline) y "Calendario" (Calendar month). Adicionalmente, si el bloque "Cursos a los que se ha accedido recientemente" (block_recentlyaccessedcourses) está presente en la región, debe retirarse también porque duplica la información que ya muestra la sección Mis Cursos del Área personal.

Procedimiento

1. Editar el dashboard predeterminado

  1. Ir a Administración del sitio → Apariencia → Página Mi Moodle predeterminada (/my/indexsys.php). Se necesita la capacidad moodle/my:configsyspages.

  2. Activar "Activar edición" (botón superior derecho).

    Default dashboard admin

  3. En la región central (región content), localizar los bloques Línea de tiempo y Calendario. Si además está presente "Cursos a los que se ha accedido recientemente", localizarlo también (puede aparecer en la misma región o en la región lateral, según cómo se haya añadido).

  4. Hacer clic en el icono X (Eliminar) de cada bloque para retirarlos.

  5. La página se guarda automáticamente.

2. Resetear los dashboards de todos los usuarios

Los usuarios que nunca han personalizado su dashboard verán los cambios de inmediato. Los que ya tienen una personalización no los verán hasta que se reseteen todos los dashboards:

  • En la misma página /my/indexsys.php, hacer clic en "Reset all user dashboards".

Esto ejecuta my_reset_page_for_all_users(): elimina todas las páginas personalizadas de la tabla my_pages y sus instancias de bloques asociadas, forzando que todos los usuarios vuelvan al dashboard predeterminado (sin Línea de tiempo ni Calendario).

Alternativa: vía base de datos

Si no se tiene acceso a la interfaz gráfica:

DELETE FROM {block_instances}
WHERE pagetypepattern = 'my-index'
AND blockname IN ('timeline', 'calendar_month', 'recentlyaccessedcourses')
AND parentcontextid = (SELECT id FROM {context} WHERE contextlevel = 10 AND instanceid = 0);

Luego ejecutar:

php admin/cli/cron.php

O visitar /my/indexsys.php?resetall=1&sesskey=<sesskey> para resetear todos los dashboards.

Notas

  • Los bloques Línea de tiempo y Calendario están definidos como bloques por defecto del sistema en lib/blocklib.php (blocks_add_default_system_blocks()). El bloque de calendario que se agrega por defecto es calendar_month, no calendar_upcoming.
  • "Cursos a los que se ha accedido recientemente" (recentlyaccessedcourses) no es un bloque por defecto de blocks_add_default_system_blocks(): si aparece en el Área personal es porque fue añadido manualmente en algún momento a la página predeterminada o a una página personalizada. Se retira con el mismo procedimiento (Admin UI o SQL) usando el nombre de bloque recentlyaccessedcourses.
  • Los estudiantes pueden agregar estos bloques de forma individual si lo desean; el procedimiento solo los retira de la vista predeterminada.