feat: implement landing page structure with legal pages, footer, CTA, and domain redirection proxy
This commit is contained in:
@@ -1,67 +1,37 @@
|
||||
'use client'
|
||||
|
||||
import { useLang } from '@/context/LangContext'
|
||||
import { siteConfig } from '@/lib/site'
|
||||
|
||||
const CONTENT = {
|
||||
de: {
|
||||
title: 'Impressum',
|
||||
companyLabel: 'Unternehmen',
|
||||
addressLabel: 'Adresse',
|
||||
representativeLabel: 'Vertretungsberechtigt',
|
||||
contactLabel: 'Kontakt',
|
||||
registryLabel: 'Register',
|
||||
vatLabel: 'USt-ID',
|
||||
},
|
||||
en: {
|
||||
title: 'Imprint',
|
||||
companyLabel: 'Company',
|
||||
addressLabel: 'Address',
|
||||
representativeLabel: 'Represented by',
|
||||
contactLabel: 'Contact',
|
||||
registryLabel: 'Registry',
|
||||
vatLabel: 'VAT ID',
|
||||
},
|
||||
es: {
|
||||
title: 'Aviso Legal',
|
||||
companyLabel: 'Empresa',
|
||||
addressLabel: 'Direccion',
|
||||
representativeLabel: 'Representante',
|
||||
contactLabel: 'Contacto',
|
||||
registryLabel: 'Registro',
|
||||
vatLabel: 'IVA',
|
||||
},
|
||||
}
|
||||
|
||||
export default function ImprintPage() {
|
||||
const { lang } = useLang()
|
||||
const c = CONTENT[lang]
|
||||
|
||||
return (
|
||||
<main className="container" style={{ paddingTop: '8rem', paddingBottom: '8rem', maxWidth: '800px' }}>
|
||||
<h1>{c.title}</h1>
|
||||
<div style={{ marginTop: '2rem', lineHeight: '1.8', opacity: 0.9 }}>
|
||||
<p>
|
||||
<strong>{c.companyLabel}:</strong> {siteConfig.company.legalName}
|
||||
</p>
|
||||
{siteConfig.company.addressLine1 ? (
|
||||
<p><strong>{c.addressLabel}:</strong> {siteConfig.company.addressLine1}</p>
|
||||
) : null}
|
||||
{siteConfig.company.addressLine2 ? <p>{siteConfig.company.addressLine2}</p> : null}
|
||||
<p>{siteConfig.company.country}</p>
|
||||
<p>
|
||||
<strong>{c.representativeLabel}:</strong> {siteConfig.company.representative}
|
||||
</p>
|
||||
<p>
|
||||
<strong>{c.contactLabel}:</strong> <a href={`mailto:${siteConfig.legalEmail}`}>{siteConfig.legalEmail}</a>
|
||||
</p>
|
||||
{siteConfig.company.registry ? (
|
||||
<p><strong>{c.registryLabel}:</strong> {siteConfig.company.registry}</p>
|
||||
) : null}
|
||||
{siteConfig.company.vatId ? (
|
||||
<p><strong>{c.vatLabel}:</strong> {siteConfig.company.vatId}</p>
|
||||
) : null}
|
||||
</div>
|
||||
</main>
|
||||
)
|
||||
}
|
||||
import type { Metadata } from 'next'
|
||||
import Navbar from '@/components/Navbar'
|
||||
import Footer from '@/components/Footer'
|
||||
import ImprintContent from './ImprintContent'
|
||||
import { siteConfig } from '@/lib/site'
|
||||
|
||||
const title = 'Imprint'
|
||||
const description = 'Legal imprint and company contact information for GreenLens.'
|
||||
|
||||
export const metadata: Metadata = {
|
||||
title,
|
||||
description,
|
||||
alternates: {
|
||||
canonical: '/imprint',
|
||||
},
|
||||
openGraph: {
|
||||
title: `${title} | GreenLens`,
|
||||
description,
|
||||
url: `${siteConfig.domain}/imprint`,
|
||||
type: 'website',
|
||||
},
|
||||
twitter: {
|
||||
card: 'summary_large_image',
|
||||
title: `${title} | GreenLens`,
|
||||
description,
|
||||
},
|
||||
}
|
||||
|
||||
export default function ImprintPage() {
|
||||
return (
|
||||
<>
|
||||
<Navbar />
|
||||
<ImprintContent />
|
||||
<Footer />
|
||||
</>
|
||||
)
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user