From af2edd21b4be2077930e2b62f476be517bb04ec4 Mon Sep 17 00:00:00 2001
From: Fra
Date: Mon, 26 Jul 2021 22:06:18 +0200
Subject: [PATCH 1/3] Added full Italian translation
---
next-i18next.config.js | 3 +-
public/locales/it/common.yml | 6 ++++
public/locales/it/errors.yml | 20 ++++++++++++
public/locales/it/imprint.yml | 27 +++++++++++++++++
public/locales/it/index.yml | 26 ++++++++++++++++
public/locales/it/privacy.yml | 57 +++++++++++++++++++++++++++++++++++
6 files changed, 138 insertions(+), 1 deletion(-)
create mode 100644 public/locales/it/common.yml
create mode 100644 public/locales/it/errors.yml
create mode 100644 public/locales/it/imprint.yml
create mode 100644 public/locales/it/index.yml
create mode 100644 public/locales/it/privacy.yml
diff --git a/next-i18next.config.js b/next-i18next.config.js
index 047606c..20a5c29 100644
--- a/next-i18next.config.js
+++ b/next-i18next.config.js
@@ -7,7 +7,8 @@ module.exports = {
'fr', 'fr-BE', 'fr-CH', 'fr-FR', 'fr-LU', 'fr-MC',
'nl', 'nl-NL', 'nl-BE',
'fi', 'fi-FI',
- 'el', 'el-GR', 'el-CY'
+ 'el', 'el-GR', 'el-CY',
+ 'it'
],
localeExtension: 'yml',
},
diff --git a/public/locales/it/common.yml b/public/locales/it/common.yml
new file mode 100644
index 0000000..9fb3542
--- /dev/null
+++ b/public/locales/it/common.yml
@@ -0,0 +1,6 @@
+title: CovidPass
+subtitle: Aggiungi i tuoi certificati digitali europei COVID alle tue app Wallet preferite.
+privacyPolicy: Politica sulla Riservatezza
+donate: Donazione
+gitHub: GitHub
+imprint: Menzioni legali
\ No newline at end of file
diff --git a/public/locales/it/errors.yml b/public/locales/it/errors.yml
new file mode 100644
index 0000000..b8b3752
--- /dev/null
+++ b/public/locales/it/errors.yml
@@ -0,0 +1,20 @@
+noFileOrQrCode: Perfavore scannerizza un Codice QR, o seleziona un file
+signatureFailed: Errore durante la firma del pass sul server
+decodingFailed: Impossibile decodificare il payload del Codice QR
+invalidColor: Colore non valido
+certificateData: Impossibile leggere i dati del certificato
+nameMissing: Impossibile leggere il nome
+dobMissing: Impossibile leggere la data di nascita
+invalidMedicalProduct: Prodotto medico non valido
+invalidCountryCode: Codice paese non valido
+invalidManufacturer: Produttore non valido
+invalidFileType: Tipo di file non valido
+couldNotDecode: Impossibile decodificare il Codice QR dal file
+couldNotFindQrCode: Impossibile trovare il Codice QR nel Codice QR fornito dal file
+invalidQrCode: Codice QR non valido
+certificateType: Nessun tipo di certificato valido trovato
+invalidTestResult: Risultato del test non valido
+invalidTestType: Tipo di test non valido
+noCameraAccess: Impossibile accedere alla fotocamera. Controlla le autorizzazioni in Impostazioni > Safari > Fotocamera.
+noCameraFound: Impossibile trovare la fotocamera.
+safariSupportOnly: Su iOS, usa il browser Safari.
\ No newline at end of file
diff --git a/public/locales/it/imprint.yml b/public/locales/it/imprint.yml
new file mode 100644
index 0000000..df9d8a5
--- /dev/null
+++ b/public/locales/it/imprint.yml
@@ -0,0 +1,27 @@
+heading: Informativa ai sensi dell'articolo 5 TMG
+contact: Contatto
+euDisputeResolution: Risoluzione delle controversie dell'UE
+euDisputeResolutionParagraph: |
+ La Commissione Europea fornisce una piattaforma per la risoluzione delle controversie online (OS) https://ec.europa.eu/consumers/odr.
+ Troverai il nostro indirizzo email nelle menzioni sopra.
+consumerDisputeResolution: Risoluzione delle controversie in materia di consumo / collegio arbitrale universale
+consumerDisputeResolutionParagraph: Non siamo disposti o obbligati a partecipare a procedimenti di risoluzione delle controversie dinanzi a un collegio arbitrale dei consumatori.
+liabilityForContents: Responsabilità per i contenuti
+liabilityForContentsParagraph: |
+ In qualità di fornitore di servizi, siamo responsabili dei nostri contenuti su queste pagine ai sensi dell'articolo 7 capoverso 1 TMG secondo le leggi generali.
+ In conformità con le sezioni da 8 a 10 TMG, non abbiamo alcun obbligo di monitorare le informazioni trasmesse o archiviate o di indagare su circostanze che indicano un'attività illegale.
+ Gli obblighi di rimuovere o bloccare l'uso delle informazioni ai sensi delle leggi generali rimangono inalterati.
+ Tuttavia, la responsabilità in questo senso è possibile solo quando viene a conoscenza di una concreta violazione della legge.
+ Se veniamo a conoscenza di tali violazioni, rimuoveremo immediatamente il relativo contenuto.
+liabilityForLinks: Responsabilità per i link
+liabilityForLinksParagraph: |
+ La nostra offerta contiene link a siti web esterni di terzi, sui cui contenuti non abbiamo alcuna influenza.
+ Pertanto, non possiamo assumerci alcuna responsabilità per questi contenuti esterni.
+ Il rispettivo fornitore o gestore dei siti è sempre responsabile del contenuto dei siti collegati.
+ Le pagine collegate sono state controllate per possibili violazioni legali al momento del collegamento.
+ I contenuti illegali non erano riconoscibili al momento del collegamento.
+ Tuttavia, un controllo permanente dei contenuti delle pagine collegate non è ragionevole senza prove concrete di una violazione della legge.
+ Se veniamo a conoscenza di eventuali violazioni, rimuoveremo immediatamente tali collegamenti.
+credits: Crediti
+creditsSource: Con estratti da https://www.e-recht24.de/impressum-generator.html
+creditsTranslation: Tradotto con https://www.DeepL.com/Translator (versione gratuita)
\ No newline at end of file
diff --git a/public/locales/it/index.yml b/public/locales/it/index.yml
new file mode 100644
index 0000000..4db0ddc
--- /dev/null
+++ b/public/locales/it/index.yml
@@ -0,0 +1,26 @@
+iosHint: Su iOS, si prega di utilizzare il browser Safari.
+errorClose: Chiudi
+selectCertificate: Seleziona il certificato
+selectCertificateDescription: |
+ Scannerizza il codice QR sul tuo certificato o seleziona uno screenshot o una pagina PDF con il codice QR.
+ Nota che la selezione di un file direttamente dalla fotocamera non è supportata.
+stopCamera: Blocca Fotocamera
+startCamera: Avvia Fotocamera
+openFile: Selezionare File
+foundQrCode: Codice QR trovato!
+pickColor: Seleziona un colore
+pickColorDescription: Seleziona un colore di sfondo per il certificato.
+colorWhite: bianco
+colorBlack: nero
+colorGrey: grigio
+colorGreen: verde
+colorIndigo: indaco
+colorBlue: blu
+colorPurple: viola
+colorTeal: verde acqua
+addToWallet: Aggiungi a Wallet
+dataPrivacyDescription: |
+ La riservatezza dei dati è di particolare importanza quando si elaborano dati relativi alla salute.
+ Per poter prendere una decisione informata, si prega di leggere il
+iAcceptThe: Accetto il
+privacyPolicy: Politica sulla Riservatezza
\ No newline at end of file
diff --git a/public/locales/it/privacy.yml b/public/locales/it/privacy.yml
new file mode 100644
index 0000000..4d37e4c
--- /dev/null
+++ b/public/locales/it/privacy.yml
@@ -0,0 +1,57 @@
+gdprNotice: |
+ La nostra Politica sulla Riservatezza si basa sui termini utilizzati dal legislatore europeo
+ per l'adozione del Regolamento generale sulla protezione dei dati (GDPR).
+generalInfo: Informazione Generale
+generalInfoProcess: |
+ L'intero processo di generazione del file pass avviene localmente nel tuo browser.
+ Per la fase di firma, al server viene inviata solo una rappresentazione con hash dei tuoi dati.
+generalInfoStoring: I tuoi dati non vengono memorizzati oltre la sessione del browser attiva e il sito non utilizza cookie.
+generalInfoThirdParties: Nessun dato viene inviato a terzi.
+generalInfoHttps: Trasmettiamo i tuoi dati in modo sicuro su https.
+generalInfoLocation: Il nostro server è ospitato a Norimberga, in Germania.
+generalInfoGitHub: Il codice sorgente di questo sito è disponibile su
+generalInfoLockScreen: Per impostazione predefinita, gli abbonamenti Apple Wallet sono accessibili dalla schermata di blocco. Questo può essere modificato in
+settings: impostazioni
+generalInfoProvider: |
+ Il provider del server elabora i dati per fornire questo sito.
+ Per capire meglio quali misure adottano per proteggere i tuoi dati, leggi anche il loro
+privacyPolicy: politica sulla riservatezza
+andThe: e il
+dataPrivacyFaq: domande frequenti sulla privacy dei dati
+contact: Contatti
+email: Email
+website: Sito Web
+process: Spiegazione semplificata del processo
+processFirst: Innanzitutto, i seguenti passaggi vengono eseguiti localmente nel tuo browser
+processSecond: In secondo luogo, i seguenti passaggi avvengono sul nostro server
+processThird: Infine, i seguenti passaggi vengono eseguiti localmente nel tuo browser
+processRecognizing: Riconoscimento ed estrazione dei dati del codice QR dal certificato selezionato
+processDecoding: Decodifica i tuoi dati personali e relativi alla salute dal payload del codice QR
+processAssembling: Assemblaggio di un file di pass incompleto dai tuoi dati
+processGenerating: Generazione di un file contenente hash dei dati memorizzati nel file pass
+processSending: Invio al nostro server solo del file contenente gli hash
+processReceiving: Ricezione e controllo degli hash generati localmente
+processSigning: Firmare il file contenente gli hash
+processSendingBack: Restituire la firma
+processCompleting: Assemblaggio del file pass firmato dal file incompleto generato localmente e dalla firma
+processSaving: Salvare il file sul tuo dispositivo
+locallyProcessedData: Dati elaborati localmente
+the: Lo
+schema: Schema digitale del Certificato COVID
+specification: contiene una specifica dettagliata di quali dati possono essere contenuti nel codice QR e verranno elaborati nel browser.
+serverProvider: Fornitore del server
+serverProviderIs: Il nostro fornitore di server è
+logFiles: I seguenti dati possono essere raccolti e archiviati nei file di registro del server
+logFilesBrowser: I tipi e le versioni di browser utilizzati
+logFilesOs: Il sistema operativo utilizzato dal sistema di accesso
+logFilesReferrer: Il sito web dal quale un sistema di accesso raggiunge il nostro sito web (c.d. referente)
+logFilesTime: La data e l'ora di accesso
+logFilesIpAddress: Gli indirizzi IP pseudonimizzati
+rights: I tuoi diritti
+rightsGranted: In conformità con il GDPR hai i seguenti diritti
+rightsAccess: Diritto di accesso ai tuoi dati; Hai il diritto di sapere quali dati sono stati raccolti su di te e come sono stati elaborati.
+rightsErasure: Diritto all'oblio; Cancellazione dei tuoi dati personali.
+rightsRectification: Diritto di rettifica; Hai il diritto di correggere i dati inesatti.
+rightsPortability: Diritto alla portabilità dei dati; Hai il diritto di trasferire i tuoi dati da un sistema di elaborazione a un altro.
+thirdParties: Terze parti collegate
+appleSync: Apple potrebbe sincronizzare i tuoi pass tramite iCloud
\ No newline at end of file
From 9009f51c97860b2c9d366bb4140764863da3bc22 Mon Sep 17 00:00:00 2001
From: Marvin Sextro
Date: Tue, 27 Jul 2021 01:45:39 +0200
Subject: [PATCH 2/3] Integrate Italian translation
---
next-i18next.config.js | 2 +-
public/locales/it-CH | 1 +
public/locales/it-IT | 1 +
3 files changed, 3 insertions(+), 1 deletion(-)
create mode 120000 public/locales/it-CH
create mode 120000 public/locales/it-IT
diff --git a/next-i18next.config.js b/next-i18next.config.js
index 20a5c29..edbb523 100644
--- a/next-i18next.config.js
+++ b/next-i18next.config.js
@@ -8,7 +8,7 @@ module.exports = {
'nl', 'nl-NL', 'nl-BE',
'fi', 'fi-FI',
'el', 'el-GR', 'el-CY',
- 'it'
+ 'it', 'it-IT', 'it-CH'
],
localeExtension: 'yml',
},
diff --git a/public/locales/it-CH b/public/locales/it-CH
new file mode 120000
index 0000000..c919714
--- /dev/null
+++ b/public/locales/it-CH
@@ -0,0 +1 @@
+it
\ No newline at end of file
diff --git a/public/locales/it-IT b/public/locales/it-IT
new file mode 120000
index 0000000..c919714
--- /dev/null
+++ b/public/locales/it-IT
@@ -0,0 +1 @@
+it
\ No newline at end of file
From d46f711b5947f36c829706dab6553acd7a630138 Mon Sep 17 00:00:00 2001
From: Marvin Sextro
Date: Tue, 27 Jul 2021 03:09:51 +0200
Subject: [PATCH 3/3] Add short version of privacy policy
---
components/Check.tsx | 20 ++++++++++++++++++++
components/Form.tsx | 8 ++++++++
pages/imprint.tsx | 2 +-
pages/privacy.tsx | 18 +++++++++---------
public/locales/de/index.yml | 5 ++++-
public/locales/el/index.yml | 6 +++---
public/locales/en/index.yml | 5 ++++-
public/locales/fi/index.yml | 5 ++++-
public/locales/fr/index.yml | 3 +++
public/locales/it/index.yml | 5 ++++-
public/locales/nl/index.yml | 5 ++++-
11 files changed, 64 insertions(+), 18 deletions(-)
create mode 100644 components/Check.tsx
diff --git a/components/Check.tsx b/components/Check.tsx
new file mode 100644
index 0000000..cd7a3f3
--- /dev/null
+++ b/components/Check.tsx
@@ -0,0 +1,20 @@
+import {useTranslation} from 'next-i18next';
+
+interface CheckProps {
+ text: string;
+}
+
+function Check(props: CheckProps): JSX.Element {
+ const { t } = useTranslation(["index"]);
+
+ return (
+
+
+ {props.text}
+
+ )
+}
+
+export default Check;
\ No newline at end of file
diff --git a/components/Form.tsx b/components/Form.tsx
index e053b42..7cf46e7 100644
--- a/components/Form.tsx
+++ b/components/Form.tsx
@@ -7,6 +7,7 @@ import Link from 'next/link';
import Card from "./Card";
import Alert from "./Alert";
+import Check from './Check';
import {PayloadBody} from "../src/payload";
import {getPayloadBodyFromFile, getPayloadBodyFromQR} from "../src/process";
import {PassData} from "../src/pass";
@@ -238,6 +239,13 @@ function Form(): JSX.Element {
.