Features

 

 

Supported View Modes

Mini-Month: Displays a month calendar highlighting any days that contain events. Clicking a day containing an event pops up a list of events and clicking on any displayed event will open the event details in a lightbox overlay.

Week: Displays a 'week-at-a-glance' calendar showing the current day's events and allowing a user to click on any of the days of the current week to view the rest of the weeks events. Clicking on the date bar with the mini calendar icon will pop up a month view allowing navigation to weeks beyond the current week.

Day: Displays a single day view showing events for only the current day. Clicking on the date bar with the mini calendar icon will pop up a month view allowing navigation to days beyond the current day.

Agenda: Displays an list of events sorted by date. The agenda vmode loads a month of events at a time and automatically loads a new set of events when the last of the loaded events comes into view.

 

Event Caching

The process of pulling events from Google Calendar for multiple calendar feeds can take a few extra seconds than a user might be interested in waiting, so GCalendar Viewer makes use of Concrete5's caching abilities to cache events for users browsing the site meaning that events will load quite quickly for the default date range and any date ranges already browsed to by other users.

The cache is set to expire once a day to allow for calendar edits to 'go live' the next day. The cache is only used for non-registered users (a.k.a. users not logged in) and will pull directly from Google Calendar for any users viewing the GCalendar instance while logged in allowing editors to preview newly added events before they 'go live' the next day.

If an editor determines that they would like their Google Calendar edits to go live sooner than the next day, they can easily clear Concrete5's global cache. I do plan on adding a feature to clear the cache specific to the GCalendar Viewer in the future if the demand is there.

In Context Event Details

GCalendar Viewer is an integrated events viewer meaning that it is not necessary to navigate away from the current page in order to view an event's details. When a user clicks on an event in a GCalendar instance to view the details of the event, GCalendar pops up the event details as an overlay on top of the current webpage.

Additionally, page reloads are not required to navigate around the calendar and retrieve new events as the calendar interface is updated through a combination of dynamic Javascript and AJAX (Asynchronous Javascript and XML, though technically AJAH with H being HTML).