diff --git a/lib/sympto/index.js b/lib/sympto/index.js index 48e19806499619e3d3311b57b71c78a04374a2c6..979efc6c4be77bfa3f608c9c15a6e207a75c19d0 100644 --- a/lib/sympto/index.js +++ b/lib/sympto/index.js @@ -72,7 +72,7 @@ export default function getSymptoThermalStatus(cycleInfo) { if (tempOver > secondarySymptomOver) { periOvulatoryEnd = temperatureShift.evaluationCompleteDay - } else { + } else if (secondarySymptom > tempOver) { periOvulatoryEnd = secondaryShift.evaluationCompleteDay } diff --git a/lib/sympto/pre-ovulatory.js b/lib/sympto/pre-ovulatory.js index c2501428c3f215e011e368f779e8222fe44bb84e..874e2bc911958ca72137ebac1319866991c623ce 100644 --- a/lib/sympto/pre-ovulatory.js +++ b/lib/sympto/pre-ovulatory.js @@ -13,7 +13,7 @@ export default function(cycle, previousCycles) { return d.date <= preOvuEndDate }) const preOvulatoryDays = getDaysUntilFertileSecondarySymptom(maybePreOvuDays) - // if mucus occurs on the 1st cycle day, there is no pre-ovu phase + // if fertile mucus or cervix occurs on the 1st cycle day, there is no pre-ovu phase if (!preOvulatoryDays.length) return null let endDate @@ -34,7 +34,7 @@ export default function(cycle, previousCycles) { } } -function getDaysUntilFertileSecondarySymptom(days, secondarySymptom) { +function getDaysUntilFertileSecondarySymptom(days, secondarySymptom = 'mucus') { const firstFertileSecondarySymptomDayIndex = days.findIndex(day => { if (secondarySymptom === 'mucus') { return day.mucus && day.mucus.value > 1 @@ -47,4 +47,4 @@ function getDaysUntilFertileSecondarySymptom(days, secondarySymptom) { return days.slice(0, firstFertileSecondarySymptomDayIndex) } return days -} \ No newline at end of file +}