Commit 0e281bb3 authored by mku's avatar mku

ZP-510 #comment Showing appointment in Outlook as "working elsewhere" removes...

ZP-510 #comment Showing appointment in Outlook as "working elsewhere" removes appointment from agenda

git-svn-id: https://z-push.org/svn/z-push/trunk@1921 b7dd7b3b-3a3c-0410-9da9-bee62a6cc5b5
parent 1e065092
...@@ -603,6 +603,7 @@ define('fbFree' ,0); ...@@ -603,6 +603,7 @@ define('fbFree' ,0);
define('fbTentative' ,1); define('fbTentative' ,1);
define('fbBusy' ,2); define('fbBusy' ,2);
define('fbOutOfOffice' ,3); define('fbOutOfOffice' ,3);
define('fbWorkingElsewhere' ,4);
/* ICS flags */ /* ICS flags */
......
...@@ -314,6 +314,11 @@ class MAPIProvider { ...@@ -314,6 +314,11 @@ class MAPIProvider {
if (!isset($message->nativebodytype)) $message->nativebodytype = $this->getNativeBodyType($messageprops); if (!isset($message->nativebodytype)) $message->nativebodytype = $this->getNativeBodyType($messageprops);
// If the user is working from a location other than the office the busystatus should be interpreted as free.
if (isset($message->busystatus) && $message->busystatus == fbWorkingElsewhere) {
$message->busystatus = fbFree;
}
return $message; return $message;
} }
...@@ -459,6 +464,10 @@ class MAPIProvider { ...@@ -459,6 +464,10 @@ class MAPIProvider {
if(!isset($syncMessage->exceptions)) if(!isset($syncMessage->exceptions))
$syncMessage->exceptions = array(); $syncMessage->exceptions = array();
// If the user is working from a location other than the office the busystatus should be interpreted as free.
if (isset($exception->busystatus) && $exception->busystatus == fbWorkingElsewhere) {
$exception->busystatus = fbFree;
}
array_push($syncMessage->exceptions, $exception); array_push($syncMessage->exceptions, $exception);
} }
......
...@@ -125,7 +125,7 @@ class SyncAppointment extends SyncObject { ...@@ -125,7 +125,7 @@ class SyncAppointment extends SyncObject {
// 3 = Out of office // 3 = Out of office
SYNC_POOMCAL_BUSYSTATUS => array ( self::STREAMER_VAR => "busystatus", SYNC_POOMCAL_BUSYSTATUS => array ( self::STREAMER_VAR => "busystatus",
self::STREAMER_CHECKS => array( self::STREAMER_CHECK_REQUIRED => self::STREAMER_CHECK_SETTWO, self::STREAMER_CHECKS => array( self::STREAMER_CHECK_REQUIRED => self::STREAMER_CHECK_SETTWO,
self::STREAMER_CHECK_ONEVALUEOF => array(0,1,2,3) )), self::STREAMER_CHECK_ONEVALUEOF => array(0,1,2,3,4) )),
SYNC_POOMCAL_ALLDAYEVENT => array ( self::STREAMER_VAR => "alldayevent", SYNC_POOMCAL_ALLDAYEVENT => array ( self::STREAMER_VAR => "alldayevent",
self::STREAMER_CHECKS => array( self::STREAMER_CHECK_ZEROORONE => self::STREAMER_CHECK_SETZERO)), self::STREAMER_CHECKS => array( self::STREAMER_CHECK_ZEROORONE => self::STREAMER_CHECK_SETZERO)),
......
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