Authenticator s DB – nefunguje propojeni

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

Ahoj všichni, mám menší problém nefunguje mi $this->database->table(). Hmm, prijde mi jako by funkce _construct vubec „nenaplnil“ promennou database. Prosim pomoc :) Diky moc,

<?php

use Nette\Security as NS;
use App\Model\UsersModel;
use Nette\Database\Context;


class MyAuthenticator extends Nette\Object implements NS\IAuthenticator
{
    public $database;

    public function _construct(Context $database)
    {
       $this->database = $database;
    }

	/**
	 * Performs an authentication
	 * @param  array
	 * @return Nette\Security\Identity
	 * @throws Nette\Security\AuthenticationException
	 */

     public function authenticate(array $credentials)
    {
        list($email, $password) = $credentials;
        $row = $this->database->table('users')
            ->where('email', $email)->fetch();
        if (!$row) {
            throw  new NS\AuthenticationException('User nenalezen.');
        }

        if ($row->password !== sha1($password . UsersModel::$user_salt)) {
            throw new NS\AuthenticationException("Invalid password.", self::INVALID_CREDENTIAL);
        }
        unset($row->password);
        return new NS\Identity($row->id, $row->role, array('username' => $row->username));
    }
}
Jan Tvrdík
Nette guru | 2595
+
+1
-

_construct vs. __construct =)

soukypro
Člen | 2
+
0
-

lol, jsem vul :)) diky