PHP týden Letní akce
Pouze tento týden sleva až 80 % na kurzy PHP. Lze kombinovat s akcí Letní slevy na prémiový obsah!
Brno? Vypsali jsme pro vás nové termíny školení Základů programování a OOP v Brně!

Diskuze: Autentifikátor pro každý modul zvlášť

Aktivity (1)
Avatar
Ondřej Pech
Člen
Avatar
Ondřej Pech:25.8.2018 17:45

Ahoj, mám dataz. Potřeboval bych si udělat vzlášť autentifikátor pro FrontModul (přihlášení uživatelů) a AdminModul (přihlášení k administraci) ale nevím jak na to, zatím sem vždy dělal jen jeden. Díky za rady, nebo odkazy na materiály :)

 
Odpovědět 25.8.2018 17:45
Avatar
Odpovídá na Ondřej Pech
Martin Konečný (pavelco1998):25.8.2018 18:34

Ahoj, vytvoříš si dvě Authenticator třídy, z nichž jedna bude výchozí a u formuláře např. do administrace jej nastavíš ručně, např.

<?php

namespace App\Admin\Forms;

class SignFormFactory
{

        private $user;

        public function __construct(Nette\Security\User $user, App\Model\AdminAuthenticator $authenticator)
        {
                $user->getStorage()->setNamespace("admin");  // budeš oddělovat i session přihlášení do administrace
                $user->setAuthenticator($authenticator);

                $this->user = $user;
        }


        public function create()
        {
                $form = new Form();

                // inputy

                $form->onSuccess[] = array($this, "formSubmitted");

                return $form;
        }


        public function formSubmitted(Nette\Forms\Form $form, Nette\Utils\ArrayHash $values)
        {
                $this->user->login($values->name, $values->password);
        }

}

Je to popsáno např. zde: https://doc.nette.org/…cess-control#…

Editováno 25.8.2018 18:36
Akceptované řešení
+20 Zkušeností
+1 bodů
Řešení problému
Nahoru Odpovědět 25.8.2018 18:34
Aktuálně připravuji browser RPG, FB stránka - https://www.facebook.com/AlteiraCZ
Děláme co je v našich silách, aby byly zdejší diskuze co nejkvalitnější. Proto do nich také mohou přispívat pouze registrovaní členové. Pro zapojení do diskuze se přihlas. Pokud ještě nemáš účet, zaregistruj se, je to zdarma.

Zobrazeno 2 zpráv z 2.