mirror of
https://github.com/EGroupware/egroupware.git
synced 2025-02-18 03:11:40 +01:00
address moreData conflict between datastores
This commit is contained in:
parent
a95b0a16be
commit
e227c3c4c3
@ -285,8 +285,10 @@ class Horde_SyncML_Command_Alert extends Horde_SyncML_Command {
|
|||||||
$synctype != ALERT_ONE_WAY_FROM_CLIENT &&
|
$synctype != ALERT_ONE_WAY_FROM_CLIENT &&
|
||||||
$synctype != ALERT_ONE_WAY_FROM_SERVER) {
|
$synctype != ALERT_ONE_WAY_FROM_SERVER) {
|
||||||
$serverAnchorLast = 0;
|
$serverAnchorLast = 0;
|
||||||
if (!$anchormatch) {
|
if (isset($GLOBALS['egw_info']['user']['preferences']['syncml']['slowsync_ignore_map']) &&
|
||||||
// Erase existing map:
|
$GLOBALS['egw_info']['user']['preferences']['syncml']['slowsync_ignore_map']
|
||||||
|
|| !$anchormatch) {
|
||||||
|
// Erase existing map
|
||||||
$state->removeAllUID($this->_targetLocURI);
|
$state->removeAllUID($this->_targetLocURI);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -39,6 +39,13 @@ class Horde_SyncML_Sync_RefreshFromServerSync extends Horde_SyncML_Sync_TwoWaySy
|
|||||||
if (isset($state->curSyncItem)) {
|
if (isset($state->curSyncItem)) {
|
||||||
// Finish the pending sync item
|
// Finish the pending sync item
|
||||||
$cmd = &$state->curSyncItem;
|
$cmd = &$state->curSyncItem;
|
||||||
|
if (!is_a($cmd, 'Horde_SyncML_Command_Sync_ContentSyncElement')) {
|
||||||
|
// Conflict with other datastore
|
||||||
|
Horde :: logMessage("SyncML: handleSync($currentCmdID, $hordeType, $syncType) moreData conflict found",
|
||||||
|
__FILE__, __LINE__, PEAR_LOG_DEBUG);
|
||||||
|
$state->setSyncStatus(SERVER_SYNC_DATA_PENDING);
|
||||||
|
return $currentCmdID;
|
||||||
|
}
|
||||||
unset($state->curSyncItem);
|
unset($state->curSyncItem);
|
||||||
$currentCmdID = $cmd->outputCommand($currentCmdID, $output, 'Sync');
|
$currentCmdID = $cmd->outputCommand($currentCmdID, $output, 'Sync');
|
||||||
|
|
||||||
|
@ -47,6 +47,13 @@ class Horde_SyncML_Sync_SlowSync extends Horde_SyncML_Sync_TwoWaySync {
|
|||||||
if (isset($state->curSyncItem)) {
|
if (isset($state->curSyncItem)) {
|
||||||
// Finish the pending sync item
|
// Finish the pending sync item
|
||||||
$cmd = &$state->curSyncItem;
|
$cmd = &$state->curSyncItem;
|
||||||
|
if (!is_a($cmd, 'Horde_SyncML_Command_Sync_ContentSyncElement')) {
|
||||||
|
// Conflict with other datastore
|
||||||
|
Horde :: logMessage("SyncML: handleSync($currentCmdID, $hordeType, $syncType) moreData conflict found",
|
||||||
|
__FILE__, __LINE__, PEAR_LOG_DEBUG);
|
||||||
|
$state->setSyncStatus(SERVER_SYNC_DATA_PENDING);
|
||||||
|
return $currentCmdID;
|
||||||
|
}
|
||||||
unset($state->curSyncItem);
|
unset($state->curSyncItem);
|
||||||
$currentCmdID = $cmd->outputCommand($currentCmdID, $output, 'Sync');
|
$currentCmdID = $cmd->outputCommand($currentCmdID, $output, 'Sync');
|
||||||
|
|
||||||
|
@ -62,6 +62,13 @@ class Horde_SyncML_Sync_TwoWaySync extends Horde_SyncML_Sync {
|
|||||||
if (isset ($state->curSyncItem)) {
|
if (isset ($state->curSyncItem)) {
|
||||||
// Finish the pending sync item
|
// Finish the pending sync item
|
||||||
$cmd = & $state->curSyncItem;
|
$cmd = & $state->curSyncItem;
|
||||||
|
if (!is_a($cmd, 'Horde_SyncML_Command_Sync_ContentSyncElement')) {
|
||||||
|
// Conflict with other datastore
|
||||||
|
Horde :: logMessage("SyncML: handleSync($currentCmdID, $hordeType, $syncType) moreData conflict found",
|
||||||
|
__FILE__, __LINE__, PEAR_LOG_DEBUG);
|
||||||
|
$state->setSyncStatus(SERVER_SYNC_DATA_PENDING);
|
||||||
|
return $currentCmdID;
|
||||||
|
}
|
||||||
unset ($state->curSyncItem);
|
unset ($state->curSyncItem);
|
||||||
$currentCmdID = $cmd->outputCommand($currentCmdID, $output, 'Sync');
|
$currentCmdID = $cmd->outputCommand($currentCmdID, $output, 'Sync');
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user