footer updated language for all pages

This commit is contained in:
Alaguraj0361 2025-08-18 20:52:37 +05:30
parent 64e469e65b
commit e3dfbc9a18
13 changed files with 169 additions and 143 deletions

View File

@ -1,152 +1,146 @@
import React from 'react'
import Link from 'next/link'
import Image from 'next/image'
import { useTranslation } from 'next-i18next'
import Logo from '/public/images/janahanlaw-logo.png'
import Campaign from '../../api/campaign';
import Image from 'next/image';
const ClickHandler = () => {
window.scrollTo(10, 0);
window.scrollTo(10, 0);
}
const SubmitHandler = (e) => {
e.preventDefault()
e.preventDefault();
}
const Footer = (props) => {
return (
<footer className="wpo-site-footer">
<div className="wpo-upper-footer">
<div className="container">
<div className="row">
<div className="col col-lg-3 col-md-6 col-12 col-md-6 col-sm-12 col-12">
<div className="widget about-widget">
<div className="logo widget-title">
<Link onClick={ClickHandler} className="navbar-brand" href="/"><Image src={Logo} alt="" /></Link>
</div>
<p>Every immigration case tells a unique story of hope, determination, and the pursuit of the American dream.</p>
</div>
</div>
<div className="col col-lg-2 col-md-6 col-12 col-md-6 col-sm-12 col-12">
<div className="widget link-widget">
<div className="widget-title">
<h3>Quick Links</h3>
</div>
<ul>
<li><Link href="/">Home</Link></li>
<li><Link href="/about">About Us</Link></li>
<li><Link href="/services">Services</Link></li>
<li><Link href="/our-approach">Our Approach</Link></li>
<li><Link href="/blog">Blog</Link></li>
</ul>
</div>
</div>
<div className="col col-lg-4 col-md-6 col-12 col-md-6 col-sm-12 col-12">
<div className="widget link-widget s2">
<div className="widget-title">
<h3>Services</h3>
</div>
<ul>
{Campaign.slice(0, 5).map((service, Sitem) => (
<li key={Sitem}><Link onClick={ClickHandler} href={'/services/[slug]'} as={`/services/${service.slug}`}>{service.sTitle}</Link></li>
))}
</ul>
</div>
</div>
<div className="col col-lg-3 col-md-6 col-12 col-md-6 col-sm-12 col-12">
<div className="widget newsletter-widget">
<div className="widget-title">
<h3>Contact</h3>
</div>
{/* <p>Get timely updates ! We only send interesting and relevant emails.</p> */}
{/* <form onSubmit={SubmitHandler}>
<div className="input-1">
<input type="email" className="form-control" placeholder="Your Email Address..."
required="" />
</div>
<div className="submit clearfix">
<button type="submit">Subscribe now</button>
</div>
</form> */}
<div className="widget about-widget">
<ul className="info">
<li>
<Link href="tel:+1 (305) 330-7413"> <li>Phone: +1 (305) 330-7413</li></Link>
</li>
const { t } = useTranslation('footer'); // assuming your translations are in footer.json
<Link href="mailto:info@janahanlaw.com"> <li>Email: info@janahanlaw.com </li></Link>
{/* <li>Address: 22/1 Melborane city austria,
human resoerch, Canada</li> */}
</ul>
<div className="social">
<ul>
<li>
<Link onClick={ClickHandler} href="/" target="_blank" rel="noopener noreferrer">
<i className="fi flaticon-facebook-app-symbol"></i>
</Link>
</li>
<li>
<Link onClick={ClickHandler} href="/" target="_blank" rel="noopener noreferrer">
<i className="fi flaticon-twitter"></i>
</Link>
</li>
<li>
<Link onClick={ClickHandler} href="/" target="_blank" rel="noopener noreferrer">
<i className="fi flaticon-linkedin"></i>
</Link>
</li>
<li>
<Link onClick={ClickHandler} href="/" target="_blank" rel="noopener noreferrer">
<i className="fi flaticon-instagram-1"></i>
</Link>
</li>
{/* <li>
<Link onClick={ClickHandler} href="/">
<i className="fi flaticon-pinterest"></i>
</Link>
</li> */}
</ul>
</div>
</div>
</div>
</div>
</div>
return (
<footer className="wpo-site-footer">
<div className="wpo-upper-footer">
<div className="container">
<div className="row">
{/* About Widget */}
<div className="col col-lg-3 col-md-6 col-12 col-md-6 col-sm-12 col-12">
<div className="widget about-widget">
<div className="logo widget-title">
<Link onClick={ClickHandler} className="navbar-brand" href="/">
<Image src={Logo} alt={t('logoAlt') || ''} />
</Link>
</div>
<p>{t('aboutText')}</p>
</div>
</div>
<div className="wpo-lower-footer">
<div className="container">
<div className="row text-center align-items-center">
<div className="col col-lg-12 col-md-12 col-12">
<ul>
<li>
Copyright {new Date().getFullYear()} © Janahan Law. Powered by{' '}
<a
href="https://metatroncubesolutions.com/"
target="_blank"
rel="noopener noreferrer"
style={{ color: '#c12026' }}
>
MetatronCube
</a>. All Right Reserved.
</li>
</ul>
</div>
{/* <div className="col col-lg-6 col-md-12 col-12">
<div className="link">
<ul>
<li><Link onClick={ClickHandler} href="/privacy">Privace & Policy</Link></li>
<li><Link onClick={ClickHandler} href="/terms">Terms</Link></li>
<li><Link onClick={ClickHandler} href="/about">About us</Link></li>
<li><Link onClick={ClickHandler} href="/faq">FAQ</Link></li>
<li><Link onClick={ClickHandler} href="/volunteer">Volunteer</Link></li>
</ul>
</div>
</div> */}
</div>
{/* Quick Links */}
<div className="col col-lg-2 col-md-6 col-12 col-md-6 col-sm-12 col-12">
<div className="widget link-widget">
<div className="widget-title">
<h3>{t('quickLinksTitle')}</h3>
</div>
<ul>
<li><Link href="/">{t('home')}</Link></li>
<li><Link href="/about">{t('aboutUs')}</Link></li>
<li><Link href="/services">{t('services')}</Link></li>
<li><Link href="/our-approach">{t('ourApproach')}</Link></li>
<li><Link href="/blog">{t('blog')}</Link></li>
</ul>
</div>
</div>
</footer>
)
{/* Services Links */}
<div className="col col-lg-4 col-md-6 col-12 col-md-6 col-sm-12 col-12">
<div className="widget link-widget s2">
<div className="widget-title">
<h3>{t('servicesTitle')}</h3>
</div>
<ul>
{Campaign.slice(0, 5).map((service, Sitem) => (
<li key={Sitem}>
<Link onClick={ClickHandler} href={`/services/${service.slug}`}>
{service.sTitle}
</Link>
</li>
))}
</ul>
</div>
</div>
{/* Contact */}
<div className="col col-lg-3 col-md-6 col-12 col-md-6 col-sm-12 col-12">
<div className="widget newsletter-widget">
<div className="widget-title">
<h3>{t('contactTitle')}</h3>
</div>
<div className="widget about-widget">
<ul className="info">
<li>
<Link href="tel:+1 (305) 330-7413" style={{ color: 'rgb(255 255 255 / 60%)' }}>
{t('phone')}: +1 (305) 330-7413
</Link>
</li>
<li>
<Link href="mailto:info@janahanlaw.com" style={{ color: 'rgb(255 255 255 / 60%)' }}>
{t('email')}: info@janahanlaw.com
</Link>
</li>
{/* Address can be added here if needed */}
</ul>
<div className="social">
<ul>
<li>
<Link onClick={ClickHandler} href="/" target="_blank" rel="noopener noreferrer">
<i className="fi flaticon-facebook-app-symbol"></i>
</Link>
</li>
<li>
<Link onClick={ClickHandler} href="/" target="_blank" rel="noopener noreferrer">
<i className="fi flaticon-twitter"></i>
</Link>
</li>
<li>
<Link onClick={ClickHandler} href="/" target="_blank" rel="noopener noreferrer">
<i className="fi flaticon-linkedin"></i>
</Link>
</li>
<li>
<Link onClick={ClickHandler} href="/" target="_blank" rel="noopener noreferrer">
<i className="fi flaticon-instagram-1"></i>
</Link>
</li>
</ul>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
<div className="wpo-lower-footer">
<div className="container">
<div className="row text-center align-items-center">
<div className="col col-lg-12 col-md-12 col-12">
<ul>
<li>
{t('copyright', { year: new Date().getFullYear() })} {' '}
<a
href="https://metatroncubesolutions.com/"
target="_blank"
rel="noopener noreferrer"
style={{ color: '#c12026' }}
>
MetatronCube
</a>. {t('allRightsReserved')}
</li>
</ul>
</div>
</div>
</div>
</div>
</footer>
)
}
export default Footer;
export default Footer;

View File

@ -5,7 +5,7 @@ module.exports = {
locales: ['en', 'es'],
localeDetection: false,
},
ns: ['common', 'menu', 'homeHero', 'home4Card', '(home)/homeAbout', '(home)/homeFeature', '(home)/testimonial', '(home)/homeCalltoAction', 'blog', 'services'],
ns: ['common', 'menu', 'homeHero', 'home4Card', '(home)/homeAbout', '(home)/homeFeature', '(home)/testimonial', '(home)/homeCalltoAction', 'blog', 'services', 'footer'],
defaultNS: 'common',
// localePath: './public/locales',
};

View File

@ -48,7 +48,7 @@ export default AboutPage;
export async function getStaticProps({ locale }) {
return {
props: {
...(await serverSideTranslations(locale, ['common', 'menu', 'ourStory', 'aboutService', 'aboutMission', 'aboutRacial', 'aboutDonor'])), // Add 'home', 'footer', etc. if needed
...(await serverSideTranslations(locale, ['common', 'menu', 'ourStory', 'aboutService', 'aboutMission', 'aboutRacial', 'aboutDonor', 'footer'])), // Add 'home', 'footer', etc. if needed
},
};
}

View File

@ -24,7 +24,7 @@ export default AboutPage;
export async function getStaticProps({ locale }) {
return {
props: {
...(await serverSideTranslations(locale, ['common', 'menu', 'ourMission'])), // Add 'home', 'footer', etc. if needed
...(await serverSideTranslations(locale, ['common', 'menu', 'ourMission', 'footer'])), // Add 'home', 'footer', etc. if needed
},
};
}

View File

@ -24,7 +24,7 @@ export default AboutPage;
export async function getStaticProps({ locale }) {
return {
props: {
...(await serverSideTranslations(locale, ['common', 'menu', 'racialJustice'])), // Add 'home', 'footer', etc. if needed
...(await serverSideTranslations(locale, ['common', 'menu', 'racialJustice', 'footer'])), // Add 'home', 'footer', etc. if needed
},
};
}

View File

@ -98,7 +98,7 @@ export async function getStaticPaths() {
export async function getStaticProps({ locale }) {
return {
props: {
...(await serverSideTranslations(locale, ['common', 'menu', 'blog'])),
...(await serverSideTranslations(locale, ['common', 'menu', 'blog', 'footer'])),
},
};
}

View File

@ -24,7 +24,7 @@ export default BlogPage;
export async function getStaticProps({ locale }) {
return {
props: {
...(await serverSideTranslations(locale, ['common', 'menu', 'blog'])), // Add 'home', 'footer', etc. if needed
...(await serverSideTranslations(locale, ['common', 'menu', 'blog', 'footer'])), // Add 'home', 'footer', etc. if needed
},
};
}

View File

@ -24,7 +24,7 @@ export default ContactPage;
export async function getStaticProps({ locale }) {
return {
props: {
...(await serverSideTranslations(locale, ['common', 'menu', 'contact'])), // Add 'home', 'footer', etc. if needed
...(await serverSideTranslations(locale, ['common', 'menu', 'contact', 'footer'])), // Add 'home', 'footer', etc. if needed
},
};
}

View File

@ -40,7 +40,7 @@ export default HomePage;
export async function getStaticProps({ locale }) {
return {
props: {
...(await serverSideTranslations(locale, ['common', 'menu', 'homeHero', 'home4Card', '(home)/homeAbout', '(home)/homeFeature', '(home)/testimonial', '(home)/homeCalltoAction', 'blog'])), // Add 'home', 'footer', etc. if needed
...(await serverSideTranslations(locale, ['common', 'menu', 'homeHero', 'home4Card', '(home)/homeAbout', '(home)/homeFeature', '(home)/testimonial', '(home)/homeCalltoAction', 'blog', 'footer'])), // Add 'home', 'footer', etc. if needed
},
};
}

View File

@ -120,7 +120,7 @@ export async function getStaticProps({ params, locale }) {
return {
props: {
service,
...(await serverSideTranslations(locale, ["common", "menu", "services"])),
...(await serverSideTranslations(locale, ["common", "menu", "services", , 'footer'])),
},
};
}

View File

@ -31,7 +31,7 @@ export default Services;
export async function getStaticProps({ locale }) {
return {
props: {
...(await serverSideTranslations(locale, ['common', 'menu', 'services'])), // Add 'home', 'footer', etc.
...(await serverSideTranslations(locale, ['common', 'menu', 'services', 'footer'])), // Add 'home', 'footer', etc.
},
};
}

View File

@ -0,0 +1,16 @@
{
"logoAlt": "Janahan Law Logo",
"aboutText": "Every immigration case tells a unique story of hope, determination, and the pursuit of the American dream.",
"quickLinksTitle": "Quick Links",
"home": "Home",
"aboutUs": "About Us",
"services": "Services",
"ourApproach": "Our Approach",
"blog": "Blog",
"servicesTitle": "Services",
"contactTitle": "Contact",
"phone": "Phone",
"email": "Email",
"copyright": "Copyright {{year}} © Janahan Law. Powered by",
"allRightsReserved": "All Right Reserved."
}

View File

@ -0,0 +1,16 @@
{
"logoAlt": "Logo de Janahan Law",
"aboutText": "Cada caso de inmigración cuenta una historia única de esperanza, determinación y la búsqueda del sueño americano.",
"quickLinksTitle": "Enlaces Rápidos",
"home": "Inicio",
"aboutUs": "Sobre Nosotros",
"services": "Servicios",
"ourApproach": "Nuestro Enfoque",
"blog": "Blog",
"servicesTitle": "Servicios",
"contactTitle": "Contacto",
"phone": "Teléfono",
"email": "Correo Electrónico",
"copyright": "Copyright {{year}} © Janahan Law. Desarrollado por",
"allRightsReserved": "Todos los Derechos Reservados."
}