EventPutListener
in package
Event Put Operation Handler
Reimplements the original davPutObject and Icalendar_Handler / Icalendar_Handler_Dav logic but with some changes:
- Namespaced code, injection, no/less globals
- Run same code for changes from frontend, import, interapp API
- Events/Messages are fired to listeners (itip, notification, ...)
- Always save/modify caldav representation
- Listeners should work on provided objects, not on saved state
Workflow:
Find relevant backend Check Permission [checkPermissionListener] check for existing event create:
- create event in event storage
- create event in caldav storage
- handle attendees, if any
- handle resources, if any
- initialize change history
update:
- Compare Events
- Reject outdated updates
- Apply valid updates to calendar event backend
- Apply valid updates to caldav storage backend
- Document change history
Table of Contents
- __construct() : mixed
- __invoke() : mixed
Methods
__construct()
public
__construct(Horde_Dav_Storage $dav, Kronolith_Icalendar_Storage $icalStore, PutHandlerListeners $listeners) : mixed
Parameters
- $dav : Horde_Dav_Storage
- $icalStore : Kronolith_Icalendar_Storage
- $listeners : PutHandlerListeners
Return values
mixed —__invoke()
public
__invoke(EventPut $event) : mixed
Parameters
- $event : EventPut