Zjištění vstupu do presenteru

Upozornění: Tohle vlákno je hodně staré a informace nemusí být platné pro současné Nette.
Rampa
Člen | 65
+
0
-

úvodem přeji všem vše nej nej do nového roku :)

Mám takovou aplikaci, kde potřebuju zjistit, jestli je presenter volán přímo nebo přes signál.

Existuje na to nějaká funce/vlastnost presenteru? Koukal jsem do api, ale nic tam nenašel, tak to zatím řeším přes odchytávání parametru „do=neco“, ale přijde mi to nesystémový. :)

Díky.

Majkl578
Moderator | 1364
+
0
-

Možná by tě zajímala metoda Nette\Application\Presenter::isSignalReceiver()

Pokud tedy chci vědět, zda presenter přijímá například signál „foo“, tak takto:

//v presenteru
\Nette\Debug::dump($this->isSignalReceiver($this, 'foo'));

Vypíše true, pokud přijme signál foo (do=foo), jinak false.

Ondřej Mirtes
Člen | 1536
+
0
-

Anebo si prohlídnout $this->getSignal().