-
-
+
+
-
+
+
diff --git a/client/General/Home/home.js b/client/General/Home/home.js
index cfefccc..ddca94f 100644
--- a/client/General/Home/home.js
+++ b/client/General/Home/home.js
@@ -6,7 +6,7 @@ import { LogEntry } from '../../../imports/api/logEntry';
Template.home.onCreated(function() {
this.subscribe("myWorkoutRoutines");
this.subscribe("myWorkoutLog");
- this.subscribe("myLogEntries");
+ this.subscribe("allMyLogEntries");
});
Template.home.onRendered(function() {
@@ -20,6 +20,9 @@ Template.home.helpers({
workoutCount: function() {
return Workouts.find({}).count();
},
+ logCount: function() {
+ return LogEntry.find({}).count();
+ },
});
Template.home.events({
@@ -27,4 +30,10 @@ Template.home.events({
let route = e.currentTarget.id;
FlowRouter.go('/' + route);
},
+ 'click #logWorkout' (e) {
+ FlowRouter.go('/logEntry');
+ },
+ 'click #logMeasure' (e) {
+ FlowRouter.go('/measLogEntry');
+ },
});
\ No newline at end of file
diff --git a/client/General/Measurements/measLogEntry.html b/client/General/Measurements/measLogEntry.html
new file mode 100644
index 0000000..9670993
--- /dev/null
+++ b/client/General/Measurements/measLogEntry.html
@@ -0,0 +1,23 @@
+
+
+
+
Workouts
+
+
-
+
+ Workouts
+
+ {{workoutCount}}
+
-
-
+
{{workoutCount}}
+
+
-
+
+ Exercise Logs
+
+ {{logCount}}
+
+
Meals
+Meals
Measurements
+Measurements
Measurement Log Entry
+ + + + {{#if $eq measIdSelected true}} +
+
+
+
+
+
+
+
+
+ {{/if}}
+ {{> snackbar}}
+
\ No newline at end of file
diff --git a/client/General/Measurements/measLogEntry.js b/client/General/Measurements/measLogEntry.js
new file mode 100644
index 0000000..225cb47
--- /dev/null
+++ b/client/General/Measurements/measLogEntry.js
@@ -0,0 +1,68 @@
+import { FlowRouter } from 'meteor/ostrio:flow-router-extra';
+import { Measurements } from '../../../imports/api/measurements';
+import { MeasureLogEntry } from '../../../imports/api/measureLogEntry';
+
+Template.measLogEntry.onCreated(function() {
+ this.subscribe("myMeasures");
+ this.subscribe("myMeasureLog");
+});
+
+Template.measLogEntry.onRendered(function() {
+ Session.set("measIdSelected", false);
+});
+
+Template.measLogEntry.helpers({
+ bodyPart: function() {
+ return Measurements.find({});
+ },
+ measIdSelected: function() {
+ return Session.get("measIdSelected");
+ },
+ measureToLog: function() {
+ let partId = Session.get("measurePartId");
+ return Measurements.findOneAsync({ _id: partId });
+ }
+});
+
+Template.measLogEntry.events({
+ 'change #selectPart' (e) {
+ Session.set("measIdSelected", true);
+ let partId = $("#selectPart").val();
+ Session.set("measurePartId", partId);
+ },
+ 'click #savePartMeasure' (e) {
+ let partId = Session.get("measurePartId");
+
+ const thisMeasure = async() => {
+ try {
+ let measInfo = await Measurements.findOneAsync({ _id: partId });
+ if (!measInfo) {
+ console.log(" UNABLE to find measurement info.");
+ } else {
+ console.dir(measInfo);
+ let measure1 = $("#" + measInfo.measurementName).val();
+ let measureName = measInfo.measurementName;
+ let units = measInfo.measurementUnits;
+
+ if (measure1 == "" || measure1 == null) {
+ showSnackbar("Measurement is required!", "red");
+ return;
+ } else {
+ let measure = Number(measure1);
+ const result = await Meteor.callAsync("add.measureLog", measureName, measure, units);
+ if (!result) {
+ console.log(" ISSUE adding measurement to database.");
+ } else {
+ showSnackbar("Measurement Added!", "green");
+ $("#selectPart").val("");
+ Session.set("measIdSelected", false);
+ }
+ }
+ }
+ } catch (error) {
+ console.log(" ERROR adding measurement: " + error);
+ }
+ }
+ thisMeasure();
+ }
+});
\ No newline at end of file
diff --git a/client/General/Measurements/measurements.html b/client/General/Measurements/measurements.html
new file mode 100644
index 0000000..a8378c7
--- /dev/null
+++ b/client/General/Measurements/measurements.html
@@ -0,0 +1,33 @@
+
+ Workouts
+ {{#if $eq showAddMeasurementForm true}} +
+
+ {{/if}}
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ -
+ {{#each measurements}}
+
- {{measurementName}}({{measurementUnits}})
+ {{/each}}
+
+