gluon-config-mode-contact-info: provide enhancements for german, english and french translation to comply with DSGVO (#1394)

* do not allow to obligatorily require contact information
* add remark that the data is provided voluntarily
* mention how to delete the data
* be very clear about the fact that the data being entered is public and
can be downloaded and processed by anyone.

Backport of Patch ab7f1acd to v2017.1.x
Based-on-patch-by: Christof Schulze <christof.schulze@gmx.net>
This commit is contained in:
Matthias P. Walther 2018-06-04 23:06:57 +02:00
parent 1cca860271
commit fd355cf0ef
8 changed files with 31 additions and 44 deletions

View File

@ -53,7 +53,6 @@ Several Freifunk communities in Germany use Gluon as the foundation of their Fre
:maxdepth: 1
package/gluon-client-bridge
package/gluon-config-mode-contact-info
package/gluon-config-mode-geo-location
package/gluon-ebtables-filter-multicast
package/gluon-ebtables-filter-ra-dhcp

View File

@ -1,21 +0,0 @@
gluon-config-mode-contact-info
==============================
This package allows the user to provide contact information within config mode to be
distributed in the mesh. You can define whether the owner contact field is
obligatory or not in your site.conf.
site.conf
---------
config_mode.owner.obligatory \: optional (defaults to false)
If ``obligatory`` is set to ``true``, the contact info field must be supplied
and may not be left empty.
Example::
config_mode = {
owner = {
obligatory = true
}
}

View File

@ -39,9 +39,4 @@ define Package/gluon-config-mode-contact-info/install
$(call GluonInstallI18N,gluon-config-mode-contact-info,$(1))
endef
define Package/gluon-config-mode-contact-info/postinst
#!/bin/sh
$(call GluonCheckSite,check_site.lua)
endef
$(eval $(call BuildPackage,gluon-config-mode-contact-info))

View File

@ -1,3 +0,0 @@
if need_table('config_mode', nil, false) and need_table('config_mode.owner', nil, false) then
need_boolean('config_mode.owner.obligatory', false)
end

View File

@ -16,12 +16,18 @@ msgstr "Kontakt"
msgid ""
"Please provide your contact information here to allow others to contact "
"you. Note that this information will be visible <em>publicly</em> on "
"the internet together with your node's coordinates."
"the internet together with your node's coordinates. This means it can "
"be downloaded and processed by anyone. This information is "
"not required to operate a node. If you chose to enter data, it will be "
"stored on this node and can be deleted by yourself at any time."
msgstr ""
"Bitte hinterlege hier einen Hinweis, um anderen zu ermöglichen, "
"Kontakt mit dir aufzunehmen. Beachte, dass dieser Hinweis auch "
"<em>öffentlich</em> im Internet, zusammen mit den Koordinaten "
"deines Knotens, einsehbar sein wird."
"deines Knotens, einsehbar sein wird. Das bedeutet, dass diese Informationen "
"von jedem heruntergeladen und verarbeitet werden können. Für den Betrieb sind diese "
"Informationen nicht erforderlich. Eine Speicherung erfolgt auf diesem Knoten. "
"Die Daten können durch dich in diesem Menü eigenständig gelöscht werden."
msgid "e.g. E-mail or phone number"
msgstr "z.B. E-Mail oder Telefonnummer"

View File

@ -16,11 +16,18 @@ msgstr "Informations de Contact"
msgid ""
"Please provide your contact information here to allow others to contact "
"you. Note that this information will be visible <em>publicly</em> on "
"the internet together with your node's coordinates."
"the internet together with your node's coordinates. This means it can "
"be downloaded and processed by anyone. This information is "
"not required to operate a node. If you chose to enter data, it will be "
"stored on this node and can be deleted by yourself at any time."
msgstr ""
"S'il vous plaît entrez ici des informations <em>publiques</em> pour "
"permettre aux autres de vous contacter. "
"Ces informations seront affichées en ligne, avec les coordonnées du nœud."
"Entrez vos coordonnées ici si vous souhaitez permettre à d'autres "
"personnes de communiquer avec vous. Ces informations seront affichées "
"<em>en ligne</em> avec les coordonnées du nœud. Il peut être téléchargé "
"et traité par tous. Il n'est pas obligatoire "
"de fournir ces informations pour pouvoir opérer un nœud. Si vous avez "
"choisi d'entrer des données, elles seront stockées sur ce nœud et vous "
"pourrez les effacer par vous-même à tout moment."
msgid "e.g. E-mail or phone number"
msgstr "Ex : E-mail ou numéro de téléphone"

View File

@ -7,7 +7,10 @@ msgstr ""
msgid ""
"Please provide your contact information here to allow others to contact "
"you. Note that this information will be visible <em>publicly</em> on "
"the internet together with your node's coordinates."
"the internet together with your node's coordinates. This means it can be "
"downloaded and processed by anyone. This information is "
"not required to operate a node. If you chose to enter data, it will be "
"stored on this node and can be deleted by yourself at any time."
msgstr ""
msgid "e.g. E-mail or phone number"

View File

@ -4,17 +4,18 @@ return function(form, uci)
local owner = uci:get_first("gluon-node-info", "owner")
local s = form:section(Section, nil, translate(
'Please provide your contact information here to '
.. 'allow others to contact you. Note that '
.. 'this information will be visible <em>publicly</em> '
.. 'on the internet together with your node\'s coordinates.'
'Please provide your contact information here to allow others to contact '
.. 'you. Note that this information will be visible <em>publicly</em> on '
.. 'the internet together with your node\'s coordinates. This means it can '
.. 'be downloaded and processed by anyone. This information is '
.. 'not required to operate a node. If you chose to enter data, it will be '
.. 'stored on this node and can be deleted by yourself at any time.'
))
local o = s:option(Value, "contact", translate("Contact info"), translate("e.g. E-mail or phone number"))
o.default = uci:get("gluon-node-info", owner, "contact")
o.optional = not ((site.config_mode or {}).owner or {}).obligatory
-- without a minimal length, an empty string will be accepted even with "optional = false"
o.datatype = "minlength(1)"
o.datatype = 'minlength(1)'
o.optional = true
function o:write(data)
if data then
uci:set("gluon-node-info", owner, "contact", data)