Giter Club home page Giter Club logo

rrze-tos's Introduction

RRZE-TOS

Generator für rechtliche Pflichtangaben auf einem Webauftritt.

Download

GitHub-Repo: https://github.com/RRZE-Webteam/rrze-tos/

Autor

RRZE-Webteam , http://www.rrze.fau.de

Copryright

GNU General Public License (GPL) Version 2

Zweck

Der Generator erstellt die im deutschen und europäischen Rechtsraum verbindlichen Seiten für ein Impressum, einer Datenschutzerklärung und einer Barrierefreiheitserklärung.

Die vorkonfigurierten und optionalen Inhaltstexte und Rechtsnormen beziehen sich hierbei in der aktuellen Version auf den Rahmen, den Einrichtungen der Friedrich-Alexander-Universität Erlangen-Nürnberg (FAU) unterworfen sind.

Keine Gewährleistung

Es kann und wird keine Gewährleistung und Garantie gegeben auf die rechtliche Korrektheit und Aktualität der von diesem Plugin erzeugten Rechtstexte. Dies gilt insbesondere für Teile der Datenschutzerklärung.

Endpoints

Dieses WordPress-Plugin erstellt die drei Endpoint-Seiten

  • /impressum
  • /datenschutz
  • /barrierefreiheit

bzw. auf Websites mit englischer Sprache die Endpoints

  • /imprint
  • /privacy
  • /accessibility

Individuelle Anpassungen

Administratoren von Websites können im Backend unter "Einstellungen" > "Rechtliche Pflichtangaben" individuelle Anpasungen an den Texten vornehmen. Ausserdem können dort die jeweiligen Pflichtdaten (z.B. Angaben zur verantwortlichen Person) ergänzt werden.

Anpassungen an andere Universitäten und Einrichtungen für universitäre WordPress-Betreiber

Das Plugin ist gedacht zum Einsatz in einer WordPress-Multisite-Instanz. Administratoren von einzelnen WordPress-Instanzen sollen bei solchen Angeboten die vorgegebenen Texte und Optionen, die in den "Einstellungen" vorgegeben werden, üblicherweise nicht ändern können.

(Super)Administratoren von Multisite-Instanzen können daher Anpassungen an die lokalen Gegebenheiten nur durch die direkte Änderung der Template-Dateien im Order templates/content/ vornehmen. Dort finden sich alle Templates für die einzelnen, optional einschaltbaren Absätze und Endpoint-Seiten.

Die Liste der in den "Einstellungen" konfigurierbaren Settings wird durch den $settings-Array in der Datei includes/Options.phpdefiniert. Die Auswahlliste zu den Aufsichtsbehörden aus Deutschland, deren Daten derzeit noch nicht vollständig sind, findet sich in selber Datei im Array $rechtsraum .

Wir empfehlen für die eigenen Anpassungen der Rechtstexte und der Optionen ein eigenen Branch des GitHub-Projektes zu machen.

rrze-tos's People

Contributors

bmehler avatar cassandre avatar mgmax avatar rvdforst avatar srendonv avatar thenickless avatar xwolfde avatar zfldev avatar

Stargazers

 avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

rrze-tos's Issues

Übersetzung

Im englischen Output ist de Überschrift
"Nicht barrierefreie Inhalte"
nicht übersetzt

Accessibility page: German text for Arbitration board link

For the german text (last line on the page), please write:
"Wenn Ihnen hier nicht geholfen wurde, können Sie sich an die <a...>Schlichtungsstelle (BGG)</a> wenden."

And add some more space between the contact form an this paragraph (~20px).

Optionaler Cookiebanner mit Auswahl der konkreten Dienste via Opt-In

Im Zusammenhang mit dem gestrigen Cookie-Urteil des EUGH bin ich am überlegen,
ob es Sinn machen würde, das Plugin um einen optionalen (und tatsächlich
rechtskonformen Cookiewarnbanner) zu ergänzen.
Es wäre IMHO trivial einfach eine pauschale Meldung zu setzen. Aber das wäre gerade nach dem gestrigen Urteil vielleicht Blödsinn.

Müsste man es nicht eher so machen:
Das Banner würde neben der Warnung selbst auch Auskunft geben darüber, welche
Cookies konkret mit welchen Attributen gesetzt werden.

Um das aber wieder zu machen, wäre erstmal eine eigene Array notwendig über
die optional eingeschalteten "Cookie-Nutzer", der Website.

Z.B. so:

$cookieservices = [
	'varifast'	=> {
		'responsible_name'	=> 'VariFast GmbH',
		'responsible_url'	=> 'https://www.varifast.com/',
		'browserdata' => [
			1 => {
				'type'	=> 'cookie',
				'name'	=> 'blafasel',
				'cookietype'	=> "session",
				'duration'	=> '10000000'	
				

			}	
		],
		'opt-out-url'	=> 'https://www.adition.com/datenschutz-opted-out/',	
		'opt-out-type'	=> 'set cookie',
		
	},
	'siteimprove' => {
		'responsible_name'	=> 'Siteimprove',
		'responsible_url'	=> 'https://www.Siteimprove.com/',
		'browserdata' => [
			1 => {
				'type'	=> 'cookie',
				'name'	=> 'nmstat'
				'cookietype'	=> "persistant",
				

			},
			2 => {
				'type'	=> 'cookie',
				'name'	=> 'siteimproveses'
				'cookietype'	=> "session",
				'duration'	=> '0',
			}
		],
		'opt-out-url'	=> '',	
		'opt-out-script'	=> ' window.onload = function () {     function
changeOptSetting(obj, txtOptIn, txtOptOut) {         if(_sz){
obj.innerHTML=_sz.tracking()?txtOptOut:txtOptIn;             obj.onclick =
function() {                 _sz.push(['notrack', _sz.tracking()]);
      obj.innerHTML=_sz.tracking()?txtOptOut:txtOptIn;             };
}     }     changeOptSetting(document.getElementById("szOptOutIn"), "Opt In",
"Opt Out"); } '
		'opt-out-type'	=> 'set cookie',
	},
	'pwabanner'	=> {
		'responsible_name'	=> 'Noname GmbH',
		'responsible_url'	=> '',
		'browserdata' => [
			1 => {
				'type'	=> 'localstore',
				'name'	=> 'blafasel',
				'cookietype'	=> "session",
				'duration'	=> '10000000'	
				

			}	
		],
		
	},
	
]
...

Die Cookie-Meldung würde dann, wenn auf der Site diese Dienste aktiviert sind,
etwas wie das folgende zeigen:

Auf diesem Webauftritt werden Cookies verwendet um einige Dienste zu nutzen.
 Bitte bestätigen Sie, ob Sie diese Cookies zulassen wollen:

   [ ] Cookie der VariFast GmbH
	(Typ: Sitzungscookie, Name: blafasel, Dauer der Speicherung: 10000000 Tage.
Es wird ein Opt-Out über das Setzen eines weiteren Cookies angeboten.)
  [ ] Cookie von SiteImprove
      (Typ: Sitzungscookie, Name: siteimproveses, Dauer der Speicherung:
Sitzung. Es wird ein Opt-Out über das Setzen eines weiteren Cookies angeboten.)
  [ ] Cookie von SiteImprove
      (Typ: Persistent, Name: nmstat, Dauer der Speicherung: Dauerhaft. Es
wird ein Opt-Out über das Setzen eines weiteren Cookies angeboten.)
  [ ] Nutzung des Localstorage von Noname GmbH
      (Typ: Session, Name: blafasel, Dauer der Speicherung: 10000000 Tage).

 In der (Link)Datenschutzerklärung finden Sie weitere Information über die
Dienste und die notwendigen Bergündungen und Erläuterung zum EInsatz.'

Ist das sinnvoll, oder ist das mit Kanonen auf Spatzen geschossen?

Tippfehler

"Unter Datenschutz > Kontaktformular und dort die letzte Überschrift "Bereitstellungspflicht" -dort gibt es einen Tippfehler ("Bereitellungspflicht")."

Cookiebanner - Diskussion Konzept

In Ergänzung zu #54 und #73

Ein Cookiebanner sollte gemäß neuem Urteil des EUGH unterscheiden zwischen den zwingend notwendigen Diensten, welche notwendig sind um die Website zu nutzen und solchen, die das nicht sind. Werbebanner wurden vom Gericht als nicht zwingend notwendig gesehen.
Bei Werbebanner müsste es theoretisch auch ein OPT-IN geben, also eine Frage ob überhaupt ein Cookie gesetzt werden darf und nicht ein OPT-OUT. Die Argumentation, dass Werbebanner nur mit OPT-OUT funktionieren, ist falsch, denn jedes Skript (JS/Server) kann ja prüfen, OB ein Cookie gesetzt ist oder nicht. Und dann von der Nichtexistenz von Cookies davon ausgehen, dass entweder keine Entscheidung getroffen oder aber keine Zustimmung erfolgte.

Zwingend notwendig für den Betrieb können Session-Cookies sein oder solche, die Statuswerte zur Bedienung der Website speichern.
Diese Cookies können ohne Nachfrage beim User gesetzt werden.

Mittelbar notwendig für den Betrieb einer Website können Tracker- und Analyse-Software sein. Die Argumentation, dass die Betreiber einer Website angewiesen sind auf (anonymisierte) Abruf- und Analysedaten zum Benutzerverhalten auf der Website lässt sich in vielen Fällen als legitim werten.
Hier wäre meines Erachtens je nach Art der Website und der Notwendigkeit entweder schnell, mittelbar oder gar nicht auf Verhaltensflüsse der Nutzer zu reagieren, jeweils im Kontext zu erwägen, ob das Tracking als zwingend notwendig anzusehen ist, oder nicht.
Je nach Kontext und der Art des Betriebs kann daher die Wertung kommen, daß

  • keine Nachfrage notwendig ist
  • ein OPT-OUT Cookie ausreicht
  • ein OPT-IN Cookie notwendig ist

Für den Betrieb der Website nicht zwingend notwendig (sieht man von Erwägungen der Barrierefreiheit ab, bei denen ständige Cookie-Warnbanner zu einer Beeinträchtigung und einer Barriere führen können!) und dabei nicht trackend, aber hilfreich hingegen ist ein Cookie, welches die Entscheidung des Users auf einen Consense-Banner speichert (und sonst nichts weiter tut).
Wir nennen dies mal CONSENSE-Cookie.

Folgendes Vorgehen bei einem Consent-Banner wäre denkbar:
(Szenario: Wir haben eine Website, auf der folgendes eingesetzt wird:
ein Tracker zur Analyse der Website,

Entscheidungskette (Entwurf):

  1. Prüfen, ob bereits ein Domain-Cookie gesetzt wurde zur Speicherung der CONSENSE-Entscheidung. (CONSENSE-COOKIE). Ist ein CONSENSE-Cookie gesetzt?
    Ja: Handeln entsprechend den Antworten, keine Cookie-Warnung mehr zeigen
    Nein: Weiter bei 2.

  2. Sendet der Browser von sich aus bereits ein "DNT" (do not track)?
    Ja: Weiter mit 3b
    Nein: Weiter mit 3a

  3. Erstellung eines CONSENSE-Banners
    a) mit den Bereichen A-D
    b) mit den Bereichen A-C

Erstellen eines Consense-Banners mit folgenden "Fragen":

A: CONSENSE-COOKIE:
Checkbox-Frage, mit vorausgefüllter Zustimmung:

[X] Ich stimme zu, daß meine Antwort auf diese Fragen und die Zurkenntnisnahme dieses Banner in einem Cookie gespeichert werden. Ich kann dieses Cookie selbstständig wieder löschen. Ansonsten hat es eine Laufzeit von 365 Tagen und verliert danach seine Gültigkeit.
Wenn ich das Setzen dieses Cookie und die Speicherung meiner Präferenz verweigere, wird dieses Cookie Banner auf jeder aufgerufenen Seite der Domain $domainname.tld neu erfragt.

B: Informative und Zustimmungsfreie Cookies:

Auf dieser Website werden folgende Cookies zwingend gesetzt. Eine Nutzung der Website ohne Setzen dieser Cookies ist nicht möglich.

  1. Sitzungscookies.
  • Zweck: Speichern von Login-Informationen, nach einem erfolgreichen Login als Autor der Seite. Sind Sie kein Autor oder haben sich nicht angemeldet, wird kein Cookie gesetzt.
  • Name: Blafasel, Typ: Session, Dauer: X Tage, automatische Löschung: Nach x Tagen
  1. Darstellungsoption
  • Zweck: Speichern einer gewünschten Darstellungsoption der Website
  • Name: Blafasel, Typ: Session, Dauer: X Tage, automatische Löschung: Nach x Tagen
  1. Schriften
  • Zweck: Darstellung einer Schriftart
  • Zur optischen Darstellung der Website wird eine Schriftart XXXX eingesetzt. Diese wird von der Fa. aaaa von dem Server domainnamen.tld bereitgestellt. Ob und wie der AUfruf der Schrift gespeichert und weiter verarbeitet wird, liegt ausserhalb der Hand der Betreiber dieser Website
  1. Skript-Bibliotheken
  • Zweck: Performantes Laden einer JavaScript-Bibliothek
  • Zur optischen Darstellung der Website wird ein JavaScript XXXX eingesetzt. Diese wird von der Fa. aaaa von dem Server domainnamen.tld bereitgestellt. Ob und wie der Aufruf der Schrift gespeichert und weiter verarbeitet wird, liegt ausserhalb der Hand der Betreiber dieser Website

C: OPT-OUT-Cookies
Systeme, die nur mittelbar zwingend zum Betrieb sind und daher ein setzen OPT-OUT-Cookie setzen

(Beispiele von J. Nehlsen):
Zustimmungsabfrage. Nicht vorausgefüllt:

[ ] Ich möchte die personalisierte Newsseite im meinem Hochschulportal. Dafür setzen wir ein dauerhaftest Cookie. Diese Einwilligung ist freiwillig und kann jederzeit unter ... widerrufen werden. Nach einem Widerruf steht mir dieser Dienst nicht mehr zur Verfügung. Weitere Informationen finden sich in der Cookie-Richtlinie (Link) und der Datenschutzerklärung (Link).
Cookiedaten:

  • Name: Blafasel, Typ: Session, Dauer: X Tage, automatische Löschung: Nach x Tagen

[ ] Ich möchte der Universität helfen die Webseite zu verbessern. Dafür gestatte ich Dienstleister xyz Zugriff auf meinen Bewegungsverlauf, Dauer, ... Diese Einwilligung ist freiwillig und kann jederzeit unter ... widerrufen werden. Mit Widerruf endet der Zugriff. Weitere Informationen finden sich in der Cookie-Richtlinie (Link) und der Datenschutzerklärung (Link).
Cookiedaten:

  • Name: Blafasel, Typ: Session, Dauer: X Tage, automatische Löschung: Nach x Tagen

D: OPT-IN-Cookies
Systeme, die nicht zwingend notwendig sind und trackende Verfahren nutzen und daher eine OPT-IN ZUstimmug benötigen:

[ ] Auf der Webseite wird Werbung der Firma XXXX eingesetzt. Diese verwendet ein trackendes Verfahren zur Analyse der Benutzerbewegungen. Die Einnahmen der Werbung dienen der Bereitstellung der Website. Stimmen Sie zu, dass diese Werbung angezeigt, ihre ZUgriffsdaten mit Dritten gemäß den Datenschutzbestimmungen der Firma XXXX unter ... weitergegeben und dafür ein Cookie gesetzt werden darf?
Cookiedaten:

  • Name: Blafasel, Typ: Persistent

Impressum: Feste Datenfelder konfigurierbar

Ggf. "FAU-Standard" abwählbar.

Absätze:

  • Zuständige Aufsichtsbehörde
  • Identifikationsnummern
  • Meldung über Missbrauch von Computer- und Netzwerk-Ressourcen

Unter Haftungsausschluss der Satz:
"Für die Inhalte anderer Webangebote der FAU sind die jeweiligen Einrichtungen verantwortlich."

Phone Number Format (Backend and Templates)

Users should enter their complete phone number in the backend as there may be different prefixes for Erlangen, Nuremberg etc.

Hide the complete phone line in the templates, if the field is not set.

Template Accessibility: Feedback Form

Replace the "Contact Form 7"-based form by a self-made form.

  • Don't forget the error labels next to the input fields.
  • Add a general error message at the top of the page.

Plugin/Theme Funktion: Erklärung Barrierefreiheit / Feedback-Mechanismus gemäß EU 2016/2102

Gemäß der EU-Richtlinie ist ein Feedback-Mechanismus zu schaffen, der folgende Funktionen aufweist:

  • Es wird auf allen Webauftritten an geeigneter Stelle ein Link zur Erklärung zur Barrierefreiheit eingebaut. Bei dem FAU Designs ggf. im Footermenu oder oben neben Suche/Sprachschalter.
  • Die Erklärung zur Barrierefreiheit wird automatisiert erstellt (via verpflichtend eingeschaltetes Plugin). Die Erklärung soll enthalten:
  1. Erklärung, welche Kriterien der WCAG nicht erfüllt werden mit einer textuellen Angabe der Gründe
  2. Formular zur Meldung von Problemen beim Zugriff auf Inhalte aufgrund von Barrieren.
  3. Link zur Schiedsstelle und zur Richtlinie
  • Punkt 1 soll im Backend durch ein Checkpunkte-Formular, welches vom Admin ausgefüllt werden ermöglicht werden. Bei Nichterfüllung muss ein Textinput vorhanden sein.
  • Das Feedback-Formular muss die wichtigsten Eingabefelder für Meldungen haben und zusätzlich auch die verantwortlichen Ansprechpartner des jew. Webauftritts (Verantwortlichen + Admin(s)) angeben, inkl. deren Kontaktdaten. Weitere besondere Ansprechpartner können über Optionen im Backend eingetragen werden. Die ersteren müssen aber stets und ohne die Möglichkeit von Admins dies einzuschränken, sichtbar bleiben.

Das Plugin muss für die FAU Designs, sowie alle anderen Designs (Event, ...) von uns angepasst sein, so daß diese den Link automatisch an entsprechender Stelle einbauen.

Die Erstellung dieses Plugins hat Priorität gegenüber anderen Aufgaben, mit Ausnahme etwaiger anderen Korrekturen aufgrund der anstehenden WCAG-Prüfung.

Datenschutz: Verwendung von Cookies

Bereich konfiguierbar machen, welche Daten in diesen gespeichert werden:
"In den Cookies werden dabei folgende Daten gespeichert und übermittelt:

Spracheinstellungen
Log-In-Informationen"

Ggf. Checkboxen mit typischen Feldern anbieten.

Include URL list in Imprint

First line of the imprint ("Dieses Impressum gilt für den Webauftritt unter der Adresse..."):

  • If rrze_tos_url_list is set, then display it (transformed in ul-list).
  • If rrze_tos_url_list is not set, then use rrze_tos_url.

Siteimprove Abschnitt über Datenschutzoptionen ergänzen und auswählbar machen

Wie die anderen Dienste soll nun auch noch der Siteimprove-Text im Backend auswählbar sein.
Zum selben Bereich dann gehörend wie Varifast, VGWort und co statt jetzt im Sonstigen.

Der Text kommt aus einem Shortcode, der von dem Siteimprove-Plugin kommt. Ggf. also dieses mit berücksichtigen in der Form, daß die Option nur dann bereit gestellt wird, wenn auch das Siteimprove-Plugin da und aktiv ist.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.