summaryrefslogtreecommitdiffstats
path: root/dozentenmodul/src/main/java/org/openslx/dozmod/gui/window/PrivacyNoticeWindow.java
diff options
context:
space:
mode:
authorSteffen Ritter2018-06-15 11:59:45 +0200
committerSteffen Ritter2018-06-15 11:59:45 +0200
commit34a919c138ef29fa3a4f515d466a984e85e1ad1d (patch)
treeac645a5eb042c47fe21eb196c42dc14240c3e2d7 /dozentenmodul/src/main/java/org/openslx/dozmod/gui/window/PrivacyNoticeWindow.java
parentAdd support for LDAP lecture filters (diff)
downloadtutor-module-34a919c138ef29fa3a4f515d466a984e85e1ad1d.tar.gz
tutor-module-34a919c138ef29fa3a4f515d466a984e85e1ad1d.tar.xz
tutor-module-34a919c138ef29fa3a4f515d466a984e85e1ad1d.zip
[client] Add privacy notice window
Diffstat (limited to 'dozentenmodul/src/main/java/org/openslx/dozmod/gui/window/PrivacyNoticeWindow.java')
-rwxr-xr-xdozentenmodul/src/main/java/org/openslx/dozmod/gui/window/PrivacyNoticeWindow.java109
1 files changed, 109 insertions, 0 deletions
diff --git a/dozentenmodul/src/main/java/org/openslx/dozmod/gui/window/PrivacyNoticeWindow.java b/dozentenmodul/src/main/java/org/openslx/dozmod/gui/window/PrivacyNoticeWindow.java
new file mode 100755
index 00000000..9e6ffd7d
--- /dev/null
+++ b/dozentenmodul/src/main/java/org/openslx/dozmod/gui/window/PrivacyNoticeWindow.java
@@ -0,0 +1,109 @@
+package org.openslx.dozmod.gui.window;
+
+import java.awt.Frame;
+import java.awt.event.ActionEvent;
+import java.awt.event.ActionListener;
+
+import org.openslx.dozmod.Config;
+import org.openslx.dozmod.gui.helper.UiFeedback;
+
+/**
+ * Window for showing the privacy notice.
+ */
+@SuppressWarnings("serial")
+public class PrivacyNoticeWindow extends GenericNoticeWindow implements UiFeedback {
+
+ /**
+ * Use a version number for the privacy notice. Whenever we add/change
+ * something, this will be increased
+ */
+ public static final int PRIVACY_VERSION = 1;
+ protected String notice = "Datenschutz \n"
+ + "-----------------------------------------------------\n"
+ + "Wenn Sie sich an der bwLehrpool-Suite anmelden bzw. diese nutzen, werden "
+ + "verschiedene Informationen über Sie erfasst und gespeichert. Die "
+ + "nachfolgenden Punkte sollen Ihnen helfen zu verstehen, welche Daten zu "
+ + "welchem Zweck verwendet werden und wohin Sie sich bei Fragen wenden "
+ + "können.\n\n"
+ + "Was wird gesammelt?\n"
+ + "-----------------------------------------------------\n"
+ + "Beim Login werden Name, E-Mail, Hochschule sowie Zeitpunkt des letzten "
+ + "Logins gespeichert und einer eindeutigen Nutzer-ID zugeordnet. Dies "
+ + "umfasst auch Informationen darüber, wann Sie sich für die Nutzung "
+ + "erstmalig registriert haben. Außerdem werden Informationen über einige "
+ + "Ihrer Aktivitäten innerhalb der bwLehrpool-Suite erfasst "
+ + "(beispielsweise wenn Sie eine VM hochladen oder löschen).\n\n"
+ + "Wozu werden diese Daten gesammelt?\n"
+ + "-----------------------------------------------------\n"
+ + "Die Informationen sind notwendig, um VMs und Veranstaltungen Ihnen bzw. "
+ + "Ihren Kollegen eindeutig zuordnen und ggf. bei rechtlichen Verstößen "
+ + "eingreifen zu können.\n\n"
+ + "Wenn Sie VMs herunterladen (vom Satellitenserver oder öffentlichen "
+ + "Speicher), möchten Sie sicherlich wissen, von wem eine VM erstellt "
+ + "wurde und wen Sie ggf. kontaktieren können, falls die VM nicht wie "
+ + "erwartet funktioniert. \n\n"
+ + "Außerdem sind Nutzungsdaten für Diagnosezwecke wichtig, damit ein "
+ + "Administrator Ihnen helfen kann, falls Sie z.B. Ihre VM nicht mehr "
+ + "finden können und vermuten, dass diese von jemandem fälschlicherweise "
+ + "gelöscht wurde.\n\n"
+ + "Mit wem werden diese Daten geteilt?\n"
+ + "-----------------------------------------------------\n"
+ + "Die erhobenen Daten werden ausschließlich auf dem Satellitenserver "
+ + "gespeichert, mit dem Sie sich während des Logins verbunden haben. "
+ + "Dieser steht in der Regel unter der Kontrolle des Rechenzentrums Ihrer "
+ + "Hochschule.\n\n"
+ + "Bei der erstmaligen Nutzung der Suite wurden Sie aufgefordert, sich "
+ + "über ein Webportal zu registrieren. Dies ist notwendig, um Ihre "
+ + "Zustimmung zur Speicherung und Verarbeitung Ihrer Daten zum Zweck des "
+ + "hochschulübergreifenden VM-Austauschs einzuholen. Die dort angegebenen "
+ + "Informationen stehen unter der Verwaltung des bwLehrpool-Teams in "
+ + "Freiburg.\n\n"
+ + "Wenn Sie eine VM auf den öffentlichen Speicher hochladen, wird die VM "
+ + "sowie damit verknüpfte Metadaten (Name des Besitzers/Erstellers, "
+ + "Zeitpunkt der Erstellung und letzten Änderung) auf den zentralen Server "
+ + "des bwLehrpool-Teams in Freiburg übertragen. Auch Nutzer anderer an "
+ + "bwLehrpool teilnehmenden Hochschulen können nun Ihre VM sowie die damit "
+ + "verbundenen (Kontakt-)Daten einsehen.\n\n"
+ + "Wie lange werden Daten gespeichert?\n"
+ + "-----------------------------------------------------\n"
+ + "Informationen werden gespeichert, bis sie nicht mehr benötigt werden, "
+ + "um die notwendige Funktionalität bereitzustellen. Dies hängt auch von "
+ + "Faktoren wie der Art der Informationen, warum sie gesammelt und "
+ + "verarbeitet werden sowie den relevanten rechtlichen oder betrieblichen "
+ + "Speicherbedürfnissen ab.\n\n"
+ + "Wohin kann ich mich bei Fragen wenden?\n"
+ + "-----------------------------------------------------\n"
+ + "Kontaktieren Sie als erstes Ihr Rechenzentrum. In der Regel wird dort "
+ + "der Satellitenserver, mit dem sich Ihre bwLehrpool-Suite standardmäßig "
+ + "verbindet, betrieben. Falls Sie dort keinen Ansprechpartner finden, "
+ + "können Sie sich an das Entwickler-Team von bwLehrpool "
+ + "(bwlehrpool@hs-offenburg.de) wenden. \n\n";
+
+ final PrivacyNoticeWindow me = this;
+
+ public PrivacyNoticeWindow(Frame modalParent) {
+ super(modalParent, shouldBeShown());
+
+ // Set the actual text
+ setNoticeText(notice);
+
+ // function for continue button
+ btnContinue.addActionListener(new ActionListener() {
+ @Override
+ public void actionPerformed(ActionEvent e) {
+ // save the agreement to config
+ Config.setPrivacyAgreement(PRIVACY_VERSION);
+ me.dispose();
+ }
+ });
+ }
+
+ public static boolean shouldBeShown() {
+ return Config.getPrivacyAgreement() < PRIVACY_VERSION;
+ }
+
+ public static void open(Frame modalParent) {
+ new PrivacyNoticeWindow(modalParent).setVisible(true);
+ }
+
+}