[3.2] Kontaktformular: Pflichtfelder reduzieren gemäß DSGVO

Fragen rund um die Installation, Administration und Benutzung von phpBB.
Forumsregeln
Bitte im Thementitel den Präfix deiner phpBB-Version angeben
Antworten
forensis
Mitglied
Beiträge: 53
Registriert: 08.09.2011 22:08

[3.2] Kontaktformular: Pflichtfelder reduzieren gemäß DSGVO

Beitrag von forensis »

Laut DSGVO gilt "Datensparsamkeit".

Kontaktformulare dienen nur zur ersten schnellen Kontaktaufnahme. Und dazu sollte es nur 2 Pflichtfelder geben: Die E-Mail-Adresse und das eigentliche Textfeld.
Name, Betreff und alles sonstige dürfen kein Pflichtfeld sein.
Fragen:
Wo kann ich es einstellen, dass nur E-Mail-Adresse und Textfeld verpflichtend sind?
Und wie kann ich im Kontaktformular eine Checkbox implementieren, dass die Datenschutzerklärung zur Kenntnis genommen wurde?

Gruß, fori
Lehrling
Ehemaliges Teammitglied
Beiträge: 3833
Registriert: 15.01.2012 20:00
Kontaktdaten:

Re: [3.2] Kontaktformular: Pflichtfelder reduzieren gemäß DSGVO

Beitrag von Lehrling »

Ich fürchte, das geht nur über eine Änderung der entsprechenden Dateien. Die zu bearbeitende Datei wäre da die memberlist_email.html des jeweiligen Styles. Ist aber etwas knifflig, da an mehreren Stellen Codeabschnitte herausgelöscht oder auskommentiert werden müssten.
forensis
Mitglied
Beiträge: 53
Registriert: 08.09.2011 22:08

Re: [3.2] Kontaktformular: Pflichtfelder reduzieren gemäß DSGVO

Beitrag von forensis »

Danke für den Tipp. Das Rauswerfen ganzer Felder wie z. B. Name wäre ja kein Problem.

Aber für diejenigen, die es freiwillig wollen, sollte das Namensfeld und das Betrefffeld schon im Formular bleiben (optional).
Was ich in der memberlist_email.html leider nicht erkennen kann, ist die Anweisung, die aus einem Feld ein Pflichtfeld macht - oder eben nicht. Als Beispiel hier die Zeilen, die den Namen abfragen:

Code: Alles auswählen

				<dl class="form-group">
					<dt class="col-md-3 col-sm-4 col-xs-12"><label class="control-label">{L_RECIPIENT}{L_COLON}</label></dt>
					<dd class="col-md-9 col-sm-8 col-xs-12 form-inline">
						<label class="control-label">{USERNAME_FULL}</label>
					</dd>
				</dl>
Was muss ich tun, damit das Namensfeld noch auftaucht, aber nicht mehr zwingend ausgefüllt werden muss?
Ist es vielleicht so, dass schlicht alle dort aufgelistetet Felder immer Pflichtfelder sind, die man nur ganz entfernen oder aber verpflichtend drinlassen kann?Oder muss dazu in einer php-Datei eingegriffen werden?
Benutzeravatar
canonknipser
Ehemaliges Teammitglied
Beiträge: 2053
Registriert: 10.09.2011 11:14
Kontaktdaten:

Re: [3.2] Kontaktformular: Pflichtfelder reduzieren gemäß DSGVO

Beitrag von canonknipser »

Und warum willst du das Namensfeld "gem. DSGVO" unterdrücken? Die Daten werden per E-Mail außerhalb von phpBB übermittelt und nirgendwo in phpBB gespeichert. Hier greifen die üblichen Sorgfaltspflichten im Rahmen der elektronischen Kommunikation, nach der nicht mehr benötigte personenbezogene Daten gelöscht werden.
forensis hat geschrieben:Was muss ich tun, damit das Namensfeld noch auftaucht, aber nicht mehr zwingend ausgefüllt werden muss?
Da wäre erst mal die Frage, welchen Style setzt du da ein? In Standard-Prosilver in phpBB 3.2.2 sieht der Bereich mit L_RECIPIENT so aus:

Code: Alles auswählen

	<div class="content">

		<!-- IF ERROR_MESSAGE --><p class="error">{ERROR_MESSAGE}</p><!-- ENDIF -->
		<fieldset class="fields2">
		<!-- IF S_SEND_USER -->
			<dl>
				<dt><label>{L_RECIPIENT}{L_COLON}</label></dt>
				<dd><strong>{USERNAME_FULL}</strong></dd>
			</dl>
			<dl>
				<dt><label for="subject">{L_SUBJECT}{L_COLON}</label></dt>
				<dd><input class="inputbox autowidth" type="text" name="subject" id="subject" size="50" tabindex="1" value="{SUBJECT}" /></dd>
			</dl>
		<!-- ELSEIF S_CONTACT_ADMIN-->
			<dl>
				<dt><label>{L_RECIPIENT}{L_COLON}</label></dt>
				<dd><strong>{L_ADMINISTRATOR}</strong></dd>
			</dl>
			<!-- IF not S_IS_REGISTERED -->
			<dl>
				<dt><label for="email">{L_SENDER_EMAIL_ADDRESS}{L_COLON}</label></dt>
				<dd><input class="inputbox autowidth" type="text" name="email" id="email" size="50" maxlength="100" tabindex="1" value="{EMAIL}" /></dd>
			</dl>
			<dl>
				<dt><label for="name">{L_SENDER_NAME}{L_COLON}</label></dt>
				<dd><input class="inputbox autowidth" type="text" name="name" id="name" size="50" tabindex="2" value="{NAME}" /></dd>
			</dl>
			<!-- ENDIF -->
			<dl>
				<dt><label for="subject">{L_SUBJECT}{L_COLON}</label></dt>
				<dd><input class="inputbox autowidth" type="text" name="subject" id="subject" size="50" tabindex="3" value="{SUBJECT}" /></dd>
			</dl>
		<!-- ELSE -->
			<dl>
				<dt><label for="email">{L_EMAIL_ADDRESS}{L_COLON}</label></dt>
				<dd><input class="inputbox autowidth" type="email" name="email" id="email" size="50" maxlength="100" tabindex="2" value="{EMAIL}" /></dd>
			</dl>
			<dl>
				<dt><label for="name">{L_REAL_NAME}{L_COLON}</label></dt>
				<dd><input class="inputbox autowidth" type="text" name="name" id="name" size="50" tabindex="3" value="{NAME}" /></dd>
			</dl>
			<dl>
				<dt><label for="lang">{L_DEST_LANG}{L_COLON}</label><br />
					<span>{L_DEST_LANG_EXPLAIN}</span></dt>
				<dd><select name="lang">{S_LANG_OPTIONS}</select></dd>
			</dl>
		<!-- ENDIF -->
		<dl>
			<dt><label for="message">{L_MESSAGE_BODY}{L_COLON}</label><br />
			<span>{L_EMAIL_BODY_EXPLAIN}</span></dt>
			<dd><textarea name="message" id="message" rows="15" cols="76" tabindex="4">{MESSAGE}</textarea></dd>
		</dl>
		<!-- IF S_REGISTERED_USER -->
		<dl>
			<dt>&nbsp;</dt>
			<dd><label for="cc_sender"><input type="checkbox" name="cc_sender" id="cc_sender" value="1" checked="checked" tabindex="5" /> {L_CC_SENDER}</label></dd>
		</dl>
		<!-- ENDIF -->
		</fieldset>
	</div>

Da tauchen nirgendwo Klassennamen wie col-md-3 usw. auf
Dann wird dieses Formular ja für verschiedene Zwecke verwendet:
  • Registrierter User an Registrierter User, sofern E-Mail im Board erlaubt sind S_SEND_USER
  • Contact Admin von Gast an Admin S_CONTACT_ADMIN und not S_IS_REGISTERED (das ist es wohl, was du meinst, oder?)
  • Contact Admin von Registrierter User an Admin S_CONTACT_ADMIN und S_IS_REGISTERED

Also, genau so, wie du Telefonnummern, die du nicht mehr benötigst, aus deinen elektronischen oder auf papiergebundenen Verzeichnissen löscht, musst du auch eMail-Adressen löschen, wenn du sie nicht mehr benötigst.


Aber wenn du detailliert einsteigen willst: Die Prüfungen für die Kontaktaufnahme mit dem Administrator finden in /phpbb/message/admin_form.php statt:

Code: Alles auswählen

    public function submit(\messenger $messenger)
    {
        if (!$this->subject)
        {
            $this->errors[] = $this->user->lang['EMPTY_SUBJECT_EMAIL'];
        }
        if (!$this->body)
        {
            $this->errors[] = $this->user->lang['EMPTY_MESSAGE_EMAIL'];
        }

        if ($this->user->data['is_registered'])
        {
            $this->message->set_sender_from_user($this->user);
            $this->sender_name = $this->user->data['username'];
            $this->sender_address = $this->user->data['user_email'];
        }
        else
        {
            if (!$this->sender_name)
            {
                $this->errors[] = $this->user->lang['EMPTY_SENDER_NAME'];
            }

            if (!function_exists('validate_data'))
            {
                require($this->phpbb_root_path . 'includes/functions_user.' . $this->phpEx);
            }

            $validate_array = validate_data(
                array(
                    'email' => $this->sender_address,
                ),
                array(
                    'email' => array(
                        array('string', false, 6, 60),
                        array('email'),
                    ),
                )
            );

            foreach ($validate_array as $error)
            {
                $this->errors[] = $this->user->lang[$error];
            }

            $this->message->set_sender($this->user->ip, $this->sender_name, $this->sender_address, $this->user->lang_name);
            $this->message->set_sender_notify_type(NOTIFY_EMAIL);
        }

        $this->message->set_template('contact_admin');
        $this->message->set_subject($this->subject);
        $this->message->set_body($this->body);
        $this->message->add_recipient(
            $this->user->lang['ADMINISTRATOR'],
            $this->config['board_contact'],
            $this->config['default_lang'],
            NOTIFY_EMAIL
        );

        $this->message->set_template_vars(array(
            'FROM_EMAIL_ADDRESS'    => $this->sender_address,
            'FROM_IP_ADDRESS'        => $this->user->ip,
            'S_IS_REGISTERED'        => $this->user->data['is_registered'],

            'U_FROM_PROFILE'        => generate_board_url() . '/memberlist.' . $this->phpEx . '?mode=viewprofile&u=' . $this->user->data['user_id'],
        ));

        parent::submit($messenger);
    }


Grüße, canonknipser
"there are only 10 types of people: those, who understand binary and those, who don't"
just arrived ;) - Bilder
Kein Support via PN, nur im Board und (manchmal) im IRC
forensis
Mitglied
Beiträge: 53
Registriert: 08.09.2011 22:08

Re: [3.2] Kontaktformular: Pflichtfelder reduzieren gemäß DSGVO

Beitrag von forensis »

canonknipser hat geschrieben:Und warum willst du das Namensfeld "gem. DSGVO" unterdrücken? Die Daten werden per E-Mail außerhalb von phpBB übermittelt und nirgendwo in phpBB gespeichert. Hier greifen die üblichen Sorgfaltspflichten im Rahmen der elektronischen Kommunikation, nach der nicht mehr benötigte personenbezogene Daten gelöscht werden.
Ich will es ja gar nicht unterdrücken. Es soll nach wie vor da sein - aber es soll dem Kontakter freigestellt sein, ob er's ausfüllen will (weil er seinen Namen so schön findet z. B. 8) ) oder nicht.
Das hat nichts mit Sorgfaltspflicht zu tun, sondern mit Datensparsamkeit: Auf jedes Datum, das nicht unbedingt gebraucht wird, soll von vornherein verzichtet werden! Und für die erste Kontaktaufnahme reicht die Emailadresse plus das Textfeld, in dem steht, was der Gute will.
Da wäre erst mal die Frage, welchen Style setzt du da ein?
Sorry - einmal in drei Jahren fasse ich die Software an und vergesse sie in der Zwischenzeit wieder komplett - bis ich glaube, jetzt sei wieder mal ein Update fällig. Ich mache das so selten, weil es mich immer wieder ungeliebte Zusatzarbeit kostet, das gewünschte individuelle Layout auch mit der neuen Version "hinzuzaubern". Jetzt z. B. stelle ich fest, dass statt meiner geliebten und sehr auffälligen Icons (Gelesen, Ungelesen, etc.) diese von mir ungeliebten "Genialfonts" integriert worden sind, und ich wieder mein seit Jahren bewährtes Schema über den Haufen werfen muss.

Was ich sagen will: Ich habe so selten mit phpbb zu tun (dafür ständig mit Joomla), dass ich einfach nicht daran denke, dass ich bei phpbb den Style nicht losgelöst vom eigentlichen System betrachten kann. Also ich nutze "Bootlike" - einfach weil es schon ziemlich früh responsiv war, während die regulären Styles erst später nachgezogen sind.

Auf jeden Fall herzlichen Dank für den Prosilver-Code. Auf seiner Basis kann ich ggf. in Richtung Bootlike umdenken.

Aber für's erste habe ich den Kontaktlink komplett umgeleitet zum DSGVO-konformen und SPAM-geschützten Kontaktformular der zu dem nicht-öffentlichen Forum gehörigen öffentlichen Webseite (Joomla).

Obwohl ein "Öffentlicher" in dem geschlossenen Nutzerkreis des Forums nichts zu suchen hat (oder haben sollte) muss alles, was auch so ein "Öffentlicher" sehen und anfassen kann (das Kontaktformular z. B.) nicht nur der DSGVO sondern auch den asozialen Abmahnschmarotzern genügen. :o
Also, genau so, wie du Telefonnummern, die du nicht mehr benötigst, aus deinen elektronischen oder auf papiergebundenen Verzeichnissen löscht, musst du auch eMail-Adressen löschen, wenn du sie nicht mehr benötigst.
Ja, richtig! Aber im Lauf meines mehr als 40jährigen Berufslebens habe ich immer wieder die Erfahrung gemacht, dass ich lange, lange, lange Zeit nichts von einem Kunden höre. Aber - plötzlich und unerwartet - erinnert er sich an mich und fragt: "Wissen sie noch, damals kurz nach dem zweiten Weltkrieg, haben Sie doch für mich dies und das gebastelt. Sowas ähnliches brauche ich jetzt wieder ...!"

Und dann war ich immer heilfroh, dass ich meinen Email-Verkehr bisher für die Ewigkeit gespeichert hatte. Einmal Suchen in Outlook - und zack, schon kann ich den Uraltkunden noch mal befriedigen.
Dass die DSGVO da jetzt mit'm Hammer reinhaut, stört mich nicht wirklich, denn mein (Berufs-)Leben dauert nicht mehr so furchtbar lange. Die Fragen alter Kunden werden seltener, weil sie nach und nach wegsterben ... :(
Aber wenn du detailliert einsteigen willst: Die Prüfungen für die Kontaktaufnahme mit dem Administrator finden in /phpbb/message/admin_form.php statt: ...
Vielen lieben Dank auch dafür. Es hilft mir sehr viel weiter!

Viele Grüße, fori
Benutzeravatar
Joyce&Luna
Mitglied
Beiträge: 2478
Registriert: 24.11.2013 18:14
Wohnort: NRW
Kontaktdaten:

Re: [3.2] Kontaktformular: Pflichtfelder reduzieren gemäß DSGVO

Beitrag von Joyce&Luna »

Für die Checkbox könntest du das nutzen.
https://www.phpbb.com/customise/db/exte ... act_admin/

Edit: Ich glaube darüber könntest du eventuell auch die Veränderung durch führen die du haben willst. Müsste man testen.

Edit: Wenn du diese Ext installiert hast, öffne rmcgirr83/contactadmin/styles/prosilver/template/contactadmin_body.html

Suche

Code: Alles auswählen

		<dl>
			<dt><label for="username">{L_CONTACT_YOUR_NAME}{L_COLON}</label><br /><span>{L_CONTACT_YOUR_NAME_EXPLAIN}</span></dt>
			<dd><input type="text" class="inputbox autowidth" name="username" id="username" value="{USERNAME}" size="30" tabindex="1" /></dd>
		</dl>


Lösche dieses.

Dann sollte nur noch Email, Betreff und Text stehen.

Ich habe falsch gelesen :oops: Pflichtfeld deaktivieren. Da schaue ich noch mal.
phpBB-Style-Design.de

Keine Antwort ist die eindeutigste Antwort, die man kriegen kann.
Bitte stellt die Fragen im Forum und nicht per PN. Danke!
Benutzeravatar
canonknipser
Ehemaliges Teammitglied
Beiträge: 2053
Registriert: 10.09.2011 11:14
Kontaktdaten:

Re: [3.2] Kontaktformular: Pflichtfelder reduzieren gemäß DSGVO

Beitrag von canonknipser »

Eine Checkbox ist m.M. nach gar nicht nötig. Sowohl das Standard-Kontaktformular als auch die Extension "Contact Admin" bieten die Möglichkeit, dem Formular einen beschreibenden Text voranzustellen. Hier könnte man z.B. so was schreiben wie
Mit dem Absenden einer Anfrage erkennen sie Unsere Datenschutzrichtlinie und unsere Nutzungsbedingungen an
Joyce&Luna hat geschrieben:Lösche dieses.

Dann sollte nur noch Email, Betreff und Text stehen.
Würde ich nicht machen. Denn dann schlägt die Prüfung im Controller fehl, weil das Feld gar nicht mehr übergeben wird. Besser wäre es, das in ein <div> mit style display:none zu packen oder den input auf type "hidden" zu setzen und anstelle der Variable {USERNAME} eine festen Text zu übergeben, wie z.B. "kein Benutzer angegeben"
Grüße, canonknipser
"there are only 10 types of people: those, who understand binary and those, who don't"
just arrived ;) - Bilder
Kein Support via PN, nur im Board und (manchmal) im IRC
Benutzeravatar
Joyce&Luna
Mitglied
Beiträge: 2478
Registriert: 24.11.2013 18:14
Wohnort: NRW
Kontaktdaten:

Re: [3.2] Kontaktformular: Pflichtfelder reduzieren gemäß DSGVO

Beitrag von Joyce&Luna »

Ja du hast da Recht.

War auch zu voreilig und habe das da oben nicht geprüft. Es funktioniert auch nicht so. :oops:
phpBB-Style-Design.de

Keine Antwort ist die eindeutigste Antwort, die man kriegen kann.
Bitte stellt die Fragen im Forum und nicht per PN. Danke!
Benutzeravatar
canonknipser
Ehemaliges Teammitglied
Beiträge: 2053
Registriert: 10.09.2011 11:14
Kontaktdaten:

Re: [3.2] Kontaktformular: Pflichtfelder reduzieren gemäß DSGVO

Beitrag von canonknipser »

Checkbox für die o.a. contactadmin-Erweiterung: https://www.phpbb.com/customise/db/exte ... 46#p635346
Grüße, canonknipser
"there are only 10 types of people: those, who understand binary and those, who don't"
just arrived ;) - Bilder
Kein Support via PN, nur im Board und (manchmal) im IRC
Antworten

Zurück zu „Support-Forum“