Zum Inhalt springen

userFunc parameter mitgeben

Erstellt am 26. Juli 2012 · Noch keine Antworten

Tags: Frage

Sassar ·

Hallo Liebe Community,

nach nun ewiger suche und Ratlosigkeit wende ich mich nun an euch und hoffe das vielleicht einer von euch mir helfen kann 🙂

Zu meinen Problem.

Ich habe ein Seite wo mehrere Marker generiert werden. Diese werden auf der ersten Seite gelistet. Für weitere Informationen kann man auf die Seite 2 drücken und dort nähere Informationen übere einen Eintrag erhalten. Funktioniert alles wunder bar.

Da aber der Marker link zur Detailseite nicht Typo3 Conform ist möchte ich diese gern nun richtig stellen.

Dabei greife ich auf die UserFunc drauf zu. Ich möchte meiner UserFunc die Uid des Markers übergeben. und daraus soll dann mit entsprechenden schlüsseln und prüfungen ein Link generiert werden.

Das klappt auch alles soweit.

Das einzigste Problem an der ganzen sache ist. Das die übergebene uid nicht der uid des Elements entspricht sondern der aktuellen Seite.

Strucktur :
- Town (Page)
--- Marker (Page) (uid 110)
--- List (Page) (uid 112)
--- Elements (Folder) (uid 114)
------> Element 1 (uid 490)
------> Element 2 (uid 586)
------> ...

TS :

includeLibs.test = uploads/class.tb_savemaplink_link.inc.php 

myVar = TEXT
myVar.field = uid

InfoBox = COA
InfoBox {
  stdWrap.cObject = COA
  stdWrap.cObject{
    5 = TEXT
    5.stdWrap.field = uid
    10 = TEXT
    10.value = <div class="infobox-header"><h1>
    12 = USER
    12{    
      value < myVar
      userFunc = user_test->main
      userFunc{
        marker_id = TEXT
        marker_id.field = uid
      }
    
    50 = TEXT
    50.value = </div>
  }
}

class.tb_savemaplink_link.inc.php :

<?
class user_test {
var $cObj;

	function main($content,$conf){
		require_once(PATH_tslib.'class.tslib_pibase.php');
		global $TSFE;
		$local_cObj = $TSFE->cObj; 
		$conf = $conf['userFunc.']; 
		$marker_id = $local_cObj->cObjGetSingle($conf['marker_id'], $conf['marker_id.']); 
		return $marker_id;
	}
}
?>

wenn ich nun die Seite Marker aufrufe bekomme ich in meinen Text für

...
5 = TEXT
5.stdWrap.field = uid
...

die uid 490, 586, usw angezeigt für den jeweiligen marker
die uid die von der userFunc kommt jedoch erhalte ich als ausgabe
110,110, 110, usw.

hoffe man hat mich verstanden und könnt mir helfen.
wenn es ne lösung gibt ist es betimmt ne kleinigkeit wo ich mom net drauf komme. xD

Schon mal danke im vorraus