FCDM-website-new/app/contact/page.tsx

144 lines
5.8 KiB
TypeScript

import { Header } from "@/components/header"
import { Footer } from "@/components/footer"
import { Button } from "@/components/ui/button"
import { Card, CardContent } from "@/components/ui/card"
import { sendContactEmail } from "./actions"
import { Suspense } from "react"
function SuccessMessage({ searchParams }: { searchParams: { success?: string } }) {
if (searchParams.success === "true") {
return (
<div className="max-w-2xl mx-auto mb-8">
<div className="bg-green-50 border border-green-200 rounded-md p-4">
<div className="flex">
<div className="flex-shrink-0">
<svg className="h-5 w-5 text-green-400" viewBox="0 0 20 20" fill="currentColor">
<path
fillRule="evenodd"
d="M10 18a8 8 0 100-16 8 8 0 000 16zm3.707-9.293a1 1 0 00-1.414-1.414L9 10.586 7.707 9.293a1 1 0 00-1.414 1.414l2 2a1 1 0 001.414 0l4-4z"
clipRule="evenodd"
/>
</svg>
</div>
<div className="ml-3">
<h3 className="text-sm font-medium text-green-800">Message sent successfully!</h3>
<div className="mt-2 text-sm text-green-700">
<p>Thank you for contacting us. We'll get back to you within 24 hours.</p>
</div>
</div>
</div>
</div>
</div>
)
}
return null
}
export default function ContactPage({ searchParams }: { searchParams: { success?: string } }) {
return (
<div className="min-h-screen">
<Header />
{/* Hero Section */}
<section className="relative py-20 text-white">
<div
className="absolute inset-0 bg-cover bg-center"
style={{
backgroundImage: "url('/images/contact-hero.jpg')",
}}
/>
<div className="absolute inset-0 bg-gradient-to-br from-teal-500/90 to-blue-900/90" />
<div className="relative z-10 container mx-auto px-4 text-center">
<h1 className="text-5xl mb-4 text-white font-bold" style={{ fontFamily: "var(--font-permanent-marker)" }}>
Contact Us
</h1>
</div>
</section>
<main className="py-20">
<div className="container mx-auto px-4">
<Suspense fallback={null}>
<SuccessMessage searchParams={searchParams} />
</Suspense>
<div className="max-w-2xl mx-auto">
<Card className="p-8">
<CardContent>
<h2 className="text-2xl font-semibold mb-6 text-center">Ready to get noticed online?</h2>
<p className="text-gray-700 mb-8 text-center">
Great! If you'd like to learn more about how we can help you get noticed online, we'd love to schedule
an initial consultation phone call.
</p>
<form action={sendContactEmail} className="space-y-6">
<div>
<label htmlFor="name" className="block text-sm font-medium text-gray-700 mb-2">
Name *
</label>
<input
type="text"
id="name"
name="name"
required
className="w-full px-3 py-2 border border-gray-300 rounded-md focus:outline-none focus:ring-2 focus:ring-teal-500"
/>
</div>
<div>
<label htmlFor="email" className="block text-sm font-medium text-gray-700 mb-2">
Email *
</label>
<input
type="email"
id="email"
name="email"
required
className="w-full px-3 py-2 border border-gray-300 rounded-md focus:outline-none focus:ring-2 focus:ring-teal-500"
/>
</div>
<div>
<label htmlFor="phone" className="block text-sm font-medium text-gray-700 mb-2">
Phone Number
</label>
<input
type="tel"
id="phone"
name="phone"
className="w-full px-3 py-2 border border-gray-300 rounded-md focus:outline-none focus:ring-2 focus:ring-teal-500"
/>
</div>
<div>
<label htmlFor="company" className="block text-sm font-medium text-gray-700 mb-2">
Company/Organization
</label>
<input
type="text"
id="company"
name="company"
className="w-full px-3 py-2 border border-gray-300 rounded-md focus:outline-none focus:ring-2 focus:ring-teal-500"
/>
</div>
<div>
<label htmlFor="message" className="block text-sm font-medium text-gray-700 mb-2">
Tell us about your project *
</label>
<textarea
id="message"
name="message"
rows={4}
required
placeholder="What are your digital marketing goals? What challenges are you facing?"
className="w-full px-3 py-2 border border-gray-300 rounded-md focus:outline-none focus:ring-2 focus:ring-teal-500"
/>
</div>
<Button type="submit" className="w-full bg-teal-600 hover:bg-teal-700">
Send Message
</Button>
</form>
</CardContent>
</Card>
</div>
</div>
</main>
<Footer />
</div>
)
}