Sometime on November 30, Google broke public calendar sharing for apps users. This means that any calendars previously shared with the world (like, for example, my IT events calendar) are no longer visible. As is typical for Google, the change was made quietly and it was not immediately obvious how to fix it. But here’s what you should do if your calendar is no longer public.
Apparently, Google made a mistake when coding calendar sharing for Google Apps domains: The domain wide sharing controls only applied to primary calendars, not secondary calendars created by users. This meant that Google Apps administrators could not control public sharing of calendars. Google fixed this issue by making the Google Apps calendar sharing settings apply to both primary and secondary calendars, pushing this out live around November 30, 2011.
The problem with this fix is that it breaks all public shared calendars by default. Apparently, the grandfathered or default setting for calendar sharing was “only free/busy information”. But users could create their own calendars (what Google refers to as a secondary calendar) and set sharing to any value they liked. In fixing this, Google broke all sorts of public calendars this week.
Here’s how to fix Google’s broken fix:
- Log into the Google Apps Dashboard as the Apps administrator
- Under “Service Settings”, click “Calendar” (or point your browser to https://www.google.com/a/cpanel/YOURDOMAIN.COM/ServiceSettings#ServiceSettings/service=calendar)
- In the “Sharing options” section, you will see “set user ability” for outside your domain. By default, this will be set to “Only free/busy information (hide event details)”. Instead, set it to “Share all information, but outsiders cannot change calendars” or “Share all information, and outsiders can change calendars”. This does not appear to change the permissions of existing calendars, so it should be safe to change.
- If public sharing was previously enabled for a calendar, it should automatically be re-enabled now. If not, click the little triangle next to the calendar’s name in the Google calendar interface, select “Share this calendar”, then make sure “Make this calendar public” and “see all event details” are selected.
It is really frustrating that Google would make a change that affects existing sharing settings explicitly chosen by Apps users, and doubly so thanks to Google’s ridiculously opaque and difficult tech support mechanisms. I couldn’t locate an answer in Google’s own support pages, though (ironically) a Google search did reveal the answer on one of Google’s own pages.