Black Friday Black Friday
Black Friday výprodej! Až 80 % extra bodů zdarma! Více informací zde

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

PHP Nette Framework Nette framework Autentifikátor pro každý modul zvlášť

Aktivity (1)
Avatar
Ondřej Pech
Člen
Avatar
Ondřej Pech:25. srpna 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. srpna 17:45
Avatar
Odpovídá na Ondřej Pech
Martin Konečný (pavelco1998):25. srpna 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. srpna 18:36
Akceptované řešení
+20 Zkušeností
+1 bodů
Řešení problému
Nahoru Odpovědět 25. srpna 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.