Add i18n to home sections, improve consent management and middleware asset handling

Co-authored-by: dennis <dennis@konkol.net>
This commit is contained in:
Cursor Agent
2026-01-12 15:57:28 +00:00
parent 6a4055500b
commit 683735cc63
11 changed files with 173 additions and 85 deletions

View File

@@ -6,15 +6,15 @@ import { Heart, Code } from 'lucide-react';
import { SiGithub, SiLinkedin } from 'react-icons/si';
import Link from 'next/link';
import { useLocale } from "next-intl";
import { useConsent } from "./ConsentProvider";
const Footer = () => {
const [currentYear, setCurrentYear] = useState(2024);
const [mounted, setMounted] = useState(false);
const locale = useLocale();
const { resetConsent } = useConsent();
useEffect(() => {
setCurrentYear(new Date().getFullYear());
setMounted(true);
}, []);
const socialLinks = [
@@ -22,10 +22,6 @@ const Footer = () => {
{ icon: SiLinkedin, href: 'https://linkedin.com/in/dkonkol', label: 'LinkedIn' }
];
if (!mounted) {
return null;
}
return (
<footer className="relative py-12 px-4 bg-white border-t border-stone-200">
<div className="max-w-7xl mx-auto">
@@ -117,6 +113,14 @@ const Footer = () => {
>
Privacy Policy
</Link>
<button
type="button"
onClick={() => resetConsent()}
className="text-stone-500 hover:text-stone-800 transition-colors duration-200"
title="Show privacy settings banner again"
>
Privacy settings
</button>
<Link
href="/404"
className="text-stone-500 hover:text-stone-800 transition-colors duration-200 font-mono text-xs"