Skip to content

PERSON: Einverständnis Datenschutzerklärung (DSE) einholen #1881

@Michael-Schaer

Description

@Michael-Schaer

Als Verband möchte ich das Einverständnis von Neumitgliedern für meine Datenschutzerklärung (DSE) einholen.

Das Feature soll wenn möglich im Core umgesetzt werden. Hinweise und Rückmeldungen von anderen Hitobito-Kunden sind willkommen!

Funktionalität

Einverständniserklärung

Es gibt drei Szenarien, um das Einverständnis zur DSE abzuholen.

1. Selbstregistrierung
Das Neumitglied registriert sich selber in Hitobito. Dies kann via Link auf eine Gruppe oder via externer Anlass erfolgen. Die Person bestätigt selber, dass sie mit den Bedingungen einverstanden ist.

2. Fremdregistrierung
Die eintragende Person (zum Beispiel Adressverwalterin) bestätigt, dass das Neumitglied mit den Bedingungen einverstanden ist. Sie holt das Einverständnis manuell ab (Eintrittsformular, QR-Code auf entsprechende Dokumente, usw.)

3. Anmeldung bei Lagern / Kursen
Um das Einverständnis schneller von mehr Mitgliedern zu erhalten, soll auch bei der Lager- und Kursanmeldung das Einverständnis abgeholt werden, falls noch nicht vorhanden.

Allgemein

Hilfetexte erlauben, wo möglich, Erklärungen für die Personen, die eine Anmeldung machen, zu hinterlegen.

DSE pro Ebene erlauben

Alle Ebenen haben die Möglichkeit, eigene Bestimmungen zum Datenschutz hochzuladen. Ist ein Dokument vorhanden, so wird es bei der Registrierung zusätzlich zu den anderen angezeigt.

  • Der Upload erfolgt über Gruppe -> Bearbeiten.
  • Es kann genau ein Dokument hochgeladen werden.
  • Es sind nur PDFs erlaubt.
  • Es gibt ein Titel-Feld, damit jedes Dokument mit einem passenden Namen beschriftet werden kann (Länge limitieren)

Mockup

Selbstregistrierung
DSE_Selbstreg

Fremdregistrierung
DSE_Fremdreg

Lageranmeldung / Kursanmeldung
(nur oberer Screenshot ist relevant)
DSE_Lager

Abgrenzung

  • Nicht-Mitglieder brauchen keine Einverständnis zu geben
  • Ein Dokument pro Ebene reicht. Dokumente können auch gemerged werden, wenn es mehr sein sollen.
  • Links anstatt PDFs nein: Es besteht sonst die Gefahr, dass die verlinkte Seite verschoben oder nicht mehr vorhanden ist
  • Text anstatt PDFs: In einer ersten Version nicht. Ev. mal als Weiterentwicklung
  • Dokumente müssen nicht versioniert sein. Bei Änderungen muss typischerweise keine erneute Einverständnis eingeholt werden.
  • Auch wenn eine Ebene eine neue DSE hinterlegt, werden vorerst nicht alle Einverständnisse gelöscht.
  • Das externe Registrierungs-Formular der GLP wird für den Moment nicht angepasst

Tech spec

ToDo

  • Migration erstellen
    • people, :privacy_policy_accepted_at, :timestamp, null: true
      • zu den internal attrs hinzufügen, ist vorerst nirgends im UI lesbar (nur schreibbar)
    • Übersetzbares Feld :privacy_policy_title auf Group (nullable, translates :privacy_policy_title in group.rb)
  • Prüfen, ob https://github.com/kronn/date_checkbox hier (noch) funktioniert
  • Textfeld auf Gruppe (groups#edit, nicht group_settings) hinzufügen
    • Feldname: privacy_policy_title
    • Längenlimit validieren (z.B. 64 Zeichen)
    • Feld soll übersetzbar sein
  • Upload-Feld auf Gruppe (groups#edit, nicht group_settings) hinzufügen
    • Feldname: privacy_policy "DSE/Datenschutzerklärung"
    • nur PDF
    • nur schreibbar auf Layern, nicht auf non-layer Gruppen
  • Views und Controllers anpassen
    • Achtung generell wird überall nur etwas angezeigt, wenn in der Layer-Hierarchie der betreffenden Person mindestens eine DSE hochgeladen ist
    • ❗ Die Formulare sollen jeweils invalide sein wenn die Checkbox nicht aktiviert ist (Validierung schreiben)
    • Die Checkboxen sollen jeweils einen Text enthalten, und zu den DSEs der Layer-Hierarchie der betreffenden Person verlinken. Jede DSE soll mit dem privacy_policy_title des jeweiligen Layers angezeigt werden
    • 💡 Wenn die Zeit reicht: Sicherstellen dass Hilfetexte zu den Checkboxen erfasst werden können
    • Selbstregistrierung [view] [controller]
    • Registrierung bei externem Anlass [view] [controller]
    • Fremdregistrierung [view] [controller] (nur bei "Neue Person erfassen")
      • Achtung das Wording der Checkbox ist hier anders, da nicht die Person sich selber anmeldet
    • Anlassanmeldung [view] [controller]
    • Achtung wenn die betreffende Person schon einmal zugestimmt hat (privacy_policy_accepted_at.present?), dann soll die Checkbox aktiviert und disabled angezeigt werden.
    • Achtung Das Wording der Checkbox ist je nach params[:for_someone_else] anders
  • Specs schreiben
    • für den Upload von DSEs schreiben
    • für alle angepassten Formulare
    • für alle angepassten Controllers im Fall dass keine DSE auf der Layer-Hierarchie hochgeladen ist
  • Kunde wegen Übersetzungen informieren
  • Mit angemessener Rolle "durchklicken"
  • CHANGELOG-Eintrag unter "unreleased" unten hinzufügen

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions