From 103382739077080cddb77e6127b84744785b45a0 Mon Sep 17 00:00:00 2001 From: Mir Ali Talpur Date: Thu, 23 Jul 2020 22:45:34 -0700 Subject: [PATCH] #2 wireup back button from student edit && finish edit student functionality --- components/individualStudentTeacherEdit.js | 2 +- components/nav.js | 1 + components/teacherDashboard.js | 52 +++++++++++++--------- components/teacherStudentComponent.js | 1 + 4 files changed, 34 insertions(+), 22 deletions(-) diff --git a/components/individualStudentTeacherEdit.js b/components/individualStudentTeacherEdit.js index 4ff47a7..d0c278f 100644 --- a/components/individualStudentTeacherEdit.js +++ b/components/individualStudentTeacherEdit.js @@ -148,7 +148,7 @@ export default class TeacherEditStudentComponent extends React.Component { backButtonComponent = () => { return( - ) diff --git a/components/nav.js b/components/nav.js index ce1ad0c..5bb0da1 100644 --- a/components/nav.js +++ b/components/nav.js @@ -169,6 +169,7 @@ export default class Nav extends React.Component { onBlurhandleIndividualStudentTeacherEditPasswordChange={this.props.onBlurhandleIndividualStudentTeacherEditPasswordChange} handleIndividualStudentTeacherEditImageChange={this.props.handleIndividualStudentTeacherEditImageChange} handleIndividualStudentTeacherUpload={this.props.handleIndividualStudentTeacherUpload} + handleIndividualStudentTeacherBackClicked={this.props.handleIndividualStudentTeacherBackClicked} /> } } diff --git a/components/teacherDashboard.js b/components/teacherDashboard.js index aa163b7..5eec891 100644 --- a/components/teacherDashboard.js +++ b/components/teacherDashboard.js @@ -71,6 +71,7 @@ export class TeacherDashboard extends React.Component { this.onBlurhandleIndividualStudentTeacherEditPasswordChange = this.onBlurhandleIndividualStudentTeacherEditPasswordChange.bind(this); this.handleIndividualStudentTeacherEditImageChange = this.handleIndividualStudentTeacherEditImageChange.bind(this); this.handleIndividualStudentTeacherUpload = this.handleIndividualStudentTeacherUpload.bind(this); + this.handleIndividualStudentTeacherBackClicked = this.handleIndividualStudentTeacherBackClicked.bind(this); } componentDidMount() { @@ -394,9 +395,9 @@ export class TeacherDashboard extends React.Component { email: email, password: this.state.teacherStudentComponent.individualStudentTeacherEditPassword, }).then(result => { - updateCalls -= 1; - if(updateCalls === 0){ - this.handleUpdateOnStudent(); + updateCalls -= 2; + if(updateCalls <= 0){ + this.props.handleUpdateOnStudent(); this.setState(prevState => ({ teacherStudentComponent: { ...prevState.teacherStudentComponent, @@ -405,7 +406,7 @@ export class TeacherDashboard extends React.Component { } })); } - console.log('update sucessful for email and password as teacher' + result); + console.log('update sucessful for email or password as teacher' + result); }).catch(err => { console.log(err) }) @@ -419,7 +420,7 @@ export class TeacherDashboard extends React.Component { }).then(result => { console.log('update sucessfully updateStudentProfilePicAsTeacher: ' + JSON.stringify(result)); updateCalls -= 1; - if(updateCalls === 0){ + if(updateCalls <= 0){ this.props.handleUpdateOnStudent(); this.setState(prevState => ({ teacherStudentComponent: { @@ -444,6 +445,17 @@ export class TeacherDashboard extends React.Component { requireStudentGradeUpdate: requireStudentGradeUpdate, }).then(result => { console.log('update sucessfully updateStudentNameGradeAsTeacher: ' + JSON.stringify(result)); + updateCalls -= 2; + if(updateCalls === 0){ + this.props.handleUpdateOnStudent(); + this.setState(prevState => ({ + teacherStudentComponent: { + ...prevState.teacherStudentComponent, + individualStudentTeacherEditUpdateButtonLoading: false, + individualStudentEditClicked: false, + } + })); + } }).catch(err => { console.log(err) }); @@ -458,6 +470,19 @@ export class TeacherDashboard extends React.Component { } } /* Update Button End */ + + /* Back Button */ + handleIndividualStudentTeacherBackClicked = (e) => { + e.preventDefault(); + this.setState(prevState => ({ + teacherStudentComponent: { + ...prevState.teacherStudentComponent, + individualStudentEditClicked: false, + } + })); + } + + /* Back Button End */ /* individualStudentTeacherEdit component functions end */ /* teacherStudentComponent functions */ @@ -483,22 +508,6 @@ export class TeacherDashboard extends React.Component { })); } }); - // const getStudentDocumentAsTeacher = functions.httpsCallable('getStudentDocumentAsTeacher'); - // getStudentDocumentAsTeacher({ - // uid: this.state.currentUserDoc.uid, - // studentUid: e.uid, - // }).then(result => { - // this.setState(prevState => ({ - // teacherStudentComponent: { - // ...prevState.teacherStudentComponent, - // individualStudentEditClicked: true, - // individualEditStudentInformation: result, - // individualStudentEditLoading: false, - // } - // })); - // }).catch(err => { - // console.log(err) - // }); } /* teacherStudentComponent functions end */ @@ -751,6 +760,7 @@ export class TeacherDashboard extends React.Component { onBlurhandleIndividualStudentTeacherEditPasswordChange={this.onBlurhandleIndividualStudentTeacherEditPasswordChange} handleIndividualStudentTeacherEditImageChange={this.handleIndividualStudentTeacherEditImageChange} handleIndividualStudentTeacherUpload={this.handleIndividualStudentTeacherUpload} + handleIndividualStudentTeacherBackClicked={this.handleIndividualStudentTeacherBackClicked} /> diff --git a/components/teacherStudentComponent.js b/components/teacherStudentComponent.js index 3d8d376..d579e8a 100644 --- a/components/teacherStudentComponent.js +++ b/components/teacherStudentComponent.js @@ -94,6 +94,7 @@ export default class TeacherStudentComponent extends React.Component { onBlurhandleIndividualStudentTeacherEditPasswordChange={this.props.onBlurhandleIndividualStudentTeacherEditPasswordChange} handleIndividualStudentTeacherEditImageChange={this.props.handleIndividualStudentTeacherEditImageChange} handleIndividualStudentTeacherUpload={this.props.handleIndividualStudentTeacherUpload} + handleIndividualStudentTeacherBackClicked={this.props.handleIndividualStudentTeacherBackClicked} /> // displayName: "asdlkfj 89234" // email: "alskdjf@gmail.com"