[TYPO3-UG Muenster] Extensionentwicklung: "Inline"-Input im Backend programmatisch filtern

Marc Löhe marcloehe at gmail.com
Fri May 10 17:57:39 CEST 2013


Hallo zusammen,

ich habe gefühlte Ewigkeiten nach einer Antwort auf meine Frage
gesucht und bin nicht schlauer geworden, deshalb hoffe ich, dass hier
vielleicht jemand einen Wink in die richtige Richtung geben kann.

Das Setting ist eine Extension für Typo3 4.7 auf extbase-Basis. Die
Datensätze sollen über die "Listen"-Funktionen gepflegt werden,
dementsprechend konfiguriere ich entsprechende columns im TCA-Array
(bzw. lasse vom extension builder zumindestens vorkonfigurieren).
Jetzt habe ich allerdings ein Problem mit dem "Inline"-Element (s.
http://docs.typo3.org/typo3cms/TCAReference/Reference/Columns/Inline/Index.html).

Ich möchte, dass der Redakteur beim anlegen und editieren eines
Datensatzes damit verbundene Datensätze über eine Inline-Element
auswählen kann. Das funktioniert soweit auch erst mal ganz gut, jedoch
ist es für meinen use case essentiell wichtig, dass ich die Query nach
mit dem aktuellen Datensatz verbundenen Datensätzen programmatisch
einschränken kann, in Abhängigkeit z.B. davon auf welcher Unterseite
ein Datensatz angelegt wurde und welche anderen Verknüpfungen
bestehen. Die Details sind hier denke ich erst mal nicht interessant.

Weil das vielleicht etwas abstrakt ist, hier noch mal als hoffentlich
verständliches Beispiel:
Es gibt jeweils eine Tabelle für "Metzger", "Wurstsorten" und
"Wurstfachverkäufer". Einer Metzgerei können mehrere
Wurstfachverkäufer und Wurstsorten zugeordnet werden. Einem
Wurstfachverkäufer können ebenfalls Wurstsorten, für die er/sie als
Experte gilt. Die Auswahl der Wurstsorten-Fachgebiete jedes einzelnen
Wurstfachverkäufers kann im Backend aus den bereits angelegten
Wurstsorten über eine "Inline"-Element ausgesucht werden. Die
Anforderung wäre dann, dass der Redakteur einem Wurstfachverkäufer nur
Wurstsorten zuordnen kann, die auch der Metzgerei, der der
Wurstfachverkäufer zugeordnet ist, verfügbar sind.

Ich hoffe das macht den use case etwas verständlicher. Grundsätzlich
ist das m.E. ja ein alltägliches Problem, dementsprechend gehe ich
davon aus, dass ich hier über die TCA-Konfiguration etwas in die
Richtung bauen kann. In der Dokumentation habe ich dazu nichts
passendes gefunden.

Schon mal nicht weiterbringen (obwohl ich es vermutet hatte) einen
dabei die Felder:
- "foreign_selector",
- "foreign_match_fields" (kann nur eine einfach Filterung, die vorab
definiert werden muss, z.B. wenn man zwei verschiedene Relationen
["Wurstsorten", "Käsesorten"...] in einer Datenbank-Tabelle ablegt),
und
- 'filter' (geht am ehesten in die Richtung, ist aber erst in Typo3
>=6.0 zu haben und unterstützt nur das Filtern in PHP und nicht das
modifizieren der Queries, wenn ich das richtig sehe).

Jetzt die große Frage: hat jemand von euch eine Idee, wie ich meinen
use case trotzdem umsetzen könnte?

Vielen Danke schon mal für eure Mühen und bis bald,
Marc


More information about the TYPO3-UG-Muenster mailing list