Problém s odhlášením, společný AuthPresenter
- Ondřej Kubíček
- Člen | 494
Zdravím,
mám 2 otázky
Mám v BasePresenteru tento klasicky kod na odhlášení
public function actionLogout()
{
Environment::getUser()->signOut();
$this->flashMessage('Byl jsi odhlášen.');
$this->redirect('homepage:');
}
ale chtěl bych se redirectnout na tu samou stránku kde jsem klikl na odhlásit, zkoušel jsem i přidat restoreRequest, ale s ním mi to taky nešlo, vyzkoušel jsem i this, což zase udělalo smyčku při přesměrování a nenapadá mě další způsob, to je první dotaz
a druhý:
Mám 2 moduly fronted a backend a chtěl bych pro ně společnou autentizaci
abych ji nemusel vytvářet 2×. Nenapadá mě kam dát jaké soubory a co do
nich, jestli dát AuthPresenter třeba do samostatného modulu nebo ke
globálním presenterum a jak to vubec vymyslet, tak bych ocenil nějaké
nastínění od profíků
díky
- Ondřej Mirtes
- Člen | 1536
Pro odhlášení: handleLogout v BasePresenteru a
$this->redirect('this')
;
Autentizace: Autentifikační třídu máš vždy jen jednu a kam umístíš přihlašovací formulář je na tobě – klidně bych udělal jeden na homepage backendu a jeden třeba do layoutu frontendu (to je pár řádků, zbytek – autentifikace – je sdílený), jak to bývá. Jak se uživatel přihlásí v jedné části, je automaticky přihlášený i v druhé. Jak pořešíš oprávnění (aby jakýkoli přihlášený uživatel se ti nedostal do backendu) je na tobě, Nette nabízí šikovnou třídu Permission.