Úprava requestu pred uložením do session
- JakubJarabica
- Gold Partner | 184
Skúsim čo najjednoduchšie.
Po úspešnom štandardnom prihlásení do redirectu posielam kvôli GA parameter loggedIn, ktorý mi ifset prejde do šablóny a tá spustí svoj kúsok JS kódu na tracknutie eventu úspešné prihlásenie.
Keď som do prihlásenia presmerovaný z nejakej auth-only sekcie a posúvam si stored request key, tak pri prihlásení miesto presmerovania s loggedIn parametrom obnovujem predchádzajúci request.
Problém je, že neviem akým spôsobom do toho uloženého requestu vložiť ten príznak loggedIn, prípadne ako inak detegovať, že aktuálny presenter:action(čokolvek napr. zo sekcie MyAccount: po prístupe bez prihlásenia) je po prihlásení.
Vyriešil som to v startupe MyAccount presenteru zatiaľ takto(staršie nette, preto sú *request metódy ešte v Application):
<?php
if (!$this->user->loggedIn) {
if ($this->getParam('loggedIn') === NULL) { // ak priznak nastaveny nebol, tak ho nastav a potom az storni request
$this->redirect('this', array(
'loggedIn' => TRUE,
));
}
$this->flashMessage('Pre prístup do sekcie Môj účet musíte byť prihlásený!', 'error');
$this->redirect('Auth:login', array(
'key' => $this->application->storeRequest(),
));
}
?>
… ale absolútne sa mi to nepáči a napr. v šablóne keď potrebujem odkazovať na prihlásenie s nejakým stored request key tam toto neporiešim.
V podstate by som potreboval možnosť storeRequestu neriešiť na aktuálny request ale na ľubovoľný(v mojom prípade aktuálny + pridanie jedného parametra).