- Agendav allow users to share their own calendar(s) directly to other users present in the davical server database.
We like this feature because the davical admin frontend is too complex for basic users.
To display the principals list, an XML search is done using the davical server.
After that, the Agendav PHP code use the following function : caldav->setacl to share a resource.
The XML request is describe in web/application/libraries/Caldav.php
I'm not a dev expert, you might take a look !
I checked AgenDAV source code but it looks mysteriously, in the source code I found:
CREATE TABLE shared (
sid int NOT NULL DEFAULT nextval('shared_sid_seq'),
user_from varchar(255) NOT NULL,
calendar varchar(255) NOT NULL,
user_which varchar(255) NOT NULL,
options text NOT NULL DEFAULT '',
write_access boolean NOT NULL DEFAULT '0',
PRIMARY KEY (sid)
but AgenDAV is also able to alter server privileges (there are some ACL and PROPPATCH related
functions) - so I am not sure how exactly the sharing works.
What we can do is to add support for ACL manipulation using DAV requests (we will very probably add it in future).