1
0
Fork 0
mirror of https://github.com/YunoHost-Apps/kanboard_ynh.git synced 2024-09-03 19:36:17 +02:00
kanboard_ynh/sources/app/Auth/Database.php

49 lines
1 KiB
PHP
Raw Normal View History

2014-10-22 19:59:09 +02:00
<?php
namespace Auth;
use Model\User;
2015-01-16 14:23:05 +01:00
use Event\AuthEvent;
2014-10-22 19:59:09 +02:00
/**
* Database authentication
*
* @package auth
* @author Frederic Guillot
*/
class Database extends Base
{
/**
* Backend name
*
* @var string
*/
const AUTH_NAME = 'Database';
/**
* Authenticate a user
*
* @access public
* @param string $username Username
* @param string $password Password
* @return boolean
*/
public function authenticate($username, $password)
{
2015-02-25 17:29:06 +01:00
$user = $this->db
->table(User::TABLE)
->eq('username', $username)
->eq('disable_login_form', 0)
->eq('is_ldap_user', 0)
->findOne();
2014-10-22 19:59:09 +02:00
2015-02-25 17:29:06 +01:00
if (is_array($user) && password_verify($password, $user['password'])) {
2015-01-16 14:23:05 +01:00
$this->userSession->refresh($user);
$this->container['dispatcher']->dispatch('auth.success', new AuthEvent(self::AUTH_NAME, $user['id']));
2014-10-22 19:59:09 +02:00
return true;
}
return false;
}
}