Filter timetables by a class time range and rank by fewest lab days
Los mantenedores suelen responder en 1 día
Nadie ha tomado este issue todavía.
Evaluación
- Dificultad
- 4/5
- Tiempo estimado
- 3-5 días
- Aptitud para principiantes
- 43/100
- Tipo de issue
- Nueva funcionalidad
- Claridad
- Bastante claro
- Estado de actividad
- Activo
- Stack tecnológico
- typescript
- Área
- frontend
Línea de trabajo
Start with evaluateFilters in src/lib/filterUtils.ts and inspect how timetable slots are represented, especially lab slots and grouped timetables. The issue leaves lab behavior for Mixed theory time open, so clarify that before implementing the ranking and filtering changes. Done means the requested ranking, opposite-shift lab filtering, and existing building and faculty filters work together; check ViewTimeTable.tsx for the affected timetable flow.
Escrito por el modelo de indexación a partir del texto del issue.
Descripción
Is your feature request related to a problem? Please describe.
The Morning, Evening and Mixed filters only look at theory slots (evaluateFilters in src/lib/filterUtils.ts skips lab slots), so a student can't keep their whole day, labs included, inside the hours they want. There is also no way to prefer timetables with labs on fewer days.
Describe the solution you'd like
- Class time range: two handles snap to the times classes start and end. Timetables with any theory or lab class outside the range are removed. The full day means off.
- Fewest lab days ranks timetables, best first, and never removes one.
- Theory time (Morning, Evening, Mixed), Same building and the faculty filter keep working as they do today.
- Generation is not changed; the options work on the generated timetables.
Additional context
The popover and the tags that show these options are in the UI issue (#288).
Related: #263 (same-building filtering), closed.
ViewTimeTable.tsx and filterUtils.ts are changing in other work:
- #266 (open): splits
ViewTimeTable.tsxinto smaller modules. - #283 (open PR): changes timetable state in
ViewTimeTable.tsx. - #262 (open): changes the saved-timetable local storage syncing in the same file.
- #267 (merged): groups timetables with the same slot layout, so the ranking has to order the grouped timetables.
Design
- Figma frame:
Timetable filters(node2560:1371), which shows the popover with these options. - Link: https://www.figma.com/design/uCP8B7drfprKgsHYjB8sYs?node-id=2560-1371
Example
One way to build it (just an idea):
- Look up each slot's start and end time from the timetable grid and drop timetables with a class outside the range.
- Give each timetable a lab-day count and sort by it.
const shown = timetables.filter(tt => tt.start >= from && tt.end <= to);
- Lenguaje dominante
- TypeScript
- Estrellas
- 6
- Forks
- 37
- Merge medio
- 11 h 13 min
- PR fusionados (30 d)
- 55
Preparar el entorno
- Sin Dockerfile ni archivo de Docker Compose
- Sin plantilla de pull request
- Leer la guía de contribución
Primeros pasos
- Lee el issue completo y luego la guía de contribución del proyecto.
- Comenta en el issue que vas a ocuparte — evita que dos personas hagan lo mismo.
- Haz un fork del repositorio y trabaja en una rama.
- Abre un pull request que haga referencia al número del issue.
Más de CodeChefVIT/ffcs
-
Dificultad 4/5 3-5 días Aptitud para principiantes 55/100
CodeChefVIT/ffcs#295 ·
Los mantenedores suelen responder en 1 día
-
Dificultad 4/5 1-2 días Aptitud para principiantes 48/100
CodeChefVIT/ffcs#292 ·
Los mantenedores suelen responder en 1 día
-
Edit a course from Your Courses with a pencil buttonPosiblemente ocupada @Aiden-Trindade la tomó hace 1 día. Abierto
Dificultad 5/5 Más de una semana Aptitud para principiantes 43/100
CodeChefVIT/ffcs#291 · 1 asignado ·
Los mantenedores suelen responder en 1 día
-
Put the selection box and Your Courses side by side and restyle themPosiblemente ocupada @Aiden-Trindade la tomó hace 1 día. Abierto
Dificultad 4/5 3-5 días Aptitud para principiantes 55/100
CodeChefVIT/ffcs#290 · 1 asignado ·
Los mantenedores suelen responder en 1 día
-
Dificultad 4/5 3-5 días Aptitud para principiantes 42/100
CodeChefVIT/ffcs#288 ·
Los mantenedores suelen responder en 1 día
Todos los issues de CodeChefVIT/ffcs
Issues similares
-
b:minor bug
Dificultad 2/5 1-3 horas Aptitud para principiantes 76/100
software-mansion/argent#1698 ·
Los mantenedores suelen responder en 1 día
-
e2e-failure ready-to-code
Dificultad 2/5 1-3 horas Aptitud para principiantes 72/100
redhat-developer/rhdh-plugin-export-overlays#4624 · 1 comentario ·
Los mantenedores suelen responder en 1 día
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 82/100
better-auth/better-auth#12132 · 1 reacción ·
Los mantenedores suelen responder en 1 día
-
automation missing-model model-sync provider:tinfoil
Dificultad 2/5 1-3 horas Aptitud para principiantes 68/100
anomalyco/models.dev#12053 ·
Los mantenedores suelen responder en 1 día
-
o8 next debug build aborts on Glass to Dark appearance switch (nil identifier messaged before check)Abiertobug
Dificultad 2/5 1-3 horas Aptitud para principiantes 78/100
hurttlocker/o8#5112 ·