Zum Inhalt springen

Dynamischen Wert an UserFunc übergeben

Erstellt am 10. März 2012 · 2 Antworten · letzte Antwort am 26. April 2012

Tags: Extbase, Inhaltselemente, Frage

guinness1 ·

Hallo zusammen

Ich stehe vor folgendem Problem:

Ich habe tt_content um ein Feld (checkbox) erweitert. Wenn die Checkbox aktiviert wird, soll an das entsprechende Content Element ein Extbase-Plugin hinzugefügt werden. So weit so gut. Jetzt das Problem:

Wie kann ich der Plugin-Konfiguration einen dynamischen Wert mitgeben? Beim Rendern der Content-Elemente kann ich ja mit {field:uid} auf die ID des Datensatzes zugreifen, doch wie kann ich diesen Wert einem USER-Objekt mitgeben?

Vielen Dank im voraus für die Hilfestellungen... 😃

Hier mein Typoscript:

tt_content.stdWrap.innerWrap2.cObject = COA
tt_content.stdWrap.innerWrap2.fieldRequired = hascomment
tt_content.stdWrap.innerWrap2.cObject {

 1 = TEXT
 1.insertData = 1
 1.data = {field:uid}

 10 = TEXT
 10.value = |

 20 = USER
 20 {  
  userFunc = tx_extbase_core_bootstrap->run
  pluginName = Pi1
  extensionName = PnContentcomments
  controller = Comment
  action = list
  switchableControllerActions {
    Comment {
      1 = list
    }
  }
  settings =< plugin.tx_pncontentcomments.settings
# hier sollte die ID des Datensatzes rein  
  settings.contentid < 1
 }

}

Wenn ich in der Extension $this->settings['contentid'] abfrage, bekomme ich nur "{field:uid}"...

stefan.​binder ·

hab da eine schöne Anleitung gefunden, aber ääätsch ich verat nix!!

http://typo3blogger.de/mit-typoscript-am-ende-userfunc-hilft/

includeLibs.userFunc = fileadmin/scripts/dmailCatFunc.inc
5 = USER
5.userFunc = user_dmailCatFunc->dmailCategories
5.userFunc {
  user_id = TEXT
  user_id.data = TSFE:fe_user|user|uid
}
function dmailCategories($content,$conf) {
        global $TSFE;
        $local_cObj = $TSFE->cObj;
        
        $conf = $conf['userFunc.'];
        
        $uid = $local_cObj->cObjGetSingle($conf['user_id'], $conf['user_id.']); // stdWrap for title        
        
        $content .= "UID: ".$uid;
}