Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[Feature] Support for Split schedules #41

Open
MoralCode opened this issue Sep 7, 2024 · 1 comment
Open

[Feature] Support for Split schedules #41

MoralCode opened this issue Sep 7, 2024 · 1 comment

Comments

@MoralCode
Copy link
Owner

Some schools have "split" schedules where one group of students goes to "early lunch" while the other is in class, and then things swap. This swap usually does not happen at the same time for the students in the early lunch group as it does for the later group.

ClassClock should ideally support this type of schedule.

Rough implementation thoughts

I suspect one good way to implement this is to introduce another field to each class period within a bell schedule that assigns that item one or more "variant" identifiers. this way the schedule can contain overlapping time entries and the web app can easily disambiguate them and show a prompt to ask which schedule the user would like to select (possibly remembering this in browser storage for the future)

Possible Challenges

  • displaying this on the Admin UI in a sensible way
  • handling students whose lunch schedule changed based on the day (i.e. based on who their teacher is that day)
    • this may require adding support for tracking A/B days as well.... which would be a lot of extra work
  • ensuring that all aspects of the webapp are able to handle these "variations"
@MoralCode
Copy link
Owner Author

MoralCode commented Sep 8, 2024

Alternative implementation

set this up as two schedules belonging to the same school that have overlapping days. this may be a good early stage solution for schools where students and staff stay on the same lunch every day for a whole school term.

This would still require a selection UI at approximately schedule selection time (possibly as a secondary "choose your schedule - multiple were detected for today" type thing

Pros:

  • way less in depth changes needed to implement on the front-end

Cons:

  • less capable of dynamic changes like being able to change it for an A and B day
  • requires many things on the admin side of things to potentially be done twice
    • two different schedules (i.e. the shared aspects of the schedule would be duplicated) for each day of the week
    • both schedules would need to be dragged onto the calendar on days where the split applies

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant