OnRequest a přístup k \Nette\Security\User

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

Chci logovat každý request a s ním spoleně přihlášeného člověka. Nicméně v Application::onRequest mi dává Security\User::isLoggedIn false, i kdyz jsem nalogovaný. Jak to řešit?

class AdministratorAccessListener extends Object implements Subscriber
{

	private $accessFacade;
	private $userService;

	public function __construct(AccessFacade $accessFacade, User $userService)
	{
		$this->accessFacade = $accessFacade;
		$this->userService = $userService;
	}

	public function getSubscribedEvents()
	{
		return [
			'Nette\\Application\\Application::onPresenter',
		];
	}

	public function onRequest(Application $sender, Presenter $presenter)
	{
		$url = filter_input(INPUT_SERVER, 'REQUEST_URI');
		$ip = filter_input(INPUT_SERVER, 'REMOTE_ADDR');
		$this->accessFacade->addAdministratorAccess($url, $ip);
	}

}
David Matějka
Moderator | 6445
+
0
-

nenastavujes nahodou v presenteru namespace na userstorage?

Jiří Nápravník
Člen | 710
+
0
-

JJ, nastavuji, ale to musim nastavit. Protoze potrebuji oddelit admin a front. Takze je pro me asi resenim jedine to soupnout do startup v presenteru, ze?

newPOPE
Člen | 648
+
0
-

Co skusit Application::$onResponse tam by uz mala byt pripravena Response.