From 0b2cf5837502146b82ce97a7ea35c5342134577d Mon Sep 17 00:00:00 2001 From: Tim Su Date: Wed, 21 Sep 2011 00:34:40 -0700 Subject: [PATCH] sync repeat on complete with Astrid.com --- .../com/todoroo/astrid/actfm/sync/ActFmSyncService.java | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/astrid/plugin-src/com/todoroo/astrid/actfm/sync/ActFmSyncService.java b/astrid/plugin-src/com/todoroo/astrid/actfm/sync/ActFmSyncService.java index 3d6c8a75b..b36eecf2d 100644 --- a/astrid/plugin-src/com/todoroo/astrid/actfm/sync/ActFmSyncService.java +++ b/astrid/plugin-src/com/todoroo/astrid/actfm/sync/ActFmSyncService.java @@ -307,7 +307,10 @@ public final class ActFmSyncService { params.add("importance"); params.add(task.getValue(Task.IMPORTANCE)); } if(values.containsKey(Task.RECURRENCE.name)) { - params.add("repeat"); params.add(task.getValue(Task.RECURRENCE)); + String recurrence = task.getValue(Task.RECURRENCE); + if(!TextUtils.isEmpty(recurrence) && task.getFlag(Task.FLAGS, Task.FLAG_REPEAT_AFTER_COMPLETION)) + recurrence = recurrence + ";FROM=COMPLETION"; + params.add("repeat"); params.add(recurrence); } if(values.containsKey(Task.USER_ID.name) && task.getValue(Task.USER_ID) >= 0) { params.add("user_id"); @@ -965,6 +968,10 @@ public final class ActFmSyncService { model.setValue(Task.CREATION_DATE, readDate(json, "created_at")); model.setValue(Task.DELETION_DATE, readDate(json, "deleted_at")); model.setValue(Task.RECURRENCE, json.optString("repeat", "")); + if(json.optString("repeat", "").contains("FROM=COMPLETION")) + model.setFlag(Task.FLAGS, Task.FLAG_REPEAT_AFTER_COMPLETION, true); + else + model.setFlag(Task.FLAGS, Task.FLAG_REPEAT_AFTER_COMPLETION, false); model.setValue(Task.NOTES, json.optString("notes", "")); model.setValue(Task.DETAILS_DATE, 0L); model.setValue(Task.LAST_SYNC, DateUtilities.now() + 1000L);