Skip to content

Instantly share code, notes, and snippets.

@Torboto
Created April 18, 2018 00:12
Show Gist options
  • Save Torboto/ded1ec5519b0280f2d10c081051f6759 to your computer and use it in GitHub Desktop.
Save Torboto/ded1ec5519b0280f2d10c081051f6759 to your computer and use it in GitHub Desktop.
//generic util to wrap basic mongo methods in promises
update: function (query, params) {
return Q.nbind(model.update, model)(query, cleanParams(params), {strict: true, multi: true}).get(0);
var update = model.update(query)
}
//create assignment
return module.exports.insert(clean)
.then(function (assignment) {
clean._id = assignment._id;
//create classroom assignment
return classroomController.createAssignment(clean, request)
.then(function(googleAssignment) {
clean.google_id = googleAssignment.id.toString();
//find group
return groupController.findOne({provider_id: googleAssignment.courseId, mentor: clean.mentor})
.then(function(group) {
clean.group = group._id;
clean.google_assignment_url = googleAssignment.alternateLink
//update assignment
return module.exports.update({_id: assignment._id}, clean)
.then(function () {
//return updated assignment
return module.exports.findOne({_id: assignment._id})
})
});
})
});
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment