diff --git a/imports/client/views/core/DatePicker.js b/imports/client/views/core/DatePicker.js index 2aebdba..4fd1e4a 100644 --- a/imports/client/views/core/DatePicker.js +++ b/imports/client/views/core/DatePicker.js @@ -9,7 +9,7 @@ class DatePicker extends Component { changeMonth: true, changeYear: true, showButtonPanel: true, - yearRange: '-25:-1', + yearRange: '-35:-1', dateFormat: 'dd/mm/yy', onSelect: function(dateText, inst) { var date = $(this).val(); diff --git a/imports/client/views/org/admin/staff/add/AddStaffFormContainer.js b/imports/client/views/org/admin/staff/add/AddStaffFormContainer.js index a5c0bdc..994879e 100644 --- a/imports/client/views/org/admin/staff/add/AddStaffFormContainer.js +++ b/imports/client/views/org/admin/staff/add/AddStaffFormContainer.js @@ -3,6 +3,7 @@ import StaffForm from './StaffForm' 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 AddStaffFormContainer extends Component { @@ -15,8 +16,10 @@ export class AddStaffFormContainer extends Component { } handleNextClick() { + console.log("clicked"); this.form.handleSubmit() if (this.validator.getErrors() && Object.keys(this.validator.getErrors()).length > 0) return + console.log("after submit"); this.setState({ currentStep: this.state.currentStep + 1 }) this.form.resetSubmitted() } @@ -26,8 +29,12 @@ export class AddStaffFormContainer extends Component { } handleSubmit() { - if (this.state.currentStep === 3) { - addStudentManually.call(this.form.state.values) + if (this.state.currentStep === 2) { + console.log(this.form.state.values); + Meteor.call('staff.addNew', this.form.state.values, (error, result) => { + console.log(error); + console.log(result); + }); } } @@ -38,8 +45,28 @@ export class AddStaffFormContainer extends Component { onSubmit={this.handleSubmit} ref={form => this.form = form} initialValues={{ - gender: 'male', - parentGender: 'male', + employeeId: '12345', + firstName: 'Test', + lastName: 'Last', + + martialStatus: 'single', + gender: 'male', + dob: '07/03/1993', + + email: 'deepak125.dk+400@gmail.com', + phone: '9876543210', + address: '123', + + teaching: "yes", + type: 'permanent', + doj: '07/03/2016', + + qualifaication: 'Phd', + specialization: 'Maths', + university: 'Pune University', + + degreeFrom: '07/03/2009', + degreeEnded: '07/03/2013', }} > {({ values, setValue, getValue, isSubmitted, isDirty }) => ( @@ -47,31 +74,29 @@ export class AddStaffFormContainer extends Component { values={values} ref={validator => this.validator = validator} validations={{ - admissionId: [(value) => isRequired('Admission id', value)], - firstName: [(value) => isRequired('First name', value)], - lastName: [(value) => isRequired('Last name', value)], - email: [(value) => isRequired('Email', value), isValidEmail], - dob: [(value) => isRequired('Date of birth', value)], - gender: [(value) => isRequired('Gender', value)], - rollNo: [(value) => this.state.currentStep === 1 && isRequired('Roll no', value)], - studentClass: [(value) => this.state.currentStep === 1 && isRequired('Class', value)], - section: [(value) => this.state.currentStep === 1 && isRequired('Section', value)], - community: [(value) => this.state.currentStep === 1 && isRequired('Community', value)], - bloodGroup: [(value) => this.state.currentStep === 1 && isRequired('Blood group', value)], - phone: [(value) => this.state.currentStep === 1 && isRequired('Phone', value)], - address: [(value) => this.state.currentStep === 2 && isRequired('Address', value)], - city: [(value) => this.state.currentStep === 2 && isRequired('City', value)], - state: [(value) => this.state.currentStep === 2 && isRequired('State', value)], - parentName: [(value) => this.state.currentStep === 3 && isRequired('Parent name', value)], - parentEmail: [(value) => this.state.currentStep === 3 && isRequired('Parent email', value), (value) => this.state.currentStep === 3 && isValidEmail(value)], - relation: [(value) => this.state.currentStep === 3 && isRequired('Relation', value)], - profession: [(value) => this.state.currentStep === 3 && isRequired('Profession', value)], - parentGender: [(value) => this.state.currentStep === 3 && isRequired('Parent gender', value)], - parentPhone: [(value) => this.state.currentStep === 3 && isRequired('Parent phone', value)], - parentAddress: [(value) => this.state.currentStep === 3 && isRequired('Parent address', value)], - parentCity: [(value) => this.state.currentStep === 3 && isRequired('Parent city', value)], - parentState: [(value) => this.state.currentStep === 3 && isRequired('Parent state', value)], - parentZipcode: [(value) => this.state.currentStep === 3 && isRequired('Parent zip code', value)], + employeeId: [(value) => isRequired('Admission id', value)], + firstName: [(value) => isRequired('First name', value)], + lastName: [(value) => isRequired('Last name', value)], + + gender: [(value) => isRequired('Gender', value)], + martialStatus: [(value) => isRequired('martialStatus', value)], + dob: [(value) => isRequired('Date of birth', value)], + + email: [(value) => this.state.currentStep === 1 && isRequired('Email', value), (value) => this.state.currentStep === 1 && isValidEmail(value)], + phone: [(value) => this.state.currentStep === 1 && isRequired('Phone', value)], + address: [(value) => this.state.currentStep === 1 && isRequired('Address', value)], + + teaching: [(value) => this.state.currentStep === 1 && isRequired('teaching', value)], + type: [(value) => this.state.currentStep === 1 && isRequired('type', value)], + doj: [(value) => this.state.currentStep === 1 && isRequired('doj', value)], + + qualifaication: [(value) => this.state.currentStep === 2 && isRequired('qualifaication', value)], + specialization: [(value) => this.state.currentStep === 2 && isRequired('specialization', value)], + university: [(value) => this.state.currentStep === 2 && isRequired('university', value)], + + degreeFrom: [(value) => this.state.currentStep === 2 && isRequired('degreeFrom', value)], + degreeEnded: [(value) => this.state.currentStep === 2 && isRequired('degreeEnded', value)], + }} > {({ errors }) => ( diff --git a/imports/client/views/org/admin/staff/add/StaffForm.js b/imports/client/views/org/admin/staff/add/StaffForm.js index a02c628..48b8ad3 100644 --- a/imports/client/views/org/admin/staff/add/StaffForm.js +++ b/imports/client/views/org/admin/staff/add/StaffForm.js @@ -20,17 +20,13 @@ const StaffForm = props => ( active: props.currentStep === 0, }, { - label: 'Academic', + label: 'Additional Info', active: props.currentStep === 1, }, { - label: 'Address', + label: 'Professional Info', active: props.currentStep === 2, }, - { - label: 'Parent info', - active: props.currentStep === 3, - } ]} /> {props.currentStep === 0 && ( @@ -38,16 +34,16 @@ const StaffForm = props => ( Personal data - + props.setValue('admissionId', e.target.value)} + value={props.getValue('employeeId')} + placeholder="employee Id" + onChange={e => props.setValue('employeeId', e.target.value)} /> - {props.isSubmitted() && props.errors && props.errors.admissionId && ( - {props.errors.admissionId} + {props.isSubmitted() && props.errors && props.errors.employeeId && ( + {props.errors.employeeId} )} @@ -101,14 +97,17 @@ const StaffForm = props => ( - - - + + props.setValue('martialStatus', e.target.value)} - /> + > + + + + {props.isSubmitted() && props.errors && props.errors.martialStatus && ( {props.errors.martialStatus} )} @@ -132,6 +131,11 @@ const StaffForm = props => ( + + )} + {props.currentStep === 1 && ( +
+ Additional Info @@ -147,115 +151,13 @@ const StaffForm = props => ( )} - - - - - props.setValue('gender', e.target.value)} - > - - - - {props.isSubmitted() && props.errors && props.errors.gender && ( - {props.errors.gender} - )} - - - - - - - -
- )} - {props.currentStep === 1 && ( -
- Academic - - - - - props.setValue('rollNo', e.target.value)} - /> - {props.isSubmitted() && props.errors && props.errors.rollNo && ( - {props.errors.rollNo} - )} - - - - - - props.setValue('studentClass', e.target.value)} - /> - {props.isSubmitted() && props.errors && props.errors.studentClass && ( - {props.errors.studentClass} - )} - - - - - - - - props.setValue('section', e.target.value)} - /> - {props.isSubmitted() && props.errors && props.errors.section && ( - {props.errors.section} - )} - - - - - - props.setValue('community', e.target.value)} - /> - {props.isSubmitted() && props.errors && props.errors.community && ( - {props.errors.community} - )} - - - - - - - - props.setValue('bloodGroup', e.target.value)} - /> - {props.isSubmitted() && props.errors && props.errors.bloodGroup && ( - {props.errors.bloodGroup} - )} - - props.setValue('phone', e.target.value)} /> {props.isSubmitted() && props.errors && props.errors.phone && ( @@ -263,13 +165,6 @@ const StaffForm = props => ( )} - -
- )} - {props.currentStep === 2 && ( -
- Address - @@ -284,190 +179,136 @@ const StaffForm = props => ( )} - - - - props.setValue('city', e.target.value)} - /> - {props.isSubmitted() && props.errors && props.errors.city && ( - {props.errors.city} - )} - - - - - props.setValue('state', e.target.value)} - /> - {props.isSubmitted() && props.errors && props.errors.state && ( - {props.errors.state} + + + props.setValue('teaching', e.target.value)} + > + + + + {props.isSubmitted() && props.errors && props.errors.teaching && ( + {props.errors.teaching} )} - -
- )} - {props.currentStep === 3 && ( -
- Parent information - - - - props.setValue('parentName', e.target.value)} - /> - {props.isSubmitted() && props.errors && props.errors.parentName && ( - {props.errors.parentName} + + + props.setValue('type', e.target.value)} + > + + + + {props.isSubmitted() && props.errors && props.errors.type && ( + {props.errors.type} )} - - - props.setValue('parentEmail', e.target.value)} + + + { + props.setValue('doj', e.target.value) + }} /> - {props.isSubmitted() && props.errors && props.errors.parentEmail && ( - {props.errors.parentEmail} + {props.isSubmitted() && props.errors && props.errors.doj && ( + {props.errors.doj} )} +
+ )} + {props.currentStep === 2 && ( +
+ Professional Info - - + + props.setValue('relation', e.target.value)} + value={props.getValue('qualifaication')} + placeholder="Ex: Phd" + onChange={e => props.setValue('qualifaication', e.target.value)} /> - {props.isSubmitted() && props.errors && props.errors.relation && ( - {props.errors.relation} + {props.isSubmitted() && props.errors && props.errors.qualifaication && ( + {props.errors.qualifaication} )} - - + + props.setValue('profession', e.target.value)} + value={props.getValue('specialization')} + placeholder="Ex: Maths" + onChange={e => props.setValue('specialization', e.target.value)} /> - {props.isSubmitted() && props.errors && props.errors.profession && ( - {props.errors.profession} - )} - - - - - - - - props.setValue('parentGender', e.target.value)} - > - - - - {props.isSubmitted() && props.errors && props.errors.parentGender && ( - {props.errors.parentGender} + {props.isSubmitted() && props.errors && props.errors.specialization && ( + {props.errors.specialization} )} - - + + props.setValue('parentPhone', e.target.value)} + value={props.getValue('university')} + placeholder="Ex: Pune University" + onChange={e => props.setValue('university', e.target.value)} /> - {props.isSubmitted() && props.errors && props.errors.parentPhone && ( - {props.errors.parentPhone} + {props.isSubmitted() && props.errors && props.errors.university && ( + {props.errors.university} )} - - - props.setValue('parentAddress', e.target.value)} - /> - {props.isSubmitted() && props.errors && props.errors.parentAddress && ( - {props.errors.parentAddress} - )} - - - - - - props.setValue('parentCity', e.target.value)} + + + { + props.setValue('degreeFrom', e.target.value) + }} /> - {props.isSubmitted() && props.errors && props.errors.parentCity && ( - {props.errors.parentCity} + {props.isSubmitted() && props.errors && props.errors.degreeFrom && ( + {props.errors.degreeFrom} )} - - - - - - props.setValue('parentState', e.target.value)} - /> - {props.isSubmitted() && props.errors && props.errors.parentState && ( - {props.errors.parentState} - )} - - - - - props.setValue('parentZipcode', e.target.value)} + + + { + props.setValue('degreeEnded', e.target.value) + }} /> - {props.isSubmitted() && props.errors && props.errors.parentZipcode && ( - {props.errors.parentZipcode} + {props.isSubmitted() && props.errors && props.errors.degreeEnded && ( + {props.errors.degreeEnded} )} @@ -484,7 +325,7 @@ const StaffForm = props => ( )} - {props.currentStep < 3 && ( + {props.currentStep < 2 && (
)} - {props.currentStep === 3 && ( + {props.currentStep === 2 && (