Use Status Board to Display Google Calendar in a Table Panel

I just released a custom table panel for Panic’s Status Board that displays the podcast network 5by5’s live broadcast schedule for the next 30 days.

5by5 uses Google Calendar so this table actually just interacts with that. This means it isn’t just limited to 5by5 and you can use it for pretty much any Google Calendar feed. Because of that, I’m putting the source up over on GitHub as I’m sure there’ll be people who might be interested in using it (it’s also embedded below).

The panel works by calling the Google Calendar feed as JSON with a bunch of queries to remove any redundant information as well as specify the date range to use. Once that is loaded, the remaining Javascript parses the even titles, dates and times and generates a table that is compatible with Status Board. If you’ve any experience using Javascript, HTML and have used Google Calendar’s API on any level before, this will all be easy to modify.

The panel is written in Javascript and I’m by no means proficient in it, so there’s likely plenty of rookie mistakes or places where it can be improved upon. I originally wrote the panel in PHP using Zend, but realised this was far more complicated than it needed to be, not to mention that it had to be hosted server-side. I re-wrote it in Javascript which means it can be run anywhere.

I encourage anyone wanting to tweak it to brush up on the Google Calendar API guide on query strings since much of the work can be done before the feed is even loaded. Additionally, check out Panic’s Status Board custom table guide to be sure that any HTML you generate works properly.

https://gist.github.com/jordanmerrick/5425582.js