Extensions Update für 4.3 !

  • steffenk steffenk
    Obi-Wan Kenobi
    0 x
    4666 Beiträge
    0 Hilfreiche Beiträge
    09. 10. 2008, 15:13

    Hi,

    many extensions using substituteMarkerArrayCached will fail in 4.3 as the function changed. now all arguments has to be an array, otherwise you get following error:

    Catchable fatal error: Argument [2,3,4] passed to tslib_cObj::substituteMarkerArrayCached() must be an array, null given

    Best is to initialize the vars with empty array.
    ------------------------------------------------------------------------------

    das ist der Text den ich in der dev-Liste gepostet habe, also einfach mal eigene Exts darauf überprüfen.

    mm_forum hat das Problem auch, babs aber im Bugtracker eingetragen.

    vg Steffen


  • 1
  • steffenk steffenk
    Obi-Wan Kenobi
    0 x
    4666 Beiträge
    0 Hilfreiche Beiträge
    09. 10. 2008, 15:21

    kleine Ergänzung:

    die Funktion hat ja 4 Parameter:

    tslib_cObj::substituteMarkerArrayCached($template, $markerArray, $subpartArray, $linkpartArray)

    Man kann Parameter 3 und 4 auch weglassen, wenn man die nicht benötigt, man darf nur nicht eine uninitialisierte Variable (NULL) übergeben, daher empfiehlt sich einfach am Anfang der Funktion ein

    1. $markerArray = $subpartArray = $linkpartArray = array();

    man kann natürlich auch casten:

    1. tslib_cObj::substituteMarkerArrayCached($template, (array) $markerArray, (array) $subpartArray, (array) $linkpartArray)

    ich halte aber ersteres für besser.

  • einpraegsam.net einpraegs...
    MacGyver
    0 x
    8861 Beiträge
    25 Hilfreiche Beiträge
    09. 10. 2008, 15:29

    Alte Funktion:

    1. function substituteMarkerArrayCached($content,$markContentArray=array(),$subpartContentArray=array(),$wrappedSubpartContentArray=array()) {
    2. ...

    Wie sieht die neue dann aus?

    in2code.de - Wir leben TYPO3
    Die Arbeit mit TYPO3 macht dir Spaß? Du stehst auf Berge? Komm zu uns! http://www.in2code.de/jobs/

  • steffenk steffenk
    Obi-Wan Kenobi
    0 x
    4666 Beiträge
    0 Hilfreiche Beiträge
    09. 10. 2008, 15:35

    so:

    1. public function substituteMarkerArrayCached($content, array $markContentArray = array(), array $subpartContentArray = array(), $wrappedSubpartContentArray = array()) {

    Die Fehlermeldung kommt aber von PHP

  • steffenk steffenk
    Obi-Wan Kenobi
    0 x
    4666 Beiträge
    0 Hilfreiche Beiträge
    09. 10. 2008, 15:57

    es zeichnet sich ab das das wohl doch noch geändert wird zu

    1. public function substituteMarkerArrayCached($content, array $markContentArray = NULL, array $subpartContentArray = NULL, array $wrappedSubpartContentArray = NULL) {

    so das die Fehlermeldung nicht mehr kommt. Ich werde es berichten wenns soweit ist.

    Es schadet trotzdem nicht die devs auf die richtige Anwendung der API zu sensibilisieren

  • einpraegsam.net einpraegs...
    MacGyver
    0 x
    8861 Beiträge
    25 Hilfreiche Beiträge
    09. 10. 2008, 22:46

    [quote="steffenk"]
    so das die Fehlermeldung nicht mehr kommt. Ich werde es berichten wenns soweit ist.
    [/quote]

    Ist auch sinnfrei so wie ich das sehe...

    in2code.de - Wir leben TYPO3
    Die Arbeit mit TYPO3 macht dir Spaß? Du stehst auf Berge? Komm zu uns! http://www.in2code.de/jobs/

  • 1