Mittwald CM Service: TYPO3-Hosting, TYPO3-Schulungen, Agenturpakete, Managed-Server
Optimiertes TYPO3 Hosting von Mittwald CM Service

userFunc in Conditions

Autor Nachricht
Verfasst am: 05.02.2010 [15:03]
spectator

[Themenersteller]
dabei seit: 23.10.2009
Beiträge: 7

Also ich habe Folgendes vor und zwar entwickel ich gerade eine Extension womit ich diverse informationen über ein mobiles endgerät abfragen kann und diese dann verarbeiten kann. Soweit alles kein problem z.b.

Typoscript:Zeilennummerierung:  An / Aus

  1. [userFunc = user_is_wireless()]
  2. #hier mobile code rein....
  3. [end]


Funktioniert ohne probleme. Allerdings bei sowas zum beispiel

Typoscript:Zeilennummerierung:  An / Aus

  1. [userFunc =  user_get_capability(resolution_width) = 320]
  2. page.1 = IMAGE
  3. page.1.file=GIFBUILDER
  4. page.1.file{
  5.   format=png
  6.   XY=320 , 50
  7.   backColor=#5000af
  8. }
  9. [end]
gibt es probleme Irgendwie funktioniert die Condition nicht den die Funktion gibt definitiv 320 zurück Also gehe ich mal davon aus das ich nur Bool werte nutzen kann.

Gibt es den irgendwie eine möglichkeit folgedes umzusetzen ?

Typoscript:Zeilennummerierung:  An / Aus

  1. [userFunc = user_is_wireless()]
  2. page.1 = IMAGE
  3. page.1.file=GIFBUILDER
  4. page.1.file{
  5.   format=png
  6.   XY=(Hier der Funktions aufruf) , 50
  7.   backColor=#5000af
  8. }
  9. [end]

Grundsätzlich würde ich dann hier nur noch abfragen ob es sich um ein mobiles endgerät handelt und dann die breite des bildes z.b. durch eine funktion abfrage.
Verfasst am: 05.02.2010 [16:16]
GoSnA

dabei seit: 18.01.2010
Beiträge: 21

Also ich habs nicht getestet, aber einige vermutungen von mir:

1. die Condition [userfunc ...] ist nur Wahr oder Falsch zu setzen.

Probiere mal folgende dinge:

Typoscript:Zeilennummerierung:  An / Aus

  1. temp.XY = USER
  2. temp.XY.userFunc = tx_erweiterung_pi1->getSize
  3.  
  4. page.1 = IMAGE
  5. page.1.file = GIFBUILDER
  6. page.1.file {
  7.   format=png
  8.   XY < temp.XY
  9.   backColor=#5000af
  10. }


getSize sollte dann 'X,Y' zurück geben...

Ansonsten vielleicht einfach nur

Typoscript:Zeilennummerierung:  An / Aus

  1. page.1 = USER
  2. page.1.userFunc = tx_erweiterung_pi1->getImage


und dann in der funktion getImage den GIFBUILDER benutzen und als Bild zurück geben lassen

Php:Zeilennummerierung:  An / Aus

  1. $imageCFG = array(
  2.  'file' => 'GIFBUILDER',
  3.  'file.' => array (
  4.    'format' => 'png',
  5.    'XY' => $this->X.','.$this->Y,
  6.    'backcolor' => '#5000af',
  7.  ),
  8. );
  9.  
  10. return $this->cObj->IMAGE($imageCFG);


so in etwa mal grob auf die schnelle...
Verfasst am: 05.02.2010 [19:04]
spectator

[Themenersteller]
dabei seit: 23.10.2009
Beiträge: 7

okay habe jetzt ein wenig rum probiert und habe eine lösung gefunde erstmal danke an GoSnA für die ideen sie haben mir geholfen die lösung zu finden:

Typoscript:Zeilennummerierung:  An / Aus

  1. page.2 = COA_INT
  2. page.2.2 = USER
  3. page.2.2.userFunc = tx_wurfl3_pi1->getImage
  4. page.2.2.format=png
  5. page.2.2.backColor=#f000af
  6. page.2.2.height=500


Php:Zeilennummerierung:  An / Aus

  1. function getImage($content, $conf){
  2.                 $conf['XY'] = getdisplaywidth().', '.$conf['height'];
  3.                 $imageCFG = array(
  4.                  'file' => 'GIFBUILDER',
  5.                  'file.' => $conf
  6.                 );
  7.                 return $this->cObj->IMAGE($imageCFG);


Ob das so sauber ist weiss ich nicht aber bis jetzt Funktioniert es ;-)

was ich noch überlegt habe ist die logik in der function aus zu nutzen also quasi 3 parameter der funktion mit gebe einmal die frage nach der capability also zum beispiel display breite, höhe etc. ein operator als string und ein vergleichs wert und dann in der funktion die abfrage baue und dann true oder fals zurück gebe das sollte eigentlich ja auch gehen.

Wenn es klappt sage ich bescheid
grüße Spectator




 
TYPO3 Hosting in der Version 4.3.2 kostenlos bei Mittwald CM Service testen

TYPO3 4.3.2 jetzt testen

Testen Sie die neue TYPO3 Version 4.3.2 kostenlos für einen Monat


Entwicklerschulungen

  • Espelkamp:
    Mit., 17.03.10 - Fre., 19.03.10
  • Berlin:
    Mit., 21.04.10 - Fre., 23.04.10
  • Köln:
    Mon., 21.06.10 - Mit., 23.06.10