So, by the end of the year, I finally managed to get my
Grav ICS Calendar Plugin
to display ICS Calendar(s) in a state that corresponds to
what I was using
during my Wordpress era
.
This was a task that I had postponed since my
switch to Grav
earlier this year, knowing well that this was a Plugin that would need a substantial amount of work to get to a state that was comparable to my
old Wordpress Plugin.
For some time, I was thinking about to create a Plugin (technically) very similar to that, but then decided to not follow this route further on, as I would have to basically write it new from scratch.
Mainly, because the WP ICS parsing code was heavily outdated, and all the UI stuff could not be easily ported to Grav - so, also here, a complete rewrite would be necessary.
During my search for alternative implementations, I discovered
Fullcalendar
, checked it out and found if very nice.
But not only nice (which is good, but not sufficient) but also flexible in a means to incorporate into a dedicated Grav Plugin due to
- good documentation
- powerful API
So, what I had to do, was basically set up a Grav Plugin skeleton for Javascript functionality and then craft a JQuery based wrapper in a template, that would encapsulate all the fullcalendar functions in a way, so that the resulting HTML Output would essentially do everything what the old WP Plugin could do (except the proper Handling of recurring Events, which are not yet supported by the underlying fullcalendar.io framework).
Which turned out to not be too complicated, the last important thing left up to today was to display Events from different Calendars in customizable colors (including a Legend to show what is what).
Now, with Version 0.1.5 from today, this has come true - enjoy
.
And, yes, this Plugin is not only available on GitHub, but also in the
Grav Plugins Directory
and can thus be installed via the Grav Admin Backend as well as the (CLI-) Grav Package Manager.
P.S.:
Anyone interested can see it in Action on
my own Calendar Page
.