Sprache BUg/Frage (?)

Das Forum ist für das Melden von Bugs gedacht. // This forum is intended to report bugs with the APF.
Gesperrt
welworx
Beiträge: 620
Registriert: 27.09.2010, 19:29:44

Sprache BUg/Frage (?)

Beitrag von welworx » 22.11.2012, 23:12:45

Hi Leute,

bin mir nicht sicher ob es ein bug ist. Falls nicht, bitte entsprechend verschieben.

jedenfalls hatte ich bisher immer eine action eingebunden die anhand eines url parameters die sprache herausfindet und diese dann dem aktuelle front-controller übermittelt und überall ändert.

Code: Alles auswählen

....
$manager = &$this->getServiceObject('dev::CMS::core::biz', 'CMSManager', APFService::SERVICE_TYPE_SINGLETON, 'CMS');
 $lang = $manager->loadPageFromUrl();

        // Ändert die sprache sofern nötig.
        if ($lang != $this->getLanguage()) {
            $this->getFrontController()->setLanguage($lang);
            $this->setLanguage($lang);

            HeaderManager::send('Content-language: ' . $lang);

            foreach ($this->getFrontController()->getActions() as $action) {
                $action->__Language = $this->__Language;
            }
        }
...
 
wenn ich das jetzt mache, wird sie zwar gesetzt, aber alle anderen bereits vorhanden gesetzten parameter sind nicht mehr vorhanden. Ich vermute mal, dass es daran liegt, dass das objekt erneut angelegt wird (hab den thread nicht so genau verfolgt). Wie kann ich das alte objekt einfach klonen und nur die sprache neu setzten?

Oder ist das ein bug und sollte das von alleine passieren?

LG Werner

EDIT: vermutlich mit einer instanceID irgendwie lösbar, nur wie?
EDIT2: versuch dem Frontcontroller eine instanceID zu geben bringt nix.

Code: Alles auswählen

$fC = &Singleton::getInstance('Frontcontroller', 'instanceID'); 
Weiters sollte ich vlt noch erwähnen, dass loadPageFromUrl() nicht nur die sprache zurück gibt, sondern auch das template setzt, welches nachher dann von den taglibs geladen wird.

Benutzeravatar
dr.e.
Administrator
Beiträge: 4555
Registriert: 04.11.2007, 16:13:53

Re: Sprache BUg/Frage (?)

Beitrag von dr.e. » 25.11.2012, 14:55:08

Hi Werner,

hast du mal den Eintrag unter http://wiki.adventure-php-framework.org ... C3%A4ndern gelesen? Ich vermute, du bist mit dem Ändern der Sprache etwas zu spät dran.

Was u.U. ein Problem sein kann ist:

Code: Alles auswählen

$action->__Language = $this->__Language; 
Die Variable $__Language ist protected. Nutze hierzu mal die Methode setLanguage().
Viele Grüße,
Christian

welworx
Beiträge: 620
Registriert: 27.09.2010, 19:29:44

Re: Sprache BUg/Frage (?)

Beitrag von welworx » 26.11.2012, 00:05:27

Hi,

ok das hab ich mal ausgebessert aber daran lags nicht.

Habe folgendes Problem gefunden:

Ich habe ein Service, dem ich meine Page ID und Alias übermittle. Wenn ich dann in einer anderen stelle der applikation das Objekt laden will

Code: Alles auswählen

$manager = &$this->getServiceObject('dev::CMS::core::biz', 'CMSManager', APFService::SERVICE_TYPE_SINGLETON, 'CMSXX'); 
erhalte ich ein neues, leeres. Bei der Ausagbe der Variable $CACHE aus der Class: Singleton war diese leer.

Mir ist aufgefallen, dass im pagecontroller die funktion getServiceObject keine InstanceID entgegennimmt. Warum nicht?
In der Funktion getAndInitServiceObject ist das übrigens auch das gleiche.

Nachdem ich die funktion getServiceObject um die instanceID erweitert habe funktioniert es nun bei mir.

LG Werner

Benutzeravatar
dr.e.
Administrator
Beiträge: 4555
Registriert: 04.11.2007, 16:13:53

Re: Sprache BUg/Frage (?)

Beitrag von dr.e. » 26.11.2012, 10:16:38

Hallo Werner,

jetzt verstehe ich das Thema. Das liegt sicher an einem Punkt, den Jens nicht mehr rechtzeitig zu 1.16 gefixt hatte. Siehe viewtopic.php?f=8&t=1212. Sofern das bei weiteren Personen Probleme macht, bringe ich noch ein 1.16.1-Bugfix-Release heraus, in dem dise Änderung enthalten ist. Falls es für dich keine Umstände macht, kannst du dir die Änderungen aus dem SVN ziehen oder ich stelle gerne einen DIFF bereit.
Viele Grüße,
Christian

welworx
Beiträge: 620
Registriert: 27.09.2010, 19:29:44

Re: Sprache BUg/Frage (?)

Beitrag von welworx » 28.11.2012, 01:32:31

Hey,

halte den bugfix für absolut notwendig, da das doch erhebliche probleme liefern kann, wie ich selbst festgestellt habe. Ich zieh mir das dann einfach aus dem svn.

LG Werner

Benutzeravatar
dr.e.
Administrator
Beiträge: 4555
Registriert: 04.11.2007, 16:13:53

Re: Sprache BUg/Frage (?)

Beitrag von dr.e. » 28.11.2012, 23:24:25

OK, dann sammeln wir nochmals ein paar Bugfixes und ich erstelle dann ein Bugfix-Release.
Viele Grüße,
Christian

welworx
Beiträge: 620
Registriert: 27.09.2010, 19:29:44

Re: Sprache BUg/Frage (?)

Beitrag von welworx » 30.11.2012, 02:48:44

kling gut. Kann man dann gleich das aus dem tools::link auch hinzufügen?

Benutzeravatar
dr.e.
Administrator
Beiträge: 4555
Registriert: 04.11.2007, 16:13:53

Re: Sprache BUg/Frage (?)

Beitrag von dr.e. » 01.12.2012, 23:03:34

Das würde ich gerne auf 1.17 verschieben, da du dort neue Features entwickelt hast und Bugfix-Release != Feature-Release. :)
Viele Grüße,
Christian

Gesperrt

Wer ist online?

Mitglieder in diesem Forum: 0 Mitglieder und 1 Gast