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;
Code: Alles auswählen
$agreed = true;
Code: Alles auswählen
// Check and initialize some variables if needed
if ($submit)
{
$error = validate_data($data, array(
Code: Alles auswählen
// Check and initialize some variables if needed
if ($submit)
{
$terms_check = request_var('terms_check', '');
$error = validate_data($data, array(
Code: Alles auswählen
// validate custom profile fields
$cp->submit_cp_field('register', $user->get_iso_lang_id(), $cp_data, $error);
Code: Alles auswählen
if (!$terms_check == 'terms_check')
{
$error[] = $user->lang['TERMS_CHECKBOX'];
}
FINDE:
Code: Alles auswählen
'TIMEZONE' => 'Zeitzone',
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',
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: Ö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 -->
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 / Standard-Layout, Checkbox und Text linksbündig
Ergebnis: Ö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 -->
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 / Standard-Layout, Hinweistext sowie Checkbox und Text in der Zelle je linksbündig
Ergebnis: Ö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>
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.