Add optional pain tracking and fix reminder delivery
This commit is contained in:
@@ -1301,6 +1301,17 @@ input[type="range"] {
|
||||
gap: 0.7rem;
|
||||
}
|
||||
|
||||
.checkbox-row span {
|
||||
display: grid;
|
||||
gap: 0.15rem;
|
||||
}
|
||||
|
||||
.checkbox-row small {
|
||||
color: var(--muted);
|
||||
font-size: 0.86rem;
|
||||
line-height: 1.45;
|
||||
}
|
||||
|
||||
.checkbox-row--panel {
|
||||
padding: 0.95rem 1rem;
|
||||
border-radius: 18px;
|
||||
@@ -1309,6 +1320,12 @@ input[type="range"] {
|
||||
min-height: 100%;
|
||||
}
|
||||
|
||||
.checkbox-row--tall {
|
||||
align-items: flex-start;
|
||||
padding-top: 1.05rem;
|
||||
padding-bottom: 1.05rem;
|
||||
}
|
||||
|
||||
.checkbox-row input {
|
||||
width: auto;
|
||||
}
|
||||
|
||||
@@ -264,6 +264,7 @@
|
||||
const ratings = sortedRatings(settings.ratings || []);
|
||||
const scoring = settings.scoring || {};
|
||||
const walkMode = entry.walk_mode === "steps" ? "steps" : "time";
|
||||
const painEnabled = Boolean(settings.tracking?.pain_enabled);
|
||||
const components = {
|
||||
mood: Number(entry.mood) * Number(scoring.mood_multiplier || 0),
|
||||
energy: Number(entry.energy) * Number(scoring.energy_multiplier || 0),
|
||||
@@ -275,9 +276,14 @@
|
||||
walk_minutes: walkMode === "steps"
|
||||
? stepTargetPoints(Number(entry.walk_steps || 0), scoring.walk_step_targets || [])
|
||||
: bandPoints(Number(entry.walk_minutes), scoring.walk_bands || []),
|
||||
alcohol: entry.alcohol ? (Number(scoring.alcohol_penalty || 5) * -1) : 0,
|
||||
note: String(entry.note || "").trim() === "" ? 0 : Number(scoring.journal_points || 0),
|
||||
};
|
||||
|
||||
if (painEnabled) {
|
||||
components.pain = (11 - Number(entry.pain || 1)) * Number(scoring.pain_multiplier || 0);
|
||||
}
|
||||
|
||||
const total = Math.round(Object.values(components).reduce((sum, value) => sum + Number(value), 0) * 10) / 10;
|
||||
let label = labelForScore(total, ratings);
|
||||
|
||||
@@ -316,11 +322,13 @@
|
||||
mood: "Stimmung",
|
||||
energy: "Energie",
|
||||
stress: "Stress",
|
||||
pain: "Schmerzen",
|
||||
sleep_hours: "Schlafdauer",
|
||||
sleep_feeling: "Schlafgefühl",
|
||||
sport_minutes: "Sport",
|
||||
sport_bonus: "Sportbonus",
|
||||
walk_minutes: "Spaziergang",
|
||||
alcohol: "Alkohol",
|
||||
note: "Notiz",
|
||||
};
|
||||
|
||||
@@ -328,6 +336,7 @@
|
||||
mood: Number(form.elements.mood.value),
|
||||
energy: Number(form.elements.energy.value),
|
||||
stress: Number(form.elements.stress.value),
|
||||
pain: Number(form.elements.pain?.value || 1),
|
||||
sleep_hours: Number(form.elements.sleep_hours.value || 0),
|
||||
sleep_feeling: Number(form.elements.sleep_feeling.value),
|
||||
sport_minutes: Number(form.elements.sport_minutes.value || 0),
|
||||
@@ -335,6 +344,7 @@
|
||||
walk_mode: form.elements.walk_mode?.value || "time",
|
||||
walk_minutes: Number(form.elements.walk_minutes?.value || 0),
|
||||
walk_steps: Number(form.elements.walk_steps?.value || 0),
|
||||
alcohol: Boolean(form.elements.alcohol?.checked),
|
||||
note: form.elements.note.value || "",
|
||||
});
|
||||
|
||||
|
||||
Reference in New Issue
Block a user