[edit: April 2014: in March 2014 we rolled out a major revamp of the calendar tools that was in part informed by the initial design work from 2012 that's captured below. I'm archiving this and concluding that going forward new features will no longer come from this older list - we'll start a new project sheet to capture issues requested against the 3-2014 version of the calendaring tools]

 

This project has multiple goals:

  • Reduce chances of incorrect date publication by:
    • [this was done] reducing the number of calendar software packages being used
      • retire UNL (the events calendar) event publisher after updating CMS calendar tools so they:
        • capture all required data for event creation
        • have a user interface which is as easy to use as the existing UNL tool
    • reduce the number of published calendars with significant crossover of items located on them
    • investigate helping make event publishers aware when they are attempting to create events which already exist in the system
    • Putting someone in a role of calendar czar analogous to the responsibilities Harrison Gregg used to have, possibly again located in the Registrar's office but under discussion with DoF and others, bearing in mind PA's need to still have staff in charge of approving/editing events submitted by the community.
  • Enhance the existing calendar presentation and functionality by:
    • [this was done, 2012] making it possible to distinguish between different event types appearing in a given day or period so that events that don't really have a 'time,' (all day events, holidays, various college dates like add drop, start of classes, etc) are easily distinguishable from events like a hockey game that occurs from 2-4. This problem is worst on the month calendar. An easy illustration of how we might choose to handle this can be seen in how outlook handles all-day events.
    • [We are working on this right now] Making it possible to filter events occuring on a given calendar via multiple criteria, so users can quickly find the event they are looking for. Example criteria are things like:
      • event type
      • location
      • date range
      • [more examples here, drawn from the existing calendar metadata]
    • Making it possible for users of both mobile and web-based display of calendars to single click-add events to:
      • [this was done, 2012] their web (cms) calendar
      • [this was done, 2012] whatever helper their browser is configured to use for calendar data (ie, google calendar, outlook, etc)
      • [we know how to do it - we have opted not to do it so far] investigate whether we can syncronize this to user exchange calendars (lower priority?)
      • discuss whether we think allowing users to request email reminders of event data is useful enough to undertake
      • ditto - email event details to someone else (security/spamming concerns here)
    • [some of this was done but never used, because the main vendor we were interested in, Presto Sports, rejected our requests] Investigate data import processes we could use to populate new or existing CMS calendars with data coming from other sources (third party/vendor data, exchange data, etc).
    • [We are working on this now] Make it possible to have 'linkable views' or custom built views of calendar data, so you can have for example a preconfigured 'upcoming events' view or a 'all sports events' view, or an 'all events of particular type' view.
    • Assess how much work required to deliver CalDav syncing to our calendars - there's various drupal folks asking for it, devs saying 'if someone provides a patch, it's in' - could we provide said patch? How hard?
    • [We are working on this now] replace calendar view. Investigate one of the products below, or an alternative. Ideal new calendar view:
      • ajax driven. No more page loads. Non negotiable - this has to happen.
      • has all day event presentation akin to other calendars (google, ical, exchange, etc)
      • we can control the css/aesthetics
      • relies on a third party for maintenance/updates
      • renders appropriately on mobile
      • is actively maintained
      • jquery based
      • Possible choices (not comprehensive)
        • https://github.com/arshaw/fullcalendar
        • http://code.google.com/p/jquery-frontier-calendar/
        • https://github.com/themouette/jquery-week-calendar
        • http://www.web-delicious.com/jquery-plugins/#calendar
        • http://drupal.org/project/fullcalendar (ie there's a module for the first choice above, woot!)
        • http://dhtmlx.com/docs/products/dhtmlxScheduler/index.shtml (they have a demo drupal module for integration at their site)
  • [this was done, 2012] Enhancements to signups
    • solve the reply to problem with signup reminder emails
  • Investigate ways to better populate calendar with event types not currently present:
    • [we just arrived at a short term solution to this] athletics
    • student events
    • arts (theater, music, museums, ED, etc)
  • [We are working on this now] Make it possible to incorporate image/s, video/s in events.