[TYPO3-german] Reihenfolge der verwendeten Extensions beeinflussen

Thomas Deuling tdeuling at gmail.com
Wed Aug 29 15:00:28 CEST 2012


Hallo Florian, Hallo Liste,
vielen Dank nochmal für deine Hilfe, und sorry für die späte Antwort.
Aber es ist immer noch keine Lösung in Sicht.

Habe das TypoScript-Include einmal auf:
lib.flashMessage = USER_INT
umgestellt, wie Du es vorgeschlagen hast. Das hat leider keine Veränderung
gebracht.

Ich habe auch nochmal diverse Konstellationen im extList und auch
extList_FE Array ausprobiert, auch kein Erfolg.

Irgendwie muss das doch irgendwo festgelegt werden, oder es muss dazu doch
wenigstens eine Logik geben? :(
Ich bin am verzweifeln und mein Kunde drängelt immer mehr.

Hat nicht noch jemand eine Idee, bzw. weiß jemand ein anderes Forum/Liste
wo ich mit meinem Problem besser aufgehoben bin?

Freue mich über jede Hilfe.
LG,
Thomsa

Am 21. August 2012 17:49 schrieb FIorian Zimmermann <fzimmer at mailinator.com>
:

> Hallo Thomas,
>
> danke für den follow up. Aber da sieht es ja auch nicht besser aus als
> hier.
> Am 21.08.2012 13:33, schrieb Thomas Deuling:
>
>  Hi Florian,
>> ich bin Thomas - habe beim posten nicht weiter über meine Identität nach
>> gedacht.
>>
> Ich finde es einfach angenehmer mit RN.
>
>
>> Also, hier schon mal der Link zu meinem anderen Posting:
>> http://www.typo3forum.net/**forum/extbase/56963-**
>> reihenfolge-verwendeten-**extensions-beeinflussen.html<http://www.typo3forum.net/forum/extbase/56963-reihenfolge-verwendeten-extensions-beeinflussen.html>
>> Leider gibt es dort noch nichts neues.
>>
> Habe ich nun auch gesehen schade das von dort auch nichts kam.
>
>
>> Ich versuche Deine antworten auch mal zwischen den Zeile zu schreiben:
>>
> Das hat ja wunderbar geklappt. Ich kürze jetzt einfach mal ein wenig
>
>>
>> Am 21. August 2012 13:10 schrieb FIorian Zimmermann <
>> fzimmer at mailinator.com>
>> :
>>
>>>   Ich versuche mal gerade die Umgebung zu beschreiben.
>>>
>>>  Also, ich habe mehrere Extbase-Extensions:
>>>> 1. Eine Basis-Extension die immer wiederkehrende Funktionalitäten
>>>> bereitstellt. Diese Extension ist einfach da, und stellt Klassen
>>>> (ViewHelper, Services, etc.) bereit.
>>>>
>>>>    2. Eine Client-Extension die spezielle Plugins für den Kundenauftritt
>>>
>>>> beinhaltet (bspw. eine rudimentäre Warenkorbfunktion und eine spezielle
>>>> Umfrage). Diese werden einfach auf verschiedenen Seiten als
>>>> ContentElemente/Plugins eingebunden.
>>>>
>>>>    3. Eine Flash-Message Extension, die lediglich dafür da ist Meldungen
>>>
>>>> aus dem FlashMessanger auszugeben. Diese wird über TypoScript
>>>> eingebunden, damit diese auf allen Seiten verfügbar ist und ich sie
>>>> nicht überall per Hand einsetzen muss:
>>>>
>>>>  Die Extension enhält lediglich einen leeren Controller/Action und dann
>> das
>> folgende Template:
>> <div class="tx-coding-ms-base-**flashMessages flashMessages">
>>      <f:flashMessages></f:**flashMessages>
>> </div>
>> <div class="tx-coding-ms-base-**formErrors formErrors">
>>      <f:render partial="FormErrors"></f:**render>
>> </div>
>>
>> Hier das Partial:
>> {namespace flmsg = Tx_CodingMsFlmsg_ViewHelpers}
>> <f:form.errors>
>>      <div class="errors">
>>          <f:if condition="{error.**propertyName}">
>>              <f:for each="{error.errors}" as="errorDetail">
>>                  <span>
>>                      <flmsg:ErrorMessageTranslator
>> errorNo="{errorDetail.code}"
>> errorMessage="{errorDetail.**message}"></flmsg:**ErrorMessageTranslator>
>>                  </span>
>>                  <br />
>>              </f:for>
>>          </f:if>
>>      </div>
>> </f:form.errors>
>>
>>
>> Dann wird das ganze ja mit dem folgenden TS geladen:
>>
>>    Code:
>>>
>>>>
>>>> lib.flashMessage = USER
>>>> lib.flashMessage {
>>>>       userFunc = tx_extbase_core_bootstrap->run
>>>>       pluginName = Flashmessage
>>>>       pluginKey = tx_codingmsflmsg
>>>>       extensionName = CodingMsFlmsg
>>>>       controller = FlashMessage
>>>>       action     = display
>>>>       settings    =< plugin.tx_codingmsflmsg.****settings
>>>>       persistence =< plugin.tx_codingmsflmsg.****persistence
>>>>       view        =< plugin.tx_codingmsflmsg.view
>>>> }
>>>>
>>> Hier wäre anstatt lib.flashMessage = USER
> einfach
> lib.flashMessage = USER_INT
> zu schreiben und schon ist das Caching von der Typoscript Seite aus
> deaktiviert. Was Du noch in der Extension abschalten muss weiß ich gerade
> nicht. Dafür habe ich noch zuwenig mit fluid + extbase gemacht.
> In den "alten" pi1 Konstrukten war es noch
> die variablen
> $pi_checkCHash = false
> und
> $this->pi_USER_INT_obj=1;
> zu setzen.
> Ich kann mir momentan nicht vorstellen das es daran liegt, da es ja in den
> Extension die vorher geschrieben worden sind ja alles klappt.
>
>
>>>>
>>>>  Und dann in meinem Layout platziert/ausgegeben:
>> <div id="flashMessage">
>>      <f:cObject typoscriptObjectPath="lib.**flashMessage" />
>> </div>
>>
>>
>>
>>
>>>  Das Problem ist nun, das anscheinend nicht immer die Reihenfolge der
>>>> Extensions stimmt. Bei dem Warenkorb-Plugin funktioniert alles richtig:
>>>> 0-> Seitenaufruf -> Warenkorb-Logik -> Warenkorb-Messages ->
>>>> Flash-Message Ausgabe -> Seite wird angezeigt
>>>>
>>>> Bei der Umfrage ist nun das Problem das die Flash-Messages immer einen
>>>> Seitenaufruf später angezeigt werden:
>>>> 0-> Seitenaufruf -> Flash-Message Ausgabe -> Warenkorb-Logik ->
>>>> Warenkorb-Messages -> Seite wird angezeigt
>>>>
>>>> Meine Frage nun: Wie kann ich die Reihenfolge der Ausführung der
>>>> Extensions beeinflussen!?
>>>>
>>>> In der localconf.php unter $TYPO3_CONF_VARS['EXT']['****extList'] wird
>>>> ja
>>>> nur die include-Reihenfolge angegeben (wenn ich das richtig sehe), die
>>>> auch so stimmen sollte.
>>>>
>>>>  Sollte die Reihenfolge stimmen oder stimmt Sie wirklich wie Du sie
>>> haben
>>> möchtest?
>>>
>>>
>> Die Client-Extension enthält ja mehrere Plugins, und da dieses
>> Fehlverhalten nur bei den zuletzt erstellten auftritt, muss diese Reihen
>> folge in der extList ja stimmen.
>>
> Daran könnte es aber liegen. Hast Du die extension keys in der List
> einfach mal umgeordnet oder wenn du es dich nicht traust die Keys von hand
> zu ändern.
> Dann über den Extension Manager die flash  Extension deinstallieren und
> wieder installieren.
>
>
>>
>>  Hast  du probiert das Element als USER_INT laufen zulassen?
>>>
>>
>>
>> Nein, habe ich noch nicht. Wie mache ich denn soetwas? Hast Du vielleicht
>> ein Snippet?
>>
> Siehe jetzt oben
>
>
>>
>>
>>>
>>>  Die Extension die ich via TypoScript einbinde muss immer als letztes
>>>> ausgeführt werden.
>>>>
>>>>  Da könnte das Problem drin liegen. Da TypoScript  Code, der im TYPO3
>>> cms
>>> Template steht, immer vor den Extension geladen und ausgeführt wird.
>>>
>>
>>
>> Wie gesagt, bei mehr als der hälfte der Client-Extension Plugins
>> funktioniert es ja, nur bei den zuletzt erstellten nicht. Als Hinweis
>> noch,
>> es könnte sein das all die Plugins funktionieren die ich schon integriert
>> hatte zu dem Zeitpunkt wo ich die FlashMessages das erste mal über TS
>> eingebunden habe. Danach habe ich weiter entwickelt und die neueren haben
>> anscheinend diesen Fehler.
>>
> Lädst Du den den TS Code der anderen Extension vor oder nach dem TS Code
> der FlashMessage Extension? Daran könntest Du auch nochmals drehen.
>
>>
>>
>>
>>>
>>>  Freue mich über jeden Tipp! :)
>>>>
>>> Vielen Dank für Deine Hilfe,
>>
> Hoffe wir kommen weiter
>
> Bis dann
> Florian
>
>
> ______________________________**_________________
> TYPO3-german mailing list
> TYPO3-german at lists.typo3.org
> http://lists.typo3.org/cgi-**bin/mailman/listinfo/typo3-**german<http://lists.typo3.org/cgi-bin/mailman/listinfo/typo3-german>
>


More information about the TYPO3-german mailing list