Dear All,
I'm working on the Calendar Application and I would like a few opinions on
how to structure it.
Details about the application can be found here:
http://incubator.myxwiki.org/xwiki/bin/view/Drafts/CalendarApplication and
my main problem is choosing between the presented alternatives.
A few important pieces of information about the application:
- every event is a document with an object of EventClass attached
- every calendar is a document with an object of CalendarClass attached
- whenever a calendar is added, a space is also created. This space will
store the calendar doc and the events associated with the calendar
The functionality can be found on incubator.
The alternatives are:
*Calendar aggregator*
The WebHome of the application is an aggregated calendar which displays the
events from all the calendars of a user.
The user creates several calendars (e.g. Personal, Work) which can be
visualized both individually and together, on the main page of the
application.
This is very similar to Google Calendar, following the same approach. The
main advantage of this is the ease of interaction between users' calendars
(e.g. sharing a calendar with another user means displaying the specific
calendar among his own calendars, inside the WebHome).
*Individual calendars with categories*
The users creates calendars which are individual entities and each event is
assigned a category when added.
When the user is invited to other events he can choose to view those events
in one or more of his calendars while when another user shares a calendar
with him he can only view that calendar, on a separate page.
As far as I see it, the first choice means easier interaction between users
but considering the number of events that must be selected every time,
performance might not be that good.
Please let me know which of the two you consider to be better or, if you
have another solution, which might that be.
Thanks,
Vlad