Skip to content

Add support for timetables in teaching webpage #98

@fabiodrg

Description

@fabiodrg

Would be nice to support this page: https://paginas.fe.up.pt/~sigarra/Horarios21-22_2S/

This page has the draft schedule timetables for classes and teachers before they are finalised and published in Sigarra.

Requirements:

  • Export my own teaching schedule to the calendar
    • Note that some teachers have multiple 'weeks' entries. A good example is LFT
  • Filtering support in the 'Docentes' and 'Unidades Curriculares' menus to ease navigation

Tasks:

  • Correctly extract events in the table: start time (use current row index, each row increments 30 min), end time (use rowspan), room location
  • Support all week days, as well as Saturdays. See LFT as an example
  • Identify the class type using the color map. There is one table labelling the meaning for each color, i.e. PL, T, TP, etc. Each color is set using a CSS class, e.g. td_tipologia_17. The same class is used in the table td. Thus, it is possible to map.
  • Extract the list of teachers assigned for each class. The schedule table uses the name initials as identifiers. An additional table adds extra details for each initial: teacher full name, sigarra profile code. Multiple teachers may be assigned to the same class.
  • Extract UC details. The scheduling table uses UC initials. An additional table maps the UC initials to the full name and Sigarra code.
  • Support overlapping events. I think it only happens for UC schedule tables. Nevertheless, try to avoid assumptions. Attempt a generic implementation that supports all cases, regardless of the table type (teacher schedule, room schedule, etc.). It is necessary to play with the columns spans attributes. For instance, the column for monday is declared with colspan=2. When parsing time rows, if the first event is colspan=2, then the following event is for tuesday. If the first event is colspan=1, the following event, presumably colspan=1 as well, is associated to monday as well.

image

Metadata

Metadata

Assignees

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions