_dbInstance = Database::getInstance(); $this->_dbHandle = $this->_dbInstance->getDbConnection(); } /** * @param $username * @return mixed * Query access level of a username, and return their usertype */ public function checkAccessLevel($username) { $sqlQuery = "SELECT ecoUser.userType FROM ecoUser LEFT JOIN ecoUsertypes ON ecoUser.userType = ecoUsertypes.userType WHERE ecoUser.username = ?"; $statement = $this->_dbHandle->prepare($sqlQuery); $statement->bindValue(1, $username); $statement->execute(); return $statement->fetch(PDO::FETCH_ASSOC)['userType']; } /** * @param $username * @param $password * @return array * Authenticate user with query, and return their details */ public function checkUserCredentials($username, $password): array { $sqlQuery = 'SELECT * FROM ecoUser WHERE username = ? AND password = ?;'; $statement = $this->_dbHandle->prepare($sqlQuery); $statement->bindParam(1, $username); $statement->bindParam(2, $password); $statement->execute(); $dataSet = []; while ($row = $statement->fetch()) { $dataSet[] = new UserData($row); } return $dataSet; } }