diff --git a/app/Http/Controllers/CarrierController.php b/app/Http/Controllers/CarrierController.php index f58c499..e64b8dc 100644 --- a/app/Http/Controllers/CarrierController.php +++ b/app/Http/Controllers/CarrierController.php @@ -16,18 +16,12 @@ class CarrierController extends ResourceSearchController */ public function index(Request $request) { - $request->validate([ - 'carrier_id' => 'nullable|exists:carriers,id', - ]); - - if ($request->input('carrier_id')) { - $carrier = Carrier::find($request->input('carrier_id')); - return Inertia::render('Carriers/Index', [ - 'carrier' => CarrierResource::make($carrier), - ]); - } - return Inertia::render('Carriers/Index'); + return Inertia::render('Carriers/Index', + [ + 'allowFmcsaSearch' => config('fmcsa.api_key') ? true : false, + ] + ); } /** diff --git a/resources/js/Pages/Carriers/Index.tsx b/resources/js/Pages/Carriers/Index.tsx index f31993a..529efba 100644 --- a/resources/js/Pages/Carriers/Index.tsx +++ b/resources/js/Pages/Carriers/Index.tsx @@ -7,7 +7,11 @@ import { Plus } from 'lucide-react'; import { useState } from 'react'; import CarrierCreateDialog from './Partials/CarrierCreateDialog'; -export default function Index() { +export default function Index({ + allowFmcsaSearch, +}: { + allowFmcsaSearch: boolean; +}) { const [isOpen, setIsOpen] = useState(false); const setSelectedCarrier = (carrier: Carrier) => { @@ -38,7 +42,11 @@ export default function Index() { - + ); } diff --git a/resources/js/Pages/Carriers/Partials/CarrierCreateDialog.tsx b/resources/js/Pages/Carriers/Partials/CarrierCreateDialog.tsx index a970e62..2b27e98 100644 --- a/resources/js/Pages/Carriers/Partials/CarrierCreateDialog.tsx +++ b/resources/js/Pages/Carriers/Partials/CarrierCreateDialog.tsx @@ -22,9 +22,11 @@ import { useState } from 'react'; function CarrierManualCreateForm({ setIsOpen, setFormState, + allowFmcsaSearch, }: { setIsOpen: (isOpen: boolean) => void; setFormState: (formState: 'manual' | 'fmcsa') => void; + allowFmcsaSearch: boolean; }) { const handleSubmit = (e: React.FormEvent) => { e.preventDefault(); @@ -59,13 +61,15 @@ function CarrierManualCreateForm({ /> {errors.name && } - + {allowFmcsaSearch && ( + + )} @@ -137,9 +141,7 @@ function CarrierFmcsaCreateForm({ />
- + void; + allowFmcsaSearch: boolean; }) { - const [formState, setFormState] = useState<'manual' | 'fmcsa'>('fmcsa'); + const [formState, setFormState] = useState<'manual' | 'fmcsa'>( + allowFmcsaSearch ? 'fmcsa' : 'manual', + ); + + const changeFormStateCheckForSearch = (formState: 'manual' | 'fmcsa') => { + if (allowFmcsaSearch) { + setFormState(formState); + } else { + setFormState('manual'); + } + }; return ( @@ -301,13 +315,14 @@ export default function CarrierCreateDialog({ {formState === 'manual' && ( )} {formState === 'fmcsa' && ( )}