diff --git a/src/components/homepage/HeroSearch.tsx b/src/components/homepage/HeroSearch.tsx index 9d467753..18186a68 100644 --- a/src/components/homepage/HeroSearch.tsx +++ b/src/components/homepage/HeroSearch.tsx @@ -1,4 +1,5 @@ import { useState } from 'react'; +import { useNavigate } from 'react-router-dom'; import { Search, MapPin, Calendar, Filter } from 'lucide-react'; import { Input } from '@/components/ui/input'; import { Button } from '@/components/ui/button'; @@ -6,6 +7,7 @@ import { Badge } from '@/components/ui/badge'; import { Select, SelectContent, SelectItem, SelectTrigger, SelectValue } from '@/components/ui/select'; export function HeroSearch() { + const navigate = useNavigate(); const [searchTerm, setSearchTerm] = useState(''); const [selectedType, setSelectedType] = useState('all'); const [selectedCountry, setSelectedCountry] = useState('all'); @@ -31,8 +33,14 @@ export function HeroSearch() { ]; const handleSearch = () => { - console.log('Searching for:', searchTerm, selectedType, selectedCountry); - // TODO: Implement actual search functionality + if (!searchTerm.trim()) return; + + const params = new URLSearchParams(); + params.set('q', searchTerm); + if (selectedType !== 'all') params.set('type', selectedType); + if (selectedCountry !== 'all') params.set('country', selectedCountry); + + navigate(`/search?${params.toString()}`); }; return (