diff --git a/imports/client/views/org/admin/teachers/UploadCsvTeacher.js b/imports/client/views/org/admin/teachers/UploadCsvTeacher.js
new file mode 100644
index 0000000..ddac363
--- /dev/null
+++ b/imports/client/views/org/admin/teachers/UploadCsvTeacher.js
@@ -0,0 +1,103 @@
+// import {UploadCsv } from '/imports/collections/students/UploadCsv'
+import _ from 'lodash';
+import { Meteor } from 'meteor/meteor';
+
+import React, { Component } from 'react';
+import { Link,browserHistory } from 'react-router';
+import { FormGroup,Panel,Table,
+ ButtonToolbar,Modal,ControlLabel,HelpBlock,
+ FormControl,Glyphicon,Button } from 'react-bootstrap';
+// import { AddStudentForm } from './addStudentForm';
+import { FilesCollection } from 'meteor/ostrio:files';
+const Papa = this.Papa;
+// console.log(this);
+const style = {
+ margin: 12,
+};
+function FieldGroup({ id, label, help, ...props }) {
+ return (
+
+ {label}
+
+ {help && {help}}
+
+ );
+}
+export class UploadCsvTeacher extends Component {
+ constructor(props) {
+ super(props);
+ this.state = {
+ show: false
+ };
+ this.showModal = this.showModal.bind(this);
+ this.hideModal = this.hideModal.bind(this);
+ this.onUpdate = this.onUpdate.bind(this);
+ };
+
+ showModal() {
+ this.setState({show: true});
+ }
+
+ hideModal() {
+ this.setState({show: false});
+ }
+ onUpdate(key, value) {
+ this.setState({[key]: value});
+ };
+ uploadStudentCsv(e){
+ e.preventDefault();
+ e.persist();
+ var file = $('input[type="file"]').prop("files")[0];
+ Papa.parse(file, {
+ header: true,
+ complete: function(csvData) {
+ console.log("csvData");
+ console.log(csvData);
+ if(csvData){
+ Meteor.call('teachers.uploadCsv', csvData, function (error, result) {
+ console.log("error");
+ console.log(error);
+ console.log("result");
+ console.log(result);
+ })
+ }
+ }
+ });
+ }
+
+ render() {
+ console.log(this.props);
+ return (
+
+
+
+
+ New Student
+
+
+
+
+
+
+
+
+
+ );
+ };
+
+};
diff --git a/imports/client/views/org/admin/teachers/add/AddStudentFormContainer.js b/imports/client/views/org/admin/teachers/add/AddStudentFormContainer.js
new file mode 100644
index 0000000..85ef828
--- /dev/null
+++ b/imports/client/views/org/admin/teachers/add/AddStudentFormContainer.js
@@ -0,0 +1,96 @@
+import React, { Component } from 'react'
+import { AddStudentForm } from './addStudentForm'
+import StudentForm from './StudentForm'
+import Form from '/imports/client/views/core/Form'
+import Validator from '/imports/client/views/core/Validator'
+import { isRequired, isValidEmail } from '/imports/client/views/core/validations'
+import { addStudentManually } from '/imports/collections/students/methods';
+
+export class AddStudentFormContainer extends Component {
+
+ constructor(props) {
+ super(props)
+ this.state = { currentStep: 0 }
+ this.handleNextClick = this.handleNextClick.bind(this)
+ this.handleBackClick = this.handleBackClick.bind(this)
+ this.handleSubmit = this.handleSubmit.bind(this)
+ }
+
+ handleNextClick() {
+ this.form.handleSubmit()
+ if (this.validator.getErrors() && Object.keys(this.validator.getErrors()).length > 0) return
+ this.setState({ currentStep: this.state.currentStep + 1 })
+ this.form.resetSubmitted()
+ }
+
+ handleBackClick() {
+ this.setState({ currentStep: this.state.currentStep + -1 })
+ }
+
+ handleSubmit() {
+ if (this.state.currentStep === 3) {
+ addStudentManually.call(this.form.state.values)
+ }
+ }
+
+ //render callback
+ render() {
+ return (
+
+ )
+ }
+}
diff --git a/imports/client/views/org/admin/teachers/add/StudentForm.js b/imports/client/views/org/admin/teachers/add/StudentForm.js
new file mode 100644
index 0000000..2db920a
--- /dev/null
+++ b/imports/client/views/org/admin/teachers/add/StudentForm.js
@@ -0,0 +1,485 @@
+import React, { PropTypes } from 'react'
+import {
+ Row,
+ Col,
+ FormGroup,
+ FormControl,
+ Button
+} from 'react-bootstrap'
+import DatePicker from '/imports/client/views/core/DatePicker'
+import Label from '/imports/client/views/core/Label'
+import Stepper from '/imports/client/views/core/Stepper'
+import ErrorLabel from '/imports/client/views/core/ErrorLabel'
+
+const StudentForm = props => (
+
+
+ {props.currentStep === 0 && (
+
+ )}
+ {props.currentStep === 1 && (
+
+ )}
+ {props.currentStep === 2 && (
+
+ )}
+ {props.currentStep === 3 && (
+
+ )}
+
+ {props.currentStep > 0 && (
+
+
+
+
+ )}
+ {props.currentStep < 3 && (
+
+
+
+ )}
+ {props.currentStep === 3 && (
+
+
+
+ )}
+
+
+)
+
+StudentForm.propTypes = {
+ currentStep: PropTypes.number.isRequired,
+ onNextClick: PropTypes.func.isRequired,
+ onBackClick: PropTypes.func.isRequired,
+ setValue: PropTypes.func.isRequired,
+ getValue: PropTypes.func.isRequired,
+}
+
+export default StudentForm
diff --git a/imports/client/views/org/admin/teachers/add/addStudentForm.js b/imports/client/views/org/admin/teachers/add/addStudentForm.js
new file mode 100644
index 0000000..9f41e25
--- /dev/null
+++ b/imports/client/views/org/admin/teachers/add/addStudentForm.js
@@ -0,0 +1,500 @@
+import _ from 'lodash';
+import { Meteor } from 'meteor/meteor';
+
+import React, { Component } from 'react';
+import { Link,browserHistory } from 'react-router';
+import { Form, FormGroup,InputGroup,
+ DropdownButton,MenuItem,ControlLabel,
+ SplitButton,
+ FormControl,Glyphicon,Button } from 'react-bootstrap';
+import DatePicker from 'react-bootstrap-date-picker'
+import {addStudentManually} from '/imports/collections/students/methods';
+
+export class AddStudentForm extends Component {
+
+ constructor(props) {
+ super(props);
+ this.state = {
+ admissionId: "123",
+ firstName: "first",
+ lastName: "last",
+ middleName: "middle",
+ email: "deepak125.dk+21@gmail.com",
+ dob: "",
+ formattedDob: "",
+ gender: "male",
+ rollNo: "1",
+ class: "2",
+ section: "B",
+ community: "SC",
+ bloodGroup: "B+",
+ phone: "9876543321",
+ address: "address",
+ city: "chennai",
+ state: "tn",
+ parentName: "parentName",
+ parentEmail: "deepak125.dk+41@gmail.com",
+ relation: "father",
+ profession: "farmer",
+ parentGender: "male",
+ parentPhone: "987655412",
+ parentAddress: "parentAddress",
+ parentCity: "parentCity",
+ parentState: "parentState",
+ parentZipcode: "parentZipcode",
+ };
+ this.onUpdate = this.onUpdate.bind(this);
+ this.handleDob = this.handleDob.bind(this);
+ };
+
+ onUpdate(key, value) {
+ this.setState({[key]: value});
+ };
+
+ handleDob(value, formattedValue) {
+ this.setState({
+ dob: value, // ISO String, ex: "2016-11-19T12:00:00.000Z"
+ formattedDob: formattedValue // Formatted String, ex: "11/19/2016"
+ });
+}
+ addStudent(e){
+ e.preventDefault();
+ e.persist();
+ const firstName = this.state.firstName;
+ const middleName = this.state.middleName;
+ const lastName = this.state.lastName;
+ const admissionId = this.state.admissionId;
+ const email = this.state.email;
+ const dob = this.state.dob;
+ const formattedDob = this.state.formattedDob;
+ const gender = this.state.gender;
+ const rollNo = this.state.rollNo;
+ const studentclass = this.state.class;
+ const section = this.state.section;
+ const community = this.state.community;
+ const bloodGroup = this.state.bloodGroup;
+ const phone = this.state.phone;
+ const address = this.state.address;
+ const city = this.state.city;
+ const state = this.state.state;
+ const parentName = this.state.parentName;
+ const parentEmail = this.state.parentEmail;
+ const relation = this.state.relation;
+ const profession = this.state.profession;
+ const parentGender = this.state.parentGender;
+ const parentPhone = this.state.parentPhone;
+ const parentAddress = this.state.parentAddress;
+ const parentCity = this.state.parentCity;
+ const parentState = this.state.parentState;
+ const parentZipcode = this.state.parentZipcode;
+ if(admissionId==""){
+ Bert.alert('Enter Admission Id!', 'danger');
+ }else if(firstName==""){
+ Bert.alert('Enter Fist Name', 'danger');
+ } else if(middleName==""){
+ Bert.alert('Enter Middle name!', 'danger');
+ }else if(lastName==""){
+ Bert.alert('Enter Last name!', 'danger');
+ }else if(email==""){
+ Bert.alert('Enter email!', 'danger');
+ }else if(dob==""){
+ Bert.alert('Enter DOB!', 'danger');
+ }else if(gender==""){
+ Bert.alert('Enter Student Gender!', 'danger');
+ }else if(studentclass==""){
+ Bert.alert('Enter Class!', 'danger');
+ }else if(section==""){
+ Bert.alert('Enter Section!', 'danger');
+ }else if(community==""){
+ Bert.alert('Enter Section!', 'danger');
+ }else if(bloodGroup==""){
+ Bert.alert('Enter Blood Group!', 'danger');
+ }else if(phone==""){
+ Bert.alert('Enter phone!', 'danger');
+ }else if(address==""){
+ Bert.alert('Enter address!', 'danger');
+ }else if(city==""){
+ Bert.alert('Enter city!', 'danger');
+ }else if(state==""){
+ Bert.alert('Enter state!', 'danger');
+ }else if(parentName==""){
+ Bert.alert('Enter Parent name!', 'danger');
+ }else if(parentEmail==""){
+ Bert.alert('Enter Parent Email!', 'danger');
+ }else if(relation==""){
+ Bert.alert('Enter relation!', 'danger');
+ }else if(profession==""){
+ Bert.alert('Enter parent profession!', 'danger');
+ }else if(parentGender==""){
+ Bert.alert("Enter Parent's Gender!", 'danger');
+ }else if(parentPhone==""){
+ Bert.alert("Enter Parent's Phone!", 'danger');
+ }else if(parentAddress==""){
+ Bert.alert("Enter Parent's Address!", 'danger');
+ }else if(parentCity==""){
+ Bert.alert("Enter Parent's City!", 'danger');
+ }else if(parentState==""){
+ Bert.alert("Enter Parent's State!", 'danger');
+ }else if(parentZipcode==""){
+ Bert.alert("Enter Parent's zipcode!", 'danger');
+ }else{
+ addStudentManually.call({
+ admissionId,
+ firstName,
+ middleName,
+ lastName,
+ email,
+ dob,
+ formattedDob,
+ gender,
+ rollNo,
+ studentclass,
+ section,
+ community,
+ bloodGroup,
+ phone,
+ address,
+ city,
+ state,
+ parentName,
+ parentEmail,
+ relation,
+ profession,
+ parentGender,
+ parentPhone,
+ parentAddress,
+ parentCity,
+ parentState,
+ parentZipcode
+ }, function (error, result) {
+ console.log(error);
+ console.log(result);
+ });
+ }
+ }
+ render() {
+ return (
+
+ );
+ };
+
+};
diff --git a/imports/client/views/org/admin/teachers/add/addTeacher.js b/imports/client/views/org/admin/teachers/add/addTeacher.js
new file mode 100644
index 0000000..6b3b7de
--- /dev/null
+++ b/imports/client/views/org/admin/teachers/add/addTeacher.js
@@ -0,0 +1,63 @@
+import _ from 'lodash';
+import { Meteor } from 'meteor/meteor';
+import React, { Component } from 'react';
+import { Link,browserHistory } from 'react-router';
+import { FormGroup,Panel,Table,
+ ButtonToolbar,Modal,
+ FormControl,Glyphicon,Button } from 'react-bootstrap';
+import { AddStudentFormContainer } from './AddStudentFormContainer';
+
+const style = {
+ margin: 12,
+};
+export class AddTeacher extends Component {
+ constructor(props) {
+ super(props);
+ this.state = {
+ show: false
+ };
+ this.showModal = this.showModal.bind(this);
+ this.hideModal = this.hideModal.bind(this);
+ this.onUpdate = this.onUpdate.bind(this);
+ };
+
+ showModal() {
+ this.setState({show: true});
+ }
+
+ hideModal() {
+ this.setState({show: false});
+ }
+ onUpdate(key, value) {
+ this.setState({[key]: value});
+ };
+
+ render() {
+ return (
+
+
+
+
+ New Student
+
+
+
+
+ {/*
+
+
+
+ */}
+
+
+ );
+ };
+
+};