Page MenuHomePhorge

Implement setAttendeeStatus
AbandonedPublic

Authored by vanmeeuwen on Aug 13 2017, 4:33 PM.
Tags
None
Referenced Files
Unknown Object (File)
Fri, Mar 22, 6:51 PM
Unknown Object (File)
Feb 23 2024, 7:19 PM
Unknown Object (File)
Jan 30 2024, 12:41 PM
Unknown Object (File)
Jan 29 2024, 7:17 PM
Unknown Object (File)
Jan 29 2024, 6:24 PM
Unknown Object (File)
Jan 20 2024, 9:16 PM
Unknown Object (File)
Jan 19 2024, 6:47 PM
Unknown Object (File)
Jan 19 2024, 6:00 PM

Details

Summary
  • Require libcalendaring plugin
  • Provide kolab_sync_data* classes with a means to log something, and not have to initialize/obtain a logger backend.
  • Not all serverIds are longer than 64 characters.

    For example, when an event is created in Roundcube, and Outlook is to accept the invitation, the serverId will be CRC'ed but the event UID, and the CRC will be <= 64 characters.
  • A first few baby-steps to getting back to the iTip, and possibly the event.
Test Plan

None

Diff Detail

Repository
rS syncroton
Lint
Lint Not Applicable
Unit
Tests Not Applicable

Event Timeline

This revision was automatically updated to reflect the committed changes.

Not merged in to master.

  • Return NULL for getEntry(), if there is no such entry.
  • Prevent lossy data handling, and preserve the attendee's status
  • Update existing events with the new Meeting Status
  • Fix mismatch between $existing_event being set and using $event
  • Ensure that our new $_attendee is also added back to the list of $event['attendees']
  • The organizer is not true by default -- find the organizer, then set ownership
  • Respond not with a serverId, instead pretend it is all successful
  • Ensure data format transitions retain the additional information wrt. organizer/attendee status
  • Use meetingStatus == 1 for the organizer.
lib/kolab_sync_data.php
957

Did you encounter any issues with this? The point was to not use slower prefix matching query if we have a non-truncated UID. So, we skip this code and go directly to the $folder->get_object($uid) below.

lib/kolab_sync_data_calendar.php
188

I think we should rather throw an exception as we do e.g. in kolab_sync_data_contacts::getEntry(), Syncroton code can't handle NULL properly.

459

I don't think we need this version check here. MeetingStatus is supported in older versions for top-level data. Do I miss something?

460

This does not make much sense to me. This will set the organizer status to DECLINED for events where the user is an attendee. I'd rather set the organizer status always to ACCEPTED.

This needs to be re-evaluated in light of a more recent merge, but there's some questions raised I can see would still need resolving.

lib/kolab_sync_data.php
957

I have.

lib/kolab_sync_data_calendar.php
188

The NULL will result in an exception when such exception is appropriate.

459

I don't know what this means:

MeetingStatus is supported in older versions for top-level data.

460

No, it'll only set the attendee's status to DECLINED if the overall meeting status is CANCELLED, and the attendee in question is also the organizer.