When saving a new task, delete empty title outstanding entries

pull/14/head
Sam Bosley 11 years ago
parent f7281cd2b3
commit dc79636647

@ -153,10 +153,8 @@ public class ChangesHappened<TYPE extends RemoteModel, OE extends OutstandingEnt
throw new RuntimeException("No server column found for local column " + localColumn + " in table " + table);
Object value = localProperty.accept(visitor, change);
if (!validateValue(localProperty, value)) {
outstandingDao.delete(change.getId());
if (!validateValue(localProperty, value))
return null;
}
if (value == null)
changeJson.put("value", JSONObject.NULL);

@ -56,6 +56,7 @@ import com.timsu.astrid.R;
import com.todoroo.andlib.service.Autowired;
import com.todoroo.andlib.service.DependencyInjectionService;
import com.todoroo.andlib.service.ExceptionService;
import com.todoroo.andlib.sql.Criterion;
import com.todoroo.andlib.utility.AndroidUtilities;
import com.todoroo.andlib.utility.DateUtilities;
import com.todoroo.andlib.utility.DialogUtilities;
@ -66,11 +67,14 @@ import com.todoroo.astrid.actfm.CommentsActivity;
import com.todoroo.astrid.actfm.EditPeopleControlSet;
import com.todoroo.astrid.actfm.TaskCommentsFragment;
import com.todoroo.astrid.actfm.sync.ActFmPreferenceService;
import com.todoroo.astrid.actfm.sync.messages.NameMaps;
import com.todoroo.astrid.api.AstridApiConstants;
import com.todoroo.astrid.dao.TaskAttachmentDao;
import com.todoroo.astrid.dao.TaskOutstandingDao;
import com.todoroo.astrid.data.RemoteModel;
import com.todoroo.astrid.data.Task;
import com.todoroo.astrid.data.TaskAttachment;
import com.todoroo.astrid.data.TaskOutstanding;
import com.todoroo.astrid.files.AACRecordingActivity;
import com.todoroo.astrid.files.FileExplore;
import com.todoroo.astrid.files.FileUtilities;
@ -199,6 +203,9 @@ ViewPager.OnPageChangeListener, EditNoteActivity.UpdatesChangedListener {
@Autowired
private TaskService taskService;
@Autowired
private TaskOutstandingDao taskOutstandingDao;
@Autowired
private TaskAttachmentDao taskAttachmentDao;
@ -826,6 +833,12 @@ ViewPager.OnPageChangeListener, EditNoteActivity.UpdatesChangedListener {
if (title.getText().length() == 0)
return;
if (isNewTask) {
taskOutstandingDao.deleteWhere(Criterion.and(TaskOutstanding.TASK_ID.eq(model.getId()),
TaskOutstanding.COLUMN_STRING.eq(NameMaps.localPropertyToServerColumnName(NameMaps.TABLE_ID_TASKS, Task.TITLE)),
Criterion.or(TaskOutstanding.VALUE_STRING.isNull(), TaskOutstanding.VALUE_STRING.eq("")))); //$NON-NLS-1$
}
StringBuilder toast = new StringBuilder();
synchronized (controls) {
for (TaskEditControlSet controlSet : controls) {

Loading…
Cancel
Save