Skip to content
Snippets Groups Projects
Commit d4633e09 authored by Julia Friesel's avatar Julia Friesel Committed by emelko
Browse files

Get previous temperature and fill it as placeholder

parent 2f58db84
No related branches found
No related tags found
No related merge requests found
import realm from 'realm' import realm from 'realm'
let db let db
let bleedingDaysSortedByDate = []
let cycleDaysSortedbyDate = [] let cycleDaysSortedbyDate = []
let bleedingDaysSortedByDate = []
const TemperatureSchema = { const TemperatureSchema = {
name: 'Temperature', name: 'Temperature',
...@@ -48,11 +47,8 @@ async function openDatabase() { ...@@ -48,11 +47,8 @@ async function openDatabase() {
deleteRealmIfMigrationNeeded: true deleteRealmIfMigrationNeeded: true
}) })
bleedingDaysSortedByDate = db.objects('CycleDay').fil<<<<<<< 933b64056a13d04c3bfdebf531962b84d9daa4ce
// just for testing purposes, the highest temperature will be topmost
// because I was too layz to make a scroll view
cycleDaysSortedbyTempValueView = db.objects('CycleDay').filtered('temperature != null').sorted('temperature.value', true) tered('bleeding != null').sorted('date', true)
cycleDaysSortedbyDate = db.objects('CycleDay').sorted('date', true) cycleDaysSortedbyDate = db.objects('CycleDay').sorted('date', true)
bleedingDaysSortedByDate = db.objects('CycleDay').filtered('bleeding != null').sorted('date', true)
} }
function saveTemperature(cycleDay, temperature) { function saveTemperature(cycleDay, temperature) {
...@@ -79,10 +75,20 @@ function getOrCreateCycleDay(localDate) { ...@@ -79,10 +75,20 @@ function getOrCreateCycleDay(localDate) {
return result return result
} }
function getPreviousTemperature(cycleDay) {
const cycleDayIndex = cycleDaysSortedbyDate.findIndex(day => day === cycleDay)
const previousCycleDays = cycleDaysSortedbyDate.slice(cycleDayIndex + 1)
const winner = previousCycleDays.find(cycleDay => cycleDay.temperature)
if (!winner) return null
return winner.temperature.value
}
export { export {
cycleDaysSortedbyDate,
openDatabase, openDatabase,
saveTemperature, saveTemperature,
saveBleeding, saveBleeding,
getOrCreateCycleDay, getOrCreateCycleDay,
bleedingDaysSortedByDate bleedingDaysSortedByDate,
getPreviousTemperature
} }
...@@ -8,7 +8,7 @@ import { ...@@ -8,7 +8,7 @@ import {
} from 'react-native' } from 'react-native'
import styles from './styles' import styles from './styles'
import { saveTemperature } from './db' import { saveTemperature, getPreviousTemperature } from './db'
import { formatDateForViewHeader } from './format' import { formatDateForViewHeader } from './format'
import getCycleDay from './get-cycle-day' import getCycleDay from './get-cycle-day'
...@@ -16,10 +16,18 @@ export default class Temp extends Component { ...@@ -16,10 +16,18 @@ export default class Temp extends Component {
constructor(props) { constructor(props) {
super(props) super(props)
const cycleDay = props.navigation.state.params.cycleDay const cycleDay = props.navigation.state.params.cycleDay
console.log(cycleDay.temperature ? cycleDay.temperature.value : '') let initialValue
if(cycleDay.temperature) {
initialValue = cycleDay.temperature.toString()
} else {
const prevTemp = getPreviousTemperature(cycleDay)
initialValue = prevTemp ? prevTemp.toString() : ''
}
this.state = { this.state = {
cycleDay, cycleDay,
currentValue: cycleDay.temperature ? cycleDay.temperature.value.toString() : '', currentValue: initialValue,
exclude: cycleDay.temperature ? cycleDay.temperature.exclude : false exclude: cycleDay.temperature ? cycleDay.temperature.exclude : false
} }
} }
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment