Assigning Staff Coverages for Specific Blocks

I’ve been experimenting with the absence / staff coverage features in Gibbon in the hope that our school’s guest teacher coordinator will find them helpful, but I’ve run into a potential dealbreaker.

It seems as though when a staff member submits an absence and requests coverage as part of that submission, all of that staff member’s blocks are requested as a single, monolithic coverage that can only be assigned to one substitute. For example, if an art teacher has a morning art class, a recess duty, and an afternoon art class, assigning a substitute to one of these blocks in the coverage planner assigns that same sub to all of them, and deleting the sub from a block deletes all three assigned blocks, because the three time slots are treated as one request.

We need to be able to assign a different teacher to the recess duty than the one covering the classes in the above example. It looks like this can be done if the teacher requesting the absence also selects substitutes manually, or if coverage requests are manually input for each block needing coverage. It seems like it should be possible though to tweak the behavior of the module so that the automatic coverage requests generated by an absence are split into as many individual coverage requests as there are blocks in the absence period.