[Frage] sr_feuser_register Marker für radio-button greift nicht. TYPO3-Version: 4.7.12

  • romihue romihue
    R2-D2
    0 x
    64 Beiträge
    0 Hilfreiche Beiträge
    09. 12. 2013, 21:19

    Hallo,

    Ich habe meine sr_feuser_register erweitert wie in den Tutorials per extension und funktioniert auch soweit. Allerdings will der TCA INPUT nicht greifen für radiobuttons.
    Ist doch richtig, oder?:
    Im Template:
    Code:

    1. <!-- ###SUB_INCLUDED_FIELD_tx_feuserextrafields_esc_graduacao### -->
    2. <dt>
    3. <label for="tx-srfeuserregister-pi1-tx_feuserextrafields_esc_graduacao">###LABEL_TX_FEUSEREXTRAFIELDS_ESC_GRADUACAO### ###REQUIRED_TX_FEUSEREXTRAFIELDS_ESC_GRADUACAO###</label>
    4. </dt>
    5. <dd>
    6. <!-- ###SUB_ERROR_FIELD_TX_FEUSEREXTRAFIELDS_ESC_GRADUACAO### -->
    7. <!-- ###SUB_ERROR_FIELD_TX_FEUSEREXTRAFIELDS_ESC_GRADUACAO### -->
    8. <!-- ###SUB_REQUIRED_FIELD_TX_FEUSEREXTRAFIELDS_ESC_GRADUACAO### -->
    9. <!--<p class="tx-srfeuserregister-pi1-error">###MISSING_TX_FEUSEREXTRAFIELDS_ESC_GRADUACAO###</p>-->
    10. <!--<input id="tx-srfeuserregister-pi1-tx_feuserextrafields_esc_graduacao" type="text" class="tx-srfeuserregister-pi1-text" size="40" maxlength="50" title="###TOOLTIP_TX_FEUSEREXTRAFIELDS_ESC_GRADUACAO###" name="###NAME_TX_FEUSEREXTRAFIELDS_ESC_GRADUACAO###" />-->
    11. ###TCA_INPUT_tx_feuserextrafields_esc_graduacao###
    12. </dd>
    13. <!-- ###SUB_INCLUDED_FIELD_ltx_feuserextrafields_esc_graduacao### -->

    wobei der letzte Teil klein geschrieben wird. Das Label dafür erscheint.
    esc_graduacao heißt das Feld und ist auch angelegt. In der ext_localconfig.php hat der Kickstarter schon
    Code:

    1. $GLOBALS['TYPO3_CONF_VARS']['EXTCONF']['sr_feuser_register']['extendingTCA'][] = 'feuserextrafields';

    angelegt
    und in der ext_table.php hab ich das hier:
    Code:
    1. 'tx_feuserextrafields_esc_graduacao' => array(
    2. 'exclude' => 0,
    3. 'label' => 'LLL:EXT:feuserextrafields/locallang_db.xml:fe_users.tx_feuserextrafields_esc_graduacao',
    4. 'config' => array(
    5. 'type' => 'radio',
    6. 'items' => array(
    7. array('LLL:EXT:feuserextrafields/locallang_db.xml:fe_users.tx_feuserextrafields_esc_graduacao.I.0', 'Sim'),
    8. array('LLL:EXT:feuserextrafields/locallang_db.xml:fe_users.tx_feuserextrafields_esc_graduacao.I.1', 'Não'),
    9. ),
    10. )
    11. ),

    Nach einigem Suchen scheint mir alles richtig, aber trotzdem erscheinen die radiobuttons überhaupt nicht. Im quelltext erscheint aich nichts, nur das Label. Auch erscheinen die normalen Inputfelder. In MySql ist das Feld als Int angelegt.
    Was mach ich falsch?

    Wäre super wenn jemand eine Idee hat.

    VG roman


  • 1
  • rfehling rfehling
    Padawan
    0 x
    44 Beiträge
    3 Hilfreiche Beiträge
    11. 12. 2013, 17:49

    [OffTopic]Ich habe mal eben die Codeblöcke oben editiert, da es sonst kaum zu lesen war, da jede einzele Zeile ein Codeblock selbst war.
    [/OffTopic]

  • romihue romihue
    R2-D2
    0 x
    64 Beiträge
    0 Hilfreiche Beiträge
    30. 12. 2013, 12:47

    Danke,

    Aber eine Idee hast du nicht wegen dem problem?

  • rfehling rfehling
    Padawan
    0 x
    44 Beiträge
    3 Hilfreiche Beiträge
    09. 01. 2014, 16:11

    Leider nein.

    Wir hatten für das Typo3.net Projekt auch auf die Extention sr_feuser_register gesetzt.

    Unsere Syntax sah auch so ähnlich wie deine aus.

    ext_tables.php

    1. $addColumnArray = Array(
    2. [...]
    3. 'gender' => Array (
    4. 'exclude' => 0,
    5. 'label' => 'LLL:EXT:sr_feuser_register/locallang_db.xml:fe_users.gender',
    6. 'config' => Array (
    7. 'type' => 'radio',
    8. 'items' => Array (
    9. Array('LLL:EXT:sr_feuser_register/locallang_db.xml:fe_users.gender.I.99', '99'),
    10. Array('LLL:EXT:sr_feuser_register/locallang_db.xml:fe_users.gender.I.0', '0'),
    11. Array('LLL:EXT:sr_feuser_register/locallang_db.xml:fe_users.gender.I.1', '1')
    12. ),
    13. )
    14. ),
    15. );
    16. t3lib_extMgm::addTCAcolumns('fe_users', $addColumnArray);

    Was dir helfen sollte den Fehler zu finden ist denke ich in der [b]class.tx_srfeuserregister_marker.php[/b] in der Funktion addLabelMarkers().

    1. $label = preg_replace_callback('/{([a-z_]+):([a-zA-Z0-9_]+)}/', array(&$this, 'replaceVariables'), $label);
    2. $markerkey = $this->cObj->caseshift($value, 'upper');
    3. $markerArray['###LABEL_' . $markerkey . '###'] = $label;

    Ich würde dir raten, einmal [b]$markerkey[/b] auszugeben, um zu schauen, welchen Marker er versucht zu ersetzen. Vielleicht hat sich hier nur ein Zeichen versetzt, oder so ein ähnlicher Fehler :)

    Gruß,
    Ruven

  • romihue romihue
    R2-D2
    0 x
    64 Beiträge
    0 Hilfreiche Beiträge
    13. 01. 2014, 17:30

    Hallo Ruven,

    Hat inzwischen funktioniert. Lag an der extension für extrfields. Hab eine älter von einem Kollegen benutzt und voilá hat ohne probleme funktioniert.

    Gruß
    Romihue

  • 1