Hallo,
ich suche jetzt schon einige Zeit hier im Forum und in weltweiten Web.
Ich habe das sr_feuser_register um ein paar Felder erweitert.
Also per Extension Kickartert vier Felder in fe_user eingetragen und das Template angepasst.
Das Anzeigen klappt so weit auch. Aber ich scheitere an der Validierung einer CheckBox für die AGB.
Das Feld fuer die AGB ist eine Checkbox Feld: "tx_bobregister_agb"
Bei der Registrierung muss diese akrtiviert sein, damit man sich registrieren kann.
Im TS Setup habe ich nun mit verschiedenen evalValues herumgetestet:
Das sieht im Prinzip so aus:
plugin.tx_srfeuserregister_pi1.create.evalValues.tx_bobregister_agb = atLeast[???]
Kann man für eine CheckBox eine Validierungsregel angeben und wenn ja wie?
Grüße,
Ralph
<!-- ###SUB_INCLUDED_FIELD_tx_bobregister_agb### -->
<dt>
<label for="tx-srfeuserregister-pi1-tx_bobregister_agb">###LABEL_TX_BOBREGISTER_AGB### ###REQUIRED_TX_BOBREGISTER_AGB###</label>
</dt>
<dd>
<!-- ###SUB_REQUIRED_FIELD_tx_bobregister_agb### -->
<p class="tx-srfeuserregister-pi1-error">###MISSING_TX_BOBREGISTER_AGB###</p>
<!-- ###SUB_REQUIRED_FIELD_tx_bobregister_agb### -->
<input id="tx-srfeuserregister-pi1-tx_bobregister_agb" type="checkbox" name="FE[fe_users][tx_bobregister_agb]" value="1" class="tx-srfeuserregister-pi1-checkbox" />
</dd>
<!-- ###SUB_INCLUDED_FIELD_tx_bobregister_agb### -->
contentXXS schrieb
Kann man für eine CheckBox eine Validierungsregel angeben und wenn ja wie?
Lösung selbst gefunden:
plugin.tx_srfeuserregister_pi1.create.parseValues.tx_bobregister_agb = setEmptyIfAbsent
plugin.tx_srfeuserregister_pi1._LOCAL_LANG.de.missing_tx_bobregister_agb = Sie müssen den AGB zustimmen.
plugin.tx_srfeuserregister_pi1._LOCAL_LANG.en.missing_tx_bobregister_agb = You must accept our terms & conditions
plugin.tx_srfeuserregister_pi1.create.evalValues.tx_bobregister_agb = atLeast[1]
hallo contentXXS und an alle anderen,
ich habe genau das selbe problem. habe es auch wie du gemacht aber bei mir klappt es einfach nicht mit der Validierung 🙁
Kannst du oder ein anderer mir weiterhelfen???
Folgendes hab ich gemacht:
1. hab eine neue Extension angelegt, die in die FE-user Tabelle 4 zusätzl. Spalten hinzufügt.
`herkunft` varchar(50) collate utf8_unicode_ci NOT NULL default '',
`agb_accepted` tinyint(3) NOT NULL default '0',
`ideen_pool` tinyint(3) NOT NULL default '0',
`ideen_pool_date` int(11) NOT NULL default '0',
-> hat wunderbar geklappt.
2. habe das Template wie folgt angepasst:
<!-- ###SUB_INCLUDED_FIELD_agb_accepted### -->
<dt>
<!-- <label for="tx-srfeuserregister-pi1-agb_accepted">###LABEL_AGB_TEXT###<a name="agb"></a></label> -->
<label for="tx-srfeuserregister-pi1-agb_accepted">###LABEL_AGB_TEXT### ###REQUIRED_AGB_ACCEPTED###</label>
</dt>
<dd>
<!-- ###SUB_ERROR_FIELD_agb_accepted### -->
<p class="tx-srfeuserregister-pi1-error">###EVAL_ERROR_FIELD_agb_accepted###</p>
<!-- ###SUB_ERROR_FIELD_agb_accepted### -->
<!-- ###SUB_REQUIRED_FIELD_agb_accepted### -->
<p class="tx-srfeuserregister-pi1-error">###MISSING_AGB_ACCEPTED###</p>
<!-- ###SUB_REQUIRED_FIELD_agb_accepted### -->
<input type="checkbox" class="tx-srfeuserregister-pi1-checkbox" name="FE[fe_users][agb_accepted]" value="1" id="tx-srfeuserregister-pi1-agb_accepted" />###LABEL_ACCEPT_AGB###
</dd>
<!-- ###SUB_INCLUDED_FIELD_agb_accepted### -->
3. habe in die lacallang.xml folgende zeilen hinzugefügt:
<label index="accept_agb">DSB akzeptieren</label>
<label index="agb_text">Unsere strengen Datenschutzbestimmungen gewährleisten den Schutz Ihrer Daten. Bitte bestätigen Sie, dass diese von Ihnen gelesen und akzeptiert wurden.</label>
<label index="evalErrors_agb_accepted">Für die Registrierung ist es notwendig unsere DBS zu akzeptieren.</label>
<label index="missing_agb_accepted">Für die Registrierung ist es notwendig unsere DBS zu akzeptieren.</label>
4. und dann, wie du, folgende Zeilen in das TS:
plugin.tx_srfeuserregister_pi1 {
...
# AGB Validierung
create.parseValues.agb_accepted = setEmptyIfAbsent
_LOCAL_LANG.de.missing_tx_bobregister_agb = Sie müssen den AGB zustimmen.
_LOCAL_LANG.en.missing_tx_bobregister_agb = You must accept our terms & conditions
create.evalValues.agb_accepted = atLeast[1]
...
}
Hi,
ich habe genau das gleiche Problem. Meine Checkbox für AGBs hat immer wunderbar funktioniert - nur jetzt mit Typo3 4.1.6 und sr_feuser_register 2.5.9 nicht mehr.
Es scheint so, als würde die Regel
plugin.tx_srfeuserregister_pi1.create.evalValues.meine_extension_agb=atLeast[1]
ignoriert werden....
Jemand eine Idee???
Danke
Norman
Hi!
versuche es mal mit:
plugin.tx_srfeuserregister_pi1.create.evalValues.meine_extension_agb = required
Erstmal danke für diesen Thread...er hat mir sehr geholfen.
Allerdings staune ich immer wieder darüber woher ihr wisst, dass "required" die Lösung ist. In der Configuration steht doch nur "Array of Strings". Heißt: Ich kann da auch "hallo" oder "temp_sf_irgendwas" reinschreiben.
Von meiner Seite aus ist die Doku dort falsch und müsste heißen: "Array of eval-codes->". Dann wüsst man direkt dass es ein weiteres Objekt mit diesen Eigenschaften gibt und könnte danach suchen...und dann findet man auch diese Seite hier:
https://docs.typo3.org/m/typo3/reference-typoscript/main/en-us/Index.html
Jetzt wo ich weiß, dass diese codes in der adminlib enthalten sind, habe ich diese auch in der 4.2.0er Version gefunden:
https://docs.typo3.org/m/typo3/reference-typoscript/main/en-us/Index.html
Nur leider ist diese Doku völlig anders aufgebaut und so findet man "eval" nicht mehr im Inhaltsverzeichnis und "muss wissen", dass diese sich in adminlib befinden.
froemken