sabre-io / dav

sabre/dav is a CalDAV, CardDAV and WebDAV framework for PHP
http://sabre.io
BSD 3-Clause "New" or "Revised" License
1.54k stars 348 forks source link

CalDav VAVAILABILITY #1208

Open iammatis opened 5 years ago

iammatis commented 5 years ago

Hey, is there any chance I could get some info on usage of VAVAILIBILITY component ? Apparently it's implemented by Sabre "Since sabre/dav 3.1 availability is supported.". On the docs page it says you need to have PropertyStorage plugin is enabled. So I added these lines to the code:

$storageBackend = new Sabre\DAV\PropertyStorage\Backend\PDO($pdo):
$propertyStorage = new \Sabre\DAV\PropertyStorage\Plugin($storageBackend);
$server->addPlugin($propertyStorage);

1. Is there anything else that need to be done here ?

The docs link to draft RFC, but I found this one, that's not a draft.

Example VAVAILABILITY component from the RFC:

BEGIN:VAVAILABILITY
ORGANIZER:mailto:bernard@example.com
UID:0428C7D2-688E-4D2E-AC52-CD112E2469DF
DTSTAMP:20111005T133225Z
BEGIN:AVAILABLE
UID:34EDA59B-6BB1-4E94-A66C-64999089C0AF
SUMMARY:Monday to Friday from 9:00 to 17:00
DTSTART;TZID=America/Montreal:20111002T090000
DTEND;TZID=America/Montreal:20111002T170000
RRULE:FREQ=WEEKLY;BYDAY=MO,TU,WE,TH,FR
END:AVAILABLE
END:VAVAILABILITY

Question n.2 a) Is this component (see example) supposed to be created (via PUT) method like the others (VEVENT) components ? If so do I have to allow/modify sth to be able to do this ? b) If not then how should I use it ?

ChristophWurst commented 3 years ago

See https://github.com/sabre-io/dav/issues/1127#issuecomment-482130105. You have to send this prop to the schedule inbox