UPDATE: An anonymous person in the comments posts this link: http://www.atidan.com/atidan-collaboration-kit.php
Forum users often ask a question like this:
"I would like to have a calendar at the site level that is populated by events from subsite calendars. Ideally, users in subsites will create calendar events, and will have the option of marking them as ‘public.’ Events marked as public will dynamically appear in the shared site calendar. Thus the shared site calendar is a roll-up of all public events from all subsite calendars."
Is WSS 3.0 or MOSS 2007, it is not possible to directly configure a "roll-up" calendar. Calendars exist on their own, independent of any other calendar.
To create a roll-up calendar, follow one of these paths:
- Use a Content Query Web Part. This is the easiest solution for MOSS users (WSS does not provide CQWP). CQWP, unfortunately, does not provide a calendar view of data out of the box. It does provide enormous rendering flexibility (see here for one example) but by default, shows its results in simple list format. In many cases, CQWP probably a good choice.
- A more programming-oriented solution would be to use event receivers. Implement event receivers on the subsite calendars that keep their public events in sync with the master calendar. As a given subsite calendar is modified, reach out to the master calendar and update it as needed. This option is available in both WSS 3.0 and MOSS.
There are probably other clever solutions to this problem. If you have one or know of one, please leave a comment or email me and I will update this post.