I need your thoughts/comments/suggestions on some CalDAV implementation
issues I need to resolve...
In OFBiz, parties and fixed assets can be assigned to work efforts. In
CalDAV, calendars are viewed as a folder structure with *.ics files in
them. The simplest way to map the CalDAV spec to OFBiz (that I can
imagine) would be to have two main collections (folders) - parties and
fixedassets. Within each collection would be one calendar per
party/fixed asset. Within each collection the iCal "files" (the request
for a file will do a WorkEffort lookup and return an iCal text stream -
there is no physical file) will be named according to user login ID or
fixed asset ID.
So, assuming a base URL of https://localhost:8443/ical - the calendar
for the admin user login would be
https://localhost:8443/ical/parties/admin.ics, and the calendar for the
DEMO_MACHINE fixed asset would be
https://localhost:8443/ical/fixedassets/DEMO_MACHINE.ics.
This is a crude and simple implementation that would serve my immediate
needs, but it needs more work to make it more appealing to others (and
to make it RFC compliant). Here is where I need your help - I need ideas
on these potential issues:
1. Some users might balk at the idea of using their login ID as a
calendar name - since the URL could become public if the user wants to
share their calendar. We would need a way to map an iCal URL to a user's
work efforts. Example: https://localhost:8443/ical/TheAdministrator.ics
maps to user login ID admin.
2. The CalDAV specification allows for an arbitrary arrangement of
collections - just like the folder structure on a hard disk. So, I could
have something like -
https://localhost:8443/ical/adrian.ics
or
https://localhost:8443/ical/adrian/public.ics
https://localhost:8443/ical/adrian/private.ics
So there would have to be a way to map multiple calendars to each user.
The example brings up another issue - how to map work efforts to
different calendars.
Let me know what you think.
-Adrian