in routes/onedoc.js [137:178]
module.addModelHistory = function (model, oldDoc, newDoc) {
// ASF
asf.asfhookaddhistory(oldDoc, newDoc);
// END ASF
if (oldDoc === null) {
oldDoc = {
__v: -1,
_id: newDoc._id,
author: newDoc.author,
updatedAt: newDoc.updatedAt,
body: {}
}
}
var auditTrail = {
parent_id: oldDoc._id,
updatedAt: newDoc.updatedAt,
author: newDoc.author,
__v: oldDoc.__v + 1,
body: {
old_version: oldDoc.__v,
old_author: oldDoc.author,
old_date: oldDoc.updatedAt,
patch: jsonpatch.compare(oldDoc.body, newDoc.body),
},
};
//todo: eliminate mongoose and call InsertOne directly
if (auditTrail.body.patch.length > 0) {
model.bulkWrite([{
insertOne: {
document: auditTrail
}
}], function (err, d) {
if (err) {
console.log('Error: saving history ' + err);
} else {
}
});
return auditTrail;
} else {
return null;
}
}