Fixed bug LT-85 (Location Response Selections). Work on LT-9 and LT-12

This commit is contained in:
Erik Ziegler committed 2015-12-20 18:24:51 -05:00
1 parent 28cee350ff
commit 220ff065dc
44 files changed
+1515 -824

No files matched your search

+11 -7
View File
@@ -1,23 +1,27 @@
Meteor.publish('timepoints', function(patientId) {
console.log('Publish timepoints');
console.log('patientId ' + patientId);
return Timepoints.find({patientId: patientId});
return Timepoints.find({
patientId: patientId
});
});
Meteor.publish('measurements', function(patientId) {
console.log('Publish measurements');
console.log('patientId ' + patientId);
return Measurements.find({patientId: patientId});
return Measurements.find({
patientId: patientId
});
});
// Temporary fix to drop all Collections on server restart
// http://stackoverflow.com/questions/23891631/meteor-how-can-i-drop-all-mongo-collections-and-clear-all-data-on-startup
Meteor.startup(function(){
var globalObject=Meteor.isClient?window:global;
for(var property in globalObject){
var object=globalObject[property];
if(object instanceof Meteor.Collection){
Meteor.startup(function() {
var globalObject = Meteor.isClient ? window : global;
for (var property in globalObject) {
var object = globalObject[property];
if (object instanceof Meteor.Collection) {
object.remove({});
}
}
@@ -1,21 +1,21 @@
Meteor.methods({
"removeMeasurementsByPatientId": function(patientId) {
Measurements.remove(
{patientId: patientId}
);
"removeMeasurement": function(id) {
console.log(Measurements.find().fetch());
console.log("Removing: " + id);
Measurements.remove(id);
console.log(Measurements.find().fetch());
},
"removeMeasurementsByPatientId": function(patientId) {
Measurements.remove({patientId: patientId});
},
// TODO= Check where this is used? Seems like nowhere..
"removePatientMeasurement": function(lesionObject) {
// Find patient data
var measurementData = Measurements.findOne(
{
patientId: lesionObject.patientId,
isTarget: lesionObject.isTarget,
lesionNumber: lesionObject.lesionNumber
}
);
var measurementData = Measurements.findOne({
patientId: lesionObject.patientId,
isTarget: lesionObject.isTarget,
lesionNumber: lesionObject.lesionNumber
});
// Get timepoints
var timepoints = measurementData.timepoints;
@@ -23,41 +23,32 @@ Meteor.methods({
// Create an array to hold keys of timepoints
var timepointsIds = Object.keys(timepoints).slice(0);
timepointsIds.forEach(function(timepointId){
if(timepointId === lesionObject.timepointId) {
delete timepoints[timepointId];
}
});
timepointsIds.forEach(function(timepointId) {
if (timepointId === lesionObject.timepointId) {
delete timepoints[timepointId];
}
});
var newTimepointsIds = Object.keys(timepoints);
// If there is no timepoints object, remove measurement data
if(newTimepointsIds.length) {
if (newTimepointsIds.length) {
//Update measurement timepoints
Measurements.update(
{
patientId: lesionObject.patientId,
isTarget: lesionObject.isTarget,
lesionNumber: lesionObject.lesionNumber
},
{
$set: {
timepoints: timepoints
}
Measurements.update({
patientId: lesionObject.patientId,
isTarget: lesionObject.isTarget,
lesionNumber: lesionObject.lesionNumber
}, {
$set: {
timepoints: timepoints
}
);
}else {
});
} else {
// Remove all data
Measurements.remove(
{
patientId: lesionObject.patientId,
isTarget: lesionObject.isTarget,
lesionNumber: lesionObject.lesionNumber
}
);
Measurements.remove({
patientId: lesionObject.patientId,
isTarget: lesionObject.isTarget,
lesionNumber: lesionObject.lesionNumber
});
}
}
});
});