Rearrange footer sections to prioritize links and contact info
Swaps the order of the newsletter signup and quick links/contact sections in `client/src/components/navigation/footer.tsx`. Replit-Commit-Author: Agent Replit-Commit-Session-Id: d004b9e1-f9be-46e2-acda-f440ccd644a9 Replit-Commit-Screenshot-Url: https://storage.googleapis.com/screenshot-production-us-central1/af8dabca-e746-4e53-9c29-d8d4d9cf30f5/9313c1d8-a8de-4e0e-b082-5b8ba4924187.jpg
This commit is contained in:
parent
f90359430a
commit
14c982a21f
|
|
@ -85,55 +85,16 @@ export default function Footer() {
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
{/* Newsletter Signup Section spanning columns 2 and 3 */}
|
{/* Quick Links and Contact at top */}
|
||||||
<div className="md:col-span-2">
|
<div className="md:col-span-2">
|
||||||
<h3 className="font-playfair font-bold text-lg mb-4 text-white">Stay in touch with my newsletter</h3>
|
<div className="grid grid-cols-1 md:grid-cols-2 gap-8">
|
||||||
<form onSubmit={handleNewsletterSubmit} className="space-y-4">
|
|
||||||
<input
|
|
||||||
type="email"
|
|
||||||
placeholder="Your email address"
|
|
||||||
className="w-full px-4 py-3 text-sm bg-white bg-opacity-90 border border-white border-opacity-30 placeholder-gray-500 text-gray-800 focus:outline-none focus:border-white rounded-md"
|
|
||||||
value={email}
|
|
||||||
onChange={(e) => setEmail(e.target.value)}
|
|
||||||
required
|
|
||||||
/>
|
|
||||||
|
|
||||||
<div className="flex items-start gap-2">
|
|
||||||
<input
|
|
||||||
type="checkbox"
|
|
||||||
className="mt-1 flex-shrink-0"
|
|
||||||
checked={agreedToTerms}
|
|
||||||
onChange={(e) => setAgreedToTerms(e.target.checked)}
|
|
||||||
required
|
|
||||||
/>
|
|
||||||
<span className="text-white text-opacity-80 text-sm">I agree to receive emails from Pilates with Fadia</span>
|
|
||||||
</div>
|
|
||||||
|
|
||||||
<button
|
|
||||||
type="submit"
|
|
||||||
className="w-full px-6 py-3 text-sm bg-purple text-white font-bold hover:bg-opacity-90 transition duration-300 rounded-full flex items-center justify-center"
|
|
||||||
disabled={newsletterMutation.isPending}
|
|
||||||
>
|
|
||||||
{newsletterMutation.isPending ? (
|
|
||||||
<>
|
|
||||||
<Loader2 className="mr-2 h-4 w-4 animate-spin" />
|
|
||||||
Subscribing...
|
|
||||||
</>
|
|
||||||
) : (
|
|
||||||
"Subscribe"
|
|
||||||
)}
|
|
||||||
</button>
|
|
||||||
</form>
|
|
||||||
|
|
||||||
{/* Quick Links and Contact below newsletter */}
|
|
||||||
<div className="grid grid-cols-1 md:grid-cols-2 gap-8 mt-8 pt-6 border-t border-white border-opacity-20">
|
|
||||||
<div>
|
<div>
|
||||||
<h4 className="font-playfair font-bold text-base mb-3 text-white">Quick Links</h4>
|
<h3 className="font-playfair font-bold text-lg mb-4 text-white">Quick Links</h3>
|
||||||
<ul className="space-y-2">
|
<ul className="space-y-3">
|
||||||
<li>
|
<li>
|
||||||
<Link
|
<Link
|
||||||
href="/calendar"
|
href="/calendar"
|
||||||
className="text-white text-opacity-70 hover:text-white hover:text-opacity-100 transition duration-300 text-sm"
|
className="text-white text-opacity-70 hover:text-white hover:text-opacity-100 transition duration-300"
|
||||||
>
|
>
|
||||||
Book Classes
|
Book Classes
|
||||||
</Link>
|
</Link>
|
||||||
|
|
@ -141,7 +102,7 @@ export default function Footer() {
|
||||||
<li>
|
<li>
|
||||||
<Link
|
<Link
|
||||||
href="/about"
|
href="/about"
|
||||||
className="text-white text-opacity-70 hover:text-white hover:text-opacity-100 transition duration-300 text-sm"
|
className="text-white text-opacity-70 hover:text-white hover:text-opacity-100 transition duration-300"
|
||||||
>
|
>
|
||||||
About Fadia
|
About Fadia
|
||||||
</Link>
|
</Link>
|
||||||
|
|
@ -149,7 +110,7 @@ export default function Footer() {
|
||||||
<li>
|
<li>
|
||||||
<Link
|
<Link
|
||||||
href="/community"
|
href="/community"
|
||||||
className="text-white text-opacity-70 hover:text-white hover:text-opacity-100 transition duration-300 text-sm"
|
className="text-white text-opacity-70 hover:text-white hover:text-opacity-100 transition duration-300"
|
||||||
>
|
>
|
||||||
Community
|
Community
|
||||||
</Link>
|
</Link>
|
||||||
|
|
@ -157,7 +118,7 @@ export default function Footer() {
|
||||||
<li>
|
<li>
|
||||||
<Link
|
<Link
|
||||||
href="/contact"
|
href="/contact"
|
||||||
className="text-white text-opacity-70 hover:text-white hover:text-opacity-100 transition duration-300 text-sm"
|
className="text-white text-opacity-70 hover:text-white hover:text-opacity-100 transition duration-300"
|
||||||
>
|
>
|
||||||
Contact
|
Contact
|
||||||
</Link>
|
</Link>
|
||||||
|
|
@ -166,21 +127,62 @@ export default function Footer() {
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div>
|
<div>
|
||||||
<h4 className="font-playfair font-bold text-base mb-3 text-white">Contact</h4>
|
<h3 className="font-playfair font-bold text-lg mb-4 text-white">Contact</h3>
|
||||||
<ul className="space-y-2">
|
<ul className="space-y-3">
|
||||||
<li className="flex items-start">
|
<li className="flex items-start">
|
||||||
<i className="fas fa-map-marker-alt mt-1 mr-2 text-white text-sm"></i>
|
<i className="fas fa-map-marker-alt mt-1 mr-2 text-white"></i>
|
||||||
<span className="text-white text-opacity-70 text-sm">Nun Center<br/>Zamalek, Cairo, Egypt</span>
|
<span className="text-white text-opacity-70">Nun Center<br/>Zamalek, Cairo, Egypt</span>
|
||||||
</li>
|
</li>
|
||||||
<li className="flex items-center">
|
<li className="flex items-center">
|
||||||
<i className="fas fa-envelope mr-2 text-white text-sm"></i>
|
<i className="fas fa-envelope mr-2 text-white"></i>
|
||||||
<a href="mailto:hello@pilateswithfadia.com" className="text-white text-opacity-70 hover:text-white hover:text-opacity-100 transition duration-300 text-sm">
|
<a href="mailto:hello@pilateswithfadia.com" className="text-white text-opacity-70 hover:text-white hover:text-opacity-100 transition duration-300">
|
||||||
hello@pilateswithfadia.com
|
hello@pilateswithfadia.com
|
||||||
</a>
|
</a>
|
||||||
</li>
|
</li>
|
||||||
</ul>
|
</ul>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
|
{/* Newsletter Signup below links and contact */}
|
||||||
|
<div className="mt-8 pt-6 border-t border-white border-opacity-20">
|
||||||
|
<h4 className="font-playfair font-bold text-base mb-4 text-white">Stay in touch with my newsletter</h4>
|
||||||
|
<form onSubmit={handleNewsletterSubmit} className="space-y-4">
|
||||||
|
<input
|
||||||
|
type="email"
|
||||||
|
placeholder="Your email address"
|
||||||
|
className="w-full px-4 py-3 text-sm bg-white bg-opacity-90 border border-white border-opacity-30 placeholder-gray-500 text-gray-800 focus:outline-none focus:border-white rounded-md"
|
||||||
|
value={email}
|
||||||
|
onChange={(e) => setEmail(e.target.value)}
|
||||||
|
required
|
||||||
|
/>
|
||||||
|
|
||||||
|
<div className="flex items-start gap-2">
|
||||||
|
<input
|
||||||
|
type="checkbox"
|
||||||
|
className="mt-1 flex-shrink-0"
|
||||||
|
checked={agreedToTerms}
|
||||||
|
onChange={(e) => setAgreedToTerms(e.target.checked)}
|
||||||
|
required
|
||||||
|
/>
|
||||||
|
<span className="text-white text-opacity-80 text-sm">I agree to receive emails from Pilates with Fadia</span>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<button
|
||||||
|
type="submit"
|
||||||
|
className="w-full px-6 py-3 text-sm bg-purple text-white font-bold hover:bg-opacity-90 transition duration-300 rounded-full flex items-center justify-center"
|
||||||
|
disabled={newsletterMutation.isPending}
|
||||||
|
>
|
||||||
|
{newsletterMutation.isPending ? (
|
||||||
|
<>
|
||||||
|
<Loader2 className="mr-2 h-4 w-4 animate-spin" />
|
||||||
|
Subscribing...
|
||||||
|
</>
|
||||||
|
) : (
|
||||||
|
"Subscribe"
|
||||||
|
)}
|
||||||
|
</button>
|
||||||
|
</form>
|
||||||
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue