[go: nahoru, domu]

Skip to content

Commit

Permalink
#2 init components/teacherStudentAdd.js for adding students as teacher
Browse files Browse the repository at this point in the history
  • Loading branch information
MirTalpur committed Aug 29, 2020
1 parent 1033827 commit d5a55dd
Show file tree
Hide file tree
Showing 5 changed files with 57 additions and 14 deletions.
1 change: 0 additions & 1 deletion components/individualStudentTeacherEdit.js
Original file line number Diff line number Diff line change
Expand Up @@ -184,7 +184,6 @@ export default class TeacherEditStudentComponent extends React.Component {
}

render() {
// TODO: finish up the avatar, wire up the update and back button, create the cloudfunction for updating students profile
return (
<React.Fragment>
<style dangerouslySetInnerHTML={{ __html: stylesheet }} />
Expand Down
1 change: 1 addition & 0 deletions components/nav.js
Original file line number Diff line number Diff line change
Expand Up @@ -170,6 +170,7 @@ export default class Nav extends React.Component {
handleIndividualStudentTeacherEditImageChange={this.props.handleIndividualStudentTeacherEditImageChange}
handleIndividualStudentTeacherUpload={this.props.handleIndividualStudentTeacherUpload}
handleIndividualStudentTeacherBackClicked={this.props.handleIndividualStudentTeacherBackClicked}
handleTeacherStudentComponentAddStudents={this.props.handleTeacherStudentComponentAddStudents}
/>
}
}
Expand Down
13 changes: 13 additions & 0 deletions components/teacherDashboard.js
Original file line number Diff line number Diff line change
Expand Up @@ -35,6 +35,7 @@ export class TeacherDashboard extends React.Component {
// TODO: change this back to false testing really fast
// thnk about changing the email and password if they don't match
// the currently using one when editing student profiles
teacherStudentComponentAddStudentsClicked: false,
individualStudentEditClicked: false,
individualEditStudentInformation: null,
individualStudentEditLoading: false,
Expand Down Expand Up @@ -72,6 +73,7 @@ export class TeacherDashboard extends React.Component {
this.handleIndividualStudentTeacherEditImageChange = this.handleIndividualStudentTeacherEditImageChange.bind(this);
this.handleIndividualStudentTeacherUpload = this.handleIndividualStudentTeacherUpload.bind(this);
this.handleIndividualStudentTeacherBackClicked = this.handleIndividualStudentTeacherBackClicked.bind(this);
this.handleTeacherStudentComponentAddStudents = this.handleTeacherStudentComponentAddStudents.bind(this);
}

componentDidMount() {
Expand Down Expand Up @@ -510,6 +512,16 @@ export class TeacherDashboard extends React.Component {
});
}

handleTeacherStudentComponentAddStudents = (e) => {
e.preventDefault();
this.setState(prevState => ({
teacherStudentComponent: {
...prevState.teacherStudentComponent,
teacherStudentComponentAddStudentsClicked: true
}
}));
}

/* teacherStudentComponent functions end */

/* Student attendance functions */
Expand Down Expand Up @@ -761,6 +773,7 @@ export class TeacherDashboard extends React.Component {
handleIndividualStudentTeacherEditImageChange={this.handleIndividualStudentTeacherEditImageChange}
handleIndividualStudentTeacherUpload={this.handleIndividualStudentTeacherUpload}
handleIndividualStudentTeacherBackClicked={this.handleIndividualStudentTeacherBackClicked}
handleTeacherStudentComponentAddStudents={this.handleTeacherStudentComponentAddStudents}
/>
</div>
</React.Fragment>
Expand Down
35 changes: 35 additions & 0 deletions components/teacherStudentAdd.js
Original file line number Diff line number Diff line change
@@ -0,0 +1,35 @@
import React from 'react';
import { Modal } from 'antd';

import stylesheet from 'antd/dist/antd.min.css';
import { UploadOutlined, LoadingOutlined } from '@ant-design/icons';



export default class TeacherStudentAdd extends React.Component {
constructor(props) {
super(props);
}

componentDidMount() {
console.log("in teacherStudentAdd class....");
}

render() {
return (
<React.Fragment>
<style dangerouslySetInnerHTML={{ __html: stylesheet }} />
<div>
<Modal
title="Basic Modal"
visible={true}
>
<p>Some contents...</p>
<p>Some contents...</p>
<p>Some contents...</p>
</Modal>
</div>
</React.Fragment>
);
}
}
21 changes: 8 additions & 13 deletions components/teacherStudentComponent.js
Original file line number Diff line number Diff line change
Expand Up @@ -14,6 +14,8 @@ import { LoadingOutlined } from '@ant-design/icons';
import stylesheet from 'antd/dist/antd.min.css';

import TeacherEditStudentComponent from '../components/individualStudentTeacherEdit';
import TeacherStudentAdd from '../components/teacherStudentAdd';



export default class TeacherStudentComponent extends React.Component {
Expand All @@ -37,9 +39,9 @@ export default class TeacherStudentComponent extends React.Component {
}

addStudentsButtonComponent = () => {
if(this.props.teacherStudentComponent.currentUserDoc && this.props.teacherStudentRef.data && !this.props.teacherStudentComponent.individualStudentEditClicked){
if(this.props.teacherStudentComponent.currentUserDoc && this.props.teacherStudentRef.data && !this.props.teacherStudentComponent.individualStudentEditClicked && !this.props.teacherStudentComponent.teacherStudentComponentAddStudentsClicked){
return(
<Button type="primary" icon={<FolderAddTwoTone />} size="default" style={{marginLeft: 40}}>
<Button type="primary" icon={<FolderAddTwoTone />} size="default" style={{marginLeft: 40}} onClick={(e) => this.props.handleTeacherStudentComponentAddStudents(e)}>
Add Students
</Button>
)
Expand All @@ -50,7 +52,7 @@ export default class TeacherStudentComponent extends React.Component {
console.log("in teacherStudentComponent");
console.log(this.props.teacherStudentRef.data);
// check if the individualStudentEditClicked is clicked
if(this.props.teacherStudentComponent.currentUserDoc && this.props.teacherStudentRef.data && !this.props.teacherStudentComponent.individualStudentEditClicked){
if(this.props.teacherStudentComponent.currentUserDoc && this.props.teacherStudentRef.data && !this.props.teacherStudentComponent.individualStudentEditClicked && !this.props.teacherStudentComponent.teacherStudentComponentAddStudentsClicked){
const antIcon = <LoadingOutlined style={{ fontSize: 20 }} spin />;
return(
<List style={{position: "absolute"}}>
Expand Down Expand Up @@ -79,7 +81,7 @@ export default class TeacherStudentComponent extends React.Component {
}
</List>
)
} else if (this.props.teacherStudentComponent.individualStudentEditClicked == true) {
} else if (this.props.teacherStudentComponent.individualStudentEditClicked == true && !this.props.teacherStudentComponent.teacherStudentComponentAddStudentsClicked) {
return <TeacherEditStudentComponent
teacherStudentRef={this.props.teacherStudentRef}
individualEditStudentInformation={this.props.teacherStudentComponent.individualEditStudentInformation}
Expand All @@ -96,15 +98,8 @@ export default class TeacherStudentComponent extends React.Component {
handleIndividualStudentTeacherUpload={this.props.handleIndividualStudentTeacherUpload}
handleIndividualStudentTeacherBackClicked={this.props.handleIndividualStudentTeacherBackClicked}
/>
// displayName: "asdlkfj 89234"
// email: "alskdjf@gmail.com"
// emailVerified: false
// isNewUser: true
// photoURL: null
// teacherUid: "19IhT36iYrc8ttuKtLXgyx4yNGE2"
// uid: "CaAUbJk1CVeimMJRPJyJbmTHhmP2"
// userType: "student"
// TODO: add edit information with the stuff above add a save button and also a back button
} else if(this.props.teacherStudentComponent.teacherStudentComponentAddStudentsClicked === true && !this.props.teacherStudentComponent.individualStudentEditClicked) {
return <TeacherStudentAdd />
} else {
return(
null
Expand Down

0 comments on commit d5a55dd

Please sign in to comment.