Commit eac42d65 authored by Sebastian Kummer's avatar Sebastian Kummer

Merge pull request #685 in ZP/z-push from bugfix/ZP-1396-caldav-attendee-but-no-meeting to develop

* commit '0fe37605':
  ZP-1396 Only a meeting if meetingstatus says so. Released under the Affero GNU General Public License (AGPL) version 3.
parents 4b690b54 0fe37605
......@@ -1081,42 +1081,25 @@ class BackendCalDAV extends BackendDiff {
$rtfparser->parse();
$vevent->AddProperty("DESCRIPTION", $rtfparser->out);
}
$is_meeting = false;
if (isset($data->meetingstatus)) {
if (isset($data->meetingstatus) && $data->meetingstatus > 0) {
switch ($data->meetingstatus) {
case "1":
$vevent->AddProperty("STATUS", "TENTATIVE");
$vevent->AddProperty("X-MICROSOFT-CDO-BUSYSTATUS", "TENTATIVE");
$vevent->AddProperty("X-MICROSOFT-DISALLOW-COUNTER", "FALSE");
$is_meeting = true;
break;
case "3":
$vevent->AddProperty("STATUS", "CONFIRMED");
$vevent->AddProperty("X-MICROSOFT-CDO-BUSYSTATUS", "CONFIRMED");
$vevent->AddProperty("X-MICROSOFT-DISALLOW-COUNTER", "FALSE");
$is_meeting = true;
break;
case "5":
case "7":
$vevent->AddProperty("STATUS", "CANCELLED");
$vevent->AddProperty("X-MICROSOFT-CDO-BUSYSTATUS", "CANCELLED");
$vevent->AddProperty("X-MICROSOFT-DISALLOW-COUNTER", "TRUE");
$is_meeting = true;
break;
}
}
if (isset($data->attendees) && is_array($data->attendees)) {
$is_meeting = true;
foreach ($data->attendees as $att) {
if (isset($att->name)) {
$vevent->AddProperty("ATTENDEE", sprintf("MAILTO:%s", $att->email), array("CN" => $att->name));
}
else {
$vevent->AddProperty("ATTENDEE", sprintf("MAILTO:%s", $att->email));
}
}
}
if ($is_meeting) {
if (isset($data->organizeremail) && isset($data->organizername)) {
$vevent->AddProperty("ORGANIZER", sprintf("MAILTO:%s", $data->organizeremail), array("CN" => $data->organizername));
}
......@@ -1128,6 +1111,16 @@ class BackendCalDAV extends BackendDiff {
//Lets use the login here ($username)
$vevent->AddProperty("ORGANIZER", sprintf("MAILTO:%s", $data->originalUsername));
}
if (isset($data->attendees) && is_array($data->attendees)) {
foreach ($data->attendees as $att) {
if (isset($att->name)) {
$vevent->AddProperty("ATTENDEE", sprintf("MAILTO:%s", $att->email), array("CN" => $att->name));
}
else {
$vevent->AddProperty("ATTENDEE", sprintf("MAILTO:%s", $att->email));
}
}
}
}
if (isset($data->body) && strlen($data->body) > 0) {
$vevent->AddProperty("DESCRIPTION", $data->body);
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment