Bonjour,
Je voudrais créer un plugin me permettant de me connecter à mon site intranet automatiquement. Pour cela je récupère le REMOTE_USER que je passe dans la variable username mais je n'arrive pas à faire un select tout bête.
J'ai écrit une classe dans laquelle je déclare une variable $db l'erreur est la suivante : "0 - Call to a member function getQuery() on null"
Mon code est :
J'appelle cette classe dans l'index.php ainsi :
Si quelqu'un a une idée ?
Merci !
Je voudrais créer un plugin me permettant de me connecter à mon site intranet automatiquement. Pour cela je récupère le REMOTE_USER que je passe dans la variable username mais je n'arrive pas à faire un select tout bête.
J'ai écrit une classe dans laquelle je déclare une variable $db l'erreur est la suivante : "0 - Call to a member function getQuery() on null"
Mon code est :
Code PHP:
class AutoMyauth {
use DatabaseAwareTrait;
protected $db;
public function onUserAuthenticate( $credentials, $options, &$response )
{
$query = $this->db->getQuery(true)
->select($this->db->quoteName('id'))
->from($this->db->quoteName('#__users'))
->where($this->db->quoteName('username') . ' = :username')
->bind(':username', $credentials['username']);
$this->db->setQuery($query);
$result = $this->db->loadResult();
if (!$result)
{
$response->status = STATUS_FAILURE;
$response->error_message = 'User does not exist';
}
}
Code PHP:
$options = array();
$credentials = array();
$password = "";
$credentials['username'] = $username[0];
$credentials['password'] = $password;
$var = new AutoMyauth();
$result = $var->authenticate($credentials, $options, $response);
$result = ($result) ? 1 : 0;
Si quelqu'un a une idée ?
Merci !
Commentaire