[Frage] sr_feunser_register terms_acknowledged required funktioniert nicht TYPO3-Version: 6.1.7

  • harp harp
    Jedi-Ritter
    0 x
    101 Beiträge
    0 Hilfreiche Beiträge
    22. 06. 2014, 20:13

    Hallo, ich bin am verzweifeln. Das Feld "terms_acknowledged" kann ich in sr_feuser_register (3.1.2) zwar als Pflichtfeld eintragen aber die Abfrage funktioniert nicht.

    Ich habe wie hier beschrieben [url]http://www.typo3.net/forum/thematik/zeige/thema/110481/[/url] im Setup eingetragen:

    1. plugin.tx_srfeuserregister_pi1.create.evalValues.terms_acknowledged = required

    Was mache ich falsch

  • Hilfreichster Beitrag

  • smilecloud smileclou...
    Padawan
    1 x
    51 Beiträge
    1 Hilfreiche Beiträge
    21. 07. 2014, 18:05 - Hilfreichster Beitrag

    Hallo harp,

    leider wird das Feld terms_acknowledged von der Extension auf '0' initialisiert, und der Wert '0' wird beim prüfen auf required übersprungen. Aus meiner Sicht ein Bug.

    Workaround:

    Die Konstante [b]plugin.tx_srfeuserregister_pi1.requiredFields[/b] muss [b]terms_acknowledged[/b] enthalten.

    TS-Setup:

    1. plugin.tx_srfeuserregister_pi1.create.evalValues.terms_acknowledged = hook

    Dann eine Hook-Klasse anlegen. Inhalt:

    1. <?php
    2.  
    3. class sr_feuser_register_hooks {
    4.  
    5.  
    6. function evalValues($theTable, $dataArray, $origArray, $markContentArray, $cmdKey, $requiredArray, $theField, $cmdParts, $bInternal, $test, $obj) {
    7. if ($theTable != 'fe_users') return;
    8. if ($theField != 'terms_acknowledged') return;
    9.  
    10. if ($dataArray['terms_acknowledged'] != '1') return 'terms_acknowledged';
    11. }
    12. }
    13.  
    14. ?>

    Diese noch registrieren (z.B. in der ext_tables.php einer eigenen Extension):

    1. $TYPO3_CONF_VARS['EXTCONF']['sr_feuser_register']['tx_srfeuserregister_pi1']['model'][] = 'EXT:gymtotal/Userscripts/sr_feuserregister_hooks.php:&sr_feuser_register_hooks';

    Das hat bei mir geholfen.

    Grüße,
    Peter Rauber


  • 1
  • smilecloud smileclou...
    Padawan
    1 x
    51 Beiträge
    1 Hilfreiche Beiträge
    21. 07. 2014, 18:05

    Hallo harp,

    leider wird das Feld terms_acknowledged von der Extension auf '0' initialisiert, und der Wert '0' wird beim prüfen auf required übersprungen. Aus meiner Sicht ein Bug.

    Workaround:

    Die Konstante [b]plugin.tx_srfeuserregister_pi1.requiredFields[/b] muss [b]terms_acknowledged[/b] enthalten.

    TS-Setup:

    1. plugin.tx_srfeuserregister_pi1.create.evalValues.terms_acknowledged = hook

    Dann eine Hook-Klasse anlegen. Inhalt:

    1. <?php
    2.  
    3. class sr_feuser_register_hooks {
    4.  
    5.  
    6. function evalValues($theTable, $dataArray, $origArray, $markContentArray, $cmdKey, $requiredArray, $theField, $cmdParts, $bInternal, $test, $obj) {
    7. if ($theTable != 'fe_users') return;
    8. if ($theField != 'terms_acknowledged') return;
    9.  
    10. if ($dataArray['terms_acknowledged'] != '1') return 'terms_acknowledged';
    11. }
    12. }
    13.  
    14. ?>

    Diese noch registrieren (z.B. in der ext_tables.php einer eigenen Extension):

    1. $TYPO3_CONF_VARS['EXTCONF']['sr_feuser_register']['tx_srfeuserregister_pi1']['model'][] = 'EXT:gymtotal/Userscripts/sr_feuserregister_hooks.php:&sr_feuser_register_hooks';

    Das hat bei mir geholfen.

    Grüße,
    Peter Rauber

  • harp harp
    Jedi-Ritter
    0 x
    101 Beiträge
    0 Hilfreiche Beiträge
    22. 07. 2014, 14:03

    Hallo Peter,

    danke für die Antwort. Ich dachte schon, ich verliere den Verstand. Es kann aber doch nicht sein, dass ein Extension-Eigenes Feld so einen Aufwand erfordert?! Ich schau mal, ob ich den/die Entwickler mal zu einem Fix bewegen kann.

    LG
    HarP

  • harp harp
    Jedi-Ritter
    0 x
    101 Beiträge
    0 Hilfreiche Beiträge
    22. 07. 2014, 14:22

    Wies halt dann immer so ist: ich hab die einfachste Lösung dann doch im Forge gefunden, und zwar hier: [url]https://forge.typo3.org/issues/60167[/url]

    Folgendes ins TS-Stup eintragen:

    1. plugin.tx_srfeuserregister_pi1.parseValues.terms_acknowledged = int
    2. plugin.tx_srfeuserregister_pi1.create.evalValues.terms_acknowledged = required

    Dann erscheinen zwei Fehlermeldungen, aber man kann dann entweder den ganzen Teil <!-- ###SUB_ERROR_FIELD... oder <!-- ###SUB_REQUIRED_FIELD... aus dem Template schmeissen. Dann gehts :)

    LG
    HarP

  • 1