This year, KECHB decided to move to a repeated event rather than individual events for each week. this caused major issues.
In this PR, a fix is included which does the following:
uses the rrule library (already installed thanks to the ical library) to convert RRule strings into usable classes
using (1), adds all recurrences to the calendar events map before the main filtering begins. This includes handling of start dates (which many RRules do not have, and as such the RRule library does not handle properly, instead using the current time for the beginning of an RRule, which is just straight up not helpful) and other funky stuff
It also includes a fix to handle week A/B events that are not formatted correctly (i.e. uppercase, lowercase, extra whitespace)
All together, this was a horrible experience due to awful documentation and broken implementations!
This code should work as long as a calendar with week A/B events is available, and should be effectively bulletproof (of course, having typed that, I have now jinxed it. Have fun future maintainers!)
This year, KECHB decided to move to a repeated event rather than individual events for each week. this caused major issues.
In this PR, a fix is included which does the following:
rrule
library (already installed thanks to theical
library) to convert RRule strings into usable classesAll together, this was a horrible experience due to awful documentation and broken implementations!
This code should work as long as a calendar with week A/B events is available, and should be effectively bulletproof (of course, having typed that, I have now jinxed it. Have fun future maintainers!)