diff --git a/apps/medicalinfo/ChangeLog b/apps/medicalinfo/ChangeLog index e8739a121..0d4d73b6a 100644 --- a/apps/medicalinfo/ChangeLog +++ b/apps/medicalinfo/ChangeLog @@ -1 +1,2 @@ 0.01: Initial Medical Information application! +0.02. Read height and weight from myprofile diff --git a/apps/medicalinfo/README.md b/apps/medicalinfo/README.md index 6dd19d4c6..0383aaff4 100644 --- a/apps/medicalinfo/README.md +++ b/apps/medicalinfo/README.md @@ -10,12 +10,12 @@ The file has the following contents: ``` { "bloodType": "", - "height": "", - "weight": "", "medicalAlert": [ "" ] } ``` +Weight and height are read from myprofile. + ## Medical information editor Clicking on the download icon of `Medical Information` in the app loader invokes the editor. diff --git a/apps/medicalinfo/app.js b/apps/medicalinfo/app.js index 9c4941744..0e3dfc395 100644 --- a/apps/medicalinfo/app.js +++ b/apps/medicalinfo/app.js @@ -1,8 +1,7 @@ const medicalinfo = require('medicalinfo').load(); +const myprofile = require("Storage").readJSON("myprofile.json",1)||{}; // const medicalinfo = { // bloodType: "O+", -// height: "166cm", -// weight: "73kg" // }; function hasAlert(info) { @@ -12,7 +11,7 @@ function hasAlert(info) { // No space for widgets! // TODO: no padlock widget visible so prevent screen locking? -g.clear(); +g.reset().clear(); const bodyFont = g.getFonts().includes("12x20") ? "12x20" : "6x8:2"; g.setFont(bodyFont); @@ -33,10 +32,14 @@ if (hasAlert(medicalinfo)) { if (medicalinfo.bloodType) { lines = lines.concat(g.wrapString("Blood group: " + medicalinfo.bloodType, g.getWidth() - 10)); } -if (medicalinfo.height) { +if (myprofile.height) { // Prefer height from myprofile if set + lines = lines.concat(g.wrapString("Height: " + require("locale").distance(myprofile.height, 2), g.getWidth() - 10)); +} else if (medicalinfo.height) { // read height from own settings if previously stored here lines = lines.concat(g.wrapString("Height: " + medicalinfo.height, g.getWidth() - 10)); } -if (medicalinfo.weight) { +if (myprofile.weight) { // Prefer weight from myprofile if set + lines = lines.concat(g.wrapString("Weight: " + myprofile.weight + "kg", g.getWidth() - 10)); +} else if (medicalinfo.weight) { // read weight from own settings if previously stored here lines = lines.concat(g.wrapString("Weight: " + medicalinfo.weight, g.getWidth() - 10)); } diff --git a/apps/medicalinfo/lib.js b/apps/medicalinfo/lib.js index 683005359..6ecafd0fd 100644 --- a/apps/medicalinfo/lib.js +++ b/apps/medicalinfo/lib.js @@ -3,8 +3,6 @@ const storage = require('Storage'); exports.load = function () { const medicalinfo = storage.readJSON('medicalinfo.json') || { bloodType: "", - height: "", - weight: "", medicalAlert: [""] }; diff --git a/apps/medicalinfo/medicalinfo.json b/apps/medicalinfo/medicalinfo.json index 8b49725cb..868011657 100644 --- a/apps/medicalinfo/medicalinfo.json +++ b/apps/medicalinfo/medicalinfo.json @@ -1,6 +1,4 @@ { "bloodType": "", - "height": "", - "weight": "", "medicalAlert": [ "" ] } diff --git a/apps/medicalinfo/metadata.json b/apps/medicalinfo/metadata.json index f1a0c145f..485cc9984 100644 --- a/apps/medicalinfo/metadata.json +++ b/apps/medicalinfo/metadata.json @@ -1,6 +1,6 @@ { "id": "medicalinfo", "name": "Medical Information", - "version":"0.01", + "version":"0.02", "description": "Provides 'medicalinfo.json' used by various health apps, as well as a way to edit it from the App Loader", "icon": "app.png", "tags": "health,medical", @@ -16,5 +16,6 @@ ], "data": [ {"name":"medicalinfo.json","url":"medicalinfo.json"} - ] + ], + "dependencies": {"myprofile":"app"} }