Change daily checkboxes

Fix daily checkboxes
This commit is contained in:
2023-01-18 21:59:28 -05:00
parent 927048ec53
commit 5f01e00dd7

View File

@@ -166,7 +166,7 @@ class Day extends React.Component {
.then((doc) => { .then((doc) => {
if (doc.data()) { if (doc.data()) {
console.log("I have data!", doc.data().text) console.log("I have data!", doc.data().text)
this.setState({ text: doc.data().text, loading: false, activities: doc.data().activities }) this.setState({ text: doc.data().text, loading: false, activities: doc.data().activities || { } })
} else { } else {
console.log("I don't have data!") console.log("I don't have data!")
this.setState({ text: "", loading: false, activities: { } }) this.setState({ text: "", loading: false, activities: { } })
@@ -252,16 +252,16 @@ class Day extends React.Component {
} }
setActivityCheck = (activity, checked) => { setActivityCheck = (activity, checked) => {
const { firebase, authUser, year, month, day } = this.props const { firebase, authUser, year, month, day } = this.props;
this.setState({ activities: { [activity]: checked } }); const { activities } = this.state;
activities[activity]= checked;
this.setState({ activities });
firebase.db firebase.db
.collection("entries") .collection("entries")
.doc(`${year}${month}${day}-${authUser.uid}`) .doc(`${year}${month}${day}-${authUser.uid}`)
.set( .set(
{ {
activities: { activities,
[activity]: checked,
}
}, },
{ {
merge: true, merge: true,
@@ -277,7 +277,7 @@ class Day extends React.Component {
if (!currentDay) return if (!currentDay) return
const hasSavedChanges = lastSavedAt >= lastEditedAt const hasSavedChanges = lastSavedAt >= lastEditedAt
const activityChecks = ["physio", "yoga", "run", "piano"].map(activity => const activityChecks = ["exercise", "piano", "japan"].map(activity =>
<Buttons <Buttons
onClick={() => this.setActivityCheck(activity, !activities[activity])} onClick={() => this.setActivityCheck(activity, !activities[activity])}
> >