You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
54 lines
1.4 KiB
54 lines
1.4 KiB
<?php
|
|
|
|
namespace API\script\Gateway;
|
|
|
|
use API\script\Config\Connection;
|
|
use PDO;
|
|
|
|
class GatewayAdmin
|
|
{
|
|
private Connection $connection;
|
|
|
|
public function __construct()
|
|
{
|
|
$this->connection = connect();
|
|
}
|
|
|
|
public function addAdmin(string $login, string $hash): void
|
|
{
|
|
$query = "INSERT INTO Admin(login, hash) VALUES(:login, :hash)";
|
|
$this->connection->executeQuery($query, array(
|
|
':login' => array($login, PDO::PARAM_STR),
|
|
':hash' => array($hash, PDO::PARAM_STR)
|
|
));
|
|
}
|
|
|
|
public function getPassword(string $login): array
|
|
{
|
|
$query = 'SELECT Hash FROM Admin WHERE Login = :login';
|
|
|
|
$this->connection->executeQuery($query, array(
|
|
':login' => array($login, PDO::PARAM_STR)
|
|
));
|
|
|
|
$results=$this->con->getResults();
|
|
return $results;
|
|
}
|
|
|
|
public function changePassword(string $login, string $hash): void
|
|
{
|
|
$query = "UPDATE Admin SET hash = :hash WHERE login = :login";
|
|
$this->connection->executeQuery($query, array(
|
|
':login' => array($login, PDO::PARAM_STR),
|
|
':hash' => array($hash, PDO::PARAM_STR)
|
|
));
|
|
}
|
|
|
|
public function deleteAdmin(string $login): void
|
|
{
|
|
$query = "DELETE FROM Admin WHERE login = :login";
|
|
$this->connection->executeQuery($query, array(
|
|
':login' => array($login, PDO::PARAM_STR)
|
|
));
|
|
}
|
|
} |