Expand description of article 173
This commit is contained in:
parent
5cf640e686
commit
cc881fddbe
|
@ -1,5 +1,5 @@
|
||||||
trailingComma: "es5"
|
trailingComma: "es5"
|
||||||
tabWidth: 4
|
tabWidth: 3
|
||||||
printWidth: 100
|
printWidth: 100
|
||||||
semi: true
|
semi: true
|
||||||
singleQuote: true
|
singleQuote: true
|
||||||
|
|
|
@ -33,8 +33,7 @@ class NoInformationAtAllProblem extends Problem {
|
||||||
<>
|
<>
|
||||||
<h2>Brak informacji na temat przetwarzania danych osobowych</h2>
|
<h2>Brak informacji na temat przetwarzania danych osobowych</h2>
|
||||||
<p>
|
<p>
|
||||||
{_('Moje')} dane osobowe zostały ujawnione podmiotom, które są właścicielami
|
{_('Moje')} dane osobowe zostały ujawnione podmiotom, które są właścicielami domen:
|
||||||
domen:
|
|
||||||
</p>
|
</p>
|
||||||
<ul>
|
<ul>
|
||||||
{this.getMarkedClusters().map((cluster) => (
|
{this.getMarkedClusters().map((cluster) => (
|
||||||
|
@ -44,8 +43,8 @@ class NoInformationAtAllProblem extends Problem {
|
||||||
))}
|
))}
|
||||||
</ul>
|
</ul>
|
||||||
<p>
|
<p>
|
||||||
Na stronie brakuje jednak jakichkolwiek informacji o tym, jakie są cele
|
Na stronie brakuje jednak jakichkolwiek informacji o tym, jakie są cele przetwarzania
|
||||||
przetwarzania takich danych oraz jakie są podstawy prawne takiego przetwarzania.
|
takich danych oraz jakie są podstawy prawne takiego przetwarzania.
|
||||||
</p>
|
</p>
|
||||||
<p>Zwracam się zatem do Państwa z następującymi pytaniami:</p>
|
<p>Zwracam się zatem do Państwa z następującymi pytaniami:</p>
|
||||||
<ul>
|
<ul>
|
||||||
|
@ -80,6 +79,13 @@ class UnlawfulCookieAccess extends Problem {
|
||||||
}
|
}
|
||||||
getEmailContent() {
|
getEmailContent() {
|
||||||
const cookie_clusters = Object.values(this.clusters).filter((c) => c.hasMarkedCookies());
|
const cookie_clusters = Object.values(this.clusters).filter((c) => c.hasMarkedCookies());
|
||||||
|
const unnecessary_hosts = Object.entries(this.answers.hosts)
|
||||||
|
.filter(([, answers]) => answers.was_processing_necessary === 'no')
|
||||||
|
.map(([host]) => host);
|
||||||
|
const maybe_unnecessary_hosts = Object.entries(this.answers.hosts)
|
||||||
|
.filter(([, answers]) => answers.was_processing_necessary === 'not_sure')
|
||||||
|
.map(([host]) => host);
|
||||||
|
const _ = (key: string) => v(key, this.answers.zaimek);
|
||||||
return (
|
return (
|
||||||
<>
|
<>
|
||||||
<h2>Dostęp do cookies niezgodny z ustawą Prawo Telekomunikacyjne</h2>
|
<h2>Dostęp do cookies niezgodny z ustawą Prawo Telekomunikacyjne</h2>
|
||||||
|
@ -110,6 +116,108 @@ class UnlawfulCookieAccess extends Problem {
|
||||||
);
|
);
|
||||||
})}
|
})}
|
||||||
</ul>
|
</ul>
|
||||||
|
<p>
|
||||||
|
Zgodnie z treścią Art. 173.{' '}
|
||||||
|
<a href="https://isap.sejm.gov.pl/isap.nsf/download.xsp/WDU20041711800/U/D20041800Lj.pdf">
|
||||||
|
ustawy Prawo Telekomunikacyjne
|
||||||
|
</a>
|
||||||
|
, strona może pozyskać dostęp do treści plików cookies pod warunkiem spełnienia
|
||||||
|
jednego z następujących warunków:
|
||||||
|
</p>
|
||||||
|
<ol>
|
||||||
|
<li>
|
||||||
|
Użytkownik wyraził zgodę na takie przetwarzanie danych <em>po</em> tym, jak został
|
||||||
|
poinformowany bezpośrednio o celu uzyskania dostępu do tej informacji;
|
||||||
|
</li>
|
||||||
|
<li>
|
||||||
|
Dostęp do treści plików cookies jest konieczny do dostarczania usługi świadczonej
|
||||||
|
drogą elektroniczną zażądanej przez użytkownika.
|
||||||
|
</li>
|
||||||
|
</ol>
|
||||||
|
{(() => {
|
||||||
|
if (this.answers.popup_type == 'none' || this.answers.popup_type == 'page') {
|
||||||
|
return (
|
||||||
|
<p>
|
||||||
|
Jako, że strona nie pytała {_('mnie')} nigdy o zgodę, nie jest spełniony
|
||||||
|
warunek 1.
|
||||||
|
</p>
|
||||||
|
);
|
||||||
|
} else if (this.answers.popup_type === 'passive_popup') {
|
||||||
|
return (
|
||||||
|
<p>
|
||||||
|
Państwa strona nie dała mi nigdy faktycznego wyboru dotyczacego wyrażenia
|
||||||
|
lub odmówienia zgody na takie przetwarzanie danych osobowych, dlatego nie
|
||||||
|
jest spełniony warunek 1.{' '}
|
||||||
|
{this.answers.mentions_passive_consent ? (
|
||||||
|
<>
|
||||||
|
Zgody wyrażonej w sposób bierny lub milczący nie można uznać za ważną
|
||||||
|
w świetle obowiązujących przepisów rozporządzenia 2016/679. Dlatego
|
||||||
|
zaniechanie zmiany ustawień przeglądarki lub po prostu korzystanie ze
|
||||||
|
strony nie stanowi ważnej zgody. Takie jest{' '}
|
||||||
|
<a href="https://assets.midline.pl/pisma/2021-12-16%20odpowiedz%20UODO%20na%20skarg%C4%99%20i(n)Secure.pdf">
|
||||||
|
stanowisko polskiego UODO
|
||||||
|
</a>
|
||||||
|
.
|
||||||
|
</>
|
||||||
|
) : (
|
||||||
|
''
|
||||||
|
)}
|
||||||
|
</p>
|
||||||
|
);
|
||||||
|
} else if (this.answers.popup_type === 'some_choice') {
|
||||||
|
if (this.answers.popup_action === 'none') {
|
||||||
|
return (
|
||||||
|
<p>
|
||||||
|
Nie {_('wyraziłem')} zgody na takie przetwarzanie {_('moich')} danych
|
||||||
|
osobowych. W okienku pytającym o zgodję nic nie {_('kliknąłem')}. Nie
|
||||||
|
jest zatem spełniony warunek 1.
|
||||||
|
</p>
|
||||||
|
);
|
||||||
|
} else if (this.answers.popup_action === 'closed_popup') {
|
||||||
|
return (
|
||||||
|
<p>
|
||||||
|
Nie {_('wyraziłem')} zgody na takie przetwarzanie {_('moich')} danych
|
||||||
|
osobowych. {this.answers.popup_closed_how.trim()}
|
||||||
|
{this.answers.popup_closed_how.trim().at(-1) != '.' ? '.' : ''} Takiego
|
||||||
|
działania nie można uznać za ważną zgodę na przetwarzanie danych
|
||||||
|
osobowych, gdyż nie spełnia warunku jednoznaczności opisanego w Art. 4,
|
||||||
|
pkt 11 RODO. Nie jest zatem spełniony warunek 1.
|
||||||
|
</p>
|
||||||
|
);
|
||||||
|
} else if (this.answers.popup_action == 'deny_all') {
|
||||||
|
return (
|
||||||
|
<p>
|
||||||
|
{this.answers.popup_deny_all_how.trim()}
|
||||||
|
{this.answers.popup_closed_how.trim().at(-1) != '.' ? '.' : ''} Zatem nie
|
||||||
|
jest spełniony warunek 1.
|
||||||
|
</p>
|
||||||
|
);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
})()}
|
||||||
|
{unnecessary_hosts.length > 0 ? (
|
||||||
|
<p>
|
||||||
|
W {_('mojej')} ocenie odczytywanie przez Państwa stronę treści plików cookies z{' '}
|
||||||
|
{unnecessary_hosts.join(', ')} nie jest konieczne do wyświetlenia treści Państwa
|
||||||
|
strony, dlatego nie jest dla nich spełniony warunek 2. Jeżeli Państwa zdaniem jest
|
||||||
|
inaczej, {_('proszę')} o wskazanie, co jest źródłem tej konieczności i co odróżnia
|
||||||
|
Państwa stronę od wielu innych stron, które realizują te same funkcjonalności{' '}
|
||||||
|
<em>bez</em> korzystania z plików Cookie.
|
||||||
|
</p>
|
||||||
|
) : (
|
||||||
|
''
|
||||||
|
)}
|
||||||
|
<p>
|
||||||
|
{_('Proszę')} o wskazanie, czy być może stosowali Państwo inną podstawę prawną do
|
||||||
|
takiego przetwarzania {_('moich')} danych osobowych, czy przetwarzali je państwo bez
|
||||||
|
ważnej podstawy prawnej?
|
||||||
|
</p>
|
||||||
|
<p>
|
||||||
|
{_('Proszę')} też o wskazanie, czy dostęp do treści plików cookie z $
|
||||||
|
{maybe_unnecessary_hosts.join(', ')} jest konieczny do poprawnego działania strony?
|
||||||
|
Jeżeli tak, to {_('proszę')} wskazać, w jaki sposób. Co sprawia, że strona nie może
|
||||||
|
działać bez nich?
|
||||||
|
</p>
|
||||||
</>
|
</>
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|
|
@ -15,7 +15,6 @@ function generateHostPage(
|
||||||
}
|
}
|
||||||
return {
|
return {
|
||||||
title: host,
|
title: host,
|
||||||
visibleIf: "{popup_type} != 'none'",
|
|
||||||
elements: [
|
elements: [
|
||||||
{
|
{
|
||||||
type: 'radiogroup',
|
type: 'radiogroup',
|
||||||
|
@ -96,8 +95,8 @@ function generateHostPage(
|
||||||
choices: [
|
choices: [
|
||||||
{
|
{
|
||||||
value: 'precise',
|
value: 'precise',
|
||||||
text: /* HTML */ `Tak, wskazuje jasno na bieżące działania lub korzyści
|
text: /* HTML */ `Tak, wskazuje jasno na bieżące działania lub korzyści wynikające
|
||||||
wynikające z takiego przetwarzania danych.`,
|
z takiego przetwarzania danych.`,
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
value: 'vague',
|
value: 'vague',
|
||||||
|
@ -191,8 +190,8 @@ export default function generateSurveyQuestions(hosts: string[]) {
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
value: 'passive_popup',
|
value: 'passive_popup',
|
||||||
text: /* HTML */ `Okienko o cookiesach, bez możliwości podjęcia
|
text: /* HTML */ `Okienko o cookiesach, bez możliwości podjęcia żadnego
|
||||||
żadnego wyboru (np. tylko opcja „zamknij”)`,
|
wyboru (np. tylko opcja „zamknij”)`,
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
value: 'some_choice',
|
value: 'some_choice',
|
||||||
|
@ -204,8 +203,8 @@ export default function generateSurveyQuestions(hosts: string[]) {
|
||||||
type: 'checkbox',
|
type: 'checkbox',
|
||||||
title: /* HTML */ `Istnieje możliwość, że okienko z informacjami i wyborami
|
title: /* HTML */ `Istnieje możliwość, że okienko z informacjami i wyborami
|
||||||
dotyczącymi przetwarzania {Twoich} danych osobowych ukazało się dawno temu w
|
dotyczącymi przetwarzania {Twoich} danych osobowych ukazało się dawno temu w
|
||||||
trakcie {twojej} wcześniejszej wizyty i wtedy je {odkliknąłeś}. {Otwórz} tę
|
trakcie {twojej} wcześniejszej wizyty i wtedy je {odkliknąłeś}. {Otwórz} tę samą
|
||||||
samą stronę w Trybie Prywatnym (Incognito). Co {widzisz}?`,
|
stronę w Trybie Prywatnym (Incognito). Co {widzisz}?`,
|
||||||
visibleIf: "{popup_type} = 'none' or {popup_type} = 'page'",
|
visibleIf: "{popup_type} = 'none' or {popup_type} = 'page'",
|
||||||
name: 'is_incognito_different',
|
name: 'is_incognito_different',
|
||||||
isRequired: true,
|
isRequired: true,
|
||||||
|
@ -220,9 +219,9 @@ export default function generateSurveyQuestions(hosts: string[]) {
|
||||||
type: 'html',
|
type: 'html',
|
||||||
visibleIf:
|
visibleIf:
|
||||||
'{is_incognito_different} != "no" and ({popup_type} = "none" or {popup_type} = "page") ',
|
'{is_incognito_different} != "no" and ({popup_type} = "none" or {popup_type} = "page") ',
|
||||||
html: /* HTML */ `Jeżeli w trybie incognito widzisz więcej okienek z
|
html: /* HTML */ `Jeżeli w trybie incognito widzisz więcej okienek z informacjami
|
||||||
informacjami o przetwarzaniu danych osobowych, wykonaj analizę w
|
o przetwarzaniu danych osobowych, wykonaj analizę w normalnym trybie ponownie -
|
||||||
normalnym trybie ponownie - ale najpierw usuń pliki cookies tej strony.
|
ale najpierw usuń pliki cookies tej strony.
|
||||||
<a
|
<a
|
||||||
href="https://support.mozilla.org/pl/kb/usuwanie-ciasteczek-i-danych-stron-firefox?redirectslug=usuwanie-ciasteczek&redirectlocale=pl"
|
href="https://support.mozilla.org/pl/kb/usuwanie-ciasteczek-i-danych-stron-firefox?redirectslug=usuwanie-ciasteczek&redirectlocale=pl"
|
||||||
target="_blank"
|
target="_blank"
|
||||||
|
@ -252,7 +251,7 @@ export default function generateSurveyQuestions(hosts: string[]) {
|
||||||
name: 'passive_consent_description',
|
name: 'passive_consent_description',
|
||||||
isRequired: true,
|
isRequired: true,
|
||||||
visibleIf: '{mentions_passive_consent} = "yes"',
|
visibleIf: '{mentions_passive_consent} = "yes"',
|
||||||
title: 'Jakimi słowami administrator opisuje to pasywne wyrażenie zgody? Zacytuj wprost',
|
title: 'Jakimi słowami administrator opisuje to pasywne wyrażenie zgody? Zacytuj wprost. Na przykład: „Korzystając ze strony wyrażasz zgodę”, albo „Pozostawiając ustawienia przeglądarki bez zmian (..) wyrażasz zgodę”',
|
||||||
defaultValue: 'Korzystając ze strony wyrażasz zgodę',
|
defaultValue: 'Korzystając ze strony wyrażasz zgodę',
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
|
@ -310,7 +309,7 @@ export default function generateSurveyQuestions(hosts: string[]) {
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
value: 'deny_all',
|
value: 'deny_all',
|
||||||
text: '{Kliknąłem} przycisk do odmówienia zgody na wszystkie cele',
|
text: '{Odmówiłem} wyrażenia zgody na wszystkie cele',
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
value: 'other',
|
value: 'other',
|
||||||
|
@ -318,6 +317,22 @@ export default function generateSurveyQuestions(hosts: string[]) {
|
||||||
},
|
},
|
||||||
],
|
],
|
||||||
},
|
},
|
||||||
|
{
|
||||||
|
type: 'text',
|
||||||
|
name: 'popup_closed_how',
|
||||||
|
isRequired: true,
|
||||||
|
visibleIf: '{popup_action} = "closed_popup"',
|
||||||
|
title: 'W jaki sposób {zamknąłeś} okienko o zgodę? Opisz pełnym zdaniem',
|
||||||
|
defaultValueExpression: '{Kliknąłem} przycisk „X”.',
|
||||||
|
},
|
||||||
|
{
|
||||||
|
type: 'text',
|
||||||
|
name: 'popup_deny_all_how',
|
||||||
|
isRequired: true,
|
||||||
|
visibleIf: '{popup_action} = "deny_all"',
|
||||||
|
title: 'W jaki sposób {zamknąłeś} okienko o zgodę? Opisz pełnym zdaniem, np.: „{Kliknąłem} przycisk <Odrzuć wszystkie>” lub „{Odznaczyłem} wszystkie opcje w ustawieniach zaawansowanych”',
|
||||||
|
defaultValueExpression: '{Kliknąłem} przycisk „odmawiam wyrażenia zgody”.',
|
||||||
|
},
|
||||||
{
|
{
|
||||||
type: 'radiogroup',
|
type: 'radiogroup',
|
||||||
name: 'administrator_identity_available_before_choice',
|
name: 'administrator_identity_available_before_choice',
|
||||||
|
|
|
@ -19,6 +19,8 @@ export type BasicRawAnswers = {
|
||||||
is_incognito_different: [] | ['incognito_is_the_same'];
|
is_incognito_different: [] | ['incognito_is_the_same'];
|
||||||
policy_readable: 'yes' | 'vague' | 'cant_find';
|
policy_readable: 'yes' | 'vague' | 'cant_find';
|
||||||
popup_action: 'none' | 'closed_popup' | 'accept_all' | 'deny_all' | 'other';
|
popup_action: 'none' | 'closed_popup' | 'accept_all' | 'deny_all' | 'other';
|
||||||
|
popup_closed_how: string;
|
||||||
|
popup_deny_all_how: string;
|
||||||
} & (
|
} & (
|
||||||
| ({
|
| ({
|
||||||
popup_type: 'passive_popup';
|
popup_type: 'passive_popup';
|
||||||
|
|
|
@ -3,6 +3,7 @@ const words = {
|
||||||
szukałem: ['szukałem', 'szukałam', 'szukałom', 'szukaliśmy'],
|
szukałem: ['szukałem', 'szukałam', 'szukałom', 'szukaliśmy'],
|
||||||
znalazłem: ['znalazłem', 'znalazłam', 'znalazłom', 'znaleźliśmy'],
|
znalazłem: ['znalazłem', 'znalazłam', 'znalazłom', 'znaleźliśmy'],
|
||||||
moje: ['moje', 'moje', 'moje', 'nasze'],
|
moje: ['moje', 'moje', 'moje', 'nasze'],
|
||||||
|
mojej: ['mojej', 'mojej', 'mojej', 'naszej'],
|
||||||
wyraziłem: ['wyraziłem', 'wyraziłam', 'wyraziłom', 'wyraziliśmy'],
|
wyraziłem: ['wyraziłem', 'wyraziłam', 'wyraziłom', 'wyraziliśmy'],
|
||||||
kliknąłem: ['kliknąłem', 'kliknęłam', 'klinkęłom', 'kliknęliśmy'],
|
kliknąłem: ['kliknąłem', 'kliknęłam', 'klinkęłom', 'kliknęliśmy'],
|
||||||
odwiedzałeś: ['odwiedzałeś', 'odwiedzałaś', 'odwiedzałoś', 'odwiedzaliście'],
|
odwiedzałeś: ['odwiedzałeś', 'odwiedzałaś', 'odwiedzałoś', 'odwiedzaliście'],
|
||||||
|
@ -19,10 +20,17 @@ const words = {
|
||||||
odwiedziłem: ['odwiedziłem', 'odwiedziłam', 'odwiedziłom', 'odwiedziliśmy'],
|
odwiedziłem: ['odwiedziłem', 'odwiedziłam', 'odwiedziłom', 'odwiedziliśmy'],
|
||||||
mam: ['mam', 'mam', 'mam', 'mamy'],
|
mam: ['mam', 'mam', 'mam', 'mamy'],
|
||||||
podjąłeś: ['podjąłeś', 'podjęłaś', 'podjęłoś', 'podjęliście'],
|
podjąłeś: ['podjąłeś', 'podjęłaś', 'podjęłoś', 'podjęliście'],
|
||||||
zamknąłem: ['zamknąłem', 'zamknęłaś', 'zamknęłoś', 'zamknęliście'],
|
zamknąłem: ['zamknąłem', 'zamknęłom', 'zamknęłom', 'zamknęliśmy'],
|
||||||
|
zamknąłeś: ['zamknąłeś', 'zamknęłaś', 'zamknęłoś', 'zamknęliście'],
|
||||||
zwracam: ['zwracam', 'zwracam', 'zwracam', 'zwracamy'],
|
zwracam: ['zwracam', 'zwracam', 'zwracam', 'zwracamy'],
|
||||||
moich: ['moich', 'moich', 'moich', 'naszych'],
|
moich: ['moich', 'moich', 'moich', 'naszych'],
|
||||||
ciebie: ['ciebie', 'ciebie', 'ciebie', 'was'],
|
ciebie: ['ciebie', 'ciebie', 'ciebie', 'was'],
|
||||||
|
mnie: ['mnie', 'mnie', 'mnie', 'nas'],
|
||||||
|
podjąłem: ['podjąłem', 'podjęłam', 'podjęłom', 'podjęliśmy'],
|
||||||
|
dokonałeś: ['dokonałeś', 'dokonałaś', 'dokonałoś', 'dokonaliście'],
|
||||||
|
odmówiłeś: ['odmówiłeś', 'odmówiłaś', 'odmówiłoś', 'odmówiliście'],
|
||||||
|
odznaczyłem: ['odznaczyłem', 'odznaczyłam', 'odznaczyłom', 'odznaczyliśmy'],
|
||||||
|
proszę: ['proszę', 'proszę', 'proszę', 'prosimy'],
|
||||||
} as { [key: string]: string[] };
|
} as { [key: string]: string[] };
|
||||||
|
|
||||||
export default words;
|
export default words;
|
||||||
|
|
Loading…
Reference in New Issue
Block a user