[serendipity_event_dsgvo] Minor improvements

- If it does not have a legend, it should not be a fieldset
- Fix typos in German translation
- German translations for GDPR_BACKEND_* constants
- Bump version, document changes
This commit is contained in:
Matthias Mees 2018-05-01 14:06:06 +02:00
parent 924818fe5b
commit 0231eb1f14
4 changed files with 28 additions and 19 deletions

View file

@ -1,2 +1,3 @@
1.0.6: Typos, German translation, frontend markup fix
1.0.5: Added ability to export and/or remove comments made by users to comply with the Auskunftsgesuch
1.0.3: Added ability to make themes provide a "legal.txt" with information, and a hard-coded internal array that yields information
1.0.3: Added ability to make themes provide a "legal.txt" with information, and a hard-coded internal array that yields information

View file

@ -4,7 +4,7 @@
@define('PLUGIN_EVENT_DSGVO_GDPR_DESC', 'Dieses Plugin soll Blogbetreibern helfen, Konformität zur Datenschutz-Grundverordnung herzustellen.');
@define('PLUGIN_EVENT_DSGVO_GDPR_MENU', 'DSGVO-Erklärung');
@define('PLUGIN_EVENT_DSGVO_GDPR_STATEMENT', 'Ihre Datenschutzerklärung / Impressum');
@define('PLUGIN_EVENT_DSGVO_GDPR_STATEMENT_DESC', 'Sie können die oebn stehende, automatisch erzeugte Inspektion als ersten groben Entwurf der benötigten Informationen, die Ihre Datenschutzerklärung enthalten sollte, verwenden. Versichern Sie sich jedoch, dass Ihre Datenschutzerklärung alle relevanten Informationen enthält. Falls Sie Hilfe benötigen, wenden Sie sich bitte an juristischen Beistand; wir können leider aus Haftungsgründen keine wasserdichte Vorlage einer solchen Erklärung bereit stellen.');
@define('PLUGIN_EVENT_DSGVO_GDPR_STATEMENT_DESC', 'Sie können die oben stehende, automatisch erzeugte Inspektion als ersten groben Entwurf der benötigten Informationen, die Ihre Datenschutzerklärung enthalten sollte, verwenden. Versichern Sie sich jedoch, dass Ihre Datenschutzerklärung alle relevanten Informationen enthält. Falls Sie Hilfe benötigen, wenden Sie sich bitte an juristischen Beistand; wir können leider aus Haftungsgründen keine wasserdichte Vorlage einer solchen Erklärung bereit stellen.');
@define('PLUGIN_EVENT_DSGVO_GDPR_URL', 'Optional: URL zur Datenschutzerklärung');
@define('PLUGIN_EVENT_DSGVO_GDPR_URL_DESC', 'Standardmäßig wird ein interner Link erzeugt, der den hier eingegebenen Text als Ihre Datenschutzerklärung anzeigt. Haben Sie jedoch bereits eine spezifische URL (oder eine statische Seite), auf die Sie Ihre Besucher verweisen möchten, können Sie diese hier angeben. In dem Fall wird der Text für die Datenschutzerklärung aus dem Plugin nicht angezeigt und muss daher nicht eingegeben werden.');
@define('PLUGIN_EVENT_DSGVO_GDPR_COMMENTFORM_CHECKBOX', 'Müssen Kommentatoren die Datenschutzerklärung akzeptieren?');
@ -24,7 +24,7 @@
@define('PLUGIN_EVENT_DSGVO_GDPR_COOKIE_MENU', 'CookieConsent');
@define('PLUGIN_EVENT_DSGVO_GDPR_COOKIE_CONSENT', 'CookieConsent von Insites verwenden?');
@define('PLUGIN_EVENT_DSGVO_GDPR_COOKIE_CONSENT_DESC', 'Falls aktiviert wird in Ihrem Blog ein Cookie-Hinweis angezeigt. Dazu wird das Javascript-Plugin CookieConsent verwendet. Es unterstützt nur eine einfache Zustimmung / Information zu Cookies. Sie können den Generator auf<a href="https://cookieconsent.insites.com/download/">https://cookieconsent.insites.com/download/</a> verwenden, um den Code anzupassen; achten Sie jedoch darauf, hier NUR den Hauptteil des JavaScripts anzugeben, aber KEINE links zu CSS oder JavaScript, damit dieser Code nur von Ihrem eigenen Server geladen wird und nicht von fremden Servern.');
@define('PLUGIN_EVENT_DSGVO_GDPR_COOKIE_CONSENT_DESC', 'Falls aktiviert wird in Ihrem Blog ein Cookie-Hinweis angezeigt. Dazu wird das Javascript-Plugin CookieConsent verwendet. Es unterstützt nur eine einfache Zustimmung / Information zu Cookies. Sie können den Generator auf <a href="https://cookieconsent.insites.com/download/">https://cookieconsent.insites.com/download/</a> verwenden, um den Code anzupassen; achten Sie jedoch darauf, hier NUR den Hauptteil des JavaScripts anzugeben, aber KEINE Links zu CSS oder JavaScript, damit dieser Code nur von Ihrem eigenen Server geladen wird und nicht von fremden Servern.');
@define('PLUGIN_EVENT_DSGVO_GDPR_COOKIE_CONSENT_TEXT', 'CookieConsent-Code');
@define('PLUGIN_EVENT_DSGVO_GDPR_COOKIE_CONSENT_TEXT_DESC', 'Dieses JavaScript ist leicht verständlich, Sie können hier alle Farben und Texte anpassen. Verwenden Sie %gdpr_url% als Platzhalter für den Link zu Ihrer Datenschutzerklärung.');
@define('PLUGIN_EVENT_DSGVO_GDPR_COOKIE_CONSENT_TEXT_DEFAULT', '
@ -63,7 +63,7 @@ window.cookieconsent.initialise({
<p>Serendipity verwendet ein sogenanntes "Session cookie" für sowohl das Frontend als auch das Backend. Ein Besucher bekommt ein Cookie mit einer eindeutigen ID, welches auf dem Server verwendet wird, um temporäre Benutzerdaten für die Session zu speichern (z.B. Gültigkeit des Login, Benutzereinstellungen).
Dieses Cookie ist notwendig, um sich ins Backend einzuloggen, aber optional im Frontend.
Bestimmte Plugins können das Session-Cookie verwenden, um zustätzlich temporäre Daten zu speichern.</p>
Bestimmte Plugins können das Session-Cookie verwenden, um zusätzlich temporäre Daten zu speichern.</p>
<p>Die folgenden Daten können von der Anwendung Serendipity auf dem Server gespeichert werden (vorübergehend, werden nach einer auf dem Server voreingestellten Zeit ungültig, üblicherweise binnen Stunden):</p>
@ -74,7 +74,7 @@ Bestimmte Plugins können das Session-Cookie verwenden, um zustätzlich temporä
<ul>
<li>Passwort</li>
<li>ID des Benutzers</li>
<li>eingestellter Sprache des Benutzers</li>
<li>eingestellte Sprache des Benutzers</li>
<li>Benutzername</li>
<li>E-Mail</li>
<li>Hashtyp des Logins</li>
@ -83,7 +83,7 @@ Bestimmte Plugins können das Session-Cookie verwenden, um zustätzlich temporä
</li>
<li>Inhalt des letzten Blogeintrags beim Speichern</li>
<li>Indikator, ob Smarty-Templates verwendet werden</li>
<li>möglicher Inhalt eines erzeugten CAPTCHA-Bilders</li>
<li>möglicher Inhalt eines erzeugten CAPTCHA-Bildes</li>
<li>das eingestellte Frontend-Theme</li>
</ul>
@ -119,4 +119,8 @@ Bestimmte Plugins können das Session-Cookie verwenden, um zustätzlich temporä
');
@define('PLUGIN_EVENT_DSGVO_GDPR_ANONYMIZE', 'Anonymisiere IPs?');
@define('PLUGIN_EVENT_DSGVO_GDPR_ANONYMIZE_DESC', 'Falls aktiviert werden die letzten Teile der IP-Adressen (ipv4 und ipv6) mit "0" überschrieben. Das bedeutet, dass an allen Stellen, an denen Serendipity die IP-Adresse des Benutzers speichert oder verwendet (auch für Anti-Spam-Techniken), die aufgezeichnete IP nicht die tatsächliche IP des Bsuchers sein wird. So werden Sie z.B. im Fall eines Missbrauchs nicht wissen, von welcher IP-Adresse ein Kommentar tatsächlich abgegeben wurde.');
@define('PLUGIN_EVENT_DSGVO_GDPR_ANONYMIZE_DESC', 'Falls aktiviert werden die letzten Teile der IP-Adressen (ipv4 und ipv6) mit "0" überschrieben. Das bedeutet, dass an allen Stellen, an denen Serendipity die IP-Adresse des Benutzers speichert oder verwendet (auch für Anti-Spam-Techniken), die aufgezeichnete IP nicht die tatsächliche IP des Bsuchers sein wird. So werden Sie z.B. im Fall eines Missbrauchs nicht wissen, von welcher IP-Adresse ein Kommentar tatsächlich abgegeben wurde.');
@define('PLUGIN_EVENT_DSGVO_GDPR_BACKEND', 'Benutzerdaten verwalten');
@define('PLUGIN_EVENT_DSGVO_GDPR_BACKEND_INFO', 'Hier können Sie einen exakt übereinstimmenden Benutzernamen oder eine E-Mail-Adresse eingeben, um diesen Benutzer zu entfernen oder seine Daten zu exportieren. Sie können mehrere Namen auf jeweils eines neuen Zeile eingeben.');
@define('PLUGIN_EVENT_DSGVO_GDPR_BACKEND_DELFAIL', 'Um exportieren oder löschen zu können muss mindestens ein Benutzername oder eine E-Mail-Adresse eingegeben werden.');

View file

@ -4,7 +4,7 @@
@define('PLUGIN_EVENT_DSGVO_GDPR_DESC', 'Dieses Plugin soll Blogbetreibern helfen, Konformität zur Datenschutz-Grundverordnung herzustellen.');
@define('PLUGIN_EVENT_DSGVO_GDPR_MENU', 'DSGVO-Erklärung');
@define('PLUGIN_EVENT_DSGVO_GDPR_STATEMENT', 'Ihre Datenschutzerklärung / Impressum');
@define('PLUGIN_EVENT_DSGVO_GDPR_STATEMENT_DESC', 'Sie können die oebn stehende, automatisch erzeugte Inspektion als ersten groben Entwurf der benötigten Informationen, die Ihre Datenschutzerklärung enthalten sollte, verwenden. Versichern Sie sich jedoch, dass Ihre Datenschutzerklärung alle relevanten Informationen enthält. Falls Sie Hilfe benötigen, wenden Sie sich bitte an juristischen Beistand; wir können leider aus Haftungsgründen keine wasserdichte Vorlage einer solchen Erklärung bereit stellen.');
@define('PLUGIN_EVENT_DSGVO_GDPR_STATEMENT_DESC', 'Sie können die oben stehende, automatisch erzeugte Inspektion als ersten groben Entwurf der benötigten Informationen, die Ihre Datenschutzerklärung enthalten sollte, verwenden. Versichern Sie sich jedoch, dass Ihre Datenschutzerklärung alle relevanten Informationen enthält. Falls Sie Hilfe benötigen, wenden Sie sich bitte an juristischen Beistand; wir können leider aus Haftungsgründen keine wasserdichte Vorlage einer solchen Erklärung bereit stellen.');
@define('PLUGIN_EVENT_DSGVO_GDPR_URL', 'Optional: URL zur Datenschutzerklärung');
@define('PLUGIN_EVENT_DSGVO_GDPR_URL_DESC', 'Standardmäßig wird ein interner Link erzeugt, der den hier eingegebenen Text als Ihre Datenschutzerklärung anzeigt. Haben Sie jedoch bereits eine spezifische URL (oder eine statische Seite), auf die Sie Ihre Besucher verweisen möchten, können Sie diese hier angeben. In dem Fall wird der Text für die Datenschutzerklärung aus dem Plugin nicht angezeigt und muss daher nicht eingegeben werden.');
@define('PLUGIN_EVENT_DSGVO_GDPR_COMMENTFORM_CHECKBOX', 'Müssen Kommentatoren die Datenschutzerklärung akzeptieren?');
@ -24,7 +24,7 @@
@define('PLUGIN_EVENT_DSGVO_GDPR_COOKIE_MENU', 'CookieConsent');
@define('PLUGIN_EVENT_DSGVO_GDPR_COOKIE_CONSENT', 'CookieConsent von Insites verwenden?');
@define('PLUGIN_EVENT_DSGVO_GDPR_COOKIE_CONSENT_DESC', 'Falls aktiviert wird in Ihrem Blog ein Cookie-Hinweis angezeigt. Dazu wird das Javascript-Plugin CookieConsent verwendet. Es unterstützt nur eine einfache Zustimmung / Information zu Cookies. Sie können den Generator auf<a href="https://cookieconsent.insites.com/download/">https://cookieconsent.insites.com/download/</a> verwenden, um den Code anzupassen; achten Sie jedoch darauf, hier NUR den Hauptteil des JavaScripts anzugeben, aber KEINE links zu CSS oder JavaScript, damit dieser Code nur von Ihrem eigenen Server geladen wird und nicht von fremden Servern.');
@define('PLUGIN_EVENT_DSGVO_GDPR_COOKIE_CONSENT_DESC', 'Falls aktiviert wird in Ihrem Blog ein Cookie-Hinweis angezeigt. Dazu wird das Javascript-Plugin CookieConsent verwendet. Es unterstützt nur eine einfache Zustimmung / Information zu Cookies. Sie können den Generator auf <a href="https://cookieconsent.insites.com/download/">https://cookieconsent.insites.com/download/</a> verwenden, um den Code anzupassen; achten Sie jedoch darauf, hier NUR den Hauptteil des JavaScripts anzugeben, aber KEINE Links zu CSS oder JavaScript, damit dieser Code nur von Ihrem eigenen Server geladen wird und nicht von fremden Servern.');
@define('PLUGIN_EVENT_DSGVO_GDPR_COOKIE_CONSENT_TEXT', 'CookieConsent-Code');
@define('PLUGIN_EVENT_DSGVO_GDPR_COOKIE_CONSENT_TEXT_DESC', 'Dieses JavaScript ist leicht verständlich, Sie können hier alle Farben und Texte anpassen. Verwenden Sie %gdpr_url% als Platzhalter für den Link zu Ihrer Datenschutzerklärung.');
@define('PLUGIN_EVENT_DSGVO_GDPR_COOKIE_CONSENT_TEXT_DEFAULT', '
@ -63,7 +63,7 @@ window.cookieconsent.initialise({
<p>Serendipity verwendet ein sogenanntes "Session cookie" für sowohl das Frontend als auch das Backend. Ein Besucher bekommt ein Cookie mit einer eindeutigen ID, welches auf dem Server verwendet wird, um temporäre Benutzerdaten für die Session zu speichern (z.B. Gültigkeit des Login, Benutzereinstellungen).
Dieses Cookie ist notwendig, um sich ins Backend einzuloggen, aber optional im Frontend.
Bestimmte Plugins können das Session-Cookie verwenden, um zustätzlich temporäre Daten zu speichern.</p>
Bestimmte Plugins können das Session-Cookie verwenden, um zusätzlich temporäre Daten zu speichern.</p>
<p>Die folgenden Daten können von der Anwendung Serendipity auf dem Server gespeichert werden (vorübergehend, werden nach einer auf dem Server voreingestellten Zeit ungültig, üblicherweise binnen Stunden):</p>
@ -74,7 +74,7 @@ Bestimmte Plugins k
<ul>
<li>Passwort</li>
<li>ID des Benutzers</li>
<li>eingestellter Sprache des Benutzers</li>
<li>eingestellte Sprache des Benutzers</li>
<li>Benutzername</li>
<li>E-Mail</li>
<li>Hashtyp des Logins</li>
@ -83,7 +83,7 @@ Bestimmte Plugins k
</li>
<li>Inhalt des letzten Blogeintrags beim Speichern</li>
<li>Indikator, ob Smarty-Templates verwendet werden</li>
<li>möglicher Inhalt eines erzeugten CAPTCHA-Bilders</li>
<li>möglicher Inhalt eines erzeugten CAPTCHA-Bildes</li>
<li>das eingestellte Frontend-Theme</li>
</ul>
@ -119,4 +119,8 @@ Bestimmte Plugins k
');
@define('PLUGIN_EVENT_DSGVO_GDPR_ANONYMIZE', 'Anonymisiere IPs?');
@define('PLUGIN_EVENT_DSGVO_GDPR_ANONYMIZE_DESC', 'Falls aktiviert werden die letzten Teile der IP-Adressen (ipv4 und ipv6) mit "0" überschrieben. Das bedeutet, dass an allen Stellen, an denen Serendipity die IP-Adresse des Benutzers speichert oder verwendet (auch für Anti-Spam-Techniken), die aufgezeichnete IP nicht die tatsächliche IP des Bsuchers sein wird. So werden Sie z.B. im Fall eines Missbrauchs nicht wissen, von welcher IP-Adresse ein Kommentar tatsächlich abgegeben wurde.');
@define('PLUGIN_EVENT_DSGVO_GDPR_ANONYMIZE_DESC', 'Falls aktiviert werden die letzten Teile der IP-Adressen (ipv4 und ipv6) mit "0" überschrieben. Das bedeutet, dass an allen Stellen, an denen Serendipity die IP-Adresse des Benutzers speichert oder verwendet (auch für Anti-Spam-Techniken), die aufgezeichnete IP nicht die tatsächliche IP des Bsuchers sein wird. So werden Sie z.B. im Fall eines Missbrauchs nicht wissen, von welcher IP-Adresse ein Kommentar tatsächlich abgegeben wurde.');
@define('PLUGIN_EVENT_DSGVO_GDPR_BACKEND', 'Benutzerdaten verwalten');
@define('PLUGIN_EVENT_DSGVO_GDPR_BACKEND_INFO', 'Hier können Sie einen exakt übereinstimmenden Benutzernamen oder eine E-Mail-Adresse eingeben, um diesen Benutzer zu entfernen oder seine Daten zu exportieren. Sie können mehrere Namen auf jeweils eines neuen Zeile eingeben.');
@define('PLUGIN_EVENT_DSGVO_GDPR_BACKEND_DELFAIL', 'Um exportieren oder löschen zu können muss mindestens ein Benutzername oder eine E-Mail-Adresse eingegeben werden.');

View file

@ -23,7 +23,7 @@ class serendipity_event_dsgvo_gdpr extends serendipity_event
$propbag->add('description', PLUGIN_EVENT_DSGVO_GDPR_DESC);
$propbag->add('stackable', false);
$propbag->add('author', 'Serendipity Team');
$propbag->add('version', '1.0.5');
$propbag->add('version', '1.0.6');
$propbag->add('requirements', array(
'serendipity' => '2.0',
'smarty' => '2.6.7',
@ -375,7 +375,7 @@ class serendipity_event_dsgvo_gdpr extends serendipity_event
$where[] = 'email IN (' . implode(', ', $email_list) . ')';
}
$clist = serendipity_db_query("SELECT *
$clist = serendipity_db_query("SELECT *
FROM {$serendipity['dbPrefix']}comments
WHERE " . implode(' OR ', $where), false, 'assoc');
}
@ -486,11 +486,11 @@ class serendipity_event_dsgvo_gdpr extends serendipity_event
case 'frontend_comment':
if (serendipity_db_bool($this->get_config('commentform_checkbox'))) {
?>
<fieldset class="form_toolbar dsgvo_gdpr_comment">
<div class="form_toolbar dsgvo_gdpr_comment">
<div class="form_box">
<input id="checkbox_dsgvo_gdpr" name="serendipity[accept_privacy]" value="1" type="checkbox" <?php echo ($serendipity['POST']['accept_privacy'] == 1 ? 'checked="checked"' : ''); ?>><label for="checkbox_dsgvo_gdpr"><?php echo $this->parseText($this->get_config('commentform_text')); ?></label>
</div>
</fieldset>
</div>
<?php
}
return true;
@ -506,7 +506,7 @@ class serendipity_event_dsgvo_gdpr extends serendipity_event
case 'backend_deletecomment':
// Vanilla s9y does not delete all metadata of a comment that has threaded replies, it only sets the body to "Deleted".
// Here we take care that all metadata is cleared in that case.
serendipity_db_query("UPDATE {$serendipity['dbPrefix']}comments
serendipity_db_query("UPDATE {$serendipity['dbPrefix']}comments
SET title = '', author = '', email = '', url = '', ip = '', referer = ''
WHERE id = {$addData['cid']}");
@ -652,4 +652,4 @@ class IpAnonymizer {
}
}
/* vim: set sts=4 ts=4 expandtab : */
/* vim: set sts=4 ts=4 expandtab : */