esync: fix for not updated calender, contact, task on device if only description or note was changed in EGroupware. Also fixing issue that values in these fields could not be deleted on several devices.

This commit is contained in:
Philip Herbert 2011-10-23 18:16:41 +00:00
parent e3eed0533c
commit 0b924e9e6e
3 changed files with 24 additions and 12 deletions

View File

@ -350,11 +350,15 @@ class addressbook_activesync implements activesync_plugin_write, activesync_plug
}
else
{
debugLog("airsyncbasebody!");
$message->airsyncbasebody = new SyncAirSyncBaseBody();
$message->airsyncbasenativebodytype=1;
$this->backend->note2messagenote($contact[$attr], $bodypreference, $message->airsyncbasebody);
if (strlen ($contact[$attr]) > 0)
{
debugLog("airsyncbasebody!");
$message->airsyncbasebody = new SyncAirSyncBaseBody();
$message->airsyncbasenativebodytype=1;
$this->backend->note2messagenote($contact[$attr], $bodypreference, $message->airsyncbasebody);
}
}
$message->md5body = md5($contact[$attr]);
break;
case 'jpegphoto':

View File

@ -1008,11 +1008,15 @@ return array(); // temporary disabling meeting requests from calendar
}
else
{
debugLog("airsyncbasebody!");
$message->airsyncbasebody = new SyncAirSyncBaseBody();
$message->airsyncbasenativebodytype=1;
$this->backend->note2messagenote($event['description'], $bodypreference, $message->airsyncbasebody);
if (strlen($event['description']) > 0)
{
debugLog("airsyncbasebody!");
$message->airsyncbasebody = new SyncAirSyncBaseBody();
$message->airsyncbasenativebodytype=1;
$this->backend->note2messagenote($event['description'], $bodypreference, $message->airsyncbasebody);
}
}
$message->md5body = md5($event['description']);
$message->organizername = $GLOBALS['egw']->accounts->id2name($event['owner'],'account_fullname');
$message->organizeremail = $GLOBALS['egw']->accounts->id2name($event['owner'],'account_email');

View File

@ -248,11 +248,15 @@ class infolog_activesync implements activesync_plugin_write
}
else
{
debugLog("airsyncbasebody!");
$message->airsyncbasebody = new SyncAirSyncBaseBody();
$message->airsyncbasenativebodytype=1;
$this->backend->note2messagenote($infolog[$attr], $bodypreference, $message->airsyncbasebody);
if (strlen ($infolog[$attr]) > 0)
{
debugLog("airsyncbasebody!");
$message->airsyncbasebody = new SyncAirSyncBaseBody();
$message->airsyncbasenativebodytype=1;
$this->backend->note2messagenote($infolog[$attr], $bodypreference, $message->airsyncbasebody);
}
}
$message->md5body = md5($infolog[$attr]);
break;
case 'info_cat':