add privacy/impress/foo
This commit is contained in:
parent
19c1d989f3
commit
8f6d9130f0
11
app.py
11
app.py
@ -75,5 +75,16 @@ def about():
|
|||||||
return render_template("about.html")
|
return render_template("about.html")
|
||||||
|
|
||||||
|
|
||||||
|
# TODO: Fix layout of privacy
|
||||||
|
@app.route('/privacy')
|
||||||
|
def privacy():
|
||||||
|
return render_template("privacy.html")
|
||||||
|
|
||||||
|
|
||||||
|
@app.route('/impress')
|
||||||
|
def impress():
|
||||||
|
return render_template("impress.html")
|
||||||
|
|
||||||
|
|
||||||
if __name__ == "__main__":
|
if __name__ == "__main__":
|
||||||
app.run()
|
app.run()
|
||||||
|
@ -1,6 +1,7 @@
|
|||||||
from wtforms import Form, StringField, validators
|
from wtforms import Form, StringField, validators
|
||||||
from wtforms.fields.choices import SelectMultipleField, RadioField
|
from wtforms.fields.choices import SelectMultipleField, RadioField
|
||||||
from wtforms.fields.numeric import IntegerField
|
from wtforms.fields.numeric import IntegerField
|
||||||
|
from wtforms.fields.simple import BooleanField
|
||||||
from wtforms.widgets.core import CheckboxInput, ListWidget, Input
|
from wtforms.widgets.core import CheckboxInput, ListWidget, Input
|
||||||
|
|
||||||
|
|
||||||
@ -83,4 +84,4 @@ class SearchForm(Form):
|
|||||||
validators=[validators.InputRequired(), validators.NumberRange(min=1, max=4)]
|
validators=[validators.InputRequired(), validators.NumberRange(min=1, max=4)]
|
||||||
)
|
)
|
||||||
|
|
||||||
# TODO: DSE akzeptieren
|
privacy_agreement = BooleanField("Datenschutz", validators=[validators.InputRequired()])
|
||||||
|
@ -17,8 +17,8 @@
|
|||||||
<a class="mx-2" href="/about">About</a>
|
<a class="mx-2" href="/about">About</a>
|
||||||
</div>
|
</div>
|
||||||
<div class="flex justify-right">
|
<div class="flex justify-right">
|
||||||
<a class="mx-2" href="https://www.binary-kitchen.de/wiki/datenschutz">Datenschutz</a>
|
<a class="mx-2" href="/privacy">Datenschutz</a>
|
||||||
<a class="mx-2" href="https://www.binary-kitchen.de/wiki/impressum">Impressum</a>
|
<a class="mx-2" href="/impress">Impressum</a>
|
||||||
</div>
|
</div>
|
||||||
</nav>
|
</nav>
|
||||||
|
|
||||||
|
30
templates/impress.html
Normal file
30
templates/impress.html
Normal file
@ -0,0 +1,30 @@
|
|||||||
|
{% extends "base.html" %}
|
||||||
|
|
||||||
|
{% block content %}
|
||||||
|
<div class="container mx-auto px-4 py-6">
|
||||||
|
<div class="flex flex-col">
|
||||||
|
<div class="w-full mb-3 my-6">
|
||||||
|
<h2 class="text-2xl font-bold mb-4">Impressum</h2>
|
||||||
|
</div>
|
||||||
|
<p class="mb-3 text-lg md:text-xl dark:text-gray-400">
|
||||||
|
theraPy
|
||||||
|
</p>
|
||||||
|
<p class="mb-3 text-lg md:text-xl dark:text-gray-400">
|
||||||
|
Lea Laux
|
||||||
|
</p>
|
||||||
|
<p class="mb-3 text-lg md:text-xl dark:text-gray-400">
|
||||||
|
c/o Binary Kitchen e.V.
|
||||||
|
</p>
|
||||||
|
<p class="mb-3 text-lg md:text-xl dark:text-gray-400">
|
||||||
|
Walderdorffstraße 13b
|
||||||
|
</p>
|
||||||
|
<p class="mb-3 text-lg md:text-xl dark:text-gray-400">
|
||||||
|
93053 Regensburg
|
||||||
|
</p>
|
||||||
|
<p class="mb-3 text-lg md:text-xl dark:text-gray-400">
|
||||||
|
therapy-jetzt@binary-kitchen.de
|
||||||
|
</p>
|
||||||
|
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
{% endblock %}
|
@ -3,121 +3,142 @@
|
|||||||
{% block content %}
|
{% block content %}
|
||||||
<div class="container mx-auto p-4">
|
<div class="container mx-auto p-4">
|
||||||
|
|
||||||
<div class="space-y-2 mb-3 my-6">
|
<div class="space-y-2 mb-3 my-6">
|
||||||
<p class="mb-3 text-lg md:text-xl dark:text-gray-400">
|
<p class="mb-3 text-lg md:text-xl dark:text-gray-400">
|
||||||
TheraPy hilft dir, Telefonzeiten für psychotherapeutische Angebote basierend auf den Daten der 116 117
|
TheraPy hilft dir, Telefonzeiten für psychotherapeutische Angebote basierend auf den Daten der 116 117
|
||||||
Arztsuche der kassenärztlichen Vereinigung zu finden.
|
Arztsuche der kassenärztlichen Vereinigung zu finden.
|
||||||
Mit dem gewünschten Standort und Suchkriterien erhältst du aktuelle Telefonzeiten sortiert nach Datum.
|
Mit dem gewünschten Standort und Suchkriterien erhältst du aktuelle Telefonzeiten sortiert nach Datum.
|
||||||
</p>
|
</p>
|
||||||
<h1 class="text-3xl font-bold mb-6 mt-6">Suche</h1>
|
<h1 class="text-3xl font-bold mb-6 mt-6">Suche</h1>
|
||||||
<form method="POST" action="/search" class="space-y-6">
|
<form method="POST" action="/search" class="space-y-6">
|
||||||
{{ form.csrf_token }}
|
{{ form.csrf_token }}
|
||||||
|
|
||||||
|
|
||||||
<div class="space-y-2">
|
<div class="space-y-2">
|
||||||
<label for="locationInput" class="block text-lg font-medium">{{ form.location.label }}</label>
|
<label for="locationInput" class="block text-lg font-medium">{{ form.location.label }}</label>
|
||||||
<div class="flex flex-initial items-center space-x-2">
|
<div class="flex flex-initial items-center space-x-2">
|
||||||
{{ form.location(class="input input-bordered w-full text-lg", id="locationInput", placeholder="Standort/PLZ eingeben") }}
|
{{ form.location(class="input input-bordered w-full text-lg", id="locationInput", placeholder="Standort/PLZ eingeben") }}
|
||||||
</div>
|
|
||||||
{% if form.location.errors %}
|
|
||||||
<div class="text-red-500 text-sm mt-1">
|
|
||||||
{{ form.location.errors[0] }}
|
|
||||||
</div>
|
</div>
|
||||||
{% endif %}
|
{% if form.location.errors %}
|
||||||
</div>
|
<div class="text-red-500 text-sm mt-1">
|
||||||
|
{{ form.location.errors[0] }}
|
||||||
<div class="space-y-2">
|
</div>
|
||||||
<label for="distanceRange" class="block text-lg font-medium">{{ form.therapy_distance.label }}: <span
|
{% endif %}
|
||||||
id="distanceValue">{{ form.therapy_distance.data or 25 }} km</span></label>
|
|
||||||
<div class="flex items-center">
|
|
||||||
{{ form.therapy_distance(class="range range-primary flex-grow", id="distanceRange", min=0, max=50, step=1, oninput="document.getElementById('distanceValue').textContent = this.value + ' km'") }}
|
|
||||||
</div>
|
</div>
|
||||||
{% if form.therapy_distance.errors %}
|
|
||||||
<div class="text-red-500 text-sm mt-1">
|
|
||||||
{{ form.therapy_distance.errors[0] }}
|
|
||||||
</div>
|
|
||||||
{% endif %}
|
|
||||||
</div>
|
|
||||||
|
|
||||||
<div>
|
<div class="space-y-2">
|
||||||
<fieldset>
|
<label for="distanceRange" class="block text-lg font-medium">{{ form.therapy_distance.label }}:
|
||||||
<legend class="block text-lg font-medium">{{ form.therapy_type.label }}</legend>
|
<span
|
||||||
<div class="space-y-2 mt-2">
|
id="distanceValue">{{ form.therapy_distance.data or 25 }} km</span></label>
|
||||||
{% for subfield in form.therapy_type %}
|
<div class="flex items-center">
|
||||||
<div class="flex flex-initial items-center space-x-2">
|
{{ form.therapy_distance(class="range range-primary flex-grow", id="distanceRange", min=0, max=50, step=1, oninput="document.getElementById('distanceValue').textContent = this.value + ' km'") }}
|
||||||
{{ subfield(class="checkbox checkbox-primary") }}
|
</div>
|
||||||
<label class="text-lg" for="{{ subfield.id }}">
|
{% if form.therapy_distance.errors %}
|
||||||
{{ subfield.label.text }}
|
<div class="text-red-500 text-sm mt-1">
|
||||||
|
{{ form.therapy_distance.errors[0] }}
|
||||||
|
</div>
|
||||||
|
{% endif %}
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div>
|
||||||
|
<fieldset>
|
||||||
|
<legend class="block text-lg font-medium">{{ form.therapy_type.label }}</legend>
|
||||||
|
<div class="space-y-2 mt-2">
|
||||||
|
{% for subfield in form.therapy_type %}
|
||||||
|
<div class="flex flex-initial items-center space-x-2">
|
||||||
|
{{ subfield(class="checkbox checkbox-primary") }}
|
||||||
|
<label class="text-lg" for="{{ subfield.id }}">
|
||||||
|
{{ subfield.label.text }}
|
||||||
|
</label>
|
||||||
|
</div>
|
||||||
|
{% endfor %}
|
||||||
|
{% if form.therapy_type.errors %}
|
||||||
|
<div class="text-red-500 text-sm mt-1">
|
||||||
|
{{ form.therapy_type.errors[0] }}
|
||||||
|
</div>
|
||||||
|
{% endif %}
|
||||||
|
</div>
|
||||||
|
</fieldset>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div>
|
||||||
|
<fieldset>
|
||||||
|
<legend class="block text-lg font-medium">{{ form.therapy_age_range.label }}</legend>
|
||||||
|
<div class="space-y-2 mt-2">
|
||||||
|
{% for subfield in form.therapy_age_range %}
|
||||||
|
<div class="flex flex-initial items-center space-x-2">
|
||||||
|
{{ subfield(class="radio radio-primary") }}
|
||||||
|
<label class="text-lg" for="{{ subfield.id }}">
|
||||||
|
{{ subfield.label.text }}
|
||||||
|
</label>
|
||||||
|
</div>
|
||||||
|
{% endfor %}
|
||||||
|
{% if form.therapy_age_range.errors %}
|
||||||
|
<div class="text-red-500 text-sm mt-1">
|
||||||
|
{{ form.therapy_age_range.errors[0] }}
|
||||||
|
</div>
|
||||||
|
{% endif %}
|
||||||
|
</div>
|
||||||
|
</fieldset>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div>
|
||||||
|
<fieldset>
|
||||||
|
<legend class="block text-lg font-medium">{{ form.therapy_setting.label }}</legend>
|
||||||
|
<div class="space-y-2 mt-2">
|
||||||
|
{% for subfield in form.therapy_setting %}
|
||||||
|
<div class="flex flex-initial items-center space-x-2">
|
||||||
|
{{ subfield(class="radio radio-primary") }}
|
||||||
|
<label class="text-lg" for="{{ subfield.id }}">
|
||||||
|
{{ subfield.label.text }}
|
||||||
|
</label>
|
||||||
|
</div>
|
||||||
|
{% endfor %}
|
||||||
|
{% if form.therapy_setting.errors %}
|
||||||
|
<div class="text-red-500 text-sm mt-1">
|
||||||
|
{{ form.therapy_setting.errors[0] }}
|
||||||
|
</div>
|
||||||
|
{% endif %}
|
||||||
|
</div>
|
||||||
|
</fieldset>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div class="space-y-2">
|
||||||
|
<label for="timeRange" class="block text-lg font-medium">{{ form.amount_of_weeks.label }} <span
|
||||||
|
id="weeksValue">{{ form.amount_of_weeks.data or 4 }} nächste(n) Woche(n)</span></label>
|
||||||
|
<div class="flex items-center">
|
||||||
|
{{ form.amount_of_weeks(class="range range-primary flex-grow", id="timeRange", min=1, max=4, step=1, oninput="document.getElementById('weeksValue').textContent = this.value + ' nächste(n) Woche(n)'") }}
|
||||||
|
</div>
|
||||||
|
{% if form.amount_of_weeks.errors %}
|
||||||
|
<div class="text-red-500 text-sm mt-1">
|
||||||
|
{{ form.amount_of_weeks.errors[0] }}
|
||||||
|
</div>
|
||||||
|
{% endif %}
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div>
|
||||||
|
<fieldset>
|
||||||
|
<div class="space-y-2 mt-4">
|
||||||
|
<div class="flex items-center space-x-2">
|
||||||
|
{{ form.privacy_agreement(class="checkbox checkbox-primary") }}
|
||||||
|
<label for="privacyAgreement" class="text-lg">
|
||||||
|
Ich habe die <a href="/privacy" class="text-purple-500 underline">Datenschutzerklärung</a> zur Kenntnis genommen und stimme der Verarbeitung meiner personenbezogenen Daten zu.
|
||||||
</label>
|
</label>
|
||||||
</div>
|
</div>
|
||||||
{% endfor %}
|
{% if form.privacy_agreement.errors %}
|
||||||
{% if form.therapy_type.errors %}
|
<div class="text-red-500 text-sm mt-1">
|
||||||
<div class="text-red-500 text-sm mt-1">
|
{{ form.privacy_agreement.errors[0] }}
|
||||||
{{ form.therapy_type.errors[0] }}
|
</div>
|
||||||
</div>
|
{% endif %}
|
||||||
{% endif %}
|
</div>
|
||||||
</div>
|
</fieldset>
|
||||||
</fieldset>
|
|
||||||
</div>
|
|
||||||
|
|
||||||
<div>
|
|
||||||
<fieldset>
|
|
||||||
<legend class="block text-lg font-medium">{{ form.therapy_age_range.label }}</legend>
|
|
||||||
<div class="space-y-2 mt-2">
|
|
||||||
{% for subfield in form.therapy_age_range %}
|
|
||||||
<div class="flex flex-initial items-center space-x-2">
|
|
||||||
{{ subfield(class="radio radio-primary") }}
|
|
||||||
<label class="text-lg" for="{{ subfield.id }}">
|
|
||||||
{{ subfield.label.text }}
|
|
||||||
</label>
|
|
||||||
</div>
|
|
||||||
{% endfor %}
|
|
||||||
{% if form.therapy_age_range.errors %}
|
|
||||||
<div class="text-red-500 text-sm mt-1">
|
|
||||||
{{ form.therapy_age_range.errors[0] }}
|
|
||||||
</div>
|
|
||||||
{% endif %}
|
|
||||||
</div>
|
|
||||||
</fieldset>
|
|
||||||
</div>
|
|
||||||
|
|
||||||
<div>
|
|
||||||
<fieldset>
|
|
||||||
<legend class="block text-lg font-medium">{{ form.therapy_setting.label }}</legend>
|
|
||||||
<div class="space-y-2 mt-2">
|
|
||||||
{% for subfield in form.therapy_setting %}
|
|
||||||
<div class="flex flex-initial items-center space-x-2">
|
|
||||||
{{ subfield(class="radio radio-primary") }}
|
|
||||||
<label class="text-lg" for="{{ subfield.id }}">
|
|
||||||
{{ subfield.label.text }}
|
|
||||||
</label>
|
|
||||||
</div>
|
|
||||||
{% endfor %}
|
|
||||||
{% if form.therapy_setting.errors %}
|
|
||||||
<div class="text-red-500 text-sm mt-1">
|
|
||||||
{{ form.therapy_setting.errors[0] }}
|
|
||||||
</div>
|
|
||||||
{% endif %}
|
|
||||||
</div>
|
|
||||||
</fieldset>
|
|
||||||
</div>
|
|
||||||
|
|
||||||
<div class="space-y-2">
|
|
||||||
<label for="timeRange" class="block text-lg font-medium">{{ form.amount_of_weeks.label }} <span
|
|
||||||
id="weeksValue">{{ form.amount_of_weeks.data or 4 }} nächste(n) Woche(n)</span></label>
|
|
||||||
<div class="flex items-center">
|
|
||||||
{{ form.amount_of_weeks(class="range range-primary flex-grow", id="timeRange", min=1, max=4, step=1, oninput="document.getElementById('weeksValue').textContent = this.value + ' nächste(n) Woche(n)'") }}
|
|
||||||
</div>
|
</div>
|
||||||
{% if form.amount_of_weeks.errors %}
|
|
||||||
<div class="text-red-500 text-sm mt-1">
|
|
||||||
{{ form.amount_of_weeks.errors[0] }}
|
|
||||||
</div>
|
|
||||||
{% endif %}
|
|
||||||
</div>
|
|
||||||
|
|
||||||
<div>
|
|
||||||
<button type="submit" class="btn btn-primary btn-lg w-full">Suche</button>
|
<div>
|
||||||
</div>
|
<button type="submit" class="btn btn-primary btn-lg w-full">Suche</button>
|
||||||
</form>
|
</div>
|
||||||
|
</form>
|
||||||
|
</div>
|
||||||
</div>
|
</div>
|
||||||
{% endblock %}
|
{% endblock %}
|
||||||
|
167
templates/privacy.html
Normal file
167
templates/privacy.html
Normal file
@ -0,0 +1,167 @@
|
|||||||
|
{% extends "base.html" %}
|
||||||
|
|
||||||
|
{% block content %}
|
||||||
|
<div class="container mx-auto px-4 py-6">
|
||||||
|
<div class="flex flex-col">
|
||||||
|
<div class="w-full mb-3 my-6">
|
||||||
|
<h2 class="text-2xl font-bold mb-4">Allgemeines</h2>
|
||||||
|
</div>
|
||||||
|
<p class="mb-3 text-lg md:text-xl dark:text-gray-400">
|
||||||
|
„Öffentliche Daten nützen, private Daten schützen.“
|
||||||
|
(siehe <a href="https://www.ccc.de/de/hackerethics" class="text-purple-500 underline">https://www.ccc.de/de/hackerethics</a>)
|
||||||
|
Nach diesem Grundsatz verfahren wir mit euren persönlichen - oder personenbeziehbaren - Daten.
|
||||||
|
Wir wissen, dass Informationen am liebsten frei sein wollen - bei den persönlichen passen wir daher vor
|
||||||
|
allem auf, welche wir überhaupt erheben.
|
||||||
|
</p>
|
||||||
|
|
||||||
|
<div class="w-full mb-3 my-6">
|
||||||
|
<h2 class="text-2xl font-bold mb-4">Kontakts</h2>
|
||||||
|
</div>
|
||||||
|
<p class="mb-3 text-lg md:text-xl dark:text-gray-400">
|
||||||
|
Wir - das ist die Binary Kitchen, kontaktieren könnt ihr uns zum Thema Datenschutz gerne unter:
|
||||||
|
vorstand@binary-kitchen.de oder per Post.
|
||||||
|
</p>
|
||||||
|
<p class="mb-3 text-lg md:text-xl dark:text-gray-400">
|
||||||
|
Binary Kitchen e.V., Walderdorffstr. 13b, 93053 Regensburg
|
||||||
|
</p>
|
||||||
|
|
||||||
|
<h3 class="text-2xl font-bold mb-4">Rechte</h3>
|
||||||
|
<p class="mb-3 text-lg md:text-xl dark:text-gray-400">
|
||||||
|
Die Datenschutzbestimmungen - insbesondere die DSGVO - geben Betroffenen Rechte, die sich für uns von
|
||||||
|
selbst verstehen:
|
||||||
|
</p>
|
||||||
|
|
||||||
|
<p class="mb-3 text-lg md:text-xl dark:text-gray-400">
|
||||||
|
Das Recht, Auskunft über die eigenen verarbeiteten Daten zu erhalten, sie berichtigen oder löschen zu
|
||||||
|
lassen, gemäß Art. 15, 16 und 17 DSGVO.
|
||||||
|
</p>
|
||||||
|
<p class="mb-3 text-lg md:text-xl dark:text-gray-400">
|
||||||
|
Das Recht, dass die Verarbeitung der personenbezogenen Daten gemäß Art. 18 DSGVO eingeschränkt wird.
|
||||||
|
</p>
|
||||||
|
|
||||||
|
<p class="mb-3 text-lg md:text-xl dark:text-gray-400">
|
||||||
|
Das Recht, die Daten, die ihr uns bereitgestellt habt, in einem strukturierten, gängigen und
|
||||||
|
maschinenlesbaren Format zu erhalten, soweit die Voraussetzungen nach Art. 20 DSGVO gegeben sind.
|
||||||
|
</p>
|
||||||
|
|
||||||
|
<p class="mb-3 text-lg md:text-xl dark:text-gray-400">
|
||||||
|
Das Recht, einmal abgegebene Einwilligungen in die Verarbeitung eigener personenbezogenen Daten
|
||||||
|
jederzeit mit Wirkung für die Zukunft zu widerrufen, Art. 21 DSGVO.
|
||||||
|
</p>
|
||||||
|
|
||||||
|
<p class="mb-3 text-lg md:text-xl dark:text-gray-400">
|
||||||
|
Das Recht, Beschwerde bei einer Aufsichtsbehörde einzulegen, Art. 77 DSGVO.
|
||||||
|
</p>
|
||||||
|
|
||||||
|
|
||||||
|
<div class="w-full mb-3 my-6">
|
||||||
|
<h2 class="text-2xl font-bold mb-4">Ort der Datenverarbeitung</h2>
|
||||||
|
</div>
|
||||||
|
<p class="mb-3 text-lg md:text-xl dark:text-gray-400">
|
||||||
|
Wir verarbeiten eure personenbezogenen Daten grundsätzlich nur in Deutschland und in der Europäischen
|
||||||
|
Union.
|
||||||
|
|
||||||
|
Ehrenamtliche Mitarbeiter der Binary Kitchen und Dienstleister, die uns bei der Datenverarbeitung im
|
||||||
|
Rahmen der Auftragsverarbeitung unterstützen (Dienstleister für IT-Betrieb, Rechenzentrum), haben zur
|
||||||
|
Erfüllung der unten genannten Zwecke im erforderlichen Umfang Zugriff auf personenbezogenen Daten.
|
||||||
|
|
||||||
|
Gesetzlich können wir im Einzelfall verpflichtet sein, personenbezogenen Daten an Behörden (z.B.
|
||||||
|
Auskunftsersuchen von Ermittlungsbehörden) oder natürliche/juristische Personen zu übermitteln. Schon
|
||||||
|
deswegen speichern wir eure Daten nicht so gerne und nur wenn es sein muss.
|
||||||
|
</p>
|
||||||
|
|
||||||
|
<div class="w-full mb-3 my-6">
|
||||||
|
<h2 class="text-2xl font-bold mb-4">Änderungen dieser Erklärung</h2>
|
||||||
|
</div>
|
||||||
|
<p class="mb-3 text-lg md:text-xl dark:text-gray-400">
|
||||||
|
Wir versuchen, diese Datenschutzhinweise aktuell zu halten, Neuerungen werden wir dokumentieren, und an
|
||||||
|
dieser Stelle veröffentlichen. Schaut also öfter mal rein.
|
||||||
|
</p>
|
||||||
|
|
||||||
|
<div class="w-full mb-3 my-6">
|
||||||
|
<h2 class="text-2xl font-bold mb-4">Besuch unserer Webseite</h2>
|
||||||
|
</div>
|
||||||
|
<p class="mb-3 text-lg md:text-xl dark:text-gray-400">
|
||||||
|
Um unsere Webseite anbieten zu können, müssen personenbezogene Daten verarbeitet werden. Zum Teil
|
||||||
|
geschieht das im Hintergrund und automatisch, damit die Seite überhaupt funktioniert. Rechtsgrundlage
|
||||||
|
hierfür ist Art. 6 Abs. 1 lit. b) DSGVO.
|
||||||
|
</p>
|
||||||
|
|
||||||
|
<div class="w-full mb-3 my-6">
|
||||||
|
<h2 class="text-2xl font-bold mb-4">Logfiles</h2>
|
||||||
|
</div>
|
||||||
|
<p class="mb-3 text-lg md:text-xl dark:text-gray-400">
|
||||||
|
Bei Aufruf unserer Website werden folgende Daten in einer Protokolldatei gespeichert: Die angeforderte
|
||||||
|
Website-URL sowie die Website, von der aus die Datei angefordert wurde, die gespeicherten Cookies des
|
||||||
|
Besuchers für die aufgerufene Domain, der Status des Zugriffs (Datei übertragen, Datei nicht gefunden,
|
||||||
|
etc.), Datum, Uhrzeit und Dauer des Abrufs, übertragene Datenmenge im Rahmen der Verbindung, Typ und
|
||||||
|
Version des verwendeten Browsers, verwendete Sprache, IP-Adresse. Die Logs brauchen wir zeitweise um
|
||||||
|
einen störungsfreien Betrieb anzubieten. Sie werden sieben Tage nach Erstellung gelöscht.
|
||||||
|
Rechtsgrundlage hierfür ist unser berechtigtes Interesse am störungsfreien Betrieb gemäß Art. 6 Abs. 1
|
||||||
|
lit. f) DSGVO.
|
||||||
|
|
||||||
|
Kurz zur IP-Adresse:
|
||||||
|
|
||||||
|
Manchmal ist die gar nicht personenbezogen (z.b. wenn ein VPN, Firmenproxy, Freifunk oder andere offene
|
||||||
|
Netze oder TOR genutzt wird), meistens lässt sich aber zumindest vom Anbieter des Internetzugangs
|
||||||
|
rückdröseln (Fachbegriff!), an wen zu welchem Zeitpunkt welche IP-Nummer vergeben war. Und damit auch
|
||||||
|
von allen, die diese Info vom Anbieter erhalten können. Deswegen wird die IP# oft als personenbezogen
|
||||||
|
angesehen und behandelt.
|
||||||
|
|
||||||
|
Unser Webserver nutzt die, um die Daten die abgefragt werden, zu senden. Darüberhinaus landet sie in
|
||||||
|
Logs (s.o.).
|
||||||
|
</p>
|
||||||
|
|
||||||
|
<div class="w-full mb-3 my-6">
|
||||||
|
<h2 class="text-2xl font-bold mb-4">Abfrage von Gesundheitsdaten</h2>
|
||||||
|
</div>
|
||||||
|
<p class="mb-3 text-lg md:text-xl dark:text-gray-400">
|
||||||
|
Zum anderen Teil - und dafür seid ihr vermutlich hier - könnt ihr diese Website auch nutzen, um euch die
|
||||||
|
Kontaktdaten von therapierenden Personen anzuzeigen. Um diese Abfrage durchführen zu können, müsst ihr
|
||||||
|
neben eurer Postleitzahl auch Angaben zur Therapieform und eurem Alter machen. Diese können
|
||||||
|
Gesundheitsdaten gemäß Art. 9 DSGVO darstellen. Rechtsgrundlage hierfür ist ausschließlich eure
|
||||||
|
Einwilligung gemäß Art. 6 Abs. 1 lit. a i.V.m. Art. 9 Abs. 2 lit. a DSGVO. Die Daten werden nicht
|
||||||
|
gespeichert, sondern lediglich genutzt, um euch unmittelbar Ergebnisse anzeigen zu können. Sobald die
|
||||||
|
Ergebnisse generiert sind, werden die Daten gelöscht.
|
||||||
|
</p>
|
||||||
|
|
||||||
|
<div class="w-ful mb-3 my-6">
|
||||||
|
<h2 class="text-2xl font-bold mb-4">Kontaktaufnahme</h2>
|
||||||
|
</div>
|
||||||
|
<p class="mb-3 text-lg md:text-xl dark:text-gray-400">
|
||||||
|
Schließlich könnt ihr mit uns in Kontakt treten, wenn technische Probleme auftreten oder ihr weitere
|
||||||
|
Anliegen habt. Zu diesem Zweck verarbeiten wir zumindest eure E-Mail-Adresse. Je nach Inhalt kann es
|
||||||
|
auch hier sein, dass Gesundheitsdaten verarbeitet werden. Rechtsgrundlage hierfür ist ausschließlich
|
||||||
|
eure Einwilligung gemäß Art. 6 Abs. 1 lit. a i.V.m. Art. 9 Abs. 2 lit. a DSGVO. Die Daten werden
|
||||||
|
gelöscht, sobald eure E-Mail bearbeitet ist. Ihr habt das Recht, eure Einwilligung jederzeit zu
|
||||||
|
widerrufen. Auch dann werden eure personenbezogenen Daten unverzüglich gelöscht.
|
||||||
|
</p>
|
||||||
|
|
||||||
|
<div class="w-full mb-3 my-6">
|
||||||
|
<h2 class="text-2xl font-bold mb-4">Links auf Websites anderer Anbieter</h2>
|
||||||
|
</div>
|
||||||
|
<p class="mb-3 text-lg md:text-xl dark:text-gray-400">
|
||||||
|
Wir haben auf unserer Website Links auf Websites anderer Anbieter gesetzt. Wir sind für die
|
||||||
|
Datenverarbeitung auf diesen anderen Websites zum Glück nicht verantwortlich. Wie die jeweiligen
|
||||||
|
Anbieter den Datenschutz handhaben, müsst ihr bitte deren Datenschutzbestimmungen entnehmen.
|
||||||
|
</p>
|
||||||
|
|
||||||
|
<div class="w-full mb-3 my-6">
|
||||||
|
<h2 class="text-2xl font-bold mb-4">Werbung, Tracking, Surf-Analyse</h2>
|
||||||
|
</div>
|
||||||
|
<p class="mb-3 text-lg md:text-xl dark:text-gray-400">
|
||||||
|
Gibt es bei uns alles nicht. Wir speichern und verarbeiten keine Daten zu anderen Zwecken, als die
|
||||||
|
genannten Dienste zur verfügung zu stellen, wir nutzen sie nicht zu Werbezwecken und wir geben sie auch
|
||||||
|
nicht dafür weiter. Nicht mal wenn ihr wollen würdet.
|
||||||
|
</p>
|
||||||
|
|
||||||
|
<div class="w-full mb-3 my-6">
|
||||||
|
<h2 class="text-2xl font-bold mb-4">Datenweiterleitung</h2>
|
||||||
|
</div>
|
||||||
|
<p class="mb-3 text-lg md:text-xl dark:text-gray-400">
|
||||||
|
Wir geben eure Daten weder an Dritte weiter, noch übermitteln wir sie in Länder außerhalb der
|
||||||
|
Europäischen Union. Die Daten werden auch nicht für einen anderen Zweck weiterverarbeitet.
|
||||||
|
</p>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
{% endblock %}
|
Loading…
Reference in New Issue
Block a user