Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[PE-200] Implements rendering for legal policy #140

Closed
wants to merge 2 commits into from
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Jump to
Jump to file
Failed to load files.
Diff view
Diff view
5 changes: 5 additions & 0 deletions package.json
Original file line number Diff line number Diff line change
Expand Up @@ -44,19 +44,23 @@
"i18next": "^19.8.4",
"io-ts": "1.8.5",
"jwt-decode": "^3.1.2",
"mdast-util-definitions": "^5.1.0",
"node-sass": "^5.0.0",
"path": "^0.12.7",
"react": ">=16.4.1",
"react-datepicker": "^3.8.0",
"react-dom": "^17.0.1",
"react-google-recaptcha": "^2.1.0",
"react-i18next": "^11.7.3",
"react-markdown": "^7.0.1",
"react-redux": "^7.2.3",
"react-router-dom": "^5.2.0",
"react-select": "^4.3.1",
"react-table": "^7.6.3",
"react-to-typescript-definitions": "^3.0.1",
"reactstrap": "^8.7.1",
"rehype-raw": "^6.1.0",
"remark-gfm": "^2.0.0",
"src": "^1.1.2",
"typeface-lora": "^1.1.13",
"typeface-roboto-mono": "^1.1.13",
Expand Down Expand Up @@ -90,6 +94,7 @@
"dotenv": "^8.2.0",
"eslint-plugin-prettier": "^3.3.1",
"jest": "^26.6.3",
"marked": "^3.0.4",
"npm-run-all": "^4.1.5",
"parcel": "^1.12.3",
"sass": "^1.32.13",
Expand Down
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@

270 changes: 22 additions & 248 deletions src/components/Form/CreateProfileForm/Documentation/PrivacyModal.tsx
Original file line number Diff line number Diff line change
@@ -1,251 +1,25 @@
import React from "react";
import { Modal, ModalHeader, ModalBody } from "reactstrap";
import React, { useEffect, useState } from "react";
import { Modal, ModalBody, ModalHeader } from "reactstrap";
import ReactMarkdown from "react-markdown";
import rehypeRaw from "rehype-raw";
import remarkGfm from "remark-gfm";

const PrivacyModal = ({ isOpen, toggle }: any) => (
<Modal isOpen={isOpen} toggle={toggle} size="lg">
<ModalHeader toggle={toggle}></ModalHeader>
<ModalBody className="text-center">
<h1 className="text-base font-weight-light text-gray">
pagoPA - Informativa sulla privacy
</h1>
<h2 className="h3 text-uppercase">
Informativa sul trattamento dei dati personali
</h2>
<span className="text-gray">
ai sensi degli artt. 13-14 del Regolamento (UE) 2016/679
</span>
<p className="px-24 py-14 text-left">
Questa informativa privacy descrive come vengono trattati i dati
personali di coloro che approdano al sito wisp2.pagopa.gov.it/ (il
&quot;Sito&quot;) per effettuare un pagamento tramite pagoPA. Il Sito ti
permette (i) di essere avvisato per email in merito alle transazioni che
effettuerai sul sistema pagoPA e, se deciderai di registrarti a pagoPA,
(ii) di effettuare la registrazione a pagoPA, (iii) di memorizzare
alcune modalità di pagamento, (iv) di visualizzare lo storico delle tue
transazioni, nonche&apos; (v) di recuperare la password e/o codice
segreto da te scelti al momento della registrazione (di seguito il
&quot;Servizio&quot;).
<br />
<br />
Questa invece NON descrive il trattamento dei dati personali relativi ai
tuoi pagamenti effettuati tramite pagoPA, rispetto ai quali gli Enti
Creditori (ossia la pubblica amministrazione a favore del quale effettui
un pagamento) e/o i Prestatori di Servizi di Pagamento (ossia la banca o
altro istituto che hai scelto per effettuare un determinato pagamento),
restano titolari autonomi del trattamento. Dovrai quindi rivolgerti a
quest&apos;ultimi per informazioni sul trattamento dei tuoi dati.
<br />
<br />
Titolare del trattamento dei dati
<br />
PagoPA S.p.A.
<br />
<br />
Indirizzo: Piazza Colonna 370 - 00187 Roma
<br />
<br />
Indirizzo PEC: pagopa@pec.governo.it
<br />
<br />
La PagoPA S.p.A. è responsabile della protezione dei dati e per ogni
esigenza si prega di scrivere a dpo@pagopa.it
<br />
<br />
Responsabile del trattamento dei dati
<br />
SIA S.P.A.
<br />
Indirizzo: Via F. Gonin 36 - 20147 Milano
<br />
<br />
Indirizzo PEC: direzione_net@pec.sia.eu
<br />
<br />
Autorità di controllo
<br />
Garante per la protezione dei dati personali
<br />
Indirizzo e-mail: garante@gpdp.it
<br />
<br />
Indirizzo PEC: protocollo@pec.gpdp.it
<br />
<br />
Sito web: https://www.garanteprivacy.it
<br />
<br />
Dati personali trattati, finalità e base giuridica del trattamento
<br />
I dati personali da noi trattati sono:
<br />
A) per gli utenti del Sito non registrati a pagoPA: l&apos;indirizzo
email da te fornito quando accedi al Sito, oppure nome, cognome,
indirizzo email, codice fiscale e numero di telefono nel caso in cui
accedi al Sito tramite SPID.
<br />
B) per gli utenti che decidono di registrarsi a pagoPA:
<br />
(i) i dati da te inseriti al momento della tua registrazione a pagoPA,
ossia nome, cognome, codice fiscale (in caso di registrazione tramite
SPID), numero di cellulare (per ricevere i codici di verifica che dovrai
immettere al momento della registrazione e per autorizzare un pagamento
mediante carta), i predetti codici di verifica, la password, e qualora
decidi di salvare uno o più metodi di pagamento anche i dati relativi al
metodo di pagamento stesso;
<br />
(ii) il codice segreto a te assegnato dal sistema al momento della
registrazione, che ti servirà per recuperare la password se l&apos;hai
dimenticata;
<br />
(iii) i metodi di pagamento da te di volta in volta utilizzati per
pagare tramite pagoPA, qualora decidi di salvare tale metodo di
pagamento, che potranno essere da te modificati accedendo al tuo
profilo;
<br />
(iv) lo storico delle transazioni da te effettuate tramite pagoPA, che
puoi consultare accedendo al tuo profilo.
<br />
<br />
Questi dati vengono trattati al fine di fornirti il Servizio (come sopra
definito). La base giuridica del trattamento è l&apos;esecuzione del
Servizio da te richiesto.
<br />
<br />
Trattiamo anche i log di erogazione del Sito, al fine di garantire la
sicurezza del sistema e delle relative transazioni, nonche&apos; per
l&apos;esecuzione di un compito di interesse pubblico e connesso
all&apos;esercizio di pubblici poteri.
<br />
<br />
Non è prevista alcuna forma di processo decisionale automatizzato che
comporti effetti giuridici sull&apos;interessato.
<br />
<br />
Categorie di dati personali non ottenuti presso l&apos;interessato
<br />
I dati personali non ottenuti mediante inserimento da parte
dell&apos;interessato sono esclusivamente gli indirizzi IP contenuti nei
log di accesso al Sito
<br />
<br />
Categorie di destinatari dei dati
<br />
Il titolare tratta i dati personali unitamente alle seguenti categorie
di destinatari:
<br />
<br />
SIA S.p.A., in qualità fornitore di servizi tecnici, responsabile del
trattamento;
<br />
ai Prestatori di Servizi di pagamento aderenti a pagoPA, in qualità di
titolare autonomo, qualora tale comunicazione del dato sia necessaria
per permetterti di effettuare un pagamento tramite quel determinato
Prestatore;
<br />
altri soggetti pubblici e autorità giudiziarie ai sensi e nei limiti
della normativa vigente.
<br />
Il Titolare non intende trasferire i dati personali a Paesi terzi o a
organizzazioni internazionali.
<br />
<br />
Tempi di conservazione dei dati
<br />
I dati personali relativi agli utenti non registrati sono cancellati non
appena la transazione si è conclusa.
<br />
I dati personali relativi agli utenti registrati a pagoPA sono
conservati fino a che l&apos;account dell&apos;utente pagatore risulti
attivo sul sistema pagoPA, salvo i dati che siamo tenuti a conservare
per ottemperare a obblighi di legge. I codici di verifica che vengono
conservati unicamente per il tempo tecnico strettamente necessario alla
verifica.
<br />
<br />
I log di erogazione del Sito vengono conservati per il tempo necessario
alle finalità di sicurezza del sistema e comunque non oltre 12 mesi.
<br />
<br />
Ti segnaliamo che anche a seguito della cancellazione di cui sopra, i
tuoi dati personali potrebbero essere conservati da noi, in qualità di
responsabili del trattamento, per conto degli EC e SPS.
<br />
<br />
Diritti degli interessati
<br />
Gli interessati hanno il diritto di ottenere, ai sensi e nei limiti
della normativa vigente, dai contitolari l&apos;accesso ai propri dati
personali, la rettifica o la cancellazione degli stessi, la limitazione
del trattamento e il diritto di opporsi allo stesso nonche&apos; il
diritto alla portabilità dei dati personali. Gli interessati hanno,
inoltre, diritto di revocare la propria registrazione, senza che tale
revoca pregiudichi la liceità del trattamento prima della revoca stessa.
<br />
Le richieste sono presentate ai contitolari contattando il responsabile
della protezione dei dati agli indirizzi sopra indicati.
<br />
Gli interessati, che ritengano che il trattamento dei propri dati
personali avvenga in violazione di quanto previsto nel Regolamento,
hanno il diritto di proporre reclamo al Garante per la protezione dei
dati personali o di adire le opportune sedi giudiziarie.
<br />
<br />
Cookie policy
<br />
Il Sito utilizza cookie tecnici di navigazione o di sessione che
garantiscono la normale navigazione e fruizione del Sito (essi vengono
memorizzati sul terminale dell&apos;utente sino alla chiusura del
browser). Detti cookies sono utilizzati nella misura strettamente
necessaria per rendere il Servizio. Essi garantiscono un&apos;adeguata
fruizione del Sito e consentono all&apos;utente di navigare e utilizzare
servizi e opzioni. Il loro utilizzo esula da scopi ulteriori e tali
cookie sono installati direttamente dal titolare e gestore del Sito
(rientrano, dunque, nella categoria di cookie di prima parte o
proprietari).
<br />
Per l&apos;installazione dei suddetti cookie non è richiesto il
preventivo consenso degli utenti, mentre resta fermo l&apos;obbligo di
dare l&apos;informativa ai sensi dell&apos;art. 13 del Regolamento e
dell&apos;art. 122 del D. Lgs. 196/2003 e ss.mm.ii. (Codice Privacy).
<br />
I cookie tecnici possono essere disattivati attraverso le impostazioni
del browser (come di seguito indicato).
<br />
Il Sito non presenta altri tipi di cookie.
<br />
<br />
Come disabilitare i cookie sul Sito mediante configurazione del browser
<br />
E&apos; possibile gestire le preferenze relative ai cookie attraverso le
opzioni fornite dal proprio browser. Di seguito vengono forniti link che
informano l&apos;utente su come disabilitare i cookie per i browser più
utilizzati:
<br />
Internet Explorer:
<br />
https://support.microsoft.com/it-it/help/17442/windows-internet-explorer-delete-manage-cookies
<br />
Google Chrome:
<br />
https://support.google.com/chrome/answer/95647?hl=it-IT&p=cpn_cookies
<br />
Mozilla Firefox:
<br />
https://support.mozilla.org/it/kb/Attivare%20e%20disattivare%20i%20cookie
<br />
Apple Safari:
<br />
https://support.apple.com/kb/ph19214?locale=it_IT
<br />
<br />
è altresì possibile gestire o disattivare i cookie attraverso il portale
http://www.youronlinechoices.com/it/le-tue-scelte
<br />
<br />
[19.03.2019]
</p>
</ModalBody>
</Modal>
);
const PrivacyModal = ({ isOpen, toggle }: any) => {
const [markdown, setMarkdown] = useState<string>("");
useEffect(() => {
void import("./Privacy.md").then(res => setMarkdown(res));
}, []);

return (
<Modal isOpen={isOpen} toggle={toggle} size="lg">
<ModalHeader toggle={toggle} />
<ModalBody className="text-center">
<ReactMarkdown rehypePlugins={[rehypeRaw]} remarkPlugins={[remarkGfm]}>
{markdown}
</ReactMarkdown>
</ModalBody>
</Modal>
);
};

export default PrivacyModal;
1 change: 1 addition & 0 deletions src/global.d.ts
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
declare module "*.md";
19 changes: 9 additions & 10 deletions tsconfig.json
Original file line number Diff line number Diff line change
@@ -1,11 +1,11 @@
{
"compilerOptions": {
/* Visit https://aka.ms/tsconfig.json to read more about this file */

/* Basic Options */
// "incremental": true, /* Enable incremental compilation */
"target": "es5", /* Specify ECMAScript target version: 'ES3' (default), 'ES5', 'ES2015', 'ES2016', 'ES2017', 'ES2018', 'ES2019', 'ES2020', or 'ESNEXT'. */
"module": "es2015", /* Specify module code generation: 'none', 'commonjs', 'amd', 'system', 'umd', 'es2015', 'es2020', or 'ESNext'. */
"module": "esnext", /* Specify module code generation: 'none', 'commonjs', 'amd', 'system', 'umd', 'es2015', 'es2020', or 'ESNext'. */
"lib": [
"dom",
"es5",
Expand All @@ -26,7 +26,7 @@
// "importHelpers": true, /* Import emit helpers from 'tslib'. */
// "downlevelIteration": true, /* Provide full support for iterables in 'for-of', spread, and destructuring when targeting 'ES5' or 'ES3'. */
// "isolatedModules": true, /* Transpile each file as a separate module (similar to 'ts.transpileModule'). */

/* Strict Type-Checking Options */
"strict": true, /* Enable all strict type-checking options. */
// "noImplicitAny": true, /* Raise error on expressions and declarations with an implied 'any' type. */
Expand All @@ -36,13 +36,13 @@
// "strictPropertyInitialization": true, /* Enable strict checking of property initialization in classes. */
// "noImplicitThis": true, /* Raise error on 'this' expressions with an implied 'any' type. */
// "alwaysStrict": true, /* Parse in strict mode and emit "use strict" for each source file. */

/* Additional Checks */
// "noUnusedLocals": true, /* Report errors on unused locals. */
// "noUnusedParameters": true, /* Report errors on unused parameters. */
// "noImplicitReturns": true, /* Report error when not all code paths in function return a value. */
// "noFallthroughCasesInSwitch": true, /* Report errors for fallthrough cases in switch statement. */

/* Module Resolution Options */
"moduleResolution": "node", /* Specify module resolution strategy: 'node' (Node.js) or 'classic' (TypeScript pre-1.6). */
// "baseUrl": "./", /* Base directory to resolve non-absolute module names. */
Expand All @@ -54,17 +54,17 @@
"esModuleInterop": true, /* Enables emit interoperability between CommonJS and ES Modules via creation of namespace objects for all imports. Implies 'allowSyntheticDefaultImports'. */
// "preserveSymlinks": true, /* Do not resolve the real path of symlinks. */
// "allowUmdGlobalAccess": true, /* Allow accessing UMD globals from modules. */

/* Source Map Options */
// "sourceRoot": "", /* Specify the location where debugger should locate TypeScript files instead of source locations. */
// "mapRoot": "", /* Specify the location where debugger should locate map files instead of generated locations. */
// "inlineSourceMap": true, /* Emit a single file with source maps instead of having a separate file. */
// "inlineSources": true, /* Emit the source alongside the sourcemaps within a single file; requires '--inlineSourceMap' or '--sourceMap' to be set. */

/* Experimental Options */
// "experimentalDecorators": true, /* Enables experimental support for ES7 decorators. */
// "emitDecoratorMetadata": true, /* Enables experimental support for emitting type metadata for decorators. */

/* Advanced Options */
"skipLibCheck": true, /* Skip type checking of declaration files. */
"forceConsistentCasingInFileNames": true /* Disallow inconsistently-cased references to the same file. */
Expand All @@ -78,8 +78,7 @@
"node_modules",
"**/__tests__/*",
"Dangerfile.ts",
"node_modules",
"node_modules",
"typings"
]
}