Zum Inhalt springen

sr_feuser_register - Feld "recordType" beim Anlegen eines Datensatzes belegen

Erstellt am 12. Dezember 2011 · 2 Antworten · letzte Antwort am 22. Dezember 2011

Tags: Extbase, Frontend-Benutzer, Frage

tobla ·

Hallo Zusammen

Wir haben eine Extbase Extension geschrieben, die die feuser Tabelle verwendet. Damit die Extension feuser mappen kann, muss das Feld "recordType" mit "Tx_Extbase_Domain_Model_FrontendUser" belegt sein.

Ich hab das schon mal bei irgend einer andern Extension gesehen, dass Tabellenfelder beim Anlegen von Datensätzen mit TS belegt wurden.
Wie kann ich mit Typoscript definieren, dass beim Anlegen des neuen feuser-Datensatzes das Feld "recordType" mit "Tx_Extbase_Domain_Model_FrontendUser" belegt wird?

Nur für so was kleines fände ich es etwas übertrieben, die im feuser Manual beschriebenen Lösung für zusätzliche Felder zu wählen und von feuser zu erben um eine eigene Extension zu schreiben. Dann kann ich auch direkt mit Extbase eine eigene feuser Lösung schreiben.

tobla ·
tobla schrieb

Ich hab das schon mal bei irgend einer andern Extension gesehen, dass Tabellenfelder beim Anlegen von Datensätzen mit TS belegt wurden.

Ich habe herausgefunden, welche Extension dies war: Direct Mail Subscribtion

plugin.feadmin.dmailsubscription.create.overrideValues.module_sys_dmail_html = 1
plugin.feadmin.dmailsubscription.create.overrideValues.module_sys_dmail_category = 1

Leider sieht diese eher nach einer Extensionspezifischen Funktion und nicht einer generellen Typo3 Funktionalität aus. Es ist jedoch genau das, was ich suche, nur für feuser_register.

tobla ·

Ich hab die Lösung gefunden:

Wie im feuser_register Tutorial beschrieben eine neue, "leere" Extension anlegen. In die ext_localconf.php folgendes eintragen:

<?php
if (TYPO3_MODE=='FE'){
	$GLOBALS['TYPO3_CONF_VARS']['EXTCONF']['sr_feuser_register']['extendingTCA'][] = 'extbase';
}
?>

Bei den Typoscript Constanten das Feld ergänzen:

plugin.tx_srfeuserregister_pi1.formFields = username,...,tx_extbase_type

Im Typoscript Setup folgendes eintragen:

plugin.tx_srfeuserregister_pi1.create.overrideValues.tx_extbase_type = Tx_Extbase_Domain_Model_FrontendUser
plugin.tx_srfeuserregister_pi1.create.defaultValues.tx_extbase_type = Tx_Extbase_Domain_Model_FrontendUser

Quelle feuser_tut: http://typo3.org/documentation/document-library/extension-manuals/sr_feuser_register/2.6.1/view/1/5/
Quelle ext_localconf.php: http://lists.typo3.org/pipermail/typo3-project-typo3v4mvc/2011-January/007876.html