quick fix for AST-428

Conflicts:

	astrid/plugin-src/com/todoroo/astrid/producteev/sync/ProducteevSyncProvider.java
pull/14/head
Tim Su 15 years ago
parent 26d8421e1a
commit 0de220849a

@ -229,6 +229,8 @@ public class ProducteevSyncProvider extends SyncProvider<ProducteevTaskContainer
JSONArray labels = invoker.labelsShowList(dashboardId, null);
readLabels(labels);
try {
// This invocation throws ApiServiceException for workspaces that need to be upgraded
JSONArray tasks = invoker.tasksShowList(dashboardId, lastServerSync);
for(int i = 0; i < tasks.length(); i++) {
ProducteevTaskContainer remote = parseRemoteTask(tasks.getJSONObject(i));
@ -237,17 +239,19 @@ public class ProducteevSyncProvider extends SyncProvider<ProducteevTaskContainer
remote.task.setFlag(Task.REMINDER_FLAGS, Task.NOTIFY_AFTER_DEADLINE, false);
boolean foundLocal = dataService.findLocalMatch(remote);
// if creator & responsible != current user, skip / delete it
// if creator & responsible != current user, set it to readonly
if(userId != remote.pdvTask.getValue(ProducteevTask.CREATOR_ID) &&
userId != remote.pdvTask.getValue(ProducteevTask.RESPONSIBLE_ID)) {
if(foundLocal)
remote.task.setValue(Task.DELETION_DATE, DateUtilities.now());
userId != remote.pdvTask.getValue(ProducteevTask.RESPONSIBLE_ID))
remote.task.setFlag(Task.FLAGS, Task.FLAG_IS_READONLY, true);
else
continue;
}
remote.task.setFlag(Task.FLAGS, Task.FLAG_IS_READONLY, false);
remoteTasks.add(remote);
}
} catch (ApiServiceException ase) {
// catch it here, so that other dashboards can still be synchronized
handleException("pdv-sync", ase, true); //$NON-NLS-1$
}
}
SyncData<ProducteevTaskContainer> syncData = populateSyncData(remoteTasks);

Loading…
Cancel
Save