Suggest Wizard im TYPO3 BE
| Autor | Nachricht |
|---|---|
|
Verfasst am: 14. 05. 2012 [18:17]
|
|
|
phafner
Themenersteller
Dabei seit: 29.11.2011
Beiträge: 7
|
Hallo zusammen, ich benutze in meiner Extension an mehreren Punkten den Suggest Wizard (Autocompletion) für ausgewählte Datensätze. Das funktioniert auch sehr gut, allerdings kann man damit nur vom Anfang an suchen. Beispiel Datensatz: Kaffeetasse Blau Suche nach: "Ka" -> Datensatz wird gefunden. Ich möchte nun auch nach "Bl" für Blau suchen. Das klappt nicht. Kann ich das im TCA / TS ändern, oder muss ich eine Custom Function dafür schreiben? Vielen Dank im Voraus. |
|
Verfasst am: 18. 05. 2012 [14:17]
|
|
|
aemka
Dabei seit: 23.07.2009
Beiträge: 339
|
Schau mal in die TCA Reference. |
|
Verfasst am: 04. 06. 2012 [12:35]
|
|
|
FabianX
Dabei seit: 25.01.2011
Beiträge: 101
|
Ich hatte es im TCA Reference auch nicht gefunden. http://typo3.org/documentation/document-library/core-documentation/doc_core_tca/4.7.1/view/1/4/#id591512 'suggest' => array( 'type' => 'suggest', 'maxItemsInResultList' => 25, 'default' => array( 'searchWholePhrase' => 1 ), ), Der Code muss im TCA unter wizards eingefügt werden. Jetzt hab ich aber das Problem das er alle Sprachen durchsucht und nicht nur die des aktuellen Datensatz. Hatte die Liste zuvor mit folgendem Code auf die derzeitige Sprache eingeschränkt: 'foreign_table_where' => 'AND (tx_beispiel.sys_language_uid = ###REC_FIELD_sys_language_uid### OR tx_beispiel.sys_language_uid = -1)', Leider findet der Suggest Wizard dann gar keine Datensätze mehr. Hat jemand eine Idee ? [Dieser Beitrag wurde 1mal bearbeitet, zuletzt am 04.06.2012 um 12:39.] |
|
Verfasst am: 04. 06. 2012 [14:50]
|
|
|
FabianX
Dabei seit: 25.01.2011
Beiträge: 101
|
Bin die Core Dokumentation nochmal durchgegangen. Über TS kann man über searchCondition weitere where Abfragen setzten. So kann ich mir zum Beispiel nur die Datensätze einer bestimmten Sprache anzeigen lassen. TCEFORM.suggest.default.searchCondition = sys_language_uid = 0 Aber wie kann man hier die gleiche Abfrage wie oben einbauen, sodass nur die Sprache des aktuell ausgewählten Datensatz angezeigt wird ? Ich hab es so versucht und in vielen anderen schreibweisen aber ich vermute eine "OR" Verknüpfung ist hier nicht möglich. Oder kann nicht auf ###REC_FIELD_sys_language_uid### zugegriffen werden ? TCEFORM.suggest.default { searchWholePhrase = 1 searchCondition = sys_language_uid = ###REC_FIELD_sys_language_uid### OR sys_language_uid = -1 } [Dieser Beitrag wurde 1mal bearbeitet, zuletzt am 04.06.2012 um 14:51.] |
|
Verfasst am: 06. 07. 2012 [16:53]
|
|
|
FabianX
Dabei seit: 25.01.2011
Beiträge: 101
|
Leider stehe ich immer noch vor dem Problem. Es muss doch irgendwie möglich sein auch mit dem suggest wizard nur Datensätze zu durchsuchen, welche der Sprache es aktuell gewählten Datensatzes entsprechen. über 'foreign_table_where' => 'AND (tx_.sys_language_uid = 0 OR tx_.sys_language_uid = -1)', kann man die suche auf eine Sprache beschränken und der wizard funktioniert auch. Alternativ kann man auch über 'suggest' => array( 'type' => 'suggest', 'default' => array( 'searchWholePhrase' => 1, 'searchCondition' => 'sys_language_uid=0' ) ), die gewünschte Sprache einstellen. Aber es geht einfach nicht mit sys_language_uid = ###REC_FIELD_sys_language_uid### , wie kann ich also die language_uid abhängig von der Sprache des gewählten Datensatz einstellen ? Der suggest wizard ist bei einer mehrsprachigen Extension die viele Datensätze verwalten soll somit im Prinzip nutzlos, da muss es doch eine Lösung geben Bin am verzweifeln und für jede Hilfe dankbar. |
|
Verfasst am: 22. 10. 2012 [17:58]
|
|
|
FabianX
Dabei seit: 25.01.2011
Beiträge: 101
|
Ich habe das Problem immer noch Hat tatsächlich niemand eine Idee ? |
|
Verfasst am: 26. 10. 2012 [15:45]
|
|
|
FabianX
Dabei seit: 25.01.2011
Beiträge: 101
|
Mittlerweile habe ich herausgefunden das es nicht möglich ist http://forge.typo3.org/issues/40681 |



