Completa le traduzioni EN/TH e corregge sezioni home ancora solo in italiano.
Stats e prodotti non usavano il locale, quindi dopo lo switch lingua lo scroll mostrava ancora l'italiano. Co-authored-by: Cursor <cursoragent@cursor.com>
This commit is contained in:
@ -1,49 +1,56 @@
|
||||
---
|
||||
import SubpageLayout from '../layouts/SubpageLayout.astro';
|
||||
import {
|
||||
gdprCrossReferences,
|
||||
gdprDocument,
|
||||
gdprRiferimenti,
|
||||
gdprSections,
|
||||
} from '../data/gdpr';
|
||||
import type { SupportedLocale } from '../data/home/navigation';
|
||||
import { getGdpr } from '../data/gdpr';
|
||||
|
||||
const path = Astro.url.pathname;
|
||||
const localeMatch = path.match(/^\/(en|th)(\/|$)/);
|
||||
const currentLocale = (localeMatch?.[1] ?? 'it') as SupportedLocale;
|
||||
const gdpr = getGdpr(currentLocale);
|
||||
const { document: gdprDocument, riferimenti, sections, page } = gdpr;
|
||||
|
||||
const localize = (href: string) => {
|
||||
if (currentLocale === 'it') return href;
|
||||
if (href.startsWith(`/${currentLocale}`)) return href;
|
||||
if (href.startsWith('/#')) return `/${currentLocale}${href}`;
|
||||
if (href.startsWith('/')) return `/${currentLocale}${href}`;
|
||||
return href;
|
||||
};
|
||||
|
||||
const link = 'text-sky-400/90 underline-offset-2 hover:text-sky-300 hover:underline';
|
||||
const lead =
|
||||
"Diritti degli interessati e modalità di esercizio ai sensi del Regolamento (UE) 2016/679, in coerenza con l'informativa privacy quadro di NexStudio S.r.l. (Italia, [INDIRIZZO_COMPLETO]). " +
|
||||
gdprCrossReferences.lead;
|
||||
---
|
||||
|
||||
<SubpageLayout
|
||||
title="GDPR — NexStudio"
|
||||
description="Pagina GDPR NexStudio S.r.l.: diritti degli interessati, modalità operative, ruoli tra portale corporate e SaaS LexAura/MediAura, coordinamento con privacy dedicate."
|
||||
heading="GDPR e diritti degli interessati"
|
||||
lead={lead}
|
||||
title={page.title}
|
||||
description={page.description}
|
||||
heading={page.heading}
|
||||
lead={page.lead}
|
||||
>
|
||||
<div>
|
||||
<p class="border-l-2 border-sky-500/35 pl-4 text-sm leading-relaxed text-nx-muted">
|
||||
<span class="font-medium text-nx-fg">Versione</span> {gdprDocument.version}
|
||||
<span class="font-medium text-nx-fg">{page.versionLabel}</span> {gdprDocument.version}
|
||||
<span class="text-nx-muted/80"> · </span>
|
||||
<span class="font-medium text-nx-fg">In vigore dal</span> {gdprDocument.inVigoreDal}
|
||||
<span class="font-medium text-nx-fg">{page.inForceFromLabel}</span> {gdprDocument.inVigoreDal}
|
||||
<span class="text-nx-muted/80"> · </span>
|
||||
<span class="font-medium text-nx-fg">Ultimo aggiornamento</span> {gdprDocument.ultimoAggiornamento}
|
||||
<span class="font-medium text-nx-fg">{page.lastUpdateLabel}</span> {gdprDocument.ultimoAggiornamento}
|
||||
</p>
|
||||
|
||||
<p class="!mt-5 text-sm text-nx-muted sm:text-base">
|
||||
Documenti connessi:{' '}
|
||||
{page.relatedDocsLabel}:{' '}
|
||||
{
|
||||
gdprRiferimenti.map((r, i) => (
|
||||
riferimenti.map((r, i) => (
|
||||
<span>
|
||||
{i > 0 && <span class="text-nx-muted/80"> · </span>}
|
||||
<a class={link} href={r.href}>{r.label}</a>
|
||||
<a class={link} href={localize(r.href)}>{r.label}</a>
|
||||
</span>
|
||||
))
|
||||
}
|
||||
</p>
|
||||
|
||||
<h2 id="indice" class="!mt-8">Indice</h2>
|
||||
<h2 id="indice" class="!mt-8">{page.indexLabel}</h2>
|
||||
<ol class="!mt-3 list-decimal space-y-1.5 pl-5 text-sm leading-relaxed sm:text-base">
|
||||
{
|
||||
gdprSections.map((s) => (
|
||||
sections.map((s) => (
|
||||
<li>
|
||||
<a class={link} href={`#${s.id}`}>{s.title}</a>
|
||||
</li>
|
||||
@ -52,7 +59,7 @@ const lead =
|
||||
</ol>
|
||||
|
||||
{
|
||||
gdprSections.map((s) => (
|
||||
sections.map((s) => (
|
||||
<section class="mt-10" id={s.id}>
|
||||
<h2 class="scroll-mt-8 text-lg font-semibold text-nx-fg sm:text-xl">
|
||||
{s.title}
|
||||
|
||||
Reference in New Issue
Block a user