feat: add privacy policy and terms of service pages with CMS content

This commit is contained in:
Do Siki
2026-04-26 23:30:53 +02:00
parent 703ce7f1d0
commit feb68436cb
8 changed files with 292 additions and 3 deletions
+54
View File
@@ -0,0 +1,54 @@
import { content } from '@/content'
export const metadata = {
title: `${content.pages.adatvedelem.title} | ${content.common.labels.features || 'mozdIT Bt.'}`,
description: 'Adatvédelmi tájékoztató - ismerje meg, hogyan kezeljük személyes adatait.',
}
export default function PrivacyPolicy() {
const pageContent = content.pages.adatvedelem
return (
<div className="py-20 lg:py-28 max-w-4xl mx-auto px-4 sm:px-6 lg:px-8">
<div className="mb-12">
<h1
className="text-4xl md:text-5xl font-bold mb-4"
style={{ color: 'var(--color-foreground)' }}
>
{pageContent.title}
</h1>
<p
className="text-sm"
style={{ color: 'var(--color-foreground-muted)' }}
>
Utolsó frissítés: {pageContent.lastUpdated}
</p>
</div>
<div className="space-y-12">
{pageContent.sections.map((section) => (
<section key={section.id}>
<h2
className="text-2xl font-semibold mb-4"
style={{ color: 'var(--color-foreground)' }}
>
{section.title}
</h2>
<div
className="prose max-w-none"
style={{ color: 'var(--color-foreground-muted)' }}
dangerouslySetInnerHTML={{
// Ehelyett a valódi alkalmazásban javasolt egy Markdown parser, de az egyszerűség kedvéért a sima sortöréseket lekezeljük
__html: section.content
.replace(/\n\n/g, '</p><p class="mb-4">')
.replace(/• \*\*(.*?)\*\*/g, '<br/>• <strong>$1</strong>')
.replace(/^/, '<p class="mb-4">')
.replace(/$/, '</p>')
}}
/>
</section>
))}
</div>
</div>
)
}
@@ -0,0 +1,53 @@
import { content } from '@/content'
export const metadata = {
title: `${content.pages.hasznalatiFeltetelek.title} | ${content.common.labels.features || 'mozdIT Bt.'}`,
description: 'Általános Szerződési Feltételek - Ismerje meg a mozdIT Bt. szolgáltatásainak használati feltételeit.',
}
export default function TermsOfService() {
const pageContent = content.pages.hasznalatiFeltetelek
return (
<div className="py-20 lg:py-28 max-w-4xl mx-auto px-4 sm:px-6 lg:px-8">
<div className="mb-12">
<h1
className="text-4xl md:text-5xl font-bold mb-4"
style={{ color: 'var(--color-foreground)' }}
>
{pageContent.title}
</h1>
<p
className="text-sm"
style={{ color: 'var(--color-foreground-muted)' }}
>
Utolsó frissítés: {pageContent.lastUpdated}
</p>
</div>
<div className="space-y-12">
{pageContent.sections.map((section) => (
<section key={section.id}>
<h2
className="text-2xl font-semibold mb-4"
style={{ color: 'var(--color-foreground)' }}
>
{section.title}
</h2>
<div
className="prose max-w-none"
style={{ color: 'var(--color-foreground-muted)' }}
dangerouslySetInnerHTML={{
__html: section.content
.replace(/\n\n/g, '</p><p class="mb-4">')
.replace(/• \*\*(.*?)\*\*/g, '<br/>• <strong>$1</strong>')
.replace(/^/, '<p class="mb-4">')
.replace(/$/, '</p>')
}}
/>
</section>
))}
</div>
</div>
)
}