File tree Expand file tree Collapse file tree 3 files changed +25
-4
lines changed Expand file tree Collapse file tree 3 files changed +25
-4
lines changed Original file line number Diff line number Diff line change @@ -178,6 +178,22 @@ class Forms extends Component {
178
178
} )
179
179
}
180
180
181
+ postNewEmployer = async employer => {
182
+ try {
183
+ const newEmployerResponse = await axios ( {
184
+ method : 'POST' ,
185
+ url : `${ domain ( ) } /employers` ,
186
+ data : employer
187
+ } )
188
+ const newEmployer = newEmployerResponse . data
189
+ return newEmployer
190
+ } catch ( err ) {
191
+ return this . setState ( {
192
+ err : `Sorry, your employer's name has not been saved.`
193
+ } )
194
+ }
195
+ }
196
+
181
197
handleSubmit = async e => {
182
198
e . preventDefault ( )
183
199
this . setState ( {
@@ -409,6 +425,7 @@ class Forms extends Component {
409
425
employersOptions = { this . state . employersOptions }
410
426
{ ...this . props }
411
427
{ ...this . state }
428
+ postNewEmployer = { this . postNewEmployer }
412
429
/>
413
430
< Acknowledgement onChange = { this . onChange } { ...this . state } />
414
431
< button
Original file line number Diff line number Diff line change @@ -8,7 +8,8 @@ const EmployerDropDown = ({
8
8
arrayList : employers ,
9
9
isEmpty,
10
10
onChange,
11
- value
11
+ value,
12
+ postNewEmployer
12
13
} ) => {
13
14
const [ options , setOptions ] = useSession ( 'cyfEmployerList' , ( ) =>
14
15
employers . map ( ( { _id, name } ) => ( {
@@ -43,8 +44,9 @@ const EmployerDropDown = ({
43
44
onCreateOption = { newEmployer => {
44
45
setOptions ( oldOptions => insertedInto ( oldOptions , newEmployer ) )
45
46
handleChange ( newEmployer )
47
+ postNewEmployer ( { name : `${ newEmployer } ` } )
46
48
} }
47
- options = { options }
49
+ options = { options . sort ( ( a , b ) => a . label . localeCompare ( b . label ) ) }
48
50
placeholder = "Type your employer name here"
49
51
value = { selectedOption }
50
52
/>
Original file line number Diff line number Diff line change @@ -33,7 +33,8 @@ export default class VolunteerForm extends Component {
33
33
techSkill,
34
34
otherSkill,
35
35
employersOptions,
36
- employer
36
+ employer,
37
+ postNewEmployer
37
38
} = this . props
38
39
39
40
return (
@@ -150,7 +151,8 @@ export default class VolunteerForm extends Component {
150
151
arrayList = { employersOptions }
151
152
isEmpty = { errors . employer }
152
153
onChange = { onChange }
153
- value = { employersOptions }
154
+ value = { employer }
155
+ postNewEmployer = { postNewEmployer }
154
156
/>
155
157
) }
156
158
< span className = "contact-interested" >
You can’t perform that action at this time.
0 commit comments