Saltar al contenido principal

Fila héroe del curso

Ficha técnica
  • Impacto — Tema: templates/course_hero_row.mustache, core_renderer::full_header() y core_renderer::course_hero_row_context(), SCSS .cdigital-coursehero*
  • Impacto — Plugin: course_stats::get_user_progress() (reutilizado)
  • Figma: 19723-2736 · Estado: Implementado

Propósito​

Primera franja de la vista de curso, encima del banner "Tu desempeño académico". Da al estudiante, de un vistazo, el contexto del curso y su avance en él antes de entrar al contenido.

Se compone de dos piezas:

PiezaContenido
Card del cursoImagen de portada, nombre del curso, línea "Profesor:" y barra de progreso con su porcentaje
Módulo "Tu avance general"Anillo de progreso en SVG, contador "X de Y" y botón que abre la modal "Ver mi avance"

Cuándo se muestra​

Se inyecta desde core_renderer::full_header() bajo tres condiciones simultáneas: la página es de curso, hay un usuario autenticado que no es invitado, y el ajuste enablecoursebanner está activo.

Un solo interruptor para tres componentes

enablecoursebanner gobierna a la vez esta fila héroe, el banner y la modal. Apagarlo devuelve la vista de curso al encabezado nativo de Boost. Ver Ajustes del tema.

En la vista de una sola sección (formatos que muestran una sección por página) esta fila se sustituye por la tarjeta héroe de sección, documentada en Marco de secciones del curso. Son rutas alternativas del mismo full_header(), nunca se muestran las dos.

De dónde salen los datos​

DatoOrigen
Imagen de portadacourse_summary_exporter::get_course_image(), con reserva a get_generated_image_for_id() si el curso no tiene imagen
Nombre del cursoformat_string() sobre el nombre completo, en contexto de curso
Docentescore_course_category::preload_course_contacts() + core_course_list_element::get_course_contacts()
Progresocourse_stats::get_user_progress() del plugin de datos

Comportamiento sin seguimiento de finalización​

Si el curso no tiene seguimiento de finalización, get_user_progress() devuelve null y la fila oculta la barra de progreso y todo el módulo "Tu avance general", conservando la card del curso. No muestra ceros ni un anillo vacío: una métrica que no se puede calcular no se dibuja.

La llamada al plugin de datos está protegida con class_exists(), de modo que el tema sigue funcionando aunque local_pccntr8203403_dashboard no esté instalado.

Archivos​

ArchivoRol
templates/course_hero_row.mustachePlantilla propia del tema
classes/output/core_renderer.phpfull_header() (inyección) y course_hero_row_context() (datos)
scss/preset/cdigital.scssEstilos de la card y del anillo de progreso

Verificación​

Como estudiante matriculado, abrir un curso con seguimiento de finalización activo: deben verse la portada, el nombre, el docente y un porcentaje coherente con el avance real. El botón debe abrir la modal "Ver mi avance". Repetir en un curso sin seguimiento de finalización: la card se muestra y el módulo de avance desaparece.