@@ -251,23 +251,24 @@ const RiderModalInfo: React.FC<ModalFormProps> = ({
251251 ) }
252252 </ div >
253253
254- < div className = { cn ( styles . gridR1 , styles . gridCSmall3 ) } >
255- < Label className = { styles . label } htmlFor = "netid" >
256- NetID:{ ' ' }
257- </ Label >
258- < Input
259- id = "netid"
260- { ...register ( 'netid' , {
261- required : true ,
262- pattern : / ^ [ a - z A - Z ] + [ 0 - 9 ] + $ / ,
263- } ) }
264- type = "text"
265- disabled = { isStudentEditing }
266- className = { styles . firstRow }
267- aria-required = "true"
268- />
269- { errors . netid && < p className = { styles . error } > Invalid NetID</ p > }
270- </ div >
254+ { ! isStudentEditing && (
255+ < div className = { cn ( styles . gridR1 , styles . gridCSmall3 ) } >
256+ < Label className = { styles . label } htmlFor = "netid" >
257+ NetID:{ ' ' }
258+ </ Label >
259+ < Input
260+ id = "netid"
261+ { ...register ( 'netid' , {
262+ required : true ,
263+ pattern : / ^ [ a - z A - Z ] + [ 0 - 9 ] + $ / ,
264+ } ) }
265+ type = "text"
266+ className = { styles . firstRow }
267+ aria-required = "true"
268+ />
269+ { errors . netid && < p className = { styles . error } > Invalid NetID</ p > }
270+ </ div >
271+ ) }
271272
272273 < div className = { cn ( styles . gridR2 , styles . gridCBig1 ) } >
273274 < Label className = { styles . label } htmlFor = "phoneNumber" >
@@ -354,55 +355,55 @@ const RiderModalInfo: React.FC<ModalFormProps> = ({
354355 </ div >
355356 </ div >
356357
357- < div className = { cn ( styles . gridR3 , styles . gridCAll ) } >
358- < p > Duration </ p >
359- < div className = { styles . lastRow } >
360- < div >
361- < Label className = { styles . label } htmlFor = "joinDate" >
362- Join Date: { ' ' }
363- </ Label >
364- < Input
365- id = "joinDate"
366- { ... register ( 'joinDate' , { required : true } ) }
367- type = "date"
368- aria-required = "true "
369- disabled = { isStudentEditing }
370- className = { styles . riderDate }
371- />
372- { errors . joinDate && (
373- < p className = { styles . error } > Please enter a join date</ p >
374- ) }
375- </ div >
376- < div className = { styles . to } >
377- < p > →</ p >
378- </ div >
379- < div >
380- < Label className = { styles . label } htmlFor = "endDate" >
381- End Date:{ ' ' }
382- </ Label >
383- < Input
384- id = "endDate"
385- { ...register ( 'endDate' , {
386- required : true ,
387- validate : ( endDate ) => {
388- const joinDate = getValues ( 'joinDate' ) ;
389- return joinDate < endDate ;
390- } ,
391- } ) }
392- type = "date"
393- aria-required = "true"
394- disabled = { isStudentEditing }
395- className = { styles . riderDate }
396- />
397- { errors . endDate ?. type === 'required' && (
398- < p className = { styles . error } > Please enter an end date </ p >
399- ) }
400- { errors . endDate ?. type === 'validate' && (
401- < p className = { styles . error } > Invalid end time </ p >
402- ) }
358+ { ! isStudentEditing && (
359+ < div className = { cn ( styles . gridR3 , styles . gridCAll ) } >
360+ < p > Duration </ p >
361+ < div className = { styles . lastRow } >
362+ < div >
363+ < Label className = { styles . label } htmlFor = "joinDate" >
364+ Join Date: { ' ' }
365+ </ Label >
366+ < Input
367+ id = "joinDate"
368+ { ... register ( 'joinDate' , { required : true } ) }
369+ type = "date "
370+ aria-required = "true"
371+ className = { styles . riderDate }
372+ />
373+ { errors . joinDate && (
374+ < p className = { styles . error } > Please enter a join date</ p >
375+ ) }
376+ </ div >
377+ < div className = { styles . to } >
378+ < p > →</ p >
379+ </ div >
380+ < div >
381+ < Label className = { styles . label } htmlFor = "endDate" >
382+ End Date:{ ' ' }
383+ </ Label >
384+ < Input
385+ id = "endDate"
386+ { ...register ( 'endDate' , {
387+ required : true ,
388+ validate : ( endDate ) => {
389+ const joinDate = getValues ( 'joinDate' ) ;
390+ return joinDate < endDate ;
391+ } ,
392+ } ) }
393+ type = "date"
394+ aria-required = "true"
395+ className = { styles . riderDate }
396+ />
397+ { errors . endDate ?. type === 'required' && (
398+ < p className = { styles . error } > Please enter an end date </ p >
399+ ) }
400+ { errors . endDate ?. type === 'validate' && (
401+ < p className = { styles . error } > Invalid end time </ p >
402+ ) }
403+ </ div >
403404 </ div >
404405 </ div >
405- </ div >
406+ ) }
406407 </ div >
407408
408409 < div className = { styles . buttonContainer } >
@@ -415,7 +416,11 @@ const RiderModalInfo: React.FC<ModalFormProps> = ({
415416 Cancel
416417 </ Button >
417418 < Button type = "submit" className = { styles . submit } >
418- { isEditing ? 'Edit a Student' : 'Add a Student' }
419+ { isStudentEditing
420+ ? 'Save Changes'
421+ : isEditing
422+ ? 'Edit a Student'
423+ : 'Add a Student' }
419424 </ Button >
420425 </ div >
421426 </ form >
0 commit comments