open-health/client/General/Measurements/measurements.js

62 lines
No EOL
2.2 KiB
JavaScript

import { FlowRouter } from 'meteor/ostrio:flow-router-extra';
import { Measurements } from '../../../imports/api/measurements';
Template.measurements.onCreated(function() {
this.subscribe("myMeasures");
});
Template.measurements.onRendered(function() {
Session.set("showAddMeasurementForm", false);
});
Template.measurements.helpers({
showAddMeasurementForm: function() {
return Session.get("showAddMeasurementForm");
},
measurements: function() {
return Measurements.find({});
},
});
Template.measurements.events({
'click #addMeasurement' (e) {
Session.set("showAddMeasurementForm", true);
},
'click #addMeasurementForm' (e) {
let measurementName = $("#measurementName").val();
let measurementUnits = $("#measurementUnits").val();
if (measurementName == "" || measurementName == null) {
showSnackbar("Measurement Name is Required!", "red");
return;
} else if (measurementUnits == "" || measurementUnits == null) {
showSnackbar("Measurement Units are Required!", "red");
return;
} else {
// console.log("Measurement Name: " + measurementName);
const addMeasure = async() => {
try {
const result = await Meteor.callAsync('add.measurement', measurementName, measurementUnits);
if (!result) {
console.log("An issue occurred adding the measurement name.");
showSnackbar("Issue adding measurement!", "red");
} else {
console.log("Measurement added : " + result);
$("#measurementName").val("");
$("#measurementUnits").val("");
showSnackbar("Measurement Added!", "green");
}
} catch(error) {
console.log(" ERROR adding measurement nemae: " + error);
}
}
addMeasure();
}
},
'click .measure' (e) {
let measureId = e.currentTarget.id;
console.log("Measurement ID set: " + measureId);
Session.set("measureId", measureId);
FlowRouter.go('/measureLog');
},
});