Checked to ensure tasks has checklists before attempting to sync last checklist item (#8314)

This commit is contained in:
Keith Holliday
2016-12-25 15:00:41 -06:00
committed by GitHub
parent 1f95376d39
commit 7fbd38d18c

View File

@@ -76,21 +76,23 @@ habitrpg.controller('GroupTasksCtrl', ['$scope', 'Shared', 'Tasks', 'User', func
};
$scope.saveTask = function(task, stayOpen, isSaveAndClose) {
// Check if we have a lingering checklist that the enter button did not trigger on
var lastIndex = task._edit.checklist.length - 1;
var lastCheckListItem = task._edit.checklist[lastIndex];
if (lastCheckListItem && !lastCheckListItem.id && lastCheckListItem.text) {
Tasks.addChecklistItem(task._id, lastCheckListItem)
.then(function (response) {
task._edit.checklist[lastIndex] = response.data.data.checklist[lastIndex];
task.checklist[lastIndex] = response.data.data.checklist[lastIndex];
Tasks.saveTask(task, stayOpen, isSaveAndClose);
Tasks.updateTask(task._id, task);
});
} else {
Tasks.saveTask (task, stayOpen, isSaveAndClose);
Tasks.updateTask(task._id, task);
if (task._edit.checklist) {
// Check if we have a lingering checklist that the enter button did not trigger on
var lastIndex = task._edit.checklist.length - 1;
var lastCheckListItem = task._edit.checklist[lastIndex];
if (lastCheckListItem && !lastCheckListItem.id && lastCheckListItem.text) {
Tasks.addChecklistItem(task._id, lastCheckListItem)
.then(function (response) {
task._edit.checklist[lastIndex] = response.data.data.checklist[lastIndex];
task.checklist[lastIndex] = response.data.data.checklist[lastIndex];
Tasks.saveTask(task, stayOpen, isSaveAndClose);
Tasks.updateTask(task._id, task);
});
return;
}
}
Tasks.saveTask (task, stayOpen, isSaveAndClose);
Tasks.updateTask(task._id, task);
};
$scope.shouldShow = function(task, list, prefs){