Fixes #21
@@ -46,6 +46,12 @@ export function RideCloseDialog({ open, onClose, onSuccess, ride }: RideCloseDia
|
||||
if (!ride) return null
|
||||
|
||||
async function onSubmit(values: FormValues) {
|
||||
if (values.meterend < ride!.meterstart) {
|
||||
form.setError('meterend', {
|
||||
message: `Meter end cannot be less than meter start (${ride!.meterstart})`,
|
||||
})
|
||||
return
|
||||
}
|
||||
try {
|
||||
await ridesApi.close(ride!.id, values.meterend)
|
||||
toast.add({ title: 'Ride closed', type: 'success' })
|
||||
@@ -62,7 +68,7 @@ export function RideCloseDialog({ open, onClose, onSuccess, ride }: RideCloseDia
|
||||
<DialogHeader>
|
||||
<DialogTitle>Close Ride</DialogTitle>
|
||||
<DialogDescription>
|
||||
Enter the final odometer reading to close this ride.
|
||||
Enter the final odometer reading to close this ride. Must be at least {ride.meterstart} km (the starting reading).
|
||||
</DialogDescription>
|
||||
</DialogHeader>
|
||||
|
||||
@@ -79,7 +85,7 @@ export function RideCloseDialog({ open, onClose, onSuccess, ride }: RideCloseDia
|
||||
name={field.name}
|
||||
ref={field.ref}
|
||||
type="number"
|
||||
min={0}
|
||||
min={ride.meterstart}
|
||||
value={Number(field.value as number)}
|
||||
onChange={(e) => field.onChange(Number(e.target.value))}
|
||||
onBlur={field.onBlur}
|
||||
|
||||
Reference in New Issue
Block a user