[Frage] Mehrsprachigkeit und selectMultipleSideBySide [Gelöst] TYPO3-Version: 10.4.24

  • s_reinecke s_reineck...
    Padawan
    0 x
    39 Beiträge
    1 Hilfreiche Beiträge
    31. 05. 2022, 10:17

    Hallo!

    Ich habe ein einfache Extension, wo man einem Datensatz (Cards) mehrere Filter zuweisen kann. Da es zweisprachig ist, möchte ich natürlich, dass im Backend diese Filter auch in der entsprechenden Sprache angezeigt werden und nicht alle. Genau da liegt mein Problem.

    Hier ist der Ausschnitt aus meinem TCA des Hauptdatensatzes (Cards):
    [code]'filter1' => [
    'exclude' => true,
    'label' => 'LLL:EXT:quickreferencecards/Resources/Private/Language/locallang_db.xlf:tx_quickreferencecards_domain_model_cards.filter1',
    'config' => [
    'type' => 'select',
    'renderType' => 'selectMultipleSideBySide',
    'foreign_table' => 'tx_quickreferencecards_domain_model_filter1',
    'foreign_table_where' => ' AND tx_quickreferencecards_domain_model_filter1.sys_language_uid IN (-1, 0)',
    'default' => 0,
    'size' => 10,
    'autoSizeMax' => 30,
    'maxitems' => 9999,
    'multiple' => 0,
    'fieldControl' => [
    'editPopup' => [
    'disabled' => false,
    ],
    'addRecord' => [
    'disabled' => false,
    ],
    'listModule' => [
    'disabled' => true,
    ],
    ],
    ],

    ]
    [/code]

    Das mit dem "foreign_table_where" funktioniert so nicht, es werden nur die deutschen Filter angezeigt. Wenn ich die Zeile weglasse, werden alle (de + en) angezeigt.

    Weiß jemand, was hier noch fehlt?

    Danke und Grüße,
    Stephan

  • s_reinecke s_reineck...
    Padawan
    0 x
    39 Beiträge
    1 Hilfreiche Beiträge
    31. 05. 2022, 11:56 - Lösung

    Ich hab die Lösung gefunden:
    Bei foreign_table_where muss ich die sys_language_uid mit ###REC_FIELD_sys_language_uid### vergleichen, also in meinem Fall
    [code]'foreign_table_where' => ' AND tx_quickreferencecards_domain_model_filter4.sys_language_uid = ###REC_FIELD_sys_language_uid###',[/code]


  • 1
  • s_reinecke s_reineck...
    Padawan
    0 x
    39 Beiträge
    1 Hilfreiche Beiträge
    31. 05. 2022, 11:56

    Ich hab die Lösung gefunden:
    Bei foreign_table_where muss ich die sys_language_uid mit ###REC_FIELD_sys_language_uid### vergleichen, also in meinem Fall
    [code]'foreign_table_where' => ' AND tx_quickreferencecards_domain_model_filter4.sys_language_uid = ###REC_FIELD_sys_language_uid###',[/code]

  • 1