Erstmal Hallo an Alle für den ersten Post Natürlich gleich mit einem kleinen Problemchen… — Ich entwickle aktuell ein Backend-Modul, was bisher auch ganz gut geklappt hat: - Neuer Menü-Eintrag erstellt - Backend-Fenster öffnet bei Klick auf den Menü-Eintrag - Das Menü-Item arbeitet noch mit der „onAction“-Funktion Soweit so gut. — Nun möchte Ich aus meinem Menüeintrag eine Variable an den verarbeitenden Controller senden. Der onAction-Funktion kann man ja einen zweiten Parameter übergeben. Im Post des Skeleton-Aufrufes sehe Ich den Parameter auch in der Variable „target_action“. Wie kann Ich nun die „target_action“ im verarbeitenden Controller auslesen? Eventuell gibt es ja auch eine alternative Methode einen Parameter an den Controller zu übergeben? — Ziel ist es später verschiedene Menü-Items mit demselben Controller zu verarbeiten. Die Art der Verarbeitung unterscheidet sich dann nur über den Parameter. Danke und Viele Grüße, Benedikt
Hallo Zusammen, konnte das Problem mittlerweile lösen. Da hier im Forum - soweit Ich bisher sehen konnte - technische Anfragen oftmals unbeantwortet bleiben -> hier mal der Lösungs-Ansatz. (Falls es bessere Vorschläge gibt, gerne noch Antworten) — Problemstellung war eine Menü-Variable an den Backend Controller zu übergeben und in der Funktion “indexAction” zu verarbeiten. 1. Beim Erstellen des Menü-Eintrags der “openAction” den gewünschten Parameter anhängen: $this-\>createMenuItem(array( 'label' =\> 'Label', 'onclick' =\> 'openAction(\'ControllerName\', \'Variablen-String\');', ... ));
2. In der “skeletonAction” des Controllers ist die Variable nun als Parameter “target_action” verfügbar. Diesen Parameter übergeben wir nun einem Platzhalter in der skeleton.tpl. Der Parameter wird im URL-Bereich des Skeleton platziert. Controller.php public function skeletonAction(){ $this-\>View()-\>loadTemplate("backend/skeleton.tpl"); $this-\>View()-\>skeleton\_variable = $\_REQUEST["target\_action"]; }
skeleton.tpl ... "url": "{url action='index'|escape:'javascript'}?indexActionVar={$skeleton\_variable}", ...
3. In der “indexAction” können wir nun auf die Variable über den vergebenen Parameter-Namen “indexActionVar” zugreifen ... $indexActionVar = $\_REQUEST["indexActionVar"]; ...
Thats it! Grüße, Benedikt