Schnellere Registrierung: Richtlinien/Datenschutz Checkbox

In diesem moderierten Forum werden Code-Schnipsel, die zu klein sind, um richtige Mods zu sein, abgelegt.
Snippets können über unser Kontaktformular eingereicht werden (bitte als vollständiger, Copy&Paste fähiger Beitrag).
Bei Fragen oder Problemen benutze bitte das Forum [3.0.x] Mod Support.
Forumsregeln
phpBB 3.0 hat das Ende seiner Lebenszeit überschritten
phpBB 3.0 wird nicht mehr aktiv unterstützt. Insbesondere werden - auch bei Sicherheitslücken - keine Patches mehr bereitgestellt. Der Einsatz von phpBB 3.0 erfolgt daher auf eigene Gefahr. Wir empfehlen einen Umstieg auf die neuste phpBB-Version, welches aktiv weiterentwickelt wird und für welches regelmäßig Updates zur Verfügung gestellt werden.
Antworten
Benutzeravatar
gn#36
Ehrenadmin
Beiträge: 9313
Registriert: 01.10.2006 16:20
Wohnort: Ganz in der Nähe...
Kontaktdaten:

Schnellere Registrierung: Richtlinien/Datenschutz Checkbox

Beitrag von gn#36 »

Dieses Snippet wurde uns von modernist zur Verfügung gestellt. Überarbeitet vom phpBB.de Team.

Kurzbeschreibung
Einrichten einer Abfrage im Registrierungsvorgang, die über das Registrierungsformular das Akzeptieren der Nutzungsbedingungen und der Datenschutzrichtlinie überprüft. Werden diese nicht akzeptiert, erfolgt die Ausgabe einer Fehlermeldung, der Registrierungsvorgang kann nicht erfolgreich abgeschlossen werden. Hierzu bedient sich das Snippet einer Checkbox.

Getestet in den Styles Prosilver und subsilver2 (Versionen 3.0.9 und 3.0.10). Es folgen nun zunächst die Anpassungen in der ucp_register.html als auch die Anpassungen für die deutsche Sprachausgabe in der language/de/ucp.php.

Systemänderungen
Diese Änderungen sind bei allen Styles notwendig.

ÖFFNE: includes/ucp/ucp_register.php

FINDE:

Code: Alles auswählen

		$agreed			= (!empty($_POST['agreed'])) ? 1 : 0;
ERSETZE MIT:

Code: Alles auswählen

		$agreed			= true;
FINDE:

Code: Alles auswählen

		// Check and initialize some variables if needed
		if ($submit)
		{
			$error = validate_data($data, array(
ERSETZE MIT:

Code: Alles auswählen

		// Check and initialize some variables if needed
		if ($submit)
		{
			$terms_check = request_var('terms_check', '');
			$error = validate_data($data, array(
FINDE:

Code: Alles auswählen

			// validate custom profile fields
			$cp->submit_cp_field('register', $user->get_iso_lang_id(), $cp_data, $error);
DAVOR EINFÜGEN:

Code: Alles auswählen

			if (!$terms_check == 'terms_check')
			{
				$error[] = $user->lang['TERMS_CHECKBOX'];
			}
ÖFFNE: language/de/ucp.php

FINDE:

Code: Alles auswählen

	'TIMEZONE'					=> 'Zeitzone',
DAVOR EINFÜGEN:

Code: Alles auswählen

	'TERMS_CHECK'				=> 'Ich habe die <a href="ucp.php?mode=terms">Nutzungsbedingungen</a> und die <a href="ucp.php?mode=privacy">Datenschutzrichtlinie</a> gelesen und akzeptiere diese.',
	'TERMS_CHECKBOX'			=> 'Sie müssen Nutzungsbedingungen und Datenschutzrichtlinie akzeptieren.',
	'TERMS_CONFIRMATION'		=> 'Bestätigung der Nutzungsbedingungen und Datenschutzrichtlinie',
Styles
Die jeweilige Variante einer Ausgabe in den unterschiedlichen Styles ist nachfolgend benannt. Es wird natürlich nur die Variante des jeweils vorhandenen Styles benötigt, wobei zwei Varianten für Prosilver zur Verfügung stehen.

Prosilver Variante 1
(Ausgabe laut Snippetvorschlag)
Prosilver basierendes fixes Layout, Checkbox und Text zentriert
Ergebnis:
Prosilver 1, fixes Layout, zentriert
Prosilver 1, fixes Layout, zentriert
ÖFFNE: styles/prosilver/template/ucp_register.html
FINDE:

Code: Alles auswählen

<div class="panel">
	<div class="inner"><span class="corners-top"><span></span></span>

	<h4>{L_COPPA_COMPLIANCE}</h4>

	<p>{L_COPPA_EXPLAIN}</p>
	<span class="corners-bottom"><span></span></span></div>
</div>
<!-- ENDIF -->
DANACH EINFÜGEN:

Code: Alles auswählen

	<div class="panel">
		<div class="inner"><span class="corners-top"><span></span></span>
		<h3>{L_TERMS_CONFIRMATION}</h3>
		<fieldset class="fields2">
		<dl>
			<dt style="text-align: right;"><input type="checkbox" tabindex="7" name="terms_check" id="terms_check" value="terms_check" /></dt>
			<dd><label for="terms_check">{L_TERMS_CHECK}</label></dd>
		</dl>
		</fieldset>
		<span class="corners-bottom"><span></span></span></div>
	</div>
Prosilver Variante 2:
Prosilver / Standard-Layout, Checkbox und Text linksbündig
Ergebnis:
Prosilver 2, Standard-Layout Linksbündig
Prosilver 2, Standard-Layout Linksbündig
ÖFFNE: styles/prosilver/template/ucp_register.html
FINDE:

Code: Alles auswählen

<div class="panel">
	<div class="inner"><span class="corners-top"><span></span></span>

	<h4>{L_COPPA_COMPLIANCE}</h4>

	<p>{L_COPPA_EXPLAIN}</p>
	<span class="corners-bottom"><span></span></span></div>
</div>
<!-- ENDIF -->
DANACH EINFÜGEN:

Code: Alles auswählen

	<div class="panel">
		<div class="inner"><span class="corners-top"><span></span></span>
			<h3>{L_TERMS_CONFIRMATION}</h3>
			<div>
			<div style="text-align: left; margin-top: 15px;"><input type="checkbox" tabindex="7" name="terms_check" id="terms_check" value="terms_check" /> <label for="terms_check"><span style="font-size: 11px">{L_TERMS_CHECK}</span></label></div>
			</div>
		<span class="corners-bottom"><span></span></span></div>
	</div>
subsilver2:
subsilver2 / Standard-Layout, Hinweistext sowie Checkbox und Text in der Zelle je linksbündig
Ergebnis:
Subsilver 2
Subsilver 2
ÖFFNE: styles/subsilver2/template/ucp_register.html
FINDE:

Code: Alles auswählen

<tr>
	<td class="row1"><b class="genmed">{L_TIMEZONE}: </b></td>
	<td class="row2"><select name="tz">{S_TZ_OPTIONS}</select></td>
</tr>
DANACH EINFÜGEN:

Code: Alles auswählen

	<tr>
		<td class="row1" style="text-align: left;"><b class="genmed">{L_TERMS_CONFIRMATION}: </b></td>
		<td class="row2"><input type="checkbox" tabindex="7" name="terms_check" id="terms_check" value="terms_check" /> <label for="terms_check"><span style="font-size: 10px"><strong>{L_TERMS_CHECK}</strong></span></label></td>
	</tr>

Im Anschluss bitte noch den Foren-Cache leeren und das Template aktualisieren.
Begegnungen mit dem Chaos sind fast unvermeidlich, Aber nicht katastrophal, solange man den Durchblick behält.
Übertreiben sollte man's im Forum aber nicht mit dem Chaos, denn da sollen ja andere durchblicken und nicht nur man selbst.
Antworten

Zurück zu „[3.0.x] Snippets“