diff --git a/assets/js/main.js b/assets/js/main.js
index fe0a65f..39601ae 100644
--- a/assets/js/main.js
+++ b/assets/js/main.js
@@ -362,10 +362,10 @@ function loadProfessorCourses(container) {
-
Lista de Cursos
-
+
+
Lista de Cursos
+
+
+
+
+
+
+
@@ -446,29 +458,56 @@ function loadProfessorCourses(container) {
.join("")}
+
+ Cuando haya cursos en esta categoría, se mostrarán aquí.
+
`;
- // Evaluar si se debe mostrar "Leer más" en cada descripción
+ // Leer más si descripción es larga
setTimeout(() => {
courses.forEach(course => {
const span = document.getElementById(`desc-${course.id}`);
const leerMas = document.getElementById(`readmore-${course.id}`);
-
if (span && leerMas && span.scrollWidth > span.clientWidth) {
const safeDesc = (course.descripcion || "")
.replace(/'/g, "\\'")
.replace(/"/g, """)
.replace(/\n/g, "\\n");
-
leerMas.innerHTML = `
-
- Leer más
- `;
+
Leer más`;
}
});
}, 0);
+ // Filtro con mensaje si no hay visibles
+ const filtro = document.getElementById("courseFilter");
+ if (filtro) {
+ filtro.addEventListener("change", function () {
+ const estadoSeleccionado = this.value;
+ const filas = document.querySelectorAll(".courses-table tbody tr");
+ let visibles = 0;
+
+ filas.forEach(fila => {
+ const badgeEstado = fila.querySelector("td:nth-child(4) .badge");
+ const estado = badgeEstado?.textContent.toLowerCase() || "";
+ if (estadoSeleccionado === "todos" || estado === estadoSeleccionado) {
+ fila.style.display = "";
+ visibles++;
+ } else {
+ fila.style.display = "none";
+ }
+ });
+
+ const mensajeVacio = document.getElementById("emptyCourseMessage");
+ if (mensajeVacio) {
+ mensajeVacio.style.display = visibles === 0 ? "block" : "none";
+ }
+ });
+
+ filtro.dispatchEvent(new Event("change"));
+ }
+
setupCourseForm();
})
.catch((err) => {