From 4ba95d07e69f303fb5b8cf105ff5cd188cfaf43e Mon Sep 17 00:00:00 2001 From: Luis Fernando Molina Date: Tue, 11 Sep 2018 11:47:54 +0200 Subject: [PATCH] Storage upudated after form submit --- client/src/components/UserUpdate.js | 47 ++++++++++++++++++++++------- client/src/queries/queries.js | 3 ++ 2 files changed, 39 insertions(+), 11 deletions(-) diff --git a/client/src/components/UserUpdate.js b/client/src/components/UserUpdate.js index f82d7802d..8898cfe51 100644 --- a/client/src/components/UserUpdate.js +++ b/client/src/components/UserUpdate.js @@ -54,6 +54,23 @@ class UserUpdate extends Component { }, refetchQueries: [{ query: getUsersQuery}] // This allow us to re run whatever queries are necesary after the mutation. }); + + /* Before we are done, we need to update the state of the local storage. */ + + let user = JSON.parse(localStorage.getItem("loggedInUser")); + user.firstName = this.state.firstName; + user.middleName = this.state.middleName; + user.lastName = this.state.lastName; + user.firstName = this.state.firstName; + user.isDeveloper = this.state.isDeveloper; + user.isTrader = this.state.isTrader; + user.isDataAnalyst = this.state.isDataAnalyst; + user.roleId = this.state.roleId; + + localStorage.setItem("loggedInUser", JSON.stringify(user)); + + console.log("update loggedInUser", user); + } handleCheckBoxes(e){ @@ -98,17 +115,17 @@ class UserUpdate extends Component { let checkbox; switch (e.target.value) { case "2": - checkbox = ReactDOM.findDOMNode(this.refs.id2); + checkbox = ReactDOM.findDOMNode(this.refs.isDeveloper); checkbox.checked = true; this.setState({ isDeveloper: 1}) break; case "3": - checkbox = ReactDOM.findDOMNode(this.refs.id3); + checkbox = ReactDOM.findDOMNode(this.refs.isTrader); checkbox.checked = true; this.setState({ isTrader: 1}) break; case "4": - checkbox = ReactDOM.findDOMNode(this.refs.id4); + checkbox = ReactDOM.findDOMNode(this.refs.isDataAnalyst); checkbox.checked = true; this.setState({ isDataAnalyst: 1}) break; @@ -141,12 +158,20 @@ console.log("component will UNmount"); this.refs.firstName.value = user.firstName; this.refs.middleName.value = user.middleName; + this.refs.lastName.value = user.lastName; this.refs.email.value = user.email; this.refs.emailVerified.checked = user.emailVerified; + this.refs.isDeveloper.checked = user.isDeveloper; + this.refs.isTrader.checked = user.isTrader; + this.refs.isDataAnalyst.checked = user.isDataAnalyst; this.setState({ id: user.id, firstName: user.firstName, - middleName: user.middleName + middleName: user.middleName, + lastName: user.lastName, + isDeveloper: user.isDeveloper, + isTrader: user.isTrader, + isDataAnalyst: user.isDataAnalyst }); console.log("setting defaults"); } @@ -186,12 +211,12 @@ console.log("render");
this.setState({ last_name:e.target.value})}> + ref = "lastName" + onBlur = { (e) => this.setState({ lastName:e.target.value})}> - +
@@ -213,19 +238,19 @@ console.log("render");
- +
- +
- +
diff --git a/client/src/queries/queries.js b/client/src/queries/queries.js index 3bc227fcf..0258719ca 100644 --- a/client/src/queries/queries.js +++ b/client/src/queries/queries.js @@ -44,6 +44,9 @@ query($authId: String){ lastName email emailVerified + isDeveloper + isDataAnalyst + isTrader role { id }